摘 要:随着社会经济的迅速发展及人们生活水平的提高,计算机网络已应用到社会的各行各业中,在推动社会发展的同时,还改变了人们的生活、工作模式。工作流软件的开发,能够凭借其自身的优势,在现有的基础上提高工作效率,最大幅度的节省大量的人力、物力,因而与人们的工作、生活有着密切的联系。在此,本文针对工作流的软件开发过程支持平台框架这一问题,做以下论述。
关键词:工作流;软件开发;支持平台
中图分类号:TP311 文献标识码:A 文章编号:
在21世纪科学技术迅速发展的今天,传统的软件已经无法满足人们的生活、工作需求,规范、统一的软件开发,在推动计算机网络发展的同时,还在很大程度上改变着人们的生活。在当前的软件发展中,以RUP/TSP/PSP以及XP为代表的软件受到人们的广泛使用。在当前社会发展的过程中,工作流软件受到各行各业的欢迎使用,这项技术在研究、使用中,能够凭借自身的优势,有效的实现了高校流线型工作组织流程,最大限度的发挥流线工作的优势,提高工作效率。在工作流技术应用的过程中,其最大优势体现在信息处理对象为IT行业,且能按照相应的程序指示,实现信息路由,即我们所说的集成配置管理。在此,本文针对工作流的软件开发过程支持平台框架中的相关问题,从平台框架、对RUP的支持、对TSP的支持、Agent辅助的PSP等四个方面出发,对其做以下简要分析:
1. 平台框架
1.1 智能、集成的平台框架
在当前软件开发的过程中,其支持平台主要包括以下几种功能:版本控制、BUG追踪、项目管理、邮件列表以及成员权限控制等功能。在这些功能的支持下,在满足项目开发基本需求的同时,其状态多呈现为离散,且彼此间没有较好的联系,换而言之,这些功能之所以不能发挥出自身的优势,其根本问题在于缺乏一个智能、高效的核心。在解决这一问题的过程中,通过工作流及Agent技术的引入,结合着WSDPP平台中的相关优势,能够有效的克服平台中存在的内聚性问题,在完善其内部构造的同时,还能有效的将各项功能融为一体。
与其他平台框架不同的是,WSDPP平台在运行的过程中,主要以工作流引擎为核心,真正的实现了流程的自动化控制。在该框架构建的过程中,在 RUP/TSP/PSP定义流程模板的支持下,通过对程序的合理调整,能够在最短的时间内对开发流程进行组织、定型,在节省开发时间的同时,还能提高开发效率。在整个平台框架运行的过程中,通过自身的功能对工作流的执行性及运行性能进行分析,并结合着分析结果,为其提供相应的管理、报告模块。该平台在于其他工作流机相互交互时,通常采用的是Web Service服务,并能与外部Email系统以及SMS网关保持较好的联系,最大限度的实现辅助与开发人员直接的信息通知接口。
1.2 PSAF过程元模型
在当前信息技术迅速发展的过程中,工作流技术的研究发展,已经成为当前信息技术发展的主要趋势。在其研究发展中,多种过程模型被人们提出,结合着当前的研究技术及模型适应能力,距离理想中的模型功能仍比较远。在当前工作流模型的研发中,多从过程描述为主,如:状态图、活动网络图等,这一类模型在适应的过程中,其重点多放在图模型上,且能直观的对整个过程的时序进行清晰的描述,但在使用中,其缺点在于针对复杂的过程逻辑,不能准确的进行处理,同时无法为其提供丰富的建模概念,导致大量约束集合而成的元素无法使用模型直接的表达出来。
在WSDPP平台运行的过程中,通过对IBM中的Flow Mark以及Keller的EPC元模型扩展,使其在原有的基础上形成了PSAF过程的元模型。与其他元模型不同的是,PSAF元模型在实际使用中,能够将静态视图中的元素关系清晰的表达出来,且每个表达过程在开展的过程中,都会按照相应的开设--结束程序,在规范元素表达过程的同时,还能确保整个活动的运行质量。与此不同的是,对于一些大型、复杂的系统流程建模而言,其核心问题在于如何处理建模中的复杂性,在当前所采用的方法中,多数为自顶向下、逐步求精的进行完善。
2. 对RUP的支持
2.1 集成的配置管理
在当前的配置管理工具中,受技术条件的限制,所提供的目录模型版本存储库较少,流程产生的各种版本的工件通过存放目录的不同,以标识产生工件的丌发流程和所属系统模块。在其实际投入使用中,工件与流程之间并不存在任何之间的联系,且在开发人员的操作下,能够将其控制放置在实施目录下与维护目录下。与此同时,在条件运行的状况下,开发人员能够得到整个平台的所有工件,即使在其没有参与工件的前提下,也能得到。而出现这种状况的根本原因在于配件管理与工作流程之间没有充分的相结合。与之不同的是,在整个WSDPP平台中,工件与流程之间有着相辅相成、缺一不可的联系,而研发人员要想接触到工件,其基本前提在于参与工件的研发流程,只有这样才能确保工件的安全性与稳定性。在基于目录模型的配置环境中,只能提供一维属性以标识工件,要给工件以更多属性,则必须在一维属性中嵌套其他维属性,而这项操作由人工执行常常归类不严格,且不直观。在WSDPP平台中,工件有多维属性,最重要的是以三项属性:工件产生的过程(Process)、所属的系统模块(System Module)以及版本(Version),这三项属性就构成了工件的三维坐标描述。与其他开发模式不同的是,这种研发平台在实际运行的过程中,开发人员如果对工件进行check out、cheek in操作,别人是看不到的,只有开发人员自己能看到,而其他开发人员要想看到,必须在deliver复审通过的前提下,使其转化为label版本后方可。
在整个集成配置管理中,针对任何一份已deliver且通过复审建立的几项工作变更,都必须在原有的基础上建立起新的工作变更流程。以此来确保软件程序的顺利运行及工件变更后的投入使用。变更流程开始后,主要包括以下几个方面:首先由复审员审核变更的理由是否充分,如不充分,则予以拒绝,反之,通过并由提交变更的开发人员进行工件的变更。然而在整个审核过程中,开发人员对工件进行变更后,在工件变更Form描述变更原因、变更处,以及有可能影响的相应系统模块,最后再deliver变更的工件。之后,复审追踪流程自动开始,在
复审流程结束后,当前系统模块的同一基线的所有流程,以及工件变更Form巾描述的必然影响的系统模块的同一基线的所有版本工件状态都将变为disab
le,自动激发这些被影响工件的被动变更流程。另外,给工件变更Form中描述的可能影响的系统模块发送相应的通知。至此,一个变更流程才正式结束。
2.2 知识管理流程
在传统的MIS、ERP系统中,所提供的模块主要以KM模块为主,且提供的模式多呈现为独立模式,与其他流程相比,KM在开发的过程中也比较普通。开发人员在研发的过程中,需要通过相应的专业知识将其具体的描述出来,作为正式的知识文档,在建好知识文档后,结合着模块的实际运行状况,将其研发的性能、运行状况等方面进行详细的填写,在填写完后交给专业的审核人员进行审核,以此来确定知识的正确性及属性。在知识文档通过审核后,结合着知识文档的开发技术及流程,将文档放入整个开发流程中,并与之线连接。与此同时,工作人员在查阅知识文档的过程中,可以通过知识库来查询,且在阅读过后,能够为其进行评分。
3. 对TSP的支持
3.1 环境流程
在当前软件开发的过程中,其组织内部的各个项目之间都有一定的联系,这就导致项目流程及工作指南之间都能在一定状况下进行通用。在体现这一功能的过程中,平台提供了RUP、XP等项目流程模板以及初始化项目的开发环境。由此不难看出,在一个组织环境小组运行的过程中,能够通过工作流模板,对整个组织流程进行组织、开发,使整个开发程序呈现出一定的规则性与完整性。
3.2 项目计划的管理
当一个项目流程定义完成后,流程定义将系统模块、可用的人力资源,以及Agent的BDI属性产生的项目计划相结合。项目计划产生后,基于语言行为(Speech Act)理论模型,开发人员将与项目经理进行协商,并决定是否接受项目安排,在所有的任务开始条件都得到满足的情况下,任务投入运行。
3.3 沟通
在当前软件开发的过程中,人作为整个软件开发过程的组织与操作者,自身掌握知识量的多少,将直接关系着软件开发过程的顺利实施及软件今后的投入使用。对于这些开发人员而言,员工头脑中的知识是他们最宝贵的财富,而员工与员工间的沟通,能够在现有的基础上增加自己的知识积累,通过与人交流,能够及时的发现自身知识含量中的缺陷,并通过相应的措施进行完善,为知识的最大发挥提供和谐的环境。由此可见,在软件开发研制的过程中,保持一个开放有效的沟通环境有着极其重要的作用,且沟通的形式应灵活多变,只有这样才能体现出沟通的灵活性,才能进一步营造和谐、轻松的沟通氛围。而在当前可供沟通、交流的通讯工具中,主要包括即时通讯工具、Email、web BBS,这些通讯工具的投入使用,在实现开发人员之间沟通、交流的同时,还能对研发过程中出现的问题进行及时的研究、探讨,在避免问题进一步扩大的同时,还能避免不必要的程序。
3.5 复审追踪流程
与其他开发流程不同的是,复审追踪流程多位于两个相邻的开发流程间,在某种程度上,复审追踪流程相当于缺陷过滤器自居,因而有着极其重要的作用。从当前产品高质量的要求出发,人们在工作流软件平台研发中,希望将复审追踪流程融入到整个流程中,以此来确保各个流程的准确性。然而在其实际研发中,这种模式需要大量的经费做后盾,甚至在复审的过程中,容易降低比率比。因此,在当前复审追踪的过程中,只对关键的系统模块进行复审追踪。当开发流程结束后,在系统的要求下才能进行复审流程。在整个复审活动中,需要复审人员结合着复审deliver中的工件,严格按照相应的复审流程来检查Enter中的工件是否合格,若出现不合格的状况,则直接拒绝,若合格后,才能正式开始复审流程。
4. Agent辅助的PSP
在整个工作流参考模型中,人作为工作流模型的研发者与操控者,有着极其重要的作用。然而在实际中,人在整个工作流管理系统中,常常以"机器"的地位自居,且在流程、计划确定后,整个过程的实施也是由人按照相应的要求进行设定,而对于指定的研发人员是否愿意、接受该项任务,几乎没有全面的考虑,正是这种不完善的研发模式,对流程的执行力造成了极大的影响。在当前使用的WSDPP平台中,要想从根本上体现出客户与服务方间的关系,可以在流程允许的状况下,将一些语言行为渗入到流程运行中,以此来加强双方间的沟通联系。另外,服务方则基于开发人员的个人Agent。
4.1 Agent与工作流机的接口
在其实际运行的过程中,为简化运行流程,WSDPP平台Agent与工作流机的接口应设置在工作流机的一侧,且这个接口在实际运行的过程中,主要功能在于实现查询任务列表、知识库以及设定Agent的BDI模型功能。这就要求研发人员在使用前,能够通过相应的操作,对个人Agent的BDI模型进行设置,同时填写个人信念、意愿以及通过审核的个人知识。在整个意愿填写的过程中,主要是指在条件运行的状况下,研发人员是否愿意接受任务,以便系统做出科学、完善的安排。在整个定义流程实例化投入使用的过程中,工作流能够结合着流程定义、系统模块以及现有的人力资源形成与之相符的巩固中欧刘,并在语言行为理论的影响下,开发人员能够将工作流与相应的项目进行结合,以此来选择最佳的任务承接人员。在节省研发时间的同时,还能最大限度的提高研发人员的工作积极性,研究结果可想而知。在开发人员执行PSP的过程中,Agent所扮演的角色主要体现在以下几个方面:首先,为每一个步骤提供相应的知识及脚本指导;其次,在开发人员不希望被打扰的情况下,阻挡IM、Email消息,根据设定的message action表,自动回复消息,定时提醒开发人员执行某项任务;最后,基于组织生产力数据库给出相关PSP建议。
4.2 PSP过程数据的收集
在整个任务执行的过程中,开发人员需要结合着任务的实际状况,将其纳入个人的PSP中,使其成为个人任务。而在任务数据收集的过程中,工作人员可以通过client提供的PSP工具,将任务的运行时间、性质、质量、规模等进行收集,使其在现有的基础上自动形成数据报告;除此之外,工作人员还能及时的更新个人数据库,在一定时间内将个人的生产力数据库汇报到组织生产力数据库中。
5. 总结
综上所述,在面对当前网络计算机的迅速发展,工作流软开发过程中支持平台框架的完善,在推动工作流软件开发的同时,还能在现有的基础上提高软件的运行质量,确保软件的每个环节能够形成统一的整体,在保证软件顺利运行的同时,还能进一步提高软件的使用效果。然而在实际研发中,受当前研发技术的影响,我
国的工作流软件研发仍处于落后阶段,相信在广大科研人员的努力下,我国的工作流软件能够取得更好的研发成绩。
参考文献:
[1] 张路,谢冰,梅宏,邵维忠,杨芙清.基于构件的软件配置管理技术研究[J]电子学报,2011,(02) .
[2] 许江军,程显毅,甄萍萍.对原型化方法的配置管理问题的进一步研究[J].江苏理工大学学报(自然科学版),2010,(03) .
[3] 李向蔚,桑楠,熊光泽.基于软件复用的嵌入式操作系统的定制[J].电子科技大学学报,2007,(03) .
[4] 孙长嵩,李海丹.基于构件的版本控制策略[A].2006北京地区高校研究生学术交流会--通信与信息技术会议论文集(下)[C],2006.
[5] 李冰,刘晓明,方凯.基于工作流的软件开发配置管理方案[J].铁路计算机应用,2009,(07)
[6] 蔺文彬,吕剑锋,拜延领.基于工作流的仓库业务管理系统的设计[J].科学技术与工程,2008,(05)
[7] 刘建雄,马明山,赵海平.基Lotus Domino/Notes的收发文管理系统的设计与实现[J].声学与电子工程,2009,(04)
[8] 徐宝祥,贾展波,刘雅文.工作流技术在电子政务协同办公中的应用模式研究[J].情报科学,2009,(05)
[9] 钱丽璞,张建勋,蔡红云.基Petri网的信息系统集成项目管理模型研究[J].电脑知识与技术(学术交流),2010,(23)
[10] 严晓光,王小刚,陈曼煜.软件配置管理的问题、目的、层次和策略[J].计算机工程与科学,2009,(05) .
[11] 张天骏,王守明.试析工作流软件开发的整体过程及平台框架[J].计算机工程与科学,2011,(06).
[12] 张旭,王爽.基于工作流的软件开发过程资产平台框架的概述[J].科学技术与工程,2008,(11).