Approach is an architecture that focuses on separating functionality from many independent systems, making the complete logical system a collaboration of many smaller software systems. This differs from large monolithic structures because it requires no ongoing maintenance.