软件开发技术和理念层出不穷的今天,如何更快的适应变化的环境,更好的满足客户的需求,已经成为决定从小到大各种规模企业能否活下去的关键。
天下武功唯快不破,在当今大环境中更是如此,微服务,敏捷开发,新的方法论和技术无时无刻不在提醒我们,要更快响应客户需求,更快交付,更短的迭代周期。如何在控制错误率的前提下,最大程度的提高企业的开发效率,便是每个企业重点关注的方面。Devops,微服务架构,分布式管理,种种技术和开发理念告诉我们,要靠工具:便捷的项目管理工具,高效的部署工具,稳定的自动化运维工具。
华为去年年底推出的软件开发云(DevCloud),就是这样的工具。作为一个针对软件开发全生命周期管理的工具,它填补了很多空白,尤其是针对中小企业来说,它是一个实用性相当高的管理工具,下面就让我给大家简单介绍下这个新产品是怎样为企业服务的。
1.1什么是软件开发云
华为软件开发云(DevCloud)是面向开发者提供的云服务,即开即用,随时随地在云端进行项目管理、配置管理、代码检查、流水线、编译、构建、测试、部署、发布等,让开发者快速而又轻松地开启云端开发之旅。同时,它能满足企业的各种开发场景和流程,例如:
完整开发流程:“新建项目 > 新建迭代 > 新建工作项 > 新建代码仓库 > 新建代码检查任务 > 新建编译构建任务 > 测试管理 > 部署管理 > 发布管理”
单独开发流程:“服务 > 配置管理(新建代码仓库) > 代码检查(新建代码检查任务) > 编译构建(新建编译构建任务) > 发布管理”
项目经理常用流程:“创建项目 > 添加项目成员并分配角色 > 创建迭代 > 添加并分配工作项 > 了解项目进展 > 项目完成并发布软件包”
开发团队常用流程:“创建并配置代码仓库 > 领取任务 > 拉取分支 > 编写代码并上传 > 创建代码检查 > 修改代码 > 创建编译构建任务 > 提交测试 > 解决Bug > 合并分支 >完成任务”
测试团队常用流程:“分配测试需求 > 编写测试用例 > 分配并测试用例 > 提交Bug > 验证Bug修改情况 > 完成测试”
1.2 功能体验-项目管理
项目管理(ProjectMan)是面向软件开发团队进行敏捷化项目管理的团队协作服务,具备多项目管理、敏捷迭代管理、需求管理、缺陷跟踪、社交化协作、多层次事务看板、多维度统计报表等功能。
在项目管理首页中可以清晰的看到项目总览(包含项目个数、迭代次数、任务总数、需求总数、缺陷总数以及新增的工作项数量),也可以很方便的找到【新建项目】的入口处。
进入到具体的项目时,可以查看具体项目的情况:
在项目管理中可以进行需求、任务以及缺陷的管理,并且在新建工作想的时候系统提供了预设好的需求或缺陷模板:
1.3 功能体验-配置管理
配置管理服务提供云端代码托管功能,即支持代码仓库创建/克隆、一键式下载/上传代码等功能。用户可以快速导入代码库,在云端生成一个基础工程;用户通过IDE插件将云端工程代码一键下载到本地进行功能开发,开发完毕后将变更的代码一键上传到云端。
用户可点进代码仓库,通过页面对代码仓库进行可视化管理,甚至可以点击进具体的文件,进行轻量级的代码编辑,修改。
1.4 功能体验-代码检查
代码检查主要是实现一些简单的代码质量管理,帮助监测源代码质量,让用户放心编码。目前代码检查支持Java、JavaScript、CSS、HTML、JSP、C#、C/C++、Python等多种语言。代码检查可以精准定位代码缺陷,提供示例和修复建议,支持一键跳转到代码库在线修复;提供华为典型检查规则集,支持用户自定义检查规则集,灵活适配项目需求;一键执行代码检查,批量处理缺陷。
通过代码检查工具,能够将常见的一些代码问题给检测出来,并且提供修改建议,并可针对当前的检查规则集进行自定义编辑:
1.5 功能体验-编译构建
编译、构建部分与代码托管无缝对接,提供云端编译构建服务。编译构建任务一键创建、配置和执行,实现获取代码、静态检查、构建、打包、等活动自动化,实时监控构建状态。
平台支持Java、C、C++、Php、Groovy,python等主流编译构建语言,同时支持Maven、Ant、Grails等主流构建标准。
1.6 功能体验-测试管理
测试管理主要提供了一体化的测试功能,覆盖测试需求、用例管理、测试执行、缺陷管理,能够辅助高效的管理测试活动,保障产品高质量交付。
并且提供各维度的简单的报表统计,支持报表导出或发送邮件的功能,方便管理者随时掌控各个测试任务进展情况:
1.7 功能体验-部署管理
部署管理服务提供一键式自动化部署,过程可视化,支持主流编程语言和技术栈,支持并行部署和流水线无缝集成,实现部署环境标准化和部署过程自动化。满足当前软件开发企业持续交付,快速部署的需求。
1.8 功能体验-发布管理
发布管理(ReleaseMan),是面向软件开发者提供软件发布管理的云服务,提供软件仓库、软件发布、发布包下载、发布包元数据管理等功能,通过安全可靠的软件仓库,实现软件包版本管理,提升发布质量和效率,实现产品的持续发布。
最后,也是这款项目管理工具最吸引人的地方。它的每项功能针对使用者都提供了一定的免费使用空间,例如:项目管理、代码仓库、测试管理等模块均提供5人,500M的免费空间,完全可以满足小型开发团队日常的工作需要。可以说,从各方面来看,华为的软件开发云管理工具,是一个值得让软件开发人员试上一试的项目管理工具。
华为软件开发云地址:https://www.hwclouds.com/devcloud/