SlideShare ist ein Scribd-Unternehmen logo
1 von 18
Software
Architecture Design
• Presented By
• Faraz Imllak Mayo
• Fall 18 BSIT 055 (B)
• Software Engineering
Definitions
• The software architecture of a program or computing system is
the structure or structures of the system which comprise
– The software components
– The externally visible properties of those components
– The relationships among the components
• Software architectural design represents the structure of the
data and program components that are required to build a
computer-based system
• An architectural design model is transferable
– It can be applied to the design of other systems
– It represents a set of abstractions that enable software engineers to
describe architecture in predictable ways
Why Architecture?
The architecture is not the operational software. Rather, it is a
representation that enables a software engineer to:
(1)analyze the effectiveness of the design in meeting its stated
requirements,
(2)reduce the risks associated with the construction of the
software.
Why is Architecture
Important?
• Representations of software architecture are an enabler for
communication between all parties (stakeholders) interested
in the development of a computer-based system.
 Controls complexity
 Gives Consistency
 Reduces risk
 Enables re-use
Architectural Design Process
• Basic Steps
– Creation of the data design
– Derivation of one or more representations of the architectural
structure of the system
– Analysis of alternative architectural styles to choose the one best
suited to customer requirements and quality attributes
– Elaboration of the architecture based on the selected architectural
style
• A database designer creates the data architecture for a system
to represent the data components
• A system architect selects an appropriate architectural style
derived during system engineering and software requirements
analysis
Architecture attributes
Performance
Localise operations to minimise sub-system
communication
Security
Use a layered architecture with critical assets in inner
layers
Safety
Isolate safety-critical components
Availability
Include redundant components in the architecture
Maintainability
Use fine-grain, self-contained components
Architecture design
decisions
Architecture design is a creative process, so the process is
depend on the type of system being developed.
A number of common decisions to design all process;
 Is there a general application architecture that can be
used?
 How will the system be distributed?
 Which style of construction is appropriate?
 What approach will be used to design the system?
 How will the system merge into modules?
 Which control strategy should be used?
 How will architectural design be reviewed?
 How should architecture be documented?
•
Architecture models
 Static model
 Dynamic model
 Interface model
 Relationship model
 Distribution model
Software Architectural
Styles
Architectural Styles
Each style describes a system category that encompasses:
(1)a set of components (a system, e.g., a database, computational modules)
that perform a function required by
(2)a set of connectors that enable “communication, coordination and
cooperation” among components,
(3)constraints that define how components can be integrated to form the
system,
 Data-centered architectures
 Data flow architectures
 Call and return architectures
 Object-oriented architectures
 Layered architectures
Data-Centered
Architecture
Data Flow Style
• Characterized by viewing the system as a series of
transformations on successive pieces of input data
• Data enters the system and then flows through the
components one at a time until they are assigned to output or
a data store
• Batch sequential style
– The processing steps are independent components
– Each step runs to completion before the next step begins
• Pipe-and-filter style
– Emphasizes the incremental transformation of data by successive
components
–
Data Flow
Architecture
Call-and-Return Style
• Has been the dominant architecture since the start of software
development
• Main program and subroutine style
– Decomposes a program hierarchically into small pieces (i.e., modules)
– Typically has a single thread of control that travels through various
components in the hierarchy
• Remote procedure call style
– Consists of main program and subroutine style of system that is
decomposed into parts that are resident on computers connected via
a network
– Incurs a finite communication time between subroutine call and
response
25
Call-and-Return Style
Main module
Subroutine A
Subroutine B
Subroutine A-1 Subroutine A-2
Physical layer
Data layer
Network layer
Transport layer
Application layer
Class W
Class V
Class Z
Class X Class Y
Layered
Architecture
Analyzing Architectural Design
1.Collect scenarios.
2.Elicit requirements, constraints, and environment
description.
3.Describe the architectural styles/patterns that have been
chosen to address the scenarios and requirements:
 Logical view
 process view
 Implementation view
 Deployment view
Thank You

Weitere ähnliche Inhalte

Was ist angesagt?

Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and viewsDr Reeja S R
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software EngineeringFáber D. Giraldo
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 
An Introduction to Software Architecture
An Introduction to Software ArchitectureAn Introduction to Software Architecture
An Introduction to Software ArchitectureRahimLotfi
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGSaqib Raza
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineeringRupesh Vaishnav
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIvano Malavolta
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineeringRupesh Vaishnav
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineeringDarshit Metaliya
 
Architecture business cycle
Architecture business cycleArchitecture business cycle
Architecture business cycleHimanshu
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)REHMAT ULLAH
 
Quality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design PatternsQuality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design PatternsGatte Ravindranath
 
Software Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationSoftware Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationNishu Rastogi
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural designdevika g
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationAjit Nayak
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notesSudarshan Dhondaley
 

Was ist angesagt? (20)

Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and views
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
An Introduction to Software Architecture
An Introduction to Software ArchitectureAn Introduction to Software Architecture
An Introduction to Software Architecture
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
UML
UMLUML
UML
 
Advanced topics in software engineering
Advanced topics in software engineeringAdvanced topics in software engineering
Advanced topics in software engineering
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Introduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTUREIntroduction to SOFTWARE ARCHITECTURE
Introduction to SOFTWARE ARCHITECTURE
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Architecture business cycle
Architecture business cycleArchitecture business cycle
Architecture business cycle
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)
 
Software Evolution
Software EvolutionSoftware Evolution
Software Evolution
 
System Modelling
System ModellingSystem Modelling
System Modelling
 
Quality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design PatternsQuality Attributes In Software Architecture & Design Patterns
Quality Attributes In Software Architecture & Design Patterns
 
Software Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and SpecificationSoftware Engineering- Requirement Elicitation and Specification
Software Engineering- Requirement Elicitation and Specification
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural design
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
 

Ähnlich wie Software architecture design ppt

Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-designAhmad sohail Kakar
 
architectural design
 architectural design architectural design
architectural designPreeti Mishra
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptxtaxegap762
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering arvind pandey
 
Architectural design1
Architectural design1Architectural design1
Architectural design1Zahid Hussain
 
Architectural design1
Architectural design1Architectural design1
Architectural design1Zahid Hussain
 
Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssadPreeti Mishra
 
Software engineering 17 architectural design
Software engineering 17 architectural designSoftware engineering 17 architectural design
Software engineering 17 architectural designVaibhav Khanna
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxKarthigaiSelviS3
 
Software Architecture Design for Begginers
Software Architecture Design for BegginersSoftware Architecture Design for Begginers
Software Architecture Design for BegginersChinh Ngo Nguyen
 

Ähnlich wie Software architecture design ppt (20)

Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-design
 
architectural design
 architectural design architectural design
architectural design
 
Architec design introduction
Architec design introductionArchitec design introduction
Architec design introduction
 
Architectural design of software
Architectural  design of softwareArchitectural  design of software
Architectural design of software
 
DESIGN CONCEPTS
DESIGN CONCEPTSDESIGN CONCEPTS
DESIGN CONCEPTS
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
Architectural design
Architectural designArchitectural design
Architectural design
 
Software Design - SDLC Model
Software Design - SDLC ModelSoftware Design - SDLC Model
Software Design - SDLC Model
 
Software Design Concepts
Software Design ConceptsSoftware Design Concepts
Software Design Concepts
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
 
Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssad
 
Software engineering 17 architectural design
Software engineering 17 architectural designSoftware engineering 17 architectural design
Software engineering 17 architectural design
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Software Architecture Design for Begginers
Software Architecture Design for BegginersSoftware Architecture Design for Begginers
Software Architecture Design for Begginers
 
architeral design.pptx
architeral design.pptxarchiteral design.pptx
architeral design.pptx
 
Design engineering
Design engineeringDesign engineering
Design engineering
 

Kürzlich hochgeladen

UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxcallscotland1987
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentationcamerronhm
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxnegromaestrong
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseAnaAcapella
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxdhanalakshmis0310
 

Kürzlich hochgeladen (20)

UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 

Software architecture design ppt

  • 1. Software Architecture Design • Presented By • Faraz Imllak Mayo • Fall 18 BSIT 055 (B) • Software Engineering
  • 2. Definitions • The software architecture of a program or computing system is the structure or structures of the system which comprise – The software components – The externally visible properties of those components – The relationships among the components • Software architectural design represents the structure of the data and program components that are required to build a computer-based system • An architectural design model is transferable – It can be applied to the design of other systems – It represents a set of abstractions that enable software engineers to describe architecture in predictable ways
  • 3. Why Architecture? The architecture is not the operational software. Rather, it is a representation that enables a software engineer to: (1)analyze the effectiveness of the design in meeting its stated requirements, (2)reduce the risks associated with the construction of the software.
  • 4. Why is Architecture Important? • Representations of software architecture are an enabler for communication between all parties (stakeholders) interested in the development of a computer-based system.  Controls complexity  Gives Consistency  Reduces risk  Enables re-use
  • 5. Architectural Design Process • Basic Steps – Creation of the data design – Derivation of one or more representations of the architectural structure of the system – Analysis of alternative architectural styles to choose the one best suited to customer requirements and quality attributes – Elaboration of the architecture based on the selected architectural style • A database designer creates the data architecture for a system to represent the data components • A system architect selects an appropriate architectural style derived during system engineering and software requirements analysis
  • 6. Architecture attributes Performance Localise operations to minimise sub-system communication Security Use a layered architecture with critical assets in inner layers Safety Isolate safety-critical components Availability Include redundant components in the architecture Maintainability Use fine-grain, self-contained components
  • 7. Architecture design decisions Architecture design is a creative process, so the process is depend on the type of system being developed. A number of common decisions to design all process;  Is there a general application architecture that can be used?  How will the system be distributed?  Which style of construction is appropriate?  What approach will be used to design the system?  How will the system merge into modules?  Which control strategy should be used?  How will architectural design be reviewed?  How should architecture be documented? •
  • 8. Architecture models  Static model  Dynamic model  Interface model  Relationship model  Distribution model
  • 10. Architectural Styles Each style describes a system category that encompasses: (1)a set of components (a system, e.g., a database, computational modules) that perform a function required by (2)a set of connectors that enable “communication, coordination and cooperation” among components, (3)constraints that define how components can be integrated to form the system,  Data-centered architectures  Data flow architectures  Call and return architectures  Object-oriented architectures  Layered architectures
  • 12. Data Flow Style • Characterized by viewing the system as a series of transformations on successive pieces of input data • Data enters the system and then flows through the components one at a time until they are assigned to output or a data store • Batch sequential style – The processing steps are independent components – Each step runs to completion before the next step begins • Pipe-and-filter style – Emphasizes the incremental transformation of data by successive components –
  • 14. Call-and-Return Style • Has been the dominant architecture since the start of software development • Main program and subroutine style – Decomposes a program hierarchically into small pieces (i.e., modules) – Typically has a single thread of control that travels through various components in the hierarchy • Remote procedure call style – Consists of main program and subroutine style of system that is decomposed into parts that are resident on computers connected via a network – Incurs a finite communication time between subroutine call and response
  • 15. 25 Call-and-Return Style Main module Subroutine A Subroutine B Subroutine A-1 Subroutine A-2 Physical layer Data layer Network layer Transport layer Application layer Class W Class V Class Z Class X Class Y
  • 17. Analyzing Architectural Design 1.Collect scenarios. 2.Elicit requirements, constraints, and environment description. 3.Describe the architectural styles/patterns that have been chosen to address the scenarios and requirements:  Logical view  process view  Implementation view  Deployment view