随着我国加快落实创新驱动发展战略,大众创业、万众创新的新浪潮席卷全国。软件行业的两创更是热火朝天,比如移动互联网的APP淘金热。
作为***科技众创空间得大连云工场科技服务有限公司(以下简称“大连云工场”)致力于智慧城市建设和发展的新型孵化器,为最有激情和技术优势的初创团队提供贴身的“资本、技术、人才、市场”的全方位服务。入驻在云工场中的创业团队业务领域涉及到智慧城市、物联网、大数据等,但这些团队的特点是小而精,人数少的是三到五人,多的是二三十人,三四十人,每个企业都有自己的特长和生存之道,自己有专长的时候,但实际上很难承接大型的项目。云工场在为企业提供创新服务的同时,也做了一个创新的尝试,聚合在孵企业的优势,打造在孵企业的联盟,一起承接大型的项目。
智慧城市项目交付的三大“拦路虎”
2016年年初云工场承接了一个智慧城市的项目,城市应急指挥平台的建设,在大型火灾和应急事件发生的时候,将现场的信息实时的传输到指挥中心,指挥中心系统有大数据的模型,自动生成应急指挥预案,经过确认之后可以发挥到现场指挥员的终端里,进行高效、智能的应急指挥救援。这里面涉及到很多的技术,有无人机的技术、大数据的技术等,小企业是无法承接这个技术,每一项可能是一家企业的擅长,云工场把入驻的在孵企业联合起来,一起完成这个项目。
在此次交付的智慧城市项目中,需要分散在不同领域的多家在孵化企业进行联合开发。虽然这种协同交付可以实现***化的合作,但是在联合交付中,大连云工场以及孵化企业面临了诸多挑战。
痛点一:管理流程与工具不统一,跨地域团队协同难度大
由于此次项目交付中涉及众多企业,而这些企业在管理流程、研发模式、工具平台等方面不统一,这使得协同难度加大,无法发挥联合开发的优势,导致研发效率低和开发质量不尽如人意。
具体来说,这些企业在研发模式上面,敏捷开发、自有开发模式等并存,不同的企业使用不同的工具平台(如svn、git等),这样导致代码的维护和协同管理成本很高。此外,管理与工具的不统一,也导致***实践经验无法共享。
痛点二:客户线下参与项目,难以及时掌握项目进度与风险
通常项目的有效实施得益于企业与客户的有效沟通,但是在大连云工场承接的项目实施中,项目进度来源于一线的人员收集汇总后向客户汇报,这样客户无法及时了解项目的情况,有时还有信息不一致、沟通滞后等,给项目运作带来不必要的成本。
在需求沟通方面,由于不是实时而是周期性沟通,导致需求变化不能及时反馈给项目开发团队。另外由于是线下沟通方式,使得需求变化不能及时跟踪,需求遗漏的问题不可避免。
在项目计划与进度方面,客户无法实现对项目的全生命周期管理,管控风险不可避免。在演示与验收环节,由于需要出差到客户现场进行沟通,结果有些问题无法及时跟踪,也会导致项目的推进带来困扰。
痛点三:软件生命周期相关环节存在亟待解决的问题
现在云计算、大数据、移动互联网等发展让开发者不再是一个孤立的个体,开发者之间的协同需求日益被关注。对于大连云工场这次联合交付中,在需求管理、协同开发、持续集成、质量管控等方面仍然面临很大的挑战。比如版本代码合并需要手工完成,无法支持分布式开发;版本靠手工编译,持续集成时间太长,没有自动化流水线;没有体系化的代码检查工具,测试用例管理工具等等。
华为软件开发云扫除“拦路虎”
对于在项目交付中遇到的问题,大连云工场也试图解决,比如采用开源软件自建开发工具平台,但是一个问题是开源工具繁杂,选型困难;大量人力耗费在维护升级上面,从而减少了专注于业务开发与交付的人力投入。此外,大连云工场也尝试购买第三方商业工具平台,但是这些平台并没有提供云上版本,或者云上版本并没有提供端到端的服务,结果协同效果并不明显。
大连云工场CEO李闯说,后来,了解到华为推出的软件开发云,进行多次交流,有几个方面特别好:
***:面向开发者提供的基于云的服务,即开即用,只要有一台电脑,有网络,就可以使用这个平台。非常的方便、快捷,解决了跨地域的问题,不需要下载。
第二个华为软件开发云立足提供软件开发生命周期全流程支撑,支撑Devops理念提供了一站式的集成开发环境(IDE),涵盖项目管理、配置管理、代码检查、编译、构建、测试、部署、发布,让开发者快速而又轻松地开启云端开发之旅,极大提升开发效率与质量。
第三个是集成了华为经验的模板,例如代码检查规则集,测试用例模板等,可以参照华为的经验提高我们开发的标准和开发水平。当代码开发的过程中,出现问题时,系统会提示如何改或者推荐几个修改方案,对于初级开发者和经验欠缺的开发者非常有帮助。
……
正是由于华为软件开发云的这些优势,很好地帮助大连云工场扫除了智慧城市项目交付过程中的难题。敏捷化项目管理,及时准确掌控项目质量与进度;基于Git的高可用代码托管,实现跨地域协同开发;可视化交付流水线,多语言并行构建;一站式代码检查,及时发现代码质量问题;以用例为核心,提供端到端测试管理能力。而且华为软件开发云的开箱即用特性,无需企业投入人力进行维护升级。
华为软件开发云提供轻量级的DevOps工具服务,支撑企业DevOps落地,实现项目的持续交付。而且华为软件开发云提供的是端到端的服务,支撑软件的全生命周期管理。基于华为的研发实践,华为软件开发云还提供了规范模板、代码检查规则等***实践,企业无需从零开始。
总之,华为软件开发云实现了云上开发、全生命周期管理和DevOps的统一,具备敏捷、安全、社交、智能的四大核心竞争力,帮助开发者实现高效研发、快速响应、高效协同。
此外,最重要的是华为软件开发云和合作伙伴联手打造开放完整的研发生态,合作伙伴可以利用开放API和SDK,实现自身与华为的集成。华为还帮助合作伙伴成立咨询培训、技术支持团队,帮助客户迁移项目,解决技术问题。
最终,大连云工场联合华为软件开发云实现了智慧城市项目的交付效率和质量,项目交付周期由当初的六个月缩短到三个月,版本编译构建时间降低到分钟级,缺陷率下降了20%。客户与研发团队实现了良性活动,项目提前交付,并在客户验收中获得***。