一,软件工程
1,业务调研(产品经理主导, 业务角度)
- 组织结构图:部门+岗位
- 业务流程图
- 业务表单
- 业务需求
2,需求分析(架构师主导,技术角度)
- 用例图
- 领域类图
- 非功能需求
- 物理部署需求
- 实施需求
- 易用性需求
- 性能需求
- 可靠性需求
3,概要设计(架构师)
- 逻辑架构图
- 运行架构图
- 物理架构图
4,详细设计(下推到项目组里的每个人)
- 数据架构图
- 接口设计
- 开发架构图
- 系统运行流程图
- 测试用例设计
- 系统日志设计
- 系统监控设计
5,设计评审
6,制定项目管理计划(每个人给出排期计划)
- 活动图
- 网络图
- 进度计划(甘特图)
- 资源配置
7,工程初始化
- 本地开发环境搭建
- 资源申请:机器、数据库
- 数据库初始化
- 代码初始化和上传
8,版本控制
9,编码开发
10,系统测试
- 单元测试
- 冒烟测试
- 静态代码扫描
- 代码审查
- 集成测试
- 系统测试
- 验收测试
11,系统上线
12,系统日志
13,系统监控
二,项目管理
1,项目管理
- 项目管理计划
- 项目执行和监控
- 风险管理
- 变更管理
- 质量管理(配置管理+测试管理+缺陷管理)
2,瀑布式 vs 敏捷式
- 一个项目从0到1,需求变更不大,采用瀑布式
- 一个项目1到10,需求持续变化,采用敏捷式