[ Pobierz całość w formacie PDF ]
.org).For now, then, think of business rules as the set of conditions that govern a businessevent so that it occurs in a way that is acceptable to the business.That is, a businessevent is unsuccessful when it fails to meet the business s rules for a successfulbusiness event.The business leaders determine the difference between a successfuland unsuccessful business event.They do this by stating rules that define all possibleand permissible conditions for a successful business event along with those that are notpermissible.If it helps, consider the business event from a database perspective.That is, databaseupdates represent the finalization of a business event in that the database holds the32evidence, such as an order scheduled for shipment, that the business event hasoccurred to successful completion.The business event should not go to successfulcompletion if the conditions surrounding it do not measure up to the business s rules orrequirements.For example, if the target business event is the placing of an order, theorder should not be entered into the database (that is, accepted as an approved order)unless the items ordered are valid, the items ordered are available for shipment in thedesired timeframe, and the financial agreement between the customer and thebusiness is acceptable.Whether you consider a business rules approach to be a methodology for the businesspeople or for systems development people, the business rules perspective focuses onthe thinking or decision-making capacity of the organization.The businessorganization sets the rules by which relevant parties, such as customers, suppliers,employees, and corresponding systems, are to behave.The rules (or absence of rules)represent the degrees of freedom that an organization allows for its customers,employees, and partners.In the latter case, the business organization may allow thesupplier or customer to establish (and change) his or her own rules of interaction.Doingso allows for customized interfaces to Web-based applications, for example.Classifying Business RulesThere are different types of statements that qualify as business rules according to thedefinition above.Unfortunately, there is no universal business rule classificationscheme.Table 2.1 documents business rule classification schemes proposed byvarious individuals and organizations.It is not important for you to know theseclassification schemes, only to understand that there are many of them and perhapsmore to come.However, if you read Chapters 13 and 14 which containsimplementations of this book s case study in commercial rules products you may wantto refer to Table 2.1 to better understand a particular product s solution.Table 2.1: Classifications of Business RulesSOURCE BUSINESS RULE CLASSIFICATION SCHEMEBusiness Rules Derivation: a statement of knowledge that isderived from other knowledge in the businessGroup (2000)" Mathematical calculation" InferenceStructural assertion: a defined concept or astatement of a fact that expresses some aspect ofthe structure of the enterprise.This encompassesboth terms and the facts assembled from theseterms." Terms" FactsAction assertion: a statement of a constraint orcondition thatlimits or controls the actions of the enterprise" Authorization" Condition" Integrity constraint33Table 2.1: Classifications of Business RulesSOURCE BUSINESS RULE CLASSIFICATION SCHEMERoss (2001) " Facts" Terms" Rules" Constraints" Derivations" Inferences" Timing" Sequence" HeuristicsGeneral Data Analysis Attribute rulesRule Types " Uniqueness" Optionality (null)" Value checkComputationsInferencesMulti-entity-attribute constraintsRelationship rules" Cardinality" Optionality" Referential integrity" Counts of cardinalityC.J.Date (2000) " Constraint" State constraint" Transition constraint" Stimulus/response" Derivation" Computation" InferenceC.J.Date (2000) Chris Date further proposes another scheme forconstraints that is based on the structure of thedata itself" Domain constraints" Column constraints" Table constraints (constraints within one table)" Database constraints (constraints among two ormore tables)Versata Inc." Referential integrity rules" Derivations (attribute computations)34Table 2.1: Classifications of Business RulesSOURCE BUSINESS RULE CLASSIFICATION SCHEME" Validation (attribute mandatory/optional values,min, max)" Constraint (attribute-to-attribute constraintswithin one entity?)" Action/event" Presentation rulesUSoft Inc." Restriction rules: business constraints on theinformation to be stored, what is not allowed(Mallens [1997])" Behavior rules: how the system is to behave ingivensituations, what the system should doautomatically" Deductive rules: how information should bederived or calculated" Presentation rules: how the system presentsitself to the user, how work and tasks are to beorganized" Instruction rules: how the user is to operate thesystem in certain situationsThe usefulness of a business rule classification scheme depends on the purposesserved by it for the intended audience.A business rule classification scheme is helpfulin discovering rules, analyzing them, and even designing for them.Some rule classification schemes are intended for application developer audiences.These may contain classifications that differentiate validation rules from referentialintegrity rules, for example, because there is usually a difference between these twotypes from a programming perspective.A programmer may code for validation rules,but referential integrity rules may be enforced in the DBMS.Look at the Versata ruleclassifications in Table 2.1 as an example of classifications that may be moremeaningful to application developers.Other rule classification schemes are intended for database audiences.These maycontain classifications that differential rules for tables versus rules for columns becausethese may have different performance implications, for starters.Look at C.J.Date s(2000) more formal rule classifications in Table 2.1 for examples of these.Still another way to classify rules is to divide rules into entity rules, attribute rules, andrelationship rules.Such a classification scheme is most intuitive to data analysts anddata modelers because these people would prefer to document relationship rules withthe relationship and attribute rules with the attribute, for example.Note that Table 2.1makes reference to the most familiar types of attribute and relationship rules (attributeuniqueness, attribute optionality, attribute value checks, relationship cardinality,relationship optionality, and relationship referential integrity).Table 2 [ Pobierz całość w formacie PDF ]