30人的产研团队如何高效协同?

简介: 工具选型及使用建议对于中小企业,基本都不会自己搭建服务器和机房进行部署,而是选择各大云平台,选择一款SaaS项目管理工具可以极大的降低运维成本。

作者介绍:以诺行CTO 刘自强 团队使用云效3年

团队协作需求

杭州以诺行汽车科技股份有限公司(以下简称“以诺行”)成立于2016年8月,位于杭州市余杭区文一西路科技高地海创科技中心。以诺行是一家集研发、销售及服务为一体的科技型企业,主要核心业务包括汽车软件、 汽车喷漆及汽车配件,致力于用精湛的技术和超前的互联网思维打造汽车维修平台全新格局。

以诺行目前有以下软件产品

  • 基于SaaS的汽修管理ERP,功能包含进销存、维修流程管理、账务、CRM等。基于Web、Android、IOS、微信H5、微信小程序等操作终端。
  • 以诺行喷涂全流程软件,基于Web、Android、IOS等操作终端。
  • 以诺行询报价软件,基于Web、微信H5、微信小程序等操作终端。
  • OA系统,基于钉钉小程序。
  • 以及其它正在规划开发的产品。

所有软件产品由以诺行软件部门进行开发维护。整个部门分为产品、设计、开发、测试和实施岗位,共30人左右。

因为软件产品线较多,各职能部门人手无法做到每条产品线专人负责,所以并没有采用项目制,而是由项目经理和产品经理根据需求优先级与开发资源情况安排开发迭代。因此每个迭代安排人手时,需要清楚的了解每个职能岗位的工作状态,开发过程中也要及时跟进开发进度,及早识别风险。

出于以上原因,我们需要选择或者自己搭建一套项目管理和持续集成系统,并且需要考虑以下因素。

  • 基本的项目管理功能和可配置的任务工作流
  • 清晰易用的工作台和工作流通知
  • 资源存储与共享
  • 文档管理
  • 代码托管
  • 持续集成流水线,并且流水线与阿里云产品对接友好
  • 使用成本

协作选型过程

最初,我们团队在自己的ECS服务器上搭建了开源的项目管理和持续集成工具,并经过配置实现了基本的需求。但是在使用一段时间后决定选择一款在线SaaS性质的项目管理工具,原因如下

1.管理效率低下

a.很多传统项目管理工具并没有非常直观的统计视图,需要将任务明细导出Excel再进行透视或者公式图表分析,无论是日常管理还是向公司提交汇报都很不方便。

b.缺少直观的日常统计,也会导致安排后续任务进度时得不到充分的数据支持,以至于进度安排过紧或过松,导致因赶工而产出质量下降或研发资源浪费。

2.运维成本高

a.开源产品部署后不易升级,大版本升级容易产生兼容性问题,并且可能需要重新调整配置。

b.资源存储在ECS上,对存储资源消耗较大,不过这个问题可以使用NAS服务缓解。

c.若日常使用时有较多截图,文档的读写操作,ECS带宽占用较大,容易导致ECS上部署的服务争抢带宽资源,而带宽成本较高。

d.后端技术转型,后端服务不再部署在ECS上,而是部署到了阿里云SAE(Serverless App Engine)产品,不再需要ECS。对于中小企业来讲,单独为项目管理工具保留一台ECS比较浪费资源。

我们调研了市面上比较流行的SaaS项目管理工具,部分功能满足我们的需求,但是普遍有以下的制约因素。

  • 与阿里云产品无法直接对接。我们前端部署在OSS,后端部署在SAE,虽然云产品提供了各种API可以进行对接,也提供了一些常用持续集成平台的插件。但是对接上仍然比较复杂,甚至需要我们自己开发一定的中间件进行对接。
  • 额外维护一套账号体系
  • 收费较高

在调研试用各种项目管理工具期间,偶然在阿里云官网上看到了云效产品的推广,并且小微企业有一年期限的30人内免费。而云效可以基于阿里云RAM账号登录,并且对阿里云产品提供无缝对接,于是便开通试用了。

云效使用效果

由于大部分研发人员需要对各种云产品进行查看管理,所以已经开通了各自的RAM账号。因此使用RAM账号对我们来讲并不是额外的负担,对于不使用RAM账号的企业来讲,云效也支持使用钉钉账号进行绑定。

为每一个员工建立阿里云RAM账号,并在云效中配置好部门和角色就可以开始使用了。

项目管理

通过配置合理的项目管理功能,可以完成以下工作流程

  • 项目经理的开发迭代管理
  • 产品经理的需求生命周期管理
  • 开发人员的开发任务管理
  • 测试人员的测试计划管理
  • 测试阶段的缺陷生命周期管理
  • 实施和客户部门的反馈管理

其中涉及到了以下功能:

版本管理/迭代

版本管理和迭代功能提供了便捷的手段来管理各种任务、计划和资源。管理者借此可以清晰的查看开发迭代进展,识别进度风险。产品部门也可以预先对任务进行分类、评审和排期。

image.png

需求

需求模块提供了基本的需求管理功能,并支持自定义各种类型的字段、状态和工作流。

任务中可以关联各种文件任务资源和知识库条目作为附件,以更加丰富的媒体方式呈现需求内容。

进入开发的需求可以创建对应的子任务分配给研发人员,研发人员也可以快捷地打开关联需求查看设计细节。

image.png

测试计划

在开发迭代之前或开发过程中,测试人员可以使用测试计划模块来管理测试用例,也可以将研发人员特地声明的风险加入的测试计划。借此可以有效的追踪每一个迭代的测试情况,避免有遗漏,也可以在复盘时进行回顾分析。

任务

项目管理中可以根据现状来自定义各种基于工作流的任务,比如开发任务。通过配置好的状态和工作流,帮助各职能人员识别关注自己的任务,避免遗漏延期。

image.png

image.png

缺陷

缺陷由测试人员发起,经过研发的修复,再由测试人员验证关闭。借此闭环来管理研发中或者线上突发的缺陷。

image.png

测试人员创建缺陷后,填写优先级和备注后指派给对应开发,也可以挂接到对应需求上面。

在动态栏中相关人员可以进行便捷的沟通。缺陷修复后标记为已解决并自动指派回测试人员进行验证,验证修复后关闭即可。

知识库

知识库是文档管理中心,可以依托于具体项目,也可以独立项目之外。提供了协同编辑能力,并具备细粒度的权限管理。

image.png

代码托管

Codeup代码托管服务提供了完整的git仓库基本的功能,包括可视化的权限管理,代码合并,分支管理,Webhook等。

此外还提供了代码安全检测功能,比如代码中的明文密码,高风险的依赖包等, 比如这几天爆出来的log4j 2.14的高危漏洞。

报表功能也可以直观的追溯代码的提交评审行为,对于代码质量管理很有帮助。
值得一提的是,在代码库中可以一键开启WebIDE签出代码进行开发。在远程办公,紧急处理问题时很有帮助。

image.png

文件/分享/日程等

项目管理还提供了很多其它模块来促进项目人员间的共享和协作能力。

工作台

工作台中可以方便的追溯自己相关的工作,在日常工作中,每个岗位只需专注于“我执行的”页签内的任务并保证按时完成即可。

任务会根据截止时间和优先级进行分组排序,可以有效的帮助个人优先处理筛选出更加重要紧急的任务。

工作台同时提供了非常便捷的创建个人任务的功能,这类任务不依托于项目,可以很大程度上替代个人日常的TODO list。

"我执行的","我参与的"和"我创建的"页签基本上可以覆盖大部分对自己相关任务的管理场景,避免频繁的到具体项目的任务视图中查询。

image.png

持续交付

云效流水线功能提供了从代码直到部署的流程配置。原生支持与代码仓库Codeup的对接,并且可以方便的配置各种Webhook触发器。

以下是我们软件产品的架构图:

image.png

对于后端应用,配置好Dockerfile后,流水线根据Dockerfile执行构建并且把制品上传到阿里云容器镜像服务产品中。在需要部署时,则把镜像推送给对应的SAE应用执行灰度部署。这些都是在流水线中原生支持的。

对于前端资源,流水线中调用webpack打包脚本生成制品,在需要部署时,推送到OSS服务的对应bucket即可。

以下是流水线的列表页面,可以自定义表头来展示运维人员关心的字段。

image.png

image.png

流水线配置中也有丰富的触发器可以支持手动/代码库行为/流水线联动触发等。

统计

云效提供了丰富的统计功能,可以从各维度汇总数据。无论是内部管理还是对公司高层汇报,都可以方便的导出相关统计。

截止到当前,我们已有十多个应用产品线通过云效进行管理,其中核心应用已产生过万个任务,大部分都可以按时完成。

image.png

给中小企业的建议

现在对于中小企业,基本都不会自己搭建服务器和机房进行部署,而是选择各大云平台,选择一款SaaS项目管理工具可以极大的降低运维成本。

而持续集成,选择一款可以与自己选择的云产品方便对接的平台也是非常重要的,尤其是现今Serverless应用越来越广泛,持续集成平台担负的任务也越来越重,需要谨慎选择。

对于核心功能托管在阿里云产品(如ECS, OSS, NAS, SAE, ADAS等)的企业,云效流水线可以提供原生的对接支持,也会在第一时间适配各云产品的新特性,可以让运维人员专注于对部署流程配置。

项目管理方面,云效提供了易用的项目管理,知识库,统计等功能,可以覆盖大部分的项目管理场景。

最后价格方面,现在云效常用基础功能免费开放,且不对使用人数做限制,对于中小企业节约成本非常友好。


以上内容是以诺行在实施使用云效后的效果,对于中小企业,基本都不会自己搭建服务器和机房进行部署,而是选择各大云平台,选择一款SaaS项目管理工具可以极大的降低运维成本。感谢以诺行CTO 刘自强及团队对云效的信任和肯定,希望云效可以陪伴他们不断进步。

如果你也有故事要分享,请留言联系我们,一起打造10倍效能提升案例集

欢迎大家使用云效,云原生时代新DevOps平台,通过云原生新技术和研发新模式,大幅提升研发效率。现云效公共云基础版不限人数0元使用。

点击下方链接立即体验云效DevOps全家桶!

https://help.aliyun.com/document_detail/153739.html?channel=case

lQLPDhsGzb2HRiHNBDjNB4CwPRTOVsFHvw0B29IABwA0AA_1920_1080.png

相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
相关文章
|
2月前
|
存储 监控 安全
远程协作利器:项目管理软件助力团队高效合作
在后疫情时代,远程办公成为许多项目团队的选择。面对协作挑战,如设定目标、沟通和管理分布式团队,项目经理可借助项目管理软件提升效率。这类软件支持**项目规划**,如使用甘特图制定任务和依赖关系;实现**工时管理**,监控项目进度和预算;并促进**团队协作**,通过集成工具保持沟通和文档同步。例如,Feeds、Forums和Documents功能帮助保持团队同步和知识共享。
12 0
|
4月前
|
运维 安全 Devops
DevSecOps:安全与协作的完美融合
在现代软件开发中,DevOps(开发运维)已经成为了标配。然而,随着网络安全漏洞的不断暴露,安全问题也成为了开发流程中不可忽视的一环。为此,越来越多的组织开始将安全集成到DevOps中,形成了一个新的概念:DevSecOps。本文将介绍DevSecOps的基本概念和实践方法。
|
敏捷开发
敏捷研发体系基础
敏捷研发体系基础
197 0
敏捷研发体系基础
|
敏捷开发 前端开发 项目管理
在YesDev研发协同工具,项目协作 All In One
值得注意的是,YesDev中所定义和提倡的项目,是指在一定时间周期内完成的有限需求、任务和问题的集合,对应敏捷开发中的一次迭代或Scrumn的一个Sprint。
|
敏捷开发 搜索推荐 架构师
高效率互联网产品运营中心组织结构规划
内容服务型互联网公司往往把产品团队和运营团队放到一起,组成一个产品运营中心,中心设一个主任(国企常用)/总经理(私企常用)来主导整个部门管理。为了提高产品产出速度和品质,产品运营的跟进速度和推广力度,保证产品运营团队的紧密高效配合,以下设计了一个部门人员结构及配合分工的规划图。
1572 0
|
存储 监控 API
如何提高团队的研发效率?
  研发效率是在现代企业都关注的,注意是因为靠谱的工程师是有限的,而且软件工程师的人力成本较高,时间成本更高。在大多数情况下,软件工程是一个团队活动,通过协作实现突破。好的想法从不匮乏,但高速执行却不那么容易。高效团队会习惯于更高的标准。当研发速度停滞时,人们会创造性地寻找重建高速产出的方法,但是如果长时间停滞,也会造成人员的流失。   如何提升研发效率呢?或者说,研发速度是否可控呢?   速度是位移和时间的函数,很多时候,位移方向的目标更容易被忽视。然而,项目失败的最常见原因是团队构建了错误的东西。“绕树三匝,何枝可依。”,实际上,方向错了,停止就是进步。
486 0
|
API
打造高效交付团队心得
  我 15 年前创办第一家公司,到现在我还是不怎么管理。我怀疑很少有人能做到这一点。在我的公司 AngelList,我们需要的是一个自我管理的团队,并产出代码。   我们的做法如下。   保持小规模团队。所有的人都是干活的,没有指挥家。绝对没有中层管理人员,所有业务拓展都是通过 API 来完成。   外包一切非核心工作,克制住赚取最后一个铜板的冲动,老板也要做客户服务工作。
218 0
|
运维 数据可视化 程序员
低代码软件交付的五大优势
从项目角度出发低代码比传统软件交付有五大优势。具体包括:POC优势、SOW优势、交付模式优势、可复用优势和交付周期优势。
低代码软件交付的五大优势
|
项目管理 持续交付 前端开发
为什么你的高效交付,却没有好的业务成果?
11月中旬,作者在 TOP 100 案例和人人都是产品经理的两次大会上分别进行了两场关于价值交付的分享,结合分享后的反馈焦点,立足业务整体交付的价值最大化,特产此文。
1970 0
为什么你的高效交付,却没有好的业务成果?