Object technology is about to hit the big time. With the advent of easier to use tools and the Java phenomenon putting object oriented programming in the headlines, corporate developers are primed and ready to embrace objects throughout the enterprise.
The catalyst for this is a coming together of infrastructure. The major database companies are building objects into their databases; middleware is turning to objects and package companies like SAP are offering object interfaces to their applications.
In the past, companies have been reluctant to adopt object technology because it represented a largely unproven, radically new way of developing software. Companies also have a huge investment in existing technology.
With everyone else leaping onto the object technology bandwaggon, companies now have little choice but to go with the flow.
Interestingly, UK companies are at the cutting edge of this technological shift, ahead of European neighbours such as France and Germany in terms of their adoption of object technology in enterprise computing. According to Andrew King, European developer manager at Microsoft, UK companies are actually keeping pace with the US. Speaking of why some UK object technology appeared remarkably successful, he adds: "They are pushing the type of technology big companies are looking for." Here in the UK, Microsoft has been pioneering object technology in the enterprise. Three years ago it ran a trial for Microsoft Consultancy Services. The result of this trial is the Microsoft Solutions Framework which is being promoted worldwide.
Borland, a company with a long tradition of object oriented programming tools like Borland C++ and Delphi, sees the UK as a strong market for object technology. Sales and marketing director, Nigel Brown says Borland is profitable both in UK and Europe and Borland UK has achieved its targets and was profitable throughout 1996. "In terms of market share, the UK developer is more technology aware than name aware."
One of the great myths of object technology is that it is insufferably complex. "Traditionally, object technology has attracted technically adept people," says Susie Jones, product marketing manager for the information management group at Computer Associates. "But about a year ago, tools started becoming more user-friendly."
The main benefit for adopting object technology is code reuse, achieved by bundling both the code for the object and the data that controls it into one convenient package. The object is said to be encapsulated. "The benefits of true encapsulation," adds Jones, "is that developers can call objects created by other developers without having to worry about how the object has been created. Objects have a well-defined interface with the outside world. The implementation within the object can change and be optimised and enhanced, without affecting applications which use that object."
It is this property of object technology that helps reduce the cost of software development and eases software maintenance. The ideology goes something like this:
A centralised IT department creates and maintains components which can then be used by individual departments who act as consumers for the objects.
Once an object is built, it has the potential of being deployed in several different instances. This is where developers can benefit from code reuse.
Also, given that the object has been developed in one location, upgrades and maintenance is simplified.
However, Jones points out that the benefits of code reuse are not immediate.
"A lot of people have yet to reap the benefits of code reuse. Normally, it is not until developers begin work on version 2.0 that they can benefit from object technology."
It has taken a number of years for object technology to reach the point where people are ready to abandon all they know and learn a new programming paradigm. In the mainframe's heyday, applications were developed centrally in procedural languages like Cobol. IT departments, responsible for developing these applications, were considered slow and inflexible. Then Visual Basic and PowerBuilder came along, giving individual departments rapid application development tools to build their own applications thereby bypassing centralised IT departments.
Such tools introduced the developer to the concept of components, bits of code, or objects, which were packaged up with well-defined programming interfaces and a set of properties. Developers could adapt the components to their own application requirements simply by setting various properties and calling the services offered by the component via the programming interface. They no longer need to worry about the components' innards, just understand how to use them.
Understandably, these RAD tools were favoured by end-user departments because they offered a way to break free from the centralised control of software development. The big disadvantage with these tools was that they made it difficult for centralised IT to keep track of on-going projects and avoid needless repetition of programming effort.
However things are about to change. On 19 March, Microsoft will launch Visual Basic 5.0, the latest incarnation of its component-based rapid application development tool. Among the key features in the Professional and Enterprise editions of Visual Basic 5.0 will be the Microsoft Repository.
This is targeted at software developers who wish to use open information models to develop, deploy and reuse component software.
The Microsoft Repository comprises a set of ActiveX interfaces and a repository engine which sits on top of either the Microsoft Jet database system or Microsoft SQL Server. The repository is used to store descriptive information about the component. Using this information, a developer who has not used the component before will be able to establish how it works and its programming interfaces.
One of the core features of the Microsoft Repository is that it is not forcing developers to learn a new modelling tool. On 18 February, 21 enterprise modelling tools companies announced their support for Microsoft's repository.
The modelling tools companies are joining forces with Microsoft to develop the Microsoft Repository's Unified Modelling Language (UML).
In using Microsoft Repository and UML, developers will be able to share component models with different modelling tools. Working alongside Microsoft on UML are modelling tools companies such as, CASEwise, Cayenne Software, IntelliCorp, Intersolve, Platinum, System Architect, Rational, Select, Sybase and Texas Instruments.
Microsoft has extended the ActiveX specification with a set of interfaces which enables component developers to store properties, methods and relationships between their component and other objects. The set of interfaces that an object exposes describes its state, how it can be manipulated and the associations it can have with other objects.
Select Software Tools was among the first to work with Microsoft to support the new repository. As far as Stuart Frost, Select's founder and CEO, was aware, in its first release, the Microsoft Repository will not be enterprise-class, but he felt "it is a good start". Although Microsoft has made a lot of noise about how its Repository will allow developers to share models created in different modelling tools, Frost says this was not a major issue for users in general. "Interoperability is a bit of a Holy Grail. Developers don't usually swap modelling tools mid project.
They wait for a new project. While it is very hard to transfer data between models, I question whether such a facility is really important to the user."
In Frost's opinion, the most important feature of a repository is the ability for a developer to describe a component so that it can be reused by someone else. "There is no standard. How are you supposed to deduce what it does, when all you get with an ActiveX component is the Type Library." A repository has to store more that mere textural description, says Frost.
"It needs to tell developers about the behaviour of the object." The way this is done, he continues, is through a State Transition Model of the component.
There are numerous ways in which tools companies can improve on Microsoft's first tentative steps towards the realistic reuse of object in the enterprise.
For example, some kind of version control system to allow developers to check objects in and out of the repository. This is a feature of Hitachi ObjectReuser, a high-end reuse management environment for Unix systems and Windows. In many ways, the Hitachi tool is ahead of its time, offering specialised editors to capture the structure, design and usage information of components. It uses a repository to allow developers to share objects across multiple projects. Users can even follow hypertext links between code and integrated documentation.
In time it is likely the Microsoft Repository will precipitate the mass deployment of object technology throughout the enterprise. It is the lack of such a repository in the past, that is preventing tools like Visual Basic from being chosen to develop complex corporate applications. Typically these would involve many developers working on the same project simultaneously.
A repository allows them to share code relatively easily.
By offering an open interface and working with leading modelling tools companies on the UML, Microsoft is laying down a solid foundation for its repository. On this, Microsoft and third-party companies can build sophisticated modelling tools.
Microsoft seizes control of phishing sites linked with Russian state hackers
Fitness trackers over-estimate the number of steps their users take, analysis of 67 research reports suggests
Everything we think we know about the imminent Apple iPhone 9, iPhone 11 and iPhone 11 Plus launches
All the latest rumours about Apple iPhone Displays, CPUs, launch dates and even prices
Nvidia brings Turing microarchitecture into the high-end gaming segment