Monolith or microservices: a documented architecture decision (ADR)
Decide between a modular monolith, extracting a few services or full microservices, using explicit criteria, operational prerequisites, risks and an ADR ready to share. Designed for ChatGPT, Claude, Gemini and Microsoft Copilot. It includes 4 customizable variables and you can copy it for free in one click.
Advanced · Text · Pending editorial review
Prompt
Act as a pragmatic software architect who has worked with both monoliths and microservices and has no preference going in.
Context:
- Product and domain: {{product}}
- Team: {{team}}
- Problem driving the decision: {{problem}}
- Constraints (budget, infrastructure, regulation, deadlines): {{constraints}}
Before answering, ask me up to five questions if information is missing that would change the recommendation (for example, whether the problem is performance, team organization or deployments).
Deliverables:
1. Diagnosis: which part of the problem is technical and which is organizational, and whether architecture is really the cause.
2. Three evaluated options: a well-bounded modular monolith, a monolith with one or two extracted services, and microservices. For each: what it solves, what it makes worse and what it demands.
3. A weighted criteria table: team autonomy, delivery speed, scaling, data consistency, operational cost, debugging complexity, hiring and learning curve.
4. A conditional recommendation: what to choose today and which measurable signals would mean revisiting the decision.
5. If extracting something makes sense: which bounded context first, why, and steps using the strangler fig pattern, including how to split the data.
6. Operational prerequisites (CI/CD, observability, contract management between services, on-call) and their rough effort cost, without invented numbers.
7. The main risks and how to mitigate them.
8. The final ADR in this format: Title, Status, Context, Decision, Alternatives considered, Consequences (positive and negative), When to revisit.
Constraints:
- Do not assume microservices are more modern or better; justify everything from my context.
- Do not invent facts about my system: use [FILL IN] where something is missing.
- Write the summary for a mixed audience (technical and business) and keep the rest technically detailed.How to use it
- Explain the specific problem that makes you consider the change (slow deploys, teams blocking each other, load peaks...).
- Answer the questions it asks before the recommendation.
- Share the ADR with the team and set a date to review it against real data.
Usage example
Product: clinic management SaaS · Team: 9 developers in 2 squads · Problem: deploys take an afternoon and a billing bug takes down the whole app · Constraint: no dedicated platform team.
Sample output
1. Diagnosis
Two of the three symptoms are organizational and deployment problems, not architecture: squads collide because there are no clear module boundaries, and slow deploys point at the pipeline. The third (billing takes everything down) is technical: there is no fault isolation.
3. Weighted criteria (excerpt)
| Criterion | Weight | Modular monolith | Monolith + 1 service | Microservices |
|---|---|---|---|---|
| Team autonomy | 3 | Medium-high | High | High |
| Operational cost | 3 | Low | Medium | High |
| Data consistency | 2 | High | Medium | Low |
| Debugging | 2 | Simple | Medium | Complex |
8. ADR-007: Platform architecture
- Status: Proposed
- Context: 9 developers in 2 squads, no platform team; tight budget; health data under HIPAA; new module in 6 months.
- Decision: A modular monolith with
scheduling,records,billingandremindersmodules, explicit internal contracts, and billing running in separate workers so its failures cannot take down the web app. - Alternatives considered: extracting billing as a service (deferred); microservices (rejected on operational cost).
- Consequences: + one deploy and one database to audit; − requires discipline to respect module boundaries.
- Revisit when: a module needs to scale independently, or deploy time stays above [FILL IN] after the pipeline is optimized…
Key facts
- Category
- Programming & development · Software architecture
- Output type
- Text
- Level
- Advanced
- Designed for
- ChatGPT, Claude, Gemini and Microsoft Copilot
- Verified in
- Pending editorial verification
- Variables
- Product and domain, Team, Current problem and Constraints
- Language
- English
- Price
- Free, no sign-up
- Updated
- Nov 7, 2026
Frequently asked questions
What is a modular monolith?
A single deployable application split internally into modules with clear boundaries and controlled dependencies. It gives much of the separation of microservices without the cost of network calls, distributed consistency and many deploy pipelines.
What is an ADR and why write one?
An Architecture Decision Record is a short document capturing a decision, its context and its consequences. It lets whoever comes later understand why something was chosen and when to reconsider it.
What is the strangler fig pattern?
It replaces parts of a system gradually: traffic for one feature is routed to a new component while everything else stays in the old system, until the old system is no longer needed.
What is this prompt for?
Decide between a modular monolith, extracting a few services or full microservices, using explicit criteria, operational prerequisites, risks and an ADR ready to share.
Which AI tools does it work with?
It is designed for ChatGPT, Claude, Gemini and Microsoft Copilot. We have not verified it in these tools yet, so results may vary between them.
How do I customize the prompt?
Click “Customize” and fill in the variables (Product and domain, Team, Current problem and Constraints). The text updates instantly and you can then copy it in one click. Values are stored only in your browser.
Do I need experience to use it?
It is advanced: it is meant for people with experience in the topic who can evaluate and adjust the result.
Is this prompt free?
Yes. Every HomeCasa Prompts prompt is free, with no sign-up or subscription. You can also use them in professional projects.
Can I trust the AI output?
Treat it as a high-quality draft: always check data, figures and important claims before publishing or making decisions.