Information Technology Reference
In-Depth Information
• Architecture Model. This is an evolving model of the structure of the solution
to the requirements defined in the Analysis Model. Its primary focus is on the
architecture which includes: the components, interfaces, and structure of the
solution; the deployment of that structure across nodes; and the trade-offs and
decisions that led up to said structure.
• Component (Design) Models. This is a number of models (roughly, one per
component) that depict the internal structure of the pieces of the Architecture
Model. Each Component Model focuses on the detailed class structure of its
component, and allows the design team to precisely specify the attributes,
operations, dependencies, and behaviors of its classes.
Depending on your development process, you may have even more models: a
business model, a domain model, and possibly even others. The major benefit of
models is that you can make model changes far earlier in the development cycle
than you can make code changes, and this is also far easier. Due to the fact that you
can make changes early, you can also make corrections early. And that's a good
thing, because early detection and correction is cheap detection and correction.
Modeling will let you catch your most costly bugs sooner which can save you a
factor of 50-200 on the cost and schedule of a bug fix.
6.3.1 Analysis Object Models
Analysis modeling provides a representation of the software system from the point
of view of the user. To achieve this, a model is created based on the interactions
between the user and the system, and the responses that the system generates. This
model, known as the analysis object model, describes the individual classes,
attributes, and operations that are manipulated by the system through the use of
UML class diagrams. These diagrams create a visual representation of the system
that is made up of the various portions of the system that are seen and interacted
with by the user (Bruegge and Dutoit 2004 ).
A complementary portion of the analysis model focuses on what takes place
within the system in response to user interaction and changes in the system's state.
This model, called the dynamic model, depicts the behavior of the software
system through the use of sequence diagrams and statecharts. The sequence dia-
grams are used to describe a single use case based on the interactions that occur
among a set of objects. The resulting image details object relationships. The
statecharts, on the other hand, are used to represent the behavior of a single object,
or the ways in which it responds to stimuli (Bruegge and Dutoit 2004 ). The
dynamic model pinpoints classes, attributes, and relationships in the software
system, and can also be used to indicate where, when and for what purpose new
ones should be created and instituted.
Search WWH ::




Custom Search