You are on page 1of 1

Deviations

Technical vision

Empathy

Architecture Collaboration
Architect role
Adaptability
Strangler Application Pattern
Autonomy
Seams
Legacy Applications Smart use-cases
Microservice overlay
Conway’s Law
Identify static parts
Service Ownership
Provide service templates and examplars
Internal Open Source
Loose Coupling / High Cohesion
Organisation Decentralised Governance
Message Broker instead of ESB Dumb Pipes and Smart Endpoints
Full stack teams
(D)RY across services
Principles and Practices DevOps Knowledge
Capabilities
Tooling
Nested contexts Bounded Contexts Modeled around a business domain
Container
full separation
Isolation Virtual Machine
Module Boundaries Build a monolith first
Physical Host
Tolerant Reader / Postel’s Law
Increase resources
Avoid Breaking Changes
Versioning Splitting Workloads
Semantic Versioning Interfaces Scaling
Load Balancing
Parallel versions Design
Worker Based Systems
Microservices
Business Concepts Infrastructure
Small autonomous services that work together
Continuous Integration / Delivery
Circuit breakers
Blue / Green Deployments
Embrace failure Automation
Resilience Canary Releasing
Bulkheads
Provisioning
Queues
Metrics
RPC
Request/Response Aggregated Monitoring Logs Correlation IDs
REST
Asynchronous vs Synchronous Semantic User Perspective
Message Broker Event-based
CAP Theorem
Orchestration vs Choreography
Distributed Systems Service Discovery
Two-pizza teams
Size Eventual consistency
Single responsibility
No Shared Database
Single-Sign On
(No)SQL
Gateway Security
Reads
Service-to-Service Data
Scaling Writes
API Composition
Caching
UI Fragment Composition User Interface
Separate reporting database
Backend-for-Frontends
End-to-End Tests

Journeys

Testing Consumer-Driven Tests

Quality Requirements

Performance

You might also like