Using a Sliding-Frame Approach for Scheduling Large and Complex IT Projects

Using a Sliding-Frame Approach for Scheduling Large and Complex IT Projects

Yuval Cohen, Ofer Zwikael, Arik Sadeh
DOI: 10.4018/jitpm.2011100101
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Many IT projects and software development projects are very complex and sophisticated involving a large coordinated team. Such projects are a constant part of the operations of software companies such as Microsoft, SAP, Oracle, Google, Yahoo, IBM, and others. Many other companies carry large software projects as part of their IT operations. As a result of the size and complexity of such projects, a rolling horizon approach for their planning and management is not only plausible but also desirable. For large projects, traditional project scheduling techniques cannot provide an optimal and timely solution to minimum project duration under precedence and resource constraints. This paper proposes a technique that allows utilizing non-polynomial (NP) algorithms in a heuristic manner – generating high quality schedules in reasonable time. This approach can be applied efficiently for solving most project scheduling problems. The main advantage of this approach is its ability to dissect the original problem into small sub-problems of a controllable size to which exact techniques can be applied. Thus, it neutralizes the complexity of the applied algorithms (and their non-polynomial growth). Moreover, the same technique could be used for implementing a rolling-horizon approach in project planning and management.
Article Preview
Top

Introduction

Many IT Projects are large and complex giving rise to complicated scheduling problems characterized by the presence of both precedence constraints and resource constraints (Whitty & Maylor, 2009). This combination of constraints greatly complicates the scheduling and causes the project scheduling complexity to grow in a non-polynomial (NP) rate, effectively blocking the possibility of solving large problems optimally (Demeulemeester & Herroelen, 2002). The simplest form of these NP scheduling problems is the classical Resource Constrained Project Scheduling (RCPSP) (e.g., Kolisch & Hartman, 1999; Leung, 2004; Rivera & Duran, 2004) with one or many resources. Throughout the years, many complications have been added to the RCPSP, making it even more intracFigure: multi- mode resource availability (Wuliang & Chengen, 2009), uncertainty and stochasticity (Ballestín & Leus, 2009; Cohen & Zwikael, 2008; Kirytopoulos, Leopoulos, & Diamantas, 2008), multiple criteria (Maria, Teixeira, & Alencar, 2009), and resources leveling (Kastor & Sirakoulis, 2009) – to mention just a few.

The aim of these problem variations is to find the schedule with the shortest duration, setting the order and timing of each activity. This is more challenging than estimating the project duration by shortcuts such as the critical path (Zammori, Braglia, & Frosolini, 2009) or the critical chain (Ash & Pittman, 2008).

However, when it comes to large projects with hundreds or even thousands of activities it is impractical to use exact methods for finding the optimal solution (Demeulemeester & Herroelen, 2002; Ling & Tiong, 2008). The reason for this is that RCPSP is known to be non-polynomial (NP hard) (Demeulemeester & Herroelen, 2002; Kolisch & Sprecher., 1996; Kolisch & Hartman, 1999; Leung, 2004). This means that none of the exact optimal techniques can solve the problems faced by large projects in a timely manner. The current trend of managing multi-project environments makes planning and scheduling even more challenging (Laslo & Goldberg, 2008). The aforementioned large complexity requires a new approach, and this paper aims to suggest and investigate one.

In addition to the size and complexity of IT projects, their dynamic nature makes a rolling horizon approach desirable for planning and management (Collyer & Warren, 2009). A similar conclusion for other complex projects was found by Zaneldin (2009). This paper presents a practical technique that enables planning and even managing a large, complex, and sophisticated IT project in a rolling horizon manner. The main idea is to build a sequence of activities (a rail) and a sliding frame. The rail serves the frame as rails serve a train – as a linear basis along which to move. Each time the frame is set, the focus is on optimizing the frame. The frame slides in steps small enough to overlap the previous step. The paper discusses how to build the rails of the sliding frame, and the pros and cons of solving the frames rather than solving the whole problem.

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024)
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 3 Released, 1 Forthcoming
Volume 12: 4 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing