SlideShare una empresa de Scribd logo
1 de 20
Hierarchical Architecture
By:
Brijesh Mishra
14ME204
Overview
1. Introduction
2. Types of Hierarchical Architecture
1.Introduction
• Characterized by viewing the entire system as
a hierarchy structure.
• Example:
– System Software Design
• Lower Level
– i/o services, scheduling and security etc
• Middle Level
– Business logic or core processing service.
• Upper Level
– User interface as GUI
2.Types of Hierarchical
There are 4 types of Hierarchical Architecture
1. Main-Subroutine Architecture
2. Master-Slave Architecture
3. Layered Architecture
4. Virtual Architecture
2.Types of Hierarchical
There are 4 types of Hierarchical Architecture
1. Main-Subroutine Architecture
2. Master-Slave Architecture
3. Layered Architecture
4. Virtual Architecture
1.Main-Subroutine Architecture
• The purpose of this architecture style is to
reuse the subroutines and have individual
subroutines developed independently.
• Data is passed as parameters.
- Pass by value
-Pass bye reference
Continue…
• Benefits:
-It is easy to decompose the system based on the
definition of the tasks in a top-down refinement
manner.
-This architecture can still be used in a subsystem
of OO design.
• Limitations:
-Globally shared data introduces vulnerabilities.
- Tight coupling may cause more ripple effects of
changes as compared to OO design.
2.Types of Hierarchical
There are 4 types of Hierarchical Architecture
1. Main-Subroutine Architecture
2. Master-Slave Architecture
3. Layered Architecture
4. Virtual Architecture
2.Master-Slave Architecture
• Supports fault tolerance and system reliability.
• Slaves provide replicated services to the
master.
• Reliability is critical
– Example:
• Fork()
• Database Transaction
2.Types of Hierarchical
There are 4 types of Hierarchical Architecture
1. Main-Subroutine Architecture
2. Master-Slave Architecture
3. Layered Architecture
4. Virtual Architecture
3.Layered Architecture
• Decomposed into a number of higher and
lower layers.
• Each layer has its responsibility.
• Two interfaces: the up interface provides
services to its upper layer and the low
interface requires services from its lower layer.
• Example:
– OSI Model of Network
• Benefits:
– Incremental software development based on
increasing levels of abstraction.
– Flexibility
– Component-based technology is suitable
• Limitations:
– Many applications cannot fit this architecture
design.
– “bridging” may cause tight coupling or deadlocks
2.Types of Hierarchical
There are 4 types of Hierarchical Architecture
1. Main-Subroutine Architecture
2. Master-Slave Architecture
3. Layered Architecture
4. Virtual Architecture
4.Virtual Architecture
• Built on an existing system and provide virtual
abstraction.
• Appear similar to emulator software
• Example:
JVM
Virtual Box (application software)
• Benefits:
-Portability and machine platform
independency
- Simplicity of software development
-Simulation for disaster working model
• Limitations:
-Slow execution of the interpreter due to
the interpreter nature
-Additional overhead due to the new layer
Reference
Software Architecture and Design Illuminated
(Kai Qian, Xiang Fu, Lixin Tao, Chong Wei Xu)
Thank You...

Más contenido relacionado

La actualidad más candente

Function oriented design
Function oriented designFunction oriented design
Function oriented design
Vidhun T
 
Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5
koolkampus
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
koolkampus
 

La actualidad más candente (20)

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
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Function oriented design
Function oriented designFunction oriented design
Function oriented design
 
unit 3 Design 1
unit 3 Design 1unit 3 Design 1
unit 3 Design 1
 
Software Architecture Patterns
Software Architecture PatternsSoftware Architecture Patterns
Software Architecture Patterns
 
Ian Sommerville, Software Engineering, 9th Edition Ch1
Ian Sommerville,  Software Engineering, 9th Edition Ch1Ian Sommerville,  Software Engineering, 9th Edition Ch1
Ian Sommerville, Software Engineering, 9th Edition Ch1
 
Unified process model
Unified process modelUnified process model
Unified process model
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Expert system
Expert systemExpert system
Expert system
 
4+1 view model
4+1 view model4+1 view model
4+1 view model
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 
Unit7: Production System
Unit7: Production SystemUnit7: Production System
Unit7: Production System
 
Requirements analysis
Requirements analysisRequirements analysis
Requirements analysis
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5Software Requirements in Software Engineering SE5
Software Requirements in Software Engineering SE5
 
Design concept -Software Engineering
Design concept -Software EngineeringDesign concept -Software Engineering
Design concept -Software Engineering
 
Evolutionary process models se.ppt
Evolutionary process models se.pptEvolutionary process models se.ppt
Evolutionary process models se.ppt
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
 
software engineering
software engineeringsoftware engineering
software engineering
 

Similar a Hierarchical architecture

10 architectural design
10 architectural design10 architectural design
10 architectural design
Ayesha Bhatti
 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)
Ayesha Bhatti
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
Zahid Hussain
 

Similar a Hierarchical architecture (20)

Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Unit ii
Unit ii  Unit ii
Unit ii
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Architecture Design in Software Engineering
Architecture Design in Software EngineeringArchitecture Design in Software Engineering
Architecture Design in Software Engineering
 
Hierarchical Software Architecture.pptx
Hierarchical Software Architecture.pptxHierarchical Software Architecture.pptx
Hierarchical Software Architecture.pptx
 
Architectural design
Architectural designArchitectural design
Architectural design
 
10 architectural design
10 architectural design10 architectural design
10 architectural design
 
10 architectural design (1)
10 architectural design (1)10 architectural design (1)
10 architectural design (1)
 
Architecture Principles CodeStock
Architecture Principles CodeStock Architecture Principles CodeStock
Architecture Principles CodeStock
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
 
Architectural design1
Architectural design1Architectural design1
Architectural design1
 
Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.
 
Unit4
Unit4Unit4
Unit4
 
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURESOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
SOA1-Background.ppt SOFTWARE ORIENTED SERVICES AND ARCHITECTURE
 
ds2p1.pptx
ds2p1.pptxds2p1.pptx
ds2p1.pptx
 
4. system models
4. system models4. system models
4. system models
 
architectural design
 architectural design architectural design
architectural design
 
WINSEM2022-23_SWE2004_ETH_VL2022230501954_2023-02-01_Reference-Material-I.pptx
WINSEM2022-23_SWE2004_ETH_VL2022230501954_2023-02-01_Reference-Material-I.pptxWINSEM2022-23_SWE2004_ETH_VL2022230501954_2023-02-01_Reference-Material-I.pptx
WINSEM2022-23_SWE2004_ETH_VL2022230501954_2023-02-01_Reference-Material-I.pptx
 
Tij3103 topic02 architectures
Tij3103 topic02 architecturesTij3103 topic02 architectures
Tij3103 topic02 architectures
 
Middle ware Technologies
Middle ware TechnologiesMiddle ware Technologies
Middle ware Technologies
 

Último

Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
nirzagarg
 
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
eeanqy
 
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
HyderabadDolls
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
wpkuukw
 
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
gajnagarg
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement
210303105569
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
wpkuukw
 
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
awasv46j
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion pills in Kuwait Cytotec pills in Kuwait
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Nitya salvi
 

Último (20)

Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...
Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...
Mohanlalganj ! Call Girls in Lucknow - 450+ Call Girl Cash Payment 9548273370...
 
Essential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive GuideEssential UI/UX Design Principles: A Comprehensive Guide
Essential UI/UX Design Principles: A Comprehensive Guide
 
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
Just Call Vip call girls Kasganj Escorts ☎️8617370543 Two shot with one girl ...
 
Gamestore case study UI UX by Amgad Ibrahim
Gamestore case study UI UX by Amgad IbrahimGamestore case study UI UX by Amgad Ibrahim
Gamestore case study UI UX by Amgad Ibrahim
 
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
Top profile Call Girls In Mau [ 7014168258 ] Call Me For Genuine Models We ar...
 
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
怎样办理伯明翰大学学院毕业证(Birmingham毕业证书)成绩单留信认证
 
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
Madhyamgram \ (Genuine) Escort Service Kolkata | Service-oriented sexy call g...
 
Dahisar Comfortable Call Girls ,09167354423,Mira Road Model Call Girls
Dahisar Comfortable Call Girls ,09167354423,Mira Road Model Call GirlsDahisar Comfortable Call Girls ,09167354423,Mira Road Model Call Girls
Dahisar Comfortable Call Girls ,09167354423,Mira Road Model Call Girls
 
Q4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentationQ4-W4-SCIENCE-5 power point presentation
Q4-W4-SCIENCE-5 power point presentation
 
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
一比一定(购)滑铁卢大学毕业证(UW毕业证)成绩单学位证
 
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Mysore [ 7014168258 ] Call Me For Genuine Models We...
 
Resume all my skills and educations and achievement
Resume all my skills and educations and  achievement Resume all my skills and educations and  achievement
Resume all my skills and educations and achievement
 
Abu Dhabi Call girls Service0556255850 Call girls in Abu Dhabi
Abu Dhabi Call girls Service0556255850 Call girls in Abu DhabiAbu Dhabi Call girls Service0556255850 Call girls in Abu Dhabi
Abu Dhabi Call girls Service0556255850 Call girls in Abu Dhabi
 
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
一比一定(购)卡尔顿大学毕业证(CU毕业证)成绩单学位证
 
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
一比一原版(WLU毕业证)罗瑞尔大学毕业证成绩单留信学历认证原版一模一样
 
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman MuscatAbortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
Abortion Pills in Oman (+918133066128) Cytotec clinic buy Oman Muscat
 
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
Call Girls In Ratnagiri Escorts ☎️8617370543 🔝 💃 Enjoy 24/7 Escort Service En...
 
Jordan_Amanda_DMBS202404_PB1_2024-04.pdf
Jordan_Amanda_DMBS202404_PB1_2024-04.pdfJordan_Amanda_DMBS202404_PB1_2024-04.pdf
Jordan_Amanda_DMBS202404_PB1_2024-04.pdf
 
How to Create a Productive Workspace Trends and Tips.pdf
How to Create a Productive Workspace Trends and Tips.pdfHow to Create a Productive Workspace Trends and Tips.pdf
How to Create a Productive Workspace Trends and Tips.pdf
 
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for FriendshipRaebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
Raebareli Girl Whatsapp Number 📞 8617370543 | Girls Number for Friendship
 

Hierarchical architecture

  • 2. Overview 1. Introduction 2. Types of Hierarchical Architecture
  • 3. 1.Introduction • Characterized by viewing the entire system as a hierarchy structure. • Example: – System Software Design • Lower Level – i/o services, scheduling and security etc • Middle Level – Business logic or core processing service. • Upper Level – User interface as GUI
  • 4. 2.Types of Hierarchical There are 4 types of Hierarchical Architecture 1. Main-Subroutine Architecture 2. Master-Slave Architecture 3. Layered Architecture 4. Virtual Architecture
  • 5. 2.Types of Hierarchical There are 4 types of Hierarchical Architecture 1. Main-Subroutine Architecture 2. Master-Slave Architecture 3. Layered Architecture 4. Virtual Architecture
  • 6. 1.Main-Subroutine Architecture • The purpose of this architecture style is to reuse the subroutines and have individual subroutines developed independently. • Data is passed as parameters. - Pass by value -Pass bye reference
  • 7.
  • 8. Continue… • Benefits: -It is easy to decompose the system based on the definition of the tasks in a top-down refinement manner. -This architecture can still be used in a subsystem of OO design. • Limitations: -Globally shared data introduces vulnerabilities. - Tight coupling may cause more ripple effects of changes as compared to OO design.
  • 9. 2.Types of Hierarchical There are 4 types of Hierarchical Architecture 1. Main-Subroutine Architecture 2. Master-Slave Architecture 3. Layered Architecture 4. Virtual Architecture
  • 10. 2.Master-Slave Architecture • Supports fault tolerance and system reliability. • Slaves provide replicated services to the master. • Reliability is critical – Example: • Fork() • Database Transaction
  • 11.
  • 12. 2.Types of Hierarchical There are 4 types of Hierarchical Architecture 1. Main-Subroutine Architecture 2. Master-Slave Architecture 3. Layered Architecture 4. Virtual Architecture
  • 13. 3.Layered Architecture • Decomposed into a number of higher and lower layers. • Each layer has its responsibility. • Two interfaces: the up interface provides services to its upper layer and the low interface requires services from its lower layer. • Example: – OSI Model of Network
  • 14.
  • 15. • Benefits: – Incremental software development based on increasing levels of abstraction. – Flexibility – Component-based technology is suitable • Limitations: – Many applications cannot fit this architecture design. – “bridging” may cause tight coupling or deadlocks
  • 16. 2.Types of Hierarchical There are 4 types of Hierarchical Architecture 1. Main-Subroutine Architecture 2. Master-Slave Architecture 3. Layered Architecture 4. Virtual Architecture
  • 17. 4.Virtual Architecture • Built on an existing system and provide virtual abstraction. • Appear similar to emulator software • Example: JVM Virtual Box (application software)
  • 18. • Benefits: -Portability and machine platform independency - Simplicity of software development -Simulation for disaster working model • Limitations: -Slow execution of the interpreter due to the interpreter nature -Additional overhead due to the new layer
  • 19. Reference Software Architecture and Design Illuminated (Kai Qian, Xiang Fu, Lixin Tao, Chong Wei Xu)

Notas del editor

  1. Hierarchical=an arrangement according to relative importance or inclusiveness The hierarchical software architecture is characterized by viewing the entire system as a hierarchy structure. In other words, a lower-level module provides services to its adjacent upper-level modules, which invokes the methods or procedures in the lower level. Example: system software design. services at lower levels provide more specific functionality down to fundamental utility services such as I/O services, transaction, scheduling, and security services, etc. Middle layers, in an application setting, provide more domain- dependent functions such as business logic or core processing services. Upper layers provide more abstract functionality in the form of user interfaces such as command line interpreters, GUIs, Shell programming facilities, etc Any changes to a specific layer may affect only its adjacent upper layer, but only when its interface is changed. Otherwise there are no ripple effects of changes.
  2. a purchase process requirement. The process circle #1 receives requests from the customer and records all related information. The data is forwarded to the next process (circle #2) which validates the request (either return or purchase), and if the request is invalid it is rejected and the customer is notified (circle #4). To continue the transaction process #3 next selects one of the two different action paths; process #5 checks stock availability, while process #6 checks the customer credentials before making the invoice. On the alternate path, process #7 checks the return policy, while process #8 performs the refund transaction accordingly.
  3. The master-slave architecture is a variant of the main-subroutine architecture style that supports fault tolerance and system reliability. In this architecture, slaves provide replicated services to the master, and the master selects a particular result among slaves by certain selection strategies. The slaves may perform the same functional task by different algorithms and methods or by a totally different functionality. Master-slave architecture is used for the software system where reliability is critical. This is due to the replication (redundancy) of servers. It should be noted that in database schema design, the terms master-slave or parent-child are employed to specify the dependency of one entity on another. If the master node is deleted then the slave node has reason to stay
  4. As its name suggests, in a layered architecture the system is decomposed into a number of higher and lower layers in a hierarchy; each layer consists of a group of related classes that are encapsulated in a package, in a deployed component, or as a group of subroutines in the format of method library or header file. Also, each layer has its own sole responsibility in the system. A request to layeri+1 invokes the services provided by the layeri via the interface of layeri. The response may go back to the layeri+1 if the task is completed; otherwise layeri continually invokes services from the layeri-1 below. Each layer has two interfaces: the up interface provides services to its upper layer and the low interface requires services from its lower layer. A simple software system may consist of two layers: an interaction layer and a processing layer: • The interaction layer provides user interfaces to clients, takes requests, validates and forwards requests to the processing layer for processing, and responds to clients. • The processing layer receives the forwarded requests and performs the business logic process, accesses the database, returns the results to its upper layer, and lets the upper layer respond to clients since the upper layer has the GUI interface responsibility. Example : ISO's OSI 7-layered The networks protocols are designed also as layered architecture, except that there are two layered stacks connected by a network link. A client makes a message or service request to the top layer of one stack. Then all subsequent layers perform their supporting services and pass on the data with the request all the way down to the bottom layer. The request with the data is sent to the server side and moves all the way up until it reaches the server application. The response will come in the reverse direction. This works in a request-response mode.
  5. A request to layeri+1 invokes the services provided by the layeri via the interface of layeri. The response may go back to the layeri+1 if the task is completed; otherwise layeri continually invokes services from the layeri-1 below.
  6. Benefits: • Incremental software development based on increasing levels of abstraction. • Enhanced independence of upper layer to lower layer since there is no impact from the changes of lower layer services as long as their interfaces remain unchanged. • Enhanced flexibility: interchangeability and reusability are enhanced due to the separation of the standard interface and its implementation. • Component-based technology is a suitable technology to implement layered architecture; this makes it much easier for the system to allow for plug-and-play of new components. • Promotion of portability: each layer can be an abstract machine (see Section 7.5) deployed independently. Limitations: • Lower runtime performance since a client's request or a response to a client must go through potentially several layers. There are also performance concerns of overhead on the data marshaling and buffering by each layer. • Many applications cannot fit this architecture design. • Breach of interlayer communication may cause deadlocks, and “bridging” may cause tight coupling. • Exceptions and error handling are issues in the layered architecture, since faults in one layer must propagate upward to all calling layers.
  7. A virtual machine is built up on an existing system and provides a virtual abstraction, a set of attributes, and operations. In most cases a virtual machine separates a programming language or application environment from an execution platform. A virtual machine may appear similar to emulation software. well-known example of virtual machine is the Java Virtual Machine (JVM). This is a runtime environment (RTE) that makes the Java programming language platform independent. In other words, the Java bytecode and other Java internal code generated by a compilation system (e.g., javac) can run on any operating system that supports JVM. JVM itself is platform dependent in that the RTE must be developed based on a specific platform. JVM makes Java programs portable, which is one of the most significant advantages over other executable programming languages such as C++. JVM separates the bytecode from the OS machine code. The bytecode is actually in a method format, and each op code can be interpreted by an interpreter. The virtual machine itself is thus implemented as an interpreter.
  8. Benefits: • Portability and machine platform independency • Simplicity of software development • Simulation for disaster working model Limitations: • Slow execution of the interpreter due to the interpreter nature • Additional overhead due to the new layer