Title: BI510 Business Rules ARE MetaData
1BI510Business Rules are Meta-Data
- Alan Perkins
- EVP, Client Services
- Visible Systems
- alan.perkins_at_visible.com
2Business Rules Meta-Data
- Benefits of Managing Business Rules as Meta-Data
- Techniques for Defining, Documenting, Modeling,
and Implementing Business Rules - The Business Rule Life Cycle
3Business Rule Definition
- A Business Rule ... defines or constrains some
aspect of the business. It is intended to assert
business structure or to control or influence the
behavior of the business. - -- IBM GUIDE Business Rules Project
These ARE Meta-Data
- Business Rules may be
- Definitions of Business Terms
- Data integrity constraints
- Mathematical and functional derivations
- Logical inferences
- Processing sequences
- Relationships among facts
4Uses for Business Rules
- Capture/Implement Precise Business Logic
- Provide Basis for Expert Systems
- Refine Architecture Models and Software
Component Designs - Facilitate Change Management
- Manage XML Applications
- B2B Communications
- Corporate Portals
- Application Integration
5Implementing Business Rules
- As Procedure (Manuals, SOPs, etc.)
- Flexible
- But not rigorous
- As Process (Subroutines, object behavior, code)
- Rigorous
- But inflexible
- As Meta-Data (Tables, triggers, and objects)
- Rigorous
- And Flexible
6Benefits of Managing Business Rulesas Meta-Data
- Allows Maximum Flexibility
- Reduces System Maintenance
- Simplifies Design and Implementation
- Rules can change without affecting implementation
- Ensures that systems fully support business needs
- MIS personnel don't need to learn the intricacies
of the business
7Business Rules Meta-Data
- Benefits of Managing Business Rules as Meta-Data
- Techniques for Defining, Documenting, Modeling,
and Implementing Business Rules - The Business Rule Life Cycle
8Business Rule Rules
Effective Business Rules have the following
characteristics
- Explicit expression The statement of business
rules needs an explicit expression, either
graphically or as a formal (logic-based)
language. - Declarative nature A business rule is
declarative, not procedural. It describes a
desirable, possible state that is either required
or prohibited. - Coherent representation A single, coherent model
for all the kinds of business rules is desirable.
9Business Rules Reasons to Model
Ready
- Encourages rigorous and complete analysis.
- Reduces complexity.
- Enhances communication.
- Assists in eliminating the Ready - Fire - Aim
mentality.
Fire
Aim!
OOPS
You should know your targetbefore you pull the
trigger.
10Enterprise Business ModelBusiness Rule Repository
- Incorporates best practices.
- Meets the unique needs of the enterprise
- Eliminates redundant analysis.
- Promotes data sharing.
- Encourages reuse -- not reinvention.
- Allows effective component development AND
management
11Business Models Provide Framework for Component
Design Development
StrategicandPerformancePlans
Strategic Business Rules
FunctionModel
InformationModel
Business Profiles
Tactical Business Rules
LogicalComponentModel
LogicalDataModel
Site Profiles
Operational Business Rules
PhysicalComponentDesign
PhysicalData BaseDesign
Site
Component Code
Data Base
12Enterprise Architecture Frameworkeverything you
need to know...
Data
Process
Infrastructure
Environment
Business Plan
Business Events
Enterprise Context
Internal/External Assessment
Business Plan
Business Requirements Model
Information Model
Activity Model
Environmental Components
Enterprise
Business Model
Model View Locations
Process Model
Data Model
Model Views
Systems Design
Data Base Designs
Technology Configurations
Infrastructure Designs
Application Designs
Sites Platforms
Information System
Assignments Authorizations
Application Systems
Data Bases
13The Only Enterprise Architecture Tool Set
Visible Advantage
Logical Enterprise (Data Warehouse)Model
14 One Logical Model -- Many Physical Designs
Model Views
Logical ModelIncludesBusinessRequirements
Design Views
Each can represent a different technology Each
can be differently de-normalized May be new or
legacy designs
15Business Rules in Business Modelsthe ultimate
meta-data
- Documented using
- Business Statements
- Data Entities and Attributes
- Entity Associations
- Domain Values
- Derivations
- Rule Expressions
16Development of Business Statements
Enterprise Mission
Critical Success Factors
Events
Critical Decision Set
Strategies
Goals
Value-Based Process
Objectives
Critical Assumption Set
Performance Measure
Information Needs
Functions
Business Rules
17Business Statements Guidelines
- Write clear, concise statements in business
language - State business, not systems requirements
- Identify each statement clearly
- Resolve conflicts and overlaps
- Fill any gaps
18Business Statement Hierarchy
19Business Rules in Business Modelsthe ultimate
meta-data
- Documented using
- Business Statements
- Data Entities and Attributes
- Entity Associations
- Domain Values
- Derivations
- Rule Expressions
20Entity Definition
- Some "thing" which is of importance to the
business - Conventions
- Rectangular box
- Named in the singular
- Capital letters
- Examples
21Attribute Definition
- A "piece" of information which describes an
entity - Conventions
- Named in the singular
- Written in lower case
- Examples
22Attribute Primary Keys
- Uniquely identifies the occurrence within an
entity - Conventions
- identifies attribute as a key attribute
- Primary key is underlined
- Examples
23Attribute Foreign Keys
- A reference to an occurrence in another entity.
It is the primary key of that other entity - Convention
- identifies attribute as a key attribute
- Example
24Attribute Non-Keys
- Additional information about an entity
- May be defined as derived, unique or optional
- Convention
- Lowercase with no identifying characteristic
- Examples
25Business Rules in Business Modelsthe ultimate
meta-data
- Documented using
- Business Statements
- Data Entities and Attributes
- Entity Associations
- Domain Values
- Derivations
- Rule Expressions
26Association Definition
- Indicates relationship between two entities
- Conventions
- A line connecting two entities
- Only one association exists between any two
entities - (There may be multiple reasons for the
association)
27Association Degree
- Identifies whether an entity may be related to
one or more occurrences of other entities - Conventions
One or more
Only one
28Association Nature
- Defines whether an entity may exist on its own or
must be related to another entity - Conventions
Optional
Mandatory
Optional becoming
mandatory
29Combinations of Degree Nature
An Employee ....
must have one
A
must have at least one
B
may have zero or one (or may be a...)
C
EMPLOYEE
D
may have zero, one or many
E
will eventually have one
F
will eventually have at least one
30Association Examples
- Each employee must have one and only one job. A
job must be related to one or more employees. - An employee will eventually be associated with a
paycheck. Each paycheck relates to only one
employee.
31Multiple Associations
32Multiple Associations Resolution
33Alternative Solution ...
34Business Rules in Business Modelsthe ultimate
meta-data
- Documented using
- Business Statements
- Data Entities and Attributes
- Entity Associations
- Domain Values
- Derivations
- Rule Expressions
35Types of Domains
- Entity
- Meta-data values
- Attribute
- Data type values
36Entity Nature
- Static
- Limited, relatively small number of occurrences,
with known values - Dynamic
- Unlimited number of occurrences, with unknown
values
37Populating a Static Entity
38Attribute Domain Concepts
- Each Attribute must eventually be assigned a
Domain - Should not be constrained by technology
limitations - Domains may overlap
Attribute B
Attribute A
Domain
Domain
39Domain Concepts
- The domain of an attribute define the values that
an attribute may have - The actual values of an attribute may be a subset
of the actual domain
Attribute B
Attribute A
Actual values
Actual values
Domain
Domain
40Domain Concepts
- A domain can be assigned a standard length and
precision for all attributes that use that domain
- Global Dimension - Local Dimension - allows length to be specified
at the Attribute level. Example Character
domain, length 20
41Composition of Domains
Composed of an infinite set of values, may be
bounded at either end Composed of a finite
number of known values Consists of more than one
group of discrete and/or range sets
42Domain Examples
- Discrete
- January, February, March, April, May, June,
July, August, September, October, November,
December - ABCDEFGHIJKLMNOPQRSTUVWXYZ
- 50 state abbreviations
- High, Medium, Low (3-level categorization)
- Century, Year, Quarter, Month, Week, Day, Hour,
Minute, Second
43Domain Examples
- Range
- Positive Integers
- U.S. Currency Amount (to nearest )
- Names
- 50-500 lbs (person's weight)
44Data Types
- Logical, independent of any specific technology
- Provides a format for a Domain
- Shared by many Domains
- Standard Data Types include
- Numerical, Character, Boolean
- Date, Time
- Picture, Video, Sound
45Business Rules in Business Modelsthe ultimate
meta-data
- Documented using
- Business Statements
- Data Entities and Attributes
- Entity Associations
- Domain Values
- Derivations
- Rule Expressions
46Attribute Derivation
- An attribute whose value is determined by the
existence or values of one or more other
attributes. - For each derived attribute a derivation formula
must be specified. The derivation formula
identifies the relevant attributes and the
calculation necessary to compute a value for the
derived attribute.
47Functions
- Predefined algorithm on a variable set of
arguments - Examples
- (Numerical) COUNT (ENTITY)
- Counts the occurrences of an entity, returned as
a numerical value - (Numerical) SUM (Numerical)
- Sums all the occurrences of an attribute
48Unary Operators
- Unary operators have only one operator
- Examples
- (Numerical) signing functions
- -(Numerical)
49Binary Operators
- Binary operators always have two operators
- Values returned may be
- Boolean e.g. (Numerical) !(Numerical)
- Numerical (Numerical) (Numerical)
- Character (Character) (Character)
- Date (Date) - (Numerical)
50Derived Attribute Example
51Derived Attribute Example
52Business Rules in Business Modelsthe ultimate
meta-data
- Documented using
- Business Statements
- Data Entities and Attributes
- Entity Associations
- Domain Values
- Derivations
- Rule Expressions
53Requirements for Rule Modeling
- A Stable Data Model
- Populated Static Entities
- Knowledge of the Business
54Identifying Potential RulesExamine model for
combinations of data
- Intersecting Entities
- - combinations of two (or more) different
entities - Principal Entities
- - combinations of foreign keys from static
entities - Role Entities
- - combinations of optional data for an occurrence
of a principal - Structure Entities
- - combinations of different occurrences of a
principal
55Categories of Rule Logic
- Simple Rules
- Used to enforce or preclude the existence of
specific patterns of relational logic - Complex Rules
- Used to control the amplitude of occurrences of
a specific pattern of business logic
56Simple Rules
- Description
- The simplest control mechanism that can be
applied to combinations of other data - Values
- Combinations of values for two attributes may be
labeled as - Mandatory (M)
- Not Allowed (N)
- Optional (O)
57Complex Rules
- Controls combinations more complex than simple
"Yes/No", "On/Off" - Used to amplify the degree and/or nature of an
association - May encompass nature rules
- Values for minimum and maximum
- - 0
- - 1
- - X (a fixed integer)
- - N (indicates no fixed maximum)
58Complex Rules Options
Min 0 0 0 0 1 1 1 X
Max 0 1 X N 0 1 X N
Rule Not allowed Optional, may have
one Optional, may have up to X Optional, may
have more than one Not meaningful
(illogical) Mandatory, must only have
one Mandatory, may have up to X Mandatory, must
have X or more
59Rule Entity
- Usually an INTERSECTING Entity between two static
Entities. Controls population of these static
values in another entity - May be used for either simple or complex rules
- Must have at least a "Read Only" Functional Area
Authority in each Functional Area that can add or
change occurrences in the controlled Entity
60Rule Example for Two Type Entities
PERSON ASSIGNMENT RULE controls PERSON
ORGANIZATION
61Attribute Combinations Example
62TYPE STRUCTURE Entity
- A STRUCTURE Entity which captures business rules
governing the population of another entity - Used to control the valid combinations of
categories (types) in one of two patterns - Population of a Role entity related to a single
occurrence of Principal entity - Population of a Structure entity related to two
occurrences of a Principal entity
63TYPE STRUCTURE Entity
- Business Rules
- A person who is an employee may not also be a
contact - A person who is an employee may not also be a
relative
Since this rule governs only one occurrence of
the principle, the sequence of Person Type Id's
does not provide an alternate interpretation of
the rule.
64TYPE STRUCTURE Controlling a STRUCTURE
- Business Rules
- Every employee must be associated with another
employee - Every contact must be associated with an employee
- Since the rule governs two occurrences of the
principal entity, this rule could be read as - Every contact must be associated with an
employee, or - Every employee must be associated with a contact.
- Capture the valid direction of the rule in the
purpose for the TYPE STRUCTURE entity.
65Complex TYPE STRUCTURE Rule
- If the TYPE STRUCTURE entity is required to
control both a ROLE and a STRUCTURE for the same
TYPE entity, then the occurrences in the TYPE
STRUCTURE must be categorized
66REASON Entity
- A PRINCIPAL Entity that contains descriptions of
the categories of relational logic being captured
in some other Entity - Replaces multiple associations between two
entities - The rules are normally "directional" indicating
amplification of the nature, and maybe degree, of
one association
67REASON Entity Controlling a STRUCTURE Entity
68Multiple Use Intersection Rule
69Alternative to Multiple Use Intersecting Entity
Rule
70Documenting Rules in the Data Model
- All Rule-based Entities should be linked to the
management statement that contains the business
rule being modeled - All Rule-based Entities should have a Controlling
Entity link to the Entity(s) that they control - Rule-based Entities should be designated as
static, and be populated
71Business Rules Meta-Data
- Benefits of Managing Business Rules as Meta-Data
- Techniques for Defining, Documenting, Modeling,
and Implementing Business Rules - The Business Rule Life Cycle
72Business Rule Life Cycle
PLANNING REQUIREMENTS
DATA MODELING
OPERATIONAL
STRATEGIC
TACTICAL
FUNCTION MODELING
ACTIVITY
PROCESS
USE CASE
COMPONENT DESIGN
APPLICATION
DATABASE
OBJECT
SYSTEM IMPLENTATION
73Business Rule Life Cycle Controlled Iteration
of Tasks Techniques
PLANNING REQUIREMENTS
DATA MODELING
OPERATIONAL
Technology Independent
STRATEGIC
TACTICAL
Business Driven Change
FUNCTION MODELING
ACTIVITY
PROCESS
USE CASE
COMPONENT DESIGN
APPLICATION
DATABASE
OBJECT
Technology Dependent
SYSTEM IMPLENTATION
74Business Rule Life Cycle
PLANNING REQUIREMENTS
PLANNING REQUIREMENTS
StrategicDirection
DATA MODELING
InformationRequirement
OPERATIONAL
Technology Independent
STRATEGIC
TACTICAL
FUNCTION MODELING
InformationUsage
ACTIVITY
PROCESS
USE CASE
COMPONENT DESIGN
Technology/SystemRequirements
Technology Dependent
APPLICATION
DATABASE
OBJECT
PerformanceRequirement
SYSTEM IMPLENTATION
75Planning Requirements
- The Planning Requirements capability can be
used to - Document Strategic and Business Plans
- Document Performance Plans
- Capture reengineered business rules and metrics
in text form. - Capture business requirements for information
systems in plain English - Document modeling issues with links to the model
components at issue. - Document computer system requirements
- Model Use Cases
76Planning Framework
Mission and Purpose
External Guidelines and Values
Goals
Policies
External and Internal Environment Assessment
Strategies
Measures Metrics
Critical Success Factors Performance Measures
Objectives
77Strategic Business PlanningThroughout the
Enterprise
StrategicPlan
Corporate Level Sets Enterprise Direction
- Strategic Business Plan
- Mission, Charter and Values
- Strategic Goals and KPIs
- Key Strategies and Priorities
- Tactical or Program Plans
- Key Areas of Focus for each Area
- Strategies Objectives
- Operational Business Plans
- Tasks Measures
- Short term
- Performance Agreements
- KPIs at each Management Level
PerformancePlans
Business Unit Major Enterprise Activities
BusinessPlans
Functional Area Work Groups Sections
PerformanceAgreements
78Strategic Business PlanningThroughout the
Enterprise
StrategicPlan
Corporate Level Sets Enterprise Direction
- Concerns and Issues
- What opportunities (problems) may enhance
(impede) effective achievement of business plans? - Provide feedback, verification, and validation
PerformancePlans
Business Unit Major Enterprise Activities
BusinessPlans
Functional Area Work Groups Sections
PerformanceAgreements
79Planning Requirements
80Planning Requirements
81Plan components (statements) are linked to the
data model and also to the system(s) that
implement the plans.
82Business Rule Life Cycle
PLANNING REQUIREMENTS
StrategicDirection
InformationRequirement
Technology Independent
InformationUsage
Technology/SystemRequirements
Technology Dependent
PerformanceRequirement
SYSTEM IMPLENTATION
83Data Modeling Business Requirements
Management Statements
Data Model
84Review employee skill levels on a quarterly basis
and reallocate personnel immediately to associate
new job skill requirements.
85Logical Data Model
86Data models should have textual and graphical
display versions. Group and derived attributes
are necessary
87Matrices provide the ability to view, edit, and
print links in a straightforward and convenient
manner.
The CRUD matrix (aka Entity/View matrix) is an
effective Data Administration tool. The other
matrix shows the links between statements and
data model components.
88Business Rule Life Cycle
PLANNING REQUIREMENTS
StrategicDirection
InformationRequirement
Technology Independent
InformationUsage
Technology/SystemRequirements
Technology Dependent
PerformanceRequirement
SYSTEM IMPLENTATION
89Function/Process Modeling
INFORMATION MODEL Data or Objects
Input / Output / Control
BUSINESS ACTIVITY
invoke
mechanism
trigger
references
referenced by
BUSINESS EVENT
PEOPLE
provides data to
trigger
BUSINESS PROCESS
invoke
provides data to
invokes
DATA ACCESS PROCESS
DATA MODEL COMPONENTS
manipulate
invoke
90Levels of Process Modeling
Logical Data Process
start
Activity Decomposition
Phase 2 Data Model
Position Management
Accept PRODUCT
no more
continue
found
not found
Read SUPPLIER
Find OTHER
Develop job description
Compare applicant skills to job
Increase job skill levels
none found
found
none chosen
Choose SUPPLIER
chosen
Workflow
Present SUPPLIER
Receive Material Request
Check Warehouse Stock Level
ok
Start
Select Supplier
Evaluate Parts Use
stop
91Activity Based CostingIntegrated With Activity
Modeling
Business Rules
To-Be IDEF0
As-Is IDEF0
Financial Analysis
ABC
Improvement
Diagnosis
92Activity Modeling
Activities are viewed in the detailed diagram or
the hierarchy (equivalent to node
tree). Modifications to either view should
automatically update the other.
93Business Rule Life Cycle
PLANNING REQUIREMENTS
StrategicDirection
InformationRequirement
Technology Independent
InformationUsage
Technology/SystemRequirements
Technology Dependent
PerformanceRequirement
SYSTEM IMPLENTATION
94Database Design
95Data Warehouse Design
96Logical Model to Physical Design Matrix(one to
many)
This Logical to Physical View matrix graphically
shows the relationship between logical model
attributes and physical design data items.
97Data Model to Design Cross Reference
The Design Object Person implements attributes
from the Entities Person and Employee. You must
be able to optimize your physical model to your
particular hardware and software constraints,
without changing or compromising the rules
expressed in the logical model.
98Design to Data Model Cross Reference
The Entity Person is implemented in the Pay
System, the HR system and the Pers Data
system. Duplication is identified for elimination
or synchronization.
99Database and System Design Technology-
Dependence User-Defined Objects
Tables, fields, relationships, and referential
integrity (PKey/FKey) characteristics can be
normalized differently than the data model for
performance needs. Design should be available in
text or diagram form. Design may be extended to
include additional objects such as menus,
screens, dialogs, and more.
100Business Rule Life Cycle
PLANNING REQUIREMENTS
StrategicDirection
InformationRequirement
Technology Independent
InformationUsage
Technology/SystemRequirements
Technology Dependent
PerformanceRequirement
SYSTEM IMPLENTATION
SYSTEM IMPLENTATION
101Generate DDL
102SQL (DDL) Schema Report
103Generate XML
104XML Schema Report
105Business Rules Meta-Data
- Allows Maximum Flexibility
- Reduces System Maintenance
- Simplifies Design and Implementation
- Ensures that systems fully support business
needs - MIS personnel don't need to be business experts
- Rules can change without affecting
implementation effort
- Benefits of Managing Business Rules as Meta-Data
- Techniques for Defining, Documenting, Modeling,
and Implementing Business Rules - The Business Rule Life Cycle
- Business Statements
- Data Entities and Attributes
- Entity Associations
- Domain Values
- Derivations
- Rule Expressions
- Strategically Driven
- Information Centric
- Customer Focused
- Model Based
- Disciplined
- Technology Independent
106Who are you going to call?
Alan PerkinsVice President, Client
ServicesVisible Systems Corporation 901 North
Washington StreetAlexandria, Virginia
22314 800-723-8924 ext. 225 fax
703-739-0074 alan.perkins_at_visible.com http//www.v
isible.com