By Ruben Heijbroek
Are you a product manager or director looking to implement design into the development process within your organization? If so, you may have encountered some obstacles. You are probably already convinced by the Design Thinking principles and the Google Design sprint. You may even have already hired a UX designer.
Good thing you took this first step. But how do you implement a good design mindset in your development process? In this article, we will give you concrete tips you can apply immediately. Let's start with some problems you may have encountered.
Is one or more of these challenges playing out in your organization?
Many of these problems are interrelated. These problems are also not due to individuals, but mainly to process and organization. In the following 6 insights, we hope to eliminate these problems.
To bring about change, you yourself will have to start propagating that design is important and you will have to judge the work accordingly. Simply hiring a designer is not enough to change your organization. Judging design without a design background can be difficult.
To help you with this, you can benchmark what you think are well-designed applications within or outside your market. Once you have found some examples, you can describe what makes them so good. Do they have a nice style? Friendly copy? Short loading times? Fine animations? Or do they just work really well? Start by naming what your applications should also live up to. Use this benchmark as a measure for all output within your company. This way, you can assess design without being a designer yourself.
Of course, a designer is essential to design and review, so we recommend starting with a Senior Designer who already has experience at other design-driven companies. But take note: A designer will not be able to make this big strategic change on his own.
To become design-driven, you must start by integrating design within your existing development process. A designer should not work on an island, but instead should collaborate a lot with the entire team. The designer is the link between the business and the developers. So a designer does not have his own process, but is part of a process. Within the development process, there are two important steps where design should be incorporated: during the creation of a User Story and when delivering a User Story.
Make sure the design exactly matches the User Story. If it deviates, developers will have room for improvisation and the application will start deviating in increasing numbers.
When a new functionality is conceived, it is written out by someone within the team. It is important that a designer is involved in thinking up the functionality, or even that the designer works it out himself/herself. If there is a Business Analyst on the team, he or she will probably write out the User Stories. Here, it is important that he/she involves the designer in solving the user problem.
When the User Story is written out, it is essential that the design matches exactly. It’s therefore unacceptable that someone has put an extra requirement in the Story without incorporating it in the design.
The designer is therefore also responsible for working out all the different states of a design. So not just the happy flow. Think for instance of error states, empty states, loading states and how it works on mobile or desktop.
You will see that a well-created design ensures that a Story does not need to be written as extensively and at the same time makes the Story clearer. Win win!
Add a Design Review to your Definition of Done. Developers need to be judged on design in addition to code, otherwise they will always consider design optional.
In your Scrumboard, you can add a 'To (code) Review' status in addition to a 'To design Review' status. This ensures that no one skips this step anymore. Once a designer has given feedback, the User Story can go back to 'In Progress' for the developer to pick up. It is important to make the designer responsible for regularly reviewing the Stories. By doing so, you make the designer responsible for the delivery of a functionality and therefore not only for the design.
By using a design system, you will avoid the proliferation of similar elements and developers will not have to rebuild similar elements every time.
A design system is essentially a collection of all building blocks (components) within your application. The basis are colors, typography and icons. With these elements, you can create components such as buttons and inputs. With these, you create larger components such as a navigation or a popup.
A design system consists of two parts: The design system in design form and the design system in code. We also call the code version a Component Library. By creating a design system, you have one place where you manage all the basic components of your entire app. This way, you have a single source of truth and designers only need to review a component once.
It is extremely important that the design system and the component library match each other exactly. Because both designers and developers are constantly using their own components, you want the design and code to be as close as possible to each other in reality.
Front-end developers find design important and want to do their best to develop the design as well as possible. Other developers are more likely to resist when it comes to design.
In many companies, developers build both the front-end and back-end. Almost always, the focus is on the logic of the application (the back-end) and the front-end is an afterthought. Full-time front-end developers actually like design and are good at building interfaces. They like not only to recreate the design but even to think along in the design solution. Note: If you have not implemented the previous steps, a front-end developer will not solve much.
To make your development teams design-driven, you will have to do more than just hire a designer. Incorporating design within the existing process is key to this. It also helps enormously if you work with people who enjoy working with design. For designers, working with a good front-end developer is also a relief and will also make the process run a lot smoother. Do bear in mind that people will only change if you, as manager or director, really consider this important and actually judge the output accordingly.