I want to start developing (well trying to) my web application. I am not sure if I should start with the market research to find out what features they want or if they even want the app at all. Or should I build the app and put a beta out and do the research using that?
Another option is to find a customer first.
Here is what you will probably learn if you do some research: (please see disclaimer at the bottom.)
There are literally thousands of CRM applications. There are client side solutions that have been in the market for years like ACT and even look-alikes "better-thans" like Salesnexus. There are polished out-of-the-box solutions like salesforce.com. There are solutions for small and midsize businesses like IllusionSoft. There are over 20 CRM applications which seamless link with Google Apps. Big players like Microsfot have robust CRM platforms that are foundation tools to build complete customized workflow solutions. There are vertices market CRMs for every market from real estate to porn. There are those that position themselves at the nexus of CRM and email marketing like InTouch CRM or Relenta. Those that play up project management like Work etc. Or automation like Playbook. There are those that position themselves as add-ons to Outlook like Prophet. There are part of integrated suites like Zoho.
And then there is the realization that a CRM is really a functional component of an ERP -- and guess what? Every ERP system offers a CRM module. So you are competing with every single one of them: NetSuites, Oracle, Microsoft. You are compeeting with the market verticles like GlobalShop in Manufacturing or Nile Solution in the hospitality industry.
Price ranges from free like Zoho to millions like Oracle CRM. Features range from simple to the complete kitchen sick (and tool shed). There are wewb aps, mobile aps, automation tools, and BI tools. I don't have a bookmark for it, but I am sure there is a CRM that promises to make you a peanutbutter and jelly sandwhich.
Understand the Market Environment
The CRM space is a very crowded and very well established market. The big players are in battle with each other for market share. There is a crowed jungle of "way up or way-downers" that suck-up lots of market oxygen. There are even a ton of unique providers wandering in the frontier hoping someone find them.
It would cost about $26 million to get a ticket to the battle field (That is what the Open-source Project SugarCRM received in venture capital to launch itself as a viable competitor) . The Jungle will only cost you about 2-3 million. The frontier welcomes all, all you need is a database on a website with some sales orientated labels and some automated workflow.
In the context of all of this -- before developing a prototype or a investing lost opportunity and money -- I strongly reccommend a strategy of finding a customer first.
Find and build your unique CRM solution for a specific customer. Prove it works for them. And then find more customers that share the profile.
If that isn't an option for you then develop an add-on critical function that plays on one of the dominant platforms. that critical function you wanted to bring to market? Make it an extension for Google, Salesforce, Sugar or Zoho -- all have very open API's and built in customer bases.
(Disclaimer: My experience in this is that one of my consulting firms' our affiliate companies which we have an equity stake in is a Silver partner VAR of SugarCRM. With it's origins in the open source world-- we have found it to be a powerful integrated solutions for our clients and strive to integrate it whenever we faciliate a strategic growth initiative with a client. I serve as the "Adoption Expert" on that team.)
If you are going to commit yourself to a project, that I assume isn't a "two week adventure" but considerable longer, I'd do some research, at least to check whether someone has this implemented already. If so, I'd analyze the features it offers to see how I can do better. In some cases, it may decide against going forward with my project, and choose another path for myself (e.g. I wouldn't start a Facebook competitor now. I have no chance).
If you're a coder, prototype it first and release it.
With CRM, you need to be able to answer why your market would use your solution instead of something else.
As entrepreneurs it's clear that we all have a million 'million dollar' ideas, but it's also obvious that a lot of the time we're just working on assumptions, and use forums like this to find out whether people 'think it's a good idea' or not.
The issue with that is that we're not actually asking our target market - it's fine to ask friends / colleagues to get a vague impression about whether an idea is viable, but to really know that you've got something worth pursuing you've got to ask the actual target market.
I've found that Lean Startup, Customer Development, Lean Canvas, etc have really helped me to understand how to test an idea before spending money on making it happen (and trust me, I've blown some dosh on projects that went nowhere). There are also options like using mTurk, Feedback Army, SurveyMonkey, Instant.ly, etc, and also the option of lining up face-to-face interviews with members of your target audience.
Don't even spend time building an MVP - the first thing you need to do is to talk to members of your target market and find out if they are in need of your product. It may hurt to find out that no-one wants your initial product / service, but in the long-run it will save you money, time, effort and anguish:)
Joseph answer demonstrates the old business adage; before you start any venture, Google It!
But seriously, everybody and their neighbor has (or thinks they have) a CRM. Whether you custom design for a customer, or make shareware, you had better have something truly unique. Fun to use, would be the "build a better mousetrap" solution to your early retirement by the way. The world cries out for a CRM that could be described as "fun to use", "Addictive", "So simple, it just about runs itself", "Runs itself" .. do you see where I am headed here?