ERCIM News No.32 - January 1998

PIROL - An Object-Oriented Multiple-View Software Engineering Environment

by Boris Groth

The Project Integrating Reference Object Library (PIROL) is a scientific cooperation project conducted by the GMD Institute for Computer Architecture and Software Technology, Berlin, at GMD, and the Software Engineering Research Group (SWT) of the Technical University of Berlin. Some of the project results have been incorporated in industrial cooperation, and they also form the basis of a German-Brazilian joint scientific project.

PIROL is a software-engineering environment, based completely on object-oriented system development. It integrates various aspects of the object-oriented paradigm, following the categories of the ECMA-reference-model, and supports distributed and co-operative project work. One of the key concepts of PIROL is to have views onto the basis of a centralized project library.

The library (repository) meta model consists of two parts: a product- and a process-oriented one. The product-oriented part incorporates the invariants of object-oriented development items produced throughout the development life cycle, and is dynamically adaptable to various methods and programming languages; in contrast the process-oriented part defines the basis for a generic process model.

The consistency of development documents within the various phases of a software process is ensured by structural decomposition. This approach decomposes the documents, in accordance with the product-oriented part of the meta model, into fine-grained repository objects, so called Reference Objects (RO). Documents per se disappear and exist only as aggregations of these ROs, forming what is known as Conceptual Objects (CO) within the environment. COs are transient, tool-mediated views onto the reference objects within the repository. The structural decomposition approach generates a semantic network of ROs, which forms the basis for data integration between tools. Tools dedicated to different phases of the software process present COs and operate on the same data.

The basis for data integration is an object-oriented class model, the objects of which are ROs. This model not only defines the static features of ROs, but also their dynamic behavior. For this reason, an object-oriented derivate of the tool-command language (TCL), DROSSEL (Descriptive Reference Object System Structure Extension Language), was integrated in order to support easy meta-model adaptation using traditional object-oriented techniques. Polymorph treatment of ROs is supported by a system component called workbench using dynamic binding.

PIROL consists of a three-layer architecture, repository, workbench, and tools - all interconnected by an object-oriented encapsulation of the ToolTalk[tm] library for data exchange and message broadcasting. The repository is HPCTE, an implementation of the PCTE (Portable Common Tool Environment) standard.

The consistent application of object-oriented techniques in PIROL makes for a very high level of method and tool integration. The concept of views onto a common repository presents adequate information to each project member, exactly tailored to his or her role within the software development project. Further information on the PIROL project is available at:

Please contact:

Boris Groth - GMD
Tel: +49 30 6392 1782

return to the contents page