Skip to content
Skip to main content

About this free course

Download this course

Share this free course

An introduction to computers and computer systems
An introduction to computers and computer systems

Start this free course now. Just create an account and sign in. Enrol and complete the course for a free statement of participation or digital badge if available.

3 Using flowcharts to describe a task

A photograph of a kettle on a worktop.

Application programs are designed to perform specific tasks. These tasks range from the relatively simple to the extremely complex. In this section you will look at what is involved in planning a program to perform some simple tasks.

There are many ways of writing an application program. However, one common starting point is to break down the overall task, or objective of the program, into smaller tasks. One technique to achieve this is to draw a flowchart, showing each of these smaller steps on the way to delivering the task.

In order to write a program, the task the program will perform has to be first written as a list of actions. The actions have to be given in an order that will ensure the task is carried out successfully.

Activity 1

Write down, in order, the list of actions you would have to carry out to boil some water in an electric kettle.

To use this interactive functionality a free OU account is required. Sign in or register.
Interactive feature not available in single page view (see it in standard view).

Discussion

You may have come up with the following list of actions:

  • take lid off kettle
  • turn on tap
  • fill kettle with water
  • monitor water level and turn off tap when correct
  • put lid on kettle
  • plug kettle in
  • switch on kettle.

Your list may be different from this one. For example, you may pour the water into the spout without taking the lid off, or the method of supplying power to the kettle might not use a switch. This doesn’t matter. What is important is that you can see how even a very simple task can be described as a series of actions, and that these actions must be given in a particular order for the task to be carried out successfully. In my answer, for example, it would be impossible to carry out the action to put the lid on the kettle if it hadn’t been taken off earlier in the sequence of actions.

Consider a very simple set of electronic scales. These scales have an on/off switch, but no other input buttons, and a display to show the weight of the object in the scalepan in grams.

Activity 2

Write down, in order, the list of actions that the computer inside the scales has to carry out in order to show an object’s weight on the display.

To use this interactive functionality a free OU account is required. Sign in or register.
Interactive feature not available in single page view (see it in standard view).

Discussion

The computer has to:

  • accept data from the sensor that measures the displacement of the scalepan
  • transform the data from the sensor into data for the display
  • send the display-formatted data to the display.

The list of actions in the comment to Activity 2 can be shown diagrammatically in a type of diagram called a flowchart. Figure 1 shows how you could write this sequence of actions as a flowchart.

The steps in the flowchart are as follows: Start - Accept data from sensor - Transform sensor data to display data format - Send display data to display - End.
Figure 1 Flowchart of the tasks performed by simple electronic scales.

The shapes of the symbols used in flowcharts are significant. Flowcharts are a common language used to communicate processes and it is important to be consistent in their use. This flowchart uses three different symbols to show:

  • the start/end points of the process
  • data input or output
  • a process to be carried out.

Figure 2 defines these symbols. It also defines an additional symbol that shows a decision being made, and another for showing connectors.

The steps in the flowchart are as follows: Start/End - The start or end of the sequence; Input/Output - Data input or output; Process - General description of what happens at this point in the task; Decision - Describes a test to perform and shows the alternative routes; Connector - Used to link sequences together; matching symbols are placed in the circles to indicate matching connectors.
Figure 2 Flowchart symbols

In flowcharts, lines are used to connect symbols together, and arrows on these lines indicate the order in which tasks are carried out. You can see this in Figure 1.

The next example incorporates a decision box. It involves a slightly more complex set of electronic scales: they have one additional button on the front that allows the user to select whether the weight is displayed in grams or in pounds and ounces. A flowchart incorporating this choice of display format is shown in Figure 3. It uses the decision box to make a choice about which piece of the program will be run. There are two exit routes from the decision box; each route is called a branch. If the user has requested that the weight should be displayed in grams, the Yes branch is followed so that the sensor data can be transformed to gram format. If the user has requested that the weight should be displayed in pounds and ounces, the No branch is followed to transform the sensor data to pounds and ounces instead. Note that once the translation to the selected output format is complete the branches of the flowchart come together again and the ‘send to display’ part of the task is run regardless of which branch was taken earlier in the program.

The steps in the flowchart are as follows: Start; Accept data from sensor; Examine metric/imperial button; Is weight to be shown in grams? For yes: ‘Transform sensor data to display gram format and for no: Transform sensor data to display in pounds and ounces format; Send data to display; End.
Figure 3 Flowchart for electronic scales with metric/imperial selector button