SlideShare a Scribd company logo
1 of 31
Software Architecture Design
Dr. JUNAID AKRAM
Assistant Professor, Department Of Computer Science Comsats (Lahore)
By
1
Software Architecture
Architectural Design
 process for identifying the subsystems that make up a system
 defines framework for sub-system control and communication
2
The software architecture of a program or computing system is the structure of the system,
which comprise software components, the externally visible properties of those
components, and the relationships among them.
Architectural Design Process
 System structuring
 system decomposed into several subsystems
 Control modeling
 model of control relationships among system components is
established
 Modular decomposition
 identified subsystems decomposed into modules
3
Architectural Models
 Static structural model
shows major system components
 Dynamic process model
shows process structure of the system
 Interface model
defines subsystem interfaces
 Relationships model
data flow or control flow diagrams
4
Architectural Styles 5
 Data-centered architectures
Architectural Styles 6
 Data-flow architectures
Architectural Styles 7
 Layered architecture
2 Tired - Client-server architecture
 Distributed system model which shows how data and processing is distributed
across a range of components
 Set of stand-alone servers which provide specific services such as printing,
data management, etc.
 Set of clients which call on these services
 Network which allows clients to access servers
8
Film and picture library
Catalogue
server
Catalogue
Video
server
Film clip
files
Picture
server
Digitized
photographs
Hypertext
server
Hypertext
web
Client 1 Client 2 Client 3 Client 4
Wide-bandwidth network
9
Client/Server System
from Sommerville
s1
s2 s3
s4
c1
c2 c3 c4
c5
c6
c7 c8
c9
c10
c11
c12
Client process
Server process
10
Representative Client/Server Systems
Part 1
 File servers
 client requests selected records from a file
 server transmits records to client over the network
 Database servers
 client sends SQL requests to server
 server processes the request
 server returns the results to the client over the network
11
Representative Client/Server Systems
part 2
 Transaction servers
 client sends requests that invokes remote procedures on
the server side
 server executes procedures invoked and returns the results
to the client
 Groupware servers
 server provides set of applications that enable
communication among clients using text, images, bulletin
boards, video, etc.
12
Control models
Are concerned with the control flow between sub systems. Distinct from the
system decomposition model
 Centralised control
 One sub-system has overall responsibility for control and starts and stops other sub-systems
 Event-based control
 Each sub-system can respond to externally generated events from other sub-systems or the
system’s environment
13
A client-server ATM system
Account server
Customer
account
database
Tele-
processing
monitor
ATM
ATM
ATM
ATM
14
Computers in a C/S network
Network
SC1
SC2
CC1 CC2 CC3
CC5 CC6
CC4
Server
computer
Client
computer
s1, s2 s3, s4
c5, c6, c7
c1 c2 c3, c4
c8, c9 c10, c11, c12
15
Layered application architecture
Presentation layer
 Concerned with presenting the results of a computation to system users and
with collecting user inputs
Application processing layer
 Concerned with providing application specific functionality e.g., in a banking
system, banking functions such as open account, close account, etc.
Data management layer
 Concerned with managing the system databases
16
Application layers
Presentation layer
Application processing
layer
Data management
layer
17
ISO/OSI network model
Application
Presentation
Session
Transport
Network
Data link
Physical
7
6
5
4
3
2
1
Communications medium
Network
Data link
Physical
Application
Presentation
Session
Transport
Network
Data link
Physical
Application
18
Repository Model 19
A repository model is a system that allow interfacing sub-systems to share the same data. Sub-system must
exchange data so that they can work together effectively.
Repository Model
Advantages:
• It is an efficient way to share large amounts of data. There is no need to transmit data explicitly from one
sub-system to another.
• Sub-systems that produce data need not be concerned with how that data is used by other subsystems.
• Activities such as backup, security, access control and recovery from error are centralized.
Disadvantages:
• It requires some specific tools. Performance may be adversely affected by this compromise.
• Evolution may be difficult as a large volume of information is generated according to an agreed data model.
• Different sub-systems may have different requirements for security, recovery and backup policies.
• The repository model forces the same policy on all subsystems.
20
Three-tier Architecture
 Each application architecture layers (presentation, application, database) may run
on separate processors
 Allows for better performance
 Simpler to manage
 Highly scalable (as demands increase add more servers)
21
Three-Tier Architecture
from Sommerville
Database server
Customer
account
database
Web server
Client
Client
Client
Client
Account service
provision
SQL
SQL query
HTTP interaction
22
Model-View-Controller (MVC) 23
 It is an architectural pattern that separates
an application into three main logical
components: the model, the view, and
the controller.
 Each of these components are built to
handle specific development aspects
 MVC is one of the most frequently used
industry-standard web development
framework to create scalable and
extensible projects.
 Model
The Model component corresponds to all the data-related logic that the user works with.
This can represent either the data that is being transferred between the View and
Controller components or any other business logic-related data.
 View
The View component is used for all the UI logic of the application. For example, the
Customer view will include all the UI components such as text boxes, dropdowns, etc. that
the final user interacts with.
 Controller
Controllers act as an interface between Model and View components to process all the
business logic and incoming requests, manipulate data using the Model component and
interact with the Views to render the final output.
24
25
Several Other
Architectural Models
Real-Time System Control Model
System
controller
User
interface
Fault
handler
Computation
processes
Actuator
processes
Sensor
processes
26
Selective Broadcasting Model
Sub-system
1
Event and message handler
Sub-system
2
Sub-system
3
Sub-system
4
27
Interrupt-Driven Control Model
Handler
1
Handler
2
Handler
3
Handler
4
Process
1
Process
2
Process
3
Process
4
Interrupts
Interrupt
vector
28
Compiler Model
Lexical
analysis
Syntactic
analysis
Semantic
analysis
Code
generation
Symbol
table
29
Multiprocessor Traffic Control System
from Sommerville
Traffic lights
Light
control
process
Traffic light control
processor
Traffic flow
processor
Operator consoles
Traffic flow sensors
and cameras
Sensor
processor
Sensor
control
process
Display
process
30
Thanks for your attention!
Any Question?
Email me on : junaid.akram@xmu.edu.my
31

More Related Content

Similar to Lecture-12-Architecture Design.pptx

MVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCMVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCAnton Krasnoshchok
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architectureshuchi tripathi
 
Architectural design
Architectural designArchitectural design
Architectural designHuda Alameen
 
Topic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information SystemsTopic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information Systemssanjoysanyal
 
DDD - 4 - Domain Driven Design_ Architectural patterns.pdf
DDD - 4 - Domain Driven Design_ Architectural patterns.pdfDDD - 4 - Domain Driven Design_ Architectural patterns.pdf
DDD - 4 - Domain Driven Design_ Architectural patterns.pdfEleonora Ciceri
 
Mirabilis design Inc - Brochure
Mirabilis design Inc - BrochureMirabilis design Inc - Brochure
Mirabilis design Inc - BrochureDeepak Shankar
 
Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10koolkampus
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptxtaxegap762
 
Business Record Management System and Financial Reporting
Business Record Management System and Financial ReportingBusiness Record Management System and Financial Reporting
Business Record Management System and Financial ReportingMike Taylor
 
Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A surveyModel-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A surveyEditor IJCATR
 
Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A survey Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A survey Editor IJCATR
 
Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A surveyModel-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A surveyEditor IJCATR
 
Analyzing Systems Using Data Flow Diagrams
Analyzing Systems Using Data Flow DiagramsAnalyzing Systems Using Data Flow Diagrams
Analyzing Systems Using Data Flow DiagramsChristina Valadez
 
Sameer Mitter - Management Responsibilities by Cloud service model types
Sameer Mitter - Management Responsibilities by Cloud service model typesSameer Mitter - Management Responsibilities by Cloud service model types
Sameer Mitter - Management Responsibilities by Cloud service model typesSameer Mitter
 

Similar to Lecture-12-Architecture Design.pptx (20)

MVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVCMVC Pattern. Flex implementation of MVC
MVC Pattern. Flex implementation of MVC
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecture
 
Architectural design of software
Architectural  design of softwareArchitectural  design of software
Architectural design of software
 
Se lec6
Se lec6Se lec6
Se lec6
 
Architectural design
Architectural designArchitectural design
Architectural design
 
Topic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information SystemsTopic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information Systems
 
SOFTWARE COMPUTING
SOFTWARE COMPUTINGSOFTWARE COMPUTING
SOFTWARE COMPUTING
 
DDD - 4 - Domain Driven Design_ Architectural patterns.pdf
DDD - 4 - Domain Driven Design_ Architectural patterns.pdfDDD - 4 - Domain Driven Design_ Architectural patterns.pdf
DDD - 4 - Domain Driven Design_ Architectural patterns.pdf
 
Moving to Design
Moving to DesignMoving to Design
Moving to Design
 
Mirabilis design Inc - Brochure
Mirabilis design Inc - BrochureMirabilis design Inc - Brochure
Mirabilis design Inc - Brochure
 
Scheduling in CCE
Scheduling in CCEScheduling in CCE
Scheduling in CCE
 
Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
Business Record Management System and Financial Reporting
Business Record Management System and Financial ReportingBusiness Record Management System and Financial Reporting
Business Record Management System and Financial Reporting
 
Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A surveyModel-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A survey
 
Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A survey Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A survey
 
Model-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A surveyModel-Driven Architecture for Cloud Applications Development, A survey
Model-Driven Architecture for Cloud Applications Development, A survey
 
Analyzing Systems Using Data Flow Diagrams
Analyzing Systems Using Data Flow DiagramsAnalyzing Systems Using Data Flow Diagrams
Analyzing Systems Using Data Flow Diagrams
 
Sameer Mitter - Management Responsibilities by Cloud service model types
Sameer Mitter - Management Responsibilities by Cloud service model typesSameer Mitter - Management Responsibilities by Cloud service model types
Sameer Mitter - Management Responsibilities by Cloud service model types
 
M azhar
M azharM azhar
M azhar
 

Recently uploaded

Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineeringmalavadedarshan25
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx959SahilShah
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
Introduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxIntroduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxvipinkmenon1
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 

Recently uploaded (20)

Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineering
 
Application of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptxApplication of Residue Theorem to evaluate real integrations.pptx
Application of Residue Theorem to evaluate real integrations.pptx
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
Introduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptxIntroduction to Microprocesso programming and interfacing.pptx
Introduction to Microprocesso programming and interfacing.pptx
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 

Lecture-12-Architecture Design.pptx

  • 1. Software Architecture Design Dr. JUNAID AKRAM Assistant Professor, Department Of Computer Science Comsats (Lahore) By 1
  • 2. Software Architecture Architectural Design  process for identifying the subsystems that make up a system  defines framework for sub-system control and communication 2 The software architecture of a program or computing system is the structure of the system, which comprise software components, the externally visible properties of those components, and the relationships among them.
  • 3. Architectural Design Process  System structuring  system decomposed into several subsystems  Control modeling  model of control relationships among system components is established  Modular decomposition  identified subsystems decomposed into modules 3
  • 4. Architectural Models  Static structural model shows major system components  Dynamic process model shows process structure of the system  Interface model defines subsystem interfaces  Relationships model data flow or control flow diagrams 4
  • 5. Architectural Styles 5  Data-centered architectures
  • 6. Architectural Styles 6  Data-flow architectures
  • 7. Architectural Styles 7  Layered architecture
  • 8. 2 Tired - Client-server architecture  Distributed system model which shows how data and processing is distributed across a range of components  Set of stand-alone servers which provide specific services such as printing, data management, etc.  Set of clients which call on these services  Network which allows clients to access servers 8
  • 9. Film and picture library Catalogue server Catalogue Video server Film clip files Picture server Digitized photographs Hypertext server Hypertext web Client 1 Client 2 Client 3 Client 4 Wide-bandwidth network 9
  • 10. Client/Server System from Sommerville s1 s2 s3 s4 c1 c2 c3 c4 c5 c6 c7 c8 c9 c10 c11 c12 Client process Server process 10
  • 11. Representative Client/Server Systems Part 1  File servers  client requests selected records from a file  server transmits records to client over the network  Database servers  client sends SQL requests to server  server processes the request  server returns the results to the client over the network 11
  • 12. Representative Client/Server Systems part 2  Transaction servers  client sends requests that invokes remote procedures on the server side  server executes procedures invoked and returns the results to the client  Groupware servers  server provides set of applications that enable communication among clients using text, images, bulletin boards, video, etc. 12
  • 13. Control models Are concerned with the control flow between sub systems. Distinct from the system decomposition model  Centralised control  One sub-system has overall responsibility for control and starts and stops other sub-systems  Event-based control  Each sub-system can respond to externally generated events from other sub-systems or the system’s environment 13
  • 14. A client-server ATM system Account server Customer account database Tele- processing monitor ATM ATM ATM ATM 14
  • 15. Computers in a C/S network Network SC1 SC2 CC1 CC2 CC3 CC5 CC6 CC4 Server computer Client computer s1, s2 s3, s4 c5, c6, c7 c1 c2 c3, c4 c8, c9 c10, c11, c12 15
  • 16. Layered application architecture Presentation layer  Concerned with presenting the results of a computation to system users and with collecting user inputs Application processing layer  Concerned with providing application specific functionality e.g., in a banking system, banking functions such as open account, close account, etc. Data management layer  Concerned with managing the system databases 16
  • 17. Application layers Presentation layer Application processing layer Data management layer 17
  • 18. ISO/OSI network model Application Presentation Session Transport Network Data link Physical 7 6 5 4 3 2 1 Communications medium Network Data link Physical Application Presentation Session Transport Network Data link Physical Application 18
  • 19. Repository Model 19 A repository model is a system that allow interfacing sub-systems to share the same data. Sub-system must exchange data so that they can work together effectively.
  • 20. Repository Model Advantages: • It is an efficient way to share large amounts of data. There is no need to transmit data explicitly from one sub-system to another. • Sub-systems that produce data need not be concerned with how that data is used by other subsystems. • Activities such as backup, security, access control and recovery from error are centralized. Disadvantages: • It requires some specific tools. Performance may be adversely affected by this compromise. • Evolution may be difficult as a large volume of information is generated according to an agreed data model. • Different sub-systems may have different requirements for security, recovery and backup policies. • The repository model forces the same policy on all subsystems. 20
  • 21. Three-tier Architecture  Each application architecture layers (presentation, application, database) may run on separate processors  Allows for better performance  Simpler to manage  Highly scalable (as demands increase add more servers) 21
  • 22. Three-Tier Architecture from Sommerville Database server Customer account database Web server Client Client Client Client Account service provision SQL SQL query HTTP interaction 22
  • 23. Model-View-Controller (MVC) 23  It is an architectural pattern that separates an application into three main logical components: the model, the view, and the controller.  Each of these components are built to handle specific development aspects  MVC is one of the most frequently used industry-standard web development framework to create scalable and extensible projects.
  • 24.  Model The Model component corresponds to all the data-related logic that the user works with. This can represent either the data that is being transferred between the View and Controller components or any other business logic-related data.  View The View component is used for all the UI logic of the application. For example, the Customer view will include all the UI components such as text boxes, dropdowns, etc. that the final user interacts with.  Controller Controllers act as an interface between Model and View components to process all the business logic and incoming requests, manipulate data using the Model component and interact with the Views to render the final output. 24
  • 26. Real-Time System Control Model System controller User interface Fault handler Computation processes Actuator processes Sensor processes 26
  • 27. Selective Broadcasting Model Sub-system 1 Event and message handler Sub-system 2 Sub-system 3 Sub-system 4 27
  • 30. Multiprocessor Traffic Control System from Sommerville Traffic lights Light control process Traffic light control processor Traffic flow processor Operator consoles Traffic flow sensors and cameras Sensor processor Sensor control process Display process 30
  • 31. Thanks for your attention! Any Question? Email me on : junaid.akram@xmu.edu.my 31