They prepare sample data that test every part of the program and, after trial runs, review the results to see if any errors were made. If errors do occur, the programmer must change and recheck the program until it produces the correct results. This is called debugging the program. Finally, programmers working in a mainframe environment prepare instructions for the computer operator who will run the program. They may also contribute to a user's manual for the program.
Programs vary with the type of information to be accessed or generated.
For example, the data involved in updating financial records are different from those required to simulate a flight on a pilot trainee's monitor. Although simple programs can be written in a few hours, programs that use complex mathematical formulas or many data files may require more than a year of work. In most cases, several programmers may work together as a team under a senior programmer's supervision. Applications programmers usually are oriented toward business, engineering, or science. They write software to handle specific jobs, such as a program used in an inventory control system or one to guide a missile after it has been fired.