1 / 20

Chapter 9 Component Composition and Integration

Chapter 9 Component Composition and Integration. Overwiev. Component Integration From Integration to Composition Predictable Assembly from Certifiable Components Prediction-Enabled Component Technology (PECT) Architecture-based Analysis Component Certification

mickey
Download Presentation

Chapter 9 Component Composition and Integration

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. 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 Building Reliable Component-based Systems Ivica Crnkovic

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

  4. 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 Component Integration (2) Building Reliable Component-based Systems Ivica Crnkovic

  5. 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 Building Reliable Component-based Systems Ivica Crnkovic

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

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

  8. Component Integration (6) • Formal architectural description and analysis to uncover what they call “behavioral mismatch” • Not component mismatch • Components must express assumptions made about it’s environment such as data formats or buffer sizes • 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 Building Reliable Component-based Systems Ivica Crnkovic

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

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

  11. Prediction-Enabled Component Technology • A prediction-enabled component technology consists of a component model and an associated analysis model • PECT integrates ideas from research in the areas of software architecture, component certification, and software component technology to create a prediction-enabled component technology . • 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. Building Reliable Component-based Systems Ivica Crnkovic

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

  13. 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 • Architecture description languages • One still unresolved challenge within architecture technology is the bridging of the gap between architectural abstractions and implementation • Analytic models capture the fundamentals of compositional reasoning techniques: assumptions of the algorithms used as well as the algorithms themselves. Building Reliable Component-based Systems Ivica Crnkovic

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

  15. Component Certification • The National Security Agency (NSA) • National Institute of Standards and Technology (NIST) • 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 Building Reliable Component-based Systems Ivica Crnkovic

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

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

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

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

  20. 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 Building Reliable Component-based Systems Ivica Crnkovic

More Related