Currently there’s a growing trend in the UX industry where people tend to ask for agile experience when they hire a UX designer. With this in mind I decided to write this article as a way to help young UX designers get a better understanding of what it means and their difference. As the blog grows I will add more content related to this area since it’s quite a complex field , but for now this article serves as a basic introduction to what each one is and their advantages. Personally, each time I think about this topic, an image from the TV series Silicon Valley pops in my head when some of the cast decides to use SCRUM and the whole team gets really confused, hopefully by reading this article that same mystery will be unveiled.
So what is Agile?
It’s smart speed-coding, that’s how I like to describe it, a way of delivering products faster to the market rather then the traditional coding methods by building the app incrementally. instead of pushing all the things at the end. It’s actually a flexible and adaptive way of building a web app in which you lay out each feature, the time it requires and organize them by their priority. If a problem or the need for a new feature appears, it’s simply added to the list without having a tremendous affect on the development cycle, making it quite flexible and easy to maintain a project under a certain budget.
What are the it’s main advantages:
- faster development times then other development cycles
- it’s flexible and adaptive
- design,development and other departments work on the app at the same time, delivering the web app a lot faster
- changes can be made even though the app is in late development
- it encourages team building & team work during the development
- it maintains a stable workload, by having a schedule that you must keep
What does this mean for UX designers:
Now that we’ve got that out of the way, it’s time to talk about how does all this fit into the UX design process. First off it means you will most likely work in-house and be part of a small team, since the work is usually distributed to different teams from the same department. This makes it quite important and trivial to communicate with other departments on a daily or weekly basis so you can get feedback and asses their development cycle, thus being sure you’re on track or that your UX solution can be implemented or even asses how they implemented your solution, suggesting iterations. Overall it means that you will have:
- to work in-house and most likely be part of a smaller team
- a strict schedule to keep up in order to be ahead or at the same pace with the development cycle, making time management a valuable skill
- to prioritize and drop some things based on their importance and time needed
- to work closely with other departments, doing multiple iterations, checking and coming up with different solutions
- lots of meetings and check-ins during the ux design process on a weekly or daily basis
- a comprehensive idea about the product and it’s problems, goals
- working in an alert state can seriously affect the end result of the ux design, producing unpolished or mediocre results
- you will drop or skip some UX steps in order to keep up with the schedule
- lots of back & forth discussion between departments that can result in more time talking about the product then actually designing it
- you can fall behind or have an unclear vision of what the product road map is
- some devs might come up with their own solutions that have already been integrated and you need to find UX solutions based on them, that can seriously affect the UX
- you will be required to keep deadlines and time-manage your UX design process, as to keep up with the schedule of the other deparments
- you will integrate new or old skills like sketching,paper prototyping into your UX process to keep up with the sprint
- design in advance is needed so once they start the development cycle, you will have a good chunk of the design almost ready
What is SCRUM?
Some people think that SCRUM and Agile are two completely different things, when in fact they are quite similar. In a nutshell SCRUM is the set of rules that you follow while under an Agile development cycle. Think of Agile as the main content page of a book, where multiple chapters are shown and described. Well SCRUM is one of those chapters that describes the rules you need to follow as part of that Agile development cycle. SCRUM is the most popular development cycle and often when people refer to Agile they refer to Agile SCRUM.
How do you keep up with these deadlines?
Working in a Agile team, means sticking to a rough development time frame that can always fluctuate and evolve, that means you have less time to work on certain features and some aspects of UX will be dropped or skipped completely, depending on where they are in the development cycle. Some of the things that you might need to drop are market & competitor research, card sorting, red route analysis, axure prototyping. In order to overcome this, old solutions resurface like paper prototyping & sketching low fidelity wire-frames, which means abandoning UX software like balsamiq mockups, axure for a more hands on approach, so instead of investing in a software you start investing in Copic markers, rotring pencils and a quality dotted sketch book.
Is it worth adopting?
Agile is certainly the way to the future, currently there’s already a shift in what the actual job description of a UX designer is, similar to what happened when the term web designer appeared. Personally I came in contact with it around 3-4 years ago when I was in the process of designing a web app, back then it was something not as common, however in today’s market it gained some traction and more people will no doubt adopt it in the feature, making it an industry standard so you can either wait or join the party
So what is LEAN UX then?
Lean UX, by some considered as part of the Agile development cycle due to it’s similarity, is a way to design the UX no matter what development cycle is being used, due to it being inspired by start-up business models, where the aim of the investors is to get the product out there as fast as possible. This usually implies releasing an app really really fast, with only it’s absolute core features and then iterate as well as develop new features based on the market feedback. The extreme start up rise made this quite a popular trend nowadays that will surely become more and more prominent as more and more start-ups appear.
Lean development in a nutshell:
For UX designers, lean means focusing on delivering the best UX possible for that initial release, then test it using A/B testing, Heat Maps of the user interactions and clicks, mouse & live user tracking. After all this is setup and data is gathered, you will move to design the UX for the next release of features according to the project road map. The aim is to develop the UX for each public app iteration, without the need to multitask or have daily check ins or constantly going back & forth between teams. Instead you will have more time to do research and focus on building the best solution, as a way to reduce the need to come back and fix it. In a nutshell Lean UX comes down to:
- building a minimum viable product with only it’s core features at it’s first release
- the basic cycle after the app is launched consists of: seeking market feedback, adapting or releasing new features, repeat
- ultra fast development time, means the product will be available to the public fast as possible and get tested by your real users, from which you can learn and apply principles in the next planned feature pack
- goal focused development, means you will have a certain goal in mind with each release, which you will measure
- in some case you will have a roadmap that will guide you, thus having a clear idea where the app is heading making it easy to prioritize things and focus on the research that’s valuable for that certain step
- no multitasking, just design a particular area and start working on the next one
- no junk, means developers won’t code things that are not needed right now and all the features that are planned will be developed when the app gets there. This leads to a less stressful workflow since you don’t have to comprehend the entire app from the start, but instead only focus on what has been delivered or is close to being delivered to the public, reducing potential UX problems that other third party like visual designers, development team can cause
- you have more time to do research and analyze the feedback provided, this will help you understand your markets behavior thus the next features will be built with this in mind
- build a quality product from the start as a way to avoid going back and fix things, instead focus on building multiple versions and variations and test them to see which performs better
Final thoughs about Agile & Lean UX:
Both are quite popular methods and based on the development team as well as the complexity of the project, some are more favorable then other. For example if you have a short deadline or want to test an idea fast, then LEAN is definitely the way, if you have quite a lot of time as well as a solid budget and know that your competitors are doing something similar, thus know the product will be good, then SCRUM is the way.
UX wise, LEAN is a less stressful approach to UX design, focusing more on the design process and thus providing better results. A lean UX approach will help you design a truly user centric design as well as feel a lot more natural to the UX process you already know, without having the feeling you need to rush and stay ahead of everyone else.
On the other hand an Agile UX process will help you keep focused, organized and on a schedule as well as understand more about the UX problems you will be facing, although you might not always have time to implement or come up with the solution. Agile will also encourage teamwork and team building while also challenging you to come up with solutions that may or may not end up in the final product.