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 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 programs
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 be 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 of module to be used
state 2 advantages of utilising reusable components
more reliable than newly coded components as they have already been tested. this saves time, money and resources.