Object Oriented Analysis
Definitions
- Encapsulation: complete integration of data and processes working on these data into one unit.
- Inheritance: the ability of a class to inherit the properties of another class.
- abstract data type ADT: just means an object.
- meta class: a class that describes the structure of other classes. also called generic class or gen class.
- generalization class: defines a group of similar objects eg. Vehicle is a generalization class for Car, Bus, Truck, etc.
- specialization class: a class that inherits the properties of another class. eg. Car is a specialization class of Vehicle.
- Messages between objects: client object sends (requests) a message from the supplier object. message has 3 prats:
- Addressee: the object that receives the message.
- Service Name: the name of the method to be invoked
- arguments: the parameters of the method to be invoked.
- polymorphism: the same process to take different forms in different situations or objects.
- summary of object analysis and design documentation:
steps of object oriented analysis
- develop summary paragraph.
- Identify Objects of Interest
- Identify Processes.
- Define Attributes of Objects
1. Develop Summary Paragraph
- a single paragraph summarizing the problem at a high level.
- done by SE + user
- rules:
- All major functions, data entities,information sources, and destinations are identified.
- All sentences are at the same level of abstraction,detail, and importance.
2. Identify Objects of Interest
- starts from every noun in the summary paragraph, then eliminate the nouns that are attributes of other nouns. eg. customer address.
- define if the noun (object) belongs to the problem space or the solution space, then give each object a unique name.
- Class/object diagram format
3. Identify Processes
- starts from every verb in the summary paragraph, then eliminate the verbs that are not actions of the objects. eg. status, comments, physical actions.
- define if the verb (process) belongs to the problem space or the solution space, then give each process a unique name.
- assign each process to an object, and define the input and output of the process.
4. Define Attributes of Objects