When evaluating a product there are various key factors we need to assess such as:
- Does it solve my particular problem.
- Is it easy to use.
- Does it have the set of features and capabilities that I need.
- Will it continue to meet my needs as I become more adept.
- Does it include good documentation.
- Will it save me time (will I be more productive).
- Is it worth the cost (both financial and time to learn & use).
- Is it robust and well supported.
- Also see: Before purchasing software
Software developers must take all of these issues and more into account when we design our products. I’ve specifically not used the term software or program here as a product is a lot more than just the software. Unfortunately there are quite a few software developers that don’t realize this.
Basically we perform a juggling act, continually weighing up the pros and cons of everything we do. New feature requests must be assessed on the value they add to the product, how broad the interest for our users might be, the impact they have on usability and added complexity, extra documentation and additional support (costs). See my Creeping Featuritis post for more on this.
So developing a product that ticks all of the right boxes is always challenging. Exposure to customer needs, our overall depth of experience and an affinity with the product all help.
Let me finish by telling you that this was not a post that I had intended to write. Instead I was going to write about a review of Surfulater that has recently been published. The review was undertaken by three different people responding to the same set of questions. The outcome is quite interesting and clearly shows how various people can view the same product so differently. It also demonstrates the difficulty there is in ticking all the right boxes. I’ll hold over linking to the review for another post.