Building the Kuali Student BRMS (Business Rules Management System) Cathy Dew & Leo Fernig Kuali Days :: Chicago May 13-14, 2008.

Slides:



Advertisements
Similar presentations
Data Flow Diagramming Rules Processes –a process must have at least one input –a process must have at least one output –a process name (except for the.
Advertisements

Management Information Systems, Sixth Edition
August, 2010Prerequisites and Corequisites Managing Prerequisites.
Basic guidelines for the creation of a DW Create corporate sponsors and plan thoroughly Determine a scalable architectural framework for the DW Identify.
Computer Monitoring System for EE Faculty By Yaroslav Ross And Denis Zakrevsky Supervisor: Viktor Kulikov.
Information and Business Work
Introduction To System Analysis and Design
Open source administration software for education next generation student system Introduction to Kuali Student for Boston College POC Norman Wright, President/CEO.
C++ Training Datascope Lawrence D’Antonio Lecture 11 UML.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
“DOK 322 DBMS” Y.T. Database Design Hacettepe University Department of Information Management DOK 322: Database Management Systems.
CHAPTER 2: MODELING DATA IN THE ORGANIZATION © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition Jeffrey.
SOA & BPM Business Architecture, SOA & BPM Learn about SOA and Business Process Management (BPM) Learn how to build process diagrams.
State of Connecticut Core-CT Project Query 4 hrs Updated 1/21/2011.
Presented to: By: Date: Federal Aviation Administration Enterprise Information Management SOA Brown Bag #2 Sam Ceccola – SOA Architect November 17, 2010.
IBM Proof of Technology Discovering the Value of SOA with WebSphere Process Integration © 2005 IBM Corporation SOA on your terms and our expertise WebSphere.
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
Introduction To System Analysis and design
Data Governance Data & Metadata Standards Antonio Amorin © 2011.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
UML REVIEW –PART1 1. Introduction What is UML visual modelling language UML is a language not a methodology? Q: why is this distinction important? UML.
1 Kuali Identity Management Advanced CAMP: Identity Services Summit for Higher Ed Open / Community-Source Projects.
5.1 © 2007 by Prentice Hall 5 Chapter Foundations of Business Intelligence: Databases and Information Management.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Chapter 5 Lecture 2. Principles of Information Systems2 Objectives Understand Data definition language (DDL) and data dictionary Learn about popular DBMSs.
The Data Attribution Abdul Saboor PhD Research Student Model Base Development and Software Quality Assurance Research Group Freie.
DATA GOVERNANCE Presentation to CSG September 27, 2007 Mary Weisse Manager, MIT Data & Reporting Services
NSI 1 Collect Process AnalyseDisseminate Survey A Survey B Historically statistical organisations have produced specialised business processes and IT.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
1 An Electronic Concierge for Academic Advising Kuali Days :: Chicago May 13-14, 2008.
© Paradigm Publishing Inc. 9-1 Chapter 9 Database and Information Management.
Eric Westfall – Indiana University Jeremy Hanson – Iowa State University Building Applications with the KNS.
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.
By: Md Rezaul Huda Reza 5Ps for SE Process Project Product People Problem.
1 INTRODUCTION TO DATABASE MANAGEMENT SYSTEM L E C T U R E
© Paradigm Publishing Inc. 9-1 Chapter 9 Database and Information Management.
Chapter 10 Information Systems Analysis and Design
Introduction To System Analysis and Design
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Kuali Days :: Chicago May Overview of Kuali Student Application Architecture Rick Burnette (FSU) Gord Uyeda (UBC) Kuali Days :: Chicago May 13-14,
Current and Future Applications of the Generic Statistical Business Process Model at Statistics Canada Laurie Reedman and Claude Julien May 5, 2010.
Building Applications with the KNS. The History of the KNS KFS spent a large amount of development time up front, using the best talent from each of the.
Database Design and Management CPTG /23/2015Chapter 12 of 38 Functions of a Database Store data Store data School: student records, class schedules,
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
1 Technology in Action Chapter 11 Behind the Scenes: Databases and Information Systems Copyright © 2010 Pearson Education, Inc. Publishing as Prentice.
KS configuration application workshop Kuali Days :: Chicago May 13-14, 2008.
Metadata By N.Gopinath AP/CSE Metadata and it’s role in the lifecycle. The collection, maintenance, and deployment of metadata Metadata and tool integration.
System Test Planning SYSTTPLAN 1 Location of Test Planning Responsibilities for Test Planning Results of Test Planning Structure of a Test Plan Test Definitions.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
Fundamentals of Information Systems, Sixth Edition Chapter 3 Database Systems, Data Centers, and Business Intelligence.
© Tata Consultancy Services ltd.12 June Metadata and Data Standards Levels of Metadata C. Anantaram Innovation Lab.
Introduction: Databases and Database Systems Lecture # 1 June 19,2012 National University of Computer and Emerging Sciences.
Systems Analysis and Design in a Changing World, Fourth Edition
FAST STUDENT Your Chance to Learn!. FAST STUDENT Your Chance to Learn!
Testing Tools & Standards
UML Diagrams: Class Diagrams The Static Analysis Model
Definition CASE tools are software systems that are intended to provide automated support for routine activities in the software process such as editing.
Modern Systems Analysis and Design Third Edition
Outline Types of Databases and Database Applications Basic Definitions
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Computer Aided Software Engineering (CASE)
Building the Kuali Student BRMS (Business Rules Management System)
COIT20235 Business Process Modelling
Modern Systems Analysis and Design Third Edition
Chapter 20 Object-Oriented Analysis and Design
Modern Systems Analysis and Design Third Edition
Overview of Oracle Site Hub
Database Design Hacettepe University
UML Design for an Automated Registration System
Presentation transcript:

Building the Kuali Student BRMS (Business Rules Management System) Cathy Dew & Leo Fernig Kuali Days :: Chicago May 13-14, 2008

Kuali Days :: Chicago May Agenda 1.Harvesting and Structuring Rules (Cathy)  Industry Best Thinking and Practices  Kuali Student Analysis 2.Setting Up the Technical BRMS Environment (Leo)  KS Business Rules Environment  Work to Date 3.Integrating the BRMS and SOA (Cathy)  The Rule Entity Model  Fitting It All Together

Kuali Days :: Chicago May Getting to Functional Business Rules RESEARCH Theory Concepts Best Practices DATA COLLECTION Partner Institutions Focus on Learning Unit Service Modeling Use Case Collection Data Concepts Terminology & Definitions Classification & Categorization Strawman BRMS Strategy Service Definitions Actors & Scenarios Entity Diagrams & Message Structures

Kuali Days :: Chicago May Essential Reading  Business Rules and Information Systems: Aligning IT with Business Goal -- Tony Morgan  The Business Rule Book: Classifying, Defining and Modeling Rules -- Ronald G. Ross  Business Rules Management and Service Oriented Architecture: A Pattern Language -- Ian Graham  Enterprise Patterns and MDA: Building Better Software with Archetype Patterns and UML -- Jim Arlow and Ila Neustadt  Principles of the Business Rules Approach -- Ronald G. Ross  Smart (Enough) Systems -- James Taylor and Neil Raden  What Not How: The Business Rules Approach to Application Development -- C. J. Date  Business Rules Applied: Building Better Systems Using the Business Rules Approach -- Barbara von Halle

Kuali Days :: Chicago May Everyone Agrees  A business rule should define what should be the case  It should not prescribe ::  Who invokes the rule (use case)  When the rule is executed (business event or process description)  Where the rule executes (design)  How the rule is to be implemented (design)  In fact, Kuali Student has to do all of this as part of the BRMS

Kuali Days :: Chicago May Ross “RuleSpeak” Templates  A Sentence Pattern is a basic structure (Template) used to express a Rule in a consistent, well-organized manner  Every rule has a functional category ::  Rejector – a constraint, any rule that disallows an event  Producer – neither rejects for projects, simply computes  Projector – stimulus/response rule, causes some new event  Some Rejector Rules  A non-major student must have permission from instructor  A pre-registration slate must not contain more than 20 credit hours  A student may enroll only if the student is in good standing

Kuali Days :: Chicago May Rulespeak Terminology  Establish the anchor of the rule  The thing being constrained  Rule must have one and only one anchor  Establish the correspondent(s) of the rule, a.k.a. facts  The thing doing the constraining  Rule must have at least one correspondent With agreed upon terms and definitions, we could start to analyze business logic and discover rules.

Kuali Days :: Chicago May Discovering Rules

Kuali Days :: Chicago May Collecting Examples Academic Evaluation Admissions Transfer Articulation Degree Composition Grades, GPA, etc. Enrollment Transfer Credit Articulation

Kuali Days :: Chicago May Focus on Enrollment Rules DescriptionRuleFacts General Eligibility

Kuali Days :: Chicago May Focus on Enrollment Rules Course Prereq / CoreqFacts FSU Rule

Kuali Days :: Chicago May Focus on Enrollment Rules Course Prereq / CoreqFacts MIT Rule

Kuali Days :: Chicago May Focus on Enrollment Rules CoursePrereq / CoreqFacts UBC Rule

Kuali Days :: Chicago May Patterns Start to Emerge  Count (set of courses, criteria) >= numeric value  Credits  Courses  Subjects  Unit Hours  Grade/GPA (criteria) >= numeric value  Course grade  GPA for term, for year, overall, within major  Student is/is not value  Status is eligible, no holds, has permission  Admitted to institution, college, major

Kuali Days :: Chicago May Ownership vs. Execution  Ownership of rules is a function of the process (and people) responsible for authoring, maintaining and publishing a set of rules  Execution of rules is the process responsible for executing a rule may be different from the processes responsible for creating/authoring the rule.  Scheduling Rules, e.g., course has 200 seats  Owned by Central Scheduling Office  Created during the process of scheduling  Executed during registration

The Technical BRMS Environment

Kuali Days :: Chicago May KS Business Rules Environment  A Business Rules Management Service (BRMS)  A Rules Engine (Drools was selected for KS)  Business Rules User Interfaces (that allow business analysts to create and modify business rules)  Business services that execute rules  Placing the rules execution inside the service that needs it.  The enrolment service would execute pre-requisite rules, degree rules etc  The student financial service would execute fee calculation rules  Business Rules Data Warehouse  Rules are extracted from the BRMS (using the standard BRMS service definitions) and loaded into the data warehouse. Business Intelligence tools (such as Jasper) can be used to write reports against this data warehouse.  Workflow  Business Rules that are managed in the BRMS can be moved through workflow processes for various levels of approval, just like any other object.

Kuali Days :: Chicago May Data Warehouse Business Service Rules User Interface Drools Executable Rules Rule Execution Engine BRMS Rules Metadata Rules Business Service KS Business Rules Environment Metadata is used to produce the user’s palette to create and edit rules Rules are created, saved and updated through the user interface Rule data extracted to data warehouse Get AgendaExecute Rules Exported to executable format

Kuali Days :: Chicago May Data Warehouse Business Service Rules User Interface Drools Executable Rules Rule Execution Engine BRMS Rules Metadata Rules Business Service Phase 1 Aug – Dec 2007 Selection of Rules Engine Technology

Kuali Days :: Chicago May Data Warehouse Business Service Rules User Interface Drools Executable Rules Rule Execution Engine BRMS Rules Metadata Rules Business Service Phase 2 Jan – May )Creation of BRMS 2)BRMS_Drools interface

Kuali Days :: Chicago May Data Warehouse Business Service Rules User Interface Drools Executable Rules Rule Execution Engine BRMS Rules Metadata Rules Business Service Phase 3 May – June 2008 Integration of BRMS and service stack

Kuali Days :: Chicago May Data Warehouse Business Service Rules User Interface Drools Executable Rules Rule Execution Engine BRMS Rules Metadata Rules Business Service Phase 4 Development of User Interfaces

Kuali Days :: Chicago May A rule consists of a condition and action(s) When proposition 1 and proposition 2 Then action 1 A Business Rule Condition Action

Kuali Days :: Chicago May Example rule: Total credits > 30 and grade point average > 3.5 A Business Rule Right Hand Side Left Hand Side Comparison Operator Boolean Operator Proposition

Kuali Days :: Chicago May UML for a Business Rule

Kuali Days :: Chicago May How do we get rules into the system? The Rules User Interface There are 3 stereotypical ways of presenting rules: 1.A decision table 2.A flowchart 3.A procedural rule (if…then…)

Kuali Days :: Chicago May Visual Stereotype #1: Decision Table ProgramVisa status Cost per credit ArtsCanadian200 ArtsStudent visa, Visitor400 Science, Applied ScienceCanadian300 Science, Applied ScienceStudent visa, Visitor600 Program Min credits Max creditsVisa status Cost per credit Arts015Canadian50 Arts015Student visa, Visitor100 Arts1530Canadian75 Arts1530Student visa, Visitor200 Science, Applied Science030Canadian300 Science, Applied Science030Student visa, Visitor400 This is not a look-up table. Not only can you change data but you can change the structure of the table without any programming changes. For example, two new columns can be added with no changes to the code:

Kuali Days :: Chicago May Visual Stereotype #3: Flowchart Apply Evaluation Rule Are the grades complete ? Is the result a “PASS”? Create Registration Record Yes No

Kuali Days :: Chicago May Visual Stereotype #3: Procedural Rule Pre-requisites for CHEM 415 Both coursesCHEM120, CHEM130 AND OR Total credits>12 1 courseCHEM 230 AND Average>80%

Kuali Days :: Chicago May Example of a User Interface

Kuali Days :: Chicago May Rules and Business Intelligence  Traditionally Business Intelligence only deals with “facts” in the Enterprise Systems. Now we can apply Business Intelligence to business rules.  For example:  Is there any correlation between student success and pre-requisite rules?  Which courses are referenced most frequently in curriculum rules?  Are there any rules that inhibit student success (in the sense of causing students to take more than 4 years to finish their program)?

Kuali Days :: Chicago May Data Warehouse Business Service Rules User Interface Drools Executable Rules Rule Execution Engine BRMS Rules Metadata Rules Business Service How does a business services “know” which rules to invoke?

Integrating the BRMS and SOA

Kuali Days :: Chicago May Rules Entity Diagram 1.Agenda Determination Structure :: information needed to determine the specific Agenda 2.Agenda :: set of Business Rules that apply to a business process needing a decision 3.Output :: for each Agenda, the expected output 4.Business Rule :: individual business rule 5.Anchor :: for each Rule, the entity type instance to which the rule is attached 6.Fact :: data (facts) needed to execute the rule Agenda Agenda Determination Structure Output Business Rule Fact Anchor

Kuali Days :: Chicago May Agenda Determination Decision Table Type Relation State Agenda NameAgenda Description >> RulesOutput courseenrolled/ registered Student Enrolls in Course enrollment reqs (student, admitted, no holds) academic reqts (min GPA, good standing) course reqts (pre/co/anti-reqs, w/grade) program reqts (GPA, major match) financial reqts (enr fees paid, lui fees paid) OK / Not OK with Explanation courseplannedStudent Plans Course course reqts (pre/co/anti-reqs, w/grade) program reqts (GPA, major match) Status and Recommend ations

Kuali Days :: Chicago May Academic Record Example Business Rule 1.Agenda Determination :: Validate relationship of type Enroll for Course 2.Agenda :: Student Enrolls in MATH Output :: OK / Not OK 4.Business Rule :: Student has met pre-reqs of  2 of (static list)  6 credits of (dynamic list)  overall GPA >= Anchor :: MATH Facts :: course sets (static and dynamic), student’s academic record Student Enrolls in MATH 301 Validate Relationship Enroll in Course OK / Not OK Met MATH 301 Prerequisites 200-level MATH courses MATH 101, MATH 102, MATH 103 MATH 301

Kuali Days :: Chicago May Fitting It Together  KS BRMS Harvested a bunch of rules Developed a strategy for collecting and classifying rules Agreed on terminology and a business rule entity model Completed a Proof of Concept for a representative pre- requisite rule Built the Core BRMS Defined and stored a business rule Translated it to a Drools Executed the rule from our Enrollment business service

Kuali Days :: Chicago May Fitting It Together  KS BRMS  We are in the process of modeling ::  How a business process determines which rules to execute  What is the link to the Agenda  Smallest footprint possible  Who is responsible for getting the facts needed to execute the rule  Without violating SOA (who knows what)  Without requiring BRMS to know about domains

Kuali Days :: Chicago May Thank You Coming Soon, to a university near you...