Page 68 - 《软件学报》2020年第11期
P. 68
3384 Journal of Software 软件学报 Vol.31, No.11, November 2020
终达到对开源软件项目需求变更进行有效管理的目的.上述因果关系图中的各个关键因素是通过综合相关文
献以及软件需求变更过程的分析而抽取出来的,这些关键因素通常是产生被观察到行为的重要对象或变量,且
一般存在相互促进或抑制的因果关系.
1.3 开源软件需求变更管理系统动力学模型
根据上述对开源软件需求变更过程及因果关系的分析,我们将开源软件的需求变更管理过程系统动力学
模型设计为由需求变更实现子系统、开源软件社区人力资源子系统、质量保证子系统、进度计划与控制子系
统以及需求变更管理子系统构成的模型,如图 4 所示.
Fig.4 Design of model subsystems
图 4 模型子系统设计
模型中的各个子系统使用系统动力学的存量流量图来进行描述.存量流量图基于因果关系图绘制,明确表
示系统的物质流、信息流和反馈作用.在绘制存量流量图时,需整理有关系统的所有因素以及因素之间的相互
关系,明确各个存量的意义.通过更进一步地细化因果关系图,并增加必要的补充和完善,保证既能完整地显示
出系统应有的因果关系和各模块的正确衔接结构,又能正确反映系统中诸要素的数学意义和数量关系.另外,在
建立存量流量图时,应遵循如下一般原则.
1) 每一个反馈回路都至少有一个存量.
2) 只有流量能够改变存量.
3) 一般情况下,存量为系统提供信息,而这信息会用于改变速率变量,表示根据系统状态进行决策,对系
统进行控制.
4) 辅助变量都放在信息流中.
基于上述子系统分解及建模原则,下面对各个子系统进行存量流量图建模.
1.3.1 开源软件社区人力资源子系统
基于开源社区人员“洋葱”模型组织方式 [12] ,开源软件社区人力资源子系统(如图 5 所示)的功能是对开源社
区的人力资源进行统一配置和管理,使之能够尽可能满足进度计划与控制子系统对人力的要求.
图 6 所示的“洋葱”模型表达了开源软件用户在一定条件下,通过对项目做出贡献后可以成为开发者
(developer),而当开发者的贡献度达到要求时或者在某个方面表现突出而满足开源软件项目人员转化条件的情
况下,又可以转化成为项目的核心团队成员.采用该模型的开源软件社区的人力由外围的开发人员和核心团队
成员共同组成,通常情况下,核心团队成员付出的工作量比非核心团队成员的工作量多出几倍甚至到几千倍,因
此,合理地对工作量进行分配,尽可能地调动外围开发者的积极主动性等,相关开源软件社区人力资源管理的重
要活动也包含到该子系统的模型中.