SlideShare una empresa de Scribd logo
1 de 12
Architectural styles and patterns
1
Dr. Himanshu Hora
SRMS College of Engineering & Technology, Bareilly
INDIA
2
 Architecture is a high level description of a solution to a
problem
 architecture (high level design) includes-
1. Main Components
Functionalities and properties of components
2. Major Relations
Components collaborating among the components
What is architecture ?
3
 An architectural style, sometimes called an architectural
pattern
 It provides an abstract framework for a family of
systems
 An architectural style improves partitioning and
promotes design reuse by providing solutions to
frequently recurring problems
What is Architectural Style ?
4
 An Architectural Style defines a set of rules that
describe:
- The way in which the components interact
CATEGORY ARCHITECTURAL STYLE
Communication Service-oriented architecture(SOA),
Message Bus
Deployment Client/server, N-tier, 3-tier
Domain Domain driven design
Structure Component Based ,Object -Oriented,
Layered Architecture
What is Architectural Style ?
5
• architecture styles and patterns as sets of
principles that shape an application
• some architectural styles describe deployment
patterns, some describe structure and design
issues, and others describe communication
factors
What is Architectural Style ?
The Definition of Architecture Styles
6
R. N. Taylor, N. Medvidović and E. M. Dashofy,
Software Architecture: Foundations, Theory and Practice. Wiley, 2009.
“An architectural style is a named collection of
architectural design decisions that (1) are applicable
in a given development context, (2) constrain
architectural design decisions that are specific to a
particular system within that context, and (3) elicit
beneficial qualities in each resulting system.”
7
 An architectural pattern is a general, reusable
solution to a commonly occurring problem in
software architecture within a given context
 Architectural patterns are often documented as
software design pattern
What is Architectural Patterns?
8
 An architecture pattern is determined by-
1)A set of element types(such as data repository or a
component)
2)A topological layout of the element indicating their
interrelationships
3)A set of semantic constraints(e.g. filters in a pipe-and-
filter style )
4)A set of interaction mechanisms that shows how the
elements coordinate through the allowed topology.
What is Architectural Patterns?
Figure- A small catalog of architectural patterns organized by is-a-relation
10
R. N. Taylor, N. Medvidović and E. M. Dashofy,
Software architecture: Foundations, Theory and Practice. Wiley, 2009.
"An architectural pattern is a named
collection of architectural design decisions
that are applicable to a recurring design
problem, parameterized to account for
different software development contexts in
which that problem appears “
The Definition of Architecture pattern
11
The main difference is that a pattern can be
seen as a solution to a problem, while a style is
more general and does not require a problem to
solve for its appearance.
Difference between Pattern and Styles
12
Thank You
Dr. Himanshu Hora
SRMS College of Engineering & Technology, Bareilly
INDIA

Más contenido relacionado

La actualidad más candente

2- THE CHANGING NATURE OF SOFTWARE.pdf
2- THE CHANGING NATURE OF SOFTWARE.pdf2- THE CHANGING NATURE OF SOFTWARE.pdf
2- THE CHANGING NATURE OF SOFTWARE.pdfbcanawakadalcollege
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metricsSHREEHARI WADAWADAGI
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7koolkampus
 
Model Based Software Architectures
Model Based Software ArchitecturesModel Based Software Architectures
Model Based Software ArchitecturesMunazza-Mah-Jabeen
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologiesAmith Tiwari
 
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction ModelingHemant Sharma
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)REHMAT ULLAH
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testingHaris Jamil
 
Architectural styles and patterns
Architectural styles and patternsArchitectural styles and patterns
Architectural styles and patternsdeep sharma
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML DiagramsManish Kumar
 
SE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelSE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelAmr E. Mohamed
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factorsNancyBeaulah_R
 
Advanced Structural Modeling
Advanced Structural ModelingAdvanced Structural Modeling
Advanced Structural ModelingAMITJain879
 
Basic Structural Modeling
Basic Structural ModelingBasic Structural Modeling
Basic Structural ModelingAMITJain879
 
Design Pattern in Software Engineering
Design Pattern in Software EngineeringDesign Pattern in Software Engineering
Design Pattern in Software EngineeringManish Kumar
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRupesh Vaishnav
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Bilal Hassan
 

La actualidad más candente (20)

Software design
Software designSoftware design
Software design
 
Software design
Software designSoftware design
Software design
 
2- THE CHANGING NATURE OF SOFTWARE.pdf
2- THE CHANGING NATURE OF SOFTWARE.pdf2- THE CHANGING NATURE OF SOFTWARE.pdf
2- THE CHANGING NATURE OF SOFTWARE.pdf
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metrics
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Model Based Software Architectures
Model Based Software ArchitecturesModel Based Software Architectures
Model Based Software Architectures
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
 
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction Modeling
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
Architectural styles and patterns
Architectural styles and patternsArchitectural styles and patterns
Architectural styles and patterns
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 
SE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context ModelSE_Lec 05_System Modelling and Context Model
SE_Lec 05_System Modelling and Context Model
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Advanced Structural Modeling
Advanced Structural ModelingAdvanced Structural Modeling
Advanced Structural Modeling
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Basic Structural Modeling
Basic Structural ModelingBasic Structural Modeling
Basic Structural Modeling
 
Design Pattern in Software Engineering
Design Pattern in Software EngineeringDesign Pattern in Software Engineering
Design Pattern in Software Engineering
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering
 

Similar a Architectural styles and patterns

A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESijfcstjournal
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESijfcstjournal
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESADEIJ Journal
 
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 Architecture
Software ArchitectureSoftware Architecture
Software ArchitectureVikas Dhyani
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notesSudarshan Dhondaley
 
Reverse Engineering for Documenting Software Architectures, a Literature Review
Reverse Engineering for Documenting Software Architectures, a Literature ReviewReverse Engineering for Documenting Software Architectures, a Literature Review
Reverse Engineering for Documenting Software Architectures, a Literature ReviewEditor IJCATR
 
Architectural Styles And The Design Of Network-Based Software Architectures
Architectural Styles And The Design Of Network-Based Software ArchitecturesArchitectural Styles And The Design Of Network-Based Software Architectures
Architectural Styles And The Design Of Network-Based Software ArchitecturesAndrea Porter
 
09 introduction to_modeling
09 introduction to_modeling09 introduction to_modeling
09 introduction to_modelingMajong DevJfu
 
Lecture-2-Architectural_Concepts.pdf
Lecture-2-Architectural_Concepts.pdfLecture-2-Architectural_Concepts.pdf
Lecture-2-Architectural_Concepts.pdfAkilaGamage2
 
Software Architecture
Software Architecture Software Architecture
Software Architecture ssuser9d62d6
 
Se toolkit v.1.2.6
Se toolkit v.1.2.6Se toolkit v.1.2.6
Se toolkit v.1.2.6Tim Gordon
 
Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...38aartidhage
 
Cse 6007 fall2012
Cse 6007 fall2012Cse 6007 fall2012
Cse 6007 fall2012rhrashel
 

Similar a Architectural styles and patterns (20)

A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
 
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
 
Class notes
Class notesClass notes
Class notes
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
 
3 analysis and design overview
3 analysis and design overview3 analysis and design overview
3 analysis and design overview
 
03 basic concepts
03 basic concepts03 basic concepts
03 basic concepts
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
 
software architecture
software architecturesoftware architecture
software architecture
 
Reverse Engineering for Documenting Software Architectures, a Literature Review
Reverse Engineering for Documenting Software Architectures, a Literature ReviewReverse Engineering for Documenting Software Architectures, a Literature Review
Reverse Engineering for Documenting Software Architectures, a Literature Review
 
Patterns
PatternsPatterns
Patterns
 
Architectural Styles And The Design Of Network-Based Software Architectures
Architectural Styles And The Design Of Network-Based Software ArchitecturesArchitectural Styles And The Design Of Network-Based Software Architectures
Architectural Styles And The Design Of Network-Based Software Architectures
 
09 introduction to_modeling
09 introduction to_modeling09 introduction to_modeling
09 introduction to_modeling
 
Lecture-2-Architectural_Concepts.pdf
Lecture-2-Architectural_Concepts.pdfLecture-2-Architectural_Concepts.pdf
Lecture-2-Architectural_Concepts.pdf
 
Software Architecture
Software Architecture Software Architecture
Software Architecture
 
Se toolkit v.1.2.6
Se toolkit v.1.2.6Se toolkit v.1.2.6
Se toolkit v.1.2.6
 
Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...
 
Cse 6007 fall2012
Cse 6007 fall2012Cse 6007 fall2012
Cse 6007 fall2012
 

Más de Himanshu

Structural patterns
Structural patternsStructural patterns
Structural patternsHimanshu
 
Software product line
Software product lineSoftware product line
Software product lineHimanshu
 
Shared information systems
Shared information systemsShared information systems
Shared information systemsHimanshu
 
Design Pattern
Design PatternDesign Pattern
Design PatternHimanshu
 
Creational pattern
Creational patternCreational pattern
Creational patternHimanshu
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture ReviewHimanshu
 
Reliability and its principals
Reliability and its principalsReliability and its principals
Reliability and its principalsHimanshu
 
Structural and functional testing
Structural and functional testingStructural and functional testing
Structural and functional testingHimanshu
 
White box black box & gray box testing
White box black box & gray box testingWhite box black box & gray box testing
White box black box & gray box testingHimanshu
 
Pareto analysis
Pareto analysisPareto analysis
Pareto analysisHimanshu
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runnerHimanshu
 
Crud and jad
Crud and jadCrud and jad
Crud and jadHimanshu
 
Junit and cactus
Junit and cactusJunit and cactus
Junit and cactusHimanshu
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testingHimanshu
 
Testing a data warehouses
Testing a data warehousesTesting a data warehouses
Testing a data warehousesHimanshu
 
Software testing tools and its taxonomy
Software testing tools and its taxonomySoftware testing tools and its taxonomy
Software testing tools and its taxonomyHimanshu
 
Software reliability engineering process
Software reliability engineering processSoftware reliability engineering process
Software reliability engineering processHimanshu
 
Software reliability growth model
Software reliability growth modelSoftware reliability growth model
Software reliability growth modelHimanshu
 
Software reliability tools and common software errors
Software reliability tools and common software errorsSoftware reliability tools and common software errors
Software reliability tools and common software errorsHimanshu
 

Más de Himanshu (20)

Structural patterns
Structural patternsStructural patterns
Structural patterns
 
Software product line
Software product lineSoftware product line
Software product line
 
Shared information systems
Shared information systemsShared information systems
Shared information systems
 
Saam
SaamSaam
Saam
 
Design Pattern
Design PatternDesign Pattern
Design Pattern
 
Creational pattern
Creational patternCreational pattern
Creational pattern
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
 
Reliability and its principals
Reliability and its principalsReliability and its principals
Reliability and its principals
 
Structural and functional testing
Structural and functional testingStructural and functional testing
Structural and functional testing
 
White box black box & gray box testing
White box black box & gray box testingWhite box black box & gray box testing
White box black box & gray box testing
 
Pareto analysis
Pareto analysisPareto analysis
Pareto analysis
 
Load runner & win runner
Load runner & win runnerLoad runner & win runner
Load runner & win runner
 
Crud and jad
Crud and jadCrud and jad
Crud and jad
 
Junit and cactus
Junit and cactusJunit and cactus
Junit and cactus
 
Risk based testing and random testing
Risk based testing and random testingRisk based testing and random testing
Risk based testing and random testing
 
Testing a data warehouses
Testing a data warehousesTesting a data warehouses
Testing a data warehouses
 
Software testing tools and its taxonomy
Software testing tools and its taxonomySoftware testing tools and its taxonomy
Software testing tools and its taxonomy
 
Software reliability engineering process
Software reliability engineering processSoftware reliability engineering process
Software reliability engineering process
 
Software reliability growth model
Software reliability growth modelSoftware reliability growth model
Software reliability growth model
 
Software reliability tools and common software errors
Software reliability tools and common software errorsSoftware reliability tools and common software errors
Software reliability tools and common software errors
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 

Último (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

Architectural styles and patterns

  • 1. Architectural styles and patterns 1 Dr. Himanshu Hora SRMS College of Engineering & Technology, Bareilly INDIA
  • 2. 2  Architecture is a high level description of a solution to a problem  architecture (high level design) includes- 1. Main Components Functionalities and properties of components 2. Major Relations Components collaborating among the components What is architecture ?
  • 3. 3  An architectural style, sometimes called an architectural pattern  It provides an abstract framework for a family of systems  An architectural style improves partitioning and promotes design reuse by providing solutions to frequently recurring problems What is Architectural Style ?
  • 4. 4  An Architectural Style defines a set of rules that describe: - The way in which the components interact CATEGORY ARCHITECTURAL STYLE Communication Service-oriented architecture(SOA), Message Bus Deployment Client/server, N-tier, 3-tier Domain Domain driven design Structure Component Based ,Object -Oriented, Layered Architecture What is Architectural Style ?
  • 5. 5 • architecture styles and patterns as sets of principles that shape an application • some architectural styles describe deployment patterns, some describe structure and design issues, and others describe communication factors What is Architectural Style ?
  • 6. The Definition of Architecture Styles 6 R. N. Taylor, N. Medvidović and E. M. Dashofy, Software Architecture: Foundations, Theory and Practice. Wiley, 2009. “An architectural style is a named collection of architectural design decisions that (1) are applicable in a given development context, (2) constrain architectural design decisions that are specific to a particular system within that context, and (3) elicit beneficial qualities in each resulting system.”
  • 7. 7  An architectural pattern is a general, reusable solution to a commonly occurring problem in software architecture within a given context  Architectural patterns are often documented as software design pattern What is Architectural Patterns?
  • 8. 8  An architecture pattern is determined by- 1)A set of element types(such as data repository or a component) 2)A topological layout of the element indicating their interrelationships 3)A set of semantic constraints(e.g. filters in a pipe-and- filter style ) 4)A set of interaction mechanisms that shows how the elements coordinate through the allowed topology. What is Architectural Patterns?
  • 9. Figure- A small catalog of architectural patterns organized by is-a-relation
  • 10. 10 R. N. Taylor, N. Medvidović and E. M. Dashofy, Software architecture: Foundations, Theory and Practice. Wiley, 2009. "An architectural pattern is a named collection of architectural design decisions that are applicable to a recurring design problem, parameterized to account for different software development contexts in which that problem appears “ The Definition of Architecture pattern
  • 11. 11 The main difference is that a pattern can be seen as a solution to a problem, while a style is more general and does not require a problem to solve for its appearance. Difference between Pattern and Styles
  • 12. 12 Thank You Dr. Himanshu Hora SRMS College of Engineering & Technology, Bareilly INDIA