SlideShare a Scribd company logo
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
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
Concurrency and Resource View
• In UML:
• concurrency units - «active» classes
• running tasks - instances
• task diagram - A class diagram that
presents the concurrency architecture
7
Concurrency and Resource View
8
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
Deployment View
1
• In UML
Deployment View
1
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
Distribution View
1
Distribution View
1
Source from: here
Distribution View
1
Source from: here
Dependability View
• Three primary aspects:
• Safety - “freedom from harm”
• Reliability
• Security - “freedom from outside influence, intrusion, or theft”
1
Dependability View
1
Dependability View
1
• Classes:
• Thermometer,
FanSpeedSensor
• Thermostat
• CheckTemperature
• ComputeHeatFlow
• ComputeReqHeatFlow
• HeatFlowLimits
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>
Ad

More Related Content

What's hot (20)

Se lec5
Se lec5Se lec5
Se lec5
Huda Alameen
 
Different approaches to software design
Different approaches to software designDifferent approaches to software design
Different approaches to software design
Sandeep Kumar Nayak
 
Ch 6
Ch 6Ch 6
Ch 6
Mohammed Romi
 
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
Sudarshan 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 Engineering
Kourosh 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–2
Sudarshan 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
 
Se lec6
Se lec6Se lec6
Se lec6
Huda Alameen
 
Unit ii
Unit ii  Unit ii
Unit ii
Sangeetha Rangarajan
 
PhD defense: David Ameller
PhD defense: David AmellerPhD defense: David Ameller
PhD defense: David Ameller
David Ameller
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9
Ian Sommerville
 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and Evaluation
Dhivyaa C.R
 
8 system models (1)
8 system models (1)8 system models (1)
8 system models (1)
Ayesha Bhatti
 
Context model
Context modelContext model
Context model
Ubaid423
 
Software engineering
Software engineeringSoftware engineering
Software engineering
Muhammad Yasir
 
Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architecture
Himanshu
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and views
Dr 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 SE7
koolkampus
 
Lecture 6 se
Lecture 6 seLecture 6 se
Lecture 6 se
Tribhuvan University
 
Different approaches to software design
Different approaches to software designDifferent approaches to software design
Different approaches to software design
Sandeep 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 5
Sudarshan 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 Engineering
Kourosh 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–2
Sudarshan 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 Ameller
David Ameller
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9
Ian Sommerville
 
Unit v -Construction and Evaluation
Unit v -Construction and EvaluationUnit v -Construction and Evaluation
Unit v -Construction and Evaluation
Dhivyaa C.R
 
Context model
Context modelContext model
Context model
Ubaid423
 
Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architecture
Himanshu
 
Architectural structures and views
Architectural structures and viewsArchitectural structures and views
Architectural structures and views
Dr 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 SE7
koolkampus
 

Viewers also liked (19)

європейське відродження
європейське відродженняєвропейське відродження
європейське відродження
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 kinh
herma838
 
Gülce Zorlar
Gülce ZorlarGülce Zorlar
Gülce Zorlar
Gülce Zorlar
 
перша свытова выйна 5 клас
перша свытова выйна 5 класперша свытова выйна 5 клас
перша свытова выйна 5 клас
larisa1975
 
Gülce Zorlar
Gülce ZorlarGülce Zorlar
Gülce Zorlar
Gülce Zorlar
 
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. РязаньОднокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
Однокомнатная квартира в Жилом Комплексе Наш дом на ул. Шевченко д.№82 г. Рязань
Right Decision Real Estate
 
крути
крутикрути
крути
larisa1975
 
支援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_grp1
Abhijeet Dash
 
Presentacion provincia 2
Presentacion provincia 2Presentacion provincia 2
Presentacion provincia 2
CentroameriCaribe
 
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
designer DATA
 
Togaf 9 template functional decomposition diagram
Togaf 9 template functional decomposition diagramTogaf 9 template functional decomposition diagram
Togaf 9 template functional decomposition diagram
Sandeep Sharma IIMK Smart City,IoT,Bigdata,Cloud,BI,DW
 
Order to cash
Order to cashOrder to cash
Order to cash
Chetan Khanzode
 
30*60*90 Day Planning
30*60*90 Day Planning 30*60*90 Day Planning
30*60*90 Day Planning
Berith Ministries International
 
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
Martha Nakapipi
 
SAP Order To Cash Cycle
SAP Order To Cash CycleSAP Order To Cash Cycle
SAP Order To Cash Cycle
Mohamed Talaat
 
Pengaruh Pendidikan Terhadap Jiwa Keagamaan
Pengaruh Pendidikan Terhadap Jiwa KeagamaanPengaruh Pendidikan Terhadap Jiwa Keagamaan
Pengaruh Pendidikan Terhadap Jiwa Keagamaan
Universitas Islam Negeri Sultan Syarif Kasim Riau
 
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!
Global Business Solutions SME
 
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
Tom Matys
 
європейське відродження
європейське відродженняєвропейське відродження
європейське відродження
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 kinh
herma838
 
перша свытова выйна 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_grp1
Abhijeet 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) checklist
designer 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 CHAIN
Martha Nakapipi
 
SAP Order To Cash Cycle
SAP Order To Cash CycleSAP Order To Cash Cycle
SAP Order To Cash Cycle
Mohamed 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 ERP
Tom Matys
 
Ad

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
cricket2ime
 
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
bashcode
 
10 architectural design
10 architectural design10 architectural design
10 architectural design
Ayesha Bhatti
 
Architectural design
Architectural designArchitectural design
Architectural design
SHREEHARI WADAWADAGI
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.ppt
RushikeshChikane1
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.ppt
RushikeshChikane2
 
Software Design - SDLC Model
Software Design - SDLC ModelSoftware Design - SDLC Model
Software Design - SDLC Model
Amity University | FMS - DU | IMT | Stratford University | KKMI International Institute | AIMA | DTU
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
Ahmed Misbah
 
A Presentation on Architectual Design by Students of Engineering
A Presentation on Architectual Design by Students of EngineeringA Presentation on Architectual Design by Students of Engineering
A Presentation on Architectual Design by Students of Engineering
VisibleDrishya
 
VTU_SE_Module-4_b) Architectural Design.pptx
VTU_SE_Module-4_b) Architectural Design.pptxVTU_SE_Module-4_b) Architectural Design.pptx
VTU_SE_Module-4_b) Architectural Design.pptx
Veenask6
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
 
chapter-1 Software Design.pptx
chapter-1 Software Design.pptxchapter-1 Software Design.pptx
chapter-1 Software Design.pptx
haroon451422
 
Ch 11-component-level-design
Ch 11-component-level-designCh 11-component-level-design
Ch 11-component-level-design
SHREEHARI WADAWADAGI
 
Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-design
Ahmad sohail Kakar
 
Artifical selection for enhancment for people Use
Artifical selection for enhancment for people UseArtifical selection for enhancment for people Use
Artifical selection for enhancment for people Use
AssadLeo1
 
MOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdfMOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdf
Tigabu Yaya
 
Software architecture
Software architectureSoftware architecture
Software architecture
Sweta Kumari Barnwal
 
architectural design
 architectural design architectural design
architectural design
Preeti Mishra
 
Software architecture and software design
Software architecture and software designSoftware architecture and software design
Software architecture and software design
Mr. Swapnil G. Thaware
 
Architecture Design in Software Engineering
Architecture Design in Software EngineeringArchitecture Design in Software Engineering
Architecture Design in Software Engineering
cricket2ime
 
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
bashcode
 
10 architectural design
10 architectural design10 architectural design
10 architectural design
Ayesha Bhatti
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.ppt
RushikeshChikane1
 
Chapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.pptChapter 2_Software Architecture.ppt
Chapter 2_Software Architecture.ppt
RushikeshChikane2
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
Ahmed Misbah
 
A Presentation on Architectual Design by Students of Engineering
A Presentation on Architectual Design by Students of EngineeringA Presentation on Architectual Design by Students of Engineering
A Presentation on Architectual Design by Students of Engineering
VisibleDrishya
 
VTU_SE_Module-4_b) Architectural Design.pptx
VTU_SE_Module-4_b) Architectural Design.pptxVTU_SE_Module-4_b) Architectural Design.pptx
VTU_SE_Module-4_b) Architectural Design.pptx
Veenask6
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
 
chapter-1 Software Design.pptx
chapter-1 Software Design.pptxchapter-1 Software Design.pptx
chapter-1 Software Design.pptx
haroon451422
 
Se ii unit3-architectural-design
Se ii unit3-architectural-designSe ii unit3-architectural-design
Se ii unit3-architectural-design
Ahmad sohail Kakar
 
Artifical selection for enhancment for people Use
Artifical selection for enhancment for people UseArtifical selection for enhancment for people Use
Artifical selection for enhancment for people Use
AssadLeo1
 
MOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdfMOD_Architectural_Design_Chap6_Summary.pdf
MOD_Architectural_Design_Chap6_Summary.pdf
Tigabu Yaya
 
architectural design
 architectural design architectural design
architectural design
Preeti Mishra
 
Software architecture and software design
Software architecture and software designSoftware architecture and software design
Software architecture and software design
Mr. Swapnil G. Thaware
 
Ad

Recently uploaded (20)

TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
Tools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google CertificateTools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google Certificate
VICTOR MAESTRE RAMIREZ
 
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
Lionel Briand
 
Full Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest VersionFull Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest Version
jonesmichealj2
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
DVDFab Crack FREE Download Latest Version 2025
DVDFab Crack FREE Download Latest Version 2025DVDFab Crack FREE Download Latest Version 2025
DVDFab Crack FREE Download Latest Version 2025
younisnoman75
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
Apple Logic Pro X Crack FRESH Version 2025
Apple Logic Pro X Crack FRESH Version 2025Apple Logic Pro X Crack FRESH Version 2025
Apple Logic Pro X Crack FRESH Version 2025
fs4635986
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
Imma Valls Bernaus
 
Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
TestMigrationsInPy: A Dataset of Test Migrations from Unittest to Pytest (MSR...
Andre Hora
 
Tools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google CertificateTools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google Certificate
VICTOR MAESTRE RAMIREZ
 
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
Lionel Briand
 
Full Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest VersionFull Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest Version
jonesmichealj2
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025PDF Reader Pro Crack Latest Version FREE Download 2025
PDF Reader Pro Crack Latest Version FREE Download 2025
mu394968
 
How to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud PerformanceHow to Optimize Your AWS Environment for Improved Cloud Performance
How to Optimize Your AWS Environment for Improved Cloud Performance
ThousandEyes
 
DVDFab Crack FREE Download Latest Version 2025
DVDFab Crack FREE Download Latest Version 2025DVDFab Crack FREE Download Latest Version 2025
DVDFab Crack FREE Download Latest Version 2025
younisnoman75
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
Apple Logic Pro X Crack FRESH Version 2025
Apple Logic Pro X Crack FRESH Version 2025Apple Logic Pro X Crack FRESH Version 2025
Apple Logic Pro X Crack FRESH Version 2025
fs4635986
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
Imma Valls Bernaus
 
Kubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptxKubernetes_101_Zero_to_Platform_Engineer.pptx
Kubernetes_101_Zero_to_Platform_Engineer.pptx
CloudScouts
 

Software architecture categories and views

  • 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

  • #4: 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