Download presentation
Presentation is loading. Please wait.
Published bySharyl Franklin Modified over 6 years ago
1
Knowledge Management using Business Process Modelling and Workflow Techniques
MSc in Artificial Intelligence Student: Hsiang-Ling Kuo Supervisor: Jessica Chen-Burger Dave Robertson 17 November 2018
2
Outline Problem & Solution Aim Work Conclusion Future Work
17 November 2018
3
Problem Business are becoming larger and more diverse, the operation is more complex than before Information technology is widely applied in business operations, it still lacks a precise way of communicating between business model and software system development. The “gap” between Enterprise Models (EM) and Software Systems 17 November 2018
4
Bridging The Gap between EM and Software Systems
Enterprise Models (EM) Software System Development Business Model Relational DBMS Workflow System Business Process Model Automating BPM OO DBMS Organisational Model Other Software Systems Mapping of Data Structure + Concepts Ontology UML Class Diagram Capability Model Quality Assurance Data Model 17 November 2018
5
Solutions Make use of one type of EM method: Business Process Modelling (BPM) Method to bridge the gap Build a workflow system (WFS) based on a business process model 17 November 2018
6
Aim Design a formal representation (called FBPML WorkFlow Language “FWFL”) that has a direct mapping to FBPML Design and implement a generic workflow system that is domain independent and has a direct mapping to FBPML + FWFL and its execution logic, but is open in its implementation details to allow multiple variations according to context Design a three-level framework to analyse the business process model 17 November 2018
7
Work Review standard process modelling languages, IDEF3 and PSL, then introduce a business process modelling language “FBPML” resulting from their merger Create a formal representation and define a workflow language called “FWFL” based on “FBPML” Design and implement a workflow engine based on FWFL and demonstrate it using case studies 17 November 2018
8
Work (Cont.) Describe a three-level framework to verify and analyse the business process Discuss the complexity of business process models is discussed The comparison between FBPML + FWFL, the application of Petri-Nets to workflow management and the research work done in the University of Queensland 17 November 2018
9
Review IDEF3 PSL (Process Specification Language)
A process flow and object state description capture method A domain expert can express knowledge about the operation of a particular system or organization A well-throughout graphic notation PSL (Process Specification Language) An interchange language with which allows applications to exchange discrete process data Facilitates the communication between those applications by using PSL-based translators A well-defined ontology and formal semantics 17 November 2018
10
Fundamental Business Process Modelling Language (FBPML)
A visual modelling language that is a merger of IDEF3 and PSL It can support software and workflow system development The notation of FBPML Three types of nodes: Main Node, Junction and Annotation 17 November 2018
11
FBPML--Main Nodes and Junction Types
Source: Chen-Burger (AKT project) 17 November 2018
12
The semantics of four types of junctions
17 November 2018
13
A Business Model example using FBPML
Adapted form AKT project 17 November 2018
14
FBPML WorkFlow Language -- FWFL
A workflow language which is directly mapped to FBPML 17 November 2018
15
The Definition of FWFL-- process
process(ProcessId, ProcessName, Pstate, TrigCond, PreCond, Action) Example 1: process(a, receiveCustomerReq, Pstate, [exist(event_occ(EventId,custom_req_for_pc_spec,created, attribute(Attr)))], [true], [create_entity(attribute(Attr))]). Example 2: process(b, autoCreateOrderNumber, Pstate, [exist(data([customer-name/NameV,customer-tel/telV])), delay_time(4)], [add_attribute(attribute([solution([customer- orderNo/OrderNoV])]))]). 17 November 2018
16
The Definition of FWFL-- instance
instance(InstanceId, InstanceName, Istate, TrigCond, PreCond, Action, BeginT/EndT) Example 3: (The instance of example 2) instance(b-i-'John',autoCreateOrderNumber,Istate, [true], [exist(data([customer-name/'John',customer-tel/' ])), delay_time(4)], [add_attribute(attribute([solution([customer-orderNo/'001'])]))]), 1/2). 17 November 2018
17
The Definition of FWFL -- entity
entity(EntityName, EntityId, EntityState, EntityAttribute) Example 4: entity_occ(ioBoard, io2, valid, attribute([ioBoard-type/io2, ioBoard-slot/4, ioBoard-length/long, ioBoard-capability/(normal-graphics-long)])) 17 November 2018
18
The Definition of FWFL -- Junction and Model
junc(ModelId, JunctionType, PreProcesses, PostProcesses) Example 5: junc(m1,start,[],[a]). junc(m1,link,[a],[b]). junc(m1,or_split,[b],[c,d,e,f,g]). junc(m1,and_joint,[c,d,e,f,g],[h]). junc(m1,end,[h],[]). 17 November 2018
19
FWFL Workflow system Architecture
17 November 2018
20
FWFL Workflow System Flowchart
17 November 2018
21
Workflow Meta-Interpreter
*** Top level **** execute(Step):- initial_state(flow_state(FState,T)), execute_flow([initial],[],1,Step,T,flow_state(FState,T)). *** main predicate *** % BaseCase: Compare "StepSofar" and termination "Step" which is given from the user. If Step = 'User define' then exit flow. execute_flow(MState,ProcessAgenda,StepSofar,Step,T,flow_state(FState,T)) :- Step is StepSofar - 1. % Another baseCase: at the end of each Model State and ProcessAgenda=[] then exit flow. execute_flow(MState,[],StepSofar,Step,T,flow_state(FState,T)): check_mstate(MState). 17 November 2018
22
Workflow Meta-Interpreter
% Case1: When there are new events, create instances of the business process model. execute_flow(MState,ProcessAgenda,StepSofar,Step,T,flow_state(FState,T)):- check_event(MState,NewMState), execute_flow(NewMState,ProcessAgenda,StepSofar,Step,T,flow_state(FState,T)). % Case2: When there are no new events, execute the junctions for the instances of the business process model. \+ check_event(MState,_NewMState), do_junction_process(MState,[],NewMState,ProcessAgenda, NewProAgenda,FState,T), execute_process(NewProAgenda,NewProAgenda,NewProAgenda1,FState,NFs,T), update_time(T,NewT), update_step(StepSofar,NewStep), execute_flow(NewMState,NewProAgenda1,NewStep,Step,NewT, flow_state(NFs,NewT)). 17 November 2018
23
Workflow Meta-Interpreter
% Case3: When there are no new events and execution failure of the junctions for the instances of the business process model. execute_flow(MState,ProcessAgenda,StepSofar,Step,T,flow_state(FState,T)):- \+ check_event(MState,NewMState), \+ do_junction_process(MState,[],NewMState,ProcessAgenda, NewProAgenda,FState,T), execute_process(ProcessAgenda,ProcessAgenda,NewProAgenda,FState,NFs,T), update_time(T,NewT), update_step(StepSofar,NewStep), execute_flow(MState,NewProAgenda,NewStep,Step,NewT,flow_state(NFs,NewT)). 17 November 2018
24
State Transaction Diagram
17 November 2018
25
Three-level Framework
17 November 2018
26
Model Behavior Level Considers the overall model behavior to find the appropriate topology for the BPM Carries out the syntactic critiques 17 November 2018
27
Syntactic Critiques 17 November 2018
28
Detailed Model Testing Level
Captures the topology features from level 1, eliminates impossible execution sequences Carries out the semantic critiques 17 November 2018
29
Semantic Critiques 17 November 2018
30
Instantiation of Business Scenario Level
Executes the business process model using business scenarios (entity data) in a particular domain and attempts to validate the model 17 November 2018
31
Complexity of a Single Model
17 November 2018
32
Results of Complexity The “Or_split” and “Or_Joint” have the greatest influence on the complexity The complexity of a business process model has at least the factorial rate of growth. It is impossible to carry out all the possible execution results 17 November 2018
33
Complexity of Combined Models
A model finishing with an And_Joint junction A model finishing with an Or_Joint junction 17 November 2018
34
A model finishing with an And_Joint junction
The possible execution sequence 2! * 3! = 12 17 November 2018
35
A model finishing with an Or_Joint junction
Assumption: all the triggered processes must be finished before the final process of each connected model The complexity is O(n+m)! When m=0, it represents the complexity of the “And-Or” model 17 November 2018
36
Conclusions Because the formal semantics and graphic notation of FBPML and the formal representation of FWFL which is directly mapping to FBPML, a business process may be easily defined and executed through a simple procedure The workflow meta-interpreter is based on FBPML + FWFL, it accepts the input specifications and execute the business process model directly 17 November 2018
37
Conclusions (Cont.) The three level-framework provides a thorough test, which is useful when analysing a business process model The complexity of a business process model has at least the factorial rate of growth. It is impossible to carry out all the possible execution results 17 November 2018
38
Future Work The FWFL workflow language should be enhanced, especially focusing on the formal specification of the communication issues The priority issue among processes and “Role” concept should be involved in the FWFL workflow engine More clear definition of validation and verification in a business process model 17 November 2018
39
Future Work (cont.) Consider the decomposition and iteration of the business process A graphic user interface may be integrated into FWFL Resources management may be considered as part of the workflow system 17 November 2018
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.