Home |
CV | Research | Teaching | Publications |
ResearchWiki |
SEAD |
CRC |
SecureChange |
SP4A |
VideoWall |
RESG |
RSS
Componentization of Legacy C/C++ Software
The build architecture of legacy C/C++ software systems places groups
of program files in directories representing logical components. The
interfaces of these components are loosely defined by a set of header
files that are typically grouped in one common include directory. As
legacy systems evolve, these interfaces decay resulting in a build
process that is both time consuming and difficult to understand.
Moreover, the increase in the number of developers working on legacy
systems necessitates parallel development. As such, the interfaces
between various components in the system must be re-documented and
restructured to reduce the number of contentions over components as
well as reducing the build time. Lastly, better defined components
can contribute to targeted testing of components.
Resources