帮助你设计和记录系统的技术架构,从高级系统概述到详细的组件设计
高质量的技术架构文档是系统设计和开发的基础,帮助团队理解系统结构和关键设计决策
这些模板特别适合架构师、技术负责人和高级开发人员使用,确保你的技术决策得到清晰记录,便于团队理解系统的设计意图和关键构件
全面的系统架构概述文档,描述总体设计、关键组件、数据流和系统边界
# 系统架构概述生成模板 ## 前提条件 - 系统名称: [系统名称] - 系统类型: [Web应用/移动应用/分布式系统/微服务等] - 核心业务目标: [系统要解决的主要业务问题] - 技术栈要求: [预期使用的技术栈或限制条件] ## 需求描述要点 - 架构愿景: 简明描述架构的总体目标和设计原则 - 系统上下文 * 系统边界和外部依赖 * 与其他系统的交互 * 关键利益相关者和使用者 - 架构概览: * 高层架构图(逻辑视图) * 主要子系统和组件 * 关键接口和通信方式 - 关键质量属性 * 性能要求和指标 * 安全性考虑 * 可伸缩性设计 * 可用性和容错设计 - 关键架构决策: * 技术选择和理? * 设计权衡考量 * 已拒绝的替代方案 - 部署架构: * 部署模型和环境 * 基础设施需求 * 网络拓扑 ## 输出格式 - 格式: 结构化的Markdown文档 - 图表: 包含架构图(推荐C4模型或UML组件图) - 术语表 关键技术术语的定义 ## 其他要求 - 避免过度细节,保持高层次的系统视图 - 重点关注架构驱动因素和约束 - 清晰说明架构决策的理? - 标注架构中的风险点和缓解策略
详细的API接口设计文档,描述REST或GraphQL API的端点、请求/响应格式和认证机制
# API 接口设计文档生成模板 ## 前提条件 - API 名称: [API名称] - API 类型: [RESTful/GraphQL/RPC/SOAP等] - 业务领域: [API所服务的业务领域] - 目标用户: [API的使用者,如移动端/前端/其他服务等] ## 需求描述要点 - API 概述: * 目的和功能范围 * 设计原则和约束 * 版本控制策略 - 基础信息: * 基本URL结构 * 通用请求/响应格式 * 状态码使用规范 * 错误处理机制 - 认证与安全 * 认证机制(OAuth/JWT/API Key等) * 授权级别和权限控制 * 速率限制策略 * 安全最佳实践 - 端点详情(RESTful)或类图GraphQL): * 完整的端点列表和分组 * 每个端点的HTTP方法 * URL参数和查询参数 * 请求体格式和字段定义 * 响应格式和字段定义 * 状态码和错误响应 * 示例请求和响应 - 数据模型: * 关键数据实体的定义 * 字段类型和约束 * 实体间的关系 ## 输出格式 - 格式: 结构化的技术文档 - 示例: 提供真实的API调用示例,包括请求和响应 - 表格: 使用表格展示端点列表和参数 ## 其他要求 - 遵循行业标准(如OpenAPI规范) - 包含分页、排序、过滤的处理方式 - 考虑跨域请求处理 - 提供API演化和弃用策略
全面的数据库设计文档,详细描述数据模型、表结构、关系和索引策略
# 数据库设计文档生成模板 ## 前提条件 - 系统名称: [系统名称] - 数据库类型 [关系型/NoSQL/时序/图数据库等] - 具体数据库产品 [MySQL/PostgreSQL/MongoDB/Redis等] - 数据量预估 [预期的数据规模和增长] ## 需求描述要点 - 数据库概览 * 数据库选择理由 * 整体设计原则 * 主要功能需求支持 - 数据模型设计: * 实体关系图(ER图) * 主要实体和定义 * 实体之间的关系和基数 - 集合设计: * 详细的表/集合结构 * 每个字段的数据类型和约束 * 主键和外键策略 * 默认值和空值处理 - 索引策略: * 主要索引设计和理? * 唯一性约束 * 复合索引设计 * 索引使用注意事项 - 查询优化: * 常见查询模式分析 * 查询优化策略 * 预计的查询性能 - 数据迁移和演化 * 版本控制和迁移策略 * 向前兼容性考虑 ## 输出格式 - 格式: 结构化技术文档 - 图表: 包含ER图和表关系图 - 表格: 使用表格清晰展示表结构 ## 其他要求 - 考虑数据库性能和扩展? - 包含数据备份和恢复策略 - 提供数据库安全性和访问控制建议 - 考虑分区/分片策略(如适用)
微服务架构设计文档,包括服务划分、通信模式、数据一致性策略和部署模型。
# 微服务架构设计文档生成模板 ## 前提条件 - 系统名称: [系统名称] - 业务领域: [系统所服务的业务领域] - 规模和复杂度: [系统规模和复杂度估计] - 技术栈偏好: [预期使用的技术栈,如有] ## 需求描述要点 - 微服务架构概述: * 采用微服务的理由和目标 * 架构设计原则和约束 * 整体架构图 - 服务划分: * 服务边界识别方法(领域驱动设计) * 详细的服务清单和职责 * 每个服务的规模和复杂度评估 * 服务间依赖关系 - 通信模式: * 同步通信策略(REST/gRPC) * 异步通信策略(消息队列/事件总线) * API 网关设计 * 服务发现机制 - 数据管理: * 数据库策略(每服务独立数据库/共享数据库) * 数据一致性策略(分布式事务/最终一致性) * 查询策略(CQRS/API 组合) * 数据同步和迁移方案 - 弹性设计: * 服务容错策略(断路器/隔舱/超时) * 可扩展性设计(水平扩展/自动扩缩容) * 监控和可观测性策略 * 性能优化考量 - 部署和运维: * 容器化策略 * CI/CD 流程设计 * 环境管理 * 发布策略(蓝绿部署/金丝雀发布) * 配置管理 ## 输出格式 - 格式: 结构化的技术文档 - 图表: 包含架构图、服务拓扑图和数据流图 - 示例: 提供关键设计决策的示例和实现参考 ## 其他要求 - 考虑微服务架构的挑战和缓解策略 - 提供实施路线图和演进策略 - 评估技术选型的利弊 - 考虑组织结构和团队分工