1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
One of the main differences between classical project management and Agile is the fact that while the first is oriented on phases, and value is delivered only at the end of the project, the second focuses on customer satisfaction by delivering value incrementally and iteratively. Customer satisfaction tends to have a higher focus, as the customer has the opportunity to inspect the product at every step of the way.
2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
One of the values outlined in the Agile Manifesto is the ability to respond to change, rather than following a strict plan. In complex environments and in contexts characterized by lots of uncertainty, change is inevitable. It can be driven by several factors: technology, users, market rhythms, market events, competitors, and everything in between. We need to enhance the customer’s ability to remain competitive by adapting to the changes brought about by these factors and by delivering value frequently. Learning is key when we talk about iterative and incremental development.
3. Deliver working software frequently, from every couple of weeks to every couple of months, with a preference to the shorter timescale.
This principle is related to principle #1, outlined previously. In Agile, value is delivered frequently to satisfy customers and to speed up learning and adaptation. However, “frequently” may have different scales based on the context, organization, and product. This principle dictates that the preference always goes to a shorter and more sustainable time frame. “Frequently” depends on your context, organization, and other factors. For example: while once a day may sound too frequent for you, it works perfectly for teams in other organizations.
4. Business, people, and developers must work together daily throughout the project.
Two integral values of the Agile Manifesto are “Individuals and interactions over processes and tools” and “Customer collaboration over contract negotiation”. This principle relies on these two values. Everyone involved in the project needs to work together to collaborate, exchange thoughts and information, and talk about what’s going on. That means absolutely everyone: from business, to developers, and all other members and teams in between. We must have good communication and collaboration between all actors involved, in turn ensuring transparency, trust, shared responsibility, and ownership.
5. Build projects around motivated individuals. Give them the environment and support they need and trust them to get the job done.
The people within your organization are the ones doing the work. These people need to be motivated. They must have everything they need to deliver value frequently. We trust them to do just that. In theory, this sounds pretty straightforward. But in practice, it’s not that easy to achieve. Trust, ownership, purpose, mission, intrinsic motivation, decentralization of decision-making, a safe environment – those are just some psychological aspects that need to be present to enable motivation within your teams.