Worksheets2.1.3. Thinking Procedurally
Total questions: 11
Worksheet time: 6mins
What is the first stage of thinking procedurally?
Taking the problem defined by the user and breaking it down into its constituent parts
Developing a solution
Testing a solution
Analysing a problem
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.
The process of separating ideas from specific instances of those ideas at work
Any situation in the design or programming of a system when you would want more than one thing happening at the same time
Letting the problem rot away
State another name given to top-down design.
Stepwise refinement
Problem Recognition
Divide and Conquer
Problem Decomposition
Backtracking
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.
The analysis of a large amount of data in a data warehouse to provide new information.
An algorithm for finding a complete solution. This is a refined brute force methodology. It is a very general algorithm for finding all (or some) solutions to computational problems.
The process of separating ideas from specific instances of those ideas at work
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
Uses abstraction to create algorithms and prototypes
Wireframe designs are required before development can take place
What sort of problems is top-down design suited to?
Large, complex problems
Small, complex problems
Large, simple problems
Small, simple problems
What is the second stage of thinking procedurally in software development?
Identifying components of a solution
Taking the problem defined by the user and breaking it down into its constituent parts
Developing a solution
Testing a solution
What are the lowest level subproblems in top-down design in code?
self-contained modules or subroutines
Machine Code
High Level Language
Flow Chart
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.
Who the original author of the component was
Will they fit together
What must a software developers 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.
Taking the problem defined by the user and breaking it down into its constituent parts
Developing a solution
Testing a solution
Analysing a problem
State advantages of utilising reusable components.
More reliable than newly-coded components, as they have already been tested.
This saves time, money and resources.
Accuracy of the algorithms used
Effectiveness of algorithm in managing the cache
Content can be loaded without delay
