伊永菊,黄蓓丽,王文辉
中山大学附属第六医院 信息网络中心,广东 广州 510655
基于CMMI的医院信息系统需求管理
伊永菊,黄蓓丽,王文辉
中山大学附属第六医院 信息网络中心,广东 广州 510655
需求管理贯穿于整个软件需求工程之中,也是软件能力成熟度集成模型(CMMI)中关键的过程域。针对当前医院信息系统(HIS)的特点以及项目实施过程中需求管理方面薄弱的现状,本文以CMMI的需求管理为理论基础,把过程化的思维引入到需求管理中,结合需求管理流程设计了需求管理体系。以此作为构建HIS项目需求管理模式的基础,提出了以需求评审、建立功能基线、需求变更控制、需求跟踪为基本活动内容的HIS需求管理过程模型,并在实际项目中将需求分类为出错性需求和功能性需求,进一步对模型进行了改进与完善。
医院信息系统;需求管理;过程模型;出错性需求;功能性需求
医院信息系统(Hospital Information System,HIS)通过计算机网络将医院事务统一到一个平台,规范医疗流程,增强了患者和医院之间的信任度[1]。但是,许多医院的HIS项目实施并不顺利,矛盾的焦点多集中在医院的个性化现场需求[2]。一方面,HIS项目实施中存在着“甲方想做好、乙方想做少、现场乙方员工想省事”的现实问题,HIS供应商尽量回避医院的需求;另一方面,医院需求具有特殊性,需求变更频繁,且由于知识鸿沟等客观因素临床科室不会去考虑需求的合理性。因此,医院与HIS供应商之间建立完整、清晰和稳定的需求,是软件用户获取高质量软件的有效手段。
医院信息化项目实施周期长、涉及部门众多,相对于其他行业的信息化进程而言,具有较大的复杂度[3]。医院信息化建设的成功更需要有效的需求管理。
软件需求是利益相关者对于未来系统的期望。需求分析是软件生命周期的第一个阶段,需求管理贯穿于整个软件生命周期[4]。
医院信息化建设是一个逐步演进、螺旋上升的过程,HIS的需求是随着人们对信息化的体验和观念的转变而不断更新,环境的改变、技术的演进和医院的发展等因素都会引发新的HIS需求。
需求变更对医院信息化的影响可以概括为以下3个方面:① 大量频繁的需求变更会极大地加大项目的人员、费用开支,需求以失控的状态进入软件过程,可能直接导致项目的失败;② 在一个复杂的信息系统中,需求之间具有一定的内在联系,而相关的需求则构成需求链。如果遗漏需求链中的某些环节,就可能在实施变更过程中引入一些难以察觉的错误,将从源头上失去了项目的质量保证,严重时可导致系统崩溃;③ 需求变更的实施是医院信息部门、软件供应商与一线用户相互协作的过程。软件供应商和用户在是否采用变更问题上常常产生分歧,此时需要信息部门协调,如果处理不当,使组织处于被动反应式的环境中,士气低落,增加了项目的失败风险。
因此,医院信息部门需要有科学的方法管理这些需求,使之能逐步实现,不断完善信息系统,促进医院业务流程变革,使医院业务和软件功能逐步达到趋同。
能力成熟度模型集成(Capability Maturity Model Integration,CMMI)是由卡耐基梅隆大学软件工程研究所所提出的软件过程能力成熟度模型,已逐步成为IT业的标准,该模型按软件过程的不同成熟度划分了5个阶段等级,其中1级成熟度最低,5级成熟度最高,从2级到5级包含25个过程域[5](2级7个、3级14个、4级2个、5级2个)。需求管理属于成熟度2级过程域,是其他许多过程域实施的前提。
需求管理是CMMI2的第1个关键过程域。其特定目标为:管理需求、标识需求和项目计划及工作产品的不一致性。其对应的特定实践包括获得对需求的理解;获取项目参与者对需求的承诺;管理需求变更;维护对需求的双向可追溯性和标识项目计划和工作产品与需求的不一致性[6]。
基于CMMI2级需求管理过程框架包括4个过程:①需求评审;② 建立功能基线;③ 控制需求变更;④ 需求追踪。
需求评审是需求确认的主要手段,确认需求是否具有完整性、可行性、无歧义性和可验证性等特征。需求评审是为了及时找出需求中潜在的问题,然后与相关的组就需求进行协商,从而得到约定。
评审通过的需求应当形成功能基线,纳入需求管理库[7]。功能基线是项目后续开发的依据和需求管理的基础,且功能基线只有通过正式的变更控制规程才可以更改。
控制需求变更是指对需求从提出变更申请、变更评估到变更的具体实施进行控制的过程。它通过对功能基线实施配置管理来完成,需求变更活动的实施遵循CMMI2级配置管理过程中对变更控制活动的要求。
需求跟踪使得每一项需求均能追溯到相应的设计、代码和测试用例,同时各阶段的工作产品也能反向追溯到初始的需求[8]。需求跟踪的目的是建立与维护需求、设计、编程、测试之间的一致性, 确保所有的工作成果符合用户需求。
3.1 现场需求
CMMI2 对需求管理过程域第一个特殊实践“获得对需求的理解”的表述为:随着项目的进展,所有的活动或领域都会接收到需求,为了避免需求蔓延,要建立标准来指定接收需求的正式途径。接收需求的活动是引导需求提供者共同进行需求分析以确信对需求性质和含义的理解达到共识。
HIS实施现场的需求复杂而紧急[9],根据需求的性质,将需求分类为出错性需求和功能性需求。出错性需求是指系统Bug、逻辑错误和数据错误;功能性需求是指系统功能增加、功能优化和流程改造。
以我院的信息化建设为例,按照医院HIS实施现场的实际情况,现场需求评审通过后,信息部门将需求分为出错性需求和功能性需求,出错性需求的优先级一般高于功能性需求的优先级。
现场需求的来源是多方面的,如用户抱怨、患者投诉、部门建议、各种协调会议等,需求的采集不仅仅是收集,更重要的是识别[10]。为了避免需求泛滥,所提出的需求必须是明确的、形式化的,这就需要在收集需求的源头控制规范需求的产生过程。我院HIS需求申请单,见表1。
表1 我院医院信息系统需求申请表
3.2 HIS需求管理模型
根据CMMI2级需求管理过程框架要求和HIS需求的特殊性,我院信息科提出了出错性需求管理模型和功能性需求管理模型。这两个需求管理模型均符合需求评审、建立功能基线、控制需求变更和需求追踪4个过程。出错性需求管理模型,见图1。科室需求接口人提出需求,科室负责人审批,信息部门审批,软件开发组评审并开发,信息部门组织测试,测试通过后由软件开发组备份并更新版本。由于出错性需求的优先级是最高的,处理流程相对简单,处理周期较短。自2012-9-29至2013-12-31,共收集出错性需求899条,目前未处理的出错性需求82条。
图1 出错性需求管理模型
图2 功能性需求管理模型
功能性需求管理模型,见图2。科室需求接口人提出需求,科室负责人审批,相关主管部门审批,信息部门审批后需要需求相关部门协调确定方案,软件开发组评审并开发,信息部门组织测试,测试通过后由软件开发组备份并更新版本。由于功能性需求大部分是医院个性化需求,涉及医院业务流程重整,一般处理周期较长。自2012-9-29至2013-12-31,共收集功能性需求1153条,目前未处理的功能性需求213条。
在医院信息化建设过程中各利益方对系统开发的参与都是通过对软件需求的表达来实现的,因此系统需求是整个开发过程中的核心。本文提出基于CMMI级的需求管理过程模型,该模型给软件组织的需求管理提供了具体的过程指南,应用该模型可以解决软件组织在需求管理中存在的主要问题。同时,本文也给出了该模型的具体实现方案,并以此实现方案为基础实现高效的HIS出错性需求管理和功能性需求管理,有效地控制需求变更给医院信息化建设过程带来的影响。
下一步将进一步完善该模型,使其适应需求管理发展的需要,并进一步分析899条出错性需求和1153条功能性需求的分布情况,以医院信息化建设带动医院业务流程的协调性,实现信息系统更好地为医院运营服务、为医院创造价值,提高医院对信息化产品的满意度。
[1] 李鹏.对我国医院信息化建设面临问题的思考[J].中国病案,2013, 14(6):37-39.
[2] 付云.我国医院信息化现状分析及发展对策[J].医学信息,2010, 23(3):563.
[3] 李维.基于RUP的医院信息系统需求管理研究与实践[J].中国医疗设备,2010,(4):43-45.
[4] Elizabeth M,Hull C,Ken Jackson,et al.需求工程[M].北京:清华大学出版社,2003.
[5] Suzanne Robertson,James Robertson. Mastering the requirements process[M].北京:人民邮电出版社,2003.
[6] Dean Leffingwell,DonWidrig.Managing software requirements:Ause case approach[M]. 2版.北京:中国电力出版社,2004.
[7] 王勇,张发勇,周顺平.CMMI软件配置管理的理论与实践[J].计算机工程与应用,2004,(23):105-107.
[8] 苏秦,何进.软件质量过程[M].北京:科学出版社,2008:176-187.
[9] 王丽姿,刘子先,张建宁.基于BPR理论的医院工作流程再造[J].中华医院管理杂志,2006,(3):204-207.
[10] 罗云模,谢志敏.CMMI软件过程改进与评估[M].北京:电子工业出版社,2004:104-187.
Research on HIS Requirement Management Based on CMMI
YI Yong-ju, HUANG Bei-li, WANG Wen-hui
Information Network Center, the Sixth Affiliated Hospital of Sun Yat-sen University, Guangzhou Guangdong 510655, China
Requirement management runs throughout the software requirement engineering and it is also an important process area in CMMI (Capability Maturity Model Integration). Contraposing the current HIS (Hospital Information System) characteristics and weak requirement management during the project implementation process, this paper proposed a CMMI-based model and introduced the processoriented thinking into the requirement management, which was divided into four process models: reviewing requirement, baseline, change control, tracking and adjustment. In practice, the error handling requirement process model and functional requirement process model were established for further improvement of the model.
hospital information system; requirement management; process model; error handling requirement; functional requirement
R197.3;R197.324
C
10.3969/j.issn.1674-1633.2016.06.049
1674-1633(2016)06-0159-03
2015-07-02
2015-07-10
王文辉,高级工程师,中山大学附属第六医院信息网络中心主任。
作者邮箱:chujv29292929@126.com