Agile Principle 1: Active User Involvement Is Imperative

In my mind, active user involvement is the first of 10 key agile principles. It’s not always possible to have users directly involved in development projects, particularly if the agile development project is to build a product where the real end users will be external customers or consumers. In this event it is imperative to […]

Agile Principle 2: Agile Development Teams Must Be Empowered

An agile development team must include all the necessary team members to make decisions, and make them on a timely basis. Active user involvement is one of the key agile principles to enable this, so the user or user representative from the business must be closely involved on a daily basis. The project team must […]

Agile Principle 3: Time Waits For No Man!

In agile development, requirements evolve, but timescales are fixed. This is in stark contrast to a traditional development project, where one of the earliest goals is to capture all known requirements and baseline the scope so that any other changes are subject to change control. Traditionally, users are educated that it’s much more expensive to […]

Agile Principle 4: Agile Requirements Are Barely Sufficient

Agile development teams capture requirements at a high level and on a piecemeal basis, just-in-time for each feature to be developed. Agile requirements are ideally visual and should be barely sufficient, i.e. the absolute minimum required to enable development and testing to proceed with reasonable efficiency. The rationale for this is to minimise the time […]

Agile Principle 5: How Do You Eat An Elephant?

How do you eat an elephant? One bite at a time! Likewise, agile development projects are delivered in small bite-sized pieces, delivering small, incremental *releases* and iterating. In more traditional software development projects, the (simplified) lifecycle is Analyse, Develop, Test – first gathering all known requirements for the whole product, then developing all elements of […]

Agile Principle 6: Fast But Not So Furious

Agile development is all about frequent delivery of products. In a truly agile world, gone are the days of the 12 month project. In an agile world, a 3-6 month project is strategic! Nowhere is this more true than on the web. The web is a fast moving place. And with the luxury of centrally […]

Agile Principle 7: Done Means DONE!

In agile development, “done” should really mean “DONE!”. Features developed within an iteration (Sprint in Scrum), should be 100% complete by the end of the Sprint. Too often in software development, “done” doesn’t really mean “DONE!”. It doesn’t mean tested. It doesn’t necessarily mean styled. And it certainly doesn’t usually mean accepted by the product […]

An Interview with Kevin Gaskell: How to go from ordinary to extraordinary

A conversation with Kevin Gaskell: business man, leader, investor, entrepreneur, author, speaker, and record-breaking adventurer. “All ordinary people have the potential to be extraordinary” Occasionally you meet someone truly inspirational. Extraordinary, even. Kevin Gaskell is certainly one of those people. He’s led some of the world’s most iconic brands, including Porsche, BMW and Lamborghini. He’s […]

Software Delivery As A Competitive Advantage – The Need for Change

There has never been a more important time to be outstanding at software delivery.  An organisation’s capability in software development is now a major differentiator.  Possibly the difference between success and failure.  So what’s changed? Project failure According to various studies, almost 70% of all software projects fail. Materially fail to meet their objectives, in […]

Why Consultants have a Unique Advantage

As someone who believes wholeheartedly in the concept of consulting (I do run a consultancy after all!), I have often found myself wondering what it is that consultants bring to the table. After some reflection, I think there are a number of advantages that can be very impactful when consultants are utilised in the right […]