1.2 Decomposition and abstraction