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
   174   175   176   177   178   179   180   181   182   183   184