Design. Development. Together we can
The current situation in digital product development arena. What problems does the current system has and how it can be reinvented.
This is a guest article by Parth Garg, Service & Experience Designer.
It all starts with a user need which translates into a business goal. The business opportunity turns into a requirement and the requirement needs to be designed and developed and so on.
In the world of digital, products are designed by designers who have a very particular way of working in which they have to be user-oriented and try to create something that adds value to the end-user and make their lives simpler. On the other hand, products are developed by developers which are more solution-oriented and are concerned how their work solves the problem as efficiently as possible. And both of them think that they follow the right way to solve the problem. Well, that is correct indeed. But…
There has been a long ongoing debate on how designers and developers should work. There has been a lot of progress made in this area. But, why do we still see so many poorly designed digital products and services?
If you start thinking about the project life-cycles the companies follow, you can understand the current landscape of the design and development battlefields (a game of thrones in the making). The big, medium & small sized companies all work in a different way. In big corporations, consistent products are very difficult to achieve due to their complex structure. In small companies and startups, the goal is to launch the product asap. The product development life cycles also influences how the work is carried out (like agile, waterfall, etc). But still the most important thing is how tasks are carried out and how teams work with each other.
The Conveyor Belt Syndrome
The current product development cycles are like a “Conveyor Belt” where the projects go through various phases and everyone makes their contribution (workers in different departments) and finally they assemble a product which they ship out. The “Conveyor Belt” approach works well in the manufacturing sector or other industries but not so well in the development of digital products and services. The silos of different departments don’t work too well.
The agile process doesn’t always work well in practice and the end-results show the truth, which are products that don’t work so well and don’t add value to the end-user (talking from my experience of working five years with many international companies, I guess you might know this is quite true).
How Designers & Developers solve problems
I would like to talk about what is their general approach to solve a problem.
Designers include a lot of factors in solving the problem. They need to think about the visual communication, user interaction, accessibility, usability, context and even culture. The process of solving a problem might differ according to the type & complexity of the problem. Hence, there is no one-way for a designer to solve a problem.
Developers have to be analytical, experimental and solution-oriented. They need to take into account the technology to use, constraints, efficiency. The code and algorithms they need to develop requires a lot of technical creativity. The main focus is to solve a problem by the means of software development.
The Weaponry aka Toolkits of Designers & Developers
To set a focus on the world of digital design (web, apps), let’s see what kind of tools D&D use (i will use this from now on instead of designers & developers, don’t confuse it with dungeons & dragons). The idea here is to see how these toolkits work to the advantage & disadvantage of their respective users.
These toolkits offer a tried and tested architecture to work upon. They work seamlessly and makes the lives of developers easy so they can focus on more challenging tasks. These toolkits can help an amateur to learn about front-end but not master it.
The designers usually start sketching out their ideas, moving to drawing wireframes and finally prototyping their designs using various softwares. Nowadays the digital prototyping is mostly done using Sketch, InVision, Adobe XD, Framer, etc. Designers also make use of the design templates for iOS, Android and Web. Now, the Design Systems are making a big impact on how products are designed.
The design systems provide an architecture using which designers can come up with their solutions focusing on other big challenges. All these prototyping and design tools lets the designers convey their work as fast as possible so they can get feedback, iterate and improve them.
Prototypr.io has made a wonderful interactive tool to compare some widely used design tools. Please follow this link.
How the Battle aka Problems start?
Now let’s go back to the beginning when a project starts. The D&D are not always involved in the initial decision making process. The middle management also may not necessarily know what’s possible and what’s not.
As the project starts, the different teams need to collaborate to make things happen. But people work with people who are similar to them so they don’t actually know how the other people work. The same situation occurs even in the case of hybrid teams.
Apart from these issues, there is a clash in the working methods of D&D. Both of them think how they do things is right. Designers think developers just have to write code and developers think designers just make things look pretty.
Problems in the Working Methods
Both the D&D work and solve problems in different ways. The toolkits that they use don’t let them collaborate so much.
The designers often use the prototyping tools which doesn’t let them convey their designs in the best possible manner to the development teams. Designers sometimes don’t know the technical constraints when they develop their designs. So when their designs go to the development teams, the developers are often not able to implement them. Most of the times, the developers don’t understand the design and they build something what they think is suitable and manageable.
The developers usually use front-end frameworks. The front-end frameworks cannot be understood by the designers as they are too complex and even if they do understand them, the framework constraints will affect their creativity in coming up with their design solution. These frameworks kind of discourages developers to make an effort to write new custom code.
So there are disagreements, fights and constant back and forth between design & development teams until they reach a middle ground. This actually affects the product that will be shipped and the results are not amazing.
Everyone knows what the problems are!
Now another surprising thing is that everyone knows what the problems are. These problems look easy to solve. Sometimes the easiest things are the most complicated to do. As the great Leonardo da Vinci said, “Simplicity is the ultimate sophistication”.
The issues like lack of collaboration, inclusion of both designers and developers teams from the beginning of the project, basic cross-discipline knowledge, constraints of toolkits are widely debated.
The toolkits which D&D use have not evolved enough (well now with design systems & new front-end frameworks, a lot of problems are being solved) to offer complete collaboration. There is a lack of presence of a centralized design teams in big corporations, people are not educated in cross-disciplines (which I guess is not always required but still is a great thing to do).
Problems that are not so much discussed!
Sometimes the topics that should be talked about are completely neglected and nobody thinks they can also be some of the biggest issues.
The lack of empathy is one of the biggest problems we face around the world. This is also very true in case of D&D in the industry. Both of the groups should empathize with each other more (even other disciplines in the company). This will create a better understanding of how we work and will create an environment where the goal is not just to launch a product but to thrive together.
Another issue is about the poor facilitation and management done by the middle management especially in big corporations. Middle management plays a key role and they are like the interfaces between the higher management and the workers. But most of the times these interfaces don’t work well which gives a bad user experience and the system fails. The middle managers are adept at managing people and try to get things done on time, but they sometimes lack knowledge of what their teams do (like a product manager may not know how the development and design are actually being done) and this can create a gap. This gap needs to be bridged.
Re-Inventing the System
To bring even a small change in the system requires a lot of effort. But when the change happens, everything is improved dramatically. Let me discuss the possibilities about how this can be achieved.
1. Creating Circular Systems
Both the D&D cannot thrive if the other doesn’t. It’s like a cycle. Remember the conveyor belt syndrome, we need to break that and create a circular system like a wheel. The spokes of the wheel are various disciplines. So if the spokes of the wheel don’t do a good job of supporting the wheel, then the wheel is broken and the system is too.
So the D&D need to become like the spokes of the wheel and work together in a very different way from the ways till now. I would make this analogy with the Circular Design methodology. This new approach developed by the leading design and consulting firm IDEO could be bring a radical change in how we design products, services and systems.
Creating such a system would allow it to be more dynamic. The D&D would be in a constant dialogue over the course of their project. Both the disciplines will be more involved in how the other discipline works. This will create a behavioural change among them. The teams should always consist of different behaviours which will bring more value and will help solve complex problems easily.
For example, the designers could start understanding some very basics of how their designs are implemented. If they know something that is not possible in implementing a feature on web or mobile, they could change that during the design process. If the circular process is followed, the developers could also give insights on the designs. It could lead the designer to implement a new way to solve problems and innovations could come up. Similarly, developers can get educated on some basic design principles over time which they can implement while developing.
Now the idea here is not to let D&D get involved too much in each others core work but just enough to let them have a basic idea. Some companies look for people who can do both, well for that i would just like to say that: the jacks of all trades are masters of none.
2. Allowing People to Experiment
If the goal of project is just to create a final product and be done with it, then there is no room for experimentation.
Many companies have opened Innovation Labs where they allow the people to experiment and fail. These failures help the people to learn and improve their skills over time. Such initiatives should be more prevalent throughout the industry. If people don’t experiment, innovation can’t happen.
The higher management should create innovation teams consisting of different disciplines and personalities. The team could consist of anyone (from a senior vp to an intern) and they should be given the freedom to experiment (and all the other employees as well) and learn. This could be done as a prototype and then implemented on a broader scale.
Let me give an example. Back in 1993, Apple came up with their series of personal digital assistants called Newton, which failed big time. A giant handheld device which had a very weak performance was later cancelled after Steve Jobs rejoined company. He led the product line’s potential into creating the iPod and the iPhone.
3. Encouraging Open Feedback
The best work is done in an environment where constructive feedback is encouraged and people help each other and learn from their peers.
This is an easy thing to implement but would differ how its implemented in according to company size. The D&D working relationship could be improved a lot with this method. But there should be proper system of open feedback to allow everyone to benefit.
This system should be designed by involving people from different departments and customized to the company itself. Both the D&D could provide valuable feedback as they think in a different way and that could uncover problems in the projects that could be solved early in the lifecycle and that would minimize the risks after product launch.
4. Adopting Best Practices
So talking specifically about design and software engineering in this case, there are a lot of industry standards and best practices that should be followed so the best work happens.
In design for digital there are many best practices, design principles and laws that are used to create amazing products. Although the new design and prototyping tools have made initial prototyping easier, the best practices are not always applied.
Laws of UX is a collection of the design principles that designers (or even developers) should refer to when building user interfaces. The Google Material Design system is also a great reference when building experiences especially for Android. IBM’s Carbon Design System has resources for both designers and for front-end developers and engineers. And there are many such great examples.
And I believe there are many such practices for front-end development as well. It would be great for both the D&D to know them (maybe not all of them, but a few would definitely help).
Thanks for coming this far. So let’s conclude this discussion into directions that the industry needs to go for.
Currently the toolkits of D&D don’t offer so much collaboration and flexibility. The D&D toolkits needs to undergo a major change in order to bring a balance to the world of D&D. Imagine, the design tools that could generate code (that can be directly used by the developers) and developer tools that could follow design principles (with the use of machine learning, maybe).
I also believe that investing more on the design discipline could also improve the gap between the D&D. The main focus of companies is to create a product and they often neglect that design plays a huge role. The focus should be on creation of central design departments consisting of a variety of designers.
And finally the training of middle management to decrease the gap between the higher management and workers. If these interfaces are adept, they could solve numerous problems even before they arise.
As this is an open discussion, I would like you to comment/discuss in a constructive way to benefit everyone. And yes, share, share, share. Thanks!