Computational thinking Flashcards
(8 cards)
Define abstraction and state advantages
-Removal of unnecessary components // focus on only necessary components (Mr Mahdi: …to create a representation of reality)
-To reduce memory // processing requirements
-To simplify problem being solved this is sometimes part of the definition
Define decomposition
Breaking down a (big) problem into sub problems, breaking down these sub problems further, until each subproblem can be solved independently (mark scheme, my brain and SaveMyExams hybrid)
What is cache, and what computational method is associated with it (textbook)
-A temporary store where instructions or data an algorithm anticipates will be needed are stored, ready for fast access
-Computational method: thinking ahead
Why is performance modelling used to test a system
- Simulate/model behaviour of the system (before it is) used under load
- Because it would be too expensive/unsafe/time critical to test the real system
Visualisation to solve problems (textbook)
Using visual models of a situation to highlight unexpected patterns and relationships
Use of performance modelling in delivery system
- Test with large and small values
- e.g. largest number of deliveries
- e.g. largest number of possible routes
- Model how well the system scales with increasing use
Describe what is meant by the term ‘concurrent processing’
- Multiple processes being executed at the same time // appearing to happen simultaneously
- Giving processes a slice of the processor time
- Having multiple processors each carrying out a different process
Explain why decomposing a problem can help a developer design a solution
- Splits the problem into smaller chunks
- Smaller problems are more manageable
- Smaller problems are easier to solve
- To see where code can be reused in the solution
- To split tasks between different programmers