0% found this document useful (0 votes)
169 views

4+1 Architectural View Model: by Jainul Musani

The document describes the 4+1 architectural view model created by Philippe Kruchten. The 4+1 model uses four primary views - logical, development, process, and physical - along with a fifth "scenario" view to describe a software system from the perspectives of different stakeholders. The logical view uses UML diagrams to model key abstractions and functional requirements. The process view considers non-functional aspects like performance. The implementation view focuses on software module organization. And the physical view maps the software to hardware. Together these views provide a holistic way to understand and communicate a system's architecture.

Uploaded by

madhukedar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
169 views

4+1 Architectural View Model: by Jainul Musani

The document describes the 4+1 architectural view model created by Philippe Kruchten. The 4+1 model uses four primary views - logical, development, process, and physical - along with a fifth "scenario" view to describe a software system from the perspectives of different stakeholders. The logical view uses UML diagrams to model key abstractions and functional requirements. The process view considers non-functional aspects like performance. The implementation view focuses on software module organization. And the physical view maps the software to hardware. Together these views provide a holistic way to understand and communicate a system's architecture.

Uploaded by

madhukedar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

1

4+1 architectural view model


By Jainul Musani
2 4+1 Architectural view model
By Philippe Kruchten - Canadian software engineer,
Professor of Software Engineering at University of
British Columbia in Vancouver, Canada,
3 Introduction 4+1 architectural M. V.
4+1. describing the architecture of software-intensive
systems, based on the use of multiple, concurrent views.
The views are used to describe the system from the
viewpoint of different stakeholders,
such as
o End-users,
o Developers,
o project managers and
o System Engineers.
4 Introduction 4+1 architectural M. V.
The four views of the model are_
 Logical view,
 Development view,
 Process view and
 Physical view.
In addition selected use cases or scenarios
as the 'plus one' view.
5

Conceptual Physical
6
7

Logical View and the Process View are at a Conceptual


level
Used from analysis to design.
The Implementation View and the Deployment View are at
the Physical level
Used represent the actual application components built and
deployed.
8 Logical view
 (Object-oriented Decomposition)
Logical Architects use this view for functional analysis
UML diagrams used to represent the logical view include,
class diagrams, and state diagrams.
Viewer:End-user
considers: Functional requirements-What the system
should provide in terms of services to its users.
9 Logical view
The system is decomposed into a set of key abstractions,
taken (mostly) from the problem domain, in the form of
objects or object classes.
 They exploit the principles of abstraction, encapsulation,
and inheritance.
Logical view
10
Sequence Diagram of ATM
11
Logical View – Sequence Diagram
12
13
List of online tools to create diagrams
14
 https://www.draw.io/
 https://www.gliffy.com/
 https://cacoo.com/
 https://www.processon.com/
 https://www.lucidchart.com/
 http://diagramo.com/
 https://creately.com/
15 Class Diagram
16 Class Diagram
17 Class Diagram
18
Process View
 (The process decomposition)
 Viewer:Integrators
 Considers: Non -functional requirements
 This view considers non-functional aspects such as
 performance,
 Concurrency,
 scalability and
 throughput.
 To understand the organization processes, the process architectural view is used
in the Analysis and Design.
19
Process View
 The process view allows you to show
 what the system does at a high level, and
 how the smaller steps within the process fit together.
 It clears the processes steps, order and flow of information.
 the major flows of information through the system well understood and
documented.
Process view example
20
Process view example
21
22
Implementation View
 (Subsystem decomposition)
 Viewer: Programmers and Software Managers
 Considers: software module organization
(Hierarchy of layers, software management,
reuse, constraints of tools)
 Focuses on configuration management and actual software module organization.
 Component Diagrams are used to represent the Implementation View
 These diagrams show different components, the ports available and the
dependencies on the environment in terms of provided and required interfaces.
23
Implementation View
The implementation view is useful for:
assigning implementation work to individuals and
teams, or subcontractors
assessing the amount of code to be developed,
modified, or deleted
reasoning large-scale reuse
considering release strategies
Implementation View
24
Package Architecture
25
Physical View
26
 (Mapping the software to the Hardware)
 Viewer: System Engineers
 Considers: Non-functional req. regarding to underlying hardware
(Topology, Communication)
 Understanding the physical distribution of the system across a set of processing
nodes.
 The distribution of processing across a set of nodes in the system, including the
physical distribution of processes and threads.
Physical / Deployment View
27
Deployment of ATM / Physical
28
Scenario View
29
 (Putting it all together)
 Viewer: All users of other views and Evaluators.
 Considers: System consistency, validity
 Notation: almost similar to logical view
 The scenarios describe sequences of interactions between objects
and between processes.
 a use case is a list of actions or event steps typically defining the
interactions between a role (known in the UML as an actor) and a
system to achieve a goal.
 The actor can be a human or other external system.
 In systems engineering use cases are used at a higher level than
within software engineering often representing missions or
stakeholder goals.
Scenario View
30
Scenario Diagram – Usecase - ATM
31
32
USE CASE for Inventory
33
34 Bibliography
1) https://en.wikipedia.org/wiki/4%2B1_architectural_view_model
2) http://cic.javerianacali.edu.co/wiki/lib/exe/fetch.php?media=materias:mazeiar-
kruchten-4_1.pdf
3) http://www.ece.uvic.ca/~itraore/seng422-06/notes/arch06-3-2.pdf
4) http://sce.uhcl.edu/helm/rationalunifiedprocess/process/workflow/ana_desi/co_lview.
htm
5) https://technowiki.wordpress.com/2013/05/08/software-architecture-document-
guidelines/
6) https://www.sparxsystems.com.au/downloads/whitepapers/FCGSS_US_WP_Applying
_4+1_w_UML2.pdf

7) https://www.lucidchart.com/blog/uml-diagram-templates 
35

For Self Practice Examples use the


following site
 https://www.lucidchart.com/blog/uml-diagram-
templates#sequence

You might also like