开发者网络对软件质量影响研究_第1页
开发者网络对软件质量影响研究_第2页
开发者网络对软件质量影响研究_第3页
开发者网络对软件质量影响研究_第4页
开发者网络对软件质量影响研究_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、开发者网络对软件质量影响研究开发者网络对软件质量影响研究博士生:李其锋指导老师:李兵 教授武汉大学提纲提纲n研究背景研究背景n已有工作已有工作n实验步骤实验步骤n实验过程实验过程n实验结论实验结论n验证验证研究背景研究背景n软件开发是一项人工参与的复杂的系统软件开发是一项人工参与的复杂的系统工程工程n人的可靠性直接影响到软件质量人的可靠性直接影响到软件质量n软件的开发、使用大都在网络化环境下软件的开发、使用大都在网络化环境下进行,成为网络化软件,网络化软件开进行,成为网络化软件,网络化软件开发发更加关注人的因素更加关注人的因素4网络化软件特征网络化软件特征n软件即服务,软件即服务,softwa

2、re as a service(SaaS),租用服务,按次付费),租用服务,按次付费n需求:创意提供平台,提出者可能是开发者需求:创意提供平台,提出者可能是开发者n开发:群体智慧,大众开发,众包方式,开发:群体智慧,大众开发,众包方式,wikin发展:市场激励,优胜劣汰,软件趋于个性化发展:市场激励,优胜劣汰,软件趋于个性化n软件泛型:面向服务,网络化形态软件泛型:面向服务,网络化形态5网络环境下软件开发模式与传统软件网络环境下软件开发模式与传统软件开发模式的区别开发模式的区别n大众参与,分布网络广泛大众参与,分布网络广泛n交流主要通过邮件、论坛等交流主要通过邮件、论坛等网络化手段网络化手段n

3、组织虚拟化,结构相对松散组织虚拟化,结构相对松散n开发模式去中心化开发模式去中心化n强调开发者的个人能力和团强调开发者的个人能力和团队合作精神队合作精神n集中在公司开发集中在公司开发n会议集中讨论会议集中讨论n开发者能实时交流开发者能实时交流n有严密的开发计划有严密的开发计划n组织纪律性强组织纪律性强n以项目经理为核心以项目经理为核心n层状的组织方式层状的组织方式6网络化软件开发的基本问题网络化软件开发的基本问题n开发者评价开发者评价n各领域专家专业化开发,网络化制造n如何组织如何组织n专家选择n团队的激励n如何管理如何管理n动态掌握n实时调整已有工作已有工作n已有大量文献对软件缺陷预测、软件

4、质量控制已有大量文献对软件缺陷预测、软件质量控制等问题进行了探讨等问题进行了探讨n基于开发历史信息、过程信息、产品信息等提基于开发历史信息、过程信息、产品信息等提出了一系列预测模型,并取得了较好的预测效出了一系列预测模型,并取得了较好的预测效果果n对软件开发中最重要的因素对软件开发中最重要的因素人的研究开始人的研究开始得到重视得到重视nICSE 2010,lim 1等人指出:忽视了等人指出:忽视了软件的软件的StakeHolder,将他们等同对待,将他们等同对待是导致软件失败的主要原因,是导致软件失败的主要原因,lim构建了构建了StakeNet,用于,用于StakeHolder重要性重要性排

5、序。排序。1 S. L. Lim, D. Quercia, and A. Finkelstein.StakeNet: Using Social Networks to Analyse the Stakeholders of Large-Scale Software Projects. In Proceedings of the IEEE 32nd International Conference on Software Engi-neering, 2010 (in press)1.预备步骤:从需求文档中确定项目的范围,预备步骤:从需求文档中确定项目的范围,初步确定初步确定stakeholder

6、的范围的范围2.找到初始找到初始stakeholder角色角色3.找到找到stakeholder4.建立他人对建立他人对stakeholder推荐信息推荐信息5.建立网络建立网络6.排序排序10stakenet11n利用利用PageRank算法算法排序排序n并用问卷方式进行了并用问卷方式进行了验证验证12我们的研究方法我们的研究方法n从软件的开发过程出发构建开发者网络从软件的开发过程出发构建开发者网络n运用复杂网络理论知识,分析开发者网运用复杂网络理论知识,分析开发者网络,探索开发者在软件开发过程中的协络,探索开发者在软件开发过程中的协作行为、活跃程度、贡献价值,并给予作行为、活跃程度、贡献价

7、值,并给予综合评价,为管理者及其他开发人员的综合评价,为管理者及其他开发人员的开发行为提供决策参考开发行为提供决策参考实验步骤实验步骤实验对象 开源软件开发过程信息 S,SpringFramework开发信息数据提取 开源工具修改、集成、部署 开发过程SVN信息收集,提交时间、作者、对文件的评价以及对应的版本等数据预处理 不合格数据的清理开发者网络构建网络参数分析,模型构建结论及验证模型得到的贡献度排序情况,与实际开发情况的比较网络的顶点、边及其权值的计算网络的度分布、聚集系数计算,模型建立,贡献度计算实验对象:软件开发SVN信息nsubversion(简称svn)是近年来广泛使用的版本管理软

8、件,目前,绝大多数开源软件都使用svn作为代码版本管理软件 nSVN信息包括:作者、操作文件路径及文件名、修改说明、修改时间、版本号数据集介绍数据集介绍n提取了提取了springFramework,2005-2010年之间的开发过程信息年之间的开发过程信息n有效数据有效数据118,884条条n有效开发者有效开发者31名名n涉及版本涉及版本12,031个个根据提取信息构建开发者网络根据提取信息构建开发者网络n一个具体网络可抽象为一个由节点集一个具体网络可抽象为一个由节点集V和边和边集集E组成的图组成的图G(V,E)。n例如:Internet-Router、 WWW、P2P、电子邮件、科研合作网络

9、。软件开发者网络的构成软件开发者网络的构成:开发者:开发者:开发者共同修改同一个文件:开发者共同修改同一个文件:开发者在开发过程中对文件:开发者在开发过程中对文件的操作总次数的操作总次数:开发者共同修改的文件次数:开发者共同修改的文件次数开发者网络的几个参数开发者网络的几个参数n度:度:degreein一般而言,值越大代表开发者越活跃n聚集系数:聚集系数:clusterin值越大代表开发者的核心作用越明显n文件操作次数:文件操作次数:commitin值越大代表该开发者对其他开发者和整个项目的贡献越大聚集系数的计算聚集系数的计算1n节点聚集系数n网络聚集系数nC1=1/3 C2=1nC3=0C4

10、=0nC5=1/3nC=1/31 Watts, D. J. and Strogatz, S. H., Collective dynamics of small-world networks, Nature 393, 440442 (1998).32145带权值的开发者合作网络带权值的开发者合作网络开发者文件操作频数统计开发者文件操作频数统计贡献度贡献度ncontri=na* degreei + b*clusteri +c*commitina=b=c=1/3开发者贡献度计算开发者贡献度计算按贡献度大小排序验证验证n结果表明,该模型所确定的核心开发者结果表明,该模型所确定的核心开发者及各开发者对项

11、目的贡献程度与该软件及各开发者对项目的贡献程度与该软件实际软件开发情况是一致的实际软件开发情况是一致的SpringFramework 项目信息项目信息意义意义n开发者贡献度开发者贡献度预测模型预测模型有效揭示并评价了开发有效揭示并评价了开发者在项目开发中的作用,为项目管理者动态掌者在项目开发中的作用,为项目管理者动态掌握开发人员信息,合理配置人力资源,采用合握开发人员信息,合理配置人力资源,采用合适组织方式,提高适组织方式,提高软件质量提供了决策参考软件质量提供了决策参考n软件开发中的人力资源问题,实质通过研究开软件开发中的人力资源问题,实质通过研究开发者网络,分析开发者的活跃度,参与度,团发者网络,分析开发者的活跃度,参与度,团结精神,找出核心人物与核心团队结精神,找出核心人物与

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论