Core architecture patterns
This section describes the core architecture patterns and its impact on NFRs:
Component-based architecture
To create a good starting point for for a scalable application architecture, a typical system may require a product catalog, registration and personalization, online ordering for the e-commerce domain and various information-based applications, such as a retail outlet finder, and online troubleshooting. Each of these must be logically separated to some degree. As part of the separation, each could be implemented on its own hardware as a set of 'collaborating semi-autonomous applications'. However, they must all combine at different times and in various ways to deliver a 'seamless' experience for the end user.
Context
Creating a business application requires many different types of functionalities, as well as high levels of non-functional characteristics, such as availability, manageability, and performance.
Drivers
Drivers for the component-based architecture...