As part of the modernization effort, you will begin to find patterns that work for your organization. Many applications will follow similar architectural designs, and it is wise to re-use these known patterns.
It is challenging to gain operational benefits if your applications are vastly different. Grouping applications into application patterns can provide some known solutions that can be recreated many times. Using a set of reproducible architectural patterns offers several benefits to the business.
Shared institutional knowledge – Any time a new application pattern is created, it requires further understanding of maintaining the application. Using familiar patterns across the organization provides a shared language between teams. This shared institutional knowledge also allows developers to work across teams or projects with a working knowledge of the application patterns in use.
Shared Operational Processes – Operations teams are often responsible for many applications, and modern application patterns often require new strategies to operate them. A standard set of operational processes can reduce the burden on shared operations teams who must monitor performance, security events, and outages.
Licensing – There are financial benefits to standardizing on specific patterns. Software vendors often provide discounts for bulk purchases. Standardizing on specific software stacks may limit the flexibility of new application decisions but provide a reduced price for software if shared across the enterprise.
Optimized Developer Time – Developers who have previously created applications in a specific pattern can re-use what they’re learned in subsequent applications. A smaller set of known architecture patterns or deployment solutions limits the number of tools a developer needs working knowledge of. It also reduces the number of decisions that need to be made when starting a new application, leading to a faster start.