Αρχική » 6. evaluation » BBC Problems with solutions

BBC Problems with solutions

Solutions that are not properly decomposed

If computational thinking techniques are applied to the problem of how to bake a cake, on decomposing the problem, it is necessary to know:

  • what kind of cake to bake
  • what ingredients are needed, how much of each ingredient, and when to add it
  • how many people the cake is for
  • how long to bake the cake for
  • what equipment is needed

A diagram of a further decomposition of ingredients would look like this:

bbc eval 1

 

At the moment, a diagram of the further decomposition of equipment would look like this:

bbc eq

The ‘Equipment’ part is not properly broken down (or decomposed). Therefore, if the solution – or algorithm – were created from this, baking the cake would run into problems. The algorithm would say what equipment is needed, but not how to use it, so a person could end up trying to use a knife to measure out the flour and a whisk to cut a lump of butter, for example. This would be wrong and would, of course, not work.

bbc eval 2

Ideally, then, ‘Equipment’ should be decomposed further, to state which equipment is needed and which ingredients each item is used with.

The problem occurred here because the problem of which equipment to use and which ingredients to use it with hadn’t been fully decomposed.

Solutions that are incomplete

If computational thinking techniques are applied to the problem of how to bake a cake, on decomposing the problem, it is necessary to know:

  • what kind of cake to bake
  • what ingredients are needed, how much of each ingredient, and when to add it
  • how many people the cake is for
  • how long to bake the cake for
  • what equipment is needed

However, this is incomplete – part of the problem has been left out. We still need to know:

  • where to bake the cake
  • what temperature to bake the cake at

Therefore, if this information was used to create the solution, the algorithm would say how long the cake should be baked for but it would not state that the cake should be placed in the oven, or the temperature that the oven should be. Even if the cake made it to the oven, it could end up undercooked or burnt to a cinder.

Very important factors have been left out, so the chances of making a great cake are slim.

The problem occurred here because placing the cake in the oven and specifying the oven temperature had not been included, making the solution incomplete.

Solutions that are inefficient

If computational thinking techniques are applied to the problem of how to bake a cake, on decomposing the problem, the solution would state – among other things – that certain quantities of particular ingredients are needed to make the cake.For the first ingredient, it might tell us to go the cupboard, get the ingredient, and bring it back to the table. For the second – and all other ingredients – it might tell us to do the same.If the cake had three ingredients, that would mean three trips to the cupboard. While the program would work like this, it would be unnecessarily long and complicated:

bbc eval 3

It would be more efficient to fetch all the ingredients in one go, and the program would be shorter as a result:

bbc eval 4

The solution is now simpler and more efficient, and has reduced from nine steps to five.

The problem occurred here because some steps were repeated unnecessarily, making the solution inefficient and overly long.

Solutions that do not meet the original design criteria

Solutions should be evaluated against the original specification or design criteria where possible. This makes sure that the solution has not strayed too much from what was originally required, that it solves the original problem and that it is suitable for users.Imagine having to apply computational thinking to the problem of how to bake a cake. On decomposing the problem, it is necessary to know:

  • what kind of cake to bake
  • what ingredients are needed, how much of each ingredient, and when to add it
  • how many people the cake is for
  • how long to bake the cake for
  • what equipment is needed

The first point considers what kind of cake to bake. Often, when devising solutions to problems, a specification for the design is given. For example, the cake may have to be a chocolate cake, which is still quite general, or a chocolate fudge cake with chocolate icing and flakes on top, which is more specific.

To meet the design criteria, it is important to ensure that the exactly right kind of cake is baked. Otherwise the solution may not be fit for purpose.

The problem occurred here because the solution did not meet the original design criteria – it was not exactly what was requested.

Αλλαγή μεγέθους γραμματοσειράς
Αντίθεση