Computer Programming A computer program consists of a detailed sequence of instructions which accomplish a given application or task. Building computer software is a complicated process, including developing specifications, designing the software, programming or coding, testing and documentation. Large programs are designed by decomposing the task into a set of of subproblems, and writing a module for each subproblem. In any complicated applications, there are an enormous number of possible ways a program can be used. Therefore it is very difficult to produce software which is always correct.
Testing is thus an important part of the design process.
Good documentation is critical to producing software which is usable by ordinary people, as well as able to be understandable to future developers. A large number of non-computer science people are employed as technical writers because of their ability to communicate clearly. An algorithm is a procedure for solving a well-defined problem. A recipe is an algorithm for making a particular type of food. A program is an algorithm specified in such detail that a computer knows exactly how to follow it.