For the two project partners, software has strategic importance (a) as integral part of their products, and (b) for supporting in-house engineering processes that account for a major part of the overall costs of control systems. While the software products have become more and more complex over the last years, the processes to develop and maintain the software have remained fairly informal and immature. This process improvement experiment aims at improving an existing ad-hoc, object-oriented software process. Focus is on (a) standardising forward engineering of analysis and design, (b) enhancing and automating documentation of work results, and (c) reverse engineering of existing (insufficiently documented) object-oriented software.
The objectives shall be achieved by the following steps:
- Defining a tool-supported software process for object-oriented analysis and design, documentation and reverse engineering. Training of the project members.
- Applying new engineering processes and tools in selected work packages of the project.
- Assessing and improving the measures.
The baseline project of this experiment, called CAPE/C, is a joint effort of the project partners ABB Henschel and ABB Schaltanlagen. It aims at developing an integrated tool support for control system configuration and maintenance. The success of the process improvement activities will be measured by means of formalised interviews with the project members, and by comparing existing error data with the number of software errors after applying the new process.
ABB Henschel employs 80 people in software engineering, of which 12 are involved in CAPE/C. In ABB Schaltanlagen 60 people develop and maintain software; 8 of them participate in CAPE/C.
EXPECTED IMPACT AND EXPERIENCE
The baseline project CAPE/C has, by its organisational position and leading-edge technology, a strong impact on the software engineering practices throughout ABB Henschel, as well as ABB Schaltanlagen.
Both project partners expect by this experiment to achieve the foundation of a stable, tool supported object-oriented software process. In particular they expect that the automated document generation helps facilitating software maintenance by keeping documentation and source code consistent.
Funding SchemeACM - Preparatory, accompanying and support measures