SlideShare a Scribd company logo
1 of 21
CONTROL STYLES
CONTROL STYLES
Control styles in software architecture design refer to different approaches
for managing the flow of control and communication between software
components/sub-systems.
There are two main types :
1. Centralized Control
2. Event Based Control
TYPES OF CONTROL STYLES:
CENTRALIZED CONTROL
▪ a single subsystem that is
responsible for controlling
the flow of execution.
▪ main program or control
program
▪ used in systems where it is
important to have a single
point of control.
EVENT BASED CONTROL
▪ each subsystem respond to
events that are generated by
other subsystems or by the
system's environment.
▪ event handler
▪ used in systems where it is
important to be able to
respond to events quickly.
COMPARISON OF CONTROL STYLES
Feature Centralized Control Event-based Control
Number of control points Single Multiple
Control flow Top-down Event-driven
Flexibility Less flexible More flexible
Scalability Less scalable More scalable
Complexity Simpler More complex
TYPES AND SUBTYPES
1. Centralized Control
a. Call-Return Model
b. Manager Model
2. Event Based Control
a. Broadcast Model
b. Interrupt-driven Model
CALL-RETURN MODEL
▪ In a call-return model, there is a single main program that controls the
execution of all other programs.
▪ It is a good choice for simple software systems where it is important to
have a single point of control and where flexibility is not a major concern.
▪ The call-return model is a simple and easy-to-understand control style.
▪ It is also a very efficient control style, because it does not require any
synchronization between programs.
CALL-RETURN MODEL
CALL-RETURN MODEL
• The main program calls the Routine 1, which then calls Routine 1.1.
• Routine 1.1 returns to Routine 1, which then returns to the main
program.
• This process continues until all of the programs have finished
executing.
CALL-RETURN MODEL
Examples of call-return control style:
▪ Main program and subroutines
▪ Layered architecture
▪ Object-oriented programming
▪ Virtual machine
• Applicable to concurrent system
• Controls the starting, stopping and coordination of other
systems
• May also be applied for sequential systems
• Often used in “soft” real-time systems
THE MANAGER MODEL
THE MANAGER MODEL
THE MANAGER MODEL
• The central controller manages the execution
of a set of processes associated with sensors
and actuators
• Sometimes, referred as event loop model.
THE MANAGER MODEL
▪ Centralized coordination
▪ Task Distribution
▪ Decisions and Policies
▪ Communication Hub
▪ Resource Management
▪ Status Monitoring
Characteristics:
Manager Model
Advantages
▪ Centralized control
▪ Clear organization
▪ Resource allocation
▪ Consistency
Disadvantages
▪ Single point of failure
▪ Scalability
▪ Complexity
▪ Limited parallelism
▪ Dependency
EVENT-BASED MODEL
▪ This class of control styles is driven by externally generated events.
▪ The system waits for the event to occur and then responds to it.
▪ Types:
✔ Broadcast Model
✔ Interrupt-Driven Model
BROADCAST MODEL
▪ Event can be broadcasted to all sub-systems
▪ Sub-system programmed to handle it, responds to it.
BROADCAST MODEL
▪ Sub-systems also generate events.
▪ Point-to-Point communication
▪ Processing overhead is caused.
▪ Event and message handler maintains a register of sub-systems and
their events of interest.
▪ New sub-systems can be added by registering their events of
interest to the event handler.
BROADCAST MODEL
DISADVANTAGES
▪ Different sub-systems registering for same event of interest
USES
▪ Real-time systems
INTERRUPT DRIVEN MODEL
INTERRUPT DRIVEN MODEL
▪ In this model, all conceivable interrupts are predefined along with their
corresponding interrupt handler.
▪ As soon as an interrupt of a particular type is detected, a hardware switch
passes the control to the interrupt handler of that particular type
of interrupt.
▪ The handler then passes the control to the process for that interrupt.
▪ For normal running conditions, it may be paired with some sort of
Centralized control mode.
INTERRUPT DRIVEN MODEL
▪ Compared to other models, it allows very rapid response to external
events.
▪ But the downside to the fast response is that the program is complex
and hard to validate.
▪ Once the hardware bottlenecks the number of interrupts that can be
handled, no further interrupts can be handled.

More Related Content

What's hot

Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
Rupsee
 

What's hot (20)

V model presentation
V model presentationV model presentation
V model presentation
 
Distributed Operating System,Network OS and Middle-ware.??
Distributed Operating System,Network OS and Middle-ware.??Distributed Operating System,Network OS and Middle-ware.??
Distributed Operating System,Network OS and Middle-ware.??
 
Fault tolerance
Fault toleranceFault tolerance
Fault tolerance
 
Process Management in Android
Process Management in AndroidProcess Management in Android
Process Management in Android
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
1.intro. to distributed system
1.intro. to distributed system1.intro. to distributed system
1.intro. to distributed system
 
RAD Model
RAD ModelRAD Model
RAD Model
 
Incremental model
Incremental modelIncremental model
Incremental model
 
Unit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed SystemsUnit 3 cs6601 Distributed Systems
Unit 3 cs6601 Distributed Systems
 
Distributed Systems
Distributed SystemsDistributed Systems
Distributed Systems
 
Ch10 - Dependable Systems
Ch10 - Dependable SystemsCh10 - Dependable Systems
Ch10 - Dependable Systems
 
Peer to Peer services and File systems
Peer to Peer services and File systemsPeer to Peer services and File systems
Peer to Peer services and File systems
 
Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
 
Distributed Operating System
Distributed Operating SystemDistributed Operating System
Distributed Operating System
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
Ch17 distributed software engineering
Ch17 distributed software engineeringCh17 distributed software engineering
Ch17 distributed software engineering
 
Ch12 safety engineering
Ch12 safety engineeringCh12 safety engineering
Ch12 safety engineering
 
Backup & restore in windows
Backup & restore in windowsBackup & restore in windows
Backup & restore in windows
 
Replication in Distributed Systems
Replication in Distributed SystemsReplication in Distributed Systems
Replication in Distributed Systems
 
introduction to system administration
introduction to system administrationintroduction to system administration
introduction to system administration
 

Similar to Control Styles.pptx

Software archiecture lecture08
Software archiecture   lecture08Software archiecture   lecture08
Software archiecture lecture08
Luktalja
 
Es_module2ppt.pptx
Es_module2ppt.pptxEs_module2ppt.pptx
Es_module2ppt.pptx
RohanAM1
 

Similar to Control Styles.pptx (20)

Design space for user interface architectures
Design space for user interface architecturesDesign space for user interface architectures
Design space for user interface architectures
 
Module 3.1.pptx
Module 3.1.pptxModule 3.1.pptx
Module 3.1.pptx
 
architeral design.pptx
architeral design.pptxarchiteral design.pptx
architeral design.pptx
 
Product Information - Fuse Management Central 1.0.0
Product Information - Fuse Management Central 1.0.0Product Information - Fuse Management Central 1.0.0
Product Information - Fuse Management Central 1.0.0
 
Lecture 2.pptx
Lecture 2.pptxLecture 2.pptx
Lecture 2.pptx
 
Operating Systems
Operating SystemsOperating Systems
Operating Systems
 
My 15 day intern report
My 15 day intern reportMy 15 day intern report
My 15 day intern report
 
Multi-Threading.pptx
Multi-Threading.pptxMulti-Threading.pptx
Multi-Threading.pptx
 
SE - Lecture 2 - SW Devl Process.pptx
SE - Lecture 2 - SW Devl Process.pptxSE - Lecture 2 - SW Devl Process.pptx
SE - Lecture 2 - SW Devl Process.pptx
 
softwareMaintenance.pdf
softwareMaintenance.pdfsoftwareMaintenance.pdf
softwareMaintenance.pdf
 
Software archiecture lecture08
Software archiecture   lecture08Software archiecture   lecture08
Software archiecture lecture08
 
Software Process Model.ppt
Software Process Model.pptSoftware Process Model.ppt
Software Process Model.ppt
 
software process model
software process modelsoftware process model
software process model
 
DevOps Practices in a Nutshell
DevOps Practices in a NutshellDevOps Practices in a Nutshell
DevOps Practices in a Nutshell
 
Fundamentals of Software Engineering
Fundamentals of Software Engineering Fundamentals of Software Engineering
Fundamentals of Software Engineering
 
Es_module2ppt.pptx
Es_module2ppt.pptxEs_module2ppt.pptx
Es_module2ppt.pptx
 
OutSystems community meetup 2018 11 service modules
OutSystems community meetup 2018 11 service modulesOutSystems community meetup 2018 11 service modules
OutSystems community meetup 2018 11 service modules
 
Outsystems community meetup 2018 11 service modules
Outsystems community meetup 2018 11 service modulesOutsystems community meetup 2018 11 service modules
Outsystems community meetup 2018 11 service modules
 
Fundamentals of computer systems
Fundamentals of computer systemsFundamentals of computer systems
Fundamentals of computer systems
 
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
 

Recently uploaded

Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Lisi Hocke
 

Recently uploaded (20)

BusinessGPT - Security and Governance for Generative AI
BusinessGPT  - Security and Governance for Generative AIBusinessGPT  - Security and Governance for Generative AI
BusinessGPT - Security and Governance for Generative AI
 
From Theory to Practice: Utilizing SpiraPlan's REST API
From Theory to Practice: Utilizing SpiraPlan's REST APIFrom Theory to Practice: Utilizing SpiraPlan's REST API
From Theory to Practice: Utilizing SpiraPlan's REST API
 
Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...
Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...
Abortion Pill Prices Mthatha (@](+27832195400*)[ 🏥 Women's Abortion Clinic In...
 
Test Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdfTest Automation Design Patterns_ A Comprehensive Guide.pdf
Test Automation Design Patterns_ A Comprehensive Guide.pdf
 
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
 
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
 
Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...
Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...
Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...
 
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
Workshop -  Architecting Innovative Graph Applications- GraphSummit MilanWorkshop -  Architecting Innovative Graph Applications- GraphSummit Milan
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
 
Your Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | EvmuxYour Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | Evmux
 
CERVED e Neo4j su una nuvola, migrazione ed evoluzione di un grafo mission cr...
CERVED e Neo4j su una nuvola, migrazione ed evoluzione di un grafo mission cr...CERVED e Neo4j su una nuvola, migrazione ed evoluzione di un grafo mission cr...
CERVED e Neo4j su una nuvola, migrazione ed evoluzione di un grafo mission cr...
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdf
 
Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...
Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...
Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
 
Workshop: Enabling GenAI Breakthroughs with Knowledge Graphs - GraphSummit Milan
Workshop: Enabling GenAI Breakthroughs with Knowledge Graphs - GraphSummit MilanWorkshop: Enabling GenAI Breakthroughs with Knowledge Graphs - GraphSummit Milan
Workshop: Enabling GenAI Breakthroughs with Knowledge Graphs - GraphSummit Milan
 
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
 
Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...
Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...
Abortion Clinic In Pretoria ](+27832195400*)[ 🏥 Safe Abortion Pills in Pretor...
 
GraphSummit Milan - Neo4j: The Art of the Possible with Graph
GraphSummit Milan - Neo4j: The Art of the Possible with GraphGraphSummit Milan - Neo4j: The Art of the Possible with Graph
GraphSummit Milan - Neo4j: The Art of the Possible with Graph
 
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
 
Transformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with LinksTransformer Neural Network Use Cases with Links
Transformer Neural Network Use Cases with Links
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
 

Control Styles.pptx

  • 2. CONTROL STYLES Control styles in software architecture design refer to different approaches for managing the flow of control and communication between software components/sub-systems. There are two main types : 1. Centralized Control 2. Event Based Control
  • 3. TYPES OF CONTROL STYLES: CENTRALIZED CONTROL ▪ a single subsystem that is responsible for controlling the flow of execution. ▪ main program or control program ▪ used in systems where it is important to have a single point of control. EVENT BASED CONTROL ▪ each subsystem respond to events that are generated by other subsystems or by the system's environment. ▪ event handler ▪ used in systems where it is important to be able to respond to events quickly.
  • 4. COMPARISON OF CONTROL STYLES Feature Centralized Control Event-based Control Number of control points Single Multiple Control flow Top-down Event-driven Flexibility Less flexible More flexible Scalability Less scalable More scalable Complexity Simpler More complex
  • 5. TYPES AND SUBTYPES 1. Centralized Control a. Call-Return Model b. Manager Model 2. Event Based Control a. Broadcast Model b. Interrupt-driven Model
  • 6. CALL-RETURN MODEL ▪ In a call-return model, there is a single main program that controls the execution of all other programs. ▪ It is a good choice for simple software systems where it is important to have a single point of control and where flexibility is not a major concern. ▪ The call-return model is a simple and easy-to-understand control style. ▪ It is also a very efficient control style, because it does not require any synchronization between programs.
  • 8. CALL-RETURN MODEL • The main program calls the Routine 1, which then calls Routine 1.1. • Routine 1.1 returns to Routine 1, which then returns to the main program. • This process continues until all of the programs have finished executing.
  • 9. CALL-RETURN MODEL Examples of call-return control style: ▪ Main program and subroutines ▪ Layered architecture ▪ Object-oriented programming ▪ Virtual machine
  • 10. • Applicable to concurrent system • Controls the starting, stopping and coordination of other systems • May also be applied for sequential systems • Often used in “soft” real-time systems THE MANAGER MODEL
  • 12. THE MANAGER MODEL • The central controller manages the execution of a set of processes associated with sensors and actuators • Sometimes, referred as event loop model.
  • 13. THE MANAGER MODEL ▪ Centralized coordination ▪ Task Distribution ▪ Decisions and Policies ▪ Communication Hub ▪ Resource Management ▪ Status Monitoring Characteristics:
  • 14. Manager Model Advantages ▪ Centralized control ▪ Clear organization ▪ Resource allocation ▪ Consistency Disadvantages ▪ Single point of failure ▪ Scalability ▪ Complexity ▪ Limited parallelism ▪ Dependency
  • 15. EVENT-BASED MODEL ▪ This class of control styles is driven by externally generated events. ▪ The system waits for the event to occur and then responds to it. ▪ Types: ✔ Broadcast Model ✔ Interrupt-Driven Model
  • 16. BROADCAST MODEL ▪ Event can be broadcasted to all sub-systems ▪ Sub-system programmed to handle it, responds to it.
  • 17. BROADCAST MODEL ▪ Sub-systems also generate events. ▪ Point-to-Point communication ▪ Processing overhead is caused. ▪ Event and message handler maintains a register of sub-systems and their events of interest. ▪ New sub-systems can be added by registering their events of interest to the event handler.
  • 18. BROADCAST MODEL DISADVANTAGES ▪ Different sub-systems registering for same event of interest USES ▪ Real-time systems
  • 20. INTERRUPT DRIVEN MODEL ▪ In this model, all conceivable interrupts are predefined along with their corresponding interrupt handler. ▪ As soon as an interrupt of a particular type is detected, a hardware switch passes the control to the interrupt handler of that particular type of interrupt. ▪ The handler then passes the control to the process for that interrupt. ▪ For normal running conditions, it may be paired with some sort of Centralized control mode.
  • 21. INTERRUPT DRIVEN MODEL ▪ Compared to other models, it allows very rapid response to external events. ▪ But the downside to the fast response is that the program is complex and hard to validate. ▪ Once the hardware bottlenecks the number of interrupts that can be handled, no further interrupts can be handled.