University of Minnesota
Software Engineering Center

You are here

A Framework to Evaluate Candidate Agile Software Development Processes

Date of Publication: 
July 2019
Associated Research Groups: 
Publication Files: 

Today's software development projects must respond to fierce competition, a constantly changing marketplace, and rapid technological innovation. Agile development processes are popular when attempting to respond to these changes in a controlled manner; however, selecting an ill-suited process may increase project costs and risk. Before adopting a seemingly promising Agile approach, we desire to evaluate the approach's applicability in the context of the specific product, organization, and staff. Simulation provides a means to do this. Because of Agile's emphasis on the individual and interactions, we theorize that a high-fidelity model---one that models individual behavior---will produce more accurate outcome predictions than those that do not account for individual behavior. To this end, we define criteria, based on the Agile Manifesto, for determining if a simulation is suited to model Agile processes and use the criteria to assess existing simulations (and other evaluation frameworks).

Finding no suitable evaluation framework, we focus on constructing a simulation that satisfies our criteria. In this work, we propose a process simulation reference model that provides the constructs and relationships needed to capture the interactions among the individuals, product, process, and project in a holistic fashion. As a means for evaluating both our criteria and reference model, we constructed the Lean/Agile Process Simulation Environment (LAPSE), a multi-agent simulation framework for evaluating Agile processes prior to adoption within an organization.

The contributions of this work are threefold. Building on the simulation assessment criteria of Kellner, Madachy, and Raffo and the Agile Manifesto, we establish criteria for assessing Agile simulations. From there, we define a reference model that captures the constructs and relationships needed to simulate Agile processes. We then show the satisfiability of our criteria and demonstrate how the constructs of the reference model fit together by building LAPSE. This work lays the groundwork for detailed a priori process evaluation and enables future research into process transformation.

University of Minnesota
Ph.D. Dissertation, University of Minnesota
@phdthesis{de_silva-framework-2019, author = {De Silva, Ian J.}, title = {A {Framework} to {Evaluate} {Candidate} {Agile} {Software} {Development} {Processes}}, type = {{PhD} {Dissertation}}, school = {University of Minnesota}, address = {Minneapolis, MN}, month = jul, year = {2019} }