Object-oriented development
More iterative and incremental than traditional structured development
Systems analysis: Interactions between system and users analyzed to identify objects
Design phase: Describes how objects will behave and interact; grouped into classes, subclasses and hierarchies
Implementation: Some classes may be reused from existing library of classes, others created or inherited
Because objects reusable, object-oriented development can potentially reduce time and cost of development
Data dictionaries
Code and documentation generators
Support iterative design by automating revisions and changes and providing prototyping facilities
Require organizational discipline to be used effectively