From 4939d7cb526259dde91b2a09b59d5fe2bffcea73 Mon Sep 17 00:00:00 2001 From: yumoqing Date: Wed, 19 Aug 2026 23:11:39 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20design=E4=BA=A7=E5=87=BA=E6=8B=86?= =?UTF-8?q?=E4=B8=A4=E5=B1=82=E2=80=94=E2=80=94=E5=BA=94=E7=94=A8=E7=BA=A7?= =?UTF-8?q?(architecture+ui-design=E9=A3=8E=E6=A0=BC/=E4=B8=BB=E9=A1=B5/?= =?UTF-8?q?=E4=BA=A4=E4=BA=92/=E5=BC=B9=E7=AA=97=E8=A7=84=E8=8C=83)?= =?UTF-8?q?=EF=BC=8C=E6=95=B0=E6=8D=AE=E8=AE=BE=E8=AE=A1=E4=B8=8B=E6=B2=89?= =?UTF-8?q?=E5=88=B0=E5=90=84=E6=A8=A1=E5=9D=97(=E6=95=B0=E6=8D=AE/CRUD/?= =?UTF-8?q?=E5=A4=84=E7=90=86=E9=80=BB=E8=BE=91/skills)=E5=AE=9E=E7=8E=B0?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=E8=87=AA=E5=8C=85=E5=90=AB=E5=A4=8D=E7=94=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../all/sdlc-repo-standard/SKILL.md | 36 +++++++++++++------ 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/skills_library/all/sdlc-repo-standard/SKILL.md b/skills_library/all/sdlc-repo-standard/SKILL.md index b3ef412..5183740 100644 --- a/skills_library/all/sdlc-repo-standard/SKILL.md +++ b/skills_library/all/sdlc-repo-standard/SKILL.md @@ -16,10 +16,8 @@ project-repo/ │ ├── 00-requirement/ │ │ └── requirement-spec.md # 需求规格说明书 │ ├── 01-design/ -│ │ ├── architecture.md # 系统架构 -│ │ ├── database-design.md # 数据库设计 -│ │ ├── api-design.md # API 接口设计 -│ │ └── ui-design.md # 前端设计 +│ │ ├── architecture.md # 系统架构、模块划分、模块间依赖、开发顺序 +│ │ └── ui-design.md # 视觉风格/主页面/用户交互模式/弹窗规范 │ ├── 02-develop/ │ │ └── dev-notes.md # 开发说明(引用了哪些模块仓库) │ ├── 03-test/ @@ -31,8 +29,11 @@ project-repo/ │ │ └── release-notes.md │ └── 05-pm/ │ └── reviews/ -├── modules/ # 模块说明(每个模块一个文件) -│ └── <模块名>.md +├── modules/ # 模块(自包含单元:清单 + 模块级设计) +│ ├── <模块名>.md # 模块清单:功能/仓库/依赖/开发顺序 +│ └── <模块名>/ # 模块级设计(属于模块本身,可整体复用) +│ ├── design.md # 数据设计(表DDL) + CRUD + 处理逻辑(接口) +│ └── skill/SKILL.md # 模块技能文档 ├── apps/ # 应用说明(每个应用一个文件) │ └── <应用名>.md ├── config/ # 部署配置 @@ -49,9 +50,22 @@ project-repo/ - **状态**: <规划中/开发中/已完成> - **负责人**: - **依赖模块**: <列出依赖的其他模块> +- **开发顺序**: <拓扑序中的位置,被依赖的先开发> - **关联应用**: <属于哪个应用> ``` +## 模块级设计 `modules/<模块名>/` + +每个模块是自包含、可复用的单元,数据设计放模块内而非应用级: + +``` +modules/<模块名>/ +├── design.md # 数据设计(表结构DDL) + CRUD 定义 + 处理逻辑(接口) +└── skill/SKILL.md # 模块技能文档(develop agent 参考) +``` + +**原则**: 数据、CRUD、处理逻辑、skills 都属于模块本身,不放在应用级 design 里,这样模块可整体复用(换个应用直接带着自己的数据/逻辑/skills 一起加载)。 + ## 应用说明文件 `apps/<应用名>.md` ```markdown @@ -69,13 +83,15 @@ project-repo/ ### requirement(需求分析师) - **产出**: `docs/00-requirement/requirement-spec.md` -- **同时创建**: `apps/` 下至少一个应用说明文件,`modules/` 下至少一个模块(每个应用至少关联一个模块),标注状态为规划中、填写仓库 URL +- **同时创建**: `apps/` 下至少一个应用说明文件(应用 = 部署单元,含端口/环境) +- **不划分模块**: 模块划分是架构决策,由 design 阶段设计师完成 - **内容**: 项目概述、用户角色及权限、功能列表(含验收标准)、非功能需求、业务流程 ### design(系统设计师) -- **产出**: `docs/01-design/architecture.md`, `database-design.md`, `api-design.md`, `ui-design.md` -- **更新**: `modules/` 下各模块的技术栈、依赖关系 -- **内容**: 架构图及技术选型、ER 图/DDL、API 端点列表、页面结构 +- **应用级产出**: `docs/01-design/architecture.md`(系统架构、模块划分、模块间依赖、开发顺序), `ui-design.md`(视觉风格/主页面/用户交互模式/弹窗规范) +- **模块级设计**: 每个模块在 `modules/<模块名>/` 下产出自己的设计——数据设计(表结构DDL)、CRUD 定义、处理逻辑(接口)、skills(技能文档)。数据/CRUD/逻辑/skills 属于模块本身,不放在应用级,保证模块可整体复用 +- **更新**: `modules/` 下各模块的技术栈、依赖关系、开发顺序 +- **内容**: 架构图及技术选型、模块清单与依赖图、视觉风格与交互规范 ### develop(开发工程师) - **产出**: `docs/02-develop/dev-notes.md`(开发说明,记录了哪些模块仓库、开发了什么功能)