中国软件企业使用开源(OSS)组件现状的经验研究

来源 :北京工业大学 | 被引量 : 0次 | 上传用户:peterqiu123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
经验软件工程是一个新的研究热点,目前已经引起很多人的关注。在过去10几年,经验研究发展非常迅速,而且也逐渐变得成熟起来。目前国内从事这方面研究的人还很少,所以我们首次采用经验研究的方法对中国的软件企业的组件复用情况进行了研究。 在构建新系统时使用预制组件可以达到降低开发成本,缩短投放市场的时间,提高软件质量,遵循业界标准等目的,这种方式越来越受到重视。近来,在系统开发中使用开源(OSS,Open Source Software)组件逐渐流行起来。这种组件有很多优点,例如可以免费获得源代码并且可以修改源代码。事实上,很多OSS组件具有很高的可靠性,高性能性和鲁棒性。另一方面,在系统中复用OSS组件(一般指外部组件)在很多方面也存在一系列的挑战,例如从正确选择组件到将组件成功地集成到系统中,再到测试选择的组件。此外,如果开发的系统要重新发布或者在市场上销售,在选择和集成OSS组件时,选择合适的开源许可证很重要。 以前的很多关于基于OSS组件开发的研究主要是理论研究(特别是围绕如何选择组件)和一些关于业界的案例研究。最近,为了研究基于OSS组件开发的实际状况,一些研究者在欧洲三个国家进行了一项大范围调查研究。在中国,业界越来越多地使用和部署开源软件,特别是软件平台,像Linux,但是,国内关于业界如何高效地复用OSS组件的研究却很少。 为了研究国内软件企业在系统开发中使用OSS组件的状况,我们设计了一项基于问卷的调查。研究的主要内容在三个方面,也就是组件选择,开源许可条款和系统维护,当然我们也研究了软件企业使用OSS组件的动机问题。我们利用合作关系从国内的软件行业协会获得了一份中国软件企业的名单。在调查的最后,我们得到了43家公司反馈的47份已完成的项目的信息。调查结果表明,在定位OSS组件时,使用搜索引擎是最常用的方法。在评估候选的组件时,当地专家的意见结合需求的满意度是最主要的决定因素。为避免法律方面的麻烦,公司在使用OSS组件时所采取的策略是使用没有许可证限制的组件或者将自己的私有代码分别打包。有大约84%的组件需要修改bugs或者更改代码,但做这些修改基本上不依赖于开源社区的支持。另外,尽管很多开发者认为与开源社区建立密切关系对于系统维护很重要,但调查结果表明有很少的公司这样做。最后,关于使用OSS组件的动机问题,调查结果表明降低开发费用是主要的原因,另外OSS组件的高质量也是一个重要原因。
其他文献
通信系统中的安全问题是依靠密码体制来解决的。现代密码体制总是假定算法是公开的,因此密码系统的安全就完全取决于密钥的安全,密钥是密码系统的核心。由于对称加密在效率上的
网络的介入使教育的面貌焕然一新,而网络的开放性、媒体形式的多样性、虚拟、跨地域、资源丰富的特点,使之成为协作学习的天然载体。本文立足于对协作学习发展现状理性思考和深
数据挖掘经过十几年的研究,特别是最近几年,一些基本概念和方法趋于清晰,它的研究也向更深入的方向发展。随着信息技术的发展和互联网的兴起,数据量急剧膨胀,而且数据的形式也多种
在计算机飞速发展的今天,既存计算机系统的比例越来越大,由于需求改变、平台升级以及新技术出现使得我们不得不对这些既存系统进行相应的升级改造以满足新形势要求。随着这种既
文字有其特定的形状并被赋予特定的含义,这种特定的形状称为字形,它是一种可以辨认的抽象图形符号。在计算机出现之后,首要问题是如何把字形转换成计算机能够识别和处理的信息,也
软件工程的出现是为了通过借鉴传统工业的工程化思想和方法,以期提高软件质量和控制软件的成本,解决软件危机。软件工程历经了近四十年的历史,尽管硕果累累,但仍没有从根本上解决
央行会计核算系统(Central Bank Account Booking System以下简写为ABS)是人民银行中心支行及其以上辖区内会计核算集中处理,并通过中国现代化支付系统连接,实现中央银行资金清
设计模式是目前在系统开发方法研究中的一个比较热门的话题,企业网络化制造也是现在制造企业的主要技术发展方向。本文以应用网络化制造技术的中小型企业为研究对象,通过对广西
主流通用微处理器都已支持SIMD体系结构,面向SIMD的自动向量化是提高程序性能的重要手段。而在程序中手工加入指导命令,辅助编译器提升自动向量化能力的编译优化技术也已成为
视频驱动的人脸动画一直是计算机图形学和计算机视觉研究领域中的难点,并成为近年来的研究热点,在视频会议、网络游戏、数字娱乐等诸多方面有着非常广泛的应用。本文重点研究三