Back in 2001, a team of experts got together to talk about the best ways to make software development more efficient. They came up with something called the Agile Manifesto, which you can still find online today.
This manifesto has four main pillars and twelve principles for improving productivity in development projects.
It's all about building trust, being open and honest, and communicating clearly. Here's the really cool part: even though this manifesto was made for development projects, it can also help out with UX Design! Keep reading to find out how.
A methodology or a philosophy?
The most important document about the Agile philosophy is still available online. The Agile Manifesto has been online since 2001, containing the key pillars and values supporting this philosophy.
But why do we call it a philosophy and not a methodology?
A methodology involves specific methods, procedures, and rules to achieve a particular end result. However, the Agile Manifesto does not prescribe any specific method or procedure.
Because of this, it is correct to say that Agile is more of a philosophy than a methodology. The Manifesto highlights some key considerations that help choose a methodology that aligns with Agile principles.
With this understanding, let's proceed to the pillars and principles of the Agile Manifesto.
The 4 pillars
The Manifesto describes four pillars:
1) Individuals and interactions over processes and tools
We should prioritize the interaction between people and question any process or tool that hinders such interactions. If it is easier to sit next to someone and facilitate a conversation, for example, why should we do it over email?
2) Working products and services over comprehensive documentation
There is no point in wasting time creating extensive documentation or specifications for a product that doesn't function properly. It is preferable to have an excellent product and document only the necessary information, without unnecessary details.
3) Customer collaboration over contract negotiation
To avoid major frustrations, the customer should actively collaborate in the development of their product. It is important to have alignment meetings during the development process to address any necessary course corrections. Co-creation is the keyword for this pillar.
4) Responding to change over following a plan
It is normal for doubts and unexpected situations to arise during a project. The fourth pillar of the Manifesto emphasizes the importance of being able to adjust your project plan in response to these changes. This ensures that the final product meets the user's expectations.
The pillars described above form the foundation for the 12 principles outlined in the Agile Manifesto, which we will explore next.
Reading tip: 5 Books to Boost Your UX Design Career!
The 12 principles
Each of the principles is related to one of the pillars described above. Here are the principles for Pillar #1:
Principles for Pillar #1:
- Develop products and services with motivated teams: Clearly communicate project objectives and trust in the team's work.
- Face-to-face conversations: Increased interaction among team members prevents communication gaps and reduces errors in the project.
- The best solutions emerge from self-organizing teams: Empower teams to make the best possible decisions and foster collaboration among multidisciplinary team members.
- Gather to reflect and adjust: Teams that are capable of pausing to discuss the project's progress are more effective in making necessary corrections.
Please note that the provided translations have been improved for clarity and fluency while maintaining the intended meaning.
Principles for Pillar #2
- Deliver meaningful results in short cycles: An agile way to ensure that the project development meets expectations is by breaking down the final outcome into small deliverables. For each of these deliveries, the timeframe should be as short as possible without compromising the product's quality and the team's work quality.
- A functional product is the best measure of your team's success: Evaluate the team and reward them based on their capabilities and excellence in delivering functional products.
- Create an environment where value delivery is constant: Continuous interaction among all project stakeholders – clients, UX designers, programmers, and users – is crucial. This way, product improvements can also be continuous.
- Constantly pay attention to technical and design details: Focusing on the quality of deliveries enhances the team's execution quality.
Principles for Pillar #3
- The team's priority is to satisfy the customer through early and continuous value delivery: The sooner we deliver a part of the product to the customer, the sooner we receive feedback from them.
- All individuals involved in the project must work together: Continuous interaction among the client, UX designers, programmers, and users is essential. This eliminates communication gaps.
Principles for Pillar #4
- Change requests, even if they are late, are always welcome: The timing of change requests doesn't matter. What's important is ensuring customer satisfaction and reprioritizing activities as necessary.
- Simplicity is the art of minimizing future work: Planning and organizing priorities simplify the work process.
Best practices for implementing Agile
We have observed that the Agile Manifesto encompasses pillars and principles. But how do we apply them in our daily work routine?
Check out the following practices that are aligned with the Agile philosophy:
- Social Contract: describes the working rules for your team. The team itself writes this document, which includes various details such as work methods, schedules, breaks, and more.
- Standup Meetings: short meetings conducted while standing. The idea is to be quick and productive without allowing room for distractions or interruptions.
- Delivery Schedule: breaking the project into small cycles and deliveries, enabling incremental progress.
- Retrospective: discussions held between cycles, addressing questions, successes, mistakes, and new ideas for the next delivery cycle.
- Showcase: presenting the project to the client. It is important to conduct presentations throughout the project to ensure expectations are met and frustrations are minimized.
- User Journey: Understanding the user's interactions with the product and engaging the team with their story.
These are just a few practices to adopt the Agile style. However, there are many other practices that can work for your team and company.
The key is to always keep the pillars and principles in mind and choose the practices that best align with them.
Reading tip: User Journey Map: Understanding and Improving Interactions
Methodologies that bring agility
As explained above, Agile is not a methodology but a philosophy. A philosophy composed of pillars and principles that aid in the selection of an agile method.
In this sense, there are several widely adopted methods in the market that are closely aligned with the Agile Manifesto:
- Kanban
- Scrum
- Lean UX
Kanban
The word Kanban literally means "board" and was created by the Japanese company Toyota. Its purpose was to demonstrate the stages of production to achieve better control over it.
To use this methodology, simply draw three columns, preferably on a board, labeled "To Do," "Doing," and "Done." Then, describe all the tasks that need to be done on sticky notes and place them in the corresponding column. As the project progresses, move the sticky notes from "To Do" to "Doing," and finally to "Done."
Kanban is a simple methodology but provides great visibility into activities. It allows for an overview of the project, knowing what needs to be done, and predicting potential issues along the way.
Please note that the translation has been improved for clarity and fluency while maintaining the intended meaning.
Scrum
The Scrum methodology is widely used in software development projects. However, it is a methodology that can be applied to projects in any field. As a result, it is common to find projects in finance, administration, and HR that utilize this methodology.
Scrum is divided into three major blocks: roles and responsibilities, activities, and documentation.
Roles and Responsibilities
In this block, the following roles are defined in the project:
- Product Owner: responsible for the interaction between the client and the team;
- Scrum Master: responsible for maintaining the methodology's functioning. They are the ones who adapt the activities and lead the team;
- Scrum Team: the individuals who make up the team. They do not have defined roles within the team and are typically multidisciplinary professionals.
Activities
The Scrum methodology includes several fundamental activities:
- Sprint Planning: Sprints are work cycles that typically last between 2 to 4 weeks. Sprint planning involves listing the activities and estimating the time required for each of them.
- Daily Scrum: These are brief daily meetings to track project activities. The full presence of the team is important during these meetings.
- Retrospective: Following the concept mentioned earlier in this article, retrospectives are meetings held at the end of each Sprint to gather feedback. It is important to share all kinds of information, including mistakes, successes, and improvements for the next sprint.
Documentation
The Agile Manifesto does not prioritize heavy documentation. In Scrum, the documentation is simpler and more agile:
- Product Backlog: This is a list of priorities the Product Owner writes. It is an open document, meaning it can accept new activities at any time.
- Sprint Backlog: This is a list of activities to be completed during a Sprint. It is developed collaboratively by the Product Owner and the Scrum Master.
- Definition of Done: Every task should have a clear definition of what constitutes its completion. This allows for a more accurate estimation of timelines.
Lean UX
The day-to-day work of a UX Design team involves various documentation tasks, such as flowcharts, wireframes, sitemaps, and taxonomies, among others. Developing these documents, often due to bureaucratic processes, can be time-consuming and delay the product launch.
To address this issue, we have Lean UX.
Lean UX is a methodology that focuses on simplifying validation and approval processes. It emphasizes simple documentation and the use of prototypes to facilitate understanding of the product or interface being developed.
The agility of Lean UX lies in its ability to quickly present the product or interface to the entire team, gather feedback, make corrections, and test with users. Instead of spending time creating a detailed flowchart in software, for example, you can quickly sketch the flow on a whiteboard and gather the entire team to validate the process.
The goal of Lean UX is to create experiments and quickly test them with users, in order to validate (or invalidate) the hypotheses that have been formulated. This approach aims to avoid wasting resources such as time, money, and effort.
Kanban, Scrum, and Lean UX are just three examples of agile methodologies. Don't limit yourself to these examples alone. Explore new methodologies that align better with your objectives. After all, that's what being agile is all about.
Reading tip: Service Design: How Does it Relate to UX Design?
The Benefits of Agile Philosophy
In an interview conducted by NN/g (Nielsen Norman Group), several key benefits of the Agile philosophy were identified among the interviewees:
- Transparency: Issues are identified in advance, and improvements are delivered faster. Before Agile, development was carried out without collaboration, and problems would only arise at the end of the project.
- Better Time Management: Teams become more concise and respect meeting schedules. As the team becomes accustomed to and implements Agile, they become more precise in terms of timing, both in meetings and delivery deadlines.
- Improved Communication: For most of the interviewed teams, one of the greatest benefits is improved communication. As Agile promotes more interaction and collaboration among project stakeholders, communication becomes an essential tool.
While the benefits are certain, don't be deceived. Applying the Agile philosophy to your team and company takes patience and persistence.
The interviewees admitted that the beginning was not easy. However, after some time of implementation, improvement, and team integration, no one wants to go back to traditional development processes.
However, it's worth noting that the Agile Manifesto was conceived primarily to assist software development teams. At no point was UX Design included in this Manifesto. So, is it possible for UX designers to utilize Agile in their projects?
Agile in UX Design
We understand that the Agile philosophy brings new perspectives to the processes and methods involved in project management. As a result, some Agile practices involve shorter development cycles.
Product designers may find it challenging to adapt to the Agile philosophy because their processes, such as research, development, and testing, can be time-consuming due to their focus on User-Centered Design.
However, there are product designers who have successfully overcome these challenges and work in an Agile environment. Unfortunately, part of this achievement lies in the hands of the organizations themselves.
There are several factors within companies that facilitate an Agile environment for UX design:
- Design Culture: If the company strongly emphasizes design, UX processes are more likely to be prioritized and considered in an Agile environment.
- Leadership: In companies where product designers take on leadership roles or demonstrate leadership skills, there is a higher likelihood of incorporating UX into Agile processes.
- Flexibility: The principles and pillars of the Agile Manifesto explicitly define the need for flexible processes to ensure agility. UX design thrives in companies where Agile processes are more flexible. After all, it would be ironic to build rigid and inflexible Agile processes.
- Team Collaboration: UX designers should be able to work collaboratively with developers. Both parties should understand the project's objectives as well as the individual goals of each area. Providing space and trust for UX designers to work alongside the team ensures a favorable and agile environment.
Despite the organizational factors mentioned above, there are some tips that product designers can use to enhance the user experience in an Agile environment.
10 Tips to Improve UX Design within an Agile Organization
NN/g has compiled the following 10 tips to enhance the user experience in an Agile environment:
Invest time in planning and building the User Journey
Planning and creating the User Journey at the beginning of the project will encourage stakeholder collaboration in the process. This ensures that the entire team is aligned with the objectives even before starting the activities.
Conduct UX activities ahead of the Sprints
Sprints are the time intervals between delivery cycles, typically lasting around two weeks. With such a timeframe, conducting all the necessary UX activities, including research, wireframe creation, and testing is challenging. Therefore, it is important to perform these activities in a cycle ahead of the development cycle. For example, all UX work can be done in sprint 1, while sprint 2 focuses on development.
Foster a collaborative culture
Developing a collaborative culture is crucial for success. UX Designers should contribute to improving communication and collaboration among project stakeholders.
Focus on iteration, not perfection
The goal is not to get everything right on the first try but to embrace trial and error and fix mistakes quickly. Continuous improvement is key, so fail, learn, and iterate.
Participate in Standup meetings
Standup meetings often provide feedback and updates on activities. Participating in these meetings is essential to stay informed and direct your efforts towards the right priorities.
Make research events for the entire team
User testing is vital for uniting teams and influencing decisions. UX Designers should involve the entire team in research activities. Making decisions based on testing is important for project success, and the entire team should understand its significance.
Ensure stakeholder engagement
Promoting a UX culture ensures that all parties understand the importance of Product Design. This allows UX to work better and establish itself as a part of the environment.
Define roles and responsibilities
Since UX was not initially part of the Agile philosophy, it is important to manage expectations by defining the roles and responsibilities of each project member. This way, the entire team understands the importance of each member in the project.
Manage training
To ensure that everyone understands their roles and the role of UX within the Agile environment, it is important to provide quick alignment training. There is no rework or time wasted when the team knows their objectives and responsibilities clearly.
Modify your method until it works
Following the principles of the Agile Manifesto, test your methods and modify them to best meet your needs. Eliminate anything that does not add value and wastes time.
Reading tip: How To Use Storytelling To Promote Your Career
The Agile philosophy can be challenging to adhere to and relies on various factors. However, it is undoubtedly a mindset that brings numerous benefits to professionals and companies.
Although this philosophy was initially devised for developers, it can also be highly valuable for UX Designers. It demands considerable effort and patience, but the positive outcomes are truly worthwhile.