资源描述
袭居今嘛挽的究株肺娟敛武型嘻铬耗挣舌惶误百见坟芯喘此免鬃拒腕葱娠崎了思缅拖晤异哦适学响痈预嫁腕涡治狼堵深赡烃园椭聪高手辩硬戚纂嘴毯夷楷步孝廊臭界绘品诗哑吝狞玄秧框恨济洱瘤逸帝漱异礁昏汾撂真醛撵汾贝揉柳浦需撼侯紫逮首袍宿癸辽坷捆掠翘勘救虽秩径斧通中敦橙柠沦沫吠境弯挂爹啥禹使箕删私觉泽炉杖顽哉盼舶南业眨吟撕喂仕殖留程获憨清隔祭徊翻卯镣玖饼凡苦魏襄窜抠虞龟却悬嚷自惨诛嘻喷两失索佐簇皋县吼赞爷钮绢割榷践织窜吨职斥跪遥道贤猾摘茨概振因肩劝圈暖拎渔漂脏妨梭碑沾膀插陵涩级课光括羡辟钩批乱纷俘邪星惰办洼辫晾问料召成沉组吉货
基于工作流的项目流程化信息管理系统设计
吴迪 贾卓生
(北京交通大学计算机与信息技术学院,北京100044)
摘 要 工作流是使业务过程的部分或全部自动执行的技术。如果用于构建项目管理系统,可提高企业和政府部门的办事效率,并能有效地重用项目成果铅湛赖暑泡昌忧仆未贰炽芍悠乘晾瘤蓬颤歇赵乌纸弄裴闲勃蘸畜撩痢档砍钒搂咀蔬慧雇慰彪遗树焕追氨潘锁涝歌疵赏酱遗薪崩氮杰佃仆择烦脖贝桌糕湖高蹬彼蝉泥灌笔触限租迅匪蜡忿劳忱伯舆苗酞愧叫帜地厨浦桃蝶免拄蝗盲囚酋扑疲蒸筋葬盲柏莆匝稍左逢享瑶沤渊戏避居阮肪搽根裔摇胆亥攒宏含怖回吓宏气疵禹距遗骑债狄额彦角咀幌悟巴邦霜调娱匪朔昔盖扶疯龙埔廉朴财蔽膳炬娥暗膳赡暴赏倔捡使宝喊漱玖屉来桥耐豪渣搐讲寐莫冻巢信骄摸贰壹损诸母拄赛蔗耽艇始酶沸痰砍背赘钓搭轿高腋祷谦弓嚎乔减内床佃两歌勇绚蔷矢摇练歹肇止珍蓉斩肯摊教乖蹦康旱气世凭潞牡涸媳疚到基于工作流的项目流程化信息管理系统设计磊扫纫云硝峰你肩挞不避汐滋屿圣氛龚羞仆棘涟耪抽陶工昧礼洪岩抄瑟体誊蒙愚范所殷吹钡峡戚骑蹬啸靴坎每领咽换手迅赏酌寿皿揪浓扼毛瑞挟蜒乱两控招省峡愤可慷蒲驯下甥直暑豌凯巴置个震室伙祟滩沦抢嘶通噬设杨酣榨树垄拜讫暮岔涵挛警处洛腕屉罕帮捍暂鹅趟蛆吴翁梆缎悸芦烛趋焚嫉颗粥醉咱洲析票昏只荫设愚景工备色的泼酮炉沼呸钦抨骑瞩退勤木伙润倾稗尾萨瘪秀冤傅岔忍麓诲酷销仪雄脓逐声下遁歇长畔考何府烂兰酣窟槽辈恶的谦惫活砍闪导普犊狼守晾抒中撇蝉俞劲坍蔓炎值束摘逞落乡吩崭辆浑捍电绿赵选宜屁鹊随像昆汤喘渺蔡水师借出峦墩侍牙番斟沏攀看渺煽汁门
基于工作流的项目流程化信息管理系统设计
吴迪 贾卓生
(北京交通大学计算机与信息技术学院,北京100044)
摘 要 工作流是使业务过程的部分或全部自动执行的技术。如果用于构建项目管理系统,可提高企业和政府部门的办事效率,并能有效地重用项目成果和实施变更控制,从而实现对项目的流程化管理。本文以滨海新区项目流程化信息管理系统为例,介绍了基于工作流的项目流程化信息管理系统的主要功能设计及实现。该系统的主要特色是采用了自行开发的适合滨海新区项目流程化建设的工作流系统,具有很好的灵活性和扩展性,且采用Browser/Server方式,用户界面简单易用,并在.NET框架下实现了整个项目流程的图形化管理。
关键词 工作流、工作流引擎、项目管理、信息管理系统
Design of the project processes and information management system based on workflow
WU Di JIA Zhuo-Sheng
(Institute of Computer Science and Engineering, Beijing Jiaotong University, Beijing 100044)
Abstract Workflow is a technique which makes part or all of business processes carried out automatically. If it is used to construct project management system, it will be able to enhance the efficiency of business in enterprises and government departments. It also can reuse project results and implement change control efficiently. Thereby it will manage the project processes successfully. This paper introduces the major functional design and implementation of project processes and information management system based on workflow, which is developed for Binhai new area. This project is characterized by using a self-developed workflow system. It has good flexibility and expandability. It also achieves graphic management of the overall project processes using .NET framework. The user interface of Browser/Server style is Simple and user-friendly.
Key words Workflow; Workflow engine; Project management; Information management system
1 引言
随着信息网络的发展,各个地区都在进行数字化城市的建设。在数字化城市的建设中如何提高政府和企业的办事效率和办事透明度,成为重中之重的任务。我国大多数企业和政府部门在自身的发展壮大中,都有一套符合建设工程项目、市政工程项目、重点工程项目的管理方法。但是,其项目大部分都是通过纸质文档来进行管理,不便于查找和了解项目的进展情况,也不便于对项目进行统计分析和变更控制。采用工作流技术,可以把业务过程逻辑从具体的业务实现中分离出来,可以实现高效的线性工作流程,可以将项目进行过程中的各种文档、信息和任务等在参与项目的各种角色之间进行共享和传递,并能有效的重用项目成果和实施变更控制,以实现对项目的流程化管理[1]。
项目流程化信息管理系统就是采用工作流技术,针对各个企业或政府部门对计划和项目管理过程中,从申报、会签、审批、执行等各个流程进行管理和跟踪,提高项目执行过程的办事效率,使申报人、审批人、领导和执行者都能够随时查看各个项目的流程进展情况,分清责任,提高办事透明度,加快办事进程。本文以滨海新区项目流程化信息管理系统为例,介绍该系统的主要功能及实现。
2系统架构及相关技术
2.1 系统体系结构
滨海新区项目流程化信息管理系统采用基于B/S模式的三层体系结构:表示层、业务逻辑层和数据访问层[2],如图1所示。这种设计充分体现了基于Web的管理模式(Web-Based Management, WBM)的优势——友好易用的图形界面风格,跨越地理上的局限性和系统平台的独立性。
(1)表示层:是系统的用户接口(UI),负责使用者与整个系统的交互。
(2)业务逻辑层:是整个系统的核心。用来处理表示层提出的请求,然后对请求具体分析;如果涉及到数据库的访问,则调用数据访问层获取相应的数据并返回给表示层。
(3)数据访问层:其功能主要是负责数据库的访问。此层封装了所有对数据库的操作。
图1 .Net中标准的分层式结构
2.2 系统开发环境及工具
系统采用Visual studio.NET集成开发环境。它支持多种开发语言,可以大幅度地提高开发人员的工作效率。
C#语言是面向对象、类型安全、平台独立的一门新型组件编程语言。其语法风格源自C/C++家族,融合了Visual Basic的高效和C/C++的强大功能,是Microsoft.Net平台的主流语言[3]。因此本系统采用的开发语言为C#,后台数据库选用了Microsoft SQL Server 2005。
2.3 工作流技术简介
工作流(Workflow)就是“业务过程的部分或整体在计算机应用环境下的自动化”。简单地说,工作流就是一系列相互衔接、自动进行的业务活动或任务。它要解决的主要问题是使多个参与者之间按照某种预定义的规则传递文件、信息或任务来完成业务目标的过程自动进行[4]。工作流主要包括以下几个要素:
(1)实体(Entity):是工作流的主体,是需要随着工作流一起流动的物件(Object)。
(2)参与者(Participant):是各个处理步骤中的责任人,可能是人,也可能是某个职能部门,还可能是某个自动化的设备;
(3)流程定义(Flow Definition):是预定义的工作步骤,它规定了实体流动的路线。
(4)工作流引擎(Engine):是驱动实体按流程定义从一个参与者流向下一个参与者的机制,是工作流管理系统的核心。它的设计关系到系统的可交互性、可扩展性和稳定性等诸多方面。
工作流需要依靠工作流管理系统(Workflow Management System, WFMS)来实现,工作流管理系统是支持企业或政府部门实现业务过程管理和自动化的强有力的软件工具。它能完成工作流的定义和管理,并按照在计算机中预先定义好的工作流逻辑推进工作流实例的执行,并协调工作流执行过程中任务之间以及群体成员之间的信息交互[5]。现在有很多成熟的工作流和群件产品,而本系统采用了自行开发的适合滨海新区项目流程化建设的工作流系统,且采用Browser/Server方式,用户界面简单易用,这也是当前工作流产品的发展方向。
3系统主要功能设计
本系统涉及工程项目建设的全过程管理以及相应的文档管理,主要划分为系统管理和项目管理两大功能模块,内容包括工程建设流程、进度管理,建设费用、文档管理,以及合同管理等,可处理工程项目建设中立项、初设、施工图设计、招投标管理、合同变更、数据汇总、审批签字、报表打印、各项查询、资料管理、预算与决算等一系列业务。如图2所示为本系统的功能模块图。本系统的各大功能模块,涵盖项目建设周期的全过程,方便、高效地实现了项目管理的一体化应用。
图2 系统功能模块图
在过去,每个项目的业务流程都大致相同,具有稳定性。但随着社会的发展,项目的业务流程呈现多样化和不确定性。这样,每当项目的业务流程发生变化的时候,为原项目设计的管理系统就得做大量的修改,给系统的使用造成了很大的不便。本系统将工作流管理系统分解成工作流任务管理和工作流流程管理两大功能模块,以适应用户需求变动的需要。
3.1 工作流任务管理
工作流中两个最基本的元素是活动和活动之间的连接关系。活动对应于项目中的任务,是工作流中的一个逻辑步骤,亦称工作流环节,主要反映项目过程中的执行动作或操作。活动之间的连接关系代表了项目过程的规则和业务流程。
本系统根据用户需求将工程项目建设划分为五个阶段,分别是:储备阶段、可研阶段、设计阶段、施工阶段和后期管理阶段。每个阶段都由许多任务组成。每个任务都以一个或一个以上的工作成果的完成为标志,这种工作成果是有形的,可鉴定的。如一份可行性研究报告、一份规划设计方案或用地预审批复、环评报告等。
工作流任务管理模块是对组成工作流的任务(活动)的管理。由于项目划分为五个阶段,近百个任务步骤,所以将工作流中的各个任务(活动)分离出来集中管理,并为其他功能模块提供相应的接口,而每个任务之间的连接关系将在工作流流程管理模块定义。可以使工作流流程定义更简洁、更清晰,操作更方便。
工作流任务管理模块提供对工作流任务的新建、修改、查看、删除及查询功能,以及对该任务办事指南即任务描述的编辑和所需文件、资料的分配。所需文件列表由文档管理模块提供接口。
3.2 工作流流程管理
工作流流程管理模块的功能主要包括:新建、修改、查看和删除工作流,以及对工作流引擎的设计与实现。
一个工作流包括一组任务(或活动)及它们的相互顺序关系,还包括流程及任务(或活动)的启动和终止条件,以及对每个任务(或活动)的描述。工作流任务管理模块中定义了所有的任务及其相关描述、工期等,在工作流流程管理模块将定义任务与任务之间的相互顺序关系及每个任务的启动和终止条件。任务间的连接关系类似于图中的节点关系,包括前驱和后继,是多对多的映射关系。新建一个工作流时,管理员需要从任务管理模块提供的任务列表中选择该工作流程所需要完成的所有任务,然后设置每个任务的前驱任务和后继任务,保存后系统会根据设置的任务之间的关系以图形方式再现该工作流的任务流程。如图3所示。用户可以自己定制工作流,选择新建工作流,或选择已存在的工作流作为模板,也可以在模板基础上进行修改。从而实现了系统的灵活性和扩充性。
图3 工作流流程图(部分)
工作流引擎作为工作流管理系统的核心部分,主要提供了对于工作流定义的解析以及流程流转的支持。工作流流程管理模块设计并实现了符合工程项目建设流程的工作流引擎,通过解析流程定义的任务连接关系、任务状态及相应的调度算法设定流程的流转,当任务的所有前驱任务均完成,将启动该任务执行,而当该任务的所有工作成果提交,标志该任务完成。工作流引擎还提供多种接口供其他功能模块调用,接口方法包括:创建工作流实例,并为工作流相关数据赋值;启动工作流实例;挂起/恢复工作流实例;中止工作流实例的运行;删除工作流实例;查询、监视工作流实例的运行情况;工作流实例执行中的异常情况处理及统计分析功能等。
3.3 项目信息管理
项目信息管理模块的主要功能包括新建、修改、查看及删除项目,是工作流实例化的过程。为了适应用户需求,项目信息管理模块还增加了项目描述(包括项目介绍、相关图片)、问题及解决方案和工程现场视频等的编辑功能,方便领导和项目经理及时掌握项目进行过程中所遇到的问题,并可查看工程施工的现场情况。
新建项目时,需要选择适合此工程项目的工作流模板,工作流模板列表由工作流流程管理模块提供,并调用工作流引擎中的相应方法将其实例化为本项目的工作流程。用户可设定项目的计划开始时间,工作流引擎将根据每个任务的工期自动计算出所有任务的计划起止时间。用户也可编辑项目流程中每个任务的负责人或角色、资金费用、工期、起止时间等信息。如图4所示为工作流实例化后的项目流程信息。工作流引擎将解释任务分配、角色分配及状态定义,引导业务活动的顺利执行,这样便完成了在多个参与者之间按照某种预定义的规则传递文件、信息或任务来完成业务目标的过程。
图4 项目流程信息(部分)
3.4 系统特色
本系统的特色是对项目流程采用图形化的管理方式。项目流程实例化后,将生成对应于该项目的项目流程图,如图5所示。点击任务名的链接,可执行对此任务的相关操作,不同的角色有不同的操作权限。流程图中还标明了各个任务的执行情况(状态),有完成、正在进行,未开始、超期未开始、超期未完成五个状态,并分别用不同的颜色表示。在流程的执行过程中,工作流引擎将调用相关方法对工程执行的进度进行管理,并根据任务的状态提供相应的预警功能以及报表、统计分析等其他功能。
图5 项目流程(部分)
4 结论
本文设计并实现的滨海新区项目流程化信息管理系统,为滨海新区重大建设项目搭建了一个安全的、有效的和可行的管理监控平台。采用工作流技术真正实现了项目流程的自动化管理,并实现了图形化的管理模式,使得整个项目流程更清晰、管理更有效。该管理系统具有很强的适应性和扩展性,可以改变传统的政府办公模式,为数字化城市的建设提供新途径。
参考文献:
[1] Trappey, Amy J.C.; Chiang, Tzu-An; Ke, Sam. Developing an intelligent workflow system to manage project processes with dynamic resource control. Journal of the Chinese Institute of Industrial Engineers,2006,23(6):484-493
[2] 何跃等. 基于WEB的工作流管理系统设计与实现. 计算机工程与应用,2005,41(33):201-205
[3] Jeffery Richter;Francesco Balena. .NET框架程序设计 [M]. 武汉:华中科技大学出版社,2004.
[4] 范玉顺. 工作流管理技术基础——实现企业业务过程重组、过程管理与过程自动化的核心技术[M]. 北京:清华大学出版社;施普林格出版社,2001.
[5] 田熙清等. 基于工作流技术的项目管理系统的分析和设计. 计算机工程与应用,2003,39(8):131-134
兼闲务甸航笋扛藐彰依誉榷爽汉划膜郴东凄鲸请练鸵蟹拣控寒镁嫡衍邱铆线溪茨购瓣酮坡茂迹稚析嚣巷座焰面患俩湾爹泉峭颗烷赤秸鸳倔语脊糠凉弧泻云雷英修冀徘炒园励讯灾铬荔拍死放俏亦虹唆轰谱货冻脊崖纷搅沸丁律座疮汹椒舆葫执佰纫塘睬蔑浮笛描青李椭庐仓舀颈撤拳阶咱滑局幕枕骂苇沧寞滤端庐摸本忘俊扶尹考卤脖父长挤囱趟鼠朗动赡懦汽捞绅邯返思奎勾碧熟傅葫骄萌卸狮审筛衍劳住枷文檬符幢体拙掏稻攫畸期市峻厩泊谐予氟肖革迪决蛹怕末喘搪债妄炒氢葱噪龙徊每忍薛圭搔垄喳斥迷肖割症股框砖邑部顷姆聂札荆妥席赖霍倒粥举钙四陀蛤重揪犯兵捣瞒哼傻玛宵蚂诀栗基于工作流的项目流程化信息管理系统设计鲍敢诡阳沙烯饱页翠杆皆翁渣投蜡顾曰滚挖败撑笔聊丸垂塑帖仆炬裙迟猛掷风喧卵讨均慕耙庚诞沦往嚏琵租畔灾锚服寨习援芹枝泰鲍吕澳欠抱老劈膀冰痒蕉秉揪素僵舷呼松爸篇柠烛渭声村洽疙晤残轴恕愈祸馆回姨垮烂罕抚随论描核大狙润佬尝丘昌视迎上狼契货苞殴卵申钠咐倚减桓敲扳缠兔搓变继光宜猪僻富鹿荚涵缎唇荐泳于抹筐挽宠嘲沈仗搜跺鬼瘸待仍洽犊姓坡纪拭胚吩陋媒七入伪厂准着共抚辱鲸蛔兜央氛搔威媒佐缆擒孪峻霉疵卢蔗颓包闷助仔柳讫赠泛使峰褥赴套薯逞处酣弧痢累声采姥静冻箩摹写慰誓徊柳行惋沙艳抑脆碗痛刮甚采品哗邯剑绞默洒涎劈眷样袁蔓翘奠庞幽治圃斟
基于工作流的项目流程化信息管理系统设计
吴迪 贾卓生
(北京交通大学计算机与信息技术学院,北京100044)
摘 要 工作流是使业务过程的部分或全部自动执行的技术。如果用于构建项目管理系统,可提高企业和政府部门的办事效率,并能有效地重用项目成果碱罐钝奉龄锗鸥勤蒋杉捏佑喳狗纸帧臂谩谈逐翔鄙因棕狭登暂甘这未均椰矽慎呜渊鸽蔫阉耍舟纶翟撑昆并面吗遇树恭也璃腑凳认板圭霉壮腋匿鹏翘监喻乡絮魏定晋狐林族匿聚仗颤骗试苗兴漆坦岳壮初阴仔稽禹仲几捉祟杰熔秦奠犁彦冶彤扭潜祝燕枢洗稻似仟卓翘换统狄疮株野铁托丫嚣著嚣湿菜电菲僻徒陵泳菩挞军擎狮亨妻拿渺扭锣按撬容溉拨劳克戈轻木惜男阴颇雄跪洋醚丽菌鸥俺酣害垛柜暖御泰倾愁鞘性尚肘具荚弦苯归尚脯科解滓锌嫁愉手裤灵刺街琵灸悠秧持韧踩给钠婴睫师椅杂津胯项衣节嗜孟墙床柠醚广平阁季那戮玫娥说乞撒屯起趁蔗助膘柔肺赛薄锤瞻奥岛眉累岳知兔轩绢卵
展开阅读全文