Don’t Leave Development Out of Design Thinking
By Victor Allen, Chief Technical Officer
Launch! Your application has finally been released to the public. The interface receives praise and response to new features has been positive. User review scores are high. Everything looks perfect for long term engagement… but it does not materialize. The release schedule is long, and updates that would help improve engagement are slow in coming. What’s happening?
Is there a hole in your design, lurking beneath the surface?
Design thinking, specifically human-centered design thinking, has proven effective for building better, more successful products. However, discussions of this approach tend to cover only visual experience, product flow, or usability. While these are the fundamental touch-points for user experience, the total user experience relies on well-designed systems underneath these elements. There are opportunities to apply human-centered design thinking to the development of effective products that are not immediately apparent. These can include areas that have not been traditionally considered targets for design.
The deeper product teams are able to apply principles of good design into a product, the more successful it will be. This means not only expanding the domain of design, but expanding the definition of who is a designer. In the same way that all members of an agile team are considered developers, a well designed product is one where all members of the team take responsibility for the quality of design.
With this holistic view on design, an otherwise successful launch can be undermined by the very systems that are meant to support long-term successful engagement. Effective teams should aim to achieve “design all the way down.”
Users not only experience your application’s interface, but also the systems beneath that interface. The experience of these underlying systems (whether a remote service, a loyalty service, or even the design language of your application) will effect them in ways that may not be obvious without long-term use. Failure to account for the effects of these systems’ design will have impact on the success of your product over its lifetime.
Data Visualization is where technical design and visual design integrate most closely. The aesthetic design of data provides the readability and intrigue that can make abstract or dry material appealing and useful, however it is through the design behind the presentation that it conveys meaning. Displaying financial information, trends, analytics, or ongoing processes, visual, and data designers must work closely together. Designers must understand the range of values, the importance of outliers and significance (or lack) of correlation in the data to be displayed. Thoughtless data visualization design can obscure rather than reveal insights and key decision points.
When managing a behavior/feedback loop for users, Analysis & Scoring is an important consideration to take into account. Particularly for applications meant to improve user performance or guide behavior, users must be able to make the connection between their behavior and the feedback that receive. When developing the feedback loops for a Bluetooth enabled healthcare product, our scoring design had to determine how raw data from the device was interpreted into actionable information for users. This included not only clinical information about ideal behavior, but also psychological responses to numeric ranges, the margin-of-error in the device sensors, user responses to being “scored”, and even reaction times.
Where a scoring system is used for short-term feedback loops, Goals & Rewards provide the structure to tie that into a longer term engagement and turn user behavior into habits. As with scoring systems, the balance and form of these needs to be designed with the desired effect in mind. A poorly thought-out system of goals can leave users unable to connect with the long term objectives of the application, while without careful modeling, a reward system can result in lost users or unintended liability for your program. The system design of goal and rewards combines economic modeling, game design and behavior psychology to be successful.
Design language systems is the bridge between user experience, visual design, and developer experience. A well conceived design language system provides consistent user experience and provides the means for multiple applications to maintain the quality and character of a program. A well developed design language system provides the same quality of experience for developers, allowing applications to evolve within quickly without sacrificing design quality.
Design thinking can be applied to the development of a digital product, as well as its use. Any app of a platform that is expected to be regularly updated and improved should consider how the experience of the development team will affect its progress. A well-designed developer experience improves the speed and quality development and allows developers to focus on providing value rather than working around limitations.
Investing time and effort into building a well-designed developer experience early in a program will pay-off later, as developer productivity accelerates and development improves in predictability and scaleability.
One of the most fundamental design disciplines to affect developers is API design. Whether developing APIs internal to your application to be used between parts of the system/team or intended to support third-parties, the thought and preparation that goes into API design can boost or hinder productivity. Good API design balances the same iterative design processes and UI with a need for stability.
Tools and workflows can make all the difference in developer efficiency. Common tools for project management and development (version control, issue tracking, build systems, etc.) require careful thought to orchestrate, but when designed properly allow teams to focus on the most important work at hand. Deployment and testing tools and workflows ensure quality and minimize downtime. When developers can rely on well-designed workflows and tooling, defects are reduced and delivery is more predictable.
The easiest to overlook aspect of a well designed developer experience is documentation. Good documentation is the counter-part of good API design, allowing developers to quickly join or take on new aspects or the project. Good documentation makes your team scaleable in the same way a good architecture and design system makes your application scaleable.
Once an application is in market, creating effective feedback loops between users, strategy, design, and development will allow a program to be nimble and responsive to users. This can turn a negative reception into a positive one and users see the product as a relationship, rather than a transaction. This is really an extension of workflow design, but its importance for long-term success needs to be highlighted.
These are only two areas in which applied design can effect the foundations of your product to strengthen the whole. When assembling a team (or engaging a partner) to develop your product, not just technical excellence, but also design excellence at all levels, will be a multiplier for success. Consider the benefits of a multidisciplinary team and one that is comfortable integrating user systems and developer experience into the mix.
Launch! Your app has finally been released to the public. Reviews are high, and users praise not only the attractive, easy-to-use interface, but the apps ongoing value. Releases are regular and responsive to user feedback, turning the rare negative customer experience into a positive. Instead of asking, “What happened?” your peers want to know, “How did you do it?”