Agile Principle 2
The second principle of the Agile Manifesto states, "Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage."
In other words... change is good.
"Even late in development?" How does that feel? Probably not good. But why? Because late changes always result in a lot of work (or rework), which increases risks and costs. In general, if you draw the curve of costs (or expenses) for change over time, this will be exponential since the later a change is completed, the more costly it becomes. But it doesn't have to be this way!
This principle may initially seem counterintuitive, especially to those used to traditional approaches to creating a product or service. After all, in the conventional approach, changes to requirements were often viewed as a nuisance or a sign of poor planning. However, in the agile world, change is embraced as an opportunity to create more value for the customer since the changes are based on feedback.
This principle says we should welcome changes, which can mean only one thing; keep your product or service changeable or adaptable! Some practices allow this to occur, one of which is to evolve the product or service step-by-step, receiving feedback on potential changes after each increment but keeping those changes small, and the feedback loops fast. This also results in building something that only satisfies the last feedback loop change and nothing more, thereby not "bloating" the product or service with a capability that is not valuable.
To understand why this principle is so essential, it's important to remember that the business environment is constantly changing. Customer needs and priorities can shift rapidly, new competitors can enter the market, and technology can evolve quickly. By welcoming changing requirements, agile teams can ensure that they deliver a product or service that is responsive to these changes and meets the customer's needs in the current business context.
Of course, welcoming changing requirements is easier said than done. It requires a certain degree of flexibility and adaptability on the part of the team. It also requires a commitment to ongoing collaboration with the customer to understand their changing needs and priorities.
Notably, welcoming changing requirements does not mean the working process lacks structure or discipline. Agile methods are highly disciplined, focusing on transparency, accountability, and continuous improvement. However, this discipline is applied flexibly and adaptively to meet the customer's changing needs.
So, the only true statement we can genuinely predict about the future of a product or service is that it will need to change!