- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 10 卷 第3 期 2014 年 3 月
基于大数据的软件工程新思维
1 2
周明辉 郭长国
1北京大学
关键词 :软件工程大数据 软件度量 微过程 社会化开发复杂性 2中国电子设备系统工程公司
版本控制系统、缺陷追踪系 因是可用数据不多,一方面在实 户和贡献者,其软件工程数据时
统、邮件列表和论坛等工具在软 际项目开发中度量和评估并非首 刻都在增长,例如Gnome 每天
件开发活动中得到普及。随着时 要任务,从而很难得到开发人员 有上百个新的缺陷提出,阿帕奇
间的推移,这些工具产生了海量 的重视,也就很难进行有针对性 平均每天有 1000 多封新邮件产
的数据,记录了开发的过程。软 的数据收集 ;另一方面,即使开 生,Mozilla 每天有2 万多条新
件开发活动积累的大数据已经成 展了数据收集活动,被观察者也 的提交。而Github .com 拥有超过
为现实,如何有效收集、组织和 可能因为察觉到观察行为的存在 1000 万个的项目,SourceForge .
运用这些大数据,采用新的视角 而改变其真实的开发行为,这就 net 和GoogleCode 则分别有超过
[5]
和分析方法重新审视软件工程的 是著名的霍桑(Hawthorne) 现象 。 30 万个的项目。互联网上所有开
基本问题,突破原有的认知瓶颈, 因为开发活动的需要,近年 源项目的版本控制系统数据总量
并在新条件下探索新的开发模式 来软件项目广泛使用版本控制系 估计在70TB 的级别。这些数据
和规律,进而改进互联网时代软 统、缺陷追踪系统、邮件列表和 分散在互联网上众多地方,每分
件开发方法并辅助商业决策等成 论坛等工具,大型软件工程的数 每秒都在不断地产生和消亡,因
为大数据背景下软件工程所需的 字轨迹通常被保存起来。人们的 此采集、存储和整理是首要面对
新思维。 每一次代码提交、每一个缺陷报 的问题。
告、对缺陷的每一次评论、每一 因为软件工程面临大数据
软件工程大数据 个邮件及回复等,都被完整地保 的挑战,一种新的研究途径随之
存在软件仓库中,记录了软件开 出现,如同人类考古学,人类祖
[1]
自1968 年 “软件危机” 以 发过程和代码的演变,以及开发 先有意或无意留下的痕迹为考古
来,大规模软件工程常被类比为 者个体和交互的行为。以可自由 学家提供了研究古代文化历史的
困住恐龙的史前焦油坑,其复杂 访问的开源项目为例,仅Gnome 可能,项目过程数据留下了软件
性一直难以控制。软件开发是知 一个开源项目就有超过70 万个 的开发历史轨迹,使得人们能够
[2] [3]
识密集型活动 。个体差异 和 缺陷数据,阿帕奇(Ap ache) 开 从中挖掘有价值的内容,我们称
[4] [6]
社会化生产环境 是影响效率的 源社区拥有超过600 万封邮件, 之为软件的数字考古 。经验软
重要因素,但这些因素又都难以 Mozilla 社区有超过2 亿条的代 件工程(empirical software engi-
度量和理解,导致软件开发过程 码提交日志。许多成功开源项 neering) [7] 、挖掘软件库(mining
难以有效控制。度量难的首要原 目都拥有众多分布于全球的用 softwa
文档评论(0)