Object Oriented concepts can be broken down into four properties. What object technology promotes is the ability to build applications by selecting and assembling objects from libraries. If a developer must create a missing object to meet the application's requirements, that new object may be placed in a library for reuse in future applications. For many simple systems, the developer may use the available objects to form the entire application instead of writing code. More complex development efforts require the developer to modify the objects to meet specific requirements.
Object orientation is much more than a way to program.
It can apply across every system development activity, including requirements analysis, design, testing, and business process reengineering. Developing an Object Oriented application requires even more thought about the design than developing in the traditional structured programming environment, because the focus on future reuse requires a longer-term view during analysis and design. However, a well-stocked library of reusable components reduces the need to perform original analysis and design. Nevertheless, many experienced Object Oriented developers know that their application is only as good as its design. Object Oriented analysis and design methodologies and the use of CASE technology are extensive in the Object Oriented world.