1.Smaller components are easier to maintain
2.Concurrent execution can be made possible
3.Program cannot be divided based on functional aspects
4.Desired level of abstraction can be brought in the program
Answer:3