Agile software development is a value-driven discipline. At its root, agile values human creativity and ingenuity over all else.
It also calls for individuals and interactions to be valued equally, or even more than processes and tools.
This blog explores the four core agile values and their pros and cons and how to employ them on customer experience projects. Keep reading to find an additional guideline while employing agile values.
What Are the Agile Values?
Agile values serve as a guiding ethos, or the suggestive ways, of the core values of agile. Values are core to the Agile Manifesto and the behaviors that underpin it. They form a core aspect of being agile as they guide us in our decision-making process and the choices we make every day during this journey.
People on an agile team will share core agile values which means that you’re going to have a core set of behaviors and mindsets that you should aim to follow every day.
A core value is a belief that should underpin everything we do in an agile way. These core values help us create an ethical approach around our daily activities, decisions, and interactions with each other.
The Agile Manifesto was written by the Agile Alliance in 2001. It is an agreement to follow core values and principles. The core principles and core values in the Agile Manifesto help us to guide our decisions in a consistent way, so we don’t waste each other’s time.
According to the Agile Manifesto, incorporating agile values can help in responding to change efficiently. The core values of the Agile Manifesto are interdependencies between each other.
The 4 Core Values of Agile as Outlined by Agile Manifesto
Agile Value 1: Individuals and interactions over processes and tools.
This principle is about valuing people before valuing processes and tools.
The focus in this core value is on interactions between people when doing work – to create better products. We can increase productivity if we work together on building better products, not only for individuals.
Agile Value 2: Working software over comprehensive documentation.
This principle values working software more than comprehensive documentation.
The main focus of this core value is on how to build better products with an agility that can rapidly respond to change.
Documentation sometimes does not help in responding to change efficiently. Instead it slows the process down.
Agile Value 3: Customer collaboration over contract negotiation.
Collaborate with customers before doing work.
The focus of this core value is on building better products with an agility that can rapidly respond to change. Contract negotiation sometimes limits the ability of organizations to be able to work in agile ways.
Agile Value 4: Responding to change over following a plan.
This final principle values responding to change more than following a plan.
The focus of this core value is on the purpose of agile which is to respond to change.
How Are Agile Values Different From Agile Rules?
Agile values are different from agile rules because agile values are core to the agile methodology which includes core principles, core practices, core artifacts, and core values.
Rules provide guidance at one or more of these levels depending on whether they are specific rules or guiding principles. On the other hand, agile values provide guidance at the core value level.
Values are simply higher-level, abstract, or fundamental concepts that guide behavior in some way and people hold them regardless of their situation (e.g. culture, organizational structure, approval process).
Another important difference between agile values and agile rules is their focus. While values focus on what is important from an organizational perspective, rules focus on how things should be done. They serve as a guide to the process and actions of agile teams. In other words, they are about action, not the intent.
However, the similarities between agile values and rules are also important. Just as agile rules rely on and support the four core agile values, the four core agile values also guide actions for agility teams by guiding their behavior.
In the next section, we’ll examine the pros and cons of having agile values.
What Are the Pros and Cons of Using Agile Values for Customer Experience?
Pros of Incorporating Agile Values
- Makes the team more adaptable and flexible to any change: Agile values encourage change in the team to meet any challenges they may face. It is for value as agile practices such as continuous delivery and CI/CD would not be possible without agile values such as increasing quality and collaboration.
- Makes it easier for teams to spot the opportunity and respond to them: The core agility team members do not have to go through the processes or documentation that are not agile. It is a core value as these values would reduce the time of agile teams to respond to change and will help them become more efficient.
- Encourages learning: Agile values encourage learning by adapting practices on the fly. The agility team members are encouraged to learn by agile practices such as continuous technology used in production.
- Enables transparency: Transparency means that there is no confidence between agility teams and the value is agile methods. It ensures that both parties will have an open channel to communicate with each other.
- Empowers teams: It empowers agility teams to make decisions about products. The agile team has the capacity to self-govern, make good choices, and learn from failure. This will eliminate the need for managers who would otherwise hinder agile projects with their bureaucracy.
- Solve problems quickly: It enables agility teams to solve problems quickly. Agile methods are free requirements that enable multiple levels of management, require little documentation, and respect current working practices.
- Helps the development team deal with customer issues: Agile development teams have the capacity to manage customer requests and complaints. The team will have abilities to prevent problems by using these methods.
Cons of Incorporating Agile values
There aren’t many obvious con agile values. However, over time some of the drawbacks that have been acknowledged are as follows.
- Cons of customer collaboration: Customer collaboration can lead to a slow product development process and a high project risk, if the customer, who is also the product owner, does not have a good understanding of what they want or how it should be developed. On larger projects with multiple user groups, this becomes an even more significant problem. In this case, there is a need for an effective product owner.
- Cons of responding to change: Responding to change can also slow down the process. For example, it could be very difficult for the team to plan and estimate the work if no one knows what they will be doing until just before they do it. The inability to plan the work causes the iteration to end up with a lot of unfinished work.
- Cons of working software: Not all code is created equal. It takes a long time to hand off working software from one group to another. Without an effective team, it could end up taking more resources and time to create the working software than if the work were done within one team. The slow down in development can lead to high costs for both teams.
- Cons of individuals and interactions: In order to work as a team, the team needs to know how the individuals work. In agile development, teams are defined by who they are made up of instead of what they do. This leads to groups that don’t understand how others think and work which leads to less effective communication.
Guidelines to Keep In Mind While Employing Agile Values
- Agile values are not a strict process or methodology that order specific ways of creating or developing a product like rules, rather they are the underline, guiding ethos, or the way of working.
- Agile values should be interpreted by teams in a way that works for them, values should not be implemented as a set of rules.
- Agile values work best when teams decide which value is applicable to them and how they should use it. Teams should continuously learn and improve.
- Agile values are not rules, if teams feel that one of the values can hamper their progress then they should ignore or change it.
- Agile values are not a strict process or methodology order, Agile teams can follow processes and methodologies as long as they also work according to the values.
- Agile values should be interpreted by teams in a way that works for them value’s should not be implemented as a set of rules.
- Agile values work best when teams decide which value is applicable to them and how they should use it.
Agile is suitable for teams and organizations that are willing to go through rapid change and yet remain flexible under pressure. This requires the team to be self-organizing, communicative, highly collaborative, and transparent.
Agile values are most effective when applied in teams with members who are willing to change their habits towards team success. It is not easy, but once you master it, this can be used by your team for years to come.
The values are not rules, they are guidelines to help you think out of the box. You have the right tools now, go ahead and apply agility in your customer experience projects.