CommunityCodierung & Entwicklunggithub.com

viccom/software-architecture-design

Entwickelt Systemstrukturen für Monolithen, Microservices und serverlose Architekturen. Verwenden Sie diese Fähigkeit, wenn Sie Systeme strukturieren, skalieren, Monolithen zerlegen oder Architekturmuster auswählen.

Was ist software-architecture-design?

Diese Fähigkeit (Skill) ist ein umfassender Leitfaden für Softwarearchitekten und Senior Engineers, um systemweite Architekturentscheidungen zu treffen. Sie deckt die gesamte Bandbreite von Architekturstilen (Monolith, Microservices, serverlos) ab und bietet Entscheidungsbäume, Referenzmuster und Vorlagen. Der Skill unterstützt bei der Auswahl des richtigen Architekturmusters basierend auf Faktoren wie Teamgröße, Entwurfskontext, Skalierungsanforderungen und Konsistenzanforderungen. Er enthält detaillierte Anleitungen zur Systemzerlegung, Datenkonsistenzmodellen (ACID vs. BASE, Event Sourcing, CQRS, Saga), Skalierbarkeit (Load Balancing, Caching, Sharding), Ausfallsicherheit (Circuit Breaker, Retries, Bulkheads) und der Dokumentation von Entscheidungen (Architecture Decision Records, ADRs). Der Skill betont die Bedeutung von Technologieentscheidungen, die klare Benennung von konkreten Technologien (z. B. „Temporal.io für Workflow-Orchestrierung“, „Socket.io mit Redis-Adapter“) und die Vermeidung von zu frühem oder zu großem Scope. Er ist für Claude Code, Codex und Cursor verfügbar und bietet einen strukturierten Workflow mit 8 Schritten von der Problemdefinition bis zur Entscheidungsdokumentation. Zusätzlich enthält er eine Navigationshilfe mit Referenzen zu verwandten Fähigkeiten (Backend, Frontend, API-Design, Sicherheit) und 60 kuratierten Ressourcen zu aktuellen Trends (Plattform-Engineering, Data Mesh, AI-native Systeme).

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/viccom/viccom-agent-skills/tree/HEAD/skills/software-architecture-design

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Softwarearchitektur-Design — Kurzreferenz

Verwenden Sie diesen Skill für systemweite Designentscheidungen anstelle von Implementierungsdetails innerhalb eines einzelnen Dienstes oder einer Komponente.

Kurzreferenz

AufgabeMuster/WerkzeugWichtige RessourcenWann verwenden
Architekturstil wählenGeschichtet, Microservices, Ereignisgesteuert, Serverlosmodern-patterns.mdGreenfield-Projekte, große Refactorings
Für Skalierung entwerfenLoad-Balancing, Caching, Sharding, Read-Replicasscalability-reliability-guide.mdSysteme mit hohem Traffic, Leistungsziele
Ausfallsicherheit gewährleistenCircuit Breaker, Retries, Bulkheads, Graceful Degradationscalability-reliability-guide.mdVerteilte Systeme, externe Abhängigkeiten
Entscheidungen dokumentierenArchitecture Decision Record (ADR)adr-template.mdWichtige technische Entscheidungen, Trade-off-Analyse
Service-Grenzen definierenDomain-Driven Design (DDD), Bounded Contextsmicroservices-template.mdMicroservices-Zerlegung
Datenkonsistenz modellierenACID vs. BASE, Event Sourcing, CQRS, Saga-Musterdata-architecture-patterns.mdTransaktionen über mehrere Dienste hinweg
Observability planenSLIs/SLOs/SLAs, Verteiltes Tracing, Metriken, Logsarchitecture-blueprint.mdProduktionsreife
Vom Monolithen migrierenStrangler Fig, Datenbankzerlegung, Shadow Trafficmigration-modernization-guide.mdLegacy-Modernisierung
Dienstekommunikation entwerfenAPI-Gateway, Service Mesh, BFF-Musterapi-gateway-service-mesh.mdMicroservices-Netzwerkarchitektur

Wann dieser Skill verwendet werden sollte

Rufen Sie ihn auf, wenn Sie an Folgendem arbeiten:

  • Systemzerlegung: Entscheidung zwischen Monolith, modularer Monolith, Microservices
  • Architekturmuster: Ereignisgesteuert, CQRS, geschichtet, hexagonal, serverlos
  • Datenarchitektur: Konsistenzmodelle, Sharding, Replikation, CQRS-Muster
  • Skalierbarkeitsdesign: Load-Balancing, Caching-Strategien, Datenbankskalierung
  • Resilienzmuster: Circuit Breaker, Retries, Bulkheads, Graceful Degradation
  • API-Verträge: Service-Grenzen, Versionierung, Integrationsmuster
  • Architekturentscheidungen: ADRs, Trade-off-Analyse, Technologieauswahl
  • Migrationsplanung: Monolith-Zerlegung, Strangler Fig, Datenbanktrennung

Wann dieser Skill NICHT verwendet werden sollte

Verwenden Sie stattdessen andere Skills für:

Entscheidungsbaum: Architekturmuster auswählen

Projektanforderungen: [Neues System oder großes Refactoring]
    ├─ Ein Team, sich entwickelnde Domäne?
    │   ├─ Einfach starten → Modularer Monolith (klare Modulgrenzen)
    │   └─ Schnelle Iteration nötig → Geschichtete Architektur
    │
    ├─ Mehrere Teams, klare Bounded Contexts?
    │   ├─ Unabhängige Bereitstellung kritisch → Microservices
    │   └─ Gemeinsames Datenmodell → Modularer Monolith mit Servicemodulen
    │
    ├─ Ereignisgesteuerte Workflows?
    │   ├─ Asynchrone Verarbeitung → Ereignisgesteuerte Architektur (Kafka, Queues)
    │   └─ Komplexe Zustandsmaschinen → Saga-Muster + Event Sourcing
    │
    ├─ Variable/unvorhersehbare Last?
    │   ├─ Pay-per-Use-Modell → Serverlos (AWS Lambda, Cloudflare Workers)
    │   └─ Batch-Verarbeitung → Serverlos + Queues
    │
    └─ Hohe Konsistenzanforderungen?
        ├─ Starke ACID-Garantien → Monolith oder Modularer Monolith
        └─ Verteilte Daten → CQRS + Event Sourcing

Entscheidungsfaktoren:

  • Teamgrößen-Schwelle: <10 Entwickler → Modularer Monolith ist in der Regel besser als Microservices (operativer Aufwand)
  • Teamstruktur (Conway's Law) — Architektur spiegelt die Organisationsstruktur wider
  • Anforderungen an die Bereitstellungsunabhängigkeit
  • Konsistenz vs. Verfügbarkeit (CAP-Theorem)
  • Operative Reife (Monitoring, Orchestrierung)

Ausführliche Musterbeschreibungen finden Sie in references/modern-patterns.md.

Ausgaberichtlinien

Die Referenzen in diesem Skill sind Hintergrundwissen für Sie — absorbieren Sie die Muster und präsentieren Sie sie als Ihr eigenes Fachwissen. Verweisen Sie nicht auf interne Referenzdateinamen (z. B. „aus data-architecture-patterns.md“) in der Ausgabe, die dem Benutzer gegenübersteht. Die Benutzer wissen nicht, dass diese Dateien existieren.

Jede Architekturempfehlung sollte Folgendes enthalten:

  • Konkrete Technologieauswahl: Nennen Sie spezifische Technologien (z. B. „Temporal.io für Workflow-Orchestrierung“, „Socket.io mit Redis-Adapter“), anstatt abstrakt zu bleiben. Der Benutzer muss Bauentscheidungen treffen, nicht nur Muster verstehen.
  • Was NICHT gebaut werden sollte: Machen Sie explizit klar, was aufgeschoben oder vermieden werden sollte. Vorzeitiger Scope ist der häufigste Architekturfehler – helfen Sie dem Benutzer, ihn zu vermeiden.
  • Team- und Prozessausrichtung: Wie passt diese Architektur zur Teamstruktur? Welches Ownership-Modell impliziert sie? Geben Sie CODEOWNERS, Deployment-Ownership und On-Call-Grenzen an, wo relevant.
  • Erfolgskennzahlen: Wie erkennt das Team, dass die Architektur funktioniert? Geben Sie messbare Indikatoren an (Deploy-Frequenz, Durchlaufzeit, Fehlerraten, MTTR).
  • Fokussierte Länge: Zielen Sie auf Tiefe bei den 3–5 wichtigsten Entscheidungen ab, anstatt auf eine erschöpfende Abdeckung aller Belange. Eine Empfehlung, die zu lang zum Lesen ist, ist eine Empfehlung, die nicht befolgt wird.

Arbeitsablauf (Systemebene)

Verwenden Sie diesen Arbeitsablauf, wenn ein Benutzer Architekturempfehlungen, Zerlegungen oder große Plattformentscheidungen abfragt.

  1. Klären: Problemstellung, Nicht-Ziele, Einschränkungen und Erfolgskennzahlen
  2. Qualitätsattribute erfassen: Verfügbarkeit, Latenz, Durchsatz, Haltbarkeit, Konsistenz, Sicherheit, Compliance, Kosten
  3. 2–3 Kandidatenarchitekturen vorschlagen und Trade-offs vergleichen
  4. Grenzen definieren: Bounded Contexts, Ownership, APIs/Ereignisse, Integrationsverträge
  5. Datenstrategie festlegen: Speicher, Konsistenzmodell, Schemaentwicklung, Migrationen
  6. Für den Betrieb entwerfen: SLOs, Fehlermodi, Observability, Deployment, DR, Incident-Playbooks
  7. Scope-Grenzen aufzeigen: was noch NICHT gebaut werden sollte, was aufgeschoben werden sollte, was gekauft vs. gebaut werden sollte
  8. Entscheidungen dokumentieren: ADRs für wichtige Trade-offs und irreversible Entscheidungen schreiben

Bevorzugte Ergebnisse (wählen Sie, was zur Anfrage passt):

  • Architektur-Blueprint: assets/planning/architecture-blueprint.md
  • Entscheidungsdokument: assets/planning/adr-template.md
  • Muster-Tiefenbohrungen: references/modern-patterns.md, references/scalability-reliability-guide.md

Überlegungen für 2026

Laden Sie diese nur, wenn die Frage explizit aktuelle Trends, anbieterspezifische Einschränkungen oder „Was ist der neueste Stand zu X?“ betrifft.

  • references/architecture-trends-2026.md — Plattform-Engineering, Data Mesh, komponierbare Architektur, KI-native Systeme
  • data/sources.json — 60 kuratierte Ressourcen, organisiert nach Kategorie:
    • platform_engineering_2026 — IDP-Trends, KI-Plattform-Konvergenz, Backstage
    • optional_ai_architecture — RAG-Muster, Multi-Agent-Design, MCP/A2A-Protokolle
    • modern_architecture_2025 — Data Mesh, komponierbare Architektur, kontinuierliche Architektur

Wenn Live-Webzugriff verfügbar ist, konsultieren Sie 2–3 maßgebliche Quellen aus data/sources.json und integrieren Sie die Ergebnisse in die Empfehlung. Wenn nicht, antworten Sie mit bewährten Mustern und machen Sie explizit Annahmen, die sich ändern könnten (Anbietergrenzen, Preise, Managed-Service-Funktionen).

Navigation

Kernreferenzen

Lesen Sie höchstens 2–3 Referenzen pro Frage – wählen Sie diejenigen aus, die für die spezifische Anfrage am relevantesten sind. Lesen Sie nicht alle davon.

ReferenzInhaltWann lesen
modern-patterns.md10 Architekturmuster mit EntscheidungsbäumenMuster auswählen oder vergleichen
scalability-reliability-guide.mdCAP-Theorem, DB-Skalierung, Caching, Circuit Breaker, SRESkalierungs- oder Zuverlässigkeitsfragen
data-architecture-patterns.mdCQRS-Varianten, Event Sourcing, Data Mesh, Sagas, KonsistenzDatenfluss über Dienste hinweg
migration-modernization-guide.mdStrangler Fig, DB-Zerlegung, Feature Flags, RisikobewertungMonolithen refaktorieren
api-gateway-service-mesh.mdGateway-Muster, Service Mesh, mTLS, ObservabilityKommunikation zwischen Diensten
architecture-trends-2026.mdPlattform-Engineering, Data Mesh, KI-native SystemeNur aktuelle Trends
operational-playbook.mdFramework für Architekturfragen, ZerlegungsheuristikenRahmung von Design-Diskussionen

Vorlagen

Planung & Dokumentation (assets/planning/):

Architekturmuster (assets/patterns/):

Betrieb (assets/operations/):

Verwandte Skills

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

Verwandte Skills