I would strongly recommend business rules engines like Drools as open source or Commercial Rules Engine such as LiveRules.
- When you have a lot of business policies which are volatile in nature, it is very hard to maintain that part of the core technology code.
- The rules engine provides a great flexibility of the framework and easy to change and deploy.
- Rules engines are not to be used everywhere but need to used when you have lot of policies where changes are inevitable on a regular basis.