聊一聊大型嵌入式软件开发的高效管理模式之二:软件协作开发管理平台

  虽然敏捷开发的模式最早是应用于快速迭代、需求变更频繁的互联网产品开发。但是其中有很多先进的思想和方法,也同样可以在大型的嵌入式软件开发中借鉴。优先我认为需要要高效地跟踪每位软件开发工程师的进度,就使用使用一些软件协作开发工具。付费的有JIRA系统,免费的可以使用PingCode系统。软件协议系统可以根据story,bug fix,feature等目标创建任务,可以设置优先级,设置目标完成时间、设置负责人,可以设置报告人,设置对应的关注人员等等。将软件开发的分阶段细分成各个任务,能让工程师在开发时目标明确,而TL也方便对各位工程师的进度进行跟踪和评估。使用协议开发工具有如下好处(以下以JIRA为例):

  1. 评估组员的工作进度和压力。JIRA可以通过筛选器和饼图的方式,快速统计出当前个人组员的任务开发数量。如果有出现部分人员任务太多,则需要及时调整权重,如果某些任务pending了太久或者是逾期了则需要TL及时深入了解原因。

                  

 

  2. 工作流。一般对于一个软件功能的开发,都会有一些固定的步骤,如assign, design, coding, review, merge, hang up, finish等环节。对于一些个人开发或者小型开发可能不会有这么讲究,上来就可以coding,完了就push代码。这在企业开发、大型项目开发时是不允许的,是容易产生严重问题的。因此需要团队成员都保持固定的工程流程来完成任务。不能够一段code没有经过review,也没有经过test,就直接merge到主干上。而JIRA是可以针对不同的任务设置不同的工作流的。所有JIRA成员必须按照工作流的规定进行,例如任务没有经过review,那工作流就不能走到merge那一步。

  3. 信息交互。采用WEB形式的协作工具,可以支持多人在线操作。对于一些数据整合和分享、设计思路描述、评论和备注等功能,都能快速在上面完成。这样方式比双方通过传输word文档,excel文档或者是放在共享文件夹要高效、整洁得多。

  4. 自定义数据处理。对于这些协助工作,其原理都是后台在管理和整合一些csv表格数据。我们通过人工地导出这些数据,再结合PYTHON等工具写一些数据分析的脚步,可以实现更进阶的数据图表,例如burn-down chart,time span等。

                  

  此外,不同的软件协作管理工具可能还有一些特色功能。例如PINGCODE自带知识库功能,JIRA可以强大的筛选器功能、可以支持BUG跟踪等。选择一款高效好用的协议管理工具,能对大型的软件开发管理起到重要的管理、规划和总结作用。

 

posted @ 2022-02-20 16:36  冷剑白狐77  阅读(409)  评论(0编辑  收藏  举报