Total Pageviews

28 January 2008

PRINCE2 + AGILE = Common sense?

An article on how Agile can sit alongside PRINCE2 and where DSDM Atern fits in.

In 2007, I put "used an Agile/PRINCE2 development strategy" on my CV. It's been quite the conversation starter at interviews. So I thought it would be of interest to blog about it here and gauge the reaction/feedback.

First off PRINCE2 is an acronym for "PRojects IN Controlled Environments" (version 2). PRINCE2 is a generic project management method for exercising control over a project's startup through to closure (SU1 to DP5 for all you who enjoy punch card like references). It's a generic project management method that had its origins in IT but which now makes no reference to IT and could be used from anything from building a ship to planning your summer holiday. Whether you would want to use it on the latter is entirely up to you. The same flexibility of choice is not however accorded to the large number of public (and increasingly private) sector projects that use it since it is seen as the de-facto project management method and its use is frequently mandated, despite there being other methods that may be more relevant for the task in hand. There have also been a large number of complex and extensive government IT project failures recently many of which would have used PRINCE2 and which highlight that even a refined method such as PRINCE2 can run aground on large scale, long running projects that are subject to considerable change.

On paper, PRINCE2 is logical, reasonable and linear. However, as experience suggests - for example in the long series of failed UK Government IT projects where PRINCE2 is the mandated method - simply being logical, reasonable and linear, is not sufficient. It is not sufficient to make it the effective project management method business and public sector organisations really need."
From PRINCE2 problems by Business Transition Technologies


PRINCE2 is based around project control. Control is clearly a Good Thing, however being a generic method with no reference to IT, the closest IT development method would be the waterfall method, which is very well lampooned on the Waterfall2006 site. It is just these shortcomings of the waterfall method which seem to cause the biggest problems with PRINCE2 projects, especially those which due to their complexity and length of development are prone to large amounts of change. PRINCE2 also does not account for software projects comprising multiple versions and how these are handled, nor for website development and deployment which can be an almost continuous process.

Change is inevitable in projects. In response to this Agile development methods arose to deal with this change more effectively, particularly from a software engineering perspective and unlike PRINCE2, cover in detail the more day to day activities such as sprint planning, daily meeting structure etc. Agile does not have comprehensive cover for project management, however the Agile DSDM development method was developed with PRINCE in mind, as detailed in the paper using DSDM with PRINCE2 [PDF]. Thus the combination of Agile and PRINCE2 is not as contradictory as it might at first seem. One is a development method for managing change, the other is a project management method for exercising control, so the two compliment one another and should result in a management method for control in a changing environment. One can see from this white paper on integrating DSDM into a PRINCE2 environment [PDF] that at the actual delivery level the focus is much more on the agile processes rather than PRINCE2.

Alistair Cockburn (no relation) and others have produced a set of agile management methods however this has grown out of the agile community and consists of a set of principles rather than the sort of detailed how-to that would make it easy to sell to the PRINCE2 diehards.

The most complete agile project management method I have come across is DSDM Atern which is described as follows:
What is DSDM Atern?

Atern is an agile project delivery framework that delivers the right solution at the right time.

Importantly, Atern harnesses the knowledge, experience and creativity of end users. It uses an iterative lifecycle to evolve the most appropriate solution to satisfy project objectives.

Using planned, visible timeboxes with clearly-specified outcomes control is exercised throughout by the project manager and the team members themselves.

Roles are clearly defined and work is divided into timeboxes with immoveable deadlines and agreed outcomes.

Atern Agility
Atern’s agile approach avoids the cumbersome rigidity of ‘big design up-front’ without the inevitable risks of ‘no design up front’.

Since it is worth spending some early time examining the structure of the overall solution before building any components, Atern advocates that projects should do just ‘enough design up front’.

Atern flexibility
Atern can be used to complement other project management disciplines such as PRINCE2 ™ and PMI without duplication of effort.

The description of DSDM Atern on amazon.co.uk explains further:

Atern is the leading, proven, agile approach providing the governance and rigour along with the agility and flexibility organisations demand today. It is also ideal as a wrapper for more limited agile approaches to ensure that the whole project lifecycle is addressed. Atern is a proven 'battle hardened approach' and has been responsible for the successful delivery of innumerable projects around the world. Its provenance across both IT and non-IT contexts goes back to 1994 with substantial productivity gains independently verified by the UK Software Metrics Association.


Making PRINCE2 Agile

So it seems to me that you could use PRINCE2 for the high level governance of a project, Atern for the structure of how the project development is to be organised and prioritised and scrum techniques for the day to day elements of effectively organising the software engineer's time and daily priorities. Although for a true DSDM Atern approach, PRINCE2 isn't needed at all - whilst it is possible to combine DSDM and PRINCE2, DSDM Atern by itself is actually enough and also embodies from the outset the Agile principles which are completely absent from PRINCE2. The particular challenge for Atern lies in integrating Atern projects within a waterfall corporate culture and of DSDM takeup and experience generally, which is unfortunately quite low.

This is just intended as an overview to illustrate that PRINCE2 and Agile are not necessarily contradictory and that is possible to combine elements of both successfully, particularly when it comes to the managing a stage part of PRINCE2 - Agile turns this into many small stages comprising stable components of work suitable for release. However, what remains a mystery to me is why government departments have been so reluctant in the face of the number of IT failures I have blogged about to promote an agile implementation of PRINCE2 and how it can best be delivered for complex IT projects running into billions of pounds. DSDM Atern isn't necessarily suitable for all projects, but certainy for iteratively deployed projects which are happy to embrace change, it should be considered as a more suitable alternative to PRINCE2.

This whole sense approach to software development from project governance to day to day management would seem to be the holy grail for minimising such failures. Perhaps it is time to encourage those who mandate PRINCE2 to understand this in order to minimise further wastage.

Further reading on DSDM is available on the DSDM website and for discussions with the authors of DSDM, I would recommend the DSDM group on LinkedIn.

Craig

Update: in June 2011 I wrote an update covering Agile and PRINCE2.

10 comments:

Anonymous said...

I agree with you that on some cases Prince2 and agale can be a good combination. In most cases I think it is not.
I do not agree that "Control is clearly a Good Thing".
And especially combined with agile.
Agile is about giving the responsibility to the team.
I do understand that in some companies Prince2 is the default methodology. I also understand that it (prince2)might not be a good thing for all projects. So by combining both methodologies (Agile is not a methodology but that is another discussion) they hope to get the project going, and still getting the project finished on time etc.
For me his is a sign that they avoid discussion. If Prince2 does not work for that kind of project, it should be made clear to upper managment that having a default project methodology is not a good thing for this company.
Avoiding that kind of hard discussions at the beginning of a project is a bad start. It might came back later to hunt you.
In most of these cases Scrum + XP is a better combination.

peter said...

Great blog. I would be please if you could look at www.princelite.co.uk. I intend to check out all of your references. You talk a lot of sense.

Peter

Matt Gould said...

From experience, I feel that one of the clear benefits of Agile type approaches to software development is that clients often don't know what they want or need until they actually see working software, something the early deliverable nature of Agile achieves.
This is particularly poignant in public sector procurement which tends to feature multi-agency, 'clients' that want completely different things. These types of projects tend to become hampered by Prince2's inability to deal with a competing client agenda, something that Agile can do very effectively.
Prince2 also treats change as something to be minimised and managed rather than be recognised as an integral part of the creative and developmental process as is the case within Agile.
I agree that Agile and Prince2 can live together happily, the problem for me is that for many projects for which Prince2 is used, it is not the best option.

Craig Cockburn said...

There's now a LinkedIn group for PRINCE2 professionals

See here: Prince2 LinkedIn

flashard said...

Good article, but what it neglects to probe is why with the evidence of PRINCE2 failures do so many organisations (including the public sector) continue to use it slavishly for IT projects.

In my experience it comes back to procurement - with many/most customers pushing for fixed price projects with payment increasingly being tied to delivery of pre-agreed milestones (e.g. documented & signed-off). Agile doesn't get a look-in because procurement people don't buy the argument that any up- front cost with up-front scope is just delusional given the fact of change/clarification. The procurement person who signs a contract saying that "Agile promised to get me closer to my real requirements more quickly with less waste" would be fired the moment something went awry.

chris said...

I like this article....well done :-)

I think to answer one of the later questions, PRINCE2 exists in companies because:
1. they do not want to re-write a methodology,
2. they want a COTS style solution with defined training programs, and,
3. there is little else out there that can be customised to fit any project.

As for Prince2 vs Agile....
From a project stand point Prince2 would control the framework of a 'Programme' i.e. capture what the business requirements (even if they are high level), benefits of these requirements, draft an overall project plan. One of the components within this plan would be a work package to 'create a system or tool'...then that work package can use what ever method it likes providing it provides the required outputs required by Prince2 i.e. Quality Register et al.

I find it hilarious when people say that Agile and Prince2 are different PM methods and not compatible. One is a Project methodology and the other is System Development Life Cycle (SDLC). SDLC's 'always' sit within a project plan. After all, how would they otherwise get backing and business justification? From my experience Agile is not great at enforcing the customer to detail benefits where as Prince2 mandates the business case which goes through the board (or who ever is providing the budget) for approval through to implementation and is used to quantify a success!

Roy said...

A decade ago I got interested in software procurement (See http://www.faxfn.org/07_software.htm) so I'm pleased to see this authoritative discussion. What I was unable to discover was any literature that assessed the success rate of PRINCE2 - or its predecessors.

Is there any?

Craig Cockburn said...

Following this blog post from 2008, I am pleased to announce that in addition to all the hands-on experience and writing here about it, I am now certified in DSDM Atern having passed my exam recently with flying colours.

Kevin Brady said...

Hi just written this article you all need to read. I believe PRINCE2 is AGILE so the + is not nessary. Old wine in new bottles in my view.

http://eprince2.com/articles/prince2-is-agile/2011/03/17/

G.M.PRASHANTH said...

Nice one i found it useful,

G.S.R.Murthy,
Chartered Engineer,
India.

Popular Posts