Documenting an Architecture 10 pages, half pictures.

Slides:



Advertisements
Similar presentations
Computer Systems & Architecture Lesson 2 4. Achieving Qualities.
Advertisements

Integration of MBSE and Virtual Engineering for Detailed Design
Architecture Representation
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
21-February-2003cse Architecture © 2003 University of Washington1 Architecture CSE 403, Winter 2003 Software Engineering
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Business Area Analysis Focus: Domain View (selected business area) Goals: –Isolate functions and procedures that allow the area to meet its goals –Define.
1 ECCF Training 2.0 Introduction ECCF Training Working Group January 2011.
1 CS 691z / 791z Topics on Software Engineering Chapter 17: Interfaces and Subsystems [Arlow & Neustadt, 2002] March 6, 2007.
1 REQUIREMENTS ENGINEERING and SYSTEMS ANALYSIS Elements and Definitions.
SE 555 Software Requirements & Specification Requirements Analysis.
Foundations This chapter lays down the fundamental ideas and choices on which our approach is based. First, it identifies the needs of architects in the.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
What is Software Architecture?
Documenting Software Architectures
What is an Architecture?. An Example? Invoice OrderDelivery Customer.
© Drexel University Software Engineering Research Group (SERG) 1 Based on the paper by Philippe Kruchten from Rational Software.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 Architectural Design.
Software Requirements Engineering CSE 305 Lecture-2.
Software Architecture in Practice Architectural description (The reduced version)
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Software Architecture and Design Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 23 rd, 2003.
Modelling Class T16: Conceptual Modelling – Architecture Image from
Conceptual Modelling – Behaviour
CHAPTER 6 - MODELING ANH AU. BACKGROUND Architectural model – an artifact that captures some or all of the design decisions that comprise a system’s architecture.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Actors and Use Case Diagrams Month Day, Year. Agenda Training Plan Overview Review Detailing Requirements with Requisite Pro Concepts Setting Up XDE Integration.
Documenting Software Architectures 1.Uses and Audiences for Architecture Documentation Architecture documentation serves as a means of education Architecture.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
Requirement Handling
TAL7011 – Lecture 4 UML for Architecture Modeling.
Implementation Diagrams
R R R CSE870: UML Component Diagrams Implementation Diagrams.
1 Lecture 4.5: AV-1 and AV-2 (Ch 3.1 and 3.2) Dr. John MacCarthy UMBC CMSC 615 Fall, 2006.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Week III  Recap from Last Week Review Classes Review Domain Model for EU-Bid & EU-Lease Aggregation Example (Reservation) Attribute Properties.
1 ECCF Training 2.0 Introduction ECCF Training Working Group January 2011.
CpSc 875 John D. McGregor C11 - Documentation. 2 sources Clements et al. – book that describes an approach called Views and Beyond IEEE 1471 adopted standard.
CSCI 578 Software Architectures Exam #1 Review. Materials you are responsible for Chapters 1-8 in the text book All lecture material up to but not including.
AutoDESA Presentation Project Documentation October 2005.
Basic Concepts and Definitions
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
CONNECTING COMPONENT Pertemuan Matakuliah: M Analisis dan Perancangan Sistem Informasi Lanjut Tahun:
Software Engineering Lecture 10: System Engineering.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Documenting Software Architectures. Outline  Introduction  Uses of Architectural Documentation  Views  Choosing the Relevant Views  Documenting a.
Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles.
CpSc 875 John D. McGregor C11 - Documentation. Stock trading system trading-system-architecture- post/#prettyPhoto[slides]/7/
R R R CSE870: UML Component Diagrams Implementation Diagrams.
CSCI 578 Software Architectures Exam #1 Review. Materials you are responsible for Chapters 1-7 in the text book All lecture material through intro to.
Chapter 4 Requirements Engineering (2/3)
Chapter 4 – Requirements Engineering
CSCI 578 Software Architectures
Scenarios In System Development
Object-Oriented Design
What is an Architecture?
Informatics 121 Software Design I
Documenting an Architecture
CSCI 578 Software Architectures
Analysis models and design models
Architecture Description Languages
An Introduction to Software Architecture
CS 8532: Advanced Software Engineering
ISpec: A Compositional Approach to Interface Specification
Copyright © 2015, 2012, 2009 Elsevier Inc. All rights reserved.
What is an Architecture?
CSCI 578 Software Architectures
Presentation transcript:

Documenting an Architecture 10 pages, half pictures

Why Document? You can’t build it if it is unknown! History – to provide cyclic improvement Justification Analysis Decisions that were made

Is there a standard for Architecture Documentation?

Uses of the Documents Documentation should meet the needs of the stakeholders

Stakeholder “Qualities” What are the qualities or properties of a stakeholder. Experience – new or seasoned Novelty Prescriptive vs. Descriptive Future architect

Table 9.1 in text List of typical stakeholders and their main use(s) of the architecture It’s on page 204

Views Architecture can’t be displayed in a single view Complex Varied Many aspects No right set of views

Recall views from CH 2 Module views Component and Connector views Allocation views Architect needs to think in terms of: Structured set of implementation units Elements with runtime behavior Non-software structures in the Environment

How to choose what views to use What does the architecture consist of? What are the needs of the stakeholders? Build a stakeholder table – table 9.2 Make a list of possible views Combine views Prioritize

Documenting a View Primary presentation Element catalog Context diagram Variability guide Architecture background Consider a separate document for this Glossary Other See pp

Primary presentation Contains: Elements Relationships Possible methods Graphical Tables Plain old text

Elements Catalog Details Purpose Roles Behaviors Interfaces Text!

Context Relation of view to the rest of the architecture

Variability Guide Discussion of things not yet bound Guide to developers

Background Rationale Analysis results Assumptions

Other Management information Configuration control Change histories Requirements traceability

Behavior Dynamic aspects UML diagrams Other formal mechanisms Petri diagrams  Petri diagrams contrasted with activity diagrams Petri diagrams contrasted with activity diagrams RM-ODP

Interfaces Syntactic Signature – names, parameters, types Semantics Meaning Constraints

Element interface spec template in text Figure 9.2, p 215

Organization How is it laid out What is there Why it is this way

Helpful layout techniques View catalog Name Description of view elements Description of view purpose Management information View template

How to use UML Authors’ view is section 9.6, pp 218 – 229.