MSc in Artificial Intelligence Student: Hsiang-Ling Kuo

Slides:



Advertisements
Similar presentations
2009 – E. Félix Security DSL Toward model-based security engineering: developing a security analysis DSML Véronique Normand, Edith Félix, Thales Research.
Advertisements

Database Systems: Design, Implementation, and Management Tenth Edition
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Software Testing and Quality Assurance
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
CS 425/625 Software Engineering System Models
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Course Instructor: Aisha Azeem
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Mapping Fundamental Business Process Modelling Language to the Web Services Ontology Gayathri Nadarajan and Yun-Heh Chen-Burger Centre for Intelligent.
Object-Oriented Analysis and Design
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
USE Case Model.
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
1 An Analytical Evaluation of BPMN Using a Semiotic Quality Framework Terje Wahl & Guttorm Sindre NTNU, Norway Terje Wahl, 14. June 2005.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
Business Analysis and Essential Competencies
Knowledge representation
1 MFI-5: Metamodel for Process models registration HE Keqing, WANG Chong State Key Lab. Of Software Engineering, Wuhan University
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
1 Sobah Abbas Petersen Adjunct Associate Professor TDT4252 Modelling of Information Systems Advanced Course Lecture 6: Process Modelling.
© DATAMAT S.p.A. – Giuseppe Avellino, Stefano Beco, Barbara Cantalupo, Andrea Cavallini A Semantic Workflow Authoring Tool for Programming Grids.
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Methodology - Conceptual Database Design
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
1 Representing New Voice Services and Their Features Ken Turner University of Stirling 11th June 2003.
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
1 Centre for Intelligent Systems and their Applications Division of Informatics, University of Edinburgh Draft for AKT July Workshop Jessica Chen-Burger.
Requirements Analysis
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
1 CEN 4020 Software Engineering PPT4: Requirement analysis.
Jessica Chen-Burger Aberdeen/Edinburgh AKT TIE Distributed Knowledge-based Manipulation and Collaboration Jessica Chen-Burger AIAI, University of Edinburgh.
Model Checking Early Requirements Specifications in Tropos Presented by Chin-Yi Tsai.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
UNIT – II BUSINESS PROCESS MANAGEMENT
Database Systems: Design, Implementation, and Management Tenth Edition
Introduction to UML.
Systems Analysis and Design in a Changing World, Fourth Edition
Software Testing.
An Overview of Requirements Engineering Tools and Methodologies*
Software Engineering Lecture 4 System Modeling The Analysis Stage.
UML Diagrams By Daniel Damaris Novarianto S..
UNIT 1.
Evolution of UML.
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Chapter 2 Database System Concepts and Architecture
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
Object-Oriented Analysis and Design
SysML v2 Formalism: Requirements & Benefits
CV-1: Vision The overall vision for transformational endeavors, which provides a strategic context for the capabilities described and a high-level scope.
UML Diagrams Jung Woo.
Abstract descriptions of systems whose requirements are being analysed
Introduction to Computer Programming
Model-Driven Analysis Frameworks for Embedded Systems
CSc4730/6730 Scientific Visualization
BPMN - Business Process Modeling Notations
Chapter 5 Architectural Design.
Ontology-Based Approaches to Data Integration
Software Design Methodologies and Testing
Use Case Modeling Part of the unified modeling language (U M L)
Chapter 5 Architectural Design.
Graphical Modeling of INFOD applications
Software Development Process Using UML Recap
Presentation transcript:

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 sharlene.kuo@ed.ac.uk

Outline Problem & Solution Aim Work Conclusion Future Work 17 November 2018 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

FBPML--Main Nodes and Junction Types Source: Chen-Burger (AKT project) 17 November 2018 sharlene.kuo@ed.ac.uk

The semantics of four types of junctions 17 November 2018 sharlene.kuo@ed.ac.uk

A Business Model example using FBPML Adapted form AKT project 17 November 2018 sharlene.kuo@ed.ac.uk

FBPML WorkFlow Language -- FWFL A workflow language which is directly mapped to FBPML 17 November 2018 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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/'0131-5323241])), delay_time(4)], [add_attribute(attribute([solution([customer-orderNo/'001'])]))]), 1/2). 17 November 2018 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

FWFL Workflow system Architecture 17 November 2018 sharlene.kuo@ed.ac.uk

FWFL Workflow System Flowchart 17 November 2018 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

State Transaction Diagram 17 November 2018 sharlene.kuo@ed.ac.uk

Three-level Framework 17 November 2018 sharlene.kuo@ed.ac.uk

Model Behavior Level Considers the overall model behavior to find the appropriate topology for the BPM Carries out the syntactic critiques 17 November 2018 sharlene.kuo@ed.ac.uk

Syntactic Critiques 17 November 2018 sharlene.kuo@ed.ac.uk

Detailed Model Testing Level Captures the topology features from level 1, eliminates impossible execution sequences Carries out the semantic critiques 17 November 2018 sharlene.kuo@ed.ac.uk

Semantic Critiques 17 November 2018 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

Complexity of a Single Model 17 November 2018 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

Complexity of Combined Models A model finishing with an And_Joint junction A model finishing with an Or_Joint junction 17 November 2018 sharlene.kuo@ed.ac.uk

A model finishing with an And_Joint junction The possible execution sequence 2! * 3! = 12 17 November 2018 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk

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 sharlene.kuo@ed.ac.uk