收 稿日期 : 2008-01-16; 修 回日期 : 2008-04-16 基 金项 目: 国 家“863”计 划资 助项目 ( 2006AA10A303)
作 者简介 : 任守纲 ( 1977- ) , 男 , 山东 日 照人 , 博 士, 主 要研 究 方向 为 软件 工 程、人 工 智能 ( rensg@ njau. edu. cn) ; 徐 焕 良( 1964- ) , 男, 江 苏盐 城
人, 教授, 主要 研究 方向为 计算 机体系 结构 、软 件工程 、人 工智 能; 李相 全( 1979-) , 男, 山东 临沂 人, 博士, 主 要研究 方向 为软件 工程.
基 于 遗 传 算 法 的 软 件 项 目 人 力 资 源 调 度 研 究
*
任守纲, 徐焕良, 李相全
( 南京 农业 大学 信息 科技 学院 , 南京 210095)
摘 要: 从 软件 企业 的实 际情 况出 发, 引入 了人 力技 能熟 练 程度 参 数 和 任 务 完 整度 约 束 因 素, 建立 了 更 加 接 近
实际 的软 件项 目人力 资源 调度 模型 , 并 利用 遗传 算法 对该 模型 进行 求解 , 详 细设 计了 遗传 算法 的运 行 过 程, 最后
通过 一个 算例 对其进 行了 验证 。
关键 词: 人 力资 源调 度; 软 件项 目管 理; 遗 传算 法
中图 分类 号: TP311 文 献标 志码: A 文 章编 号: 1001-3695( 2008) 12-3563-05
Research on genetic algorithm-based software project human resource dispatching
RENShou-gang, XU Huan-liang, LI Xiang-quan
( School of Information Science & Technology, Nanjing Agricultural University, Nanjing 210095, China)
Abstract: Based on the actual situation of software enterprises, this paper introduced the parameters of technique proficiency
degree and task completeness restraint, built ahuman resource dispatchingmodel similar to true practice in software projects,
computed the model by genetic algorithm, designed the running processof genetic algorithmin details and verified the resultby
an example.
Key words: human resource dispatching; software project management; genetic algorithm
在 软件行业中, 软件项 目管理包括 对成本、人员、进度、质
量、风险等进行 分析 和 管理。其 中, 人员是 最 为重 要 的 元素。
只有合理地对人员进行组织和调度, 才能更好地将软件人员的
个人能力转换为企业的开发能力, 使得软件开发过程有序和有
效。因此, 软件项目人力资源调度是提高软件开发效率和质量
的核心问题。人员的调度就是 让合适 的人在 合适的 时间去 从
事合适的任务。目前, 软件项目人员调度问题的研究取得了一
定的成果, 但由于它是在对真实环境作了大量简化的基础上进
行的, 在实际应用中受到很大局限。本文建立了一个更为接近
实际应用的软件项目人力资源调度问题模型, 并设计了求解该
模型的遗传算法。
1 软件项目中的人力资源调度
软件项目中的人力资源调 度主要 解决软 件项目 开发过 程
中的时间、人力资源以及 任务等 的合理 安排问 题, 目 的是提 高
企业的软件开发效率和人力 资源利 用率、缩短 项目开 发周期、
降低开发成本等。在软件项目开发的过程中, 一个普遍问题是
现有的人员无法满足项目进展各个时期对人员的需求, 因此软
件项目中的人力资源调度问题 属于资 源受限 条件下 的项目 调
度问题
[ 1~4]
。
资源受限项目调度问题的 调度决 策要同 时服从 于项目 活
动之间的 时 序( precedence) 和已 知 的 资源 ( resource) 约束
[ 5]
。
资源受限的项目调度问题广 泛存在 于建筑 工程、软件 开发、飞
机及轮船制造等单件或小 批量生 产方式 的企业 中。近年来 兴
起的全球软件开发方式经常要 求多家 企业合 作以获 得最大 的
竞争力, 这种组织结构和管理模式越来越趋向于面向项目的方
式, 整个软件开发过程具有 网络结 构特点, 分 布在网 络节点 上
的各项目成员以 各自 的 资源 为 主分 工负 责 整个 项目 的 工作。
项目成员的共同 目标 是 快速 响应 市 场, 以获 得 最大 的经 济 效
益。因此, 在现代企业中资源受限项目调度问题已显示出越来
越重要的研究价值。
不同的调度问题所涉及 的任务 集、资 源集、约束条 件和 性
能指标集往往不同, 因此很难给出一个统一的形式化定义。文
献[ 1] 给出了一个 单工 艺路线 单目 标函 数的 资源 受限 项目 调
度问题的定义, 在此基础上本文给出了一个更为一般性的软件
项目中人力资源调度问题的定义。
在典型的软件项目中, 人力资 源调度 问题可 描述如 下: 在
一个项目中包 含 n + 1 项 活动和 k 种人力资 源; 由 于技术上 要
求, 某些活 动之间 存在着 紧前关 系, 活动 j 在 它的任 一紧前 活
动 i( i∈P
j
, P
j
为活动 j 的紧 前活动集) 完成 前不能开始。整 个
项目结构的有向网络图如图 1 所示。
图 1 中节点代表活动; 箭头代表活动间紧前关系。图中 各
活动顺序编号应保证 P
j
中 的活动 编号 小于 j。活 动 0 是惟 一
最早开始的活动, 活动 n 是惟一 最晚 完成 的活 动; 活动 0 和 n
均为不消耗资源且执行时间为 0 的虚活动, 分别代表整个项 目
的开始和结束。一个可行调度 方案是 指各项 活动的 开始时 间
第 25 卷 第 12 期
2008 年 12 月
计 算 机 应 用 研 究
Application Research of Computers
Vol. 25 No. 12
Dec. 2008
5 n
-
2
1 4 n
-
1
0
n
3
!"#$%!1