Page 183 - DCAP308_OBJECT_ORIENTED_ANALYSIS_AND_DESIGN
P. 183
Unit 14: Steps for Class Design
application , they are simple and consists of high level decisions and calls on low-level Notes
methods. A class shouldn’t serve too many purposes.
Constructing physical modules
During analysis and system design phases we partitioned the object model into
modules.
The initial organization may not be suitable for final packaging of system
implementation new classes added to existing module or layer or separate module.
Modules should be defined so that interfaces are minimal and well defined.
Connectivity of object model can be used as a guide for partitioning modules.
Classes that are closely connected by associations should be in the same module.
Loosely connected classes should be grouped in separate modules. Classes in a
module should represent similar kinds of things in the application or should be
components of the same composite object. Try to encapsulate strong coupling within
a module. Coupling is measured by number of different operations that traverse a
given association. The number expresses the number of different ways the association
is used, not the frequency.
Task When an entity is said to be coherent? Discuss.
Self Assessment
Fill in the blanks:
1. The ........................ works to implement the objects discovered during analysis phase.
2. The objects discovered during ........................ serve as the skeleton of the design.
3. The operations identified during the analysis must be expressed as ........................
4. The classes, attributes and associations from analysis must be implemented as specific
........................
5. An ........................ sent by an object may represent an operation on another object.
6. Complex operation can be defined in terms of ........................ operations on simpler objects.
7. ........................ is the process of changing a software system in such a way that it does not
alter the external behavior of the code yet improves its internal structure.
8. The class that contains the ........................ data must be updated if any of the objects that it
depends on are changed.
9. An ........................ value is a value that has dependent values.
10. A ........................ is a minimal definition of function /subroutine without any internal
code.
11. When a project is completed, the ........................ classes should be collected, documented
and generalized so that they may be used in future projects.
12. If ........................ in your application is traversed in one direction, their implementation
can be simplified.
13. Hiding ........................ information permits implementation of a class to be changed without
requiring any clients of the class to modify code.
LOVELY PROFESSIONAL UNIVERSITY 177