Title: Diapositive 1
1A DSL-mapping approach to Business Rule
Management using AMMA
ANAS ABOUZAHRA Presentation
May 2006, 2nd AMMA/ATL Workshop on Model
Engineering
2Needs
- Rules are being used for many related purposes
- Engineering (Diagnosis rules)
- Commerce (Business rules)
- Law (Legal reasoning)
- Internet (Access authentication)
- multiple ways to model rules which differ
- From one vendor to another
- From one usage context to another
- According to the level of abstraction
Interoperability between existing rules languages
3Bridging rule languages and standards
4The approach
- Global approach to implement the
interoperability between several rules languages
and standards - Using multiple Domain Specific Languages (DSLs)
- Using AMMA (ATLAS Model Management Architecture)
to demonstrate the practical feasibility of the
approach
- An example of mapping to illustrate the proposed
approach - Mapping the OMG PRR proposal (Production Rule
Representation) and the proprietary ILOG Rule
language (IRL)
- Using a similar approach, one can build other
- vertical mappings between two levels of
abstraction - Or horizontal mappings between similar levels
5Domain Specific Languages
- A DSL is a language dedicated to a particular
domain, problem, or task - A DSL may be associated to a given metamodel
If we describe each rule language with a
specific DSL
Interoperability problem
DSL-mapping problem
OMG MDA approach (Model Driven Architecture)
- To meet the integration challenges caused by the
diversity of platforms
6AMMA A DSL building platform (1/2)
- ATLAS, an INRIA team in Nantes, has developed a
DSL-building framework named AMMA - Offering basic facilities to create and
manipulate metamodels and their conforming models
- ATL a model transformation language
- KM3 a simple proprietary textual concrete
- syntax to type metamodels in.
- TCS eases the definition and the
- management of models for which
- metamodels are already defined
7AMMA A DSL building platform (2/2)
8Bridging PRR to IRL (1/6)
- A work realized in ILOG with the PRR team and
the collaboration of the ATLAS team - To design a prototype tool that allows
- transforming PRR (Production Rule Representation)
models, in conformance with the PRR metamodel, to
IRL (ILOG Rule Language) files which can be
directly used by an IRL resolution engine
9Bridging PRR to IRL (2/6)
10Bridging PRR to IRL (3/6)
- Define a KM3 metamodel conforming to the PRR 1.0
metamodel - Define a concrete syntax using TCS to eases the
creation of PRR models - Define an IRL accommodate metamodel for the
application in compliant with the IRL syntax
11Bridging PRR to IRL (3/6)
- Implement the IRL language syntax with TCS
- Define an ATL transformation to translate PRR
models to IRL ones - Optional use AM3 to eases the injection and
extraction of models
12Bridging PRR to IRL (4/6)
PRR 1.0 Metamodel
(PRR OCL) OCL expression language
13Bridging PRR to IRL (5/6)
PRRRuleCondition
IRLCondition
PRRRuleVariables
IRLBindings
PRRRuleActions
IRLActions
OCLOCLExpression
IRLIRLExpressions
OCL subset mappable to IRL
14Bridging PRR to IRL (6/6)
- High level mappings example
rule Condition from p
PRR!RuleCondition to r IRL!Condition
(
irlConditionExp lt- p.conditionExp )
- Expressions mappings example
OCLIteratorExp select ? IRL collect
PRR OCL ?items ?shoppingCart1.getItems()-gtselec
t(e Item e.type ?itemType1 and
e.valuegt 30)-gtsize() gt3 IRL ?items collect
Item(type ?itemType1 valuegt30) in
?shoppingCart1.getItems() where (size gt 3)
15Generalization (1/2)
XX File
XX metamodel
XX XMI Model
16Generalization (2/2)
PRRRuleCondition
XXCondition
PRRRuleVariables
XXBindings
PRRRuleActions
XXActions
OCLOCLExpression
XXXXExpressions
OCL subset mappable to XX
17Conclusion
Lessons
- Representing several rule languages/or standards
by DSLs and bridging those DSLs to get mapping
interoperability between them - Using an MDE approach to implement a wide
support in the business rules domain - The architecture adopted in the realization of
the PRR to IRL mapping tool can be used and
adapted to build mapping bridges between the
other rule languages and standards
Companies feedback
- Surprised by the maturity level of MDE developed
tools like AMMA
18End of the Presentation
- Thanks
- Questions?
- Comments?