+612 9045 4394
 
CHECKOUT
How To Build A Business Rules Engine : Extending Application Functionality through Metadata Engineering - Chisholm

How To Build A Business Rules Engine

Extending Application Functionality through Metadata Engineering

By: Chisholm

Paperback Published: 12th November 2003
ISBN: 9781558609181
Number Of Pages: 483

Share This Book:

Paperback

$192.25
or 4 easy payments of $48.06 with Learn more
Ships in 7 to 10 business days

7 3/8 X 9 1/4 in What Are Business Rules and Business Rules Engines. Why Build a Business Rules Engine. Data Modeling and Database Design. Who Defines Business R ules and When Do They Do It. The Atomicity of Business Rules. The 'Black Box' Problem. The Components of a Business Rules Engine. Populating Tab le Data in the Repository. Populating Column Data in the Repository. Pop ulating Relationship and Subtype Data in the Repository. Populating Refe rence Data in the Repository. Defining Business Processes and Related In formation. Extending the Database. Managing the Database. Implementing a Simple Business Rule. More Edit Validation Rules, Rule Components, and Rule Versions. Rule Types for Checking Referential Integrity. Working wi th Batch Processes: Setting Indicators and Reference Data Code Values. I mplementing Rule Types Using Relationships and Subtipes. Rules with Subt ypes and Business Metadata. Debugging in Business Rules Engines. Managin g the Business Rules Engine. Appendix A: Using the Sample Application.

Forewordp. xvii
Introductionp. xix
Audiencep. xxii
Organizationp. xxiii
The Sample Applicationp. xxiv
What are Business Rules and Business Rules Engines?p. 1
Business Rulesp. 1
Business Rules Enginesp. 3
Business Rules in Business Rule Enginesp. 4
Where Do Business Rules Come From?p. 4
Conclusionp. 7
Why Build a Business Rules Engine?p. 9
Cost and Scalep. 10
Building Software for Diverse Environmentsp. 11
Total Integration of Softwarep. 13
Specificity of Rulesp. 15
Extension of Applicationsp. 16
How Easy Is It to Build a Rules Engine?p. 17
Conclusionp. 18
Data Modeling and Database Designp. 21
Attributes and Entitiesp. 22
Relationshipsp. 23
Subtype Relationshipsp. 26
Conclusionp. 28
Who Defines Business Rules and When do They do It?p. 29
The Actorsp. 29
Business Analystsp. 30
System Operatorsp. 31
Consultantsp. 31
Business Knowledge Workersp. 32
Business Senior Managementp. 33
Information Technology Staffp. 33
Programmersp. 33
When Are Rules Defined?p. 34
Rules Known in Advancep. 34
Rules Defined at Implementationp. 34
Business Changes in Production Systemsp. 36
What Kinds of Organizations Need a Business Rules Approach?p. 37
Invariant Transactionsp. 37
Software Packagesp. 38
Contract-Based Businessesp. 38
One-to-One Marketingp. 39
Intensively Rules-Based Activitiesp. 39
Conclusionp. 39
The Atomicity of Business Rulesp. 41
What Is Atomicity?p. 41
Constraintsp. 42
Calculations and Derivationsp. 43
Inferencesp. 45
Levels of Abstraction of Business Rules and Rule Dependenciesp. 45
Is Atomicity Important?p. 48
Implications of Atomicity--More Columnsp. 49
Implications of Atomicity--Intermediate Resultsp. 53
When Are Calculations Atomic?p. 54
Conclusionp. 54
The Black Box Problemp. 55
User Resistance to Business Rules Enginesp. 56
User Duplication of Rulesp. 56
How, Not Whatp. 57
What Are the Rules?p. 58
Inflexibility beyond Rulesp. 58
Support for the Usersp. 59
Reliance on IT Personnelp. 59
Seeing Is Believingp. 60
Auditabilityp. 60
Conclusionp. 61
The Components of a Business Rules Enginep. 63
The Rules Engine Componentsp. 63
The Business Rules Repositoryp. 64
Application Database Metadatap. 65
Business Processesp. 66
Rule Definitionsp. 68
Rule Definition Interface and Executable Business Rulesp. 70
Code Generation Routinesp. 74
Direct Interpretation of Rulesp. 75
Code Generation: Interpretive versus Compiled Programming Languagesp. 79
Code Generation: What Does It Mean?p. 80
Rule Invocation Interfacep. 84
Administrative Toolsp. 84
Conclusionp. 85
Populating Table Data in the Repositoryp. 87
The Table Entityp. 88
Table Physical Namep. 88
Issues with Table ID as the Primary Keyp. 90
Entity Namep. 91
Entity Definitionp. 92
Table Typep. 92
Data Model Entity IDp. 93
Summary of Design for Table Entityp. 94
Extracting Table Data from the Data Modeling Toolp. 94
Create ERWin 3.5.2 Extract Report Filep. 95
Create ERWin 4.1 Extract Report Filep. 97
Importing ERWin 3.5.2 Table Metadata into the Repositoryp. 101
Importing ERWin 4.1 Table Metadata into the Repositoryp. 104
Updating the TAB_TABLE_M Tablep. 107
Screen Interface for Updating Table Metadatap. 108
Conclusionp. 110
Populating Column Data in the Repositoryp. 111
Column Entityp. 112
Column IDp. 112
Column Physical Namep. 113
Datatypep. 115
Column Datatype Lengthp. 119
Precision and Scalep. 119
Attribute Logical Namep. 119
Attribute Definitionp. 120
Primary Key Indicatorp. 121
Foreign Key Indicatorp. 121
User-Defined Column Indicatorp. 122
Table Physical Namep. 122
Foreign Key Parent Tablep. 122
Foreign Key Parent Column IDp. 122
Foreign Key Parent Column Physical Namep. 122
Design Reviewp. 123
Extracting Column Data from a Data Modeling Toolp. 125
Create ERWin 3.5.2 Extract Report Filep. 125
Create ERWin 4.1 Extract Report Filep. 127
Importing ERWin 3.5.2 Column Metadata into the Repositoryp. 129
Importing ERWin 4.1 Column Metadata into the Repositoryp. 132
Updating the COL_COLUMN_M Tablep. 133
Screen Interface for Updating Table Metadatap. 140
Conclusionp. 144
Populating Relationship and Subtype Data in the Repositoryp. 145
The Relationship Entityp. 145
The Relationship Key Attribute Entityp. 147
Changes to Column Entity for Relationship Informationp. 148
Relationships and Hidden Subtypesp. 149
The Subtype Entityp. 152
Relationships with Subtypesp. 156
Impact of Managing Relationships for Hidden Subtypesp. 157
Extracting Relationship Data from the Data Modeling Toolp. 159
Create ERWin 3.5.2 Extract Report Filep. 159
Create ERWin 4.1 Extract Report Filep. 161
Importing ERWin 3.5.2 Relationship Metadata into the Repositoryp. 166
Importing ERWin 4.1 Relationship Metadata into the Repositoryp. 167
Updating the REL_RELATIONSHIP_M Tablep. 168
Updating Column Informationp. 174
Editing Relationshipsp. 174
Pathwaysp. 178
Defining Subtypesp. 183
Conclusionp. 185
Populating Reference Data in the Repositoryp. 187
Standards for Reference Datap. 188
Extending the Table Entityp. 189
Extending the Column Entityp. 189
Populating the Reference Data Metadatap. 190
Reference Data Default Valuesp. 193
Conclusionp. 197
Defining Business Processes and Related Informationp. 199
Extensions to Business Rules Repositoryp. 200
Business Processesp. 202
Business Process Implementationp. 205
Screenp. 205
Business Process Stepp. 206
Business Rule Typesp. 208
Conclusionp. 209
Extending the Databasep. 211
Limits of Database Extensionp. 213
Adding New Columns to Existing Tablesp. 215
Identifying the Target Tablep. 216
Displaying the Structure of the Target Tablep. 220
Adding a New Columnp. 223
Updating the Repository for the New Columnp. 228
Modifying an Existing Columnp. 228
Deleting Columnsp. 228
Updating the Repository after Dropping the Columnp. 232
Dealing with Database Administratorsp. 234
Conclusionp. 236
Managing the Databasep. 237
Viewing the Database Tablesp. 238
Displaying Logical or Physical Namesp. 238
Order of Columnsp. 244
Sort Order of Datap. 246
Dealing with Large Numbers of Recordsp. 251
Detailed Record Displayp. 252
Record Numbers and Problems with Record Selectionp. 252
Displaying the Detailed Recordp. 257
Synchronizing the Database and Business Rules Repositoryp. 263
Conclusionp. 277
Implementing a Simple Business Rulep. 279
Rules Definition Interfacep. 279
Defining Rules for the Investment Screenp. 281
Basic Repository Design for Holding Business Rules Metadatap. 282
Accessing the Rules Definition Interface for Rule Type Required Screen Fieldsp. 288
Interface to Define Rule Type for Required Screen Fieldsp. 290
Preliminary Processingp. 292
Details of the Rule Definition Interfacep. 293
Integrating the Business Rules into the Application Screenp. 295
Generating the Codep. 298
The Generated Codep. 309
When Should Code Be Generated?p. 313
Examples of Business Rulesp. 316
Design Reviewp. 321
Conclusionp. 321
More Edit Validation Rules, Rule Components, and Rule Versionsp. 325
Valid Datatypes for Screen Fieldsp. 325
Rule Definition Interface for Valid Datatypes for Screen Fieldsp. 327
Screen Fields Valid Rangesp. 330
Introducing Rule Componentsp. 330
Introducing Rule Versionsp. 335
Design for Rule Versionsp. 335
Creating New Versionsp. 338
Implementing the Rule Type for Screen Fields Valid Rangesp. 339
Conclusionp. 346
Rule Types for Checking Referential Integrityp. 347
Prevention of Duplicate Recordsp. 349
Building the Rule Type for Check for Duplicate Recordsp. 350
Introducing the Temporary Business Rule Component Table and Multiuser Considerationsp. 353
Duplicate Rule Detectionp. 354
More Advanced Rule Deletionp. 355
Generating Code to Check for Duplicate Recordsp. 357
Referential Integrity for Dependent Recordsp. 360
Rule Definition Interface for Referential Integrity for Dependent Recordsp. 361
Code Generation for Referential Integrity for Dependent Recordsp. 363
Conclusionp. 366
Working with Batch Processes: Setting Indicators and Reference Data Code Valuesp. 367
Setting a Value for an Indicatorp. 368
Selecting the Rule Typep. 369
The Rule Type Definition Screenp. 371
Using Pathwaysp. 376
Changes to Repository Tablesp. 379
Updating the Subtype Tablep. 381
Deleting a Rulep. 381
Code Generation Strategy in Batch Processesp. 382
Rule Dependency and Rule Firing Sequencep. 383
Generated Code for Simple Set An Indicator Rulep. 387
Using Pathways in Generated Codep. 390
Setting a Reference Data Table Valuep. 395
Additions to the Repositoryp. 397
Selecting a Rulep. 398
The Rule Definition Interface Screenp. 400
Code Generationp. 401
Conclusionp. 404
Implementing Rule Types Using Relationships and Subtypesp. 407
Definition Interface for Pay Pro Rata from Fund to Investmentp. 410
Understanding Rule Typesp. 412
Code Generation for Pay Pro Rata from Fund to Investmentp. 414
Using Subtypes in the Rule Typep. 417
Conclusionp. 420
Rules with Subtypes and Business Metadatap. 421
Calculate A Feep. 421
Setting Up the Rule Type and Selecting a Target Columnp. 423
The Rule Definition Interfacep. 424
Repository Design Changesp. 425
Subtypes in Calculate A Feep. 427
Conclusionp. 427
Debugging in Business Rules Enginesp. 431
Viewing Datap. 431
Logging Rules Activityp. 433
Implementing Loggingp. 436
Control of Loggingp. 440
Viewing the Logp. 441
Conclusionp. 442
Managing the Business Rules Enginep. 443
Rules Reportsp. 444
Rules Sequence within Business Process Stepp. 444
Usage of Business Rules within Business Process Stepsp. 444
Column Reportsp. 446
Columns Targeted by Business Rulesp. 446
Usage of Columns in Rulesp. 447
Usage of Columns in Business Process Stepsp. 448
User-Defined Columns Control Reportp. 448
Subtype Reportsp. 449
Subtypes without Rules to Identify Themp. 449
Subtypes and Reference Data Valuesp. 449
Use of Subtypes in Rulesp. 450
Relationship Reportsp. 450
Lists of Relationshipsp. 451
User-Defined Relationshipsp. 451
Use of Relationships in Rulesp. 451
Business-Specific Reportingp. 451
Conclusionp. 453
Using the Sample Applicationp. 455
Installing the Sample Applicationp. 455
Database Tables Relevant to the Businessp. 458
The Menu Systemp. 461
Application Functionsp. 461
Database Maintenancep. 461
Business Rulesp. 461
Repository Functionsp. 461
Modules of the Sample Applicationp. 464
Forms of the Sample Applicationp. 464
Tables of the Business Rules Repositoryp. 465
Steps to Add New Rules for a New Rule Typep. 465
Resources and Further Readingp. 471
Indexp. 473
Table of Contents provided by Ingram. All Rights Reserved.

ISBN: 9781558609181
ISBN-10: 1558609180
Series: The Morgan Kaufmann Series in Data Management Systems
Audience: Professional
Format: Paperback
Language: English
Number Of Pages: 483
Published: 12th November 2003
Publisher: Elsevier Science & Technology
Country of Publication: US
Dimensions (cm): 23.5 x 18.7  x 2.36
Weight (kg): 0.85