SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Architectural design
Made by:
Mohamed Elhawy 19135002
Objectives :
The objective of this chapter is to introduce the concepts of software
architecture and architectural design.
Contents :
 Architectural design decisions
 Architectural views
 Architectural patterns
You can design software architectures at two
levels of abstraction :
 Architecture in the small
 Architecture in the large
Architecture in the small :
Is concerned with the architecture of individual programs. At this
level, we are concerned with the way that an individual program
is decomposed into components.
Architecture in the large:
Is concerned with the architecture of complex enterprise
systems that include other systems, programs, and program
components. These enterprise systems are distributed over
different computers, which may be owned and managed by
different companies.
Three advantages of explicitly designing and
documenting software architecture:
 Stakeholder communication
 System analysis Making the system architecture
explicit
 Large-scale reuse
Stakeholder communication:
The architecture is a high-level presentation of the system that
may be used as a focus for discussion by a range of different
stakeholders.
System analysis Making the system
architecture explicit:
At an early stage in the system development requires some
analysis. Architectural design decisions have a profound effect
on whether or not the system can meet critical requirements
such as performance, reliability, and maintainability.
Large-scale reuse:
Reuse A model of a system architecture is a compact,
manageable description of how a system is organized and how
the components interoperate. The system architecture is often
the same for systems with similar requirements and so can
support large-scale software reuse.
System architectures are often modeled using simple block diagrams,
Each box in the diagram represents a component. Boxes within boxes
indicate that the component has been decomposed to sub-components.
Arrows mean that data and or control signals are passed from component
to component in the direction of the arrows.
there are two ways in which an architectural
model of a program is used:
 As a way of facilitating discussion about the system
design
 As a way of documenting an architecture that has
been designed
As a way of facilitating discussion about the
system design:
A high-level architectural view of a system is useful for
communication with system stakeholders and project planning
because it is not cluttered with detail. Stakeholders can relate to
it and understand an abstract view of the system. They can then
discuss the system as a whole without being confused by detail.
The architectural model identifies the key components that are to
be developed so managers can start assigning people to plan
As a way of documenting an architecture that
has been designed:
The aim here is to produce a complete system model that shows
the different components in a system, their interfaces, and their
connections. The argument for this is that such a detailed
architectural description makes it easier to understand and
evolve the system.
Architectural design decisions
 the type of system being developed
 the background and experience of the system
architect
 the specific requirements for the system
Architectural design is a creative process, the process
depend on:
The particular architectural style and structure
that you choose for a system should depend
on the non-functional system requirements:
 Performance
 Security
 Safety
 Availability
 Maintainability
Performance:
If performance is a critical requirement, the architecture should be designed
to localize critical operations within a small number of components, with
these components all deployed on the same computer rather than
distributed across the network. This may mean using a few relatively large
components rather than small, fine-grain components, which reduces the
number of component communications. You may also consider run-time
system organizations that allow the system to be replicated and executed
on different processors.
Security:
If security is a critical requirement, a layered structure for the architecture
should be used, with the most critical assets protected in the innermost
layers,
with a high level of security validation applied to these layer
Safety:
If safety is a critical requirement, the architecture should be designed so
that safety-related operations are all located in either a single component or
in a
small number of components. This reduces the costs and problems of
safety validation and makes it possible to provide related protection
systems that can
safely shut down the system in the event of failure.
Availability:
If availability is a critical requirement, the architecture should be
designed to include redundant components so that it is possible to replace
and
update components without stopping the system.
Maintainability:
If maintainability is a critical requirement, the system architecture should be
designed using fine-grain, self-contained components that may readily be
changed. Producers of data should be separated from consumers and
shared data structures should be avoided.
Architectural views
It is impossible to represent all relevant information about a system’s
architecture in a single architectural model, as each model only shows one
view or perspective of the system. It might show how a system is
decomposed into modules, how the run-time processes interact, or the
different ways in which system components are distributed across a network.
Four fundamental architectural views:
 Logical view
 Process view
 Development view
 Physical view
Logical view:
which shows the key abstractions in the system as objects or object
classes. It should be possible to relate the system requirements to
entities in this logical view.
Process view:
which shows how, at run-time, the system is composed of
interacting
processes. This view is useful for making judgments about
nonfunctional
system characteristics such as performance and availability.
Development view:
which shows how the software is decomposed for development,
that is, it shows the breakdown of the software into components that
are
implemented by a single developer or development team. This view
is useful for software managers and programmers.
Physical view:
which shows the system hardware and how software components
are distributed across the processors in the system. This view is
useful for
systems engineers planning a system deployment.
Architectural patterns
You can think of an architectural pattern as a stylized, abstract description of
good
practice, which has been tried and tested in different systems and
environments.
Well-known Model-View-Controller pattern. This pattern is the basis of
interaction management in many web-based systems.
Some selected examples of patterns that are
widely used and which capture good
architectural design principles:
 Model-View-Controller (MVC) architecture
 Layered architecture
Model-View-Controller (MVC) architecture:
Layered architecture:

Weitere ähnliche Inhalte

Ähnlich wie chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx

Software Architecture and Design
Software Architecture and DesignSoftware Architecture and Design
Software Architecture and DesignRa'Fat Al-Msie'deen
 
Ch6 archtchure design in software en.pptx
Ch6 archtchure design in software en.pptxCh6 archtchure design in software en.pptx
Ch6 archtchure design in software en.pptxubaidullah75790
 
Architectural Design.pptx
Architectural Design.pptxArchitectural Design.pptx
Architectural Design.pptxssuser8c0d24
 
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvfUNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvfputtipavan23022023
 
Architectural Design
Architectural DesignArchitectural Design
Architectural DesignJay Thakkar
 
Software Engineering-Unit 4 "Architectural Design" by Adi.pdf
Software Engineering-Unit 4 "Architectural Design" by Adi.pdfSoftware Engineering-Unit 4 "Architectural Design" by Adi.pdf
Software Engineering-Unit 4 "Architectural Design" by Adi.pdfProf. Dr. K. Adisesha
 
Lecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docLecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docesrabilgic2
 
Software_Archi-1.ppt
Software_Archi-1.pptSoftware_Archi-1.ppt
Software_Archi-1.pptFaizaZulkifal
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part iBisrat Girma
 
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 design
Architectural designArchitectural design
Architectural designHuda Alameen
 
Software architecture
Software architectureSoftware architecture
Software architecturenazn
 
Software Designing - Software Engineering
Software Designing - Software EngineeringSoftware Designing - Software Engineering
Software Designing - Software EngineeringPurvik Rana
 

Ähnlich wie chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx (20)

Software Architecture and Design
Software Architecture and DesignSoftware Architecture and Design
Software Architecture and Design
 
Ch6 archtchure design in software en.pptx
Ch6 archtchure design in software en.pptxCh6 archtchure design in software en.pptx
Ch6 archtchure design in software en.pptx
 
Architectural Design.pptx
Architectural Design.pptxArchitectural Design.pptx
Architectural Design.pptx
 
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvfUNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
UNIT3 PART2.pptx dhfdifhdsfvgudf dhfbdhbffdvf
 
Sda 2
Sda   2Sda   2
Sda 2
 
Architectural Design
Architectural DesignArchitectural Design
Architectural Design
 
Architectural design of software
Architectural  design of softwareArchitectural  design of software
Architectural design of software
 
Software Engineering-Unit 4 "Architectural Design" by Adi.pdf
Software Engineering-Unit 4 "Architectural Design" by Adi.pdfSoftware Engineering-Unit 4 "Architectural Design" by Adi.pdf
Software Engineering-Unit 4 "Architectural Design" by Adi.pdf
 
Lecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docLecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.doc
 
Software_Archi-1.ppt
Software_Archi-1.pptSoftware_Archi-1.ppt
Software_Archi-1.ppt
 
UNIT 3 SE.pptx
UNIT 3 SE.pptxUNIT 3 SE.pptx
UNIT 3 SE.pptx
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part i
 
Software design
Software designSoftware design
Software design
 
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 design
Architectural designArchitectural design
Architectural design
 
Se lec6
Se lec6Se lec6
Se lec6
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Chapter1
Chapter1Chapter1
Chapter1
 
Software Designing - Software Engineering
Software Designing - Software EngineeringSoftware Designing - Software Engineering
Software Designing - Software Engineering
 
software architecture
software architecturesoftware architecture
software architecture
 

Kürzlich hochgeladen

Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendArshad QA
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 

Kürzlich hochgeladen (20)

Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Test Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and BackendTest Automation Strategy for Frontend and Backend
Test Automation Strategy for Frontend and Backend
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 

chapter-6-Software_Engineering_P1_MohamedElhawy_19135002.pptx

  • 2. Objectives : The objective of this chapter is to introduce the concepts of software architecture and architectural design.
  • 3. Contents :  Architectural design decisions  Architectural views  Architectural patterns
  • 4. You can design software architectures at two levels of abstraction :  Architecture in the small  Architecture in the large
  • 5. Architecture in the small : Is concerned with the architecture of individual programs. At this level, we are concerned with the way that an individual program is decomposed into components.
  • 6. Architecture in the large: Is concerned with the architecture of complex enterprise systems that include other systems, programs, and program components. These enterprise systems are distributed over different computers, which may be owned and managed by different companies.
  • 7. Three advantages of explicitly designing and documenting software architecture:  Stakeholder communication  System analysis Making the system architecture explicit  Large-scale reuse
  • 8. Stakeholder communication: The architecture is a high-level presentation of the system that may be used as a focus for discussion by a range of different stakeholders.
  • 9. System analysis Making the system architecture explicit: At an early stage in the system development requires some analysis. Architectural design decisions have a profound effect on whether or not the system can meet critical requirements such as performance, reliability, and maintainability.
  • 10. Large-scale reuse: Reuse A model of a system architecture is a compact, manageable description of how a system is organized and how the components interoperate. The system architecture is often the same for systems with similar requirements and so can support large-scale software reuse.
  • 11. System architectures are often modeled using simple block diagrams, Each box in the diagram represents a component. Boxes within boxes indicate that the component has been decomposed to sub-components. Arrows mean that data and or control signals are passed from component to component in the direction of the arrows.
  • 12. there are two ways in which an architectural model of a program is used:  As a way of facilitating discussion about the system design  As a way of documenting an architecture that has been designed
  • 13. As a way of facilitating discussion about the system design: A high-level architectural view of a system is useful for communication with system stakeholders and project planning because it is not cluttered with detail. Stakeholders can relate to it and understand an abstract view of the system. They can then discuss the system as a whole without being confused by detail. The architectural model identifies the key components that are to be developed so managers can start assigning people to plan
  • 14. As a way of documenting an architecture that has been designed: The aim here is to produce a complete system model that shows the different components in a system, their interfaces, and their connections. The argument for this is that such a detailed architectural description makes it easier to understand and evolve the system.
  • 15. Architectural design decisions  the type of system being developed  the background and experience of the system architect  the specific requirements for the system Architectural design is a creative process, the process depend on:
  • 16. The particular architectural style and structure that you choose for a system should depend on the non-functional system requirements:  Performance  Security  Safety  Availability  Maintainability
  • 17. Performance: If performance is a critical requirement, the architecture should be designed to localize critical operations within a small number of components, with these components all deployed on the same computer rather than distributed across the network. This may mean using a few relatively large components rather than small, fine-grain components, which reduces the number of component communications. You may also consider run-time system organizations that allow the system to be replicated and executed on different processors.
  • 18. Security: If security is a critical requirement, a layered structure for the architecture should be used, with the most critical assets protected in the innermost layers, with a high level of security validation applied to these layer
  • 19. Safety: If safety is a critical requirement, the architecture should be designed so that safety-related operations are all located in either a single component or in a small number of components. This reduces the costs and problems of safety validation and makes it possible to provide related protection systems that can safely shut down the system in the event of failure.
  • 20. Availability: If availability is a critical requirement, the architecture should be designed to include redundant components so that it is possible to replace and update components without stopping the system.
  • 21. Maintainability: If maintainability is a critical requirement, the system architecture should be designed using fine-grain, self-contained components that may readily be changed. Producers of data should be separated from consumers and shared data structures should be avoided.
  • 22. Architectural views It is impossible to represent all relevant information about a system’s architecture in a single architectural model, as each model only shows one view or perspective of the system. It might show how a system is decomposed into modules, how the run-time processes interact, or the different ways in which system components are distributed across a network.
  • 23. Four fundamental architectural views:  Logical view  Process view  Development view  Physical view
  • 24. Logical view: which shows the key abstractions in the system as objects or object classes. It should be possible to relate the system requirements to entities in this logical view.
  • 25. Process view: which shows how, at run-time, the system is composed of interacting processes. This view is useful for making judgments about nonfunctional system characteristics such as performance and availability.
  • 26. Development view: which shows how the software is decomposed for development, that is, it shows the breakdown of the software into components that are implemented by a single developer or development team. This view is useful for software managers and programmers.
  • 27. Physical view: which shows the system hardware and how software components are distributed across the processors in the system. This view is useful for systems engineers planning a system deployment.
  • 28. Architectural patterns You can think of an architectural pattern as a stylized, abstract description of good practice, which has been tried and tested in different systems and environments. Well-known Model-View-Controller pattern. This pattern is the basis of interaction management in many web-based systems.
  • 29. Some selected examples of patterns that are widely used and which capture good architectural design principles:  Model-View-Controller (MVC) architecture  Layered architecture