Develop a written agreement that specifies: The input data The desired output The processing required to convert Sometimes, the programmer receives a written specification from the systems analyst Other times, the programmer meets with users directly