Configuration management (CM) is a software engineering discipline that centers on managing the evolution of the artifacts that are continuously produced and changed over the course of a software development project. The combined move towards developing software out of sets of components and managing software after it has been delivered to its customers radically changes the nature of CM, breaking several of its fundamental assumptions.
Addressing these issues, the objective of this research is to develop and empirically evaluate the models, policies, and tools that will lay the foundation for the creation of the next generation of configuration management systems---those capable of managing, in a seamless and continuous fashion, component-based software throughout its life time. The research hypothesizes that architecture description languages are the key to providing this functionality: they create a single abstraction through which all CM functionality can be provided. Specifically, we propose to build architecture-based CM models, associated new development and deployment policies, and the supporting tools necessary for demonstration and evaluation.
Parts of the research will be used to seed the educational aspects of the proposal: to establish the undergraduate research factory in which teams of undergraduate students will be educated in carrying out research projects.