There is no doubt that design & development need to go hand-in-hand in order to create a successful product, but which comes first? This is a question I still get asked more than a few times a week. There is no one-size-fits-all answer of course, but I firmly believe designing first is the key factor to a successful product.
Here are some of the benefits I’ve identified over the years (and daily practice at Ideaware):
1. Shorter Timelines Equals Faster Products
It’s easy to get caught up in an endless loop of developing features and then skinning them with a pseudo-nice design, this usually creates and endless flow of additions that never end. Design first, and create a specific timeline of screens/pages to be designed, code them and then you will know when you’re done.
2. Rich & Easy User Experience
There is just no way to get a holistic view of your app or website if you start at the trenches and work your way up. Create a site map, sketch the application flows, draw screens and pages that tie to common objectives. You will quickly realize how hard/easy you can build your UX and (hopefully) go with the latter road.
3. Plan, Plan, Plan
The best way to get something done is to dive right in right? Well that may be true but plan a bit first! Plan your first release, your second one and third, design these. Get a sense of all the features you’re going to build in, this will allow you to build a holistic interface right from the start.
4. Cut Development Times
I don’t know how many times I’ve seen a stakeholder/product owner ask the developer (or even worse, a development team) to code features that may take days to add in just to realize they don’t want it or it shouldn’t be part of the app.
Developers shouldn’t be there to experiment, they are engineers, they should get a specific “blueprint” on what needs to be built and execute it. The time for experimentation is the design phase, not the development phase.
5. Clear Product Roadmap
Many years ago when I started building web products we would start coding without a roadmap, this is a big mistake! How else would you set releases, timelines and due dates?
There are many ways to phase out a project and having a clear sense of the interface will help you out greatly!
I strongly believe design should drive development, not the other way around. For me (and us at Ideaware) we find it way more beneficial to approach projects this way.