Agile Design: An Introduction

agile design

The Agile methodology is popular among product teams because it allows them to create products faster that meet customer needs better. Though Agile's roots are in software development, it's very effective in design as well. In this article, we’ll review the concept of Agile design and learn how it can help product teams deliver products faster without degrading the resulting user experience.

Template Icon

How is Agile methodology applied to product design?

Since the early days of software development, product teams have practiced a process called waterfall. Waterfall is a traditional product development process in which the individual phases of a project are organized linearly. This process works fine only when product requirements do not change along the way (which rarely happens in real life).

At the beginning of the 21st century, the software development community realized that they needed to follow a more flexible and efficient process to develop products. Agile methodology was introduced as an attempt to both cut costs in software development and make better software in the process. The community formulated 12 principles of Agile development, also known as the Agile manifesto. The key idea of this manifesto is that change is a constant, there is no need to fight it, and it's better to embrace it.

"Change is a constant, there is no need to fight it, and it's better to embrace it."

The product requirements that a team has at the beginning of the design process aren’t set in stone—they can evolve during the product development. Product teams can change design direction based on feedback from users and stakeholders. Having shorter timeframes to work within before a release also helps to keep the teams focused during the Agile process.

agile design: infographic displaying agile design versus waterfall
Waterfall versus the Agile design process. Image by visual-paradigm.

You might also like: The Complete Guide to Web Design Project Management for Developers, Designers, and Marketers.

7 essential Agile design principles

Here are a few fundamental principles required to successfully adopt Agile methodology in product design.

1. Executives are ready to support UX designers

Top management controls the budgets and timelines. The lack of support from executives usually results in diminished resources. Without executive backing, team members have to adapt to strict timeframes, and the lack of time and resources can make UX practitioners abandon essential activities such as conducting user research consistently.

Agile design is only possible when executives understand the role that design plays in the success of a product, and are ready to support UX practitioners during product design. Here are a few things that executives who value UX design do well:

  • They invite UX designers to participate in planning from the very beginning of a project, and they hear the voice of design practitioners. 
  • They try to make fewer unplanned requests. In Agile, all requests outside of the planned backlog will affect sprint planning, ultimately leading to ineffective team performance. When management understands how Agile works, they tend not to disturb planned activities (to the best of their ability). 
  • They give UX practitioners enough time for user research and testing. With the idea that good user research leads to better product design decisions, executives provide time and resources that UX practitioners need in order to conduct proper user research.

2. Teams must be cross-functional

The Agile design methodology implies that designers work alongside other team members (developers, marketing specialists, etc.) on a permanent basis. This helps to develop a sense of ownership for the project and build trust among team members. For example, developers are willing to listen to UX designers' insights and ideas because they know they share the same goal—to create great products for end users. 

You might also like: 3 Keys to Effective Remote Management for UX Designers.

3. Good product backlog management and project planning are essential

A product backlog contains product features that a team wants to introduce into a final product. Product designers who follow the Agile methodology need to prioritize the backlog carefully. All tasks should be evaluated according to the value they provide to end users. Employing tools like a user persona and empathy map can be beneficial for assessing individual tasks. When product designers have clearly specified the needs and wants of the target audience, it becomes much easier to identify features that provide more value to them. 

4. There are accurate estimations of the time to next release

Not only is it vital to identify features that you want to introduce into your product, but you need to estimate the time required to make them a reality, as estimations play a crucial role in managing team activities. Since Agile is all about moving and shipping fast, the product team should strive to produce incremental changes, rather than massive, all-at-once changes. It’s vital to estimate the time required to design features (the efforts of the design team) and the time needed to code these features (the efforts of the development team).

As a designer, you should be able to identify complex, time-consuming tasks in advance so that the team can schedule enough time to work on them properly.

5. Research and testing are baked into the design process

When it comes to product design, it’s critical to ensure that a team is building the right thing for their users. To quote Eric Ries, author of The Lean Startup, “What if we found ourselves building something that nobody wanted? In that case, what did it matter if we did it on time and on budget?” 

What if we found ourselves building something that nobody wanted? In that case, what did it matter if we did it on time and on budget?

Eric Ries

Both user research and testing are essential Agile design practices that should be integrated into the design process in a way that allows the team to not spend too much time on these activities, yet make sure that they provide a lot of value to the team. Techniques like conducting user interviews and field research are very useful to for this.

6. Design and development are iterative in nature

Agile design states that product design and development are iterative and incremental processes. In other words, large product releases (known as milestones) should be broken down into smaller, more manageable chunks. The product that’s produced during every iteration is validated according to user and business goals to constantly ensure the product is being designed according to the right specifications.

7. Constant communication is key

Communication is one of the most significant benefits of using Agile. The goal is to facilitate transparency—ensure that no one works in a vacuum, and knowledge is shared among the members. Agile methodology involves constant communication both within a team and with their product’s end users. 

Here are a few activities that teams should do to minimize the knowledge gap between team members:

  • Daily team syncs. Anyone involved in the product design and development process should meet daily. The goal of these meetings is to ensure each team member knows what’s going on in a project. 
  • Design review sessions. Designers and developers meet together to discuss design implementation details (evaluate design assets in the context of technical feasibility and suggest appropriate changes). 
  • Design retrospective meetings. Design retrospective meetings are conducted after each product design iteration. The goal of these meetings is to discuss what was done well, and what was not up to standard during the iteration so improvements can be made going forward.

It’s equally important to communicate with end users on a regular basis. Product teams should never assume that something will work for their users—they should validate all concepts by testing them with the target audience as much as possible. 

7 tips for effective Agile design

man sitting with a stylus and ipad in his lap

Here are some practical recommendations on how to make the most of the Agile design methodology.

1. Always keep the big picture in mind

Big picture thinking is critically important for creating user-centered designs. When the product team is always focused on providing incremental changes, they often forget about the overall goal—creating a product that will be valuable, functional, and usable for people. This effect is called tunnel vision—when a team focuses on producing a specific feature but does not think about how this feature will be integrated into the entire product experience. It usually leads to a fragmented user experience (when different parts of a product have different levels of polish).

"Big picture thinking is critically important for creating user-centered designs."

But users don’t interact with parts of a product in isolation: they use the entire product to accomplish their goals, and they evaluate it as one item. That’s why all parts of a product must work together so the product’s UX will be good.

Techniques like Jobs to be Done, the user journey map, and a UX storyboard can help you see the big picture of your product. By evaluating user journeys in the context of your current product, you will know where the users face the most problems so you can design a better product in the end. 

2. Have an iteration zero

Early in the product development process, the product team members need to have a general idea of how they’re going to build their idea. To get this understanding, it’s recommended to have an iteration zero in which product team members get together to discuss the initial requirements and form the idea of the future product. Iteration zero is especially important for UX practitioners because it gives them an opportunity to conduct research, invite team members to discuss both backlog and research findings, and establish an effective product strategy.

Designers, developers, and stakeholders get together in a room with a whiteboard to sketch out the future design and architecture of the product. At the end of this discussion, team members will have a shared understanding of what they want to build and create a concept of the future product. It doesn’t mean that the concept will be implemented exactly as the team decides on during that meeting. The design decisions can change over time. What is more important is the fact that the team will have a shared understanding of the direction that the project is going in. 

You might also like: Redesigning the Design Process: How to Work More Efficiently in 2020.

3. Keep team changes to a minimum

Each Agile team is unique—the team culture is created by the collective spirit and dynamics of the people who are a part of it. When you introduce change to your team, you disturb the team’s internal processes, which can ultimately lead to lower performance. It's recommended to avoid shifting people from one team to another if at all possible.

Of course, organizational changes may happen, and you might hire extra team members who increase the impact and output of the team! The point is to try to minimize shifting as much as possible, and when making a new hire, be deliberate in when, why, and how often you are doing it.

4. Appoint a Scrum master

agile design: visualization of the scrum process
Visualization of the Scrum process. Image by visual-paradigm.

Scrum is a process that focuses on running sprints in discrete units of time, during which the team aims to complete specific units of work (which are typically user stories when it comes to UX).

If you want to introduce the Scrum process into a new team, it’s vital to invite a dedicated Scrum master to the team to ensure that the process goes smoothly. The Scrum master will act as a coordinator for Agile activities and increase the chances that Agile methodology will be properly integrated into the team.

5. Create prototypes

In Agile design, you need to choose interactive prototypes over static mockups or wireframes. Prototyping is essential for two reasons. It:

  1. Allows you to test your concept and prove that it works correctly
  2. Simplifies design handoff

When designers hand off static design assets to developers, there is a significant danger that the developers won’t fully understand the concepts and code them differently. That’s why it's always recommended to create a simple but interactive model of your design (i.e., a low-fidelity clickable prototype), rather than sending static design artifacts.

6. Have designers that can code

Separating design from programming is risky because not all of the concepts created by designers are technically feasible—not everything can be easily translated into code. Designers who can code will evaluate a solution from a development as well as a design perspective, thereby being more likely to come up with a technically feasible solution. 

7. Learn when to document the work and to what extent

You should not spend time documenting your entire product thoroughly because the product will change over time. While you should not spend large amounts of time documenting product features that might change, you should document any complicated parts. Why? Because the underlying logic might not be clear without documentation, or the development team can miss some crucial nuances during implementation. For example, it can be hard for the development team to create an animation when they don’t have any information about timings for the animation function. Practice building the skill of knowing how much to document, when, and why.

Agile design helps create great products

Agile and UX can not only coexist but work well together. Product teams will always need to create products faster, and Agile design is an excellent tool to accomplish that. When UX design is integrated naturally into the Agile process, it helps to ensure that the product team will accommodate the needs of end users and create products that will be valuable for them as efficiently as possible. 


Grow your business with the Shopify Partner Program

Learn more