Presentation is loading. Please wait.

Presentation is loading. Please wait.

Page 1 Building Reliable Component-based Systems Ivica Crnkovic Chapter 9 Component Composition and Integration.

Similar presentations


Presentation on theme: "Page 1 Building Reliable Component-based Systems Ivica Crnkovic Chapter 9 Component Composition and Integration."— Presentation transcript:

1 Page 1 Building Reliable Component-based Systems Ivica Crnkovic Chapter 9 Component Composition and Integration

2 Page 2 Building Reliable Component-based Systems Ivica Crnkovic Overwiev  Component Integration  From Integration to Composition  Predictable Assembly from Certifiable Components  Prediction-Enabled Component Technology (PECT)  Architecture-based Analysis  Component Certification  Architectural Styles and Component Models

3 Page 3 Building Reliable Component-based Systems Ivica Crnkovic Component Integration q Integrating components can be illustrated as a mechanical process of “wiring” components together to form assemblies. q Standardization in form of component models like EJB, CORBA and COM. q Still Difficult to make components play well together.

4 Page 4 Building Reliable Component-based Systems Ivica Crnkovic Component Integration (2) Architectural mismatch stems from mismatched assumptions a reusable part makes about the structure of the system it is to be part of. These assumptions often conflict with the assumptions of other parts and are almost always implicit, making them extremely difficult to analyze before building the system.” D. Garlan, R. Allen and J. Ockerbloom. “Architectural Mismatch: Why Reuse is So Hard,” IEEE Software, 12(6):17-26, November 1995

5 Page 5 Building Reliable Component-based Systems Ivica Crnkovic Component Integration (3)  2 Cases  D. Garlan, R. Allen and J. Ockerbloom “Architectural Mismatch: Why Reuse is So Hard”  AESOP  P. Inverardi, A.L. Wolf, and D. Yankelevich, Static Checking of System Behaviors Using Derived Component Assumptions  Compressing proxy

6 Page 6 Building Reliable Component-based Systems Ivica Crnkovic Component Integration (4) q four classes of structural assumptions l The nature of components (infrastructure, control model, and data model) l The nature of connectors (protocols and data models) l The architecture of the assemblies (constraints on interactions) l The run-time construction process (order of instantiations).

7 Page 7 Building Reliable Component-based Systems Ivica Crnkovic Component Integration (5) Filter Pseudo Filter (Adaptor) gzip 1 23 4 Compressing Proxy Process Component Channel Function call interface UNIX pipe interface

8 Page 8 Building Reliable Component-based Systems Ivica Crnkovic Component Integration (6) q Formal architectural description and analysis to uncover what they call “behavioral mismatch” q Not component mismatch q Components must express assumptions made about it’s environment such as data formats or buffer sizes q Careful analysis of the assumptions components make about the context in which they are to be used can help prevent design errors and result in building the right product faster

9 Page 9 Building Reliable Component-based Systems Ivica Crnkovic From Integration to Composition q All assemblies are potential subsystem q Predicting the emergent behavior of assemblies q The result of component composition is a component assembly which can be used as a part of a larger composition q Composition goes beyond integration by allowing prediction of the emergent behavior of assemblies

10 Page 10 Building Reliable Component-based Systems Ivica Crnkovic Predictable Assembly from Certifiable Components  What types of system quality attributes are developers interested in predicting? q What types of analysis techniques support reasoning about these quality attributes, and what component property values do they require as input parameters? q How are these component properties specified, measured, and certified?

11 Page 11 Building Reliable Component-based Systems Ivica Crnkovic Prediction-Enabled Component Technology q A prediction-enabled component technology consists of a component model and an associated analysis model q PECT integrates ideas from research in the areas of software architecture, component certification, and software component technology to create a prediction-enabled component technology. q Prediction-enabled component technologies exploit the relationship between structural restrictions and assumptions of analysis models to compute properties of assemblies based on trusted properties of the assembly’s constituent components.

12 Page 12 Building Reliable Component-based Systems Ivica Crnkovic Prediction-Enabled Component Technology Component Model Analysis Model Component Model Analysis Model assumptions interpretation PECT not connected specializes influences

13 Page 13 Building Reliable Component-based Systems Ivica Crnkovic Architecture-based Analysis  Provides a foundation for reasoning about system completeness and correctness early in the development process and at a high level of abstraction q Architecture description languages q One still unresolved challenge within architecture technology is the bridging of the gap between architectural abstractions and implementation q Analytic models capture the fundamentals of compositional reasoning techniques: assumptions of the algorithms used as well as the algorithms themselves.

14 Page 14 Building Reliable Component-based Systems Ivica Crnkovic Architecture-based Analysis (2) q Specification refinement q mappings between analytic models and constructive models q Analytic models capture the fundamentals of compositional reasoning techniques: assumptions of the algorithms used as well as the algorithms themselves.

15 Page 15 Building Reliable Component-based Systems Ivica Crnkovic Component Certification q The National Security Agency (NSA) q National Institute of Standards and Technology (NIST) q used the trusted computer security evaluation criteria (TCSEC), a.k.a. “Orange Book.” as the basis for the Common Criteria, which defines criteria for certifying security features of components

16 Page 16 Building Reliable Component-based Systems Ivica Crnkovic Component Certification (2) q Trusted Components Initiative (TCI) q Loose affiliation of researchers with a shared heritage of experience in the formal specification of interfaces. q Use use of pre/post conditions on API q Quality attributes, such as security, performance, availability, and so forth, are beyond the reach of these assertion languages

17 Page 17 Building Reliable Component-based Systems Ivica Crnkovic Component Certification (3) q Quality attributes, such as security, performance, availability, and so forth, are beyond the reach of both earlier mentioned languages q Voas has defined mathematical models of component reliability based on statistical approaches to testing q Commercial component vendors q Shaw proposed component credentials as an open-ended, property-based interface specification q In Shaw’s proposal a credential is a triple

18 Page 18 Building Reliable Component-based Systems Ivica Crnkovic Component Certification (4) q What does it mean to trust a component? q Still more fundamental: what ends are served by certifying (or developing trust) in these properties?

19 Page 19 Building Reliable Component-based Systems Ivica Crnkovic Architectural Styles and Component Models q Architectural styles are sets of component types and constraints on how instantiations of those types can be interconnected. q Component technology provides the means of realizing architectural style constraints in software q Component models can be Architectural styles q Enterprise Java Beans

20 Page 20 Building Reliable Component-based Systems Ivica Crnkovic Summary  Integration != Composition  Prediction-Enable component technologies will allow for building component based software right from the beginning  Old ideas are used together with new to form a answer to delays, due to unexpected result from assembling components, in component based software development  Several fundamental questions are still unanswered


Download ppt "Page 1 Building Reliable Component-based Systems Ivica Crnkovic Chapter 9 Component Composition and Integration."

Similar presentations


Ads by Google