CCM Tools : Papers

Component Based Software Engineering

Component based software engineering (CBSE) extends the idea of object-oriented programming languages to encapsulate entire logical processes in mega-objects called components. Components interact through well defined interfaces, normally specified using a formal language. Components ideally perform one or more well defined tasks as part of a larger system of interacting component assemblies. Components can be assembled locally (in the same process) and remotely through CORBA or EJB (in other, separate processes, even running on different phsyical devices). Components can be tested and deployed individually, allowing not only data encapsulation, but logical encapsulation as well.

A particularly promising component architecture is the Object Management Group's CORBA Component Model. CORBA stands for the Common Object Request Broker Architecture and is used, for example, on GNOME desktops with Bonobo. CORBA is standardized, free, and platform independent. The drawback is that writing CORBA applications can be quite complicated.

Hence these tools ; we want to facilitate the process of creating and deploying stable, well tested software components.

Papers

A Test-Driven Component Development Framework based on the CORBA Component Model

E. Teiniker, S.Mitterdorfer, L.M. Johnson, C. Kreiner, Z. Kovacs and R. Weiss
27th Annual International Computer Software and Applications Conference, November 3-6, 2003, Dallas, USA

Short product cycles and rapidly changing requirements are increasingly forcing developers to use agile development strategies like extreme programming and test-driven development. At the same time, hierarchical software design strategies such as component based software engineering are becoming necessary to overcome increasing software complexity. In this paper, we present a test-driven component development framework that encapsulates test code in a mirror component for automated testing during development, and as an executable semantic to simplify assessment and to increase trustworthiness of software systems.

Assemblies of Local and Remote Components in the CORBA Component Model

E. Teiniker, S.Mitterdorfer, L.M. Johnson, C. Kreiner, Z. Kovacs and R. Weiss
ACM/IFIP/USENIX International Middleware Conference, June 16-20, 2003, Rio de Janeiro, Brazil

The CORBA component model (CCM) seems to present an appropriate multi-language and multi-platform component architecture, but there are some drawbacks in practical use. In this paper we present the practical impacts of our new local component adapter concept (LCAC): How the LCAC improves communication performance of components living in the same address space, and how it simplifies development of application code. We also outline local and remote component assemblies and the concept of assembly instance graphs.

Local Components and Reuse of Legacy Code in the CORBA Component Model

E. Teiniker, S.Mitterdorfer, C. Kreiner, Z. Kovacs and R. Weiss
28th Euromicro Conference, September 4-6, 2002, Dortmund, Germany

The CORBA component model (CCM) seemed to be a new powerful multi-language and multi-platform component development framework. First applications based on CCM have shown that there are some drawbacks in practical use. We present a new approach for the CCM component implementation which improves communication performance of components living in the same address space. At the same time we simplify the component development process and the reuse of legacy code within components. These extensions to CCM are possible without changing its specification.