1 Automating Business Rule Adaptation for Web-Based Information Systems Mei Tian 1, Ajit Singh 2, Kumaraswamy Ponnambalam 1, Raymond Lee 2 1 Systems Design.

Slides:



Advertisements
Similar presentations
Numbers Treasure Hunt Following each question, click on the answer. If correct, the next page will load with a graphic first – these can be used to check.
Advertisements

1 Senn, Information Technology, 3 rd Edition © 2004 Pearson Prentice Hall James A. Senns Information Technology, 3 rd Edition Chapter 7 Enterprise Databases.
1
Chapter 1: The Database Environment
Distributed Systems Architectures
Chapter 7 System Models.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 4 Computing Platforms.
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Author: Julia Richards and R. Scott Hawley
Myra Shields Training Manager Introduction to OvidSP.
Properties Use, share, or modify this drill on mathematic properties. There is too much material for a single class, so you’ll have to select for your.
Objectives: Generate and describe sequences. Vocabulary:
RXQ Customer Enrollment Using a Registration Agent (RA) Process Flow Diagram (Move-In) Customer Supplier Customer authorizes Enrollment ( )
1 Hyades Command Routing Message flow and data translation.
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination. Introduction to the Business.
11 Copyright © 2005, Oracle. All rights reserved. Creating the Business Tier: Enterprise JavaBeans.
8 Copyright © 2005, Oracle. All rights reserved. Creating the Web Tier: JavaServer Pages.
J2EE Overview.
1 RA I Sub-Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Casablanca, Morocco, 20 – 22 December 2005 Status of observing programmes in RA I.
Properties of Real Numbers CommutativeAssociativeDistributive Identity + × Inverse + ×
Custom Statutory Programs Chapter 3. Customary Statutory Programs and Titles 3-2 Objectives Add Local Statutory Programs Create Customer Application For.
Custom Services and Training Provider Details Chapter 4.
1 Click here to End Presentation Software: Installation and Updates Internet Download CD release NACIS Updates.
Knowledge Extraction from Technical Documents Knowledge Extraction from Technical Documents *With first class-support for Feature Modeling Rehan Rauf,
Week 2 The Object-Oriented Approach to Requirements
Break Time Remaining 10:00.
1 CIFTlab1.2 Software for Clinical Diagnostic Laboratories 1.
Table 12.1: Cash Flows to a Cash and Carry Trading Strategy.
Database Performance Tuning and Query Optimization
PP Test Review Sections 6-1 to 6-6
Bright Futures Guidelines Priorities and Screening Tables
EIS Bridge Tool and Staging Tables September 1, 2009 Instructor: Way Poteat Slide: 1.
Chapter 6 Data Design.
Bellwork Do the following problem on a ½ sheet of paper and turn in.
XML and Databases Exercise Session 3 (courtesy of Ghislain Fourny/ETH)
CS 6143 COMPUTER ARCHITECTURE II SPRING 2014 ACM Principles and Practice of Parallel Programming, PPoPP, 2006 Panel Presentations Parallel Processing is.
Exarte Bezoek aan de Mediacampus Bachelor in de grafische en digitale media April 2014.
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
1 Presenter: Josh Stuckey, Manager Harris County Permits Northwest Freeway Suite 120 Houston, Texas
1 RA III - Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Buenos Aires, Argentina, 25 – 27 October 2006 Status of observing programmes in RA.
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
Adding Up In Chunks.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Synthetic.
CHAPTER 8 INFORMATION IN ACTION
GL Interfaces 1 Using General Ledger Interfaces The File Maintenance and Procedures to successfully use the General Ledger Interfaces Jim Simunek, CPIM.
Model and Relationships 6 M 1 M M M M M M M M M M M M M M M M
Chapter 2 Entity-Relationship Data Modeling: Tools and Techniques
Chapter 10: The Traditional Approach to Design
Copyright © 2008 Pearson Addison-Wesley. All rights reserved. Chapter 10 A Monetary Intertemporal Model: Money, Prices, and Monetary Policy.
Analyzing Genes and Genomes
Systems Analysis and Design in a Changing World, Fifth Edition
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 12 View Design and Integration.
Chapter 12 Working with Forms Principles of Web Design, 4 th Edition.
Essential Cell Biology
Clock will move after 1 minute
PSSA Preparation.
Essential Cell Biology
SESSION ID: Continuous Monitoring with the 20 Critical Security Controls SPO1-W02 Wolfgang Kandek CTO.
Immunobiology: The Immune System in Health & Disease Sixth Edition
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 13 Slide 1 Application architectures.
Physics for Scientists & Engineers, 3rd Edition
Energy Generation in Mitochondria and Chlorplasts
Murach’s OS/390 and z/OS JCLChapter 16, Slide 1 © 2002, Mike Murach & Associates, Inc.
Introduction to ikhlas ikhlas is an affordable and effective Online Accounting Solution that is currently available in Brunei.
Introduction Peter Dolog dolog [at] cs [dot] aau [dot] dk Intelligent Web and Information Systems September 9, 2010.
Presentation transcript:

1 Automating Business Rule Adaptation for Web-Based Information Systems Mei Tian 1, Ajit Singh 2, Kumaraswamy Ponnambalam 1, Raymond Lee 2 1 Systems Design Engineering, University of Waterloo 2 Electrical and Computer Engineering, University of Waterloo

2 Presentation Outline Introduction Business Rule Model Implementation Case Study Future Work

3 Web-Based Information Systems back-end database business logic middleware client application JRMP http Three-Tier architecture

4 What Are Business Rules? Formal statements about the data and processes of an enterprise Presented as program logic in enterprise application

5 Business Rule Examples If a customer buys product worth more than $100 in an order, he will get a 10% discount. If the product in warehouse is less than 5, reorder this product. Shipping fee is $20 for each order.

6 Why Automation Business rules change quickly Business rules are often embedded with the data access and application logic To speed up the application development To reduce maintenance cost

7 Research Subareas Business rule representation Business rule extraction Business rule management Business rule processing

8 Research Background Business rules representation External Conceptual Internal Users,analyzers Structured English, etc. Designer, developer BRML, etc. Physical machine Binary code

9 Research Background Business rule extraction Data analyzing Programming analyzing Hybrid

10 Research Background Business rule management Repository-based method artificial Intelligence

11 Research Background Business rules processing Procedural programming SQL trigger Declarative programming Constraint programming

12 Challenges No standard business rule model No distributed business rule framework Difficult to define a flexible rule interface How to find the rule firing order without an inference engine

13 Assumptions Rules have been found somehow Rules are correct with no conflict and redundancy Target to small/middle size information systems Not use artificial intelligence

14 Solution Strategies (1) A general business rule model A rule system and a distributed business rule framework

15 Solution Strategies (2) A EJB design pattern and the bean relationship information Rule dependency graph, rule-firing- history, and rule label

16 Business Rule Model Organization Model name: String ruleType: String priority: String triggeredClass: String triggerMethod: String triggerLocation: String implementor: String description: String name: String effective:Date expiration:Date BusinessRuleSet BusinessRule 1* *1 Common Knowledge Model * * 1 * TermRuleFactRuleActionRuleDerivationRule ApplicationRuleSet appName:StringsetName:String source:String ShareRuleSet RuleChecker description: String 1* Legend: class *1 Many-to-one associationgeneralization Implementer 1* ruleName:String

17 Business Rule Types TermRuleFactRuleActionRuleDerivationRule name: String ruleType: String priority: String triggeredClass: String triggerMethod: String triggerLocation: String implementor: String Description: String BusinessRule Transformation Rule InitialDerivation Rule SelfDerivation Rule IndirectDerivation Rule Inference Rule ValidationRule Legend: classgeneralization

18 Term Rule Defines the vocabulary of a business Not implemented as a part of an Information System(IS) Example: A telephone line is an asset.

19 Fact Rule Documents the relationship between items Aggregation, association, generalization belongs to, identified by In an IS, implemented as relationship between classes, entity beans, or tables Example: A student has a student ID.

20 Action Rule States the conditions under which actions must be taken Transformation Rule: Transforms the execution from one event to another Validation Rule: States what kind of value for an attribute is valid

21 Action Rule Examples Transformation Rule Example: After a user pays, ship the products and deduct the quantity from product inventory. Validation Rule Example: The product inventory must be greater than zero.

22 InitialDerivation Rule Describes initialization value of an class attribute. Example: The first customer ID is 1000

23 SelfDerivation Rule Describes how an attribute value is derived from former instances value on the same attribute. Example: a new customer ID = max(customerID) + 1

24 IndirectDerivation Rule Describes how the value of one attribute is derived by some other attributes through a mathematic formula or inference. Example: invoice total value = product total value + tax value – discount

25 Rule Automation Technologies Java Technology - Ensures portability and vendor independency Enterprise Java Beans - Simplifies building of distributed application MS-SQL 6.5 as back-end database

26 Enterprise Java Beans Server-side component architecture Simplifies building distributed applications Enterprise beans - Entity beans - Session beans

27 Rule Adaptation Automation System Rule Engine Application Server Rule Builder Rule Beans Rule Adaptation Automation System HTTP JDBC EJB Beans Generator JDBC Deploy EJB Finder Rule Repository

28 Case: Marias Computer Product Store User authentication An Online catalogue and shopping cart Invoice generation Bill Functionality Special price promotion

29 MCPS-Business Flow Login User Profile Product ListView Shopping Cart Check Out Invoice Rule Execution Feedback New Customer Service List

30 MCPS-Object Model (Business Logic Tier) Account Wrapper Customer Wrapper Invoice Wrapper AccountCustomerInvoice Shopping Cart Transactions Transactions Wrapper Product Product Wrapper *1 1 1 * *11

31 Rules in MCPS (1) Validation Rule The account balance must be greater than 0. Transformation Rule After generating an invoice, deduct the users account balance by the invoice amount.

32 Rules in MCPS (2) InitialDerivation Rule The customer ID for the first customer is The account ID for the first account is The invoice ID for the first invoice is 1000.

33 Rules in MCPS (3) SelfDerivation Rule A new customer ID is the current maximum customer ID add one. the rule for new account ID the rule for new invoice ID

34 Rules in MCPS (4) IndirectDerivation Rule The Shipping fee is $20 for each order. The tax value is 15% of the product total value

35 Rules in MCPS (5) IndirectDerivation Rule The invoice total value is the amount of product total value, tax value, and shipping fee.

36 Rules in MCPS (6) IndirectDerivation Rule If a customer buys products worth more than $100, he will get a 10% discount.

37 Case Build Procedure Test and Modification Object model for business logic tier Object Model for Presentation tier Business rules Generate beans Write ShoppingCart session bean Build rules Arrange rule sequence Write Jsp files Design Develop

38 MCPS Architecture (Technology View) HTTP Request HTML WorkStation Browser Application Server Database Java Bean JSP Session bean Rule Engine Entity Bean UI Logic Business Logic

39 Metrics Analysis Line Of Code (Loc) CPSMCPS (Hand- coded ) Hand-code Percentage Java Files % JSP Files % Deployment Files % Other 315 Overall %

40 RAAS Features (1) 3-tier architecture Automatically triggers the rules at run time Changes the rules without re-deploying the application systems

41 RAAS Features (2) Decides rule sequence for IndirectDerivation rules Re-evaluates rules based on changed conditions

42 Contributions Proposed a general and extensible business rule model Explored a component-based distributed business rule framework

43 Future Work Enhance the rule model Performance issue Extracting rules from legacy system and specification documents

44 Questions ??