research

Harnessing software development contexts to inform software process selection decisions

Abstract

Software development is a complex process for which numerous approaches have been suggested. However, no single approach to software development has been met with universal acceptance, which is not surprising, as there are many different software development concerns. In addition, there are a multitude of other contextual factors that influence the choice of software development process and process management decisions. The authors believe it is important to develop a robust mechanism for relating software process decisions and software development contexts. Such an approach supports industry practitioners in their efforts to implement the software development processes vital for a particular set of contextual factors. In this paper, the authors outline a new tool-based framework for relating the complexity of software settings with the various aspects of software processes. This framework can extract the key software process concepts from process repositories, for example, from CMMI-DEV or ISO/IEC 15504-5 (a.k.a. SPICE – Software Process Improvement and Capability dEtermination). A team of software development experts then collaborates in order to identify and validate the strength and nature of the relationship between the key process concepts and the contextual factors that are known to affect the software development process. The result of this collaboration is a prototype of a flexible model, which can be extended over time into a broader process consideration, for example, where agile processes or further specific situational factors could be added to the framework. The authors contend that a model such as the one proposed in this paper can serve as a valuable tool, assisting software developers in making decisions regarding the selection of software best practices, as well as providing general guidance for process improvement initiatives

    Similar works