Get with the OO program - object-oriented programming - Forum
Christopher StoneIn his Forum piece entitled "MIS, Beware OOP's Promises" (May 1994, p. 8), Martin Goetz forecasted the difficulties MIS will face if they adopt an object-oriented approach to software purchases and in-house development. Specifically, he stated that this programming technology will lead to disappointment and confusion when applied to mission-critical applications.
Given my experience as president of the Object Management Group (OMG), I find Mr. Goetz's statements difficult to rationalize. The entire software development community -- except for a few diehards -- has been moving toward an object-oriented development model for 25 years. More specifically, software and systems vendors and MIS departments everywhere are either building or planing to build products using an object model. Mr. Goetz's claim that MIS departments will not be able to build major applications using object files in the face of the overwhelming trend in software development today.
I will address each of Mr. Goetz's points:
* "MIS will conclude that the object technology is too complicated," said Goetz. That is what critics said about top-down design, structured programming, Cobol, Case, C++, DOS and Windows. yet these technologies have prospered and contributed to the IT mix installed in MIS today. Forget the object technology tech-speak about polymorphic interfaces and inheritance. The concepts of object technology are very simple and evolutionary
Object technology starts with the premise that the IT world Is populated by diverse technologies in which the good, bad and ugly must all be integrated or replaced over time. Though it goes against traditional MIS thinking, object orientation is a simple approach to the problems of multivendor integration, distributed computing systems and enterprise computing.
* "They will discover that code reusability is a myth." Code reuse is a discipline, not a language feature; it is a by-product of disciplined design and development methodologies. Object technology, because of its focus on clear design and tighter methodological disciplines, offers a much higher degree of reuse of objects that contain code.
The degree to which these objects can be reused depends more on the development staff than on any feature of the technology itself. Mr. Goetz's comment that firms such as John Deere and Ford motor Co. have investigated large-scale applications, and concluded that object-oriented programming will not produce more reusable code than conventional methods, he, little to do with objects. In fact, the architecture group at John Deere believes that pursuing object technology will position it for the future, providing many options for both building and buying components for the enterprise.
In addition, other companies such as Southern California Gas and Mitre Corp. are finding reuse of information objects by-products of the flexibility and extensibility they are seeing in object technology projects.
The real issue here is one of "scaling up." If firms focus, plan and implement with reuse as a goal, they will achieve it. If they do not, they will not. Whenever a new technology is introduced, learning is the greatest benefit realized from early systems.
* "They will find it infeasible to do enterprise analysis for developing reusable objects. Proponents of OOP believe they can eliminate large amounts of programming through enterprise analysis...." Is Mr. Goetz advocating that programmers build software on a schedule that demands on-time, on-budget delivery the first tune they use a new technology? Name someone who can accomplish this. Fighting a promising new approach with a widely accepted myth about delivery schedules may be good sport but it does not advance much understanding of either the problems or their solutions.
* "They will soon discover that maintaining applications con objects is extremely expensive." Mr. Goetz advocates the need for MIS to assign an "object development" group to make and test changes. When an object is changed, he writes, "programs that use it must be retested to ensure integrity." Is he trying to tell us that the current model of code maintenance is simple and cheap? Current maintenance costs run roughly 70% of the total software development budget. Such companies as EDS, Continental Airlines, United Artists and Brooklyn Union Gas have cut maintenance costs m half or more using an object-based approach.
* "They will not get the productivity benefits they anticipated." Mr. Goetz states that organizations will need to provide extensive training for this new technology and will reap fewer benefits than expected. Granted, introducing any new technology into an IS organization requires planning, training and probably some "hidden" costs. If MI buys 30 boxes of C++, hands them to the development staff and orders them to be "object-oriented" in three months, they will get what Mr. Goetz says they deserve. However, if MIS uses the planning and design time to explore the needs of end users and involve them early and continually in the project, end-user training time will be drastically reduced.
* "They will discover an alternative to OOP -- fourth-generation languages (4GLs)." Mr. Goetz described in detail how the movement to client/server computing would be a piece of cake if MIS just went out and bought a 4GL. So, if I have mainframes running MVS and CICS, a batch of Unix servers running Oracle, and a variety of systems management tools -- all connected via TCP/IP to 400 Windows PCs using NetWare -- I can solve my distributed application development problems just by using a 4GL?
Distributed application integration is the problem that existing software development tools and technologies have failed to address, much less solve. Such integration has become the Holy Grail of soft ware. For organizations to achieve a level of integration across a dispersed IT landscape, they need a standard Interface Description Language that provides a single system view for disparate systems development. This is the sole reason the OMG exists and has become the largest software development consortium. More than 400 companies have recognized the problem of application integration, with MIS our fastest-growing member category.
A 4GL is a tool, a development environment -- not a solution. The complexities and inadequacies of the traditional software environment can only hide behind a pretty face for so long. Interestingly, an analysis of the 4GL market today shows that companies such as Powersoft Corp., Oberon Software, Visigenic Software Inc. and Forte Software Inc. are moving toward object-based 4GLs.
Object technology is not a fad. It is the next step m computer science evolution. This technology will help software developers create component-based applications with consistent interfaces, and potentially, reusable code. When applied to client/ server or distributed computing, it is the most successful model for meeting the challenges of today's heterogeneous computing environments.
COPYRIGHT 1994 Wiesner Publications, Inc.
COPYRIGHT 2004 Gale Group