Page 179 - DCAP405_SOFTWARE_ENGINEERING
P. 179
Software Engineering
Notes
!
Caution Each of these external entities communicates with target systems through an
interface.
10.3.2 Defining Archetypes
Archetypes are the abstract building blocks of an architectural design. It is a class or pattern that
represents a core abstraction that is critical to design of architecture for the target system.
Archetypes can be derived by examining analysis classes defined as part of analysis model.
Target system architecture is composed of these archetypes which represent stable elements of
the architecture. Some kind of archetypes are:
Nodes
Detector
Indicator
Controller
10.3.3 Refining the Architecture into Components
As the software architecture is refined into components, structure of the system begins to emerge.
Components of the software architecture are derived from three sources:
the application domain
the infrastructure domain
the interface domain
Because analysis modeling does not address infrastructure, one should allocate sufficient design
time to consider it carefully.
In order to find the components that are most suitable for refining the software architecture, you
need to start by using the classes which were explained in the analysis model. The analysis
classes in turn are representations of business entities that architecture is trying to explain. You
could also base these components on an infrastructure model rather than the business model.
If you went purely by the business model, you would not be able to depict many of
those infrastructure components such as database components, components used for
communication etc.
Notes Whatever interfaces are explained in the architecture context diagram imply one or
more specialized components that process the data that flow across the interface.
10.3.4 Describing Instantiations of the System
The context of the system has been represented, the archetypes indicating important abstractions
are defined, the overall structure of system apparent and major software components are
identified, however further refinement is necessary which is accomplished by developing an
actual instantiation of architecture. The architecture is applied to a specific problem with the
intent of demonstrating that the structure and components are appropriate.
172 LOVELY PROFESSIONAL UNIVERSITY