Define a set of guiding principles is an important first step of any strategy
—- Cloud Strategy from Gregor Hohpe.
1. Agile manifesto
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
https://agilemanifesto.org/iso/en/manifesto.html
3. 21 principles of enterprise architecture
Four categories of principles
- General principles
- Information principles
- Application principles
- Technology principles
General principles
- IT and business alignment
- Maximum benefits at the lowest cost and risk
- Business continuity
- Compliance with standards and policies
- Adoption of the best practices for the market
Information principles
- Information treated as an asset
- Shared information
- Accessible information
- Common terminology and data definitions
- Information security
Application principles
- Technological independence
- Easy-to-use applications
- Component reusability and simplicity
- Adaptability and flexibility
- Convergence with the enterprise architecture
- Enterprise architecture also applies to external applications
- Low-coupling interfaces
- Adherence to functional domains
Technology principles
- Changes based on requirements
- Control of technical diversity and suppliers
- Interoperability
https://developer.ibm.com/articles/enterprise-architecture-financial-sector/
3. 6 pillars of AWS Architectured framework
- Operational Excellence
- Security
- Reliability
- Performance Efficiency
- Cost Optimization
- Sustainability
https://aws.amazon.com/cn/blogs/apn/the-6-pillars-of-the-aws-well-architected-framework/
4. The Twelve Factors
- Codebase
One codebase tracked in revision control, many deploys - Dependencies
Explicitly declare and isolate dependencies - Config
Store config in the environment - Backing services
Treat backing services as attached resources - Build, release, run
Strictly separate build and run stages - Processes
Execute the app as one or more stateless processes - Port binding
Export services via port binding - Concurrency
Scale out via the process model - Disposability
Maximize robustness with fast startup and graceful shutdown - Dev/prod parity
Keep development, staging, and production as similar as possible - Logs
Treat logs as event streams - Admin processes
Run admin/management tasks as one-off processes
5. Manifesto for software craftsmanship
As aspiring Software Craftsmen we are raising the bar of professional software development by practicing it and helping others learn the craft. Through this work we have come to value:
- Not only working software, but also well-crafted software.
- Not only responding to change, but also steadily adding value
- Not only individuals and interactions, but also a community of professionals
- Not only customer collaboration, but also productive partnerships
That is, in pursuit of the items on the left we have found the items on the right to be indispensable.

Leave a reply to ansteadmadalen1994 Cancel reply