SlideShare uma empresa Scribd logo
1 de 19
 Component capabilities and usages are specified by
interfaces.
 A service abstraction, that defines the operations
that the service supports, independently from any
particular implementation
• Signature level : The interfaces describe just the names of the
methods, the types of their arguments, and the return
values—i.e., the signature.
• Semantic level : deals with the “meaning” of operations—i.e,
the behavior.
• Protocol level : deals just with the components’ service
access protocols—i.e., the partial order in which components
expect their methods to be called, and the order in which
they invoke other methods.
Substitutability - refers to the ability of a component to replace
another so that clients of the first one remain unaware of the
change.
This operator defines a partial order between components and is
usually noted by “≤”. With it, given an application and two
components C and D, D ≤ C means that we can replace C with D in
the application with the warranty that the application will
continue working without problems.
At the signature level, substitutability D ≤ C roughly a
matter of checking that all services offered by C are also
offered by D.
At the protocol level, we need to check two main issues:
(a) that all messages accepted by C are also accepted by D,
and that outgoing messages of D are a subset of the
outgoing messages of C;and
(b) we need to test that the relative order among the
incoming and outgoing messages of both components are
consistent.
Finally, semantic level substitutability is known in this context
as “behavioural subtyping”. Here, the behaviour refers to the
specification on how the object methods manipulate the
object attributes, and behavioural types are defined as an
extension of object signature types that associate behaviour
to signatures and to identify subtypes that conform to their
supertypes not only syntactically, but also semantically.
Equivalence Relation
Between interfaces, and say that two interfaces R1 and
R2 are equivalent (R1 ≡ R2) iff C1 ≤ C2 and C2 ≤ C1
Interoperation (noted by “∞”)
At the signature level this means that all exchanged messages are
understood by each other,
and at the protocol level that their protocols match in each role
they share.
At the semantic level, it implies that the behaviour provided
by a component should be accordant to the behaviour expected
from its client component, as has been the basis for the “design by
contract” development discipline.
https://drive.google.com/file/d/0B-
kGQne6icbVZmJSSW9TUzdGUlk/view?usp=sharing
Selecting with multiple interfaces

Mais conteúdo relacionado

Semelhante a Selecting with multiple interfaces

Reflective and Refractive Variables: A Model for Effective and Maintainable A...
Reflective and Refractive Variables: A Model for Effective and Maintainable A...Reflective and Refractive Variables: A Model for Effective and Maintainable A...
Reflective and Refractive Variables: A Model for Effective and Maintainable A...
Vincenzo De Florio
 
Transitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented ArchitecturesTransitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented Architectures
Nathaniel Palmer
 
Transitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented ArchitecturesTransitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented Architectures
Nathaniel Palmer
 
Microservices_vs_SOA
Microservices_vs_SOAMicroservices_vs_SOA
Microservices_vs_SOA
Yakov Liskoff
 

Semelhante a Selecting with multiple interfaces (20)

Service oriented software engineering
Service oriented software engineeringService oriented software engineering
Service oriented software engineering
 
Reflective and Refractive Variables: A Model for Effective and Maintainable A...
Reflective and Refractive Variables: A Model for Effective and Maintainable A...Reflective and Refractive Variables: A Model for Effective and Maintainable A...
Reflective and Refractive Variables: A Model for Effective and Maintainable A...
 
Contract First Modeling Services Using Uml
Contract First Modeling Services Using UmlContract First Modeling Services Using Uml
Contract First Modeling Services Using Uml
 
Introduction to webservices
Introduction to webservicesIntroduction to webservices
Introduction to webservices
 
DIAMETER_EFORT_ENG.pdf
DIAMETER_EFORT_ENG.pdfDIAMETER_EFORT_ENG.pdf
DIAMETER_EFORT_ENG.pdf
 
Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...
Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...
Project - UG - BTech IT - Cluster based Approach for Service Discovery using ...
 
Distributed system architecture
Distributed system architectureDistributed system architecture
Distributed system architecture
 
Web Services Agreement Specification
Web Services Agreement SpecificationWeb Services Agreement Specification
Web Services Agreement Specification
 
SOME INTEROPERABILITY ISSUES IN THE DESIGNING OF WEB SERVICES : CASE STUDY ON...
SOME INTEROPERABILITY ISSUES IN THE DESIGNING OF WEB SERVICES : CASE STUDY ON...SOME INTEROPERABILITY ISSUES IN THE DESIGNING OF WEB SERVICES : CASE STUDY ON...
SOME INTEROPERABILITY ISSUES IN THE DESIGNING OF WEB SERVICES : CASE STUDY ON...
 
service methodology, service description, service characteristics, performanc...
service methodology, service description, service characteristics, performanc...service methodology, service description, service characteristics, performanc...
service methodology, service description, service characteristics, performanc...
 
What kinds of languages can agents use to communicate?
What kinds of languages can agents use to communicate?What kinds of languages can agents use to communicate?
What kinds of languages can agents use to communicate?
 
Transitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented ArchitecturesTransitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented Architectures
 
Transitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented ArchitecturesTransitioning Enterprise Architectures to Service Oriented Architectures
Transitioning Enterprise Architectures to Service Oriented Architectures
 
Dynamic Interface Adaptability in Service Oriented Software
Dynamic Interface Adaptability in Service Oriented SoftwareDynamic Interface Adaptability in Service Oriented Software
Dynamic Interface Adaptability in Service Oriented Software
 
Lecture 3 - Services
Lecture 3 - ServicesLecture 3 - Services
Lecture 3 - Services
 
Microservices_vs_SOA
Microservices_vs_SOAMicroservices_vs_SOA
Microservices_vs_SOA
 
CHP-4.pptx
CHP-4.pptxCHP-4.pptx
CHP-4.pptx
 
Program and Network Properties
Program and Network PropertiesProgram and Network Properties
Program and Network Properties
 
Unit iii for PG PAWSN
Unit iii for PG PAWSNUnit iii for PG PAWSN
Unit iii for PG PAWSN
 
An Operating Guideline Approach To The SOA
An Operating Guideline Approach To The SOAAn Operating Guideline Approach To The SOA
An Operating Guideline Approach To The SOA
 

Mais de Saransh Garg

Technical non-technical-requirement-of-cots-selection
Technical non-technical-requirement-of-cots-selectionTechnical non-technical-requirement-of-cots-selection
Technical non-technical-requirement-of-cots-selection
Saransh Garg
 
Selecting cots vendor in cbse process
Selecting cots vendor in cbse processSelecting cots vendor in cbse process
Selecting cots vendor in cbse process
Saransh Garg
 
Predicting system trustworthyness
Predicting system trustworthynessPredicting system trustworthyness
Predicting system trustworthyness
Saransh Garg
 
Koala component model (1)
Koala component model (1)Koala component model (1)
Koala component model (1)
Saransh Garg
 
Integration in component based technology
Integration in component based technologyIntegration in component based technology
Integration in component based technology
Saransh Garg
 
Embedded system.pptx
Embedded system.pptxEmbedded system.pptx
Embedded system.pptx
Saransh Garg
 
Composition of cots
Composition of cotsComposition of cots
Composition of cots
Saransh Garg
 
Components in real time systems
Components in real time systemsComponents in real time systems
Components in real time systems
Saransh Garg
 
Component object model and
Component object model andComponent object model and
Component object model and
Saransh Garg
 
Component based models and technology
Component based models and technologyComponent based models and technology
Component based models and technology
Saransh Garg
 
Cbt component based technology architectures
Cbt   component based technology architecturesCbt   component based technology architectures
Cbt component based technology architectures
Saransh Garg
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component
Saransh Garg
 

Mais de Saransh Garg (18)

Technical non-technical-requirement-of-cots-selection
Technical non-technical-requirement-of-cots-selectionTechnical non-technical-requirement-of-cots-selection
Technical non-technical-requirement-of-cots-selection
 
Selecting cots vendor in cbse process
Selecting cots vendor in cbse processSelecting cots vendor in cbse process
Selecting cots vendor in cbse process
 
Scs.pptx repaired
Scs.pptx repairedScs.pptx repaired
Scs.pptx repaired
 
Repo for cbt
Repo for cbtRepo for cbt
Repo for cbt
 
Rbce
Rbce Rbce
Rbce
 
Predicting system trustworthyness
Predicting system trustworthynessPredicting system trustworthyness
Predicting system trustworthyness
 
Koala component model (1)
Koala component model (1)Koala component model (1)
Koala component model (1)
 
Javabean1
Javabean1Javabean1
Javabean1
 
Integration in component based technology
Integration in component based technologyIntegration in component based technology
Integration in component based technology
 
Embedded system.pptx
Embedded system.pptxEmbedded system.pptx
Embedded system.pptx
 
Cots integration
Cots integrationCots integration
Cots integration
 
Corba model ppt
Corba model pptCorba model ppt
Corba model ppt
 
Composition of cots
Composition of cotsComposition of cots
Composition of cots
 
Components in real time systems
Components in real time systemsComponents in real time systems
Components in real time systems
 
Component object model and
Component object model andComponent object model and
Component object model and
 
Component based models and technology
Component based models and technologyComponent based models and technology
Component based models and technology
 
Cbt component based technology architectures
Cbt   component based technology architecturesCbt   component based technology architectures
Cbt component based technology architectures
 
Architecture support for component
Architecture support for component Architecture support for component
Architecture support for component
 

Último

Orientation Canvas Course Presentation.pdf
Orientation Canvas Course Presentation.pdfOrientation Canvas Course Presentation.pdf
Orientation Canvas Course Presentation.pdf
Elizabeth Walsh
 
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lessonQUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
httgc7rh9c
 
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes GuàrdiaPersonalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
EADTU
 
SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code Examples
Peter Brusilovsky
 

Último (20)

Orientation Canvas Course Presentation.pdf
Orientation Canvas Course Presentation.pdfOrientation Canvas Course Presentation.pdf
Orientation Canvas Course Presentation.pdf
 
How to Send Pro Forma Invoice to Your Customers in Odoo 17
How to Send Pro Forma Invoice to Your Customers in Odoo 17How to Send Pro Forma Invoice to Your Customers in Odoo 17
How to Send Pro Forma Invoice to Your Customers in Odoo 17
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
 
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
TỔNG HỢP HƠN 100 ĐỀ THI THỬ TỐT NGHIỆP THPT TOÁN 2024 - TỪ CÁC TRƯỜNG, TRƯỜNG...
 
Observing-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptxObserving-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptx
 
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUMDEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
 
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
 
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lessonQUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
QUATER-1-PE-HEALTH-LC2- this is just a sample of unpacked lesson
 
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes GuàrdiaPersonalisation of Education by AI and Big Data - Lourdes Guàrdia
Personalisation of Education by AI and Big Data - Lourdes Guàrdia
 
SPLICE Working Group: Reusable Code Examples
SPLICE Working Group:Reusable Code ExamplesSPLICE Working Group:Reusable Code Examples
SPLICE Working Group: Reusable Code Examples
 
Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17
 
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptxMichaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
Michaelis Menten Equation and Estimation Of Vmax and Tmax.pptx
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
e-Sealing at EADTU by Kamakshi Rajagopal
e-Sealing at EADTU by Kamakshi Rajagopale-Sealing at EADTU by Kamakshi Rajagopal
e-Sealing at EADTU by Kamakshi Rajagopal
 
PUBLIC FINANCE AND TAXATION COURSE-1-4.pdf
PUBLIC FINANCE AND TAXATION COURSE-1-4.pdfPUBLIC FINANCE AND TAXATION COURSE-1-4.pdf
PUBLIC FINANCE AND TAXATION COURSE-1-4.pdf
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
What is 3 Way Matching Process in Odoo 17.pptx
What is 3 Way Matching Process in Odoo 17.pptxWhat is 3 Way Matching Process in Odoo 17.pptx
What is 3 Way Matching Process in Odoo 17.pptx
 

Selecting with multiple interfaces

  • 1.
  • 2.  Component capabilities and usages are specified by interfaces.  A service abstraction, that defines the operations that the service supports, independently from any particular implementation
  • 3. • Signature level : The interfaces describe just the names of the methods, the types of their arguments, and the return values—i.e., the signature. • Semantic level : deals with the “meaning” of operations—i.e, the behavior. • Protocol level : deals just with the components’ service access protocols—i.e., the partial order in which components expect their methods to be called, and the order in which they invoke other methods.
  • 4. Substitutability - refers to the ability of a component to replace another so that clients of the first one remain unaware of the change. This operator defines a partial order between components and is usually noted by “≤”. With it, given an application and two components C and D, D ≤ C means that we can replace C with D in the application with the warranty that the application will continue working without problems.
  • 5. At the signature level, substitutability D ≤ C roughly a matter of checking that all services offered by C are also offered by D. At the protocol level, we need to check two main issues: (a) that all messages accepted by C are also accepted by D, and that outgoing messages of D are a subset of the outgoing messages of C;and (b) we need to test that the relative order among the incoming and outgoing messages of both components are consistent. Finally, semantic level substitutability is known in this context as “behavioural subtyping”. Here, the behaviour refers to the specification on how the object methods manipulate the object attributes, and behavioural types are defined as an extension of object signature types that associate behaviour to signatures and to identify subtypes that conform to their supertypes not only syntactically, but also semantically.
  • 6. Equivalence Relation Between interfaces, and say that two interfaces R1 and R2 are equivalent (R1 ≡ R2) iff C1 ≤ C2 and C2 ≤ C1
  • 7. Interoperation (noted by “∞”) At the signature level this means that all exchanged messages are understood by each other, and at the protocol level that their protocols match in each role they share. At the semantic level, it implies that the behaviour provided by a component should be accordant to the behaviour expected from its client component, as has been the basis for the “design by contract” development discipline.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.