Innovative Applications of O.R.Competence-based estimation of activity duration in IT projects
Introduction
In the lifecycle of a software project, after finishing the requirements-gathering phase and before the development phase, there is a time for planning the project: resources, schedule, budget and risks. In this paper we focus on constructing the project schedule and particularly on the estimation of activity duration. According to PMBOK (2009), an activity is a component of work performed during the course of a project. In project management an activity is the smallest unit of work, described by four parameters: resource consumption, logic relationships with other activities in the project, associated cost, and duration. Activities are the building blocks of a project. Work Breakdown Structure (WBS) at the lowest level of detail of work packages. An activity is a work package that: (1) makes no sense to break down any further, (2) produces a deliverable which is measurable (3) endures no longer than a single reporting period and (4) has a duration that can be realistically estimated. Duration here is defined as the period of time required for completion of an activity, excluding non-working hours.
Activity duration can be estimated by several methods: analogy, expert judgement, parametric or WBS. Estimation by analogy is based on a comparison of the effort and time taken to complete previous similar tasks (Morgenshtern, Raz, & Dvir, 2007). Project managers study the similarities between the two activities and adjust for any features that may result in differences in duration. In this adjustment lies the difficulty of this low-cost technique. Expert judgment involves using specialists who have experience in estimating activity duration and knowledge of the particular field. Hughes (1996) shows that expert estimation can be reasonably accurate. The drawback of this method is that it is hard to separate expert subjectivity from experience and to identify the factors contributing to the estimation. Parametric estimation is based on formal models that take into account various factors affecting time and effort. For instance in the Function Points method the number of entities and their complexity is calculated. The WBS method estimates time and effort by hierarchical decomposition of a project into smaller units; the smallest units are activities. The COCOMO method (Boehm, 1981) defines a project by the program size (number of lines of code). A project is classified as organic, semi-detached or embedded; based on this division, appropriate weights are assigned. The methodology was further developed into COCOMO II (Boehm et al., 2000), which defines six personnel-related attributes: Analyst Capability (ACAP), Programmer Capability (PCAP), Personnel Continuity (PCON), Applications Experience (APEX), Platform Experience and Language (PLEX), and Tool Experience (LTEX) (Lum et al., 2003). All six are defined at five proficiency levels, which describe the capability and experience of personnel, assigned to the project.
In all these methods the estimation of activity duration is performed for a typical (average) or the best (most experienced) team member. Only in COCOMO methods are these estimates modified, using predefined weights, to take personnel factors into account. In the manufacturing industry, a well-known approach to workforce performance assessment is the use of learning curves, introduced by Wright in 1931. The foundation of this approach is the assumption that employee productivity increases as a function of the number of repetitions or of the time spent on a particular task. This can be applied to a project where operations executed within activities are repetitive, i.e., one can gain experience in executing them, which finally manifests as shortened activity completion time. It has also been shown that work can be characterized by required competences, i.e., the arbitrarily defined human factor affecting organizational performance (Boucher, Bonjour, & Grabot, 2007). ISO 9001 (2008) defines ‘competence’ as “the ability to apply knowledge and skills to achieve intended results”.
In this paper we propose a novel approach to the estimation of IT project activity duration that takes into account the skills required to perform an activity and the project team members’ experience in using these skills. Our methodology allows a more precise prediction of activity duration and required team member experience. The initial duration is the time that would be required by a very experienced team member; this is then adjusted according to the capabilities of a less experienced team member, for input to a resource-scheduling algorithm. Moreover, our methodology takes into account that team members are multi-skilled, and that experience gained as a result of performing one activity improves performance in a different but similar activity. The similarity here is characterized with use of a Hierarchical Skill Model (Małachowski & Korytkowski, 2016).
Describing team members’ competences will also allow us to keep track of employee competence levels so that persons can be assigned to project activities more efficiently. This approach enables better career path planning and progress monitoring, and more effective motivation.
The paper is organized as follows. The next section summarizes relevant literature on estimation methods of project activity duration in resource-constrained project scheduling, learning curves and skills modeling. In the third section, an MSPCP model with learning curve and interrelated skills is described. In the fourth section, an Activity Duration Estimation algorithm is presented. The fifth section describes a case study of an IT project development. Our conclusions and recommendations are presented in the final section.
Section snippets
Literature review
We consider the estimation of activity duration as part of a more general Resource-Constrained Project Scheduling Problem (RCPSP) (Brucker, Drexl, Möhring, Neumann, & Pesch, 1999). In works devoted to RCPSP, activity duration is treated as a given parameter. It could be a fixed value, a fuzzy value, or a probability distribution of workload in man-months. In RCPSP, activities are scheduled with limited resources to optimize project makespan, balance team members’ workload, and cater for various
MSPSP with learning and interrelated skills
In this section we introduce a notation for modeling and estimating activity durations in a multi-skill project scheduling problem, taking into account the learning phenomenon and interrelated skills. First we introduce a notation for a project, followed by the Hierarchical Skill Model (HSM) and estimation of project activity duration.
Activity Duration Estimation (ADE)
Here we present our ADE algorithm which uses the HSM to calculate an activity duration given a set of associated parameters: the compound skills graph Sj, workload wh,m, and the set of project team members assigned to the activity {pk}, with their parameters. The ADE operates either using symbolic transformation of Eq. (12) where possible, or numerical integration where it is not possible to invert all of the integrated learning curve function. The ADE can be described by the following
Illustrative case study
We now examine a typical software development project. Tracking the competence progress of software developers can be more efficient in an environment where standardized software development technologies, tools and workflows are used. In such an environment, programmers deal with similar tasks, use similar tools and approach similar problems during the course of many projects throughout their professional life. Their progress can be tracked by comparing their efficiency in the similar tasks
Conclusions and further work
The proposed Activity Duration Estimation algorithm is based on the Hierarchical Skill Model and a learning curve approach. Any univariate deterministic learning curve model can be used. The ADE enables a more precise estimation of activity duration and experience because it takes into account two factors that until now have not been investigated simultaneously: the learning phenomenon, and the observation that skills are interrelated and have a hierarchical structure. As a result, ADE enables
References (35)
- et al.
Priority-based heuristics for the multi-skill resource constrained project scheduling problem
Expert Systems with Applications
(2016) - et al.
Learning curve models and applications: Literature review and research directions
International Journal of Industrial Ergonomics
(2011) - et al.
Scheduling subject to resource constraints: Classification and complexity
Discrete Applied Mathematics
(1983) - et al.
Formalisation and use of competencies for industrial performance optimisation: A survey
Computers in Industry
(2007) - et al.
Resource-constrained project scheduling: Notation, classification, models, and methods
European Journal of Operational Research
(1999) - et al.
Workforce planning incorporating skills: State of the art
European Journal of Operational Research
(2015) - et al.
A survey of variants and extensions of the resource-constrained project scheduling problem
European Journal of Operational Research
(2010) Expert judgement as an estimating method
Information and Software Technology
(1996)- et al.
Competences-based performance model of multi-skilled workers
Computers & Industrial Engineering
(2016) - et al.
Factors affecting duration and effort estimation errors in software development projects
Information and Software Technology
(2007)
Influence of learning in resource-constrained project scheduling
Computers & Industrial Engineering
A comparative analysis of learning curves: Implications for new technology implementation management
European Journal of Operational Research
A guide to the project management body of knowledge (PMBOK guide)
Considering skills evolutions in multi-skilled workforce allocation with flexible working hours
International Journal of Production Research
Lower bounds for the multi-skill project scheduling problem
Lecture Notes in Computer Science
Contingent manpower planning in a high clock speed industry
International Journal of Production Research
Software engineering economics
Cited by (12)
Tabu search for proactive project scheduling problem with flexible resources
2023, Computers and Operations ResearchA reverse personnel assignment method with duration re-inferring for smart “IOT+ blockchain” project
2022, Procedia Computer ScienceA decomposition-based multi-objective genetic programming hyper-heuristic approach for the multi-skill resource constrained project scheduling problem
2021, Knowledge-Based SystemsCitation Excerpt :To minimize the manpower cost, Heimerl and Kolisch [22] presented an efficient mixed-integer linear programming, which scheduled project and assigned human resources simultaneously; By considering the schemes of bonus for earliness and penalty for tardiness, two efficient procedures were proposed by Santos and Tereso [23]. To precisely estimate the activity duration of IT project, Korytkowski and Malachowski [24] developed a novel methodology. More recently, studies have been concentrated on the modeling framework of the actual environment.
The Multi-Skilled Resource-Constrained Project Scheduling Problem: A Systematic Review and an Exploration of Future Landscapes
2024, Management Systems in Production EngineeringA multi-skilled staff scheduling and team configuration optimisation model for artificial intelligence project portfolio considering competence development and innovation-driven
2024, International Journal of Production Research