Let's go over the standard product development routine. Here it's not really a product that we are developing, however this method allows to select the best objective solution for the task at hand.
The first milestone, actually called "milestone zero", consists in listing the needs in the form of: <verb> <noun>, as much as possible. In the case of computers for the staff of an orphanage in Malawi (in no particular order):
- Provide office tools (text editor, spreadsheets)
- Be cost effective
- Teach how to use the computers
- Connected to the Internet
- Be robust
- Survive power outages
- Provide at least two workstations
These needs are invariant throughout the project, contrary to the project features (which are an engineer's nightmare as the some project managers change them in function of the room temperature). It is still important to come back to the needs list from time to time and make sure it is indeed what is needed, as the first draft is usually not the final. For example if it turns out they run their systems on generators then the "Survive power outages" could be removed and that will make the work that much easier.
The needs will have to be satisfied by the selected solution later, but first they have to be put in a more readable form and quantified, so the next task is to list the functions of the project.