What Is Object Oriented?

Object oriented technology allows the software architecture to be based on the structure of the business world. The architecture becomes stable and can be changed in functionality. The software is more understandable and more architecturally robust, therefore less expensive to maintain. Iterative development allows for managed resolution of risks and more rapid evolution toward a finished product. Use of object oriented technology has changed to include many successes on large and small projects that would not have been possible using traditional approaches. Industry support for the Unified Modeling Language and Rational Unified Process indicate convergence in OO.

Object orientation is a technology based on objects and classes. It represents the methodological framework for software engineering and its businesslike appearance provides the foundation for a systematic engineering language. By providing support for the objects and classes of objects of an application domain, the object-oriented standard precepts better modeling and implementation of systems. Objects provide an approved focus throughout analysis, design, and implementation by emphasizing the state, behavior, and interaction of objects in its models, providing the desirable property of working knowledge between activities.

Object orientation proceeds from the very beginning of the engineering, problem/solution, or needs fulfillment process to the very end and comprises a complete and comprehensive systemic approach replete with a paradigm of techniques, methods, processes, standards, models, notations, tools, components, languages, environments, examples, community, practice, and skills. Its application domain is very large and ranges from real world application domain modeling and enterprise engineering to the use of polymorphism in programs and the architecture, modeling and implementation of the systems that run beneath them and the distributed systems that connect them.

Object orientation is providing improvement in basic component definition and interfacing. This new technology of objects is superior in computer-human interfaces, as interface objects provide windows to underlying objects that represent the conceptually complete components of a system and that can be individually understood and then combined, integrated, and arranged in multitudes of configurations.

This represents a fundamental change and improvement in the way software can be understood by reconstituting the basic principles of the science. Object orientation provides for better modeling of the real world by providing an improvement in domain analysis and then integration with system design.

The use of objects distinguishes object orientation from other techniques such as traditional structured methods.


Object orientation is:

View of the World - A Better Approach
Process Evolutionary - Boehm’s Spiral Model and Prototyping Iterative - Easy to add to systems Methods Analysis Design Implementation Languages Programming Technique

The benefits of object orientation is reuse, quality, an emphasis on modeling the real world (or a "stronger equivalence" with the RW than other methodologies), a consistent and seamless OOA/OOD/OOP package, naturalness (our "object concept"), resistance to change, encapsulation and abstraction (higher cohesion/lower coupling).