/images/avatar.png

半生戎码

开发流程

1. 需求阶段

  1. 市场调研
  2. 可行性分析
  3. 需求分析
  4. 需求文档
  5. 需求评审

2. 设计阶段

  1. 产品设计
  2. 交互设计
  3. 视觉设计
  4. 技术设计
  5. 技术评审
  6. 需求排期

3. 开发阶段

3.1 开发

  1. Git Flow 工作流
  2. 生成代码
  3. 版权检查
  4. 编码
  5. 静态代码检查
  6. 单元测试
  7. 编译
  8. 自测
  9. Code Review
  10. Merge

3.2 构建(CI)

  1. 代码扫描
  2. 单元测试
  3. 编译打包
  4. 归档
    1. 镜像仓库
    2. 制品库

4. 测试阶段

  1. 功能测试
  2. 性能测试
  3. 集成测试
  4. 系统测试

5. 发布阶段

5.1 代码发布

  1. 合并到主干
  2. 生成版本号
  3. 打标签
  4. 代码扫描
  5. 单元测试
  6. 编译
  7. 发布构建产物

5.2 发布审批

  1. 资源申请
  2. 创建发布计划
  3. 创建发布单
  4. 发布单审批

5.3 服务发布

  1. 预发部署
  2. 预发验证
  3. 现网部署
  4. 现网验证

6. 运营阶段

  1. 运维
  2. 产品运营

7. 参考

https://time.geekbang.org/column/intro/100079601

软件生命周期之需求分析和软件设计

1. 什么是软件生命周期

软件生命周期又称为软件生存周期或系统开发生命周期,是指从软件的产生直到报废的整个过程,它包括问题定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段。每一个阶段都有确定的任务,并产生一定规格的文档(资料),提交给下一个周期作为继续工作的依据。