00:00
大家好,我是night killller,欢迎观看我的nightt killers手札视频,该视频是nightt killeros手札电子书的配套视频。在上一期视频我们学习的是get lab项目管理,今天我们学习的内容是多任务并行开发。为什么要做这期视频呢?就是所有创业团队跟中小企业必经之路。其实并行开发并不复杂,但对于创业团队跟中小企业来说,这是一件非常复杂的事情,因为在团队当中没有人参与过这样的开发。那么,能不能从大型企业挖一个人过来就解决问题呢?这要看你挖过来的人,他是什么样的岗位,如果是一个基层工作岗位,那么他是执行者,他也不清楚上面是怎么管理的,也就是说他只见过猪跑,并没有吃过猪肉。其实软件项目管理、并行开发这些就如同一层窗户纸,一捅就破。本期视频学习的内容是多任务并行开发,要实现多任务并行开发需要三点,第一点是任务的分解,第二点是提供配套环境,第三点就是分支的合并。任务分解就是将项目化整为零,拆分成一个一个任务,然后指派到指定的人去执行。
01:30
任德夫的分解需要注意几点,就是要尽可能的结耦,尽量避免交叉,要理清它项目之间的依赖关系,避免出现一些循环。在项目分解当中遇到最大的问题就是项目的耦合跟依赖关系,说白了就是各项功能的前后开发顺序。产品经理在设计产品的时候就可能会影响到任务的分解,例如UI交互跟业务逻辑的冲突,也就是说UI上的两个按钮点击顺序就有可能影响到任务分解。虽然都叫产品经理,但是产品经理也是分几个档次的,分别是战略性产品经理、业务型产品经理和功能型产品经理。而初创团队跟中小企业通常是功能型产品经理为主,功能型产品经理都相对比较年轻,功能性产品经理通常是比较年轻,没有在这个行业当中做过,所以对业务不是很熟悉,所以就无法从宏观的角度去规划产品。
02:30
也就是理清他们之间的业务逻辑关系。同样,架构师我也把它分成了三个层次,分别是企业架构师、业务型架构师跟功能型架构师。跟产品一样,中小企业通常是以功能型架构师为主,产品经理跟架构师的大局观这个观点在我的多维度架构视频当中谈到过,这里我就不读一遍了。
03:11
要实现并行开发,也就是多个任务同时进行,那么我们就需要一套配套的软件跟硬件环境。配套的环境是指开发跟测试环境。我们以生产环境为例,最小化实例,最小化节点,满足运行项目的环境,要渐渐减少环境之间的差异,差异包括了软件环境、硬件环境、网络环境,还有资源的配置以及应用软件的安装配置。差异需要多少环境需要根据我们项目规模而定,通常我们至少有三个环境,分别是开发、测试跟生产。如果项目稍微大一点,我们还会增加一个用户交付测试环境和功能分支。测试环境每个环境又对应了版本库当中的对应分支,通过持续集成跟持续部署,我们只需要向相应的分支当中合并代码,就可以完成环境的部署。例如我们向开发分支当中提交代码,就会自动部署到开发环境。测试分支是不允许提交代码的,只能用于合并。测试分支的部署通常由测试人员手工部署。我们会在持续的集成当中设置一个按钮,点击一下自动部署到测试分支。开发环境跟测试环境两台服务器是放在办公室的,用户交付测试环境跟生产环境是放在云服务器上的,并行开发需要开发人员遵守严格的合并流程。我们会对分支做一些保护,就是有些分支是不允许提交代码的,只允许合并。例如当前屏幕列出的五个分支,只有开发分支是允许提交代码。
04:54
其他分支都不允许直接提交代码,Tag标签是只读的,它只能被创建,不能被修改。最后讲一下功能分支任务分为分解之后就会分配给每个开发人员,开发人员进入议题,然后创建功能分支,将工程分支代码克隆到本地,然后进行开发工作,开发完毕以后进行提交,提交之后功能分支的部署是需要测试员手工部署的,因为开发分支是共用的,如果持续集成跟持续部署进行自动部署以后就会相互覆盖,这是需要开发人员将这个议题的标签改为测试,并且指派给测试人员。测试人员接收到这个任务之后,进入持续议程持续部署菜单,点击部署,当流水线运行完成之后,该功能就被部署到了功能测试服务器。接下来就是紧张的测试工作了,当测试完成之后,如果有bug会打回。
05:54
给开发人员,如果没有bug,就把它变为挂起的状态并行开发。我们会产生很多功能分支,开发完成之后就变成挂起的状态放在那里,当我们需要上线的时候,就通知开发人员将功能分支合并到开发分支,进行一次集成测试。测试过程仍然是发现bug就修复bug,如果测试通过的话,就将开发分支再合并到测试分支,进行第二轮的测试。
06:22
测试分支OK之后就是交付测试环境跟生产环境的升级了。最后总结一下功能分支的操作步骤,首先创建议题分配给指定的开发人员,然后开发人员从开发分支创建功能分支,获取功能分支的代码,然后进行开发提交,最后测试通过以后将功能分支在合并到开发分支,一切都完毕之后关闭题。下一期视频我们会重点演示分支的合并。今天录视频比较晚,所以有点困,经常说话短路。关于并行开发,今天就先讲到这里,有什么问题可以给我在评论区留言。
07:09
喜欢我电子书跟视频的小伙伴请关注我,给我点赞转发,谢谢观看。
我来说两句