5
OBJECT TECHNOLOGY The object revolution How COM technology is changing the way we do business by Sohail Gani and Phil Picuri Today, advances in personal computing are helping corporations compete in a dynamic, global economy. Businesses, however, need new ways to deliver information systems in a faster, more cost-effectivemanner. Object technology, in the form of COM will help businesses meet these needs. This article presents GDES for clienuserver computing based on OLE and ObjectBroker. GDES is a huge step forward in UBS’s clienvserver computing strategy. It serves as a blueprint for future UBS applications where information is stored on a variety of dissimilar computers and databases. W ’ith computer hardware doubling in power every Hmonths, software writers have rushed to take advantage of each advance, but in the process programs have become too massive and complicated for a single person to understand. Each programmer usually works on a part of the software, which is then combined with the others. Is there any wonder that programs become jumbled? For a software user, this is frustrating. Programs are slow, they break down, none does all the things you want, and each is missing favourite bits of other programs. It is Abbreviations used in this article ACAS COM CORBA DLL DBMS GDES GUI IDEA IS MAC OLE ORB pc RDBMS SQL UBS VBX application control architecture services common object model (or component object model) common object request broker architecture dynamic linked library general data extract service graphical user interface international data encryption algorithm information systems mesage authentication code object linking and embedding object request broker relational database management system structured query language Union Bank of Switzerland Visual Basic custom control database management system PerSOnal COmpUkl‘ worse for big companies and governments. For complex solutions, they often pay software houses a fortune to write programs from scratch. What they get back is often a nightmare. A better way of doing things is to mix and match software, using reusable park-known as ‘components’. Other programmers can fit the components together to make complicated software that works properly and does exactly what they want it to do. The idea is to copy the approach of hardware builders, who combineoff-the-shelf components from third-party specialists. Visual Basic programmers already do this when they use VBXs (Visual Basic Custom controls) in their own code. The advantage of reusable components is that this would let experts do what they know best. Rather than forcing a programmer to learn about accounting to write a trading program, for example, component-based software would let him focus on his strength, perhaps writing fast database sorting code. For corporations, component software can mean lower costs for corporate computing, helping IS departments work more efficiently, and enabling corporate computer users to be more productive. Existing applications do not need to be rewritten to take advantage of a component architecture. Instead, corporate developers can create object-based ‘wrappers’ that encapsulate the legacy application and make its operations and data available as an object to other software components in the network. 108 COMPUTING & CONTROL ENGINEERING JOURNAL. JUNE 1995

The object revolution. How COM technology is changing the way we do business

  • Upload
    p

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The object revolution. How COM technology is changing the way we do business

OBJECT TECHNOLOGY

The object revolution How COM technology is changing the way we do business by Sohail Gani and Phil Picuri

Today, advances in personal computing are helping corporations compete in a dynamic, global economy. Businesses, however, need new ways to deliver information systems in a faster, more cost-effective manner. Object technology, in the form of COM will help businesses meet these needs. This article presents GDES for clienuserver computing based on OLE and ObjectBroker. GDES is a huge step forward in UBS’s clienvserver computing strategy. It serves as a blueprint for future UBS applications where information is stored on a variety of dissimilar computers and databases.

W ’ith computer hardware doubling in power every Hmonths, software writers have rushed to take advantage of each advance, but in the process programs

have become too massive and complicated for a single person to understand. Each programmer usually works on a part of the software, which is then combined with the others. Is there any wonder that programs become jumbled?

For a software user, this is frustrating. Programs are slow, they break down, none does all the things you want, and each is missing favourite bits of other programs. It is Abbreviations used in this article ACAS COM

CORBA DLL DBMS GDES GUI IDEA IS MAC OLE ORB pc RDBMS SQL UBS VBX

application control architecture services common object model (or component object model) common object request broker architecture dynamic linked library

general data extract service graphical user interface international data encryption algorithm information systems mesage authentication code object linking and embedding object request broker

relational database management system structured query language Union Bank of Switzerland Visual Basic custom control

database management system

PerSOnal COmpUkl‘

worse for big companies and governments. For complex solutions, they often pay software houses a fortune to write programs from scratch. What they get back is often a nightmare.

A better way of doing things is to mix and match software, using reusable park-known as ‘components’. Other programmers can fit the components together to make complicated software that works properly and does exactly what they want it to do. The idea is to copy the approach of hardware builders, who combine off-the-shelf components from third-party specialists. Visual Basic programmers already do this when they use VBXs (Visual Basic Custom controls) in their own code.

The advantage of reusable components is that this would let experts do what they know best. Rather than forcing a programmer to learn about accounting to write a trading program, for example, component-based software would let him focus on his strength, perhaps writing fast database sorting code. For corporations, component software can mean lower costs for corporate computing, helping IS departments work more efficiently, and enabling corporate computer users to be more productive.

Existing applications do not need to be rewritten to take advantage of a component architecture. Instead, corporate developers can create object-based ‘wrappers’ that encapsulate the legacy application and make its operations and data available as an object to other software components in the network.

108 COMPUTING & CONTROL ENGINEERING JOURNAL. JUNE 1995

Page 2: The object revolution. How COM technology is changing the way we do business

OBJECT TECHNOLOGY

Operating systems such as Microsoft's Windows already come with ready- to-run mini-programs that application programs can call on for common tasks like printing and talking to other programs. Using proven OLE 2.0 technology more complicated jobs, such as sharing spell- checking between pro- grams from different manufacturers, are prac- tical. However, a powerful combination is OLE 2.0 and ObjectBroker where using common-code pieces gives programmers reusable client/server parts.

- - - Microson Excel - Book2 - 1 File Edlt Mew Insert Bun 1001s Mndow Help

- - - Microson Excel - Book2 - 1 File Edlt Mew Insert Bun 1001s Mndow Help

I f f I sub Staf tword 0

Dim WDOC AS Obiect

Set WDoc = CreateOb3ect ("Word.Ba51c"i WDOC.FlleOpen "TEST-OLE"

rt FQrmat

II - I1 I I

Microsoft's OLE 2.0 is much more than it appears to be. It is best known as a technology to allow users to build compound documents out of Windows applications. However, it is also the first step in an evolution toward distributed object computing for Microsoft Windows that is helping to revolutionise the way software is developed, sold and used.

The main breakthrough of OLE 2.0 is its architecture. OLE 2.0 is based on the component object model (also confusingly known as COW, an underlying system software object model that allows complete interoperability between objects that are written by different companies and/or in different programming languages. These objects can be purchased, replaced, enhanced and reused at any time during the business- system life cycle. Objects conforming to the component object model can communicate with each other without being programmed with specific information about each other's implementations.

OLE 2.0 does not support distributed object computing today. However, the component object model and key facilities within OLE 2.0 lay the groundwork for distributed objects. The larger significance of OLE 2.0 will become more apparent during 1996, when Microsoft begins shipping new products that support construction of compound documents from components separated by networks. The most important of these products is a new version of Windows NT, code-named Cairo, equipped with special services to support distributed computing.

OLE Automation is the most important feature in Microsoft's OLE for software developers. OLE Automation lets any function or variable in a server application be exposed, and it can be called or accessed from any OLE Automation client. A Visual Basic

application needs as few as three lines of code to call an Automation server. The Automation server is usually designed to perform a specialised activity, such as SQL database lookups, comprehensive word processing or spreadsheet functions. OLE Automation is specially useful if you need to use features of one application, such as Microsoft Word, in another application, such as Microsoft Excel (as shown in Fig. 1). With OLE Automation, you can integrate features from both applications in a single procedure.

ObjectBroker CORBA (common object request broker architecture) is

a specification of an architecture and interface that allows applications to make requests of objects in a transparent, independent manner, regardless of platform or operating system. The job of the object request broker (ORB) is to manage the interaction between client and server objects. Digital's ObjectBroker is a leading implementation of the CORBA-compliant ORB and is available on several platforms, including Open VMS, Macintosh, Windows NT and UNIX. Shipping since 1991, it has been used by independent software vendors and end users to simplify the development of multivendor open platform client- server software. Fig. 2 illustrates an ORB sending requests from multiple clients to the server and returning results from the server to the clients.

With ObjectBroker, applications on the following systems can transparently invoke the services of other applications running on any of these operating systems across the network. This allows the creation and deployment of integrated business solutions across the organisation, while minimising retraining costs. Digital's

COMPUTING & CONTROL ENGINEERING JOURNAL JUNE 1995

Page 3: The object revolution. How COM technology is changing the way we do business

OBJECT TECHNOLOGY

O b j d r o k e r is available on the following platforms:

0 Hewlett-Packard’s HP-UX 0 IBM’s AM

Sun Microsystem’s SunOS 0 Apple Computer’s Macintosh System 7 0 Microsoft Windows

Microsoft Windows NT (Intel and AXP platforms) 0 Digital’s Open VMS (AXP and VAX platforms) 0 Digital’s ULTRIX 0 Digital’s DEC OSF/1

O b j d r o k e r works co-operatively with Microsoft’s OLE capabilities to allow applications running locally on PCs to exchange information with applications running on UNE and OpenVMS systems. For example, a Microsoft Excel for Windows spreadsheet package can access a database application on a UNE or VMS server and return the resultant data for use in the spreadsheet. This allows users of shrink-wrapped PC applications to extend the capabilities of that application to information residing on server systems anywhere on the network.

The Union Bank of Switzerland (VBS) has been using ObjectBroker since 1994 and its earlier form known as ACAS (application control architecture services) since 1992. Although each PC application could integrate its own O b j d r o k e r code, maintenance and updates can be costly. A better approach is to encapsulate all the ObjectBroker calls in an OLE 2.0 Automation server since code reuse by other applications becomes both practical and more maintainable.

W s own experience has shown that writing ObjectBroker code is relatively easy. This is because automatic code generators play a significant role. System administrators also find ObjectBroker administration tools very flexible and easy to learn.

Common obJect model In 1993, Microsoft and Digital announced an

agreement to provide an open architecture for cross- platform development of client-server applications based on object-oriented technology. The architecture, named common object model (COM), allows Digital’s and Microsoft’s leading object technologies, O b j d r o k e r and OLE, to work together. Microsoft would give some of its OLE technology to Digital and Digital would build OLE support into ObjectBroker. Once this is done, an OLE application will be able to talk to an ObjectBroker application, even across networks and platforms.

Microsoft and Digital demonstrated the technology by showing a stock ticker application running on a Digital OSF/1 server, providing data to Microsoft Excel running on a Windows NT client using advanced OLE technology. In this example, common object model makes it easier to create a link between a standard Microsoft Excel spreadsheet and a custom stock ticker application running on a remote server. One of the key benefits of COM is its ability to take data from any server through ObjectBroker and deliver it to unmodified Windows- based desktop applications.

Other software vendors, including Iona Technologies, Expersoft, Candle Corp. and PostModern Computing Technologies, are also developing ORBS aimed at providing interoperability with OLE. Iona will market a program in 1995 that links its CORBA-compliant Orbix application development package to OLE. Expersoft also will introduce products that integrate its CORBA- compliant XShell ORB and OLE during 1995. Another vendor, Candle Corp., submitted an open specification to the OMG in summer 1994 that creates links between CORBA and OLE. PostModern Computing Technologies plans to release its

client

<

applicabon objects application objects

client

II

server r! I I

object services

Fig. 2 Object request broker

iwn integration -solution with a CORBA-compliant ORB named OREkline. OREkline provides interoperability with other CORBA-based ORBS on a variety of systems.

There are alternative object models such as IBM SOW DSOM, and the AppleABM OpenDoc specification. For example one of the key benefits of OpenDoc over OLE is that Ope& users in an OS/2 environment will be able to send live documents over TCP, NetBIOS, and IPWSPX- enabled networks. However, right now no single system o b j a model has emerged as dominant. In the meantime, some corporate businesses are actively working with COME/

110 COMPUTING & CONTROL ENGINEERING JOURNAL JUNE 1995

Page 4: The object revolution. How COM technology is changing the way we do business

OBJECT TECHNOLOGY

OLE 2.0, whilst others are becoming familiar with SOM and DSOM.

Digital provides an OLE network portal in its ObjectBroker V2.5 product. The portal provides an inter- mediate step between OLE applications that interoperate on a single machine today, and a true distributed object system based on COM. ObjectBroker’s Network Portal means that software developers can begin to ‘network- enable’ OLE applications now, with assurance of a clear upgrade path to fully distributed COM. Fig. 3 illustrates an OLE clientkontainer application interfacing via the OLE network portal to an ObjectBroker server application on a non-MSWindows platform.

The portal intercepts relevant OLE calls made on the PC, translates them to C O W messages, and passes them to ObjectBroker, which in turn forwards them to an appropriate server on the network for resolution. From the application user’s perspective, the process is transparent; the object behaves as though it was stored locally on the PC. Within an OLE application, the ObjectBroker portal appears to be a local OLE application. In this way, information from sources across the network can be dynamically linked or embedded into desktop applications through ObjectBroker today.

General data extract service GDES defines a set of low-level calls that enable PC

client applications to perform database batch queries. The server component of GDES connects to an RDBMS at the scheduled time and retrieves data using structured query language (SQL) syntax. The comma delimited output file is kept in a network transparent directory (FileEbx) reachable from the client.

The main attraction of GDES is that large (i.e. time consuming) batch queries once submitted allow the FC user to carry on working since the client machine is not tied up by the database server. The reader should note that, at the time GDES was implemented, the OLE Network Portal in ObjectBroker was not available. Instead an OLE Automation server was Written to substitute for the portal.

The purpose of the authentication server is to provide a secure user- friendly authentication when connecting Visual Basic clients with VAXNMS servers using ObjectBroker. The imple- mentation is similar (but not compatible) to Kerberos. The security tickets contain a message authentication code (MAC), based on the international data en-

(IDEA). The MACS identify security tickets that have been compromised.

Main components Fig. 4 illustrates the important components of the

GDES implementation. In GDES any Visual Basic, MS Access or Visual C++ application can use the ‘security’ GUI or GDES OLE Automation servers.

Client Dynamic linked library OLL) which encapsulates ObjectBroker calls for connection to the server and retrieval of a security ticket. OLE 2.0 Automation clientkerver that encapsulates the GUI for connection to GDES OLE 2.0 Automation server.

oGDES OLE 2.0 Automation server DLL that encapsulates ObjectBroker calls for connection to the server and submission of batch request.

Server SQL parser, if required, to translate MS Access syntax

Ordering system that enters batch requests into DEC-

electronic mail service to notify PC users of job

0 Remote copr service that allows the output to be sent to

into host RDBMS syntax.

Scheduler.

completion.

other host destinations.

GDES offers great flexibility; if applications wish to implement their own front-end to GDES, they can bypass the GUI automation server and interface to the GDES automation server directly.

Users have come to expect powerful, intuitive graphical user interfaces (GUI) in the applications they use. MS Access is no exception; the graphical query by example interface lets users select exactly what they need from their DBMSs without being DBMS experts. Because GDES is a set of automation servers, it can also be

Micmsofl Windows planorin T I OblectBroker

(containet application)

server platform (VMS. OSFil . . . I

OLE 3 server APls

ObjectBroker sewer application

cryption algorithm Fig. 3 OLE network portal

COMPUTING & CONTROL ENGINEERING JOURNAL JUNE 1995 111

Page 5: The object revolution. How COM technology is changing the way we do business

OBJECT TECHNOLOGY

VMS Y

Fig. 4 Main components of GDES

invoked from within MS Access. This allows MS Access users to first draw their queries using the QBE interface and then call GDES.

The impact of GDES is already being appreciated. With increasing use of OLE 2.0 Automation and ObjectFinder, choice for the user may expand, but the options will become more meaningful in a 'plug-and-play' sense, and less development work will need to be done in house. The most powerful impact of COM technology is that hundreds of shrink-wrapped and internally developed custom OLE applications are 'COM-ready', awaiting the technology that will result from this alliance to take advantage of the distributed environment.

Conclusions In today's complex and technically driven business

climate, organisations need integrated information systems that meet their changing business needs. At the same time, they need to optimise existing hardware, software and personnel assets while making plans for an often uncertain future. Object technology, such as COM, has the potential to offer substantial benefits to information departments as they deploy new and innovative applications. These applications will, in turn, help corporations meet the challenges of a dynamic, competitive economy.

GDES is a huge step forward in GIN'S clientkerver computing strategy. GDES supports reusable modules of source code, which eases the burden of writing clientiserver applications from scratch. In GDES the importance of 'middleware' such as ObjectBroker becomes apparent-i.e. products that do not tie the user into any particular client or server, but provide a 'data bridge' in between.

OLE combined with ObjectBroker, as demonstrated in GDES, means that software developers can begin to 'network-enable' OLE applications now, with assurance of a clear upgrade path to fully distributed COM. For users. the benefits are numerous. Users can access

information on virtually any platform in the enterprise without being concerned about the type of application they are connecting to, or the type of communication mechanism needed to reach that object.

Specialisation will help eliminate functional redun- dancy. It also promises to reduce the cost of maintaining applications code by breaking big pools of functionality into smaller, more focused com- ponents. Although develop- ing a reusable component might double its cost, it would

be a one-off expense. Using the component could cost one- quarter as much as writing it from scratch. Also maintenance savings could be dramatic as OLE 2.0 and O b j d r o k e r components can be independently compiled.

In the future component software will need further refinement as current individual bricks are still too small, and need too much code to hold them together to let developers let alone a non-programmer build anything useful. Future components will have to offer big, useful blocks, from many sources, that know how to stick themselves together.

Acknowledgments The authors gratefully acknowledge the support and

assistance of Mr. Peter Dysli, the Director of Information Systems for UBS in Ziirich, Mr. Siegfned Schwery, the Head of Quality Assurance and Developer Support for UBS in Z ~ i c h , and Steve Simpson from Digital.

RohC(MW8 1 RYMER. J., GUTTMAN, M., and MATTHEWS, J.: 'Microsoft OLE 2.0

and the road to Cairo; how object linking and embedding will lead to distributed object computmg'. Distributed Computing Monitor, Jan. 1994

2 SHAW, R.: 'A is for automation', Windows Tech Journal, June 1994 3 BERST, J.: 'Take cover! Incoming object!', Windows Sources, March

1994 4 LAMONICA, M.: 'Vendors strive to link rival object standards: ORBS

will allow OLE, COREL4 to interoperate', Info World, 8th August, 1994 5 BETZ, M.: 'Interoperable objm' , fi DobbS Journal, October 1994 6 PLEAS, K.: 'Extending the reach of OLE, Byte Mugmine, November

7 WOODS, S., and PARODI, J.: 'Overview of the common object mcdel',

8 PARODI, J.: 'Technical overview of the OLE network portal in

1994

Digital Equipment Corporation, July 1994

ObjectBroker V2.5', Digital Equipment Corporation, July 1994

0 lEE 1995

Dr. Sohail Gani is a computing consultant to Union Bank of Switzerland in Ziirich. Phil Picuri is Vice President of IT Architecture and Standards within the GINS Organisational unit in UBS Ziirich.

112 COMPUTING & CONTROL ENGINEERING JOURNAL JUNE 1995