SlideShare uma empresa Scribd logo
1 de 15
Building Systems from
Off-the-Shelf Components
Dr. Himanshu Hora
SRMS College of Engg. & Tech., Bareilly
INDIA
Building Systems from Off-the-Shelf
Components:
• Systems are being constructed with more and more
off-the-shelf components, for economic reasons and
because the expertise needed in many technical
areas is so specialized.
• Quality attributes can be maintained in a system,
even if that system is largely integrated from the-off-
shelf components whose design and interaction
mechanisms are not under the architecture.
Cont…
• The requirements process needs to be more flexible,
allowing what is available in the marketplace to
modify the requirements to provide a better overall
business solution.
• For systems built from off-the-shelf(OTS)
components, component selection involves a
discovery process, which seeks to identify assemblies
of compatible components,.
• Understand how they can achieve the desired quality
attributes, and deciding whether they can be
integrated the system being built.
Architectural Mismatch
• Not all components work together- even if they are
commercial products that claim compatibility.
• Components that were not developed specifically for
your system may not meet all of your requirement.
• Architectural mismatch usually shows up at system
integration time-the system will not compile, will not
link, or will not run.
Cont…
• What can you do about interface mismatch? Besides
changing your requirements so that yesterday’s bug
is today’s feature there are three things:
I. Avoid it by carefully specifying and inspecting the
components for your systems.
II. Detect those case you have not avoided by careful
qualification of the components.
III. Repair those cases you have detected by adapting
the components.
Techniques For Repairing Interface
Mismatch
• The alternative to changing the code of one or both
mismatched components is to insert code that
reconciles their interaction in a way that fixes the
mismatch.
• There are three classes of repair code:
I. Wrappers
II. Bridges
III. Mediators
Cont..
 Wrappers:
• The term wrapper implies a form of encapsulation.
• We can interpret interface translation as including:
• Translating an element of a component interface into
an alternative element.
• Hiding an element of a component interface.
• Preserving an element of a component’s base
interface without change.
Cont…
 Bridges:
• A bridge translates some requires assumptions of
one arbitrary component to some provides
assumptions of another.
• The key difference between a bridge and wrapper is
that the repair code constituting a bridge is
independent of any particular component.
Cont…
 Mediators:
• Mediators exhibit properties of both bridge and
wrappers.
• The major distinction between bridges and
mediators is that incorporate a planning function.
Techniques For Detecting Interface
Mismatch
• Discovering all of the requires assumptions of the
components for each of the services that will be
used by the system.
• Making sure that each requires assumption is
satisfied by some provides assumption in the system.
Techniques For Avoiding Interface
Mismatch
• One technique for avoiding interface mismatch is to
undertake, from the earliest phases of design a
disciplined approach to specifying as many
assumptions about a component’s interface as
feasible.
• Assumptions stated assertions about the sufficiency
of the services provided by each module and the
implement ability of each service by identifying
resources necessary to the module.
Model problem workflow
• An illustration of the model problem workflow is
shown in Figure. The process consists of the
following six steps that can be executed in sequence:
I. The architect and the engineers identify a design
question.
II. The architect and the engineers define the starting
evaluation criteria.
Cont…
III. The architect and the engineers define the
implementation constraints.
IV. The engineers produce a model solution situated in
the design context.
V. The engineers identify ending evaluation criteria.
VI. The architect performs an evaluation of the model
solution against the ending criteria.
Thank You
Dr. Himanshu Hora
SRMS College of Engg. & Tech., Bareilly
INDIA

Mais conteúdo relacionado

Mais procurados

Software architecture model
Software architecture modelSoftware architecture model
Software architecture modelEmmanuel Fuchs
 
Architecture business cycle ( abc )
Architecture business cycle ( abc )Architecture business cycle ( abc )
Architecture business cycle ( abc )Dr Reeja S R
 
Abc cycle in sw architecture ashish
Abc cycle  in sw architecture ashishAbc cycle  in sw architecture ashish
Abc cycle in sw architecture ashishAshish Agrawal
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural designdevika g
 
Software Architecture Patterns
Software Architecture PatternsSoftware Architecture Patterns
Software Architecture PatternsAssaf Gannon
 
Evolution of Our Software Architecture
Evolution of Our Software ArchitectureEvolution of Our Software Architecture
Evolution of Our Software ArchitecturePaul Lam
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategiesSHREEHARI WADAWADAGI
 
Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11koolkampus
 
Software Architecture Design Decisions
Software Architecture Design DecisionsSoftware Architecture Design Decisions
Software Architecture Design DecisionsAfaq Mansoor Khan
 
Architectural styles and patterns
Architectural styles and patternsArchitectural styles and patterns
Architectural styles and patternsHimanshu
 
Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architectureHimanshu
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notesSudarshan Dhondaley
 

Mais procurados (20)

Software architecture model
Software architecture modelSoftware architecture model
Software architecture model
 
Architecture business cycle ( abc )
Architecture business cycle ( abc )Architecture business cycle ( abc )
Architecture business cycle ( abc )
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Slides chapter 10
Slides chapter 10Slides chapter 10
Slides chapter 10
 
Abc cycle in sw architecture ashish
Abc cycle  in sw architecture ashishAbc cycle  in sw architecture ashish
Abc cycle in sw architecture ashish
 
Component level design
Component   level designComponent   level design
Component level design
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural design
 
Software design
Software designSoftware design
Software design
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Architecture evaluation
Architecture evaluationArchitecture evaluation
Architecture evaluation
 
Software Architecture Patterns
Software Architecture PatternsSoftware Architecture Patterns
Software Architecture Patterns
 
Evolution of Our Software Architecture
Evolution of Our Software ArchitectureEvolution of Our Software Architecture
Evolution of Our Software Architecture
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11
 
Software Architecture Design Decisions
Software Architecture Design DecisionsSoftware Architecture Design Decisions
Software Architecture Design Decisions
 
Architectural styles and patterns
Architectural styles and patternsArchitectural styles and patterns
Architectural styles and patterns
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
Documenting software architecture
Documenting software architectureDocumenting software architecture
Documenting software architecture
 
Software architecture Unit 1 notes
Software architecture Unit 1 notesSoftware architecture Unit 1 notes
Software architecture Unit 1 notes
 
Ch16 component based software engineering
Ch16 component based software engineeringCh16 component based software engineering
Ch16 component based software engineering
 

Destaque

Architecture Review
Architecture ReviewArchitecture Review
Architecture ReviewHimanshu
 
Cost Benefit Analysis Method
Cost Benefit Analysis MethodCost Benefit Analysis Method
Cost Benefit Analysis MethodHimanshu
 
Design pattern & categories
Design pattern & categoriesDesign pattern & categories
Design pattern & categoriesHimanshu
 
Software Product Line
Software Product LineSoftware Product Line
Software Product LineHimanshu
 
Business analysis in data warehousing
Business analysis in data warehousingBusiness analysis in data warehousing
Business analysis in data warehousingHimanshu
 
Importance of software architecture
Importance of software architectureImportance of software architecture
Importance of software architectureHimanshu
 
Architecture business cycle
Architecture business cycleArchitecture business cycle
Architecture business cycleHimanshu
 

Destaque (9)

Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
 
Cost Benefit Analysis Method
Cost Benefit Analysis MethodCost Benefit Analysis Method
Cost Benefit Analysis Method
 
Design pattern & categories
Design pattern & categoriesDesign pattern & categories
Design pattern & categories
 
Software Product Line
Software Product LineSoftware Product Line
Software Product Line
 
Business analysis in data warehousing
Business analysis in data warehousingBusiness analysis in data warehousing
Business analysis in data warehousing
 
Abc
AbcAbc
Abc
 
Saam
SaamSaam
Saam
 
Importance of software architecture
Importance of software architectureImportance of software architecture
Importance of software architecture
 
Architecture business cycle
Architecture business cycleArchitecture business cycle
Architecture business cycle
 

Semelhante a Building systems from off the shelf components

Component based development | what, why and how
Component based development | what, why and howComponent based development | what, why and how
Component based development | what, why and howRakesh Kumar Jha
 
Software archiecture lecture08
Software archiecture   lecture08Software archiecture   lecture08
Software archiecture lecture08Luktalja
 
Presentation on software construction
Presentation on software constructionPresentation on software construction
Presentation on software constructionBanduChalise
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process ModelsEducation Front
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component Saransh Garg
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metricsSHREEHARI WADAWADAGI
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitectureABDEL RAHMAN KARIM
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principlessaurabhshertukde
 
Component-based Software Engineering
Component-based Software EngineeringComponent-based Software Engineering
Component-based Software EngineeringSalman Khan
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxKarthigaiSelviS3
 
Unit 7 verification & validation
Unit 7 verification & validationUnit 7 verification & validation
Unit 7 verification & validationraksharao
 

Semelhante a Building systems from off the shelf components (20)

Component based development | what, why and how
Component based development | what, why and howComponent based development | what, why and how
Component based development | what, why and how
 
Software archiecture lecture08
Software archiecture   lecture08Software archiecture   lecture08
Software archiecture lecture08
 
Unit2 2
Unit2 2Unit2 2
Unit2 2
 
Chapter Three.pptx
Chapter Three.pptxChapter Three.pptx
Chapter Three.pptx
 
Patterns
PatternsPatterns
Patterns
 
Dependency Injection
Dependency InjectionDependency Injection
Dependency Injection
 
Unit 2
Unit 2Unit 2
Unit 2
 
Presentation on software construction
Presentation on software constructionPresentation on software construction
Presentation on software construction
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process Models
 
UNIT-II MMB.pptx
UNIT-II MMB.pptxUNIT-II MMB.pptx
UNIT-II MMB.pptx
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metrics
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitecture
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principles
 
Component-based Software Engineering
Component-based Software EngineeringComponent-based Software Engineering
Component-based Software Engineering
 
Ch01
Ch01Ch01
Ch01
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
 
Architectural design of software
Architectural  design of softwareArchitectural  design of software
Architectural design of software
 
Unit 7 verification & validation
Unit 7 verification & validationUnit 7 verification & validation
Unit 7 verification & validation
 
unit 3 Design 1
unit 3 Design 1unit 3 Design 1
unit 3 Design 1
 

Mais 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
 

Mais 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

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 

Último (20)

"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 

Building systems from off the shelf components

  • 1. Building Systems from Off-the-Shelf Components Dr. Himanshu Hora SRMS College of Engg. & Tech., Bareilly INDIA
  • 2. Building Systems from Off-the-Shelf Components: • Systems are being constructed with more and more off-the-shelf components, for economic reasons and because the expertise needed in many technical areas is so specialized. • Quality attributes can be maintained in a system, even if that system is largely integrated from the-off- shelf components whose design and interaction mechanisms are not under the architecture.
  • 3. Cont… • The requirements process needs to be more flexible, allowing what is available in the marketplace to modify the requirements to provide a better overall business solution. • For systems built from off-the-shelf(OTS) components, component selection involves a discovery process, which seeks to identify assemblies of compatible components,. • Understand how they can achieve the desired quality attributes, and deciding whether they can be integrated the system being built.
  • 4. Architectural Mismatch • Not all components work together- even if they are commercial products that claim compatibility. • Components that were not developed specifically for your system may not meet all of your requirement. • Architectural mismatch usually shows up at system integration time-the system will not compile, will not link, or will not run.
  • 5. Cont… • What can you do about interface mismatch? Besides changing your requirements so that yesterday’s bug is today’s feature there are three things: I. Avoid it by carefully specifying and inspecting the components for your systems. II. Detect those case you have not avoided by careful qualification of the components. III. Repair those cases you have detected by adapting the components.
  • 6. Techniques For Repairing Interface Mismatch • The alternative to changing the code of one or both mismatched components is to insert code that reconciles their interaction in a way that fixes the mismatch. • There are three classes of repair code: I. Wrappers II. Bridges III. Mediators
  • 7. Cont..  Wrappers: • The term wrapper implies a form of encapsulation. • We can interpret interface translation as including: • Translating an element of a component interface into an alternative element. • Hiding an element of a component interface. • Preserving an element of a component’s base interface without change.
  • 8. Cont…  Bridges: • A bridge translates some requires assumptions of one arbitrary component to some provides assumptions of another. • The key difference between a bridge and wrapper is that the repair code constituting a bridge is independent of any particular component.
  • 9. Cont…  Mediators: • Mediators exhibit properties of both bridge and wrappers. • The major distinction between bridges and mediators is that incorporate a planning function.
  • 10. Techniques For Detecting Interface Mismatch • Discovering all of the requires assumptions of the components for each of the services that will be used by the system. • Making sure that each requires assumption is satisfied by some provides assumption in the system.
  • 11. Techniques For Avoiding Interface Mismatch • One technique for avoiding interface mismatch is to undertake, from the earliest phases of design a disciplined approach to specifying as many assumptions about a component’s interface as feasible. • Assumptions stated assertions about the sufficiency of the services provided by each module and the implement ability of each service by identifying resources necessary to the module.
  • 12. Model problem workflow • An illustration of the model problem workflow is shown in Figure. The process consists of the following six steps that can be executed in sequence: I. The architect and the engineers identify a design question. II. The architect and the engineers define the starting evaluation criteria.
  • 13. Cont… III. The architect and the engineers define the implementation constraints. IV. The engineers produce a model solution situated in the design context. V. The engineers identify ending evaluation criteria. VI. The architect performs an evaluation of the model solution against the ending criteria.
  • 14.
  • 15. Thank You Dr. Himanshu Hora SRMS College of Engg. & Tech., Bareilly INDIA