Business Rule Composer: This is the GUI that we will use to create, manage, and test policies. This is a client component that can connect to any BRE database (more on this later).
Policy: Policy is the unit of execution for rules. You create a policy and then you add rules to it. Later, you test and execute the policy, not the rules by their own.
Policy State: Policies can be at one of the following states:
- Editable: after you create a policy, it is in the “Editable” state.
- Saved: for saving your work, you can save the policy, but it is still open for editing; it’s like saving a file then opening it again for editing.
- Published: when you publish the policy, it is read-only and cannot be edited again. It is not yet ready to be used, but closed for editing; a staging-like behavior.
- Deployed: when you deploy a published policy, it is ready for usage from within applications. You can un-deploy a policy, but you cannot move it back to the editable state.
Policy Versioning: Once a policy is deployed, it gets a version and cannot be edited again. If you want to change the policy, you have to create a new version and deploy it. A single policy can have many versions deployed, and you can instruct your application to consume any version of that policy. You surely can think about how much this feature is helpful…
Rules: Rules are the actual representation of business rules inside a policy. These are similar to the notion of rules you know from traditional development. They contain data (facts), predicates, and actions.
Facts: Data that BRE operates against. You supply BRE your business data and – based on the defined policy and rules – actions are taken.
Fact Source: Fact sources can be XML documents, database, or .NET objects. XML is usually used when calling a policy from BizTalk Server, but it definitely can be used from code. Database is also a powerful fact source, but since most .NET applications deal with data as business objects, this article uses .NET objects as the fact source.
Comments
Post a Comment
Please write comment only that belongs to this blog