Page 85 - 《软件学报》2020年第11期
P. 85
康燕妮 等:软件需求变更管理的系统动力学仿真建模 3401
型的基线数据,进行该分支的软件需求变更管理过程的仿真;接下来,根据仿真结果,对该分支的需求变更管理
过程进行比较分析,提出了该需求变更管理过程中的不足;最后,模拟增加代码评审环节、激励开发人员的动机
强度以及增加需求变更请求筛选和分类的需求变更管理过程改进策略,并根据仿真结果可以看出,3 种过程改
进策略均可降低基线数据的软件缺陷率,提高软件质量并且使软件项目周期变短.在此基础上,基于投入成本与
回报进行了 3 种改进策略的对比,并给出具体的改进实施建议.
总之,本文参考敏捷过程提出开源软件需求变更管理过程仿真模型.当前,国内外相关研究尚无相关研究文
献发表,因此,通过分析总结开源软件需求变更管理过程的仿真研究结果,可以为组织内软件项目提供有价值的
建议和经验.另外,当前使用真实软件项目数据来进行仿真研究的成果仍然较少,如果使用更多的真实数据进行
案例分析,可以进一步优化仿真模型.因此,下一步的研究工作将收集更多的大中型开源软件需求变更管理数
据,对模型进行模拟仿真分析和模拟改进分析,增加模型的适用性.
References:
[1] Curtis B, Krasner H, Iscoe N. A field study of the software design process for large system. Communication of the ACM, 1988,
31(11):1268−1287.
[2] Nurmuliani N, Zowghi D, Williams SP. Requirements volatility and its impact on change effort: Evidence-based research in
software development projects. In: Proc of the 11th Australian Workshop on Requirements Engineering. Adelaide 2006. 1−10.
[3] Williams BJ, Carver J, Vaughn RB. Change risk assessment: Understanding risks involved in changing software requirements. In:
Proc. of the Int’l Conf. on Software Engineering Research and Practice & Conf. on Programming Languages and Compilers. Trier
Tele: DBLP, 2008. 966−971.
[4] Zowghi D, Nurmuliani N. A study of the impact of requirements volatility on software project performance. In: Proc. of the
Software Engineering Conf. Piscataway: IEEE, 2002. 3−11.
[5] Godlewski E, Cooper K. System dynamics transforms fluor project and change management. Interfaces, 2012,42(1):17−32.
[6] Zhang H, Raffo, D, Birkhöltzer T, Houston D, Madachy R, Münch J, Sutton Jr SM. Software process simulation—At a crossroads?
Journal of Software: Evolution and Process, 2014,26(10):923−928.
[7] Ferreira S, Collofello J, Shunk D, Mackulak G. Understading the effects of requirements volatility in software engineering by using
analytical modeling and software process simulation. The Journal of Systems and Software, 2009,82(10):1568−1577.
[8] Crowston K, Howison J, Annabi H. Information systems success in free and open source software development: Theory and
measures. Software Process Improvement and Practice, 2006,11(2):123−148.
[9] Fuggetta A. Open source software-an evaluation. The Journal of Systems and Software, 2003,66(1):77−90.
[10] Yang B, Yu Q, Zhang W, Wu J, Liu C. Influence factors correlation analysis in GitHub open source software development process.
Ruan Jian Xue Bao/Journal of Software, 2017,28(6):1330−1342 (in Chinese with English abstract). http://www.jos.org.cn/1000-
9825/5222.htm [doi: 10.13328/j.cnki.jos.005222]
[11] Heck P, Zaidman A. An analysis of requirements evolution in open source projects: Recommendations for issue trackings. In: Proc.
of the Int’l Workshop on Principles of Software Evolution. 2013. 43−52.
[12] Aberdour M. Achieving quality in open source software. IEEE Software, 2007,24(1):58−64.
[13] Sterman J. Business Dynamics: Systems Thinking and Modeling for A Complex World. McGraw-Hill Companies, Inc., 2000.
[14] Dorling A. SPICE: Software process improvement and capability determination. Software Quality Journal, 1993,2(4):209−224.
[15] Wu MH. Modeling and Simulation of software process based on system dynamics. Computer Era, 2007,(9):1−4 (in Chinese with
English abstract).
[16] Wernick P, Lehman MM. Software process white box modeling for FEAST/1. Journal of Systems and Software, 1999,46(2-3):
193−201.
[17] Bano M, Imtiaz S, Ikram N, et al. Causes of requirement change—A systematic literature review. In: Proc. of the Int’l Conf. on
Evaluation & Assessment in Software Engineering. London: IET, 2012. 22−31.
[18] Nurmuliani N, Zowghi D, Williams S P. Using card sorting technique to classify requirements change. In: Proc. of the IEEE Int’l
Requirements Engineering Conf. IEEE Computer Society, 2004. 240−248.