Software requirements take their roots in business needs. A certain person, the one side of the bridge, realizes at some point that he needs and app capable of doing one thing or the other in order to bring more profit to the company or to make work less time and/or energy consuming. This can be achieved with a reasonable amount of automation or upgrades to the manual process that the mentioned above application may provide. Thus a company usually refers to internal or external (outsourcing) developer teams, yet they do not have the company’s vision. I’d say more, they are incapable of that unless the requirements are explained properly. What to do then?
From the beginning you have to focus on the app’s functional and to think the whole thing through.
- You need to realize what particular function the app has to have
- You need to figure out what precise amount of automation should it provide (a fairly important parameter, due to the world is full of examples of companies getting broke just because they have relied on machines too much)
- Think through its appearance as well as additional functions it has to support
- Think of how many of that will fit to your budget. Be reasonable and do not overpay for smooth features that are irrelevant to your business. Who cares that your brand new “money counting” software has user profile settings and allows you to share kitten photos if the company is at the edge of bankruptcy because the app did not count well or it’s cost was too expensive for the budget
One more thing you have to be sure of is that the people which will be building your app from scrap are definitely aware of all you wanted them to know. Lots of information about the requirements can be lost during the mailing process, due to usage of various mailing apps, support of formats on different OS’s or even an attempt of extracting requirements in an Excel sheet. Be positive the Project Manager responsible got everything right. And if the info is delivered to the development team (lot’s depends on the PM as well, you should pick only trustworthy teams) in a proper way you will see how the two sides of the bridge will get connected within each other allowing normal flow of the working process.