Analyzing Software Build Architectures
In order to derive executable software artefacts in an efficient and effective manner, a sound build system needs to be maintained properly along with the evolution of source code. However, in large-scale software projects the building process often becomes effort consuming and sometimes error prone, which is often caused by an eroded architecture of the build system. While sound method and tool support to analyze the evolution and the erosion of software architecture exists, the situation for the architecture of the build system is different. This renders the evolution of the build system a nontrivial task. In consequence, especially changeintensive software projects, which either evolve fast or have to deliver many software variants at a point in time, are often facing serious challenges in the long-term run. To cope with these challenges, we first discuss typical challenges and their root causes in the context of build architectures. Then we present our analysis approach and tool chain, which consists of a make file parser, build dependency model and a respective visualization of the build system architecture.