The first thing you do when you design software is determine who wants the software and who will support its preparation.