SlideShare a Scribd company logo

Software architecture categories and views

John Chou
John Chou

This is note of the topic which is about Software Design Architecture and Patterns for Embedded Systems, the chapter 4 of 《software engineering for embedded systems methods practical techniques and applications》.

1 of 20
Download to read offline
Software Architecture Categories and Views
John Chou
luckyjoou@gmail.com
Software Architecture Categories and Views
• Architecture is the collection of organization and optimization design decisions
• Different architectural decisions can result in significantly different performance properties
• Define categories due to the complexity and breadth of a system architecture
1
Software Architecture Categories and Views
• Primary architectural views
• Almost all embedded systems must define some optimizations within primary view of concern
• These views have a profound impact on the overall structure, behavior, or performance of the system
• Secondary viewpoints
• Might be important, including:
• data management
• exception handling and reporting
• system maintenance support
2
Subsystem and Component View
• Subsystem and component view
• This view identifies the largest scale organizational units of the system and details their
responsibilities and allocation of services and data and characterizes their interfaces, both
offered and required.
3
Subsystem and Component View
• Example: FatFs Filesystem
4
Concurrency and Resource View
• Concurrency and resource view
• Concurrency refers to the simultaneous execution of concurrency units
• Each concurrency unit contains a sequence of action executions with a known execution
sequence
• But the order of executions of actions between concurrency units is generally unknown
• True concurrency: concurrency units can actually execute in parallel
pseudoconcurrency: share a common computational resource
• Task- or context-switching is an important consideration in embedded systems
• concurrency units interact:
• directly way: e.g., with asynchronous events or function calls
• Indirectly way: e.g., through sharing data or other resources
5

Recommended

Software engineering 17 architectural design
Software engineering 17 architectural designSoftware engineering 17 architectural design
Software engineering 17 architectural designVaibhav Khanna
 
Architectural Design
Architectural DesignArchitectural Design
Architectural DesignJay Thakkar
 
Software architecture
Software architectureSoftware architecture
Software architectureUri Meirav
 
Essential Software Architecture - Chapter 1 Understanding Software Architectu...
Essential Software Architecture - Chapter 1 Understanding Software Architectu...Essential Software Architecture - Chapter 1 Understanding Software Architectu...
Essential Software Architecture - Chapter 1 Understanding Software Architectu...John Ortiz
 
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 styles and patterns
Architectural styles and patternsArchitectural styles and patterns
Architectural styles and patternsHimanshu
 
Layered architecture style
Layered architecture styleLayered architecture style
Layered architecture styleBegench Suhanov
 

More Related Content

What's hot

Different approaches to software design
Different approaches to software designDifferent approaches to software design
Different approaches to software designSandeep Kumar Nayak
 
Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Sudarshan Dhondaley
 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)Ayesha Bhatti
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software EngineeringKourosh Sajjadi
 
Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Sudarshan Dhondaley
 
Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...
Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...
Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...Dhivyaa C.R
 
PhD defense: David Ameller
PhD defense: David AmellerPhD defense: David Ameller
PhD defense: David AmellerDavid Ameller
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9Ian Sommerville
 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and EvaluationDhivyaa C.R
 
Context model
Context modelContext model
Context modelUbaid423
 
Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architectureHimanshu
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and viewsDr Reeja S R
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7koolkampus
 

What's hot (20)

Se lec5
Se lec5Se lec5
Se lec5
 
Different approaches to software design
Different approaches to software designDifferent approaches to software design
Different approaches to software design
 
Ch 6
Ch 6Ch 6
Ch 6
 
Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5
 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software Engineering
 
Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2
 
Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...
Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...
Software architecture by Dr.C.R.Dhivyaa, Assistant Professor,Kongu Engineerin...
 
Se lec6
Se lec6Se lec6
Se lec6
 
Unit ii
Unit ii  Unit ii
Unit ii
 
PhD defense: David Ameller
PhD defense: David AmellerPhD defense: David Ameller
PhD defense: David Ameller
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9
 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and Evaluation
 
8 system models (1)
8 system models (1)8 system models (1)
8 system models (1)
 
Context model
Context modelContext model
Context model
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architecture
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and views
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Lecture 6 se
Lecture 6 seLecture 6 se
Lecture 6 se
 

Viewers also liked

європейське відродження
європейське відродженняєвропейське відродження
європейське відродженняlarisa1975
 
Chữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinh
Chữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinhChữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinh
Chữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinhherma838
 
перша свытова выйна 5 клас
перша свытова выйна 5 класперша свытова выйна 5 клас
перша свытова выйна 5 класlarisa1975
 
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. РязаньОднокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. РязаньRight Decision Real Estate
 
支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境John Chou
 
Sales order processing sec a_grp1
Sales order processing sec a_grp1Sales order processing sec a_grp1
Sales order processing sec a_grp1Abhijeet Dash
 
Tool Kit: Business Analysis product (artefact) checklist
Tool Kit: Business Analysis product (artefact) checklistTool Kit: Business Analysis product (artefact) checklist
Tool Kit: Business Analysis product (artefact) checklistdesigner DATA
 
THE ROLE OF TRANSPORTATION IN LOGISTICS CHAIN
THE ROLE OF TRANSPORTATION IN LOGISTICS CHAINTHE ROLE OF TRANSPORTATION IN LOGISTICS CHAIN
THE ROLE OF TRANSPORTATION IN LOGISTICS CHAINMartha Nakapipi
 
SAP Order To Cash Cycle
SAP Order To Cash CycleSAP Order To Cash Cycle
SAP Order To Cash CycleMohamed Talaat
 
The Sales Order Process in SAP ERP
The Sales Order Process in SAP ERPThe Sales Order Process in SAP ERP
The Sales Order Process in SAP ERPTom Matys
 

Viewers also liked (20)

європейське відродження
європейське відродженняєвропейське відродження
європейське відродження
 
Chữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinh
Chữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinhChữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinh
Chữa trị chứng sa sút trí tuệ, Alzheimer, thoái hóa thần kinh
 
Gülce Zorlar
Gülce ZorlarGülce Zorlar
Gülce Zorlar
 
перша свытова выйна 5 клас
перша свытова выйна 5 класперша свытова выйна 5 клас
перша свытова выйна 5 клас
 
Gülce Zorlar
Gülce ZorlarGülce Zorlar
Gülce Zorlar
 
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. РязаньОднокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
 
крути
крутикрути
крути
 
支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境支援DSL的嵌入式圖形操作環境
支援DSL的嵌入式圖形操作環境
 
Erp functions
Erp functions Erp functions
Erp functions
 
Sales order processing sec a_grp1
Sales order processing sec a_grp1Sales order processing sec a_grp1
Sales order processing sec a_grp1
 
Presentacion provincia 2
Presentacion provincia 2Presentacion provincia 2
Presentacion provincia 2
 
Tool Kit: Business Analysis product (artefact) checklist
Tool Kit: Business Analysis product (artefact) checklistTool Kit: Business Analysis product (artefact) checklist
Tool Kit: Business Analysis product (artefact) checklist
 
Togaf 9 template functional decomposition diagram
Togaf 9 template functional decomposition diagramTogaf 9 template functional decomposition diagram
Togaf 9 template functional decomposition diagram
 
Order to cash
Order to cashOrder to cash
Order to cash
 
30*60*90 Day Planning
30*60*90 Day Planning 30*60*90 Day Planning
30*60*90 Day Planning
 
THE ROLE OF TRANSPORTATION IN LOGISTICS CHAIN
THE ROLE OF TRANSPORTATION IN LOGISTICS CHAINTHE ROLE OF TRANSPORTATION IN LOGISTICS CHAIN
THE ROLE OF TRANSPORTATION IN LOGISTICS CHAIN
 
SAP Order To Cash Cycle
SAP Order To Cash CycleSAP Order To Cash Cycle
SAP Order To Cash Cycle
 
Pengaruh Pendidikan Terhadap Jiwa Keagamaan
Pengaruh Pendidikan Terhadap Jiwa KeagamaanPengaruh Pendidikan Terhadap Jiwa Keagamaan
Pengaruh Pendidikan Terhadap Jiwa Keagamaan
 
Order to Cash - The #1 Business Process to Know!
Order to Cash - The #1 Business Process to Know!Order to Cash - The #1 Business Process to Know!
Order to Cash - The #1 Business Process to Know!
 
The Sales Order Process in SAP ERP
The Sales Order Process in SAP ERPThe Sales Order Process in SAP ERP
The Sales Order Process in SAP ERP
 

Similar to Software architecture categories and views

Architecture Design in Software Engineering
Architecture Design in Software EngineeringArchitecture Design in Software Engineering
Architecture Design in Software Engineeringcricket2ime
 
4+1 View Model of Software Architecture
4+1 View Model of Software Architecture4+1 View Model of Software Architecture
4+1 View Model of Software Architecturebashcode
 
10 architectural design
10 architectural design10 architectural design
10 architectural designAyesha Bhatti
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptRushikeshChikane1
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptRushikeshChikane2
 
Software Architecture
Software ArchitectureSoftware Architecture
Software ArchitectureAhmed Misbah
 
Architectural design1
Architectural design1Architectural design1
Architectural design1Zahid Hussain
 
Architectural design1
Architectural design1Architectural design1
Architectural design1Zahid Hussain
 
chapter-1 Software Design.pptx
chapter-1 Software Design.pptxchapter-1 Software Design.pptx
chapter-1 Software Design.pptxharoon451422
 
Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-designAhmad sohail Kakar
 
MOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdfMOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdfTigabu Yaya
 
architectural design
 architectural design architectural design
architectural designPreeti Mishra
 
Software architecture and software design
Software architecture and software designSoftware architecture and software design
Software architecture and software designMr. Swapnil G. Thaware
 
Architectural design
Architectural designArchitectural design
Architectural designKiranStha
 
Architecture of Object Oriented Software Engineering
Architecture of Object Oriented Software EngineeringArchitecture of Object Oriented Software Engineering
Architecture of Object Oriented Software EngineeringSandesh Jonchhe
 

Similar to Software architecture categories and views (20)

Architecture Design in Software Engineering
Architecture Design in Software EngineeringArchitecture Design in Software Engineering
Architecture Design in Software Engineering
 
4+1 View Model of Software Architecture
4+1 View Model of Software Architecture4+1 View Model of Software Architecture
4+1 View Model of Software Architecture
 
10 architectural design
10 architectural design10 architectural design
10 architectural design
 
Architectural design
Architectural designArchitectural design
Architectural design
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.ppt
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.ppt
 
Software Design - SDLC Model
Software Design - SDLC ModelSoftware Design - SDLC Model
Software Design - SDLC Model
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
 
chapter-1 Software Design.pptx
chapter-1 Software Design.pptxchapter-1 Software Design.pptx
chapter-1 Software Design.pptx
 
Ch 11-component-level-design
Ch 11-component-level-designCh 11-component-level-design
Ch 11-component-level-design
 
Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-design
 
MOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdfMOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdf
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
architectural design
 architectural design architectural design
architectural design
 
Software architecture and software design
Software architecture and software designSoftware architecture and software design
Software architecture and software design
 
Software Design Concepts
Software Design ConceptsSoftware Design Concepts
Software Design Concepts
 
Architectural design
Architectural designArchitectural design
Architectural design
 
Architecture of Object Oriented Software Engineering
Architecture of Object Oriented Software EngineeringArchitecture of Object Oriented Software Engineering
Architecture of Object Oriented Software Engineering
 

Recently uploaded

Open Source vs Closed Source LLMs. Pros and Cons
Open Source vs Closed Source LLMs. Pros and ConsOpen Source vs Closed Source LLMs. Pros and Cons
Open Source vs Closed Source LLMs. Pros and ConsSprings
 
Building Research Applications with Globus PaaS
Building Research Applications with Globus PaaSBuilding Research Applications with Globus PaaS
Building Research Applications with Globus PaaSGlobus
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureHironori Washizaki
 
Implementing Docker Containers with Windows Server 2019
Implementing Docker Containers with Windows Server 2019Implementing Docker Containers with Windows Server 2019
Implementing Docker Containers with Windows Server 2019VICTOR MAESTRE RAMIREZ
 
Role of DevOps in SaaS product Development.pdf.pptx
Role of DevOps in SaaS product Development.pdf.pptxRole of DevOps in SaaS product Development.pdf.pptx
Role of DevOps in SaaS product Development.pdf.pptxMindInventory
 
Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...
Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...
Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...Alluxio, Inc.
 
How AI is preventing account fraud at web scale
How AI is preventing account fraud at web scaleHow AI is preventing account fraud at web scale
How AI is preventing account fraud at web scaleAmir Moghimi
 
From Software Development To Branding through Digital Marketing, IT Services
From Software Development To Branding through Digital Marketing, IT ServicesFrom Software Development To Branding through Digital Marketing, IT Services
From Software Development To Branding through Digital Marketing, IT ServicesAnisha Agarwal
 
Cybersecurity Measures For Remote Workers.pdf
Cybersecurity Measures For Remote Workers.pdfCybersecurity Measures For Remote Workers.pdf
Cybersecurity Measures For Remote Workers.pdfCIOWomenMagazine
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flinkconfluent
 
An Introduction to Globus for Researchers
An Introduction to Globus for ResearchersAn Introduction to Globus for Researchers
An Introduction to Globus for ResearchersGlobus
 
Managing multicast/igmp stream on Docker
Managing multicast/igmp stream on DockerManaging multicast/igmp stream on Docker
Managing multicast/igmp stream on DockerThierry Gayet
 
Advanced Globus System Administration Topics
Advanced Globus System Administration TopicsAdvanced Globus System Administration Topics
Advanced Globus System Administration TopicsGlobus
 
Passbolt Introduction and Usage for secret managment
Passbolt Introduction and Usage for secret managmentPassbolt Introduction and Usage for secret managment
Passbolt Introduction and Usage for secret managmentThierry Gayet
 
Design pattern talk by Kaya Weers - 2024
Design pattern talk by Kaya Weers - 2024Design pattern talk by Kaya Weers - 2024
Design pattern talk by Kaya Weers - 2024Kaya Weers
 
Introduction to Research Automation with Globus
Introduction to Research Automation with GlobusIntroduction to Research Automation with Globus
Introduction to Research Automation with GlobusGlobus
 
Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227Fermin Galan
 
انتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزار
انتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزارانتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزار
انتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزارsohilww
 
Machine Learning Basics for Dummies (no math!)
Machine Learning Basics for Dummies (no math!)Machine Learning Basics for Dummies (no math!)
Machine Learning Basics for Dummies (no math!)Dmitry Zinoviev
 

Recently uploaded (20)

Open Source vs Closed Source LLMs. Pros and Cons
Open Source vs Closed Source LLMs. Pros and ConsOpen Source vs Closed Source LLMs. Pros and Cons
Open Source vs Closed Source LLMs. Pros and Cons
 
Building Research Applications with Globus PaaS
Building Research Applications with Globus PaaSBuilding Research Applications with Globus PaaS
Building Research Applications with Globus PaaS
 
Joseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about ArchitectureJoseph Yoder : Being Agile about Architecture
Joseph Yoder : Being Agile about Architecture
 
Implementing Docker Containers with Windows Server 2019
Implementing Docker Containers with Windows Server 2019Implementing Docker Containers with Windows Server 2019
Implementing Docker Containers with Windows Server 2019
 
2024 Trends Transforming Enterprise Resource Planning
2024 Trends Transforming Enterprise Resource Planning2024 Trends Transforming Enterprise Resource Planning
2024 Trends Transforming Enterprise Resource Planning
 
Role of DevOps in SaaS product Development.pdf.pptx
Role of DevOps in SaaS product Development.pdf.pptxRole of DevOps in SaaS product Development.pdf.pptx
Role of DevOps in SaaS product Development.pdf.pptx
 
Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...
Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...
Alluxio Monthly Webinar | Why a Multi-Cloud Strategy Matters for Your AI Plat...
 
How AI is preventing account fraud at web scale
How AI is preventing account fraud at web scaleHow AI is preventing account fraud at web scale
How AI is preventing account fraud at web scale
 
From Software Development To Branding through Digital Marketing, IT Services
From Software Development To Branding through Digital Marketing, IT ServicesFrom Software Development To Branding through Digital Marketing, IT Services
From Software Development To Branding through Digital Marketing, IT Services
 
Cybersecurity Measures For Remote Workers.pdf
Cybersecurity Measures For Remote Workers.pdfCybersecurity Measures For Remote Workers.pdf
Cybersecurity Measures For Remote Workers.pdf
 
Workshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con FlinkWorkshop híbrido: Stream Processing con Flink
Workshop híbrido: Stream Processing con Flink
 
An Introduction to Globus for Researchers
An Introduction to Globus for ResearchersAn Introduction to Globus for Researchers
An Introduction to Globus for Researchers
 
Managing multicast/igmp stream on Docker
Managing multicast/igmp stream on DockerManaging multicast/igmp stream on Docker
Managing multicast/igmp stream on Docker
 
Advanced Globus System Administration Topics
Advanced Globus System Administration TopicsAdvanced Globus System Administration Topics
Advanced Globus System Administration Topics
 
Passbolt Introduction and Usage for secret managment
Passbolt Introduction and Usage for secret managmentPassbolt Introduction and Usage for secret managment
Passbolt Introduction and Usage for secret managment
 
Design pattern talk by Kaya Weers - 2024
Design pattern talk by Kaya Weers - 2024Design pattern talk by Kaya Weers - 2024
Design pattern talk by Kaya Weers - 2024
 
Introduction to Research Automation with Globus
Introduction to Research Automation with GlobusIntroduction to Research Automation with Globus
Introduction to Research Automation with Globus
 
Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227Orion Context Broker introduction 20240227
Orion Context Broker introduction 20240227
 
انتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزار
انتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزارانتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزار
انتزاع و هزینه - انتزاع و تاثیرات آن در توسعه و نگهداری نرم‌افزار
 
Machine Learning Basics for Dummies (no math!)
Machine Learning Basics for Dummies (no math!)Machine Learning Basics for Dummies (no math!)
Machine Learning Basics for Dummies (no math!)
 

Software architecture categories and views

  • 1. Software Architecture Categories and Views John Chou luckyjoou@gmail.com
  • 2. Software Architecture Categories and Views • Architecture is the collection of organization and optimization design decisions • Different architectural decisions can result in significantly different performance properties • Define categories due to the complexity and breadth of a system architecture 1
  • 3. Software Architecture Categories and Views • Primary architectural views • Almost all embedded systems must define some optimizations within primary view of concern • These views have a profound impact on the overall structure, behavior, or performance of the system • Secondary viewpoints • Might be important, including: • data management • exception handling and reporting • system maintenance support 2
  • 4. Subsystem and Component View • Subsystem and component view • This view identifies the largest scale organizational units of the system and details their responsibilities and allocation of services and data and characterizes their interfaces, both offered and required. 3
  • 5. Subsystem and Component View • Example: FatFs Filesystem 4
  • 6. Concurrency and Resource View • Concurrency and resource view • Concurrency refers to the simultaneous execution of concurrency units • Each concurrency unit contains a sequence of action executions with a known execution sequence • But the order of executions of actions between concurrency units is generally unknown • True concurrency: concurrency units can actually execute in parallel pseudoconcurrency: share a common computational resource • Task- or context-switching is an important consideration in embedded systems • concurrency units interact: • directly way: e.g., with asynchronous events or function calls • Indirectly way: e.g., through sharing data or other resources 5
  • 7. Concurrency and Resource View • The primary areas of design concern for the concurrency and resource architecture: • scheduling defines when tasks run, both in isolation and with respect to each • “thread-safe” sharing of resources defines the means by which resources may be used by multiple concurrency units • deadlock avoidance specifies how deadlock is avoided 6
  • 8. Concurrency and Resource View • In UML: • concurrency units - «active» classes • running tasks - instances • task diagram - A class diagram that presents the concurrency architecture 7
  • 10. Deployment View • Why deployment view is important: • it is important to understand the allocation of requirements and functionality to the elements of the different disciplines • it is crucial to have well-defined interfaces between adjacent disciplines • UML defines a kind of diagram called a “deployment diagram”——abandoned by author Instead rely on block diagrams 9
  • 13. Distribution View • One of the challenges of modern-day embedded systems: • getting the software distributed across different address spaces to communicate and collaborate effectively and efficiently • Thinking in this way is called distribution view • how the software in different address spaces communicates: • the sharing of data and control messages • initiation and termination of communications • how quality of service for the communication is managed • network data formats • the use of shared memory, sockets, middleware • communication protocols 1
  • 17. Dependability View • Three primary aspects: • Safety - “freedom from harm” • Reliability • Security - “freedom from outside influence, intrusion, or theft” 1
  • 19. Dependability View 1 • Classes: • Thermometer, FanSpeedSensor • Thermostat • CheckTemperature • ComputeHeatFlow • ComputeReqHeatFlow • HeatFlowLimits
  • 20. Software Architecture Categories and Views 1 • Reference: • Robert Oshana & Mark Kraeling (2013). Software engineering for embedded systems methods practical techniques and applications(1st ed.). Newnes. • FatFs - Generic FAT File System Module. <http://elm-chan.org/fsw/ff/00index_e.html>

Editor's Notes

  1. About harmony process: http://www.embedded.com/design/prototyping-and-development/4007239/Doing-real-time-UML-systems-design-using-the-Harmony-process-Part-1 http://download-na.telelogic.com/download/ugcagenda/Tue_Harmony_ESW_AnAgileDevlopment_JeffVodov.pdf