2.1.3 Thinking Procedurally Flashcards
What is the first stage of thinking procedurally?
Taking the problem defined by the user and breaking it down into its constituent parts.
What is the purpose of problem decomposition?
To make complex problems easier to solve and more manageable by allowing tasks to be divided between a group of people according to individual skill sets.
State another name given to top-down design.
Stepwise refinement.
What is the purpose of top-down design?
Continually break problems down into subproblems until each subproblem can be represented as a single task and ideally a self-contained subroutine.
What are the benefits of using top-down design?
- Problems can be solved and modules developed by different people,
- Tasks can be tested separately,
- Modules are self-contained.
What sort of problems is top-down design suited to?
Large, complex problems.
What is the second stage of thinking procedurally in software development?
Identifying components of a solution.
How can the lowest level subproblems in top-down design in code?
As self-contained modules or subroutines.
What do software developers need to consider when recombining components of a solution?
The order in which subroutines are executed, and how they interact with each other, based on their role in solving the problem.
What must a software developer do before designing a subroutine to solve a particular problem?
See whether it is possible for an already existing subroutine or module to be used.
State two advantages of utilising reusable components.
- More reliable than newly-coded components, as they have already been tested,
- This saves time, money and resources.