posted on 2014-02-12, 09:22authored bySimona Jeners, Rory V. O'Connor, Paul Clake, Horst Lichter, Marion Lepmets, Luigi Buglione
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.