CN101266669B - 基于计划模板的项目过程工作流系统及其实现方法 - Google Patents

基于计划模板的项目过程工作流系统及其实现方法 Download PDF

Info

Publication number
CN101266669B
CN101266669B CN2008101059990A CN200810105999A CN101266669B CN 101266669 B CN101266669 B CN 101266669B CN 2008101059990 A CN2008101059990 A CN 2008101059990A CN 200810105999 A CN200810105999 A CN 200810105999A CN 101266669 B CN101266669 B CN 101266669B
Authority
CN
China
Prior art keywords
task
workflow
unit
plan
project
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2008101059990A
Other languages
English (en)
Other versions
CN101266669A (zh
Inventor
李倩
李凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Li Kai
Li Qian
Original Assignee
GUANGZHOU ZHONGLIAN CHUANGTONG COMPUTER CO Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by GUANGZHOU ZHONGLIAN CHUANGTONG COMPUTER CO Ltd filed Critical GUANGZHOU ZHONGLIAN CHUANGTONG COMPUTER CO Ltd
Priority to CN2008101059990A priority Critical patent/CN101266669B/zh
Publication of CN101266669A publication Critical patent/CN101266669A/zh
Application granted granted Critical
Publication of CN101266669B publication Critical patent/CN101266669B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

针对现有工作流技术存在的“不可编辑性”等问题,本发明提供了一种基于计划模板的项目过程工作流系统,也提供了相应的实现方法。该项目过程工作流系统通过依据打包工作形成的单元任务来定义典型计划模板的手段以及相应的工作流引擎技术实现了对现有工作流系统的改进。由计划模板依据每一个具体的项目过程生成进度计划,从而驱动工作流。在执行过程中可以对进度计划进行修改,即实现流程执行过程中的流程调整。该发明通过计划模板技术、单元任务技术及相应的工作流引擎技术等技术手段,使得项目过程工作流系统更加灵活、严谨,并能满足运行在项目过程中的要求。

Description

基于计划模板的项目过程工作流系统及其实现方法
技术领域
本发明涉及一种在项目过程中运行的工作流(Workflow)系统及其实现方法,尤其涉及一种基于计划模板和相应的工作流引擎技术实现的项目过程工作流系统及其实现方法,属于工作流技术领域。
背景技术
工作流是指整个或部分经营过程在计算机支持下的全自动或半自动化。换句话说,工作流就是一系列相互衔接、自动进行的业务活动或任务。一个工作流包括一组任务(或活动)及它们的相互顺序关系,还包括流程及任务(或活动)的启动和终止条件,以及对每个任务(或活动)的描述。利用工作流技术,可以在多个参与者之间按照某种预定义的规则传递文档、信息或任务的过程自动进行,从而实现某个预期的业务目标。
在申请号为200710001376.4的在先专利申请中,公开了一种在执行工作流时,以能够动态地变更·更新构成工作流的工程的工作流管理系统为基础的,可以高效率的制作工程模型的工作流管理系统。该工作流管理系统,包括可以从过去的工程例子中检索出所希望的工程例子的检索手段、从工程例子的检索结果中将所希望的工程例子统一合并为新的工程模型的统一合并手段以及对工程模型的记述进行追加或修正的手段。
但是,现有工作流系统实现技术需要事先完成机构重组、建模、流程定义等工作,因此所实现的工作流系统无法运行在项目过程中,只有在具有“重复性”特征的经营过程中能够得到很好的运行效果。这主要是因为描述项目过程的主要方法是计划,进度计划的制定和跟踪是实现项目过程的主要手段。而工作流流程的定义是对频繁出现的经营过程的描述,针对一个具体案例具有“不可编辑性”。项目过程的“一次性”使得每个项目都有自己特有的进度计划,进度计划虽然有相似性但对于不同的项目都需要进行相应的调整,包括任务的增减及计划执行时间、工期时间的确定等。
另一方面,在现有工作流系统实现技术中,建模和分析方法主要依据于Petri网,而目前普遍使用的支撑项目进度计划的技术是网络计划技术(包括CPM及PERT方法及由节点、箭线和线路组成网络图),两者之间存在较大的差异,并且相互之间具有不可替代性。由于没有任务完成时间和过程整体工期的约束,Petri网的描述方法无法准确、严谨地为项目过程建立模型,因此该描述方法无法适用于在项目过程中运行的工作流系统。
发明内容
鉴于现有技术所存在的不足,本发明的首要目的是提供一种项目过程工作流系统。该工作流系统通过根据单元任务来定义计划模板的技术手段以及相应的工作流引擎技术实现了对现有工作流系统的改进。
本发明的另外一个目的是提供用于实现上述项目过程工作流系统的具体方法。
为实现上述的目的,本发明采用下述的技术方案:
一种基于计划模板的项目过程工作流系统,由计划模板生成在执行过程中可修改的进度计划,所述进度计划用于驱动项目过程工作流,其特征在于:
所述项目过程工作流系统包括任务部署模块、计划部署模块、流程引擎、流程设计器、工作分解模块、资源数据库、单元任务数据库、计划模板数据库和客户应用程序;
所述计划部署模块包括计划生成模块和计划编辑模块;所述流程引擎包括工作流任务生成器、流程设置模块、客户端应用接口、监视控制接口、任务完成检测模块和任务执行模块,还包括引擎数据库;
所述计划编辑模块连接所述工作流任务生成器,所述任务部署模块分别与所述工作分解模块、所述资源数据库、所述单元任务数据库、所述计划模板数据库和所述客户应用程序相连接,所述资源数据库与所述计划编辑模块也进行连接,所述单元任务数据库同时连接所述计划编辑模块、所述工作流任务生成器和所述流程设计器,所述计划模板数据库连接所述计划生成模块和所述流程设计器,所述客户应用程序同时连接所述客户端应用接口和所述监视控制接口;
所述任务部署模块将项目工作包装成单元任务,所述工作流任务生成器为每个单元任务附加判断单元,所述流程引擎用于实现满足计划驱动的引擎调度,所述流程设计器产生所述计划模板,所述工作流任务生成器用于修改所述进度计划。
其中,所述项目过程工作流系统以所述计划生成模块、计划编辑模块和流程设计器为接口连接Microsoft Project软件。
所述计划模板保存在计划模板数据库中,并以XML文件形式输出。
所述任务完成检测模块和任务执行模块依据满足计划驱动的引擎调度法完成工作流的任务调度,并通过客户端应用接口和监视控制接口实现与客户应用程序的交互。
所述计划驱动的引擎调度法为当进度计划时间到达时,所述流程引擎使项目过程工作流开始运行,并在满足计划的单元任务紧前、紧后逻辑关系和时间约束时将单元任务推给执行者。
一种用于实现上述项目过程工作流系统的方法,用于将项目工作包装成单元任务,其特征在于:
1)分解工作流运行单位提供的项目管理规范,将所有在项目管理过程中要完成的工作以及固有的属性生成一个数据表;
2)在任务部署模块的界面中给每个项目工作赋予组织单元和角色属性;
3)依据组织单元和角色对单元工作进行整理、分类,按照项目的特点对工作进行组合后,生成单元任务;
4)在任务部署模块的界面确定单元任务名称,进行完整性审核,确定单元工作的工作内容和完成检测条件,并将单元任务保存到单元任务数据库。
一种用于实现上述项目过程工作流系统的方法,用于实现为每个单元任务附加判断单元,其特征在于:
1)工作流任务生成器得到计划编辑模块提交的项目进度计划,在引擎数据库中创建项目的工作流定义表,将任务相互衔接的关系和工序的开展顺序转换为工作流的节点关联关系,并将计划中任务的名称、资源、开始时间、完成时间属性引入到项目工作流定义表;
2)在引擎数据库创建项目判断单元表,并使判断单元数据与工作流定义表对应;
3)对计划中任务属性进行归类、提取、计算,从而为判断单元添加属性;
4)判断单元属性确定后,工作流任务生成器将项目过程工作流的定义数据提交给流程设置模块,流程设置模块在引擎数据库中生成任务列表后工作流进入待运行状态。
一种用于实现上述项目过程工作流系统的方法,用于实现满足计划驱动的引擎调度,其特征在于:
1)流程引擎中的任务完成检测模块被触发后,通过对判断单元的循环检测动态判断项目过程的当前状态,并将检测结果写入判断单元的前置任务属性表,通过检测结果计算实际自由时差;
2)在进行单元工作完成检测时,所述任务完成检测模块按照每个工作的完成检测条件通过客户端应用接口完成工作表单的检测;
3)当进度计划时间到达时,所述流程引擎使项目过程工作流开始运行,并在满足计划的单元任务紧前、紧后逻辑关系和时间约束时将作为节点的单元任务推给执行者。
一种用于实现上述项目过程工作流系统的方法,用于设置新的计划模板,其特征在于:
1)启动流程设计器,在所述流程设计器中创建一个新的流程;
2)在流程设计器中查找到已经定义好的单元任务,为流程设置单元任务,如果现有的单元任务不能满足要求,则创建新的单元任务;
3)按照单元任务的工序关系和完成的先后顺序确定单元任务的关联关系;
4)将完成的流程提交给Microsoft Project软件进行关联合理性检查,以生成正确的计划模板,并将所述计划模板保存到计划模板数据库。
一种用于实现上述项目过程工作流系统的方法,用于修改已经在运行的进度计划,其特征在于:
1)工作流任务生成器接收到提交的修改计划后,备份工作流定义表、判断单元表;
2)创建新的工作流定义表、判断单元表;
3)保留任务列表中已经完成和已经开始的节点,按工作流定义表更新任务列表中未开始的节点;
4)使修改后的进度计划进入待运行状态。
利用上述的技术方案,本发明提供了一种可以在项目过程中运行的工作流系统及其实现方法。该技术方案中,通过使用计划模板依据每一个具体的项目过程生成进度计划驱动工作流、对资源和任务组合配置成单元任务、工作流引擎处理等技术手段,实现了为每个项目过程创建工作流并可随时进行流程修改的技术效果。
附图说明
下面结合附图和具体实施方式对本发明作进一步的说明。
图1为本发明所提供的项目过程工作流系统的组成结构示意图;
图2显示了将项目工作包装成单元任务的基本步骤;
图3为判断单元与单元任务相互对应的关系示意图;
图4显示了设置新的计划模板的基本步骤;
图5显示了部署项目的工作流的基本步骤;
图6显示了工作流运行的基本步骤。
具体实施方式
下面首先介绍本发明中将要使用的一些基本概念。这些概念是理解本发明的关键所在。
1.单元任务:由符合项目特点的任务包装生成的工作集合。单元任务是项目过程工作流中的基本任务单元。集合中的项目工作称为单元工作。此处的项目工作是从项目管理规范、规章制度中抽象出来、有具体工作内容和完成条件的活动。项目工作的内容以表单的形式在客户应用程序中创建、保存和完成。
单元任务主要有3个特征:
1)资源属性
每个单元任务都具有资源属性。单元任务中的单元工作继承了单元任务的资源属性。
2)项目属性
单元任务符合网络计划技术中对任务的约束,包括交付物、工作内容、资源、持续时间等,可以用网络计划图描述,并可通过CPM(CriticalPath Method,关键路线法)中的方法进行工期优化、调整关键路径等。
3)可重复使用
项目工作可以在资源属性和项目属性的约束下进行不同的组合,从而组成适合不同项目过程需求的单元任务。
单元工作可以携带项目工作表单,具有如下的特征:
1)具有描述项目工作名称、表单工作性质、完成检测条件属性,并继承单元任务的资源属性。
2)可以将资源属性传递给表单,并取得表单的完成情况。
3)可以修改表单格式、内容,也可以更换表单。
在本发明中,采用单元描述企业组织架构,对单元内完成的项目工作进行包装形成单元任务,以单元任务作为计划模板的组成元素。
2.计划模板:包含了项目过程中单元任务和单元任务之间关联关系的、符合网络计划技术规则的网络图。计划模板由节点、箭线和线路组成,其中节点表示单元任务或单元工作,箭线和线路表示不同单元任务或单元工作之间的关联关系。
在本发明中,用一个计划模板代表了一个类型的项目过程。选择不同的计划模板就确定了不同的项目过程。当项目具有相近的项目过程时可以使用同一个计划模板。
参见图1所示,本发明所提供的项目过程工作流系统包括任务部署模块101、流程设计器102、计划部署模块103、流程引擎107、工作分解模块116、资源数据库117、单元任务数据库118、计划模板数据库119、客户应用程序120。该项目过程工作流系统连接用于生成计划模板和进度计划的工具Microsoft Project软件115。计划部署模块103中包括计划生成模块104和计划编辑模块105。流程引擎107包括工作流任务生成器108、流程设置模块109、客户端应用接口112、监视控制接口113、任务完成检测模块111和任务执行模块110,还包括引擎数据库114。资源数据库117中包括角色、资源和组织单元三个部分。
在图1所示的项目过程工作流系统中,计划部署模块103用于接收项目过程管理需求。该模块中的计划编辑模块105连接工作流任务生成器108。任务部署模块101的作用在于接收并处理新的单元任务,该模块分别与工作分解模块116、资源数据库117、单元任务数据库118、计划模板数据库119和客户应用程序120相连接。工作分解模块116和资源数据库117分别用于接收运行单位的基础数据。资源数据库117与计划编辑模块105也进行连接。单元任务数据库118同时也连接计划编辑模块105、工作流任务生成器108和流程设计器102。该数据库118主要用于存储、修改和调用通过项目过程工作流系统部署的单元任务。计划模板数据库119也连接计划生成模块104和流程设计器102。客户应用程序120连接客户端,以便操作人完成项目任务和操作流程的数据。该客户应用程序120同时也连接客户端应用接口112和监视控制接口113。流程设计器102连接Microsoft Project软件115,用于接收并处理新的计划模板。该Microsoft Project软件115同时也连接计划生成模块104和计划编辑模块105。
单元任务在任务部署模块101的界面中生成,保存在单元任务数据库118中。工作流任务生成器108采用解析计划和单元任务生成流程定义的方法生成工作流定义,并保存在引擎数据库114中。
计划模板通过流程设计器102产生。流程设计器102由一组图形化界面和模板生成程序组成,生成的计划模板保存在计划模板数据库119中,并以XML文件形式输出。
流程设置模块109在引擎数据库114中生成流程任务表并使项目的过程工作流进入运行状态。流程设置模块109的另一个作用是处理计划的动态修改,计划修改后流程设置模块依据修改后的计划调整流程任务表。
任务完成检测模块111、任务执行110模块依据满足计划驱动的引擎调度法完成工作流的任务调度,并通过客户端应用接口112和监视、控制接口113完成与客户应用程序的交互。此处的引擎调度法是指引擎当进度计划时间到达时使工作流开始运行,并在满足单元任务(节点)紧前、紧后逻辑关系和时间约束时将单元任务(节点)推给执行者。关于该引擎调度法的具体内容,后文中还有详细的说明。
计划部署模块103完成计划模板的选择、调整和确定项目开始时间并生成可执行的项目进度计划。工作流任务生成器108解析计划和单元任务以生成流程定义文件。流程定义文件提交流程引擎107以实现工作流的运行、控制。
本发明所实现的项目过程工作流由进度计划驱动。进度计划由计划模板生成。计划模板是一个通过XML文件格式描述的未确定项目开始时间和管理人员的计划,在数据库中可以存储、修改和重复使用。它表示项目中的各项工作、工序的开展顺序、开始及完成时间及相互衔接关系。计划模板的编制依据于网络计划技术的理论和方法(包括CPM及PERT方法及由节点、箭线和线路组成的网络图)。计划模板采用单元任务作为进度计划的任务,由流程设计器创建、修改。计划模板可由已执行或正在执行的进度计划生成。
在项目执行过程中,可以随时通过修改计划来调整项目过程工作流。可修改的内容包括单元任务的名称、单元工作的名称、关联关系、工期、开始时间、单元任务和单元工作的增减等。
针对现有工作流系统存在“不可编辑性”,不适应在项目过程中运行的缺陷,本发明的特点在于由计划模板依据每一个具体的项目过程生成进度计划、进度计划驱动工作流,在执行过程中对进度计划进行修改,从而实现流程执行过程中的流程调整。在实施过程中,采用了用项目的计划模板来生成工作流,将项目工作包装成单元任务和满足计划驱动的引擎调度等多种技术手段。下面分别展开详细的说明。
在通过流程设计器进行计划模板部署及进度计划生成的过程中,本发明采用Microsoft Project软件作为生成和编辑计划模板及生成进度计划的工具,通过Microsoft Project软件的CPM方法以及各种视图完成项目过程的时间安排和工期优化。
用Microsoft Project软件创建和编辑的计划模板、项目计划有以下特征:
1)第一个任务是这个项目过程的摘要;
2)每个项目过程中必须有“项目开始”、“项目结束”里程碑;
3)单元任务显示为一个摘要,摘要中是单元工作。单元任务中不能有其它摘要;
4)单元任务至少有一个前置任务和一个后置任务。
在实施满足计划驱动的引擎调度法之前,需要对节点的状态进行判断。下面介绍一些典型的节点状态判断步骤(简记为S0):
1)检测节点的状态
通过对节点的判断单元进行循环检测得到项目过程的当前状态。
●前置任务完成检测
根据节点判断单元中前置任务的完成检测条件属性通过客户端应用接口112检测任务的完成情况,如果已完成则记录前置任务的完成时间。
●节点延误检测
已完成节点
节点延误时间=完成时间-计划完成时间
未完成节点
节点延误时间=当前时间-计划完成时间
●自由时差检测
自由时差=所有前置任务中计算了节点延误时间后最晚的完成时间-节点计划开始时间
2)判断节点的开始条件
●开始时间限制类型为越早越好
判断条件为:所有前置任务都完成
●开始时间限制类型为越晚越好
判断条件为:所有前置任务都完成,且最后一个前置任务完成时间+自由时差>当前时间
●开始时间限制类型为不得早于
判断条件为:(所有前置任务都完成0R上级节点已经开始)AND计划开始时间>当前时间
3)判断节点异常
●节点开始时间延误
已开始节点时间延误=当前时间-实际开始时间
未开始节点时间延误=当前时间-计划开始时间
●节点完成时间延误
已完成节点时间延误=当前时间-实际完成时间
未完成节点时间延误=当前时间-计划完成时间
●工作流可能的延误时间
在自由时差为0的节点中选取一条路由,确定其中最后一个已完成节点为n;
工作流可能的延误时间=节点n的完成时间-下一节点计划开始时间
4)保存检测、判断结果
用检测到和判断的结果改变节点的当前状态
参见图2所示,将项目工作包装成单元任务的基本步骤(简记为S1)如下:
1)先分解工作流运行单位提供的项目管理规范、规章制度,将所有在项目管理过程中要完成的工作以及固有的属性生成一个数据表。
2)在任务部署模块101的界面中给每个项目工作赋予组织单元和角色属性。
3)依据组织单元和角色对单元工作进行整理、分类,按照项目的特点对工作进行组合后即生成单元工作。项目特点是指单元工作在项目过程中有明确的交付物或明确的目的,可以指定工期,有确定的开始条件和完成条件。
4)在任务部署模块界面确定单元任务名称,进行完整性审核,确定单元工作的工作内容和完成检测条件,并将单元任务(或单元工作)保存到单元任务数据库118。
在具体实施时,将单元任务以XML格式输入Microsoft Project软件115中,以便执行和管理该单元任务。以下显示了单元任务的XML文件格式的一个示例。
Figure GSB00000743282300101
单元任务作为进度计划中的任务,具有网络计划技术中任务的所有属性。所有与任务开始有关的属性分布在相关联的其它任务中。一个任务的开始取决于前置任务。任务开始时间还与计划开始时间、自由时差、任务限制类型有关系。在单元任务中的单元工作可能无前置任务。
为了使进度计划能驱动项目过程工作流,本发明采用了为每个单元任务(或单元工作)附加判断单元的方法。
判断单元有以下特征:
1)如图3所示,判断单元与单元任务和单元工作一一对应。
2)在判断单元属性表包含了任务、工作开始条件的逻辑关系组合。表1为判断单元属性表的一个示例。节点的当前状态也保存在该判断单元属性表中。
Figure GSB00000743282300111
表1
3)包含了确定前置任务完成的检测数据。前置任务中的唯一ID指定了一个任务或工作,完成检测条件为引擎提供检测算法和比较值。
为每个单元任务(或单元工作)附加判断单元的具体实施步骤(简记为S2)如下:
1)工作流任务生成器108得到计划编辑模块105提交的项目进度计划后在引擎数据库114中创建项目的工作流定义表,解析进度计划的过程中将任务相互衔接的关系和工序的开展顺序转换为工作流的节点关联关系,并将计划中任务的名称、资源、开始时间、完成时间等属性直接引入到项目工作流定义表;
2)在引擎数据库创建项目判断单元表,并使判断单元数据与工作流定义表对应;
3)为判断单元添加属性的过程是对计划中任务属性进行归类、提取、计算的过程。其中前置任务的数量取决与计划的关联关系,完成检测条件在单元任务数据库118中提取,自由时差=前置任务计划完成时间-后置任务计划完成时间-任务计划工期;
4)判断单元属性确定后工作流任务生成器将项目过程工作流的定义数据提交给流程设置109模块,流程设置模块在引擎数据库中生成任务列表后工作流进入待运行状态。
在流程引擎107中,单元任务和单元工作都作为节点进行处理。任务完成检测模块111、任务执行模块110依据引擎数据库114中的工作流定义表、判断单元表、任务列表完成对节点的调度。
在本发明中,对节点的调度是通过满足计划驱动的引擎调度法实现的。该引擎调度法包括如下的步骤:
1)动态判断项目过程的当前状态
在前述附加判断单元的方法中创建的判断单元包含了计划中静态的任务、工作开始条件。任务完成检测模块111被触发后,通过对判断单元的循环检测动态判断项目过程的当前状态,包括对每个任务、工作所有前置任务的实际完成情况进行检测,并将检测结果写入判断单元的前置任务属性表,和通过检测结果计算实际自由时差。
2)对每个节点分别采用不同的状态检测方法
工作表单作为描述计划任务、工作实质内容的信息形式被单元工作携带,单元工作的完成与否由工作表单的完成情况决定。在进行单元任务包装时设置了工作的完成检测条件。在进行单元工作完成检测时,任务完成检测模块111按照每个工作的完成检测条件通过客户端应用接口112完成工作表单的检测。
3)依据任务开始时间限制类型确定节点的开始条件
任务执行模块110被触发后,依据判断单元的状态进行节点的调度。计划中单元任务、工作节点的开始条件与该节点的开始时间限制类型有关,不同的限制类型有不同的开始条件算法。流程引擎中的任务执行模块110依据计算结果调整任务、工作的当前状态,并通过客户端应用接口112实现与客户应用程序的交互,并在满足计划的单元任务(即节点)紧前、紧后逻辑关系和时间约束时将单元任务(即节点)推给执行者。
本项目过程工作流系统采用项目的进度计划来定义项目过程,从计划中提取由单元任务组成的项目过程,通过语意、逻辑关系转换、驱动关系的转换解决进度驱动工作流的技术问题。进行工作流定义时需要完成单元任务、工作的提取,并将计划中的项目过程转换成如下所示的“工作流定义表”数据结构,通过节点属性和节点间相互关系描述工作流。其中,多前置任务等同于工作流的并行节点,多后置任务等同于工作流的发散节点。
<项目名称>
<流程名称
<运行的系统
<项目开始
-<单元任务1>
--<名称>
--<计划开始时间>
 --<计划完成时间>
 --<单元名称>
--<负责人员>
--<开始时间限制类型>
--<前置任务>
--<关键路径>
  ---<单元工作1>
  ----<名称>
  ----<计划开始时间>
----<计划完成时间>
----<开始时间限制类型>
  ----<前置任务>
  ----<表单模板>
  ----<完成检测方式>
----<完成后处理>
---<单元工作2>
---<单元工作3>
-<单元任务2>
-<单元任务3>
<项目结束>
在流程引擎107中,单元任务和单元工作都作为节点进行处理。任务完成检测模块111、任务执行模块110依据引擎数据库114中的工作流定义表、判断单元表、任务列表完成对节点的调度。
下面结合图4所示,介绍启动流程设计器102设置新的计划模板的基本步骤(简记为S3)。该步骤包括:
S31:创建流程
启动系统的流程设计器102,在流程设计器中创建一个新的流程,或打开一个已有的计划模板,对正在执行的计划进行流程调整。
S32:编辑单元任务
在流程设计器中查找到已经定义好的单元任务,通过图形化操作为流程设置单元任务。对布置到流程中的单元任务进行编辑,包括更改单元任务(或单元工作)的名称,删除不需要的单元任务(或单元工作),增加新的单元任务(或单元工作)。
S33:创建新的单元任务
如果现有的单元任务不能满足要求,就按S1所示的步骤创建新的单元任务。
S34:调整工序
按照单元任务的工序关系和完成的先后顺序确定单元任务的关联关系。
S35:生成计划模板
将完成的流程提交给Microsoft Project进行关联合理性检查,以便正确生成计划模板,并保存到计划模板数据库。
图5显示了启动计划部署模块103部署项目的工作流的基本步骤(简记为S4)。该步骤包括:
S41:选择计划模板
分析项目的管理需求,启动计划生成模块104在计划模板库中选择合适的模板。
S41:创建新计划模板
如果没有合适的计划模板就按S3所示的步骤创建新的计划模板。
S42:设置单元工作工序、工期
计划生成模块调用选中的计划模板,用Microsoft Project软件115的界面打开计划模板,在Microsoft Project软件中确定单元工作的工期和工序关系。Microsoft Project界面通过计划编辑模块105获取单元任务数据库118和资源数据库116中的数据,支持S42~S45步骤的调整。
S43:设置单元任务工期
依据实际工期要求及单元任务工期要求调整单元任务的工期。
S44:工期优化
审核项目整体工期,检查关键路径,进行工期的优化和调整。
S45:资源调整
每个单元任务的资源配置为组织单元和角色的交集,在这个交集中确定资源。
S46:提交计划
Microsoft Project软件生成计划XML文档,并由计划编辑模块提交给流程引擎107。
下面介绍生成和修改工作流任务的基本过程。
●创建新计划
工作流任务生成器108接收到提交的新计划后进行计划的转换。按前述S2的步骤解析处理计划,并使项目过程工作流进入待运行状态。
●修改已经在运行的计划
可以按前述S3和S4的步骤完成计划模板和计划的修改,也可直接按S4的步骤进行计划修改。具体的修改步骤(简记为S5)如下:
S51:工作流任务生成器108接收到提交的修改计划后备份工作流定义表、判断单元表。
S52:创建工作流定义表、判断单元表
按步骤S2中的步骤1~3生成新的工作流定义表、判断单元表。
S53:修改任务列表
保留任务列表中已经完成和已经开始的节点,按工作流定义表更新任务列表中未开始的节点
S54:完成计划修改
按步骤S2中的步骤4使修改后的计划进入待运行状态。
在流程引擎107中有一个定时器,到了设定的时间流程引擎开始运行,从而使整个工作流开始运行。图6显示了工作流运行的基本步骤(简记为S6),该步骤包括如下的内容:
S61:选定项目过程
进入待运行状态的工作流循环,逐个处理待运行的项目过程。
S62:确定当前状态
利用步骤S0完成工作流当前状态的检测和判断。
S63:节点工作内容处理
对已经满足开始条件的节点,根据单元任务中部署的表单的类型和处理方法,通过调用客户端应用接口112提交给客户应用程序120处理。包括创建新的表单、确认已创建的表单,确定节点工作内容后节点为可开始节点。
S64:执行
将已开始的节点通过客户端应用接口112提交给客户应用程序120,将异常情况通过客户端应用接口112通知指定人员。
以上对本发明所述的基于计划模板的项目过程工作流系统及其实现方法进行了详细的说明。对本领域的一般技术人员而言,在不背离本发明实质精神的前提下对它所做的任何显而易见的改动,都将构成对本发明专利权的侵犯,将承担相应的法律责任。

Claims (9)

1.一种基于计划模板的项目过程工作流系统,由计划模板生成在执行过程中可修改的进度计划,所述进度计划用于驱动项目过程工作流,其特征在于:
所述项目过程工作流系统包括任务部署模块、计划部署模块、流程引擎、流程设计器、工作分解模块、资源数据库、单元任务数据库、计划模板数据库和客户应用程序;
所述计划部署模块包括计划生成模块和计划编辑模块;所述流程引擎包括工作流任务生成器、流程设置模块、客户端应用接口、监视控制接口、任务完成检测模块和任务执行模块,还包括引擎数据库;
所述计划编辑模块连接所述工作流任务生成器,所述任务部署模块分别与所述工作分解模块、所述资源数据库、所述单元任务数据库、所述计划模板数据库和所述客户应用程序相连接,所述资源数据库与所述计划编辑模块也进行连接,所述单元任务数据库同时连接所述计划编辑模块、所述工作流任务生成器和所述流程设计器,所述计划模板数据库连接所述计划生成模块和所述流程设计器,所述客户应用程序同时连接所述客户端应用接口和所述监视控制接口;
所述任务部署模块将项目工作包装成单元任务,所述工作流任务生成器为每个单元任务附加判断单元,所述流程引擎用于实现满足计划驱动的引擎调度,所述流程设计器产生所述计划模板,所述工作流任务生成器用于修改所述进度计划。
2.如权利要求1所述的项目过程工作流系统,其特征在于:
所述项目过程工作流系统以所述计划生成模块、计划编辑模块和流程设计器为接口连接Microsoft Project软件。
3.如权利要求1所述的项目过程工作流系统,其特征在于:
所述计划模板保存在计划模板数据库中,并以XML文件形式输出。
4.如权利要求1所述的项目过程工作流系统,其特征在于:
所述任务完成检测模块和任务执行模块依据满足计划驱动的引擎调度法完成工作流的任务调度,并通过客户端应用接口和监视控制接口实现与客户应用程序的交互。
5.一种用于实现如权利要求1所述项目过程工作流系统的方法,用于将项目工作包装成单元任务,其特征在于:
1)分解工作流运行单位提供的项目管理规范,将所有在项目管理过程中要完成的工作以及固有的属性生成一个数据表;
2)在任务部署模块的界面中给每个项目工作赋予组织单元和角色属性;
3)依据组织单元和角色对单元工作进行整理、分类,按照项目的特点对工作进行组合后,生成单元任务;
4)在任务部署模块的界面确定单元任务名称,进行完整性审核,确定单元工作的工作内容和完成检测条件,并将单元任务保存到单元任务数据库。
6.一种用于实现如权利要求1所述项目过程工作流系统的方法,用于实现为每个单元任务附加判断单元,其特征在于:
1)工作流任务生成器得到计划编辑模块提交的项目进度计划,在引擎数据库中创建项目的工作流定义表,将任务相互衔接的关系和工序的开展顺序转换为工作流的节点关联关系,并将计划中任务的名称、资源、开始时间、完成时间属性引入到项目工作流定义表;
2)在引擎数据库创建项目判断单元表,并使判断单元数据与工作流定义表对应;
3)对计划中任务属性进行归类、提取、计算,从而为判断单元添加属性;
4)判断单元属性确定后,工作流任务生成器将项目过程工作流的定义数据提交给流程设置模块,流程设置模块在引擎数据库中生成任务列表后工作流进入待运行状态。
7.一种用于实现如权利要求1所述项目过程工作流系统的方法,用于实现满足计划驱动的引擎调度,其特征在于:
1)流程引擎中的任务完成检测模块被触发后,通过对判断单元的循环检测动态判断项目过程的当前状态,并将检测结果写入判断单元的前置任务属性表,通过检测结果计算实际自由时差;
2)在进行单元工作完成检测时,所述任务完成检测模块按照每个工作的完成检测条件通过客户端应用接口完成工作表单的检测;
3)当进度计划时间到达时,所述流程引擎使项目过程工作流开始运行,并在满足计划的单元任务紧前、紧后逻辑关系和时间约束时将单元任务推给执行者。
8.一种用于实现如权利要求1所述项目过程工作流系统的方法,用于产生新的计划模板,其特征在于:
1)启动流程设计器,在所述流程设计器中创建一个新的流程;
2)在流程设计器中查找到已经定义好的单元任务,为流程设置单元任务,如果现有的单元任务不能满足要求,则创建新的单元任务;
3)按照单元任务的工序关系和完成的先后顺序确定单元任务的关联关系;
4)将完成的流程提交给Microsoft Project软件进行关联合理性检查,以产生正确的计划模板,并将所述计划模板保存到计划模板数据库。
9.一种用于实现如权利要求1所述项目过程工作流系统的方法,用于修改已经在运行的进度计划,其特征在于:
1)工作流任务生成器接收到提交的修改计划后,备份工作流定义表、判断单元表;
2)创建新的工作流定义表、判断单元表;将任务相互衔接的关系和工序的开展顺序转换为工作流的节点关联关系,并将计划中任务的名称、资源、开始时间、完成时间属性引入到项目工作流定义表中;判断单元数据与工作流定义表对应;
3)保留任务列表中已经完成和已经开始的节点,按工作流定义表更新任务列表中未开始的节点;
4)使修改后的进度计划进入待运行状态。
CN2008101059990A 2008-05-06 2008-05-06 基于计划模板的项目过程工作流系统及其实现方法 Expired - Fee Related CN101266669B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101059990A CN101266669B (zh) 2008-05-06 2008-05-06 基于计划模板的项目过程工作流系统及其实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101059990A CN101266669B (zh) 2008-05-06 2008-05-06 基于计划模板的项目过程工作流系统及其实现方法

Publications (2)

Publication Number Publication Date
CN101266669A CN101266669A (zh) 2008-09-17
CN101266669B true CN101266669B (zh) 2013-08-21

Family

ID=39989069

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101059990A Expired - Fee Related CN101266669B (zh) 2008-05-06 2008-05-06 基于计划模板的项目过程工作流系统及其实现方法

Country Status (1)

Country Link
CN (1) CN101266669B (zh)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102467411B (zh) * 2010-11-19 2013-11-27 金蝶软件(中国)有限公司 一种工作流处理方法、装置和控制引擎
CN102567829A (zh) * 2010-12-22 2012-07-11 海洋王照明科技股份有限公司 一种任务管理的方法及系统
CN103150620A (zh) * 2011-12-07 2013-06-12 徐翔 项目分解处理方法及系统
CN103377411A (zh) * 2012-04-27 2013-10-30 国际商业机器公司 用于生成wbs模型数据的方法和系统
CN103019749A (zh) * 2013-01-17 2013-04-03 力合科技(湖南)股份有限公司 一种流程编写方法及流程编写器
CN103353957A (zh) * 2013-06-19 2013-10-16 浙江中烟工业有限责任公司 一种以人为中心的协同型工作流系统实现方法和装置
CN103679400B (zh) * 2013-12-31 2017-12-12 金蝶软件(中国)有限公司 地铁图展示项目进度的方法和系统
CN104021460B (zh) * 2014-06-27 2018-07-10 北京太格时代自动化系统设备有限公司 一种工作流程管理系统及工作流程处理方法
CN104517186A (zh) * 2014-12-23 2015-04-15 浙江大学 一种基于数据驱动的业务流程设计方法
CN104750522B (zh) * 2015-03-12 2018-01-05 用友网络科技股份有限公司 任务或流程的动态执行方法和系统
US20160314439A1 (en) * 2015-04-22 2016-10-27 Aktiebolaget Skf Work package management
CN106156939B (zh) * 2015-04-27 2021-02-09 上海宝信软件股份有限公司 基于作业流的分布式调度系统及应用方法
US10410151B2 (en) * 2015-05-18 2019-09-10 Accenture Global Services Limited Strategic decision support model for supply chain
CN105045580A (zh) * 2015-06-30 2015-11-11 广州支点网络科技有限公司 一种复合行为驱动方法及装置
CN105719126B (zh) * 2016-01-22 2019-12-10 上海晶赞科技发展有限公司 一种基于生命周期模型的互联网大数据任务调度的系统及方法
EP3437046A1 (en) * 2016-03-30 2019-02-06 Hexagon Technology Center GmbH Configuration management system for large-scale capital projects
CN106408180A (zh) * 2016-09-06 2017-02-15 北京恒华伟业科技股份有限公司 一种业务流程的拼接方法和系统
CN108615136B (zh) * 2016-12-13 2022-04-19 中国地质调查局发展研究中心 任务流程控制方法及系统
CN107153944A (zh) * 2017-02-22 2017-09-12 上海爱韦讯信息技术有限公司 基于流程驱动研发任务的方法及系统
CN108520361A (zh) * 2018-04-10 2018-09-11 万翼科技有限公司 工序任务管理方法、装置及计算机可读存储介质
CN108985647B (zh) * 2018-07-27 2022-03-11 广船国际有限公司 一种项目计划的执行方法、装置、设备和存储介质
CN109389299B (zh) * 2018-09-26 2023-10-31 中国平安人寿保险股份有限公司 工作流流程部署方法、装置、计算机设备和存储介质
CN109885366A (zh) * 2019-01-28 2019-06-14 南京创世德意信息技术有限公司 一种计划的视图展示方法及智能终端
CN109858801A (zh) * 2019-01-28 2019-06-07 南京创世德意信息技术有限公司 一种任务计划的同步展示方法及智能终端
CN112580915A (zh) * 2019-09-30 2021-03-30 北京国双科技有限公司 一种项目里程碑确定方法、装置、存储介质及电子设备
CN113128942A (zh) * 2019-12-30 2021-07-16 北京国双科技有限公司 可视化的工作流程处理方法及装置
CN111798083B (zh) * 2020-05-11 2024-04-12 石化盈科信息技术有限责任公司 一种生产调度监控系统、方法及存储介质
CN111553545B (zh) * 2020-07-13 2020-10-27 四川新网银行股份有限公司 一种优化批量任务调度依赖的方法
CN112884455A (zh) * 2021-03-26 2021-06-01 中车青岛四方机车车辆股份有限公司 任务计划处理系统、方法和装置
CN113537954B (zh) * 2021-09-17 2022-01-18 天津中新智冠信息技术有限公司 一种项目里程碑的处理方法、装置、存储介质及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101071480A (zh) * 2007-06-15 2007-11-14 南京联创科技股份有限公司 复杂业务系统中基于工作流的通用构件化流程调度方法
CN101110022A (zh) * 2007-08-30 2008-01-23 济南卓信智能科技有限公司 一种工作流模型的软件实现方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101071480A (zh) * 2007-06-15 2007-11-14 南京联创科技股份有限公司 复杂业务系统中基于工作流的通用构件化流程调度方法
CN101110022A (zh) * 2007-08-30 2008-01-23 济南卓信智能科技有限公司 一种工作流模型的软件实现方法

Also Published As

Publication number Publication date
CN101266669A (zh) 2008-09-17

Similar Documents

Publication Publication Date Title
CN101266669B (zh) 基于计划模板的项目过程工作流系统及其实现方法
CN110503325B (zh) 一种基于建筑信息模型的施工进度资源自动优化方法
CN101617292B (zh) 面向生成器图的编程和执行
Kneuper Sixty years of software development life cycle models
US20060293939A1 (en) Design managing means, design tool and method for work breakdown structure
CN101256492A (zh) 一种进行模型驱动架构的软件开发方法及其系统
CN102356370A (zh) 用于从基于模式的中间描述来生成控制系统数据库和图形的系统和方法
CN1674025A (zh) 计划操作管理支持系统,以及计划操作管理支持程序
CN101819529A (zh) 用于实现工作流任务界面可视化开发的系统和方法
CN108764610A (zh) 基于大数据的标准工艺工程项目施工管理方法、存储介质
Gabrel et al. Optimal and automatic transactional web service composition with dependency graph and 0-1 linear programming
Iglesias et al. Product line engineering of monitoring functionality in industrial cyber-physical systems: a domain analysis
US20090199079A1 (en) Embedded cues to facilitate application development
US7657410B2 (en) Process simulation system
CN103995699A (zh) 基于mda的电力企业信息系统开发方法
Kalinowski et al. Preparatory stages of the production scheduling of complex and multivariant products structures
US6058334A (en) Apparatus and method for designing and performing a process such as a manufacturing process
CN113407161B (zh) 一种面向复杂装备进行协同研发管理系统
Sun et al. A simulation‐based integrated virtual testbed for dynamic optimization in smart manufacturing systems
CN114168438A (zh) 通过低代码方式实现的可视化运维操控编排方法及系统
Katara et al. Aspect-oriented specification architectures for distributed real-time systems
CN112884455A (zh) 任务计划处理系统、方法和装置
CN110309987A (zh) 海量文档分块分发编辑协同处理的优化工作方法
CN111222793A (zh) 一种数据交互方法和系统
CN101794417A (zh) 基于序号的工作流调度和业务流程建模方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160418

Address after: Yan Qiao No. 89 building, 510507 Guangdong city of Guangzhou province Tianhe District Yanling road 1013, room 1014

Patentee after: Li Qian

Patentee after: Li Kai

Address before: Yan Qiao No. 89 building, 510507 Guangdong city of Guangzhou province Tianhe District Yanling road 1013, room 1014

Patentee before: Guangzhou Zhonglian Chuangtong Computer Co., Ltd.

Patentee before: Li Qian

Patentee before: Li Kai

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130821

Termination date: 20200506

CF01 Termination of patent right due to non-payment of annual fee