For most programs these are the things that need to be considered:
Where will the program get the data it needs from?
What computations will be done with that data?
What reports will be written...