Page 184 - DCAP308_OBJECT_ORIENTED_ANALYSIS_AND_DESIGN
P. 184
Object Oriented Analysis and Design
Notes 14.2 Documenting Design Decisions
The above design decisions must be documented when they are made, or you will become
confused. This is especially true if you are working with other developers. It is impossible to
remember design details for any non trivial software system, and documentation is the best
way of transmitting the design to others and recording it for reference during maintenance.
The design document is an extension of the Requirements Analysis Document.
The design document includes revised and much more detailed description of the object
model-both graphical and textual. Additional notation is appropriate for showing
implementation decisions.
Example: Arrows showing the traversal direction of associations and pointers from
attributes to other objects.
Functional model will also be extended. It specifies all operation interfaces by giving
their arguments, results, input-output mappings and side effects.
Dynamic model – if it is implemented using explicit state control or concurrent tasks then
the analysis model or its extension is adequate. If it is implemented by location within
program code, then structured pseudocode for algorithms is needed.
Keep the design document different from analysis document .The design document includes
many optimizations and implementation artifacts. It helps in validation of software and for
reference during maintenance. Traceability from an element in analysis to element in design
document should be straightforward. Therefore the design document is an evolution of analysis
model and retains same names.
Self Assessment
Fill in the blanks:
14. The ........................ document is an extension of the Requirements Analysis Document.
15. If ........................ model is implemented using explicit state control or concurrent tasks then
the analysis model or its extension is adequate.
Case Study Refining Attributes for the ViaNet Bank Objects
Here, we go through the ViaNet bank ATM system classes and refine the attributes as
discussed below:
Refining Attributes for the Bank Client Class
Attributes for the Bank Client Class include:
firstName
lastName
pinNumber
cardNumber
Contd...
178 LOVELY PROFESSIONAL UNIVERSITY