Application of Shuffled Frog Leaping Algorithm in Software Project Scheduling

Application of Shuffled Frog Leaping Algorithm in Software Project Scheduling

Tarun Kumar Sharma (Amity University Rajasthan, India)
DOI: 10.4018/978-1-4666-9885-7.ch011
OnDemand PDF Download:


Nature inspired intelligent algorithms is moderately a new research paradigm that offers novel stochastic search techniques for solving many complex optimization problems. These techniques mimic the social and natural behavior of vertebrates. The basic idea behind modeling of such techniques is to achieve near optimum solutions to the large scale and complex optimization problems which can't be solved using traditional or gradient based mathematical techniques. Here our focus is on the problems of optimization in software engineering design process. Quality Software is a sturdy foundation of Information Technology (IT) and developing the tactical competence among nationalities. It has been experienced that the working and life style is changed drastically with the emergence of Software. This chapter concentrates on Shuffled Frog Leaping Algorithm (SFLA) and employed to solve Software Project Scheduling (SPS) Problem. SPS is classified as a NP-hard problem with largely complex combinatorial optimization constraints.
Chapter Preview


Software engineering coined in late 1970’s describes the collection of techniques that apply an engineering approach to the construction and support of software products. Software is a strong foundation of information technology to develop the strategic competence among nationalities (Carbone et al. 2008; Wang & Patel 2009). The development of software involves several issues and goals like reliability, overrun of costs, user requirements etc. The improvement of software process has important practical significance to defuse software crisis, as it is influences the development and management of software (Hagan et al. 2010).

Software engineering activities include managing, costing, planning, scheduling, modeling, analyzing, specifying, designing, implementing, testing and maintaining software products.

In this chapter we have focused on one of the challenging problems in software engineering named as software project scheduling (SPS) problems. SPS plays a vital role in the design and development of quality software. It’s always a challenging issue to control processes and human resources and to allocate the resources (machine, time, software etc.) in efficient manner that must satisfy all the constraints in the development of software process.

Software project scheduling is basically a set of interrelated activities that are carried out at a specific time during the development process and allocation of various resources to perform each activity. The primary objective of SPS is to optimize three conflicting goals i.e. the project/product time, cost and quality as well while executing the project/product successfully (Chang et al. 2001).

Generally, in the software industry the project managers have been using classical project management techniques like Critical Path Method (CPM) (Kelley 1961), Programme Evaluation Review Technique (PERT) (Freeman 1960) and network analysis technique called Graphical Evaluation and Review Technique (GERT) (Fix & Neumann 1979) to handle scheduling problem. Managers use experimental data based upon past experience or projects completed. Any incorrect assumption in allocation of resources based on the above mentioned techniques and past data may result into major changes in the SPS as different software needs different planning and scheduling of resources.

In the recent years metaheuristic algorithms have gain the attention of many researchers to solve such complex SPS problems. Recently genetic algorithm (GA) (Alba & Chicano 2007), ant colony optimization (ACO) (Xiao et al. 2013) and differential evolution (DE) (Biju et al. 2015) have been successfully applied to solve SPS problems.

In this chapter we have solved the problem of SPS consulted from literature (Alba & Chicano 2007) using Shuffled Frog Leaping Algorithm (SFLA) (Eusuff & Lansey 2003) and one of its variant. Here we would like to mention that the preliminary version of the SFLA variant is presented and published in the proceedings of International conference on Soft Computing Problem Solving (SocProS 2014) (Sharma et al. 2014). SFLA is a recent addition to the family of nature inspired intelligent algorithm proposed by Eusuff et al. in 2003 (Eusuff & Lansey 2003). SFLA is formulated on the concept of evolution of memeplexes in Frogs. Having the advantage of both, PSO and mixing of the information (taken from GA), SFLA has also proved its efficacy and ability in discovering global optimal solutions to several combinatorial optimization problems (Eusuff & Lansey 2003; Sharma et al. 2014; Kumar & Kumar 2014; Arandian et al. 2014; Naruka et al. 2014; Rajpurohit et al. 2014; Singh & Sharma 2015).

Complete Chapter List

Search this Book: