1. Trang chủ
  2. » Công Nghệ Thông Tin

Lecture Building reliable component-based systems - Chapter 9: Component composition and integration

20 26 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 20
Dung lượng 213,46 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

In this chapter, the following content will be discussed: 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.

Trang 1

Building Reliable Component­based  Systems

 Ivica Crnkovic

Chapter 9

Component Composition and Integration

Trang 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

Trang 3

Building Reliable Component­based  Systems

 Ivica Crnkovic

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.

Trang 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

Trang 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

Trang 6

Building Reliable Component­based  Systems

 Ivica Crnkovic

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)

Trang 7

Building Reliable Component­based  Systems

 Ivica Crnkovic

Component Integration (5)

Filter Pseudo Filter(Adaptor) Filter

gzip

1

4 Compressing Proxy

Process Component Channel

Function call interface UNIX pipe interface

Trang 8

Building Reliable Component­based  Systems

 Ivica Crnkovic

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

Trang 9

Building Reliable Component­based  Systems

 Ivica Crnkovic

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

Trang 10

Building Reliable Component­based  Systems

 Ivica Crnkovic

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?

Trang 11

Building Reliable Component­based  Systems

 Ivica Crnkovic

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.

Trang 12

Building Reliable Component­based  Systems

 Ivica Crnkovic

Prediction-Enabled Component Technology

Component  Model AnalysisModel

Component  Model AnalysisModel

assumptions

interpretation

PECT

not connected

specializes

influences

Trang 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

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.

Trang 14

Building Reliable Component­based  Systems

 Ivica Crnkovic

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.

Trang 15

Building Reliable Component­based  Systems

 Ivica Crnkovic

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

Trang 16

Building Reliable Component­based  Systems

 Ivica Crnkovic

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

Trang 17

Building Reliable Component­based  Systems

 Ivica Crnkovic

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>

Trang 18

Building Reliable Component­based  Systems

 Ivica Crnkovic

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?

Trang 19

Building Reliable Component­based  Systems

 Ivica Crnkovic

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

Trang 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

Ngày đăng: 15/05/2020, 22:12