This is an agenda I used recently in a 2-day workshop on a future architecture with lots of existing system and Code legacy („brownfield project“):
- What is the Business Vision?
- What is the current Architecture?
- What drives the future Architecture?
- How could an ideal system look like?
- How do we get there?
- What to buy vs What components/interfaces to build?
We started with the business vision and management priorities and the current architecture situation. From there we elaborated an ideal system with potential strategies to get there.
Send us an email if you want to learn more or hire us.
Business Vision
- From the business vision, derive influencers on the architecture
- What makes us cringe?
- What makes us no worry?
- Collect Functional and Nonfunctional items
Current Architecture
- Identify
- pain points
- user activities
- top 5 use cases that drive the architecture
- Create different models (Yes, many) of the architecture to share understanding
- What is slowing us down?
- How long are the feedback cycles of work in the teams?
- How can we enable Continuous Delivery?
Future System
What is the ideal system? How does it look like?
Where do we predict changes to happen in the future?
- Work in smaller groups and capture ideas
- Capture different approaches and compare
- Data flow, security, user interaction
- Use Event Storming to find user interaction points
Gather and merge ideas into architecture model(s)
- What is the ideal architecture?
- Use C4 Context and Component Diagrams
- How can we minimize the blast radius of issues and incidents? –> How can we create autonomy in teams?
- Collect Glossary with common terms for shared understanding
How to get there?
- What next?
- Collect baby steps to get there
- Collect big bang to get there
- Buy or Build? Sub systems?
- Brainstorm activities and trade offs
- Create a backlog of work
Pain Points
There are lots of points we address in the training or by running the workshop with your real operational systems architecture, like:
- How do we know “Enough modeling is enough”?
- When should we take which decision?
- When do we start to digitize the models? (Why should we?)
- Which notation makes sense?
- What is a great architecture?
Tools we ❤
Here some tools we use in this Architecture workshop
- Our brains
- Clear communication and common understanding
- C4 Models
- Clean Architecture
- Wardley Mapping
- Impact Mapping
- Domain Driven Design
- Event Storming
- User Story Mapping
- Ports and Adapters or also known as Hexagonal Architecture (by Alistair Cockburn)
- The Universal Architecture (Concept by JB Rainsberger)
- Pen, Paper, Post-Its
What does an Architect do? (Yes, the role)