# 开发流程
开发流程包含 迭代 和 编码 ,这一章你将学会如何高效地协作和开发。
# 迭代
我们采用敏捷开发的模式,来持续地产出和交付,下面是开发流程:
- 产品经理在Tapd上录入需求,形成一个大的需求库
- 迭代开始前进行 需求评审 和 工时计算
- 项目 leader 拿出一部分需求划分 任务 和 工时 ,作为一个 迭代
- 开发根据接收到
任务
和迭代时间表
开始编码,请按照时间表的顺序处理需求。 - 完成一部分需求自测没问题后可以提交测试
- 完成整体需求后进入测试阶段,同时开发修复测试反馈的 bug
- 交付产品验收
TIP
如果当前任务有前置要求导致你无法继续的时候可以先跳到后面的任务。
# Tapd
Tapd 是一站式敏捷研发协作云平台,我们使用它来进行高效的协作。以下是你需要注意的项:
- 迭代开始后,你的工作台中都会收到相应的任务,当你开始开发时将任务状态改为 研发中
- 研发过程中,在任务详情可以新建子任务来记录 任务完成度 和 工时
- 研发完成后,将任务状态修改为 质控中 ,并且处理人添加测试的同事
- 需求库中有未来的任务,你可以提前熟悉它们
- 当出现 bug 时,修复 bug 也需要修改对应的 bug 状态
有些项目组可能没有测试,需要申请测试资源,由项目 leader 将任务状态修改为质控中,然后提交质控申请单,申请测试资源。
TIP
bug 会出现在你的工作台中,bug 日清是一个好习惯。
# 迭代表
除了 tapd 以外,你还会有一份迭代表,通常是一个 excel 表格。上面会记录工时,迭代时间节点,负责人,任务完成度之类的信息,记得每天更新它。
# 原型图
原型图可以帮助你理解需求,梳理业务逻辑。在开发之前请确认是否理解了原型图,有疑问的地方多跟产品沟通。
# 设计图
设计图是交付产品验收的重要依据,请高保真地完成设计图中的页面。如果开发过程中遇到逻辑问题,保持团队沟通。
# 接口文档
后端的接口文档托管在swagger中。如果你还不熟悉的话,先看看如何使用它们来调试接口。需要对接数据时,可以找后端的同事拿对应文档。
WARNING
在迭代的过程中,你可能会遇到产品原型或者设计图的修改,简单的修改请跟产品确认清楚。改动较大则反馈给项目 leader,再决定调整迭代时间还是延期。
# 编码
通过上面的文档,你已经掌握了如何开始一个迭代,以及找到你需要的文档。下面是实际开发中需要注意的事项。
# Git
使用 Git 作为版本管理工具,代码则托管在内网的gitLab中,这里有一些规则需要注意:
- 创建自己的分支,在自己的分支上进行开发
- dev 分支作为测试环境
- pre 分支作为预生产环境
- master 分支则作为生产环境
- 写好每次提交的 description 是个好习惯
- 需求完成或者 bug 修复后,利用自动化部署工具部署 dev 分支的代码到测试环境进行验证
TIP
目前你只需要学会如何使用已经搭建好的自动化部署就可以了。
# 自动化部署
自动化部署一般使用 docker、jekins 和 Kubernetes来完成 持续集成 和 持续发布。
完成编码后,将 dev 分支通过自动化部署,发布到对应的环境交付测试验证。下面是自动化部署的流程:
登陆你的 jekins 账号
选择你要发布的项目
填写构建参数
选择环境和对应的分支
点击开始构建,查看构建进度和历史