Professional Documents
Culture Documents
#]
is another well known example of a software engineering methodology. The OMT so
ftware engineering methodology deals with object-oriented development in the ana
lysis and design phases.
The analysis phase starts with a problem statement which includes a list of goal
s and a definitive enumeration of key concepts within a domain. This problem sta
tement is then expanded into three views, or models: an object model, a dynamic
model, and a functional model. The object model represents the artifacts of the
system. The dynamic model represents the interaction between these artifacts rep
resented as events, states, and transitions. The functional model represents the
methods of the system from the perspective of data flow. The analysis phase gen
erates object-model diagrams, state diagrams, event-flow diagrams, and data-flow
diagrams. The analysis phase is now complete.
The system design phase follows the analysis phase. Here the overall architectur
e is established. First the system is organized into subsystems which are then a
llocated to processes and tasks, taking into account concurrency and collaborati
on. Then persistent data storage is established along with a strategy to manage
shared-global information. Next, boundary situations are examined to help guide
trade-off priorities.
The object design phase follows the system design phase. Here the implementation
plan is established. Object classes are established along with their algorithms
with special attention to the optimization of the path to persistent data. Issu
es of inheritance, associations, aggregation, and default values are examined.
The OMT software engineering methodology is sequential in the sense that first c
omes analysis, followed by design. In each phase, a cyclical approach is taken a
mong the smaller steps. The OMT is very much like the Booch methodology where em
phasis is placed on the analysis and design phases for initial product delivery.
Both the OMT and Booch do not emphasize implementation, testing, or other life
cycle stages.