How do you measure the success of a software product? Based on the number of lines of code written? Or on the number of features implemented?
Both of the above methods have proven to be poor indicators. What works is task completion rates – i.e. how often users are able to successfully achieve the goals they have set for themselves, when they use your product.
Building What Your Users Want
Maintaining UX focus throughout the product lifecycle
A Pragmatic Approach
Building What your Users Want
It is fairly common to see companies launch products that users don’t really want. And software products are no exception. Fortunately though, the cost of building software prototypes has dropped dramatically in recent years.
We recommend the following simple but effective, approach to software product development:
- Build a prototype that focuses on the core of your idea and release it as early as possible to your test users.
- Then listen carefully to what your users have to say
- Improve your product based on users’ feedback
- Repeat steps 2 and 3
We can help you with all of the above. Read on.
One of our core objectives while building your product is to learn as much from your users as possible – as early as possible. We achieve this by asking your target users to interact with the prototypes that we build and encourage them to provide constant feedback. We then use this feedback to build something that will resonate with your intended audience. Here’s how it works:
- We will first build an initial prototype – which will be a small but significant part of the whole product. This usually takes 2-4 weeks of effort.
- Once the initial prototype is ready, we start our feedback cycles on the product, from a sample of your target users.
- Here’s how a typical feedback collection cycle works:
- Finding users who fall into your target demographic
- Asking the right questions to these users
- Recording their video feedback on the prototype using our product, UserThoughts. [We will of course share this feedback with you]
- Analyzing and converting the video feedback into action items for improving the product.
- The action items are then discussed with you and then prioritized based on what makes sense and what doesn’t for your business.
- Once we have our to-do list of items, we’ll go ahead and implement them.
- Once the next version of the product is ready, we’ll do another round of feedback collection.
- Gradually over a period of a few months, we’ll have an alpha version of your product ready. The difference though is that, by this time, you know that what we’ve built is exactly what your users want. The guesswork is removed from the picture.
Maintaining UX focus throughout the product lifecycle
“The interface is the product” – Ryan Singer, 37 Signals
The UI should be clear, fast, easy and fun. The UI Designer has a critical role in coming up with an interface that achieves these goals. But we realize that, it is also essential for our engineers to constantly keep the user in mind, while we build your product. Our engineers are trained to do precisely this.
Engaging at the Design Phase
Here’s how it works:
- We identify a UI designer for the project. We will recommend a professional with whom we prefer to work. But if you have somebody else in mind, then that works too.
- The UI designer creates wireframes or sketches based on initial product related discussions and shares them with the UI Engineering team
- The UI Engineers know what technology solutions are available for a variety of different problems, and can hence sometimes suggest a more productive approach to building the UI. The designer ensures that these suggestions match the overall goal of the site and makes changes to his sketches as required.
- Once the sketches go through a couple of these iterations and we’re all at a point of agreement on the design, the engineering team starts working on a prototype.
Keeping the focus
A rapid iteration of the product is essential to ensure that we build what your users want. To reduce dependencies on the designer during this process, and to maintain high velocity, our engineers are encouraged to solve many common UX related problems on their own.
We use the following techniques to maintain a high level of UX focus:
- We ensure that the UI of the product does not deviate from certain standard norms and industry practices [also called “Heuristics” in UX parlance]. These are based on many years of research. We’ll be coming up with a blog post on this shortly.
- UX testing is embedded into our QA practice. Not only do we ensure that the product matches what its supposed to do, but also that a high level of user friendliness is maintained at every iteration.
- We use our product, UserThoughts, to gather valuable video feedback from users in the wild. This feedback is then converted into action items that we use to continually improve the product.
A Pragmatic Approach
“Change is the only constant” – Anonymous
To achieve a high level of agility while we build your product, we use the following practices. These practices allow us to embrace frequently occurring changes during the product development process.
Test Driven Development: What this means is that the testing of the application is not an afterthought – but is embedded into the software that we write.
Unit and/or functional tests are first written and only then is the code to make those tests pass, written. These tests are then executed constantly.
The benefits of this approach are the following:
- Much higher quality of software
- Lower cost of maintenance.
- Once we go into Alpha – changes and additional features can be developed quicker – because much less time is spent by the team to manually test all of the existing code base.
- The same bugs never crop up twice. Because we’d be adding tests for those bugs before fixing them.
Proactive Communication: We believe that there is no such thing as over-communication. So not only do we make sure that we talk to you, our customer, frequently [using different kinds of tools], but we also talk with your users. And even more importantly, get them to talk to us. This is another way, that our product, UserThoughts, helps in improving communication with users.
Constantly Monitoring Feedback: As mentioned above, we’re proactive about collecting feedback, both from you, our customer and from the users of your product. But feedback by itself is not very useful. We make sure to analyze the feedback received and then convert it into action items, that then end up as improvements in your product. What makes this really effective though, is that this process is repetitive and constant.