电子公文传输系统 ——团队作业(二)需求分析
基础技能
一、git协作方式
(一)git的工作流
目前项目使用的是git来进行项目管理(需要熟悉git的工作流)、git的团队协作流程
(二)git常用的分支
-
Master分支
这个分支包含最近发布到生产环境的代码,最近发布的Release, 这个分支只能从其他分支合并,不能在这个分支直接修改 -
Develop分支
这个分支是我们的主开发分支,包含所有要发布到下一个Release的代码,这个主要合并于其他分支,比如Feature分支 -
Feature分支
这个分支主要是用来开发一个新的功能,一旦开发完成,我们合并回Develop分支,并进入下一个Release -
Release分支
当你需要发布一个新Release的时候,我们基于Develop分支创建一个Release分支,完成Release后,我们合并到Master和Develop分支 -
Hotfix分支
当我们在Production发现新的Bug时候,我们需要创建一个Hotfix, 完成Hotfix后,我们合并回Master和Develop分支,所以Hotfix的改动会进入下一个Release
(三)git如何工作
初始分支
所有在Master分支上的Commit应该对应到具体的Tag
Feature分支
分支名 feature/*
Feature分支功能开发完成后,必须合并回Develop分支, 合并完分支后一般会删点这个Feature分支,但是我们也可以保留
Release分支
分支名 release/*
Release分支基于Develop分支创建,打完Release分之后,我们可以在这个Release分支上测试,修改Bug等。同时,其它开发人员可以基于开发新的Feature (记住:一旦打了Release分支之后不要从Develop分支上合并新的改动到Release分支)
发布Release分支时,合并Release到Master和Develop, 同时在Master分支上打个Tag记住Release版本号,然后可以删除Release分支了。
维护分支 Hotfix
分支名 hotfix/*
hotfix分支基于Master分支创建,开发完后需要合并回Master和Develop分支,同时在Master上打一个tag
(四)个人git的代码提交
- 首先,需要先将dev的代码merge dev到feature
- 再通过feature进行commit
- 并push本地代码到仓库
- 在gitlab的管理页面进行代码合并的申请
- 等待团队成员review代码,进行合并
(五)代码审查
由仓库管理员进行统筹安排,审查各个issue的完成情况,各个代码的测试使用情况。
(六)代码合并
具有主要开发者权限,可以进行最后的合并操作,feature的分支合并到dev分支,dev分支合并到release或master分支。
需要添加标签、里程碑!方便后面的成员管理。
二、团队任务计划
(一)执行计划
issue使用
issue的作用表现在方方面面,它可以是用于记录一些公告、制定OKR、项目讨论的内容、发布任务(日常开发、探究性、文档、部署)、重要的技术积累、一些想法。
目前团队中主要用于:
- OKR-制定周目标
- 发布任务(由团队成员认领)
- 发布公告-记录一些关键的技术点
(二)里程碑
这也是OKR的一部分,用于标记目前代码提交、任务发布过程中所属阶段,确定目前处于什么阶段
(三)标签/标记
目前团队中主要用于:
- 标记优先级(优先级1、2、3)
- 标记参与的成员(可以作为每个月查看成员认领了什么任务,完成了什么)
- 标记任务状态(正在做、待认领、已完成,方便认领任务)
- 标记任务类型(文档、部署、公告)
采访学长学姐
Q:项目开始前要做什么?
A:
1. 做好需求分析,不能流于表面,要去深层理解用户的真实需求。
2. 提前做好项目时间规划,可以先定下一些简单的小目标,不一定要做出完整的框架,可以根据实现过程慢慢完善。
3. 查找资料,在心中对项目有一个大致想法。
Q:项目实现过程中需要注意什么?
A :
1. 组长要起到监督和督促作用,定期布置任务,督促完成任务。
2. 组员要自己完成任务,积极与团队讨论,集思广益,不是说个人的任务就一定要个人完成。
3. 每一阶段任务所有组员都要齐心协力,组内统一意见,如果有不同的想法就得票选出最优解。
4. 要长期坚持,完成每一阶段的目标。
需求分析
参考蓝墨云班课中资源,撰写本项目的《需求规格说明书》,并提交至码云。
在随笔中附《需求规格说明书》的Git链接(markdown文件及pdf文件,tip:pdf可由markdown转pdf工具得到)。
链接如下:
https://gitee.com/Shady545/gongwen/blob/547aa434c6d6b4cfe9494b277c8e398aaece3fc9/需求规格说明书.pdf
撰写《需求规格说明书》的工作流程、组员分工和组员工作量比例
工作流程
- 小组讨论,确定基本方向
- 组长将任务切分为六部分,小组成员认领
- 相关负责同学汇总和提交
组员分工
- 徐源:统筹安排和负责验收标准部分
- 杨淑钰:负责用户场景部分和功能描述部分
- 孙菲遥:负责管理团队公众号,汇总小组成员介绍博客。负责引言部分
- 蒋进:负责管理团队git仓库,负责界面设想部分
- 李兴昕:负责管理团队git仓库和学习相关知识,负责撰写基础技能部分
- 石志涛:负责功能实现部分
工作量比例
基本一致