PDF Archive

Easily share your PDF documents with your contacts, on the Web and Social Networks.

Share a file Manage my documents Convert Recover PDF Search Help Contact



18 documenting 4 plus one notes 1 .pdf


Original filename: 18-documenting-4-plus-one-notes-1.pdf
Title: 18-documenting-4-plus-one-notes-1.ppt
Author: Alf Inge Wang

This PDF 1.3 document has been generated by PowerPoint / Mac OS X 10.9.5 Quartz PDFContext, and has been sent on pdf-archive.com on 23/02/2015 at 13:18, from IP address 78.91.x.x. The current document download page has been viewed 2904 times.
File size: 629 KB (5 pages).
Privacy: public file




Download original PDF file









Document preview


TDT4240 Software Architecture
Alf Inge Wang
alfw@idi.ntnu.no
Norwegian University of
Science and Technology
(NTNU)

Software Architecture
Documentation / 4+1 View Model

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 1 -

Lecture goal
√  After this lecture the student should
–  Know and understand the 4+1 view model
–  Know how to use the 4+1 view model
–  Understand the relationships between the views

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 3 -

Presentation outline
√  Software
Architecture
Documentation
–  General introduction
–  The views of the
book
–  4+1 views model by
Philippe Kruchten Rational
Software Corp.

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 4 -

I: Definition
√  Software architecture: The set of structures
needed to reason about the system, which
comprise software elements, relations among
them, and properties of both.
√  Architectural description: A collection of
products to document an architecture.
√  Architectural view – A representation of a
whole system from the perspective of a related
set of concerns.
TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 5 -

What is the purpose of software
architecture documentation?
√  Architect, users and requirement engineers: Negotiate and
make tradeoffs of requirements.
√  Architect and designers: System resource consumption and
performance.
√  Implementers: Constraints on development.
√  Testers and integrators: Specify correct behavior between
components.
√  Maintainers: Reveal areas that are likely to change.
√  Designers: Define set of operations/protocols provided/required.
√  QA: Enable input for analytical tools/evaluation, conformance
checking between SWA and implementation.
√  Managers: Create development teams with appropriate work
assignments.
√  Product line managers: Determine potential new members of
product family.
TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 6 -

Architecture Description
√  The IEEE 1471 standard:
–  Prescribe the least common multiple on what should be
included in a complete architectural description:
•  Architectural documentation: AD ID, version, overview information
•  Stakeholders and their concerns
•  Selection of architectural viewpoints (views): What views will be in
the document, which notations will be used (UML), etc.
•  Architectural views: The actual architectural design.
•  Consistency among architectural views: Inconsistencies between the
views
•  Architectural rationale: A motivation/reason for the design!

–  Does not prescribe what notation or other presentation
format that should be applied.
TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 7 -

Choosing the Relevant Views
1.  Produce a candidate view list:
√  Build a list of stakeholders and views they are likely to
require.
√  Identify the level of detail for each view for each
stakeholder.

2.  Combine views:
√  Reduce number for views to manageable size.
√  Consider removing the views that require little details by
few stakeholders.
√  Combine views if overlap between views.

3.  Prioritize:
√  Decide what views to do first.
TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 8 -

Views as presented in the book
√  Module views:
–  Documents the modules, interfaces and their relationships.
–  Focus on functionality and code-based considerations.
–  Keywords: Decomposition, Aggregation, Generalization,
Dependency
–  Notation: UML Component diagram, Class diagram.

√  Component-and-connector views:
–  Documents runtime components and connections.
–  Keywords: Components, interfaces, connectors, systems.
–  Notation: Layered, UML component, collaboration, class.

√  Allocation views:
–  Documents software elements in one or more external environments
which the software is created and executed.
–  Notation: UML Deployment.
TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 9 -

Architecture description: 4+1 View Model
√  The 4+1 View Model:
–  Specifies how software architecture can be described using five
different, but related, viewpoints.
–  Viewpoints represent the position from where the system
stakeholders see the architecture.
–  Viewpoints define what concerns the views are supposed to
cover.
–  The 4+1 viewpoints:
• 
• 
• 
• 

Logical: Object model of the design.
Process: Captures the concurrency and synchronization aspects.
Physical: Describe software onto hardware mapping
Development: Static organization of software in its development
environment.
•  Scenario: Illustrate few selected use cases.
TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 10 -

4+1 View model

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 11 -

Logical View: End user
√  System decomposed into a set of key abstractions
√  Object oriented approach:
–  Model with class diagrams
–  Should include:
• 
• 
• 
• 
• 

Set of classes
Association
Usage
Composition
Inheritance

√  Data-driven approach:
–  Can use E-R diagrams for modeling

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 12 -

Notation for Logical view (UML)
Class1
End1
End2

«utility»
utility1

Parameter1

Link
Generalize

«uses»

Usage

Class2

«refines»

Refinement

Package1

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 13 -

Notation for Logical View (Booch)

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 14 -

Logic view: Phone control
«uses»

«utility»
Translation Services

«uses»

«utility»
Connection Services

Conversation

End1

End2
«utility»
Numbering Plan

«uses»

Terminal

End3
End4
Controller

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 15 -

Logic view: Air traffic control
«uses»
Simulation
and Training

Display &
User
Interface

External
Interfaces Gateway

«uses»

«uses»

«uses»
«uses»

«uses»
Flight
management

«uses»
Air Traffic
Management
«uses»

«uses»

«uses»

«uses»
Aeronautical
Information

Mechanisms
Services

«uses»

«uses»
Basic
elements

TDT4240 Software Architecture,

www.idi.ntnu.no/emner/tdt4240 Email: alfw@idi.ntnu.no Slide - 16 -


Related documents


18 documenting 4 plus one notes 1
18 documenting 4 plus one notes 2
18 documenting 4 plus one notes 3
saunit8
oomdunit4
3336c073


Related keywords