Breaking down a complex problem into simpler, independent sub-problems that can be solved separately.