A brief View of Project Scheduling Techniques

DOI : 10.17577/IJERTV2IS120568

Download Full-Text PDF Cite this Publication

Text Only Version

A brief View of Project Scheduling Techniques

Battu Hanumantha Rao 1, Ashwin Gandhy 2, Rahul Ramkishan Rathod 3,

1Assoc.Prof. & Dean-Academics, NH College of Engineering, Parli Vaijanath 431515,Beed Dist.,MH.(India) 2Assoc.Prof. & Director, Daripally Anantharamulu College of Engineering, Khammam 507 001, AP (India) 3Asst.Prof. Dept. of CSE,Sharadchandra Pawar College of Engineering, Otur, Pune 412409, MH. (India)

Abstract-The main objective of this paper is to provide a brief view on various project scheduling techniques that might be helpful to software project managers to deliver the project on time and aiming to support the development of successful systems. The classification of scheduling techniques by how they are implemented is considered in detail through several aspects. Each kind of techniques is used to achieve a particular task and capture the structure and behavior of the system at various levels of detail. The techniques are meant to support work estimates and deadline into a network of SE tasks.

Keywords-Program Evaluation and Review Technique(PERT), Critical Path Method (CPM).

I.INTRODUCTION

Due to rapid development of the software industry, medium to large-scale software companies are now facing a highly competitive market in the society. To succeed in the market and to satisfy the customer needs, companies have to make efficient project plans to ensure that the project should be delivered on time, to reduce the cost of software development and exhibits high quality. However in software companies the problem of project planning is a very complex and highly challenging. Most of the projects failed due to inefficient planning of projects and human resources. Plans acts as road map of complicated process to manage simple and complex projects. The project planning deals with project complexity, project size, the degree of structural uncertainty.

Due to the difficulty and importance to establish a pragmatic strategy for controlling, tracking, monitoring a complex technical project, there is a growing need for developing effective computer aided tools for software project planning in recent years.

  1. PROJECT PLANNING

    A project plan is a formal, written document that is used to prepare for, manage and control a project. The project plan forms the basis for all management efforts associated with a project. The purpose is to define each task, estimate the time, risks and resources required.

    The objectives of the project planning includes defining, the projects assumptions & constraints, estimates to be documented for tracking and controlling the project, the specific work to be performed , the size of the projects, project schedules, project risks

  2. PROJECT SCHEDULING

    Project Scheduling is an activity that distributes the estimated effort across the planed project duration by allocating the effort to specific software engineering tasks.The Schedule connects the scope, work estimates and deadline into a network of SE tasks and Must Manage Parallelism (tasks can be undertaken simultaneously) & Dependency (task has an effect on subsequent tasks). Failure by project management to recognize that the project is falling behind schedule.

    The basic principles of scheduling are allocation of time and effort to each task, compartmentalization of the work, note task interdependencies; define responsibilities, outcomes and milestones of the project. Table 1 shows the facts that cause the project late delivery.

    Sno

    Fact

    1

    Technical difficulties

    2

    Human difficulties

    3

    Underestimate of effort

    4

    Underestimate of number of resources

    5

    Establishing unrealistic deadlines

    6

    Changing customer requirements

    7

    Predictable and/or unpredictable risks

    8

    Miscommunication among project staff

    Table 1. Why your projects late

    A project schedule is required to ensure that required project commitments are met and to track progress toward achieving these commitments.

  3. PROJECT SCHEDULING TECHNIQUES: Program Evaluation and Review Technique

    (PERT), Critical Path Method (CPM), Resource- Constrained Project Scheduling Problem (RCPSP) Model, Search based techniques, Event Based Scheduler Software Project Management Net (SPMnets) Model are the few of the existing notable project scheduling techniques titled in [1] [4].

    By analyzing all these existing techniques, it is found that the primary objective is to deliver the project on time, effort distribution, managing human and technical difficulties. Each technique is designed on a particular principle to meet the end user requirements and to manage the projects.

    1. PROGRAM EVALUATION AND REVIEW TECHNIQUE (PERT):

      PERT is a method to analyze the involved tasks in completing a given project, especially the time needed to complete each task, and to identify the minimum time needed to complete the total project.

      PERT chart explicitly defines and makes visible dependencies (precedence relationships) between the work breakdown structure elements. It facilitates identification of the critical path and makes this visible and also facilitates identification of early start, late start, and slack for each activity. PERT provides for potentially reduced project duration due to better understanding of dependencies leading to improved overlapping of activities and tasks where feasible. The large amount of project data can be organized & presented in diagram for use in decision making.

      The major limitations/demerits of PERT are, it is not easily scalable for smaller projects, The lack of a timeframe on most PERT/CPM charts makes it harder to show status although colors can help (e.g., specific color for completed nodes). The network charts tend to be large and unwieldy requiring several pages to print and requiring special size paper. When the PERT charts become unwieldy, they are no longer used to manage the project and there can be

      potentially hundreds or thousands of activities and individual dependency relationships.

      UNCERTAINTY IN PROJECT SCHEDULING:

      During project execution, however, a real- life project will never execute exactly as it was planned due to uncertainty. It can be ambiguity resulting from subjective estimates that are prone to human errors or it can be variability arising from unexpected events or risks. The main reason that PERT may provide inaccurate information about the project completion time is due to this schedule uncertainty. This inaccuracy is large enough to render such estimates as not helpful.

      One possibility to maximize solution robustness is to include safety in the baseline schedule in order to absorb the anticipated disruptions. This is called proactive scheduling. A pure proactive scheduling is a utopia; incorporating safety in a baseline schedule that allows to cope with every possible disruption would lead to a baseline schedule with a very large make-span. A second approach, reactive scheduling, consists of defining a procedure to react to disruptions that cannot be absorbed by the baseline schedule.

    2. CRITICAL PATH METHOD (CPM) :

      A Critical Path Method is a project management tool used to formulate a time frame for a project in order t determine where potential delays are most likely to occur. The process includes a step- by-step process that provides the developer with a visual representation of potential bottlenecks throughout the course of the project.

      CPM helpful for scheduling, monitoring, and controlling projects and it is widely used in industry; it determines slack and floats times. A project manager can determine actual dates for each activity and compare what should be happening to what is taking place and react accordingly.

      CPM determines the project duration, which minimized the sum of direct and indirect costs. It evaluates which activities can run parallel to each other and can define multiple, equally critical paths. The activities and their outcomes can be shown as a network.

      The major limitations/demerits of CPM are,CPM's can be complicated, and complexity increases for larger projects. Does not handle the scheduling of personnel or the allocation of resources. The critical path is not always clear and needs to be calculated carefully, Estimating activity completion times can be difficult.

    3. PROGRAM EVALUATION AND REVIEW TECHNIQUE (PERT) VS CRITICAL PATH METHOD (CPM):

      Both CPM and PERT (Program Evaluation and Review Technique) provide the user with project management tools to plan, monitor, and update their project as it progresses. There are many similarities and differences between the two.

      Similarities between PERT and CPM are, both follow the same steps and use network diagrams, both are used to plan the scheduling of individual activities that make up a project and they can be used to determine the earliest/latest start and finish times for each activity.

      Differences found between PERT and CPM are, PERT is probabilistic whereas CPM is deterministic. In CPM, estimates of activity duration are based on historical data and in PERT, estimates are uncertain and we talk of ranges of duration and the probability that activity duration will fall into that range and CPM concentrates on Time/Cost trade off.

    4. RESOURCE-CONSTRAINED PROJECT SCHEDULING PROBLEM (RCPSP) MODEL:

      Resource-constrained project scheduling involves the scheduling of project activities subject to precedence and resource constraints in order to meet the objective(s) in the best possible way.

      The RCPSP involves the scheduling of a project its duration subject to zero-lag finish-start precedence constraints of the PERT/CPM type and constant availability constraints on the required set of renewable resources

    5. SEARCH BASED TECHNIQUES:

      Search based techniques used for optimizing software project resource allocation: The search based techniques can be applied to optimize resource allocation in a software engineering project. The three notable search based techniques are Encoding method, the hill climbing approach and The simulated annealing approach.

      The search based techniques results of experiments that alter the size of the project teams. While for a small overall staffing level, double-sized teams do not improve performance, increasing the overall staffing level is sufficiently high; it proved effective to have double sized teams.

    6. EVENT BASED SCHEDULER (EBS) :

    Event Based Scheduler (EBS) is to develop a flexible and effective model for software project planning. This approach represents a plan by a task list and a planned employee allocation matrix. In this way, both the issues of task scheduling and employee allocation can be taken into account.

    In the EBS, the beginning time of the project, the time when resources are released from finished tasks, and the time when employees join or leave the project are regarded as events.

    The basic idea of the EBS is to adjust the allocation of employees at events and keep the allocation unchanged at nonevents. With this strategy, the EBS method enables the modeling of resource conflict and task preemption and preserves the flexibility in human resource allocation.

    Uses Ant Colony Optimization (ACO) algorithm [1] – The underlying idea of ACO is to simulate the foraging behavior of ants.

    Conclusion:

    The Existing techniques are increasingly considered to be inadequate for modeling the unique characteristics of todays software projects. The main reason is that, differently from other projects, a software project is a people-intensive activity and its related resources are mainly human resources. Techniques like PERT and CPM lack the consideration of resource allocation and scheduling models like the RCPSP do not consider the allocation of employees with various skills. The tools based on the traditional project management techniques usually regard task scheduling and human resource allocation as two separated activities and leave the job of human resource allocation to be done by project managers manually resulting in inefficient resource allocation and poor management performance.

    The existing models only focused on staffing and the problem of task scheduling was not considered. In all of the existing models, there is an assumption that preemption is not allowed. This assumption reduces the flexibility of human resource allocation for software projects. Task preemption in software projects is only considered in a few studies.

    Overall, developing effective approaches for software project scheduling and employee allocation remains a challenging problem and deserves further research.

  4. CONCLUSION

The Existing techniques are increasingly considered to be inadequate for modeling the unique characteristics of todays software projects. The main reason is that, differently from other projects, a software project is a people-intensive activity and its related resources are mainly human resources. Techniques like PERT and CPM lack the consideration of resource allocation and scheduling models like the RCPSP do not consider the allocation of employees with various skills. The tools based on the traditional project management techniques usually regard task scheduling and human resource allocation as two separated activities and leave the job of human resource allocation to be done by project managers manually resulting in inefficient resource allocation and poor management performance.

The existing models only focused on staffing and the problem of task scheduling was not considered. In all of the existing models, there is an assumption that preemption is not allowed. This assumption reduces the flexibility of human resource allocation for software projects. Task preemption in software projects is only considered in a few studies.

According to authors point of view overall, developing effective approaches for software project scheduling and employee allocation remains a challenging problem and deserves further research.

REFERENCES

[1]. Wei-Neng Chen and Jun Zhang Ant Colony Optimization for Software Project Scheduling and Staffing with an Event-Based SchedulerIEEE Transactions on Software Engineering, vol. 39, no. 1, January 2013.

[2].R.-G. Ding and X.-H. Jing, Five Principles of Project Managementin Software Companies, Project Management Technology (inChinese), vol. 1, 2003 [3].L.C. Liu and E. horowitz, A Formal Model for Software ProjectManagement,IEEE Trans. Software Eng.,vol. 15, no. 10, pp. 1280-1293, Oct. 1989

[4].C.K. Chang and M. Christensen, A Net Practice for SoftwareProject Management,IEEE Software, vol. 16, no. 6, pp. 80-88,Nov./Dec. 1999.

[5]. C.K. Chang, M.J. Christensen, C. Chao, and T.T. Nguyen,Software Project Management Net: A New Methodology onSoftware Management, Proc. 22nd Ann. Intl Computer Softwareand Applications Conf., 1998

[6]. C.K. Chang, M.J. Christensen, and T. Zhang,

Genetic Algorithmsfor Project Management,Annals of Software Eng.,vol. 11, pp. 107-139, 2001.

[7].A. Shtub, J.F. Bard, and S. Globerson,Project Management:Processes, Methodologies, and Economics,second ed. Prentice Hall, 2005. [8].B.Boehm, SoftwareEngineeing Economics.Prentice-Hall, 1981.

[9] B. Boehm et al., Software Cost Estimation with COCOMO II.Prentice-Hall, 2000

[10].T. Stu¨tzle and H. Hoos, Max-Min Ant System,Future GenerationComputer Systems,vol. 16, no. 8, pp. 889-914, 2000.

  1. A. Bauer, B. Bullnheimer, R.F. Hartl, and C. Strauss, MinimizingTotal Tardiness on a Single Machine Using Ant ColonyOptimization,Central European J. Operations Research and Economics, vol. 8, no. 2, pp. 125-141, 2000.

  2. B. Pfahringer, Multi-Agent Search for Open Shop Scheduling: Adapting the Ant-Q Formalism, Technical Report TR-96-09, Austrian Research Inst. of Artificial Intelligence, 1996.

  3. C. Blum and M. Sampels, An Ant Colony OptimizationAlgorithm for Shop Scheduling Problems,J. Math. Modelingand Algorithms,vol. 3, pp. 285-308, 2004.

  4. C. Blum, Beam-ACO-Hybridizing Ant Colony Optimization withBeam Search: An Application to Open Shop Scheduling,Computers and Operations Research,vol. 32, pp. 1565-1591, 2005.

  5. R. Kolisch and S. Hartmann, Heuristic Algorithms for Solving theResource-Constrained Project Scheduling Problem: Classificationand

    Computational Analysis, Handbook on Recent Advances inProject Scheduling,J. Weglarz, ed., pp. 197-212, Kluwer, 1999.

  6. R. Kolisch and A. Sprecher, PSPLIBA Project SchedulingProblem Library: OR Software ORSEP Operations ResearchSoftware Exchange Program, European J. Operational Research,vol. 96, no. 1, pp. 205-216, 1997.

  7. L. Ozdamar and G. Ususoy, A Survey on the ResourceConstrained Project Scheduling Problem,Trans. IIE,vol. 27,pp. 574-586, 1995Ozdamar and G. Ususoy, A Survey on the Resource

    [18]. N. Nan and D.E. Harter, Impact of Budget and Schedule Pressureon Software Development Cycle Time and Effort,IEEE Trans.Software Eng.,vol. 35, no. 5, pp. 624-637, Sept./Oct. 2009.

    1. Battu Hanumantha Rao received M.Sc. and M.Tech degrees in Computer Science and Engineering and also received MBA degree in HR. He is also a research scholar at the Department of Computer Science and

      Engineering, Acharya Nagarjuna University, Guntur (AP). He is currently an Associate Professor in Computer Science and Engineering Department with the NH College of Engineering, Parli Vaijanath, and Maharashtra, Where he is the Dean of the Institution. He worked in various positions in Engineering colleges and P.G. Institutions. Mr Rao is having around 13 years of experience in teaching and managing educational institutions. His areas of interest are Software Engineering, Computer Networks and Operating Systems

    2. Ashwin Gandhy is currently working an Associate Professor in Department of Computer Science Engineering at Daripally Anatha Ramulu College of Engineering,

      Khammam (AP), where he is the Director of the institution. He received his Master of Information Technology degree from University of Ballarat, Sydney Campus and B.Tech degree in CSE from JNTU-Hyderabad. His research interests are at the area of Software Engineering andData Mining. Mr Ashwin is having 8 years of experience in teaching, software development.

    3. Rahul Ramkishan Rathod received B.E degree in Computer Science and Engineering and appeared for

M.E in Software Engineering. He is currently an Assistant Professor in Computer Science and Engineering Department at Sharadchandra Pawar College

of Engineering, Dumbarwadi (Otur), Pune. He is having around 4 years of teaching experience. His research interests are at the area of Software Engineering and Computer Networks.

Leave a Reply