Manage web application requests without core customer base
Starting to build web application without having deep understanding of customer base is wrong from the start, however people assume their product is going to be successful in the end. I don't quite agree.
Recently I was discussing web application requirement from one of my prospective client and found he doesn't have sufficient understanding of product's features. Honestly, from the start I knew the product features are not targeting very specific customer base and after initial discussion I raised my concerns - Who is core customer of the product?
The client never gave any attention to this question before drafting the features and I could understand why. There is hype of starting own company and creating any web application, mobile application or any other product that can create quick money for the owner. However, those people forget to mention one important points in all those hyped i.e. without having solid customer base you can't attain success whatever you do. You can throw money on advertisements, paid promotions, free trials and any other tricks, the result will be same.
So how should I manage similar products without having customer base?
Educate your client
As software developer it is our responsibility to understand the products and also educate our clients the missing links. For example, when I raised my question to client he didn't get angry or took any other negative action, but he did thank me and started in other direction.
The owner decided the core customer base and then cutting down features those were not necessarily important for them. The results were great. The product became laser focused to particular customer base.
Also, the client thanked me in one of separate email saying his marketing team was happy to have clear customer base for creating advertising material.
Feature list filtering
Gather the feature list and start mapping it through customer roles. I always find many features that try to satisfy multiple customer roles and that is red flag for me. Unless client specifically gives me satisfactory insight about overloaded features till I don't include it in initial development. Such features can easily be incorporated later in development.
The best part of feature list filtering is client involvement. If client involvement is more the greater the chance of product success.
Passive communication
I don't know how you will react though I prefer email communication over Skype or online communication. The reason is quite straight forward. Understanding the requirement to it's depth is not easy and therefore I always take time to review them. And it proved worthy for us.
I don't say online communication is bad, though it should not be used to understand feature in detail. May be you don't agree with me, but offline communication is better alternative. Whenever I declined the online communication for discussing requirements the better requirement document I received. Because client had to use multiple ways to make me understand like images, chart or references and similar stuff.
My intention is to create better software and therefore I always seek help from client in understanding requirements and so customer base. If I could understand the customer base clearly, I could always easily give my input.
Last we are here to help our clients, and if client is not supporting and not taking time to understand his own products, then how we are supposed to deliver successful product in the end.
Your thought?