Are you Well-Architected?
Tags: aws, architecture, cloud
Published: 2022-04-30 09:30:07

In this post, I will try to describe the significance of AWS Well-Architected Framework. You can find more details in AWS [whitepaper] (https://docs.aws.amazon.com/wellarchitected/latest/framework/welcome.html).

Every architect aims at creating robust software systems. There is no silver bullet to creating good architecture but there are best practices and principles that apply regardless of the technology. AWS Well-Architected is a framework that provides set of guiding tenets to design and run successful  solutions on cloud. 

The framework helps you build secure, reliable, efficient, cost-effective, and sustainable workloads in the cloud. It provides a way to consistently measure your architecture against best practices, identify areas for improvement, address shortcomings and thus in the process helps your architecture to continuously evolve. The framework can be applied to all kinds of cloud engagements such as cloud migrations, re-design of existing workloads and new workloads. 

## The Framework
The [AWS Well-Architected Framework] (https://aws.amazon.com/architecture/well-architected/?wa-lens-whitepapers.sort-by=item.additionalFields.sortDate&wa-lens-whitepapers.sort-order=desc) describes design principles and architectural best practices for designing and running high quality solutions in the cloud. The framework includes **general design principles**, **architecture pillars**, **domain-specific lenses**, **hands-on labs**, and a **well-architected tool**.

## General Design Principles

The framework identifies a set of general design principles to produce good architecture in the cloud:

- Stop guessing your capacity needs.
- Test systems at production scale.
- Automate to make architectural experimentation easier.
- Allow for evolutionary architectures.
- Drive architectures using data.
- Improve through game days.

## Six Pillars
The Well-Architected Framework consists of six pillars - operational excellence, security, reliability, performance efficiency, cost optimization, and sustainability. Each pillar provides a set of **design principles**, **best practices**, and **questions**. These pillars help you produce stable and efficient systems. 

1. **Operational Excellence:** The operational excellence pillar focuses on running and monitoring workloads in the cloud.
2. **Security:** The security pillar focuses on protecting information, systems and assets. 
3. **Reliability:** The reliability pillar focuses on the ability to prevent and quickly recover from failures to meet demands.
4. **Performance Efficiency:** The performance efficiency pillar focuses on using resources efficiently.
5. **Cost optimization:** The cost optimization pillar focuses on avoiding unneeded costs and delivering business value at the lowest price point.
6. **Sustainability:** The sustainability pillar focuses on minimizing the environmental and societal impacts of running cloud workloads. 

I created a mindmap for the six pillars of Well-Architected Framework depicting the design principles, best practices, and questions for each pillar. See the mindmap [here] (https://www.xmind.net/m/mrfnqQ).

![AWS Well-Architected Pillars](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qrt50gt41ecruy1nn8wv.png)
 
 

## The Lenses
AWS Well-Architected Lenses extend the guidance offered by AWS Well-Architected Framework to specific industry and technology domains, such as SaaS, Serverless, IoT, HPC, financial services, games industry and more. On top of the core framework, there is an added set of best practices and questions targeted for the specific domain.

## The Labs
The [AWS Well-Architected Labs] (https://www.wellarchitectedlabs.com) provide you a repository of documentation and code to give you a hands-on experience in building a well-architected solution. The labs provide both beginner and advanced levels of curated solutions for each pillar. 

## The Review
Architecture reviews are ideally conducted to identify areas that could be improved, or to address critical issues or to close technical debts. So how do you assess the wellness of an existing workload on AWS? The [AWS Well-Architected Tool] (https://aws.amazon.com/well-architected-tool/?whats-new-cards.sort-by=item.additionalFields.postDateTime&whats-new-cards.sort-order=desc) helps you with the well-architected review process; it provides a consistent mechanism for you to validate and measure the state of your architecture. It is important to note that the review process is not an audit; instead it should be treated as a light-weight process that is based on collaboration and conversation. The review process is not a one time event either; instead it should be conducted on a periodic basis like at every phase of migration or at important workload milestones. The outcome of the review process is a set of improvement areas that must be closed to improve the workload architecture. 

## Conclusion
Hope this post helps you understand how AWS Well-Architected Framework guides you in building well-architected solutions on AWS.