Home > Volume
2, Issue 2, June 30, 2007
Improving Resource Leveling in Agile Software Development Projects Through Agent-Based Approach
Successfully project planning, coordinating and controlling in order to deal effectively with projects sponsors, customers, unexpected risks and changing scope are difficult tasks even for the most experienced project managers. The tight deadlines, volatile requirements and emerging technologies are the main reasons for this lake of performance. This agile project environment requires an agile project manage¬ment. Different approaches to project planning and scheduling have been developed. The Operational Research (OR) approach provides two major planning techniques: CPM and PERT. Artificial Intelligence (AI) initially promoted the automatic planner concept. In order to plan a project, the automatic application of predefined operators is required. However, most domains are not so easily formalized in the form of predefined planning operators. The new AI approaches promote model-based planning and scheduling that are more appropriate for the agile project management. The paper focus is on the agent-based approach to project planning and scheduling, especially in Resource Leveling issues. The authors have developed and implemented the ResourceLeveler system, an agent-based model for leveling project resources. The objective of Resource Leveler is to find a scheduling of resources similar to the optimal theoretical solution which takes into consideration all constraints stemming from the relationships between projects, activity calendars, resource calendars, resource allotment to the activities and resource availability. ResourceLeveler was developed in C# as a plug-in for Microsoft Project. Future work will focus on the development of agile software agents for resources leveling.