Welcome
changing requirements, even late in development. Agile processes harness change
for the customer's competitive advantage.
The following illustration underscores the chance of external circumstances spoiling our carefully drafted waterfall project plan. Sudden, unexpected winds may change the course of the canon ball away from its carefully calculated trajectory. In contrast, a missile that can adapt its course along the way and adapt to changes in the environment is more likely to hit the target. That is why, in agile project management, we plan frequently – in so-called iterations*. Note that this is opposed to the common myth that Agility equals no planning! At the start of every iteration, an agile team plans how to arrive at the iteration goal – a usable increment (Principle 1 & 3).
Visualised by the cannon ball and its sophisticatedly calculated trajectory, in waterfall project management we aim for the big bang solution delivery; a large delivery, all at once. These sort of deliveries are planned under the assumption that 1) The customer knows exactly what the way, 2) The team knows exactly how to develop it and 3) Nothing changes along the way.
The (uncomfortable) truth about our VUCA world, however, is that our world becomes increasingly unpredictable. The only certainty is uncertainty. Frequent, iterative planning is the only way to ensure not going off-course – no matter how sophisticated and informed forecasts may be. This is visualised by the so-called cone of uncertainty:
It may have become obvious already what such uncertainty means for our 3 assumptions above. Upon travelling along this cone – getting closer to the point in time, where the project finishes – 1) the customer discovers what they want, 2) the team discovers how to develop and 3) many things change along the way. These are the 3 operating assumptions in a VUCA world.
Agility serves these assumptions. In every iteration, we focus on functional increments and thereby we keep the focus on customer value (Principle 1, 3 & 7), instead of losing sight of it in the midst of following a grand plan to achieve a Big Bang delivery, from which we are actually unknowingly diverging on every step of the way. We will only know our delta between what we created and what is useful for the customer at the very end. Naturally, this delta is larger than when developing iteratively, where customer feedback frequently supports us to adapt the course.
Deliver working solution* frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
Principle 3 is hardly distinguishable from Principle 1. However, it seems that a common interpretation of Principle 1 is that it has a general focus on iterative & incremental value delivery, while Principle 2 focusses on the frequency of value delivery (the Iteration) and Principle 3 focusses on the purpose of the Iteration (delivering a functional Increment).
While waterfall project management aims at a large delivery at the end of the project, the agile approach aims at usable & functional increments, delivered frequently in iterations (Principle 2).
Next week, we'll be exploring principle 4 of the Agile Manifesto. Stay tuned!
Introduction to the Agile Manifesto & Part 1 – The Agile Team: Skills & Culture
Principle 1: Our highest priority is to satisfy the customer through early and continuous delivery of valuable solutions*.
Principle 2: Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
Principle 3: Deliver working solution* frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
Principle 4: Business people and team* must work together daily throughout the project.
Principle 5: Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
Principle 6: The most efficient and effective method of conveying information to and within an agile team is real-time conversation.
Principle 7: Working solution* is the primary measure of progress.
Principle 8: Agile processes promote sustainable development. The sponsors, team*, and users should be able to maintain a constant pace indefinitely.
Principle 9: Continuous attention to technical excellence and good design enhances agility.
Principle 10: Simplicity – the art of maximizing the amount of work not done – is essential.
Principle 11: The best architectures, requirements, and designs emerge from self-organizing teams.
Principle 12: At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Value 1: We value individuals and interactions over processes and tools.
Value 2: We value working solution* over comprehensive documentation.
Value 3: We value customer collaboration over contract negotiation.
Value 4: We value responding to change over following a plan.
*LEGEND:
Business Value: Business Value encompasses any deliverable, feature, or enhancement that directly contributes to customer satisfaction, employee well-being, or overall organizational success. It can encompass not only customer-facing elements but also internal enablers that improve efficiency and effectiveness within the organization.
Developers: has been exchanged by team to recognize that Agile Teams can encompass a diverse range of roles and functions beyond just software development
Iteration: An Iteration refers to a distinct phase or cycle within a development process, where a set of tasks or activities are completed in a defined timeframe. In Scrum methodology, an Iteration is known as a Sprint, typically lasting 2-4 weeks, during which a set of prioritized work items are completed.
Lead Time: Lead Time refers to the duration it takes for a task or project to move from the initial request or conception stage to its completion, including all necessary processes and steps.
MVP (Minimum Viable Product): The MVP is a basic, functional version of a product or service that includes essential features, allowing it to be deployed or released to gather early feedback from users or customers.
Software: has been replaced by solutions to account for the fact that Agility does not only apply to software development, but to any kind of value that a business offers to the customer.