A Hybrid Approach to Quantitative Software Project Scheduling within Agile Frameworks
Click HERE to download the PDF
Michael Jahr, European University of Applied Sciences (EUFH), Germany
Agile Project Management
Software Estimation Models
The paper focuses on the quantitative project-scheduling problem in Information Technology (IT) companies applying agile management, particularly Scrum. The article presents a multimode resource-constrained scheduling model for software projects applying agile processes. The research shows that agile and traditional methods are not incompatible, and that quantitative models are a useful support to project management for agile frameworks.
The proposed hybrid approach can be used to generate schedules as benchmarks for agile development iterations. Computational experiments, based on real project data, indicate that this approach significantly reduces project cycle time. The model can be a useful addition to agile project management, especially for software projects with predefined deadlines and budgets.
Information Technology industry, the youngest among the engineering industries, differs dramatically from other industries. For instance, requirements may not be completely specified at the beginning of a project and usually evolve over time.
In traditional industries where planning is process-oriented and aimed at sequencing the necessary operations, the focus lies on standardized operations that try to eliminate procedural uncertainties. The corresponding planning methods have developed over many decades. As a result, there are efficient operational research methods and models available.
Information Technology, the youngest among the engineering industries, differs dramatically from other industries. For instance, requirements may not be completely specified at the beginning of a project and usually evolve over time. Different approaches for organizing work and project-related roles have emerged to challenge the traditional plan-driven method. The Agile Manifesto (2001) aims to develop the most practicable solution that fulfills the actual customer's needs rather than the best possible result. Since their introduction, the adoption of agile methods such as Scrum seems to be occurring at an increasing rate.
Software projects with contracted deadlines, as well as tight budgets, face strict targets. Here, most notably quantitative management support can complement agile methods and contribute to meeting deadlines and budgets.
The research is based on a case study of one of the market leaders in the field of individualized banking applications, which in addition, represents a forerunner in modern agile project management in its segment. The research analyzed the project management and the software project scheduling process.
Senior management targeted four central requirements: 1) delivery dates must be met; 2) project budgets must be met; 3) adherence to agile methods and to the basic Scrum process; and, 4) simple processes and methods applicable to small and large projects.
However, senior developers indicated that by using classical Scrum, teams had difficulties estimating the project parameters (times, complexity), because each project was individual and without standardization. They concluded that within the complex development, deadlines and scopes were often lost. Therefore, project managers were in need of an effective tool to benchmark the iteration cycles and to estimate the project costs.
The model was tested with three Scrum teams working on four typical projects, including revision of existing software projects and development of new code.
Scheduling becomes a recurring part of the process. For each sprint (iteration), a schedule is computed and used as a benchmark and controlling instrument for the following review meeting. The Scrum team experiences can be directly incorporated into the model parameters.
The model considers a set of activities associated with a set of skill levels. The activities represent the work to be done by a set of non-constant renewable human resources. In the current case, software developers were distinguished by level of experience (inexperienced and senior programmers) with different developing capabilities. The complexity for each activity was evaluated in three levels using function points. The model also includes traditional PERT parameters such as durations, minimum time lag between activities, successors and predecessors, and latest finish times, among others.
Scheduling becomes a recurring part of the process. For each sprint (iteration), a schedule is computed and used as a benchmark and controlling instrument for the following review meeting. The Scrum team experiences can be directly incorporated into the model parameters. Hence, the next schedule for the succeeding sprint is computed restarting the process and learning from the previous sprints, until the end of the project.
COMPUTATIONAL RESULTS AND PRACTICAL USE
The use of the hybrid model demonstrated remarkably better results than using classical Scrum, both in terms of cost and duration.
The use of the hybrid model demonstrated remarkably better results than using classical Scrum, both in terms of cost and duration. The research shows that agile and traditional methods are not incompatible, and that quantitative models are a useful support to project management in agile frameworks.
In all four projects the computed schedules were sufficient for the practical implementation and did not exceed the upper duration limits. Moreover, the proposed approach proved to be not just a useful tool during the developing phases, but also a valuable planning tool.
Agile and traditional methods are not incompatible…
The practical test showed that extending the agile flow by quantitative models has practical benefits. The responsible project management team is equipped with objective and reliable tools to stipulate deadlines. Deviations from the schedule can be used to steer the project and thus take necessary steps; as a result, adherence to deadlines and budget is significantly supported.
The approach requires an improvement in assigning human resources. Measuring development capacities by a function point system proved to be a practical solution in the tests. However, the model allocates developers following a mathematical logic where more productive resources are preferred. Capacities are taken into account, so that the developers cannot be overloaded.
The practical test showed that extending the agile flow by quantitative models has practical benefits.
Although the results of this study were promising, further research is needed to achieve precise depictions and to demonstrate direct transferability of results to other types of industries.
Jahr M. (2014) A Hybrid Approach to Quantitative Software Project Scheduling Within Agile Frameworks. Project Management Journal, Volume 45 (June/July), Number 3.
FOR MORE INFORMATION
PMJ articles and Sponsored Research monographs are available to members for free download.
Monographs can also be purchased at the PMI Store on PMI.org.
From Academia: Summaries of New Research for the Reflective Practitioner | October 2014
PROJECT MANAGEMENT INSTITUTE
14 Campus Boulevard | Newtown Square, Pennsylvania | 19073-3299 USA
Tel: +1 610 356 4600 | Fax: +1 610 356 4647
© 2014 Project Management Institute, Inc.
All rights reserved. “PMI” and the PMI logo are marks of Project Management Institute, Inc.
For a comprehensive list of PMI marks, contact the PMI Legal Department.