210 likes | 366 Views
DROOLS, Harmon y Remotes, and Business Rules. Katanosh Morovat. Business Rules. This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation as a one package
E N D
DROOLS, Harmony Remotes, and Business Rules Katanosh Morovat
Business Rules • This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation as a one package • Business Rules declare business structure or behavior of the business • Business rules describe the operations, definitions and constraints that exist in an organization • They include policies, requirements, and conditional statements that are used to determine the tactical actions that take place in the applications and systems
Business Rules' Features • They always resolve to true or false • They are atomic • They define the rules clearly and make sure that rules don’t conflict
Business Rules’ Groups • Static • A constraint or derivation rule that is applied to each individual state of the business • Dynamic • A rule that is concerned to a request of actions in response to events
Business Rules- Example • Business rule could show the computation of taxes for each employee’s wages • When Each employee gains less that $….. monthly Then Taxes is 0.
Business Rules Categories • A statement of business rules falls into one of four categories: • Definition of business terms • Facts • Constrains • Derivations
Business Rules Engine • A software system that executes a set of business rules that may come from several sources • Business rules are components of business rules engine
Business Rules Engine’s Types • It might be executed in two different methods such as: • Forward chaining • This method typically starts with the available data and uses rules to extract more data until a goal is reached • Backward chaining • This method typically starts with a list of goals or a hypothesis and works backwards from the consequent to the antecedent to search for available data that will support any of these consequents
Business Rules Management system • A software system that is used to deploy, monitor and maintain the variety and complexity of the business rules that are used by operational system within an organization • Business rules engine is generally provided as a component of business rules management system
Business Rules Management System • It includes, at least: • A repository, storing decision logic to be externalized from application code • Tools, using by both technical developer and business experts to define and manage business rules • A runtime environment applications, using business rules engine, can execute and manage business rules within BRMS
DROOLS (cont.) • A software system includes several projects which is prepared by Jboss company • Business Rule Management System • It has been implemented based on Charles Forgy’s Rete algorithm • It is written in java
DROOLS (cont.) • It provides Declarative Programming • It is flexible enough to match the semantics of all problem domains with Domain Specific Languages (DSL) via XML using a schema to define the problem domain • It introduces the Business Logic integration Platform which provides a unified and integrated platform forRules, Workflow and Event Processing
DROOLS - Projects • It consists of several project: • Drools Guvnor (business rules manager) • Drools Expert (rules engine) • Drools Flow (process/workflow) • Drools Fusion (event processing/temporal reasoning) • Drools Planner (automated planning)
Drools Guvnor • It is a business rule manager which is a combination of core drools and other tools • A business rules manager allows managing rules in a multi-user environment with user friendly interfaces • Guvnor is a web and network components for managing rules
Drools Expert • Drools Expert is a declarative, rule based, coding environment • This allows users to focus on "what they want to do", and not the "how to do this". • It uses the AI concepts for defining rules ( knowledge Representation, Reasoning, and Expert System)
Drools Flow • It provides workflow to the Drools platform • A workflow or business process shows the order of execution of several steps, Describes a complex composition of different tasks • Drools Flow empowers end users to specify, execute and monitor their business logic
Drools Fusion • It is the module which is in charge of the enabling of the event processing capabilities • An event processing concept deals with the processing of multiple events with the goal of identifying the meaningful events among the all events • Event processing uses some techniques such as detection of complex patterns of many events, event correlation and abstraction, event hierarchies, and relationships between events
Drools Planner • Drools Planner optimizes planning to do more business with less resources. • For example Every organization faces planning problems such as provide products or services with a limited set of constrained resources (employees, assets, time and money) • It solves use case, such as Agenda scheduling, Educational timetabling, Job shop scheduling and so on. These use cases are probablyNP-complete, this means It's easy to verify a given solution to a problem in reasonable time, but it might not be an optimal solution
Harmony Remotes • Home theater control • smartphone as a remote control • Smart Keyboard remote