Components Take Off
The keys to successful OO development are basically design, reuse and connectivity. First there must be a good design team, one which has a deep understanding of the object-oriented design principles and the practice of OO programming to produce the component design. The team must understand object technology, object frameworks and design patterns in order to formulate its overall component design. A component is a "large-grained object" but is conceptually identical to any object or class. So the principle of class design, such as cohesion and coupling, must be respected in the design. The design of the component external interface is critical. A component is an object "black-box" that presents a service-based interface to its clients. Any component is an implementation of the client-server pattern. So the services that the component presents to its "clients" form its interface. Components talk to each other-- "inter-operate"--via their public interface (just like objects do). Obviously the interface must be well designed for the component to be reusable. OO experience is a must for correct component design--hence the recent resurgence of interest in all OO approaches and especially UML.
A second critical success factor is the achieving of reuse. Achieving reuse is akin to the search for the "Holy Grail" and just as elusive. In the last six years of
Please login or register below to read the rest of the article.