System Architecture Design

Skill Name: sa-architecture-design

Background & Applicable Scenarios

After the BA has clearly documented the requirements spec and business processes, the next question is: what tech stack should this system use? How many layers? What modules should it be split into? How is data stored? Where is it deployed? If these questions aren't answered before coding starts, the architecture will become increasingly chaotic. This skill uses BA outputs to help you design a production-ready system architecture step by step.

Input & Output

What you need to provide: Requirements Specification (PRD) + Business process diagrams, data flow diagrams, ER diagrams, application architecture diagrams (if already available).

What you will get: A standardized System Architecture Design Specification covering 7 architecture dimensions: Overall Architecture (architectural style & philosophy), Layered Architecture (layer responsibilities & technology selection), Module Decomposition (module responsibilities & dependencies), Interface Architecture (interface specifications & core interface definitions), Data Architecture (database/table design, caching strategy, data flow), Deployment Architecture (topology diagram & environment configuration), Non-functional Architecture (performance/security/high availability/observability solutions).

Process Description

The Agent first parses system goals, user roles, business domains, process nodes, data entities, and non-functional requirements from the PRD. It then searches the architecture knowledge base for reference solutions. Next, it designs dimension by dimension — each dimension's direction is confirmed before producing the solution: Overall Architecture → Layered Architecture → Module Decomposition → Interface Architecture → Data Architecture → Deployment Architecture → Non-functional Architecture. Finally, everything is integrated into a standardized System Architecture Design Specification.

flowchart TD s0["Business Asset Analysis: Structured extraction of architecture design inputs from BA outputs"] s1["Architecture Knowledge Base Retrieval: Load architecture patterns, technology selections, industry standards from engineering KB"] s2["Overall Architecture Selection Inquiry"] s3["Overall Architecture Solution Output: Architecture philosophy, overall architecture diagram, architecture description"] s4["Layered Architecture Selection Inquiry"] s5["Layered Architecture Solution Output: Layer responsibilities, technology selection, interaction relationships"] s6["Module Decomposition Selection Inquiry"] s7["Module Decomposition: Decomposition principles, module inventory, dependency relationships, decomposition verification"] s8["Interface Architecture Selection Inquiry"] s9["Interface Architecture Solution Output: Interface specifications, core interface definitions, cross-service interactions"] s10["Data Architecture Selection Inquiry"] s11["Data Architecture Solution Output: ER diagram mapping, database/table design, caching strategy, MQ design, data flow"] s12["Deployment Architecture Selection Inquiry"] s13["Deployment Architecture Solution Output: Deployment topology, environment planning, resource configuration, deployment process"] s14["Non-functional Architecture Selection Inquiry"] s15["Non-functional Architecture Solution Output: Performance/security/high availability/observability solutions"] s16["Document Integration & Full Review"] s0 --> s1 s1 --> s2 s2 --> s3 s3 --> s4 s4 --> s5 s5 --> s6 s6 --> s7 s7 --> s8 s8 --> s9 s9 --> s10 s10 --> s11 s11 --> s12 s12 --> s13 s13 --> s14 s14 --> s15 s15 --> s16