1 / 20

Architecture Description Languages

Architecture Description Languages . Gayatri Rajamani. Software Architecture-Definition. According to Shaw , the software architecture of a system is an abstract representation of the system ’ s components, their interfaces, and constraints on the system. Software Architecture-A model.

dimaia
Download Presentation

Architecture Description Languages

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Architecture Description Languages Gayatri Rajamani

  2. Software Architecture-Definition According to Shaw , the software architecture of a system is an abstract representation of the system’s components, their interfaces, and constraints on the system.

  3. Software Architecture-A model Shaw and Garlan present a model of architecture based on three abstractions: • Components :- independent units of computation. • Connectors :- interactions among components. • Configurations :- instance of architectural description represented as a graph of connectors and components.

  4. Why Architecture Description Languages? Architectural descriptions were often informal and ad hoc. As a result: • Architectural designs were not always properly understood as it was highly ambiguous. • The constraints assumed (i.e. the architectural constraints) in the initial design were not enforced (sometimes) as the system evolves.

  5. Why Architecture Description Languages? • Very few tools available to help the architectural designers. To address these problems, ADLs were introduced.

  6. Precursor to ADL • Module Interconnection Language • Describe system in terms of relation between modules by • Definition/use relationships • Import/export relationships +Well defined module-interfaces + Separate compilation - Inadequate for architectural description - Provide only low-level view of interconnection between components

  7. What is ADL ??? • Architecture description languages (ADLs) are formal languages that can be used to represent the architecture of a software system.

  8. MILs vs ADLs • MILS only describe the structure of an implemented system. • ADLs are used to define and model system architecture prior to system implementation.

  9. Elements of ADL • Components • Primitive building blocks • Connectors • Mechanisms of combining components • Abstraction • Rules for referring to the combination of components and connectors

  10. Important Properties of ADL • Composition – composition of independent components and connections • Abstraction – need to describe design elements clearly and explicitly • Reusability – ability to reuse components, connectors in different architectural descriptions

  11. Important Properties of ADL • Configuration – ability to understand and change the architectural structure • Heterogeneity – ability to combine multiple, heterogeneous architectural descriptions • Analysis - possible to perform rich and varied analysis of architectural description

  12. Types Of ADLs • ACME • Rapide • Wright • Unicon • Aesop • MetaH • Lileanna

  13. Example of a component in ADL

  14. Disadvantages of ADL • Current ADLs designed only for special purpose. • Tool support for ADL is poor • No universal agreement on what ADLs should represent

  15. UML as ADL ??? Advantages • Various diagrams to represent the dynamic behavior of the system • Class Diagrams and package diagrams offer the concepts of modular programming • Deployment diagrams may be used to define mapping of logical software objects onto hardware components

  16. UML as ADL ??? Disadvantages • UML notations are less formal than ADL is. • The concept of connectors, fundamental to ADL does not exist in UML.

  17. Future of ADL • Infrastructure to develop ADLs • Integration of ADL information with other life-cycle products

  18. Thank You!!!!!

  19. References: • D.Garlan and M.Shaw “ An Introduction to software architecture” . In V.Ambriola and G.Tortara, editors. Advances in software engineering and knowledge engineering. World scientific publishing company, 1993. • D.Garlan and M.Shaw “Software architecture Perspectives on an emerging discipline”. Prentice Hall,Upper Saddle River • http://www.sei.cmu.edu/str/descriptions/adl.html

More Related