Simple, scalable, component-based development

Simple, scalable, component-based development.
Use this practice to develop complex systems as assemblies of smaller and simpler components.
This practice allows teams to:
- Manage the complexity associated with the development of software systems.
- Develop complex systems in an extensible and maintainable fashion.
- Develop and verify the separate parts of a system independently and in parallel.
- Identify opportunities for reuse and exploit reusable components.
- Utilize third-party frameworks and component libraries.