导图社区 软件开发与流程规范
这是一篇关于软件开发与流程规范的思维导图。软件研发与项目流程规范,分为项目,系统,需求,流程,部署,迭代内容点总结。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
软件研发与项目流程规范
1. 项目
使用路径
顺丰云-云产品-开发与运维-科技项目管理
定义
是传统意义的在顺丰科技需要立项、结项、中间需要里程碑结果的项目,最终需要交付
项目查询
顺丰项目
立项结项
投入产出
项目目标
项目交付
交付系统
有-开发
无-赋能
更新已有系统
开发全新系统
项目全景
项目有周期
项目:系统=N:N
2.系统
顺丰云-云产品-开发与运维-职责矩阵
系统不一定是一个完整的产品,可能只是产品的一部分,系统背后对应了多种资源
系统列表
查询系统
系统状态
已上线
未上线
下线中
已下线
系统详情
系统级别
系统成员
系统资源
基础架构资源
云主机
锂金属
容器资源
存储资源
数据库
Redis
Kafka
网关
研发协同资源
Git(bitbucket)
研发流水线
Confluence
Jenkins
Sonar
产品与系统全景
产品:系统=1:N
一个系统智能用于一个产品,一个产品可能包括多个系统
系统可能是微服务、后端、前端、产品
3. 需求
顺丰云-云产品-开发与运维-用户需求/产品协同
需求分层
史诗EPIC(专题)
特性Feature(匹配用户需求)
故事Story(匹配系统需求)
任务Task(研发任务)
用户需求
提出人
业务方(选择用户需求)
业务方提出需求
替用户创建需求
科技的人员替业务方提出需求
科技方(选择产品协同)
产品人员
科技产品规划需求
技术人员
技术类需求
颗粒度
建议2周以内
系统需求
来源
拆分用户需求
按工作流程
按简单/复杂
延迟性优化
按主要工作
按操作
按不同类型的数据切分
符合INVEST要求
独立
可沟通
有价值
足够小
可测试
研发任务实现系统需求
拆分系统需求
分配给个人
按前后端区别
无测试中状态
需求全景
必须有用户需求
用户需求拆分为1-N个系统需求
每个系统需求对应一个系统
4.迭代
迭代概念
敏捷时间盒
一般为两周
固定周期
迭代规划
规划需求
需求估算
按需发布
一个迭代
step1:迭代计划会
规划需求到迭代
敏捷估算,集中评点
认领跟配,前后端/测试
标记开发设计与演示
step2:需求澄清
step3:开发设计
业务逻辑的流程
代码设计
接口定义
任务拆分
step4:测试评审
需求的测试思路
需求的测试用例
补充测试场景
每日站会
当日代码提交/改动
迭代整体情况(按需)
step5:产品验收
step6:迭代回顾会
迭代数据展示
迭代做的好的方面
迭代做的不好的方面
需要做的举措
回顾此前的举措落地
迭代全景
版本
系统规划
周期可以不固定
有紧急版本
迭代
研发规划
周期固定
5. 部署
部署研发流水线
日常流水线
step1:构建
合并发布分支
单元测试
构建包
构建镜像
step2:日常部署
制品
部署制品
step3:测试前置
静态扫码
安全测试
组件扫描
质量门禁
架构合规
人工验证
自动化测试
step3:测试验证
发布流水线step1-3
发布流水线
step4:生产部署
beta部署
生产部署
beta回滚
step5:合基线
合并主分支
回滚
基于容器
部署全景
分支对应系统
子主题
6. 流程
step1:用户需求提出
业务方
产品经理
研发人员
step2:用户需求拆分
将用户需求拆分为N个系统需求
step3:系统需求规划
规划迭代
规划版本
版本V1->版本V2->...
贯穿全流程:流水线任务
拉取分支
关联需求