| |
Back to BOOK PAGE
Table of ContentsPreface Chapter 1: Drooling over JBoss Rules Chapter 2: Getting the software Chapter 3: Meet the Guvnor Chapter 4: Guided Rules with the Guvnor Chapter 5: From Guvnor to JBoss IDE Chapter 6: More rules in the JBoss IDE Chapter 7: Testing your Rules Chapter 8: Data and Rules in Excel Chapter 9: Domain Specific Language (DSL) and RuleFlow Chapter 10: Deploying Rules in Real Life Chapter 11: Looking under the Cover Chapter 12: Advanced Drools Features Index
- Chapter 1: Drooling over JBoss Rules
- Who are you? What's your problem?
- Does this sound like where you work?
- Life or death business rules
- Business rules in your organization
- Exercise — rules in your organization
- The chocolate factory
- Build your own rule engine in Excel
- Why can't the tech guys write the rules for me?
- Why existing solutions don't cut it
- Rule engines to the rescue
- Other rules (Microsoft Outlook)
- Meet JBoss Rules
- A bit more on open source
- The JBoss Rules community
- Where to get help
- How to ask for help
- How do I write the rules
- Introducing the BRMS (Guvnor)
- Parts of the solution
- Rules editor
- Rules compiler
- Runtime
- Fact model
- Java
- Rule repository
- Rest of the system
- When not to use a rule engine
- Summary
- Chapter 2: Getting the software
- What are we going to install?
- Who should install it?
- Installing Java
- Installing JBoss
- Installing the BRMS/Guvnor
- Installing Eclipse
- Installing the Drools plug-in
- Installing Maven
- Installing sample projects for this book
- Setting up the sample project in Eclipse
- Getting Maven and Eclipse to work together
- Chapter 3: Meet the Guvnor
- Taking a tour with the Guvnor
- Getting started
- General navigation
- Administration
- Loading the samples
- What did we just do?
- More on the admin page
- Rules
- Packages
- Deployment
- QA—Quality Analysis
- Hello World example
- Chapter 4: Guided Rules with the Guvnor
- Passing information in and out
- Building the fact model
- Importing the fact model into Guvnor
- Guided rules using the fact model
- The step-by-step answer
- Running this scenario
- What just happened?
- Chapter 5: From Guvnor to JBoss IDE
- A more powerful rule
- Have a go
- Updating the rule—step by step
- The When part
- Looking behind the curtain—a text-based rule
- More on the guided editor
- Possible comparisons
- Condition types
- Add more options
- Multiple field constraints
- The Then part
- More rule options and attributes
- Text editing
- Introduction to the JBoss IDE
- Hello World in the JBoss IDE editor
- Chapter 6: More rules in the JBoss IDE
- Rule syntax
- Patterns for the When part
- Patterns for the Then part
- Shipping chocolate bars
- The problem (and remind me why I need business rules)
- Why rules scale better—a reminder
- Getting and building the sample
- Rules
- ChocolateShipment.java
- CustomerOrder.java
- OompaLoompaDate
- The RuleRunner file
- MultipleRulesExample
- More powerful rule syntax
- Lefthand side
- Righthand side—Then
- Guided editor in the JBoss IDE
- Chapter 7: Testing your Rules
- Testing when building rules
- Making testing interesting
- Testing using Guvnor
- Testing using FIT
- Getting FIT
- The FIT requirements document
- Running FIT on our sample
- What just happened?
- What can go wrong?
- The FIT plumbing
- What is unit testing?
- Why unit test?
- Unit testing the Chocolate Shipments sample
- What just happened?
- What if it goes wrong?
- Failures and errors
- Testing an entire package
- Chapter 8: Data and Rules in Excel
- Reading data from Excel
- Business rules for this sample
- Getting and running the sample
- Input
- Rules
- Running the sample
- What's going on?
- Under the covers
- More on Cells and Ranges
- Sophisticated, but repetitive rules
- Some Excel magic
- Decision tables behind the scenes
- Header information
- RuleTable—Evaluate the buy trades
- RuleTable—Execute the buy trades
- Other rule tables
- Mixing rules and decision tables
- Running the Chocolate Trading example
- What just happened?
- Have a go
- Chapter 9: Domain Specific Language (DSL) and RuleFlow
- What is a Domain Specific Language (DSL)?
- Expanders
- The DSL format
- Other DSL editing options
- Writing DSLs
- Meet the sample
- Running the DSL example
- Guvnor and DSL-based rules
- Ruleflow
- Ruleflow is not workflow
- That Homeloan example again
- Linking rules to Ruleflow
- A quick introduction to stateful applications
- Stateful rules and Ruleflow
- Chapter 10: Deploying Rules in Real Life
- One size fits all architecture
- What needs to be deployed?
- Rules as code or data?
- Deploying rules
- Push or pull?
- Loading our rules
- Looking inside RuleRunner.java
- Helper methods
- Alternative method—RuleAgent
- Web deployment
- Chapter 11: Looking under the Cover
- Rule engine concepts
- Facts or objects
- Working memory
- Pattern matching, Agenda, and Activations
- Conflict resolution
- A more dynamic Agenda
- Truth maintenance
- Back to the future (with chocolate shipping)
- Logging working memory
- Looking at the working memory log
- Drools Audit Log Viewer
- Rete algorithm
- Rete in action
- Debugging rules
- Debugging rules in the Eclipse IDE
- Rules debug perspective
- Other Drools views while debugging
- When to log, when to test, and when to debug
- Chapter 12: Advanced Drools Features
- Pigeons, Drools, and Complex Event Processing
- Implementing Complex Event Processing using Fusion
- More powerful events
- Inline beans
- Loading data when your beans don't exist—Smooks
- From pigeons to biscuits—Drools Solver for your local supermarket
- How Drools Solver works
- Implementing a Solver
- More information on Solver
- Forward and backward chaining
- Changing the conflict resolution methodology
- Standard rule engine API—JSR 94
- New API
- Drools flow—a full workflow engine
- New features in Guvnor
- Does this still sound like where you work?
Back to BOOK PAGE
| |
|