President of WebFX. Bill has over 25 years of experience in the Internet marketing industry specializing in SEO, UX, information architecture, marketing automation and more. William’s background in scientific computing and education from Shippensburg and MIT provided the foundation for MarketingCloudFX and other key research and development projects at WebFX.
Recently, a coalescing of Agile software development methods and UX design has resulted in what is being called Agile UX design. Agile UX design frames user experience design within the Agile development framework. To a few, this idea might come as a surprise because Agile methods and UX design seem like they are unrelated, or even at odds.
Agile software development presumes and embraces the unknown as part of building and shipping a product. In other words, Agile views product development as an iterative process. On the other hand, conventional design methods stress the need for getting as much knowledge and certainty up-front regarding the product being built, and how users might use it. However, looking deeper, you will see that combining Agile and user experience design philosophies can mean an efficient way of building great things.
Key Principles of Agile Software Development
For those not familiar with Agile, a concise list of Agile principles can be found here: Principles behind the Agile Manifesto. Reading the principles of Agile will help you understand its important core concepts. Though many different types of Agile method implementations exist (e.g.
Scrum, Crystal Clear, XP) there are a few key principles that unify them:
Team-member interactions play a key role in software development.
Customer feedback and deep analysis is an integral part of the development process. Feedback is collected and gauged early on, putting the end-user in the driver’s seat of product development.
Projects are completed in increments, allowing software development to respond to changes as part of the process.
These key principles demonstrate how embracing Agile methods can improve and complement user experience design methods.
What is Agile UX?
Agile UX embraces the key principles of Agile software development, reframed in the context of design activities. Designers work in continuous collaboration with team members, integrating customer feedback and change with each iteration on the project.
Activities at each product iteration stage may evolve or enhance the look-and-feel of the software product, so designers are a crucial element of the Agile team. No one works in a vacuum. Developers and designers work together to build a cohesive product.
The design of the software evolves in tandem with subsequent iterations, as opposed to being applied to the product as a pre-development activity. To mitigate knowledge gaps that may arise from the transitory nature of project specifications, constant contact and design review meetings are held to keep in sync with product iterations.
Tips for Implementing Agile UX
The following tips may help you in introducing and integrating Agile methods to your current UX design workflow.
Learn the Basics of Agile Software Development
Since Agile UX design is somewhat of a departure from the traditional UX design methodology, it may be useful for everyone in the production team — project managers, designers, developers, and so forth — to take part in training or self-study to familiarize themselves with the fundamentals of Agile. Agile teams may throw around words such as “sprint,” “backlog,” and “burndown chart” — not rocket-science terminology by any measure — that may cause initial confusion for the uninitiated. To help you efficiently learn about Agile, and implement it quickly in your team, there are book suggestions and articles at the end of this post.
Being on the same wavelength will help your team communicate and produce great software together.
Tailor Agile Processes to Your Needs
Agile is not a one-size-fits-all methodology. In the real world, specifics and needs vary by organization.
That is why there are at least 11 well-known Agile frameworks right now. Once you have mastered the fundamentals of Agile, you should tweak and fine-tune processes to suit your needs. For example, your company’s culture may not be naturally collaborative in nature (i.e.
a lot of work is done in silos). Or perhaps your team includes members who work remotely (distributed teams), which means some tweaking to the process is needed to be effective. Both these cases will present unique challenges and require adjustments.
Make a Habit of Working Iteratively
Designers by nature are taught to think bigger-picture and often strive for perfection on the get-go. Agile UX design reminds designers that product development is incremental. We should anticipate and embrace feedback and constant product changes as a catalyst for progress, as opposed to a hindrance or nuisance.
Use Collaboration Tools
Agile methods, and effective team dynamics in general, rely quite heavily on effective communication. The good news is that with the right set of tools, anything is possible… even effective collaboration between designers and developers. Explore your options when it comes to communication and project management tools such as Asana, Basecamp and Google Drive, and design platforms such as UXPin (which I am the CEO of) and Invision App.
Teamwork is Essential
Designers, developers, managers and stakeholders will need to collaborate throughout the design and development process as this is the key to effective Agile UX.
Books to Read on Agile UX
Here are 4 books that will help you master Agile UX.