3.8 KiB
Raw Blame History

name description
sdlc-repo-standard SDLC project repo layout and deliverable specs.

SDLC 项目仓库标准

源码在独立仓库,项目仓库只存文档、模块说明、配置。

目录结构

project-repo/
├── README.md                    # 项目概述(PM 维护)
├── docs/                        # 阶段文档
│   ├── 00-requirement/
│   │   └── requirement-spec.md  # 需求规格说明书
│   ├── 01-design/
│   │   ├── architecture.md      # 系统架构
│   │   ├── database-design.md   # 数据库设计
│   │   ├── api-design.md        # API 接口设计
│   │   └── ui-design.md         # 前端设计
│   ├── 02-develop/
│   │   └── dev-notes.md         # 开发说明(引用了哪些模块仓库)
│   ├── 03-test/
│   │   ├── test-plan.md
│   │   ├── test-cases.md
│   │   └── test-report.md
│   ├── 04-deploy/
│   │   ├── deploy-guide.md
│   │   └── release-notes.md
│   └── 05-pm/
│       └── reviews/
├── modules/                     # 模块说明(每个模块一个文件)
│   └── <模块名>.md
├── apps/                        # 应用说明(每个应用一个文件)
│   └── <应用名>.md
├── config/                      # 部署配置
└── .gitignore

模块说明文件 modules/<模块名>.md

# <模块名>
- **功能**: <一句话描述>
- **仓库**: git@git.opencomputing.cn:org/<repo>.git
- **技术栈**: <语言/框架>
- **状态**: <规划中/开发中/已完成>
- **负责人**: <role>
- **依赖模块**: <列出依赖的其他模块>
- **关联应用**: <属于哪个应用>

应用说明文件 apps/<应用名>.md

# <应用名>
- **描述**: <应用的整体功能和定位>
- **包含模块**:
  - <模块1> (git@...)
  - <模块2> (git@...)
- **部署环境**: <地址/端口>
- **负责人**: <role>
- **状态**: <规划中/开发中/已上线>

各角色产出规范

requirement(需求分析师)

  • 产出: docs/00-requirement/requirement-spec.md
  • 同时创建: apps/ 下至少一个应用说明文件,modules/ 下至少一个模块(每个应用至少关联一个模块),标注状态为规划中、填写仓库 URL
  • 内容: 项目概述、用户角色及权限、功能列表(含验收标准)、非功能需求、业务流程

design(系统设计师)

  • 产出: docs/01-design/architecture.md, database-design.md, api-design.md, ui-design.md
  • 更新: modules/ 下各模块的技术栈、依赖关系
  • 内容: 架构图及技术选型、ER 图/DDL、API 端点列表、页面结构

develop(开发工程师)

  • 产出: docs/02-develop/dev-notes.md(开发说明,记录了哪些模块仓库、开发了什么功能)
  • 源码: 写入对应模块的独立仓库(通过 modules/ 中的 repo URL 确定),不在项目仓库中
  • 更新: modules/ 下对应模块的状态为开发中/已完成
  • 行为准则:
    1. 先读 modules/ 确认模块仓库 URL
    2. git_clone 模块仓库到工作空间
    3. write_file 写代码到模块仓库
    4. run_shell 编译验证
    5. git_commit_push 提交
    6. deliver 交付,更新 modules/ 状态

test(测试工程师)

  • 产出: docs/03-test/test-plan.md, test-cases.md, test-report.md

deploy(部署工程师)

  • 产出: docs/04-deploy/deploy-guide.md, release-notes.md, config/ 下部署配置

PM(项目经理)

  • 审核要点:
    • develop: 必须检查对应模块仓库有 git commit,modules/ 状态已更新
    • 每个阶段检查 modules/ 和 apps/ 文件是否随进度更新