Abstraction & automation Flashcards
Define truth table
A succinct way of laying out boolean logic
Define abstraction
Removing unnecessary detail
Define representational abstraction
What is left behind when the details have been removed
What is abstraction by generalisation?
Grouping things in terms of a set of common characteristic
What is information hiding?
Abstracting pieces of information that users can’t comprehend
How is most information hiding done?
Using interfaces which abstract what is behind it to allow users with little computer knowledge to use them.
What is procedural abstraction?
A representation of a computational method that generalises subroutines
Define decomposition
Breaking down a complex problem into smaller subproblems to be solved individually
How do you design top-down?
Look at the problem as a whole
Identify the main components
Systematically analyse each component & break it down to the smallest it can be
Solve these small problems until you can build up to solve the big one
How do you design using divide and conquer?
Solves problems by combing subproblems. Recursion is used to divide a task into subtasks until an easy-to-solve subtask is reach then they’re recombined to create a solution to the main task
How are compound data structures formed?
By combining data primitives
Define automation?
The process of taking the model and implementing a solution
How is automation is achieved?
By implementing data structures to store data and algorithms to process the data