Page 69 - 《软件学报》2020年第11期
P. 69
康燕妮 等:软件需求变更管理的系统动力学仿真建模 3385
水平变量 流入速率 流出速率 因果关系
Fig.5 Open source software community human resource subsystem
图 5 开源软件社区人力资源子系统
Fig.6 “Onion” model for open source software development organizations
图 6 开源软件开发组织“洋葱”模型
图 5 给出了开源软件社区人力资源子系统的系统动力学模型.该模型中,各变量的中英文对照、变量释义、
单位、方程列举如下(由于篇幅有限,此处只选取关键变量进行解释).
在该子系统中,开发人员动机强度(developers’ motivation)表示的是开发人员士气,受进度压力、激励动机策
略有效性以及无效的需求变更请求影响,单位为 Dmnl,计算公式如(1)所示.
' motivation =
Developers (1 Schedule pressure influence table+ ) (1 percent of invalid issue× − )× ⎫
⎬ (1)
+
(1 Effectiveness of encourage measure s) ⎭
生产力表示开发人员每周的生产力,即开发人员每周可以解决的 issue 量,单位为 issue/week,计算公式如(2)
所示.
Productivity=TOTAL workforce×((Developers’ motivation+Communication efficiency)/2) (2)
开发人员总劳力(TOTAL workforce)表示外围开发人员和核心开发人员每周可提供的总劳力,单位为 issue/
week,计算公式如(3)所示.
TOTAL workforce = Core developer average workforce per week Number of core developers× + ⎫
⎬ (3)
×
Developer average workforce per week Number of developers ⎭
开发者人数(number of developers)表示项目外围开发人员总数,单位为 person,计算公式如(4)所示.
Number of developers=INTEG(Developer change rate−Developer loss rate−Core developer change rate,0) (4)
INTEG(integration)函数的数学意义是积分,是围绕状态变量建立的.每个状态变量的方程式都是一个积分