Agile
Agile Project Management
The main principles of agile project management is taking an incremental and iterative approach for planning, priortizing and identifying requirements. The agile team works on the requirements in priority order to deliver the highest value features first. Agile helps teams respond to unpredictability through incremental, interative work and feedback. Some commonly recognized benefits to the agile approach are:
Speed to market
Improved quality
Improved visibility
Increase productivity & team engagement
Improved customer satisfaction
Agile Project Planning
There is often confusion on how agile can coexisit with a more traditional project management approach such as PMBOK. At a high level the phases of an agile development project are not that different from those of any other project. The project must first be defined and planned, then executed per plan, while the project manager monitors and guides the project team.
Scrum
Scrum is an agile process most commonly used for software or product development. Projects progress forward via a series of iterations called sprints. Typically a sprint is two to four weeks long. In a sprint, the agile team schedules the development of requirements into user stories, features or use cases. At the start of the sprint, the team prioritizes the work in a product backlog and completes the highest priority items first. At the end of the sprint, the team produces a potentially shippable product increment.
When to use agile?
The types of projects best suited for agile are those with aggressive deadlines and a high degree of uncertainty & complexity. Agile allows projects to start with less requirements identified up front. Requirements are built out incrementally and certainty is increased through collaboration and feedback. This however, makes it harder to predict and plan target dates. If the project is one where the team has delivered a known solution over and over then the project most most likely doesn't need an agile approach.
At the end of the day, although the method in which we do our work is important, delivering and executing a successful project that satisfies our customers and stakeholders is what really matters.
To learn more about agile please check with your manager on formal training opportunities and there is also a wealth of information on the web.