孙国志
摘 要:以工作流管理系统为管理模型参考,建立起面向软件工程的管理模型基础是目前软件工程项目的重要研究内容。文章主要探讨了软件工程和工作流管理系统的主要内容,并对面向软件工程的工作流管理系统进行了实例分析。
关键词:软件工程;工作流管理系统;研究分析
中图分类号:TP311 文献标识码:A 文章编号:1006-8937(2014)11-0063-02
为了提高软件工程开发软件的专业化和标准化程度,软件企业应该为软件工程建立起一套方便管理的系统,根据规范去进行软件开发操作。虽然目前软件市场上存在着软件开发管理的模板,但这些模板远远不够科学地管理软件,因而软件开发公司要对当前的管理模式进行适当地调整,改变原先以产品研发为核心的管理模式,转向以过程为主的方式,建立工作流管理系统。
1 工作流管理系统概述
1.1 工作流管理系统定义
工作流管理系统是一个善于进行过程管理的软件系统,不是企业的业务系统而是企业为业务系统的运行提供软件支撑环境的系统。工作人员在系统工作之前预先设定好工作逻辑以方便进行工作流实际工作,实现它预定完成工作量管理。
1.2 工作流管理系统的主要分类
工作流管理系统根据工作流本身的工作特点主要有四种比较分类,适用于不同的工作对象。
第一种为结构化工作流和即席工作流,结构化工作流主要执行在实际工作中重复某个固定步骤的业务,在大量的办公工作中会使用,即席工作流主要适用于没有大量重复性或者重复性较弱的过程处理。
第二种为面向文档和面向过程的工作流比较,面向文档的工作流广泛应用于文档管理,将电子格式的文档和图片分发与不同的工作人员进行业务操作,面向过程的工作流是将具体工作细分每一个环节都有需要处理的数据对象,这些数据对象根据需要会发送到其他的环节中去。
第三种是基于邮件和基于数据库的工作流比较,基于邮件的适合低端系统执行过程中消息的传递、数据的分发与事件的通知,基于数据库的适合高端且规模大的系统,执行所以数据的查询与处理。
第四种是任务推动与目标拉动的工作流比较分类,前者的特点是逐步进行,一个环节接连着下一环节只有当上一个环节处理完毕后下一个环节才会被激活继续处理工作,后者是将业务流程视为目标过程实例执行时,该目标将被分解得到多个相互之間按一定约束条件的关联起来的可执行的多个环节,其中各环节还可以当成是子目标而进一步进行分解,当各环节均执行完毕之后,整个过程也就完成了。
2 基于软件工程的工作流管理系统实例研究
总体上讲,软件工程的工作流管理系统构建有三阶段完成:工作流建模阶段、工作流仿真(模型实例化)、工作流实施阶段。工作流建模阶段,相关人员分析企业性质和生产步骤为基础,人性化操作为管理手段,模拟企业经营管理,将管理活动计算机化;工作流仿真阶段,相关人员设置节点基本参数,并配置资源,从而确定管理使用权限;工作流实施阶段,相关人员在前两个工作基础上,执行企业生产和经营管理各项指标,为工作流管理系统中的人际交互界面和实践应用功能完成最终整合优化职能。
为了更加明确面向软件工程的工作流管理系统研究,下文主要列举了为支持P_PROCE模型开发的工作流管理系统。该系统的结构图如图1所示:可见,该系统由建模、仿真、实施三大部分组成,体现了工作流建模到工作流仿真到最后工作流实施的具体过程,还展示了其他组成部分。
2.1 工作流建模
工作流建模是为了实现对软件开发工作流的定制,主要包括过程建模、系统维护和对外接口三个模块。过程建模是建立项目层次信息和工作流层次,在建模过程中需要编辑各个活动属性和各个活动之间的执行关系,在模板中自动生成工作流。在模板的执行工作确定无误后,工作人员还需要设置检验这一环节,对模板的工作效益进行校准,具体操作可以采取连通性测试算法等,程序工作人员还需注意将仿真信息添加至建立的模块中,避免执行工作流仿真时的重新建模,减少工作量,只需要为仿真功能的执行设置一个不是非常复杂的仿真环境就可以了。
工作流程模型的运行状态监控,属于动态变化工作流程被不同、不确定因素制约和影响,从而导致处于运行状态下的工作流程实例出现异常。企业按照因素影响在不同工作流程实例中提出不同要求,既包括系统管理员要求,还包括活动执行节点等。说明在设计工作流管理系统中,设计人员应该根据实际应用情况建立健全工作流程实例监督体系,调整或控制时点问题,从而使工作流程管理的实用价值和应变力得到更多发展空间。
资源管理框架的构成,是资源管理工作流程中的重点环节。企业工作流中包含大量且复杂的计算,因此工作流程管理需要处理规模巨大、多种形式资源。并且由于这些数据资源分布在企业信息系统处理的各个环节中,资源处理系统之间又是相互独立的,因此,保证资源访问和管理作业质量是非常必要的。首先是资源管理体系构架。企业工作流管理系统资源管理器包括资源关系、资源类型和资源策略。资源管理体系构架是企业资源的有序对应关系,在选择资源上,需要通过各种语言形式表达出来,因此具有灵活性和适应性特点。其次,实现流程模型对象。利用企业本地资源工作流管理器,资源管理模型通过操作适配层CORBA载体实现资源整合。最后,应用资源框架。工作流管理系统开发和应用过程中,使用最为频繁的是人力资源模块,其基础是人力资源板块系统,借助于LDAPAPI对人力资源数据进行存取。在企业人力资源管理框架中,定义了部门、部门员工属性和员工之间相互关系。也就是说,企业员工属于部门或多个部门,部门可包括不同子部门,并且各部门有自己领导层。所以,软件工程的工作流管理系统通过人力资源系统管理客户端,并提供C语言函数程序接口,在工作流管理系统正常运行基础上适当添加、修改、删除或者是查询用户资源数据。
2.2 工作流仿真
工作流仿真首先需要选定仿真的工作流模型,根據P_PROCE模型的要求,工作人员可以根据要开发的项目名称、过程及过程中的各个活动内部运转机制的联系,建立以RUP为核心工作流程模板。模型确定之后便是工作流仿真环境的设置,环境设置需要描P_PROCE模型水文产品结构、产品设计信息和其他综合产品信息,随后进行初始化随机数产生器、开始仿真并动画显示仿真过程和收集并展现仿真数据的工作。在工作流仿真中要注意自定义模型和仿真工具这一环节,这是一个建立在完全自主的工作流仿真系统的环境的环节,工作人员可以在自定义工具时可以选取已有的工作流模型,将它们改造成以工作流引擎为基础,封装成仿真引擎的模型,方便仿真工具的资源利用。经过多次仿真测验后,工作人员可以利用离散事件驱动的仿真引擎执行工作流模型中的各项活动,自动推进工作流实例,获得关联的仿真数据,在这些仿真数据中对于工作流系统进行进一步的分析和评价,有利于提高工作流管理的效益。
工作流仿真是工作流建模和实施之前的重要工作环节,在仿真过程中得出的一系列数据可以用来和工作人员预先估计的数据进行比较,若是两者的出入较大,那么现有的工作流中某个环节可能存在差错,需要及时调整,若是仿真数据和期望值没有比较大的分歧,那么在该仿真环境执行的工作流不需要进行太大的改正。系统的仿真机制参考离散事件动态系统事件安排时间推进的方法,结合ECA规则来进行。确保系统仿真模型与工作流建模后的模型是同一个模型,两者为同一个模型可以确保工作流执行逻辑的一致性,防止两者不一致产生难以解释的分歧以致于难以调整。
2.3 工作流实施
工作流实施需要将工作流实例化然后进行具体地实施,工作流实例数据库中有工作流定义和执行信息,通过具体的数据处理,形成用户需要的视图面向用户,从工作人员层面来讲,处理过的数据可以同时负责响应并处理个人工作台的消息,然后确定激活哪一模块的内容实行资源的实际调配。ECA规则确保模型解析按照一定的规则进行出发事件、条件和活动安排,至于个人工作台面的软件开发,根据RUP要求生成大量文档和代码,方便用户的具体操作,具体细节如下:
面向软件工程的工作流执行系统中,主要包括工作流引擎和个人工作台两部分。运行工作流引擎应建立在Transac-tion Server基础上;而个人工作台建立在WEB客户端应用基础上。在获得工作流定义与执行信息后,借助于工作列表和分配模块处理程序,得到客户端应用列表任务书视图,并同时处理工作台事件和数据消息,确定激活对象后,整合资源。在上述ECA解析完成后,按照RUP指示要求,根据信息处理参考号,被生成大量代码或文档,通过SourceSafe实现安全管理,客户端可以通过Check Out/Check In度同文档的代码库进行操作。
3 结 语
软件工程的工作流管理系统在我国发展比较迅速,能够快速适应市场化软件开发与应用需求,相比于其他发达国家,中国的工作流管理系统还是相对薄弱,但国家积极引导该工程的发展,通过了多家企业机制系统开发的要求,促进国内形成自己的行业标准和行业体系。随着市场经济发展而定需求,面向软件工程的工作流管理系统会不断进步,更加适应当代社会的发展要求。
参考文献:
[1] 韩强.基于行为的软件可信性度量理论与关键技术研究[D].北京:北京邮电大学,2013.
[2] 刘木春.轻量级工作流引擎研究与设计[D].西安:陕西师范大学,2013.
[3] 张孟颖.基于工作流的软件测试管理系统设计与实现[D].南京:南京理工大学,2013.
[4] 高伟.简析软件工程的工作流程管理系统[J].电子世界,2012,(3).
[5] 刘磊.基于Petri网的工作流模型化方法及其应用研究[D].杭州:浙江理工大学,2013.