Object Oriented Analysis
Object Oriented Analysis
What is object oriented analysis
- Under standing the requirements from the perspective of classes and objects found in the vocabulary of the problem domain.
- Coad and Yourdon
– Class hierarchies, attributes and services
- Rambaugh
– Dynamic aspects: Behavior models
- Jacobson
– Use-cases
[pic 1] | Major Steps/ Sub steps in | Useful tools/ Approaches for |
OOA | the Steps | |
1. | Get user requirements | •Use cases – The narrative |
description of the domain | ||
process | ||
2. | Build the structure of an | •CRC methods and diverse |
domain model | perspectives | |
•Identify objects | •Static structure diagrams | |
•Identify relationships | (class diagrams) | |
between objects | •Various judgment based | |
•Identify attributes | guidelines | |
3. | Model system behavior-I | •Various judgment based |
•Identify system events and | guidelines. | |
system operations | •System sequence diagram | |
•Write contracts for each | •Pre- and post-condition | |
operations | ||
state changes | ||
[pic 2] | Major Steps/ Sub steps in | Useful tools/ Approaches for |
OOA | the Steps | |
4. | Review and change if | •Revisit use cases |
necessary: | •Use Includes relationships | |
•Add new functionality. | •Develop real use cases | |
•Relate use cases | ||
•Extend the object model | ||
5. | Find generalized class | Gen-Spec diagrams |
relationships | ||
6. | Find association between | Whole-part and other |
classes | association | |
7. | Organize the object model | Package diagram |
into packages | ||
8. | Model System behavior-II | State diagrams |
•Model state changes | Activity diagrams | |
•Depict work flows |