210 likes | 360 Views
Business Rules, the New Decision Model and Agile. Charles Bozonier, CBAP Principal Business Analyst, REI Business Analysis Certificate Instructor charlesbozonier@gmail.com . Learning Objectives. Establish a standard business rule method Leverage business rules with decision modeling
E N D
Business Rules, the New Decision Model and Agile Charles Bozonier, CBAP Principal Business Analyst, REI Business Analysis Certificate Instructor charlesbozonier@gmail.com
Learning Objectives Establish a standard business rule method Leverage business rules with decision modeling Utilize decision models to support agile development.
Resources $40.46 on Amazon $44.40 on Amazon
You can do this • Solid foundational structure – down to the sentence structure of the individual rule • We are building an asset that will: • Endure for years • Enable agile development • There is an optimal way to work
What Rules Will We Target? Focus on highest value Focus on rules buried in system logic
How Will We Capture Rules? • Current State Review • Rules captured offline in declarative statements • Confirmed and refined with business present • Reviewed in final form at the user level • Declarative Structure - The 4 Rule Types • Basic • List • Enumerative • Quantitative
How Will We Write the Rules? Basic constraint pattern: Most business rules will fit in this basic pattern: <determiner> <subject> (must | should) [ not ] <characteristic> [(if | unless) <fact>]. Example of basic pattern: A customer must provide the Card Identification number of the credit card used when purchasing online.
Where Will We Store the Rules? Appropriately accessible by defined roles Readily shared with the enterprise Readily updated by Business Analysts Relational structure is supported
Who Will Steward the Rules? Designated individuals who understand the rule structure, and can be held responsible for their quality – Typically supported by the BA in alignment with the business owner’s designates.
When are rules collected? • In the order of the related processes criticality or value • High value rules first • High volume or high risk processes rank over lower volume or lower risk processes.
Why Model Decisions? Rules are individual statements. However, rules are applied in combination with other rules Rules may be organized in families – Rule families are best understood when modeled These combinations are referred to as business logic
Five Characteristics of the Decision Model Defines the business logic asset Simple structure, declarative nature and optimal integrity Easily implemented in technology Neither language nor a grammar – It is a model Effectively manage business logic and rules not as lists referenced in a model but in a model of their own.
Decision Modeling = Agile • Business people readily engaged • Decision models are pre-work • Other models are simplified • Decision models are reusable • Test scripts can be developed sooner • Better business logic quality means less errors
Demonstration Time! Let’s capture some business rules, model a decision, write an agile story and model a decision in the time we have left.
The Business Rules An online customer is only sent business service information messages to their mobile device. “Business Service Information” is defined as communications needed to inform a customer about the status of orders, product recalls and availability of backordered items. An online customer without a mobile device must notified via email about order status.
User Story I am a customer and I want a message to be sent to my mobile device when my order is available for pick up so that I will be able to pick it up when I am on the go.
The Decision Model Business Decision • Mobile device messaging • Business Service Information is YES Conclusion Condition • Send message to mobile device Condition • Mobile Contact Number is YES
STEP Business Decision Methodology Separate the business decisions from all other aspects – including process Trace the business logic from motivation to code and to manual processes Express the business logic plainly Position the business logic for change
So much more to talk about! Questions?