Page 56 - DCAP507_SYSTEM_SOFTWARE
P. 56

System Software




                    Notes          3.1.1 Software Architecture


                                   Architecture Description Languages
                                   Architecture Description Languages (ADLs) are employed to explain a Software Architecture.
                                   Several different ADLs have been developed by dissimilar organizations, including AADL (SAE
                                   standard), Wright (developed by Carnegie Mellon), Acme (developed  by Carnegie Mellon),
                                   xADL (developed  by  UCI), Darwin (developed by Imperial  College London),  DAOP-ADL
                                   (developed  by University of Málaga), and ByADL (University of  L'Aquila, Italy). Common
                                   elements of an ADL are component, connector and configuration.

                                   Views

                                   Software architecture is usually organized in views, which are analogous to the different types
                                   of  blueprints  made  in building  architecture.  A view is  a representation of a  set of  system
                                   components and relationships among them. Within the ontology established by ANSI/IEEE
                                   1471-2000, views are responses to viewpoints, where a viewpoint is a specification that describes
                                   the architecture in question from the perspective of a given set of stakeholders and their concerns.




                                      Task  The viewpoint specifies not  only the concerns addressed  but the  presentation,
                                     model kinds used, conventions used and any consistency (correspondence) rules to keep a
                                     view consistent with other views. Analyze
                                   Some possible views (actually, viewpoints in the 1471 ontology) are:

                                      Functional/logic view
                                      Code/module view
                                      Development/structural view
                                      Concurrency/process/runtime/thread view
                                      Physical/deployment/install view

                                      User action/feedback view
                                      Data view/data model.
                                   More than  a few  languages for  describing software architectures ('architecture description
                                   language' in ISO/IEC 42010/IEEE-1471 terminology) have been devised,  but no  agreement
                                   exists on which symbol-set or language should be used to describe each architecture view. The
                                   UML is a standard that can be used "for analysis, design, and implementation of software-based
                                   systems as well as for modeling business and similar processes." Thus, the UML is a  visual
                                   language that can be used to create software architecture.

                                   Architecture Frameworks

                                   Frameworks related to the domain of software architecture are:
                                      4+1
                                      RM-ODP (Reference Model of Open Distributed Processing)

                                      Service-Oriented Modeling Framework (SOMF)




          50                                LOVELY PROFESSIONAL UNIVERSITY
   51   52   53   54   55   56   57   58   59   60   61