How does good software development process look like?
People without software background often think developing an app is like building a house. But this analogy doesn’t work.
The process is creative
The house-analogy doesn’t work because no-one really knows upfront what the app is going to be in the end. Developing an app is more like writing a book. Every app is one of a kind.
Unlike a typical house project, every app was never developed before. The app design and development are creative processes, where discovery part plays a very significant role.
...therefore it's unpredictable
Since at least 1960s, it’s known that for the software development it’s better if the process is iterative and incremental, rather than linear, where everything is planned upfront. There’s a ton of books written on the topic, and experienced professionals don’t even question that anymore.
Even the most experienced won’t predict which software features are going to be ultimately used by users. Otherwise, we would see the same people producing more and more top successful apps. But it’s not really happening that way.
Research1 shows that majority of features is typically used rarely or never, and only small part really matters for the users.
Which features matter? That's something we need to discover.
Worse is better
In the software world, at certain experience level, it’s recognized that it’s better to keep things small whenever possible. And to develop software in short cycles. Releasing the app earlier is almost always a better idea, than perfecting the app and releasing it later.
The “you never get a second chance to make a first impression” doesn’t work in the app world. You will get more and more chances for a brand new first impression, because until you’re really known, no-one really knows about your app, and no-one cares if it’s good or bad.
By releasing the app early, you get a chance to find out what your users really like and dislike, and change the course of your project while you still have a lot of energy. If you keep on working for too long without this “reality check”, you risk of running out of your faith and energy.
Life shows that if we can assume anything upfront, it’s that 1st version won’t succeed, but 2nd or 3rd have much greater chances.
Of course, before releasing the app, there are some mid-steps you can and should do to evaluate your app before it is released. If you do proper usability research (show your users a “clickable” prototype and ask them to perform few tasks), you can get some good predictions of your future audience preferences. So that’s the spirit of the process: show it to your users, the sooner, the better.
Visla is an app design and development firm based in Warsaw, Poland. Please contact us if you have any questions.