Here we get into more detail. User stories describe the program from the user’s perspective. For the programmer these are the best way to understand precisely what your program is expected to do. For example, you might have a user story that ran like this:
"User right-clicks on image and receives a menu offering Edit functions. The user can then effect a change to the whole image by clicking on one of the options."
The user story has to be clear enough to be easily understood by the programmer but detailed enough to provide guidance. You want the programmer to be able to look at it and say, "Hey, that’s cool!"
12.1.3 Data Directory
And this is where things get complicated. Most software programs work at some level by storing and retrieving data. If you don’t put the right data in the right place, you’re going to get the wrong results, bugs and delays.
Personally, I leave this to the programmer. If he can’t get it right, what chance do I have?
12.2 Study the Competition
The only way you can distinguish your software product from that of your competitor’s is by formulating unique functionality into the software. What is the most pragmatic way of devising a unique offering? The answer to this is plain and simple. Study your competition! This is probably the smartest thing you’ll ever do. Make a list of all your competitors and their offerings.
Look out for news items and case studies on your competitors. These would give you a fair idea of what makes them stand out and what doesn’t. Sometimes it is also possible to study customer reviews of software products offered by your competitors. This sort of information is invaluable. It will help you in offering your customers something your competitors don’t.
Assessing the competition also will also help you in deciding what kind of software product you wish to develop. For instance, sometimes it may not be worth selling a particular kind of product if your competitors are dominant market leaders and cater to a high percentage of the market segment. An example of this would be an accounting system or a word processing application. There are many standard accounting systems easily available in the market. Also, MS Word is dominant in the segment of word processors.
12.3 Determine Your Pricing
Studying your competition also gives you a fair idea of what should be the pricing of your product. The key is to price your product competitively. You may offer a lower price for your product or offer it at the same price but have additional promotions or discounts. Apart from this, your break-even cost also plays a major role in pricing. Moreover, the break even cost may be a good indicator especially if your product is completely new in the market.
The formula for calculating break even cost is
Initial Software Cost + Upgrade Software Cost + Package Cost / Profit per Sale = Sales Needed to Cover Cost
Initial Software Cost is your investment into the core software. Upgrade Software Cost is your investment into additional features or bugs that need fixed. You might determine that you need to add 3 or 4 major features and fine tune other features based on customer response. Package Cost is your investment into packaging your software – this includes hosting costs, marketing material, documentation, web site design, and some other costs.