I’m definitely agile

Comments Off on I’m definitely agile

Agile & Waterfall

In managing a project to develop and deliver a product the traditional way of delivery are methods such as PRINCE2 (PRojects IN Controlled Environments) which is a widely used project management method that provides all of the essentials for running a successful project. It is sequential in that one task is finished before the next starts and the product is delivered at the end and is managed by a plan. Traditional plan based sequential methods are known as generically as “Waterfall”.

agile&waterfallA new way of developing and delivering products is Agile.  It is a term commonly associated with software development. The Agile Manifesto was published in 2001, building on work throughout the 1990s, which summarised the core philosophy behind agile development philosophies. This consists of 4 key values and 12 principles.

“We are uncovering better ways of developing software by doing it and helping others do it.Through this work we have come to value:

1. Individuals and interactions over processes and tools
2. Working software over comprehensive documentation
3. Customer collaboration over contract negotiation
4. Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more”.

Agile: From Software Development to Business Change Projects

Agile started out improving software development but the term Agile has evolved into an umbrella for a group of methodologies that can be used to manage business change projects. Agile delivery teams will develop a project :

  • In an iterative and incremental way. In each short phase a delivery team will build part of the system and test it and customers will have some working functionality.  Priority is given to development of most value to the customer. User feedback is used to improve functionality in next iterations. Risk is reduced throughout the project as deliveries are made.
  • By responding to change. A delivery team can respond to valid changes to requirements, changes in technology or customer change.

It is worth noting that Agile, recently, has had a good press and Waterfall a bit of a poor one. However, both have value and can be utilised depending on the problem to be solved. A methodology does not make up for bad management or unreasonable constraints or criteria for success.

Agile: Three Major Approaches

Three of the major Agile approaches are Scrum, XP and DSDM:

  • Scrum – Team Focussed, Light, Empirical Agile
  • eXtreme Programming (XP) – Engineering focussed, Technical, disciplined Agile
  • DSDM – Project focussed, scalable, governable Agile

Agile: A New Paradigm for When Something’s Gotta Give

One of the major developments in thinking in Agile has been a to re-evaluate what should be done in situations where all criteria of success cannot be achieved and trade-offs have to be made – when something’s gotta give:

Triangles-diagramMod

Traditionally the scope or features remained fixed with time, cost and possibly quality having to flex. In Agile  time, cost and quality are fixed and features are flexed. Hopefully to be included in a later iteration. The breakthrough in thinking is that in many developments, too much time is spent upfront, planning and designing based on imperfect or no information, based on what customers think they want, based on technology that is changing. The Agile approach recognizes an imperfect world and tries to adapts to it in the most pragmatic way. This will not work in all circumstances. I’m sure we have all won customer contracts that include developments that are very uncertain but “cast iron” promises have been made to customers on price, on time, on features and on quality. But as I said earlier, good tools don’t make up for bad circumstances or bad management.

Agile: A New Risk Profile

agile-value-deliveryV1This approach of developing in fixed time cost increments with usable releases at the end of each increment getting customer feedback on working software (service, product) can reduce risk, reduce cost,  improve quality and be more adaptable to change. It is a seductive and compelling argument. That and the name Agile (who does not want to be agile?) has meant that Agile has become a meme that is having an increasing impact. It has become about values and behaviours, more about being agile than doing a specific Agile methodology.  This is sometimes dangerous as it means that conversations can become confusing especially as media and companies will use the term agile to increase hits or attract attention. But its always the way with ideas whose time have come, that have crossed the chasm and are ripping through the rest of the market.

More on Scrum

Scrum is the most popular approach for team management at the product delivery level. Data from Forrester’s Q3 2013 Global Agile Software Application Development Online Survey indicates that a whopping 90% of all teams practicing Agile development have adopted Scrum.

Scrum-ProcessV2

User stories in the form of “As a <type of user>, I want <some goal> so that <some reason>” are used to create individual requirements that go into a product backlog that is prioritised by value. Those that are committed to be delivered in the iteration or  next development cycle called a sprint are put into the Sprint backlog. Sprints can be from 1 week to a month depending on the development environment.

10-scrum-rules

Daily scrum meetings are stand-up for 15 minutes where progress is monitored, commitments made and impediments aired.

There are weekly planning and review meetings . Artifacts are light and include the product backlog (requirements), sprint backlog ( deliverables in this sprint), burndown charts (a monitor of value delivered and sprint velocity).

Agile & Waterfall Comparison

A comparison of Waterfall and Agile is shown below. Please note that either tool in the wrong hands can deliver poor results and in the right hands can deliver excellent results. It’s a matter of choosing the right tool for the job.

Attribute Waterfall Agile
Communication Bias Written Face-to-Face Conversation
Artifacts & Ceremonies Heavier Lighter
Documentation Heavier Lighter
Customer Relationship Negotiation Collaboration
Change Costly- Control Less Costly-Welcomed
Risk through project Risky till end Risk decreases throughout
Management Command&Control Trust to Self Organize
Prioritisation By Plan By Value
Delivery At end or large increments In smaller increments
Design & Planning Mostly Upfront Minimal Upfront&Throughout
When Something's Gotta Give Time&Cost Scope or Features
Strength Large Scale Projects Innovative software development
Questions Stifle Innovation? Corporate Governance and Project Management?
Team Size All Sizes Optimally Smaller
Team Location All Locations Optimally Co-Located
Predictability Can be more Can Be less
Learn and Improve Yes Yes

Comments are closed.