Abstraction: the process of removing unnecessary details of a problem to focus on the important features to implement in a solution Abstraction: the process of separating what a program does from the implementation or how it does it