华为软件开发使用分享:秒杀现有研发团队协作工具

网友投稿 776 2022-05-30

一、研发痛点

在传统的开发模式下,研发过程分为需求阶段、设计阶段、开发阶段、测试阶段和维护阶段, 整个过程存在很多痛点。

1、人员成本高

每个阶段都需要有对应人员,这些人员通常属于不同部门,人员分工较细,数量较多。

2、迭代速度慢

完成一个软件研发过程,需要至少5个阶段,阶段之间是串行关系,环环相扣。一个阶段完成了,才能进入下一个阶段。阶段和阶段之间有大量的评审和文档生成,非常耗时。造成整个研发过程持续时间非常长,通常需要几个月的时间才能完成一个迭代。

3、开发质量管控难

由于整个研发过程中,前一个阶段是后一个阶段的输入,一旦前一个阶段出现问题,就会导致后一个阶段出现问题。并且,最终的产品要到最后一个阶段才能看到。发现问题的时候,通常已经到了最后阶段,造成修改问题的代价非常大。为了管控质量,不得不依赖于大量的评审和文档,难度非常大。

二、使用软开云的先决条件

建立一个敏捷开发组织是使用华为软件开发云的先决条件。

1、传统研发组织

传统研发组织通常如下所示:

华为软件开发云使用分享:秒杀现有研发团队协作工具

传统研发组织是对应传统研发过程而产生的组织架构,职能化特征明显。部门之间极有可能存在部门墙。打破部门墙要产生大量的沟通和协调工作。这需要一名强有力的项目经理才能完成这一挑战。

2、敏捷开发组织

敏捷开发组织是一个全功能的团队,通常如下所示:

我们会按照功能特性组建<10人的全功能团队,俗称“2披萨团队“,可以实现业务快速开发、决策与上线,角色的作用如下:

PO:Product Owner,负责产品规划、设计、分析

运营:负责产品运营

UE:UCD工程师,负责用户研究、交互设计、美工、视觉

SL:特性经理Service Leader,对应敏捷模式Scrum Master,带领团队进行开发

TL:技术leader,对应于系统工程师SE,负责架构、系统设计

开发:负责代码实现

测试:负责测试验证

运维:负责部署、发布、运维、监控

三、软开云解决了什么问题

华为软件开发云实际上解决了敏捷开发过程的管控问题,一个典型的敏捷开发过程可分为如下阶段:

1、需求规划

这个阶段由PO负责,会把项目需求逐层分解:Epic->Feature->Story,软开云提供了很好的工具:

从Story分解到Task(开发任务),需要SL介入,每个开发任务对应哪个Story,关系一目了然。

2、代码开发

华为软件开发云提供了代码托管和代码检查服务:

代码托管

代码托管服务支持三种新建方式:普通新建、按模板新建和导入外部仓库。如果担心代码安全,可以把代码放到华为云以外的服务器,然后通过“导入外部仓库”方式导入,但是服务器必须通过外网ip地址能够访问,同时不支持代码提交时自动触发代码检查。

代码检查

支持多种语言的代码检查,基本上常见的开发语言如Java、C++、C#、JavaScript、Python、Go等都已囊括。同时内置了非常全的代码规则集。取代Sonar、Findbugs等工具完全无压力,同时跟流水线集成得很好。

3、编译构建

支持从华为软开云、GitHub和通用Git取代码进行编译构建。同时支持22种构建工具,包括Maven、Gradle、Ant、Npm等常用工具。

4、软件测试

提供测试管理、移动应用测试、接口自动化测试和性能测试,值得肯定的是,接口自动化测试能够通过流水线跟代码开发任务、编译构建任务等其他任务很方便的集成到一起,对实现CI/CD意义重大。不足之处是不支持UI自动化测试。

5、部署发布

支持4种部署模板,包括:SpringBoot应用部署、Tomcat应用部署、Docker应用部署(Linux)和容器应用部署(CCE/CCI)。

通过流水线,我们可把代码托管、代码检查、编译构建、软件测试和部署发布任务集成起来,实现代码提交以后的一系列自动化操作,最终实现CI/CD,能够极大的提升我们的研发效率。

四、结论

华为软件开发云作为一种敏捷开发过程的管控工具,对我们践行敏捷开发提供了很大的帮助。通过流水线等一系列工具,我们能非常容易和快速地实现CI/CD,而实现CI/CD是实现敏捷开发的必要条件。

然而,华为软件开发云毕竟是一种工具,如果不能深入理解敏捷开发的理念,也没有对应的敏捷型开发团队来使用该工具,那么使用华为软件开发云的效果将会事倍功半。

敏捷开发 软件开发平台 DevCloud

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《计算机视觉算法:基于OpenCV的计算机应用开发》 —3.4.4 数学函数
下一篇:教师节送什么老师最开心?程序员三招解决家长送礼难题!
相关文章