2005Lincoln (University of Nebraska)Requires access

Architecture specification and implementation for component-based systems

Shifeng Zhang, Steve Goddard

Open publisher page 0 citations

Abstract

Component-Based Software Engineering (CBSE) has become an area of intense research and commercial focus with the complexity of software systems increasing. To help design component-based systems, Software Architecture (SA) has become a prospective research method and direction. SA is system-centric and views a software system as a collection of components and their interaction (connectors). Existing component middleware technologies (CTs), e.g., CORBA, DCOM, and Java Beans, provide a solid base to implement component-based systems. Those CTs are component-centric; they are primarily concerned with standardizing external component properties. Both SA and CTs are crucial aspects of CBSE, yet there has been limited interaction between the two domains in today's research. The goal of this dissertation research is to bridge the gap between SA and CTs: use existing component middleware technologies to build systems specified by software architecture technology. A component and component interaction model is presented to clarify what a component is and what component interaction is. Then, an Architecture Description Language (ADL), xSADL, is introduced that can specify and analyze the architectures of software systems at the design stage. xSADL specifies a complex software system as a collection of components and connectors. In the specification of a connector, xSADL can help designers deal with two kinds of architectural mismatches: behavior mismatch and message mismatch. Connectors often are considered to be explicit at the level of SA specifications, but implicit in CT-based implementations. Current CTs, such as CORBA, DCOM, and Java Beans, do not support explicit connector implementations. To support explicit connector implementations, a component framework, 3CoFramework, is presented in which a connector is raised to the level of a component at the implementation stage. In addition to the components and connectors, 3CoFramework also provides a management role, called a coordinator, to provide distributed component and connector management. xSADL helps to design software systems as component-based systems while 3CoFramework helps to implement the architecture designs as component-based applications. To integrate xSADL and 3CoFramework, a Computer Aided Software Engineering (CASE) tool, is presented also. The CASE tool has two purposes. First, it provides a GUI development environment to create xSADL documents. Second, it provides code generation functions to help transform xSADL designs into 3CoFramework-based implementations.

About this research paper

What this paper is about

Component-Based Software Engineering (CBSE) has become an area of intense research and commercial focus with the complexity of software systems increasing. To help design component-based systems, Software Architecture (SA) has become a prospective research method and direction. SA is system-centric and views a software system as a collection of components and their interaction (connectors). Existing component middleware technologies (CTs), e.g., CORBA, DCOM, and Java Beans, provide a solid base to implement component-based systems. Those CTs are component-centric; they are primarily concerned with standardizing external component properties. Both SA and CTs are crucial aspects of CBSE, yet there has been limited interaction between the two domains in today's research. The goal of this dissertation research is to bridge the gap between SA and CTs: use existing component middleware technologies to build systems specified by software architecture technology. A component and component interaction model is presented to clarify what a component is and what component interaction is. Then, an Architecture Description Language (ADL), xSADL, is introduced that can specify and analyze the architectures of software systems at the design stage. xSADL specifies a complex software system as a collection of components and connectors. In the specification of a connector, xSADL can help designers deal with two kinds of architectural mismatches: behavior mismatch and message mismatch. Connectors often are considered to be explicit at the level of SA specifications, but implicit in CT-based implementations. Current CTs, such as CORBA, DCOM, and Java Beans, do not support explicit connector implementations. To support explicit connector implementations, a component framework, 3CoFramework, is presented in which a connector is raised to the level of a component at the implementation stage. In addition to the components and connectors, 3CoFramework also provides a management role, called a coordinator, to provide distributed component and connector management. xSADL helps to design software systems as component-based systems while 3CoFramework helps to implement the architecture designs as component-based applications. To integrate xSADL and 3CoFramework, a Computer Aided Software Engineering (CASE) tool, is presented also. The CASE tool has two purposes. First, it provides a GUI development environment to create xSADL documents. Second, it provides code generation functions to help transform xSADL designs into 3CoFramework-based implementations.

Why it matters

A significance statement is not available in the OpenAlex record.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Component-Based Software Engineering (CBSE) has become an area of intense research and commercial focus with the complexity of software systems increasing. To help design component-based systems, Software Architecture (SA) has become a prospective research method and direction. SA is system-centric and views a software system as a collection of components and their interaction (connectors). Existing component middleware technologies (CTs), e.g., CORBA, DCOM, and Java Beans, provide a solid base to implement component-based systems. Those CTs are component-centric; they are primarily concerned with standardizing external component properties. Both SA and CTs are crucial aspects of CBSE, yet there has been limited interaction between the two domains in today's research. The goal of this dissertation research is to bridge the gap between SA and CTs: use existing component middleware technologies to build systems specified by software architecture technology. A component and component interaction model is presented to clarify what a component is and what component interaction is. Then, an Architecture Description Language (ADL), xSADL, is introduced that can specify and analyze the architectures of software systems at the design stage. xSADL specifies a complex software system as a collection of components and connectors. In the specification of a connector, xSADL can help designers deal with two kinds of architectural mismatches: behavior mismatch and message mismatch. Connectors often are considered to be explicit at the level of SA specifications, but implicit in CT-based implementations. Current CTs, such as CORBA, DCOM, and Java Beans, do not support explicit connector implementations. To support explicit connector implementations, a component framework, 3CoFramework, is presented in which a connector is raised to the level of a component at the implementation stage. In addition to the components and connectors, 3CoFramework also provides a management role, called a coordinator, to provide distributed component and connector management. xSADL helps to design software systems as component-based systems while 3CoFramework helps to implement the architecture designs as component-based applications. To integrate xSADL and 3CoFramework, a Computer Aided Software Engineering (CASE) tool, is presented also. The CASE tool has two purposes. First, it provides a GUI development environment to create xSADL documents. Second, it provides code generation functions to help transform xSADL designs into 3CoFramework-based implementations.

Key concepts: Distributed Component Object Model, Common Object Request Broker Architecture, Component (thermodynamics), Common Component Architecture, Computer science, Middleware (distributed applications), Component-based software engineering, JavaBeans

Related papers

Back to paper searchBrowse research topicsOriginal source
Architecture specification and implementation for component-based systems — Research Paper | ScholarLens