Learn how I can make a difference #thatsIntelligence

news

read more @ www.agileatwork.co.uk

Agile verses PRINCE2

I've resisted writing any sort of blog post comparing PRINCE2 with Agile for a very long... There's an awful lot of animosity within certain sectors of both communities, many vested interests and ill informed opinions! However prompted by a friend I thought I'd brave it and write a guide for those new to the subject.

Over the years, I've worked very successfully with both techniques and sometimes a combination of the two! A statement that will cause dismay to some of my agile friends!

I'm going to concentrate purely on PRINCE2 where used within the IT industry - Although it's used very successfully in many other industries (Which I personally think is where Prince 2 is still very much valid) and compare it with Scrum which is the most popular or at least famous implementation of Agile principles.

PRINCE2 (PRojects IN Controlled Environments) has been and still is the gold standard when it comes to Project Management certification - It's commercially widely recognised, accepted and has much respect.  Most PM jobs will ask for some level of PRINCE2 qualification. It's recognised in both the public and private sectors and used globally.

PRINCE2 fundamentally is a process driven methodology - The project is managed in a logical and organised way following defined steps.

Very roughly and originally PRINCE followed the following stages:

  • A feasibility Study
  • Initial stage - Where the project is team/organisation is setup
  • Specification Stage
  • Design Stage
  • Development Stage
  • Installation Stage
  • Operation Stage

There have been amendments and revisions over the years and I think (But stand to be corrected) the latest steps within PRINCE2 reads

  • Continued Business Justification
  • Learn from Experience
  • Defined Roles and Responsibilities
  • Manage by stages
  • Manage by Exception
  • Focus on Products
  • Tailor to suit Environment 

PRINCE2 is somewhat rigid in its implementation and intentionally so - The stages are to be followed in sequence, interface between delivery team(s) and stakeholders is often restricted or at least no natural mechanism exists for conversations to occur. 

The Project manager is responsible for controlling the project, monitoring progress, raising exceptions if required and keeping all parties fully informed of progress, changes and drawing up the time scales.

They may get to select the teams and individuals that work on the project. They are responsible for ensuring that all teams on the project know their responsibilities, how the project is to be run and ultimately the project manager is accountable for delivery.

Each PRINCE2 project will have a project board, consisting of the customer, a user or user representative (called the senior user) and hopefully somebody from the delivery team (Senior supplier). The project manager reports and is accountable to this board.

PRINCE2 is very much a contractual model -  justification, requirements and design all require sign-off and are effectively locked down once this has been achieved. This places enormous responsibility on the Stakeholders to fully understand the requirements which will often be in a rather technical format and often rather large as the process requires the capture of all requirements of the entire system up front... Often for a system that might not be delivered for many months or years.

Any change after this sign-off process needs to go via a formally controlled change control process.

PRINCE2 attempts to provide a framework which ensure that projects are delivered on time, on budget and to scope.

Scrum is a much more lightweight framework... I't's very much delivery team focussed and doesn't talk about wider project management concerns such as portfolio management or even project justification! This is not a concern of the Agile methodology.

However frameworks such as SAFe The Scaled Agile Framework are addressing some of those points - also as I have as eluded to earlier I've worked very successfully with Scrum surrounded by a PRINCE2 wrapper, but that deserves a blog of its own.

Scrum actively encourages cross-functional teams - In fact it goes further, within the team you don't have the traditional concept of job titles, everybody is working to develop and deliver the product. So it's common to have developers and testers paired up! developers doing testing, testers doing paired development and everybody working together in story writing workshops with the key stakeholders or users to capture requirements.. As you go! The Scrum team will also attend planning sessions and demos. 

Scrum does not have the role of Project manager - In fact Agile does not recognise the need for managers relying on self-organising teams (A core point in the Agile Manifesto) - Once again, that statement deserves its own blog.

Scrum does have a Scrum Master... But the Scrum Master is not the PM, they are a facilitator to assist the team and coach the organisations in the way of Agile - Scrum Master

Scrum also has the concept of a Product Owner - The Product owner is the face of the business or the business owner.... They own the product and are responsible for its delivery and what the product looks like - Product Owner

Scrum works on the principle of short iterations... Each iteration producing a potentially shippable product... By short we're talking of iterations lasting around 2 weeks!

Scrum and Agile don't try and understand the entire problem up front.... nor does it attempt to design or architect the solution in advance! The domain is explored as the product is developed... Such an approach allows the stakeholders to actively see the product being  developed, make late design decisions and ensures they are fully aware of progress. Indeed, Scrum insists that every iteration (AKA Sprint) ends with a demo/review to the Product Owners and key stakeholders.

The Product Owner then decides on the direction and stories (features) to be developed in the next iteration.

Scrum actively encourages collaboration at all levels and highly values face-to-face conversations over contract negotiation! This is one of the areas of Agile project management I don't think is given enough attention. The behavioural changes within an organisation of allowing stakeholders to change their minds (one of the core values of Agile is to welcome change) binds them into the decision making process but it also binds them into the consequences of such decisions. No longer is it us and them... It's a joint, informed and well-understood decision!

Agile works very well on projects which are poorly understood, highly complex or where change is highly likely. 

PRINCE2 is an excellent system for large projects which really are well understood, Where little or no R&D or investigation is required and where changes once signed off is actively discouraged.