SlideShare a Scribd company logo
1
Architectural Design Steps
1) Represent the system in context
2) Define archetypes
3) Refine the architecture into components
4) Describe instantiations of the system
These slides are designed to accompany
Software Engineering: A Practitioner’s
Approach, 7/e (McGraw-Hill, 2009).
Slides copyright 2009 by Roger
2
Architectural Design
• The software must be placed into context
• the design should define the external entities (other systems, devices, people)
that the software interacts with and the nature of the interaction
• A set of architectural archetypes should be identified
• An archetype is an abstraction (similar to a class) that represents one element
of system behavior
• The designer specifies the structure of the system by defining and
refining software components that implement each archetype
Representing The System In The Context
• An architectural context diagram is used to model the manner in
which software interacts with entities external to its boundaries
• Figure
4
1. Represent the System in Context
Target system
I/F I/F
I/F I/F I/F
Actors
Peers
"Super"ordinate systems
"Sub"ordinate systems
Used by
Produces or
consumesProduces or
consumes Depends on
Uses
(More on next slide)
• Super-ordinate systems:- uses the target system as
part of some higher level processing scheme
• Subordinate systems:- those systems that are used by
the target system and provide data or processing that
are necessary to complete target system functionality
• Peer-level system:- interact on peer-to-peer basis.
Information is produced or consumed by the peers
and the target system.
• Actors:- entities ( people, devices) that interact with
the target system by producing or consuming
information that is necessary for requisite processing.
• Each of these external entities communicates with
the target system through an interfaces (the small
shaded rectangles in figure).
These slides are designed to accompany
Software Engineering: A Practitioner’s
Approach, 7/e (McGraw-Hill, 2009).
Slides copyright 2009 by Roger
6
Architectural Context
target system:
Security Function
uses
uses peershomeowner
Safehome
Product
Internet-based
system
surveillance
function
sensors
control
panel
sensors
uses
7
2. Define Archetypes
• Archetypes indicate the important abstractions within the problem
domain (i.e., they model information)
• An archetype is a class or pattern that represents a core abstraction
that is critical to the design of an architecture for the target system
• The target system architecture is composed of these archetypes
• They represent stable elements of the architecture
• They may be instantiated in different ways based on the behavior of the
system
• They can be derived from the analysis class model
Archetypes
• Abstract Building Blocks
•  Node
•  Input/output
•  Controller
•  Arms-disarms a node
•  Detector
•  Sensing
•  Indicator
•  Alarms
15
Figure 10.7 UML relationships for SafeHomesecurity function archetypes
(adapted from [BOS00])
Controller
Node
communicates with
Detector Indicator
9
3. Refine the Architecture into
Components
• Based on the archetypes, the architectural designer refines the software
architecture into components to illustrate the overall structure and
architectural style of the system
• These components are derived from various sources
• The application domain provides application components, which are the domain
classes in the analysis model that represent entities in the real world
• The infrastructure domain provides design components (i.e., design classes) that
enable application components but have no business connection
• Examples: memory management, communication, database, and task management
• The interfaces in the ACD imply one or more specialized components that process
the data that flow across the interface
• A UML class diagram can represent the classes of the refined architecture and
their relationships
11
4. Describe Instantiations of the
System
• This demonstrates that the architectural structure, style and
components are appropriate
• A UML component diagram can be used to represent this
instantiation
Refined Component
Structure
sensor
sseennssoror
s
sensorseennssoror
sensor
External
Communication
Management
GUI Internet
Interface
Security
Control
panel
processing
detector
management
alarm
processing
Keypad
processing
CPdisplay
functions
scheduler
sseennssor
or
sseennssoror
sensor
phone
communication
alarm
SafeHome
Executive
20
ADL
 Architectural description language (ADL) provides
a semantics and syntax for describing a software
architecture
 Provide the designer with the ability to:
 decompose architectural components
 compose individual components into larger architectural
blocks and
 represent interfaces (connection mechanisms) between
components.

More Related Content

PPTX
Software Engineering
PPTX
unit 5 Architectural design
PPTX
Designing Techniques in Software Engineering
PPT
Chapter 08
PPTX
Requirements modeling
PPTX
Requirements engineering for agile methods
PPT
Chapter 13 software testing strategies
PPT
Debugging
Software Engineering
unit 5 Architectural design
Designing Techniques in Software Engineering
Chapter 08
Requirements modeling
Requirements engineering for agile methods
Chapter 13 software testing strategies
Debugging

What's hot (20)

PPTX
Software Reliability
PPS
Software design principles
PPT
TESTING STRATEGY.ppt
PPTX
Phased life cycle model
PPTX
Lect5 improving software economics
PPTX
Software testing ppt
PPT
Critical System Validation in Software Engineering SE21
PPTX
V model presentation
PPTX
Quality Concept
PPTX
Black Box Testing
PPTX
SDLC ITS MODEL AND SOFTWARE TESTING
PPT
Formal Specification in Software Engineering SE9
PPTX
Software process Models
PPTX
Delphi cost estimation model
PPTX
White Box Testing
PPTX
Object Oriented Testing
PDF
Validation & verification software engineering
PPTX
Language and Processors for Requirements Specification
PPTX
Software requirements specification
PPT
Chapter 15 software product metrics
Software Reliability
Software design principles
TESTING STRATEGY.ppt
Phased life cycle model
Lect5 improving software economics
Software testing ppt
Critical System Validation in Software Engineering SE21
V model presentation
Quality Concept
Black Box Testing
SDLC ITS MODEL AND SOFTWARE TESTING
Formal Specification in Software Engineering SE9
Software process Models
Delphi cost estimation model
White Box Testing
Object Oriented Testing
Validation & verification software engineering
Language and Processors for Requirements Specification
Software requirements specification
Chapter 15 software product metrics
Ad

Similar to Fundamentals of Software Engineering (20)

PPT
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
PPT
Architectural design
PPT
Software engg. pressman_ch-10
PPTX
Unit 4colorcolorcolorcolorcolorcolorcolor.pptx
PPT
software engineering unit-3 in software engineering
PPTX
Architectural design of software
PPT
3.2 The design model & Architectural design.ppt
PPT
Object oriented sad-5 part i
PPTX
design concepts in software engineering.pptx
PPT
Fundamentals of Software Engineering
PPT
PPTX
SoftwareArchitecture.pptx Software Architecture
PPTX
Design Concepts in Software Engineering-1.pptx
PPT
Artifical selection for enhancment for people Use
PPT
Software design, software engineering
PPTX
Unit_4_Software_Design.pptx
PPT
Software architecture design ppt
PDF
Design Engineering is a topic of software engineering of second year fourth s...
PPTX
software engineering Architecture and design Unit 3.pptx
PPTX
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Architectural design
Software engg. pressman_ch-10
Unit 4colorcolorcolorcolorcolorcolorcolor.pptx
software engineering unit-3 in software engineering
Architectural design of software
3.2 The design model & Architectural design.ppt
Object oriented sad-5 part i
design concepts in software engineering.pptx
Fundamentals of Software Engineering
SoftwareArchitecture.pptx Software Architecture
Design Concepts in Software Engineering-1.pptx
Artifical selection for enhancment for people Use
Software design, software engineering
Unit_4_Software_Design.pptx
Software architecture design ppt
Design Engineering is a topic of software engineering of second year fourth s...
software engineering Architecture and design Unit 3.pptx
chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx
Ad

More from Madhar Khan Pathan (20)

PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPT
Fundamentals of Software Engineering
PPT
Fundamentals of Software Engineering
PPT
Fundamentals of Software Engineering
PPT
Fundamentals of Software Engineering
PPT
Fundamentals of Software Engineering
PPT
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Fundamentals of Software Engineering
PPTX
Generic process model
PPTX
Software Myths
PPTX
Introduction to Software Engineering
PPTX
Software applications and challenges
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Fundamentals of Software Engineering
Generic process model
Software Myths
Introduction to Software Engineering
Software applications and challenges

Recently uploaded (20)

PDF
Design an Analysis of Algorithms I-SECS-1021-03
PDF
medical staffing services at VALiNTRY
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
AI in Product Development-omnex systems
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PDF
Nekopoi APK 2025 free lastest update
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PPTX
Transform Your Business with a Software ERP System
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Reimagine Home Health with the Power of Agentic AI​
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PPTX
history of c programming in notes for students .pptx
PDF
top salesforce developer skills in 2025.pdf
Design an Analysis of Algorithms I-SECS-1021-03
medical staffing services at VALiNTRY
Internet Downloader Manager (IDM) Crack 6.42 Build 41
How to Migrate SBCGlobal Email to Yahoo Easily
wealthsignaloriginal-com-DS-text-... (1).pdf
AI in Product Development-omnex systems
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Nekopoi APK 2025 free lastest update
2025 Textile ERP Trends: SAP, Odoo & Oracle
CHAPTER 2 - PM Management and IT Context
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Transform Your Business with a Software ERP System
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Reimagine Home Health with the Power of Agentic AI​
Operating system designcfffgfgggggggvggggggggg
Adobe Illustrator 28.6 Crack My Vision of Vector Design
history of c programming in notes for students .pptx
top salesforce developer skills in 2025.pdf

Fundamentals of Software Engineering

  • 1. 1 Architectural Design Steps 1) Represent the system in context 2) Define archetypes 3) Refine the architecture into components 4) Describe instantiations of the system
  • 2. These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger 2 Architectural Design • The software must be placed into context • the design should define the external entities (other systems, devices, people) that the software interacts with and the nature of the interaction • A set of architectural archetypes should be identified • An archetype is an abstraction (similar to a class) that represents one element of system behavior • The designer specifies the structure of the system by defining and refining software components that implement each archetype
  • 3. Representing The System In The Context • An architectural context diagram is used to model the manner in which software interacts with entities external to its boundaries • Figure
  • 4. 4 1. Represent the System in Context Target system I/F I/F I/F I/F I/F Actors Peers "Super"ordinate systems "Sub"ordinate systems Used by Produces or consumesProduces or consumes Depends on Uses (More on next slide)
  • 5. • Super-ordinate systems:- uses the target system as part of some higher level processing scheme • Subordinate systems:- those systems that are used by the target system and provide data or processing that are necessary to complete target system functionality • Peer-level system:- interact on peer-to-peer basis. Information is produced or consumed by the peers and the target system. • Actors:- entities ( people, devices) that interact with the target system by producing or consuming information that is necessary for requisite processing. • Each of these external entities communicates with the target system through an interfaces (the small shaded rectangles in figure).
  • 6. These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger 6 Architectural Context target system: Security Function uses uses peershomeowner Safehome Product Internet-based system surveillance function sensors control panel sensors uses
  • 7. 7 2. Define Archetypes • Archetypes indicate the important abstractions within the problem domain (i.e., they model information) • An archetype is a class or pattern that represents a core abstraction that is critical to the design of an architecture for the target system • The target system architecture is composed of these archetypes • They represent stable elements of the architecture • They may be instantiated in different ways based on the behavior of the system • They can be derived from the analysis class model
  • 8. Archetypes • Abstract Building Blocks •  Node •  Input/output •  Controller •  Arms-disarms a node •  Detector •  Sensing •  Indicator •  Alarms 15 Figure 10.7 UML relationships for SafeHomesecurity function archetypes (adapted from [BOS00]) Controller Node communicates with Detector Indicator
  • 9. 9 3. Refine the Architecture into Components • Based on the archetypes, the architectural designer refines the software architecture into components to illustrate the overall structure and architectural style of the system • These components are derived from various sources • The application domain provides application components, which are the domain classes in the analysis model that represent entities in the real world • The infrastructure domain provides design components (i.e., design classes) that enable application components but have no business connection • Examples: memory management, communication, database, and task management • The interfaces in the ACD imply one or more specialized components that process the data that flow across the interface • A UML class diagram can represent the classes of the refined architecture and their relationships
  • 10. 11 4. Describe Instantiations of the System • This demonstrates that the architectural structure, style and components are appropriate • A UML component diagram can be used to represent this instantiation
  • 12. 20 ADL  Architectural description language (ADL) provides a semantics and syntax for describing a software architecture  Provide the designer with the ability to:  decompose architectural components  compose individual components into larger architectural blocks and  represent interfaces (connection mechanisms) between components.