Project Management

is my passion.

Traditional Project Management has been around in its modern state since around 1950, and the Project Management Institue was formed in 1969 with the first PMBOK published in 1996.

 

Agile on the other hand, is a much newer process that originated with the Agile Manifesto in 2001 in order to create a better way addressing the rapid changes and uncertainties in software development.

 

 

What are the differences between the two?

 

 

According to the Project Management Body of Knowledge (PMBOK), traditional Project Management is comprised of Five steps:

 

Initiating - Defining a new project or phase by obtaining authorization to start

Planning - Establish scope, define and refine objectives, and develop a course of action

Executing - What is done to complete the work as defined in the project management plan to satisfy project requirements.

Monitoring and Controlling - Tracking, reviewing, and regulating progress/performance of the project

Closing - Formally completing or closing a project or phase.

 

Since each step occurs in sequence, you may have heard this as the "Waterfall Method".  The scope of the project is defined early on and will (in ideal circumstances) change very little.  Each dependency can also be more-or-less clearly mapped out in a timeline which allows for relatively easy tracking.  Like going over a waterfall, you start by cresting over the edge, then begin your descent until you finally reach the bottom.

 

However, the world and the people in it are complex.  Change and contingencies can occur which can significantly alter a project.  This is often the case in software development where a client's wants and needs can often adjust for any number of reasons.  New hardware was just announced, Microsoft decided to release yet another patch that breaks things, their user acceptance testing showed that no one is responding as positively as initially hoped...you get the picture.

 

In traditional project management it is hard to change the scope of a project once the planning phase has ended.  Since you've already established the track you are on by this point, any significant departures can result in needing to either consider the project a failed attempt or starting over from the top by re-obtaining permission to change the scope.

 

Agile was developed in order to address uncertainties and rapid changes.  Scrum is currently the most popular model of Agile and is what I will cover.  Scrum is a cycle of development that occurs in blocks of time up to one month in length.  This time block is called "The Sprint" and is broken into 4 parts:

 

Sprint Planning - Product Owner identifies and prioritizes tasks (product backlog times, or PBIs).  Development Team determines what can be accomplished in the current Sprint based on priority and chooses which items to work on.  Scrum Master ensures there are no roadblocks or unnecessary risks that may impact the work and the Scrum process.

Daily Scrum - A daily meeting of up to 15 minutes where progress is inspected and impediments are identified.

Sprint Review - Meeting that occurs at the end of the Sprint (max 4 hours) to inspect the outcome and if there any changes to the environment.

Sprint Retrospective - Inspecting how the last Sprint went and what can be done to improve the next Sprint.

 

Because development times occur in short bursts with a review at the end of each Sprint, changes can be made to PBIs more frequently and changes implemented much sooner than in Traditional Project Management.

 

 

At the end of the day if you were to ask me "Well, which method is better?" it would be hard to say.  Traditional Project Management excels when the scope is not prone to change and the outcomes are clear.  Agile methods are more suited to environments with a lot more uncertainty and change.

 

If I HAD to pick...I would reason that the world in an of itself is rapidly changing with global connectivity and commerce which has a direct impact on how businesses operate.  Agile allows for rapid adaptation and frequent communication with the entire team which lends itself to better community and mutual understanding.


To be a successful Project Manager, however, it is my opinion that you should be well versed in both schools of thought.