Drools – Diabetes Phenotype Identification

Slides:



Advertisements
Similar presentations
Jenkins User Conference San Francisco, Sept #jenkinsconf Business Process Model & Notation (BPMN) Workflows in Jenkins Max Spring Cisco
Advertisements

Immunization Calculation Engine (ICE)
MODUL 1 Analisis & Informasi Proses Bisnis (CSA221)
Key-word Driven Automation Framework Shiva Kumar Soumya Dalvi May 25, 2007.
Production Rule Representation Team Response Presentation to BEIDTF OMG Montreal Aug 2004 Ruleml.org.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
Aligning Business Processes to SOA B. Ramamurthy 6/16/2015Page 1.
The Data Mining Visual Environment Motivation Major problems with existing DM systems They are based on non-extensible frameworks. They provide a non-uniform.
1 Classic ASP vs. ASP.NET Technical Information and Market Adoption Lance Welker University of San Diego Dr. Rebman MSIT 526 December 20, 2005.
Andreas Bauer, Viorica Botea, Mark Brown, Matt Gray, Daniel Harabor & John Slaney CP 2010, 522—536 Presented by Heath Roehr.
Understanding Metamodels. Outline Understanding metamodels Applying reference models Fundamental metamodel for describing software components Content.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
Describing Syntax and Semantics
The Role of Modeling in Systems Integration and Business Process Analysis © Sparx Systems Pty Ltd 2011 Ben Constable Sparx Systems.
Introduction to Rule-Based Systems, Expert Systems, Fuzzy Systems Introduction to Rule-Based Systems, Expert Systems, Fuzzy Systems (sections 2.7, 2.8,
Enterprise Workflow CPSC 476 Lightening Talk Brenda Griffith/Katie Soto.
Framework for Model Creation and Generation of Representations DDI Lifecycle Moving Forward.
Version Enterprise Architect Redefines Modeling in 2006 An Agile and Scalable modeling solution Provides Full Lifecycle.
Audumbar Chormale Advisor: Dr. Anupam Joshi M.S. Thesis Defense
Oakkar Fall The Need for Decision Engine Automate business processes Implement complex business decision logic Separation of rules and process Business.
Artezio LLC Address: 3G Gubkina Str., suite 504, Moscow, Russia, Phone: +7 (495) Fax: +7 (495)
Clinical Quality Language (CQL)
- Chaitanya Krishna Pappala Enterprise Architect- a tool for Business process modelling.
BUSINESS INTELLIGENCE/DATA INTEGRATION/ETL/INTEGRATION AN INTRODUCTION Presented by: Gautam Sinha.
IBM Proof of Technology Discovering the Value of SOA with WebSphere Process Integration © 2005 IBM Corporation SOA on your terms and our expertise WebSphere.
1 Developing Rules Driven Workflows in Windows Workflow Foundation Jurgen Willis COM318 Program Manager Microsoft Corporation.
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
SHARPn Data Normalization November 18, Data-driven Healthcare Big Data Knowledge Research Practice Analytics Domain Pragmatics Experts.
SOA, BPM, BPEL, jBPM.
Intelligent Workflow Management System(iWMS). Agenda Background Motivation Usage Potential application domains iWMS.
Initial slides for Layered Service Architecture
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
1 An Analytical Evaluation of BPMN Using a Semiotic Quality Framework Terje Wahl & Guttorm Sindre NTNU, Norway Terje Wahl, 14. June 2005.
Conceptual Modeling Issues in Web Applications enhanced with Web services Sara Comai, Politecnico di Milano In collaboration with:
February 3rd, 2010 KS BRMS. Discalaimer The GUI for the BRMS is currently not running, and was developed using a outdated framework so fixing is not an.
Integrating Business Process Models with Ontologies Peter De Baer, Pieter De Leenheer, Gang Zhao, Robert Meersman {Peter.De.Baer, Pieter.De.Leenheer,
National Institute of Standards and Technology Technology Administration U.S. Department of Commerce 1 Patient Care Devices Domain Test Effort Integrating.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Architectural Design l Establishing the overall structure of a software system.
School of Computer Science and Technology, Tianjin University
Auckland Connected Systems User Group November 19th 2009 Jeffrey Chilberto BizTalk Consultant
Reviewing Recent ICSE Proceedings For:.  Defining and Continuous Checking of Structural Program Dependencies  Automatic Inference of Structural Changes.
Ahmed M. Gamal, J2EE Mohamed Maaty, Information hp INTRODUCING JBPM.
Clinical Quality Language (CQL) Bryn Rhodes Chris Moesel Mark Kramer.
Abstract We present two Model Driven Engineering (MDE) tools, namely the Eclipse Modeling Framework (EMF) and Umple. We identify the structure and characteristic.
Systems Analysis and Design in a Changing World, 3rd Edition
L10 - April 12, 2006copyright Thomas Pole , all rights reserved 1 Lecture 10: Software Assets and Text: Ch. 8: Language Anatomy and Ch 9: Families.
Drools Sofia Jonsson CADEC2006, Drools, Slide 2 Copyright 2006, Callista Enterprise AB Agenda Rule Engines - History/Background.
DSL Classification October 21-22, 2007 Benoît Langlois / Thales-EPM Consuela-Elena Jitia / Eric Jouenne, Thales Research & Technology The 7th OOPSLA Workshop.
1 Incorporating Data Mining Applications into Clinical Guidelines Reza Sherafat Dr. Kamran Sartipi Department of Computing and Software McMaster University,
Visual Specification of a DSL Processor Debugger Tamás Mészáros and Tihamér Levendovszky Budapest University of Technology and Economics.
SQL Based Knowledge Representation And Knowledge Editor UMAIR ABDULLAH AFTAB AHMED MOHAMMAD JAMIL SAWAR (Presented by Lei Jiang)
Java EE Patterns Dan Bugariu.  What is Java EE ?  What is a Pattern ?
KNOWLEDGE BASED SYSTEMS
© Donald F. Ferguson, All rights reserved. Topics in Computer Science: Modern Internet Service Oriented Application Development Lecture 8: IPaaS.
Managing Learning Objects in Large Scale Courseware Authoring Studio Ivo Marinchev, Ivo Hristov Institute of Information Technologies Bulgarian Academy.
RIA to visualize the health of a project Team #4 Midterm presentation February 28,2008.
Activiti Dima Ionut Daniel. Contents What is Activiti? Activiti Basics Activiti Explorer Activiti Modeler Activiti Designer BPMN 2.0 Activiti Process.
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
Business Rules Engine in Java Introduction to JBoss Rules by Tom Sausner.
Building Enterprise Applications Using Visual Studio®
Extending Model-Driven Engineering in Tango
Introduction to Expert Systems Bai Xiao
Architecture Components
Graduation Project Kick-off presentation - SET
Service-centric Software Engineering
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
Execute your Processes
Rule Engine Concepts and Drools Expert
Presentation transcript:

Drools – Diabetes Phenotype Identification June 30, 2011 Jeffrey Ferraro, PhDc1 Herman Post, MS1 Darin Wilcox, MS1 1Intermountain Healthcare, Salt Lake City, Utah

Discussion Points Drools Background Drools Inference & Workflow Capabilities Describe Drools Inference Execution Model Exam the Drools Rule Semantics High Level Architecture Diabetes Workflow Perceived Benefits Future Directions

Drools Framework Business Logic Integration Platform Framework Supports Production Rule Inference Engine Workflow (jBPM ≡ Workflow Engine) Complex Event Processing (CEP) Planner – Optimization of NP-hard problems in workflow (i.e. time scheduling)

Drools History SourceForge Open Source in 2001 Licensed under Apache Part of JBoss Project in 2005 RedHat acquires JBoss in 2006 JBoss Rules (Commercially Supported Version) Published Books JBoss Drools Business Rules, Paul Browne Drools JBoss Rules 5.0 Developer's Guide, Michal Bali Business Process Management with JBoss jBPM: A Practical Guide for Business Analyst, Matt Cumberlidge

Drools Productivity Tools Guvnor – Business Rules Management System (BRMS) Authoring Testing Versioning Access Control of Rules & Workflow Eclipse plugins Authoring rules and workflow Integration into Guvnor Decision Tables Rule or Workflow Testing Structures

Authoring Languages Drools Rule Language (DRL) – Native Rule Syntax Two Language Dialects MVEL – Expression Language Java – Programming Like Business Process Management Notation v2 (BPMN2) Workflow Authoring Domain Specific Language Creation (DSL) Human Readable Grammars *Production Rules Definition Only

Benefits of a Rules Engine Declarative Programming Model (‘what’ not ‘how’) Promotes Separation of Business Logic and Data Loose Coupling of Business Logic (Reusability) Promote Centralization of Knowledge Productivity: Knowledge Engineering Tools Strive for Understandable Rules (Human Readable?) Shareable Rules Facilitated by Common Fact Model

Drools Inference Engine Represent Knowledge thru Production Rules Forward Chaining Inference Model Rule Matching(‘how’): Rete Algorithm & Leaps “Data Driven” – Reactionary Inference Model Facts Asserted into Working Memory Rule Propagation takes Place Legible Rules Schedule for Execution Consequence(s) Realized (Results) Backward Chaining Inference Model (future support) “Goal Driven” (Why Questions) Start with Conclusion  Inference to Satisfy Conclusion

Drools Workflow Goal of Workflow - combine tasks into an understandable process Supports task sequencing Promotes understanding thru process visualization - graphical modeling support Provides seamless integration of rules and flow Supports WS HumanTask 1.0 implementation State Management Supports Pluggable Work Items Domain-specific Definition Declarative Model (‘what’, not ‘how’) High-level Definition (no code)

Drools Inference Architecture Inference Execution Model Define a Knowledge Base Compiled Rules (*Expensive Operation) Produces Production Memory Extract Knowledge Session from Knowledge Base Insert Facts (data) into Knowledge Session  “Agenda” Fire Rules (*Race Conditions/Infinite Loop – ouch!) Retrieve End Results

DRL Basic Rule Semantics rule <name> when {Condition} <(1..n) facts in Working Memory OR data from external sources, matches this rule> then {Consequence} <update, insert or retract some facts in Working Memory OR set a parameter (end result)> end

Example DRL Rule rule "Glucose <= 40, Insulin On“ when $msg : GlucoseMsg(glucoseFinding <= 40, currentInsulinDrip > 0 ) then glucoseProtocolResult.setInstruction(GlucoseInstructions.GLUCOSE _LESS_THAN_40_INSULIN_ON_MSG); end

Example DRL Rule {Rule Name} rule "Glucose <= 40, Insulin On“ when $msg : GlucoseMsg(glucoseFinding <= 40, currentInsulinDrip > 0 ) then glucoseProtocolResult.setInstruction(GlucoseInstructions.GLUCOSE _LESS_THAN_40_INSULIN_ON_MSG); end {Class Getter Method} {binding} {Java Class} Parameter {Java Class} {Class Setter Method}

Current Architecture Business Logic Clinical Element Database Data Access Layer Business Logic Transformation Layer Inference Engine (Drools) List of Diabetic Patients Service for Creating Output (File, Database, etc) Transform physical representation  Normalized logical representation (Fact Model)

Diabetes Workflow

Benefits Organized representation of knowledge & process Rules and Workflow - accessibility by clinicians Facilitates collaborative authoring Potential for knowledge sharing thru common fact model BPMN represents an explicit, declarative stateful programming model Tight integration of rules and workflow

Future Directions Define a fact model that can be shared across organizations Better understand use of Rules vs. Workflow Explore Domain Specific Languages (DSL) Evaluate performance & scalability Define a Rules and Workflow sharing model

Collaboration & Exploration Drools Knitting Group (hosted by Intermountain Healthcare) Participants University of Utah Duke University Naval Medical Center (Emory Frye) Shared Experimental Environment

Thank You!