“华为软件云”项目落地,群体化软件开发需要什么?

出品:“科学与中国”院士专家巡讲团

制作:中国科普博览

监制:中国科学院部工作局 中国科学院计算机网络信息中心

大学生想开发软件却苦于门槛高,软件企业开发应用程序却没有自己的拳头产品……日前,随着贵阳国家高新区与华为软件技术有限公司签约,“华为软件开发云”项目在高新区落地,这些痛点将迎刃而解。

在过去的软件开发过程中有两个里程碑式的方法,其中一个我们称为形式化的方法,另一个我们称为工程化的方法。前者的源头可以从高级语言说起,高级语言可以被自动地,正确地编译成机器语言予以执行。但是当这种方法运用到一定的程度之后,人们发现其理论极限难以逾越。后者与软件工程概念的提出相关,在此前提下,用有限的时间与有限的投入完成满足质量的产品,需求难以明确。

于是,我们目前发展成为了群体化的方法,它与开源软件模式相关,开源软件开放了创新资源和创新过程,开启了更高效率的协同创新。

群体化软件开发有四个重要的原则——开放、对等、分享、联动。无论是开发者、自由职业者、学生或者企业都可以参与其中,形成一系列软件作品。当企业发现产品有了市场需求之后,就会把它放到企业生产环境里面变为产品,实际上,是公众参与带来了软件开发的大数据。

据不完全统计,目前全球共有数百个类似于Linux,阿帕奇等的共性软件与基础软件的开发社区。在大数据时代,这样的体系要控制与支持生态环境继续向前发展,除了要有一种平台来支持协同分享,还需要两个重要的服务——监控服务与数据分析服务。

概括来说,我们要实施基于大数据的群体化开发服务模型,需要一个软件协同开发服务,一个软件资源分享服务以及一个可信软件监控服务。首先,开发者利用分享服务分析获得它所要的可能最接近的软件,然后在协同平台上面进行有效的开发,来获取用户的反馈。

这种群体化方法大众地、开放地、低成本地、便捷地参与分享与联动,产生了网络大数据。网络大数据将开辟群体化方法的新天地,数据关联分析将展现出人类群体智慧的巨大能量。

“科学与中国”院士专家巡讲活动是中国科学院学部发起,由中科院、中宣部、教育部、科技部、工程院、中国科协共同主办的高层次公益性科普活动。精彩内容关注“科学与中国”官方网站(cs.kepu.cn)。中国科学院学部工作局为网站委托单位,中国科普博览为网络传播合作伙伴,中国科学院计算机网络信息中心提供技术支持。