The idea of agile project management has conceived from agile software development. An agile software development is a group of software development methodologies which provide quick and strong coordination and collaboration in project oriented organizations. Agile Project Management (APM) is an iterative and incremental process take ideas from agile software development and apply all these ideas to project management. Simply, when project oriented organizations used object oriented technologies to manage projects for active, quick and efficient results or output to promote a project management process and encourage stakeholder involvement, feedback, and effective controls it is called agile project management.
APM provides valuable work with speed and quality Agile Project Management is emerging in the industry as an alternative approach. It is highly iterative and incremental process of collaboration among developers and project stakeholders. They actively work together to understand and identify needs and priorities. The APM approach is based on many iterative and incremental planning and development cycles that allow a project team to evaluate the evolving project constantly and get immediate feedback from all stakeholders. Every cycle is a learning cycle for project team that improves the project working methods.
Agile Project Management Process
Agile project management process consist on following steps.
Envisioning is the 1st phase of agile project management process. It is an initiating phase of APM. After scoping and pre project planning, the initiating phase starts with vision. In this phase manage-ment mange initial support and funding for the project and stakeholders, starting to build the team, modeling an initial architecture for the project, setting up the environment and estimating the project. No titration occurs during this phase.
Speculating is 2nd phase of APM process. It is also called planning phase of APM. In this phase manger done the following tasks analyze requirements, identify the priorities and iteration schedul-ing. It is also an iterative phase. Iteration cycles occur repeatedly during this phase until all stake-holders are satisfied. Collaboration and communication is most important feature of speculating phase.
Exploring is 3rd phase of APM process. Execution is take place in this phase. After detailed and clear planning exploring phase is start. In this phase design coding testing and deploying take place itera-tively. All stakeholders actively participate during execution phase.
Adapting is 4th phase of APM. It is also controlling phase of APM. Measurement evaluation and cor-rectness occur in adapting phase. Management control and monitor all the process of exploring and conduct different testes for adaption of project deliverables.
Closing is 5th and final phase of agile project management process. It involves releasing the final de-liverables to the customer, handing over project documentation to the business, terminate contracts, releasing project resources and communicating project closure to all stakeholders after successfully adaption of deliverables.
Agile methodologies are made of processes, principle, tools and collaboration of people. Methodologies do not manage projects but provide help to manage projects. Methodologies provide simplicity and most com-pact team structure and process for any organization which make the development process more speedy and efficient.
Some important agile methodologies which are used for managing agile projects.
Extreme Programming (XP) (Kent Beck, Ward Cunningham, Ron Jeffries)
XP is collection of best and extreme twelve interconnected practices. These practices make XP most well-defined and displayed agile process. Many development groups of different companies around the world have adopted XP practices as successful APM methodologies.
Scrum (Jeff Sutherland, Mike Beedle, Ken Schwaber)
Scrum is a term taken from rugby which means to get an out-of-play ball back into play. This term used in Japan in 1987 to describe hyper-productive development. It is a lightweight, highly agile management framework with a set of values and practices that truly helpful in optimization of environment development. It reduces organizational overhead, and synchronizes market requirements with iterative prototypes.
DSDM – Dynamic Systems Development Method (Community Owned)
DSDM is development method that focuses on the business priorities and delivers. It is used in APM to find, how safely delivered within the time and cost constraints of the project according to priority order determined by the business needs and the objectives of the project. It is a business-oriented approach that adopted feasibility study and business study stages in its development lifecycle. Code and design use incremental iterative process to receive maximum feedback from all stakeholders during the development process.
Crystal (Alistair Cockburn)
In crystal methodologies, Team and individuals are involved in the software process than that of process oriented approaches. Crystal provides help for team organization and managing. It reduces paperwork with increasing teamwork, personal satisfaction, and clear communication.
ASD – Adaptive Software Development (Jim Highsmith)
Adaptive Software Development is helpful for those organizations where requirements change and flexibility is a necessity.
Xbreed (Mike Beedle)
XBreed is a mixture of XP. It was designed with the intent to develop reusable software in record time.