Each software product launched in the market has a specific purpose, targeted audience and defined geographies. A game for instance will be targeted for a particular age group, a specific genre and available for audience all across the globe. An application related to small business segment might not have such a versatile scope as above mentioned for a game app. The latter app might have limited audience, limited part of financial transactions, limited countries and limited segment of business groups. One needs to be clear about all these factors while planning to procure a software product emerging out as a need based on the requirements specified by his business, family, personal or other fronts.
A 100% good app might appear to be bad if it is not parametrized well prior to making a purchase of it. All requirements of a user might not get catered to by any software. The set of requirements need to be matched well with the offers made by a software product. A better way is to first build a pool of software that would be capable to cater to your specific needs. There could be a level of compromise if you are going for a ready made product with negligible scope of customization. The rate of compromise would definitely vary from product to product among all the products lying in your shortlisted pool.
Next would be the exercise to sort of products where compromising is less. Among these sorted products chalk out those which do not match with your pocket. Once that is done, the pool by now would have shrunk to maximum five products. Now is the time to compare them one to one on the basis of business needs, price, vendor, availability, support and product life.