Monday, 30 July 2012

SOFTWARE DESIGN IN OCS


OBJECT ORIENTED DESIGN METHODOLOGY

The process of OOD starts within the discovery of the classes and objects that forms the vocabulary of our problem domain; it stops whenever we find that there are no new primitive abstractions and mechanisms or when the classes and objects we have already discovered may be implemented by composing them from existing reusable software components.
The following are the steps followed in OOAD:                           

¨       Identifying classes and objects at a given level of abstraction.
¨       Identifying the semantics of this classes and objects.
¨       Identifying the relationships among these classes and objects.              
¨       Implement these classes and objects.
                            
1. Identifying classes and objects at a given level of abstraction

Identifying classes and objects involves finding the key abstraction in the problem space and important mechanisms that offer dynamic behavior over several such objects. The key abstractions are found by learning the terminology of the problem domain. This may be achieved by talking to domain experts.

2. Identifying the semantics

Identifying the semantics establishing the meanings of the classes and objects identified earlier. The developer should view the objects from the outside and define the object protocol. To investigate how each object may be used by other object also an essential part of identifying its semantic. This is described as hard part of OOAD and may require the most iterations.

3. Identifying relationships

Identifying relationships involves extending the previous activities to include the relationships between the classes and objects and to identify how these interact with each other. Different types of associations are used such as inheritance, instantiation and users between the classes.

4. Implementing the classes and objects

Implementing the classes and object involves delving into the classes and objects and determining of how to implement them. A decision is made on how to use a particular programming language to implement the classes. This is also the step where components are used. The classes and objects are structured into modules. This step may lead to the point where the whole process is performed again, but now only inside a specific class and on a lower level.

No comments:

Post a Comment