Answers
Easier to maintain
Ignore irrelevant properties
Break down sub-problems further
Easier to adapt
Reused many times
Remove unnecessary detail
Create a simplified version
Model the real world
Identify main tasks to perform
Reduces amount of code
Make each small task manageable
Break problem into smaller parts
Focus on essential components
Create smaller sub-problems
Fewer bugs