相关文章:
体验环境
体验方式:PC端
系统:Windows 64位
浏览器类型:Chrome浏览器
浏览器版本:58.0.3029.110
体验时间:2017.06.25
分析目的
了解华为软件开发云的服务功能,分析其优缺点;
从人工代码检视到自动化代码检查,华为软件开发云如何保证代码质量;
代码检查未来的发展趋势;
产品简介
产品名称:
定位:软件开发云(DevCloud)是集华为研发实践、前沿研发理念、先进研发工具为一体的研发云平台,面向开发者提供研发工具服务,让软件开发简单高效。
产品slogan:集华为近30年研发精华开发神器;
产品关键字:(从各服务网页源码中提取)项目管理服务,云端项目管理,项目外包协作、配置管理,代码托管服务,跨地域协同开发、代码检查服务,代码质量管控,多语言代码检查、编译构建,开发编译构建,混合语言构建平台、部署管理_软件开发云_华为企业云、测试管理服务,测试解决方案,产品用例设计,测试活动管理、发布管理服务,软件仓库,软件快速发布、流水线_软件开发云_华为企业云
用户构成
软件开发云为to B平台,主要面向具有开发业务的技术团队、组织或个人。
用户画像
郭晓迪,某外包公司项目经理一枚,因为团队成员大多刚刚毕业经验不足,开发能力不强,导致项目代码质量不高、bug频出,所以屡次受到领导点名批评;为此,他不得不经常通宵熬夜来检查团队成员代码,并给出修改建议;老郭常常急得焦头烂额,希望有一款自动化代码检视软件能够帮助他解决目前的困惑。
功能分析
1.目前支持的语言类型
可指定需要检查的代码仓库地址、仓库分支和文件路径,目前软件开发云支持的语言类型包括Java、js、html5、css、C++五种语言类型,目前支持的语言类型较少,目前的更新速度还是比较迅速的,可以看到后续会逐渐开放其他主流语言类型,如ruby等;
2.任务显示界面会展现任务相关信息,例如风险指数、未解决问题数、代码行和质量星级等
3.打开具体的任务详情界面,可以看到一系列的多维度报表,报表从风险指数、未解决问题、圈复杂度问题、代码重复率、注释占行比等等一系列维度进行统计,最后给出代码总体的质量星级;该报表可以作为项目经理评判组内成员代码质量和绩效的依据;
4.多维度报表下方,是一些急需处理的问题卡片(包括语法问题、代码规范性问题、安全性问题以及代码健壮性问题)
5.点击问题卡片,会显示问题描述、正确实例、错误示例和修改建议;
6.单击一键跳转到代码库,支持在线编辑代码;
7.在此处修改提交;
8.在问题管理中,我们可以查看本次检查任务的所有问题,可以单独对每个问题进行忽略、查看操作记录以及新增处理意见,也可以批量处理、导出;
9.用户可以通过代码圈复杂度报表评估代码质量风险;
10.用户可以通过代码重复率报表评估代码质量风险;
11.另外系统提供华为典型检查规则集,支撑Web检查、安全检查、架构检查、编码问题检查等场景,内置了五种检查规则,默认以深度检查的规则集来检查代码,另外我们自己可以新增规则集,来配置我们需要检查的规则;
华为软件开发云如何保证代码质量
华为经验集:
华为成立于1987年,是全球领先的信息与通信技术解决方案供应商,在电信运营商、企业、终端和云计算等领域构筑了端到端的解决方案优势。通过这三十年的成长和教训中,华为总结了自己独有的一套研发经验集合,这套经验集提升了内部的研发质量和效率,使得华为产品广受国内外用户的好评。
华为公司从不吝啬自己的好东西与他人分享,华为软件开发云从问世以来,就一直致力于用华为的这一套高标准的研发流程,帮助越来越多的企业摆脱研发痛点;同时华为软件开发云的代码检查服务正是传承了华为30年来的研发经验,通过自动化的检查和分析,帮助团队快速的检视和完善代码质量,另外此经验集也在不断的扩充和完善,为广大的研发团队和程序开发者提供高质量的代码检查服务。
多语言支持:
代码检查服务目前支持业界主流的五种开发语言Java、C++、Html5、css、Javascript,同时也在逐步开放其他受众面较广,用户基数大的开发语言,例如:PHP、ruby、Python、C#等等;
详尽的检查报告:
华为软件开发云提供了详尽的代码检查报告,例如代码星级、风险指数、圈复杂度、代码重复率等,为企业管理者衡量团队成员编码质量提供依据;
多仓库并行检查:
项目多,语言多,害怕检查太慢,怎么办?软件开发云提供了多语言,多任务并行检查,帮助您节省检查的时间,提升开发的效率;
详细的错误指引:
每一份检查报告都会详细指出所有有问题的代码,包括代码位置、代码行数、问题原因,错误示例、正确实例以及修改建议,同时支持云端修改,快捷方便;
代码检查功能发展趋势
通过分析华为软件开发云的代码检查服务,对提升代码质量和开发效率有了更深刻的理解和认识,相信未来,代码检查会更智能、更便捷;个人认为代码检查服务未来需要优化的功能有如下几点:
1.自动化的修改代码:用户检查完毕后,针对已出现的错误增加一键修改功能,只要用户认可开发云提出的修改意见,用户就可以点击一键修改,省却了到代码仓库手动更改的操作;
2.可扩展的检查规则:目前华为软件开发云只提供了华为的经验集合,除此之外,每个公司都有自己的规则和检查集,希望后续代码检查服务可以提供开发接口,各公司能够自行开发适合本公司的检查规则;
3.提供IDE插件:希望代码检查服务能够提供IDE插件,这样用户在编写代码的时候,就可以参考提供的修改建议,让错误和不规范代码被扼杀在摇篮中;
4.自动检查语言类型:目前需要用户手动选择需要检查的语言类型,然后搜索对应的语言类型的文件进行检查,希望未来用户对语言类型不做判断,服务自动判断项目都包含哪些语言类型,然后针对不同语言对应的修改建议;
5.自我学习能力:目前代码检查对逻辑层面的分析不足,希望未来的代码检查功能可以自主学习用户的代码逻辑,通过学习和分析逻辑,给出更完善更高效的反馈和建议;这一点暂时比较难以实现,但愿可以实现此功能;
总结
通过对代码检查服务的评测,总体上来说,开发者的代码质量、管理者的管理效率都有显著的提升;
除语言支持方面有待逐步完善,华为的经验集需要不断扩充之外,如果能够实现以上提出的五点愿望的话,软件开发云必将成为程序员的开发神器!