OO technology supports the binding of data and processing within a single software construct, a feature that allows you to envision, construct, and more easily manage complex systems. Also, compared to procedural programming, the object-oriented approach is a more natural way to model business activities. Developers can better model the business process, as well as articulate system models to non-technical business users. Using object-oriented techniques, the path from analysis to design to implementation is conceptually and technically cleaner. As a result, business systems better reflect business needs.
Business goals become increasingly well-aligned with technology solutions.
These problems are typically the faults of very early adopter technology. Object technology has also failed to engender more enthusiasm and acceptance because it is difficult to integrate object-oriented techniques with mainstream development methods. Component-based development fit the bill. The component development approach eschews the trappings of academic OO and thereby avoids the internecine battles among the various object camps. A component's behavior cannot be invoked except through the proper interface calls.