Section I. DEVELOPING A PROGRAM
a. No matter how sophisticated the hardware, a computer can do very little
without a good program (also known as software). This lesson looks more closely at
programs, the set of instructions that the computer uses not only to solve a specific
problem but to direct its own operations. A program consists of a plan of action
(algorithm) for accomplishing some goal, plus data structures, objects in memory that
make possible the plan of action.
program: A set of instructions used by the computer to solve a specific problem
and direct the computer's operations; a plan of action + data structures.
b. The plan of action or algorithm refers to the actual steps taken to accomplish
a goal. This involves operations like adding two numbers, testing one number against
another, and moving values in memory. Data structures are the objects in memory that
make the plan of action possible. It is the data structures that make it legal to add two
numbers (2 + 3 = 5) and illegal to add Sunday + apples. Needless to say, good data
structures are the necessary foundation for the development of a good plan of action
(algorithm). Therefore, it can be said that a program equals a plan of action (algorithm)
+ data structures. This lesson considers the four steps in writing a program, the use of
a program flowchart and other design tools and types of programming languages.
Unlike humans, who solve problems through reason, intelligence, and intuition,
computers solve problems according to detailed step-by-step instructions provided by
the programmer. A computer cannot take a general instruction like "schedule clinic
patient load" and turn it into statements it needs to perform the task. It has to be told
each step. The programmer must think out each task logically and fully, so that any
condition that might be encountered is anticipated in advance. If a possible condition is
overlooked, the program will be executed incorrectly, or not at all.
IMPORTANCE OF THE PROGRAM
Any "intelligence" the computer seems to possess is provided by the
programmer. The hardware only provides the electronic capability to execute the
program. That is why it is critical to select programs exactly suited to the kinds of things
you want to do. Many people make the mistake of buying the hardware first, without
considering whether or not that system can run the software they need.