Preview

he 3+1 Approach to Software Architecture Description Using UML

Powerful Essays
Open Document
Open Document
3074 Words
Grammar
Grammar
Plagiarism
Plagiarism
Writing
Writing
Score
Score
he 3+1 Approach to Software Architecture Description Using UML
The 3+1 Approach to Software Architecture
Description Using UML
Revision 2.2
Henrik Bærbak Christensen, Aino Corry, and Klaus Marius Hansen
Department of Computer Science, University of Aarhus
Aabogade 34, 8200 ˚rhus N, Denmark
A
{hbc,apaipi,marius}@daimi.au.dk
May 2011
Abstract
This document presents a practical way of describing software architectures using the Unified Modeling Language. The approach is based on a “3+1” structure in which three viewpoints on the described system are used – module, component & connector, and allocation – are used to describe a solution for a set of architectural requirements.

1

Introduction

Software architecture represents an appropriate level of abstraction for many system development activitites [Bass et al., 2003]. Consequently and correspondingly, appropriate software architectural descriptions may support,
e.g., stakeholder communication, iterative and incremental architectural design, or evaluation of architectures [Bass et al., 2003], [Clements et al., 2002b],
[Clements et al., 2002a].
This document represents a practical basis for architectural description and in doing so, we follow the IEEE recommended practice for architectural description of software-intensive systems
[Software Engineering Standards Committee, 2000].
Central to this recommended practice is the concept of a viewpoint through which the software architecture of a system is described (see Figure 1). A concrete architectural description consists of a set of views corresponding to a chosen set of viewpoints.
This document recommends the use of three viewpoints (in accordance with the recommendations of [Clements et al., 2002a]):
• A Module viewpoint concerned with how functionality of the system maps to static development units,
• a Component & Connector viewpoint concerned with the runtime mapping of functionality to components of the architecture, and
• an Allocation viewpoint concerned with how software entities are



References: [Bass et al., 2003] Bass, L., Clements, P., and Kazman, R. (2003). Software Architecture in Practice [Clements et al., 2002a] Clements, P., Bachmann, F., Bass, L., Garlan, D., Ivers, J., Little, R., Nord, R., and Sta↵ord, J., editors (2002a) [Clements et al., 2002b] Clements, P., Kazman, R., and Klein, M., editors (2002b) [Hofmeister et al., 1999] Hofmeister, C., Nord, R., and Soni, D., editors (1999). 11 [Larman, 2002] Larman, C [OMG, 2003] OMG (2003). Unified Modeling Language specification 1.5. Technical Report formal/2003-03-01, Object Management Group. [Software Engineering Standards Committee, 2000] Software Engineering Standards Committee (2000). IEEE recommended practice for architectural description of software-intensive systems

You May Also Find These Documents Helpful

  • Better Essays

    Sr-Rm-022 Section 2

    • 930 Words
    • 4 Pages

    Now that the system requirements are in place, the scope has been set, and the feasibility has been assessed, the application architecture and process design can begin. “Application architecture is the organizational design…

    • 930 Words
    • 4 Pages
    Better Essays
  • Better Essays

    It will take a team of experts in each phase to put their skills and knowledge to ensure the successful completion of them. Each of the phases…

    • 1332 Words
    • 6 Pages
    Better Essays
  • Good Essays

    References: Iseger, M. (2010, July 23). Domain-specific modeling for generative software development. Retrieved from http://www.developerfusion.com/article/84844/domainspecific-modeling-for-generative-software-development/…

    • 858 Words
    • 4 Pages
    Good Essays
  • Powerful Essays

    "In the implementation phase the system is constructed in a series of iterations where each Use Case and component is coded, tested and integrated into the overall system. This phase is performed iteratively following a time line that accounts for all resources and costs" (SCM, 2004). The following six activities are discussed in the subsequent sections: coding, testing, installation, documentation, training and support. Many benefits are seen when using defined and repeatable processes: clarification of roles and responsibilities, clear definition of procedures, demonstrate standards are being met, the same steps can be used to define other processes, and improvement in product design.…

    • 1512 Words
    • 7 Pages
    Powerful Essays
  • Better Essays

    Application Architecture

    • 1006 Words
    • 5 Pages

    “Software architecture encompasses the set of significant decisions about the organization of a software system including the selection of the structural elements and their interfaces by which the system is composed; behavior as specified in collaboration among those elements; composition of these structural and behavioral elements into larger subsystems; and an architectural style that guides this organization. Software architecture also involves functionality, usability, resilience, performance, reuse, comprehensibility, economic and technology constraints, tradeoffs and aesthetic concerns.”…

    • 1006 Words
    • 5 Pages
    Better Essays
  • Powerful Essays

    Description of Systems Development life Cycle as it Pertains to Both the Development of a Custom Application and the Selection of Proprietary Systems…

    • 2250 Words
    • 9 Pages
    Powerful Essays
  • Powerful Essays

    Abstract— During the process of software development, gathering requirement is the very imperative task. Both functional as well as non functional requirements play an important role in building the quality software. Little work has been done in the field of gathering the non functional requirements. To reflect the FRs and NFR’s properly, a solid architectural foundation is needed. Modeling is the best way to achieve such a goal, and Using UML tools can help to achieve the goal of eliciting functional as well as non functional requirements. We use UML models to represent FRs and NFRs of the system because UML has emerged as the industry standard for software modeling notations. This work provides the thorough and comprehensive work done in the field of eliciting non functional requirements. A new technique has been presented that helps in getting the non functional requirements right. This technique covers all the phases of requirement engineering and produces very valid results, as the goal of requirement engineering i.e.. Fulfilling the demands of stakeholder is completely satisfied.…

    • 3386 Words
    • 14 Pages
    Powerful Essays
  • Powerful Essays

    Rational Unified Process

    • 2101 Words
    • 9 Pages

    The Rational Unified Process activities create and maintain models. Rather than focusing on the production of large amount of paper documents, the Unified Process emphasizes the development and maintenance o models—semantically rich representations of the software system under development.…

    • 2101 Words
    • 9 Pages
    Powerful Essays
  • Good Essays

    Denver airport study

    • 3889 Words
    • 16 Pages

    3. C. Wallin, F. Ekdahl, and S. Larsson, “Integrating Business and Software Development Models,” IEEE Software, Nov./Dec. 2002, pp. 28–33.…

    • 3889 Words
    • 16 Pages
    Good Essays
  • Powerful Essays

    Zachman J. A. (1987). A framework for information systems architecture, IBM Systems Journal Vol. 26, Issue 3 1987 Pages: 276 – 292.…

    • 3468 Words
    • 14 Pages
    Powerful Essays
  • Satisfactory Essays

    03-60-611-01 Advanced Software Engineering Topics Fall 2015 Phase 2 Group 11 - Commutum Commuting made secure Group Members 1. Amrit Bains 2. Danish Saleem 3. Neel Trivedi 4. Parth Chokshi 104351734 104497094 104443556 104495148 USER STORIES…

    • 466 Words
    • 4 Pages
    Satisfactory Essays
  • Satisfactory Essays

    What is StarUML?

    • 338 Words
    • 2 Pages

    * Plug-in Architecture : Many users require more and more functionalities to software modeling tools. To meet the requirements, the tool must have well-defined plug-in platform. StarUML provides simple and powerful plug-in architecture so anyone can develop plug-in modules in COM-compatible languages (C++, Delphi, C#, VB, …)…

    • 338 Words
    • 2 Pages
    Satisfactory Essays
  • Satisfactory Essays

    CS 454

    • 869 Words
    • 14 Pages

    Module 1 - Distributed System Architectures & Models System Architecture Defines the structure of the system components identified functions of each component defined interrelationships and interactions between components defined CS454/654 1-2 Standardization Reference Model A conceptual framework whose purpose is to divide standardization work into manageable pieces and to show at a general level how these pieces are related to one another. Approaches Component-based Components of the system are defined together with the interrelationships between components. Good for design and implementation of the system.…

    • 869 Words
    • 14 Pages
    Satisfactory Essays
  • Good Essays

    Staruml Beginnings

    • 495 Words
    • 2 Pages

    For the class modeling we are undertaking on this module, we can use a UML software modeling tool – StarUML. StarUML is a freeware UML tool. The official webpage provides general information, documentation and a download page (so you can download it and install it at your home PC).…

    • 495 Words
    • 2 Pages
    Good Essays
  • Good Essays

    Architectural specifications provide software with “a unifying or coherent form or structure” (Perry and Wolf, 1992). Coherence is most effectively achieved through formal manifestations, allowing for unambiguous and verifiable representation of the architectural specifications. Various formalisms and Architecture Description Languages (ADLs) (Medvidovic and Taylor, 1997) were proposed for this purpose, each of which derives from an established formal theory. For example, Allen and Garlan extend CSP (Hoare, 1985) in WRIGHT (Allen and Garlan, 1997); Dean and Cordy (1995) use typed, directed multigraphs; and Abowd, Allen, and Garlan (1993) chose Z (Spivey, 1989) as the underlying theory. Other formalisms rely on Statecharts (Harel, 1987) and Petri Nets (Petri, 1962). In contrast, techniques…

    • 7482 Words
    • 30 Pages
    Good Essays