SlideShare una empresa de Scribd logo
1 de 23
Business Rules Separation and Reuse
   Using MDA, OWL and AspectJ
       Jaguaraci B. Silva and Luciano P. Barreto
            {jaguarac,lportoba}@ufba.br

   Project: Deacouple Business Rules in the MDA
                 Models Building

 Federal University of Bahia (UFBA)
 Department of Computer Science (DCC)
 Distributed Systems Laboratory (LaSiD)
Motivation

• To ensure business rules/domain properties does not
  violate the specified properties in the application
  domain.
• Allows developers to both describe and corroborate
  domain properties at run-time.
• Increase dependability because of MDA growth up in
  several applications context.
• The business rules could not typically have been
  cared by the implementation code produced
  automatically.

2009-11                ISSRE 2009                   2
Objectives

• Business rules separation, allows secure and automatic
  way to insert final application code generated by
  independent models (PIM).

• The business rules are defined on ontology domain and
  are transformed in aspectJ. The aspects are merged
  and compiled in a specific model (PSM).

• OWLToAspectJ: a tool that automatically translates
  ontology business rules (OWL:Restrictions) in aspectJ.

2009-11                  ISSRE 2009                    3
Development Process Outline




2009-11              ISSRE 2009         4
Process Overview

(1) An ontology about application domain is conceived using a
   ontology tool (Protégé) ODM-based (Ontology Definition
   Metamodel) .
(2) The domain ontology generated into a platform independent
   model (PIM) then is converted to UML language using ODM-UML
   profile bridge.
(3) The PIM business rules will be transformed in a PSM model across
   of OWLtoAspectJ tool. Diverse PSMs models can be generated,
   being at less one:
    – for business rules
    – for other application PSM wished (e.g. Java SE, Java EE, RMI,
       Corba).
(4) Finally, the code application combines the business rules and
   application PSM using weaving process (Aspect-oriented
   Programming).

2009-11                       ISSRE 2009                           5
Contributions

• In making an approach to emerging technologies
  (MDA, OWL and AOP), was built a tool specifically for
  it (OWLtoAspectJ).

• In this boarding, was add a set of activities to orient
  the development process using MDA, OWL and AOP.

• Our approach uses OWL-DL and a reasoner tool
  (Racer) instead of OCL. It helps to verify the domain
  properties in a formal way for critical systems. The
  UML language does not support it actually.

2009-11                  ISSRE 2009                     6
Case Study – Furnace Management Application




2009-11                 ISSRE 2009                 7
Case Study – Overview of Industrial Process

• Reengineering of industrial furnace management
  application of Ferroalloys (e.g. Ferrochrome).

• For each alloys iron exist a recipe that has inputs (e.g.
  carbon, chromium, silicon). Theses inputs are put on
  in the industrial ovens in according to recipe made by
  production analyst.

• Sensors sends the plan data for a programmable
  logic controller (PLC) system managed.

2009-11                      ISSRE 2009                   8
Case Study – Domain Engineering Process

•     Conceptual modeling of application domain
     –    Functional requirements and business rules analysis
     –    UML for knowledge representation
     –    Domain modeling using ontology
     –    Verification of domain properties
     1. Domain modeling
           • Definition of concepts, axioms, properties, relationship
             between concepts
     2. Verification of domain properties
          •    Business rules definition using PAL (Protégé Axiomatic
               Language)
          •    Instance creations and business rules satisfatibility using
               reasoner for knowledge validation

2009-11                            ISSRE 2009                            9
Case Study – Functional Requirements Analisys




2009-11                   ISSRE 2009                  10
Case Study – Knowledge Representation in UML




2009-11                  ISSRE 2009                 11
Case Study – Translation business rules to PAL

                  Business rules                                           PAL

     1- An oven should only produce one                     ∀Product.Is_made_in_Oven exactly 1
product by time.

      2- During charge of ovens them should                 =Oven.Makes_a_Product exactly 1
produce exactly one product, should have inputs             =Oven.Has_a_Recipe exactly 1
that are part of one specific recipe to one kind of
product.                                                    ∀Oven.Has_a_Recipe only Recipe



     3– The oven is charge by the operator.                ∀Oven.Is_Charged_by_Operator only
                                                      Operator

     4 – An recipe has at less one input.                   ∀Recipe.Has_Input some Input




 2009-11                                       ISSRE 2009                                        12
Case Study – Verification of Domain (Instance)




2009-11                   ISSRE 2009                   13
Case Study – Business Rules Validation




2009-11                   ISSRE 2009               14
Case Study – PSM Building

• Generation of application domain from ontology to
  OWL
     – Classes, properties, relationship between classes, axioms
• Building PSM model to Java platform
     – UML backend (Protégé plugin for XMI)
     – Generate from PIM UML model to application Java code
       importing domain model XMI using UML tool
• Building PSM model to business rules
     – Separation and generation automatically of business rules
       from conceptual domain in OWL-DL format


2009-11                       ISSRE 2009                           15
Case Study – Business rules in OWL format

          <owl:
          <owl:Restriction>
           <owl:
           <owl:onProperty>
            <owl:
            <owl:ObjectProperty rdf:ID=“Is_Stored_in_the_Silo"/>
                                rdf:
           </owl:
           </owl:onProperty>
           <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"> 1
           <owl:               rdf:datatype="http://www.   org/2001
                                                               2001/XMLSchema#int">
           </owl:
           </owl:maxCardinality>
          </owl:
          </owl:Restriction>
          <owl:
          <owl:ObjectProperty rdf:about="#Is_Stored_in_the_Silo">
                              rdf:
          <rdfs:
          <rdfs:domain rdf:resource="#Input"/>
                       rdf:

          <rdfs:
          <rdfs:range rdf:resource="#Silo"/>
                      rdf:
          <owl:
          <owl:inverseOf rdf:resource="#Has_Input"/>
                         rdf:

          </owl:
          </owl:ObjectProperty>


2009-11                                          ISSRE 2009                             16
Case Study – OWLtoAspectJ tool




2009-11               ISSRE 2009           17
Case Study – Business rules translated to aspectJ

    package businessRules;

    import furnace.Operator;

      public aspect Oven_Is_Charged_by_Operator {

          public pointcut Operator() :
              call(* *.*Oven(..)) &&
              (!(call(* *.getOven(*)) || call(* *.setOven(*))));

         before():Operator() {
             Object obj = thisJoinPoint.getTarget();
             if (!(obj instanceof Operator)){
                       System.out.print("n          Exception     Rule:
    FornoE_carregado_por_Operador");
             }
          }
    }


2009-11                            ISSRE 2009                          18
Case Study – Business rules validation in run-time




2009-11                  ISSRE 2009                     19
Related works

• AOP and MDA:
   – Crosscut concerns (non-functional requirements) and
     business rules [CALA-INRIA]
   – PSM models generation in LOA (Aspect-oriented Language)
     [CALA-INRIA, LASID-UFBA]
• MDA and OWL:
   – Domain modeling and reuse using ontology [OMG]
   – Bridge between OWL and UML using ODM profile [LORE-
     SFU Surrey]
   – UML formalization using OWL-DL [Cin-UFPE, LASID-UFBA]


2009-11                    ISSRE 2009                     20
Conclusion

• Across of needs to check the domain properties
  defined for dependability of critical systems, was
  created a domain modeling process ontology-based.
• The definition of business rules by an ontology editor
  and validations them using reasoner (Racer), has
  warranty of functional requirements understading.
• Business rules extraction and validation before
  generating the PSMs on PIM level (OWL ontology).
  Improved reuse of business rules easier and can
  avoid implementation code fail because it is
  generates automatically in final application code.
2009-11                  ISSRE 2009                   21
Future works

• The business rules formalization before translates it
  to aspectJ for full warranty dependability them.
• Aspects concorrency evaluation from view point of
  business rules overlap.
• OWLtoAspectJ improve to standardize the violation
  messages and building a rules repository to merge
  rules in software produtc lines.
• Other works in progress in LASID involving formal
  verification and model transformation.

2009-11                 ISSRE 2009                   22
Business Rules Separation and Reuse
   Using MDA, OWL and AspectJ
       Jaguaraci B. Silva and Luciano P. Barreto
            {jaguarac,lportoba}@ufba.br

   Project: Deacouple Business Rules in the MDA
                 Models Building

 Federal University of Bahia (UFBA)
 Department of Computer Science (DCC)
 Distributed Systems Laboratory (LaSiD)

Más contenido relacionado

Similar a Business Rules Separation and Reuse Using MDA, OWL and AspectJ

Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...
Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...
Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...Alkis Vazacopoulos
 
6 rpt oracle_plugin-anitha_krishnamurthy
6 rpt oracle_plugin-anitha_krishnamurthy6 rpt oracle_plugin-anitha_krishnamurthy
6 rpt oracle_plugin-anitha_krishnamurthyIBM
 
RPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRoopa Nadkarni
 
Angular js
Angular jsAngular js
Angular jsymtech
 
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...Steve Speicher
 
Introduction to the wso2 carbon platform webinar
Introduction to the wso2 carbon platform   webinarIntroduction to the wso2 carbon platform   webinar
Introduction to the wso2 carbon platform webinarWSO2
 
Introduction to the WSO2 Carbon Platform
Introduction to the WSO2 Carbon Platform  Introduction to the WSO2 Carbon Platform
Introduction to the WSO2 Carbon Platform WSO2
 
Eating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic AutomatesEating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic AutomatesCA | Automic Software
 
Service-Level Objective for Serverless Applications
Service-Level Objective for Serverless ApplicationsService-Level Objective for Serverless Applications
Service-Level Objective for Serverless Applicationsalekn
 
Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)Umar Alharaky
 
XPages is Workflow's new best friend
XPages is Workflow's new best friendXPages is Workflow's new best friend
XPages is Workflow's new best friendStephan H. Wissel
 
Rapid Tools(swift_suite) intro
Rapid Tools(swift_suite) introRapid Tools(swift_suite) intro
Rapid Tools(swift_suite) introJulie Jackson
 
Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...
Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...
Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...InSync2011
 
COBWEB: Towards an Optimised Interoperability Framework for Citizen Science
COBWEB: Towards an Optimised Interoperability Framework for Citizen ScienceCOBWEB: Towards an Optimised Interoperability Framework for Citizen Science
COBWEB: Towards an Optimised Interoperability Framework for Citizen ScienceCOBWEB Project
 
Mahmoud_Elassar_Resume_Aug2015
Mahmoud_Elassar_Resume_Aug2015Mahmoud_Elassar_Resume_Aug2015
Mahmoud_Elassar_Resume_Aug2015mahmoudelassar
 
Release 12 features work arounds and Upgrade
Release 12 features work arounds and UpgradeRelease 12 features work arounds and Upgrade
Release 12 features work arounds and UpgradePrasad Gudipaty M.S., PMP
 

Similar a Business Rules Separation and Reuse Using MDA, OWL and AspectJ (20)

Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...
Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...
Building Cogeneration Planning Scheduling Systems using IBM ILOG ODME, CPLEX ...
 
Resume
ResumeResume
Resume
 
6 rpt oracle_plugin-anitha_krishnamurthy
6 rpt oracle_plugin-anitha_krishnamurthy6 rpt oracle_plugin-anitha_krishnamurthy
6 rpt oracle_plugin-anitha_krishnamurthy
 
RPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha KrishnamurthyRPT Oracle Plugin - Anitha Krishnamurthy
RPT Oracle Plugin - Anitha Krishnamurthy
 
Angular js
Angular jsAngular js
Angular js
 
Harikrishna yaddanapudi
Harikrishna yaddanapudiHarikrishna yaddanapudi
Harikrishna yaddanapudi
 
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
EclipseCon 2013 Learn and share about integrations using Eclipse Lyo, OSLC an...
 
Shenouda Gamil (CV)
Shenouda Gamil (CV)Shenouda Gamil (CV)
Shenouda Gamil (CV)
 
Introduction to the wso2 carbon platform webinar
Introduction to the wso2 carbon platform   webinarIntroduction to the wso2 carbon platform   webinar
Introduction to the wso2 carbon platform webinar
 
Introduction to the WSO2 Carbon Platform
Introduction to the WSO2 Carbon Platform  Introduction to the WSO2 Carbon Platform
Introduction to the WSO2 Carbon Platform
 
Eating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic AutomatesEating our Own Dogfood - How Automic Automates
Eating our Own Dogfood - How Automic Automates
 
CV_ANTONY_JOSEPH1
CV_ANTONY_JOSEPH1CV_ANTONY_JOSEPH1
CV_ANTONY_JOSEPH1
 
Service-Level Objective for Serverless Applications
Service-Level Objective for Serverless ApplicationsService-Level Objective for Serverless Applications
Service-Level Objective for Serverless Applications
 
Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)Simulation Tracking Object Reference Model (STORM)
Simulation Tracking Object Reference Model (STORM)
 
XPages is Workflow's new best friend
XPages is Workflow's new best friendXPages is Workflow's new best friend
XPages is Workflow's new best friend
 
Rapid Tools(swift_suite) intro
Rapid Tools(swift_suite) introRapid Tools(swift_suite) intro
Rapid Tools(swift_suite) intro
 
Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...
Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...
Databse & Technology 2 _ Shan Nawaz _ Oracle 11g Top 10 features - not your u...
 
COBWEB: Towards an Optimised Interoperability Framework for Citizen Science
COBWEB: Towards an Optimised Interoperability Framework for Citizen ScienceCOBWEB: Towards an Optimised Interoperability Framework for Citizen Science
COBWEB: Towards an Optimised Interoperability Framework for Citizen Science
 
Mahmoud_Elassar_Resume_Aug2015
Mahmoud_Elassar_Resume_Aug2015Mahmoud_Elassar_Resume_Aug2015
Mahmoud_Elassar_Resume_Aug2015
 
Release 12 features work arounds and Upgrade
Release 12 features work arounds and UpgradeRelease 12 features work arounds and Upgrade
Release 12 features work arounds and Upgrade
 

Más de Jaguaraci Silva

Mapa mental desenvolvimento ágil
Mapa mental desenvolvimento ágilMapa mental desenvolvimento ágil
Mapa mental desenvolvimento ágilJaguaraci Silva
 
Mapa Mental sobre Engenharia de Software
Mapa Mental sobre Engenharia de SoftwareMapa Mental sobre Engenharia de Software
Mapa Mental sobre Engenharia de SoftwareJaguaraci Silva
 
Mapa mental envolvendo os conceitos sobre dependabilidade
Mapa mental envolvendo os conceitos sobre dependabilidadeMapa mental envolvendo os conceitos sobre dependabilidade
Mapa mental envolvendo os conceitos sobre dependabilidadeJaguaraci Silva
 
Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...Jaguaraci Silva
 
What agile teams think about agile principles
What agile teams think about agile principlesWhat agile teams think about agile principles
What agile teams think about agile principlesJaguaraci Silva
 
FRAMEWORK FACTO - Governança Tecnológica Corporativa
FRAMEWORK FACTO - Governança Tecnológica CorporativaFRAMEWORK FACTO - Governança Tecnológica Corporativa
FRAMEWORK FACTO - Governança Tecnológica CorporativaJaguaraci Silva
 
FACTO Framework - Introdução Amigável a Governança de TI
FACTO Framework - Introdução Amigável a Governança de TIFACTO Framework - Introdução Amigável a Governança de TI
FACTO Framework - Introdução Amigável a Governança de TIJaguaraci Silva
 
SOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationSOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationJaguaraci Silva
 
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...Jaguaraci Silva
 
Windows Server 2008 R2 Overview
Windows Server 2008 R2 OverviewWindows Server 2008 R2 Overview
Windows Server 2008 R2 OverviewJaguaraci Silva
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioJaguaraci Silva
 
Controle Remoto de Residências
Controle Remoto de ResidênciasControle Remoto de Residências
Controle Remoto de ResidênciasJaguaraci Silva
 
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0Jaguaraci Silva
 
Virtualização de Cluster na plataforma Microsoft.
Virtualização de Cluster na plataforma Microsoft.Virtualização de Cluster na plataforma Microsoft.
Virtualização de Cluster na plataforma Microsoft.Jaguaraci Silva
 
Técnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web servicesTécnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web servicesJaguaraci Silva
 
Usando dispositivos móveis no apoio á gerência de configuração
Usando dispositivos móveis no apoio á gerência de configuraçãoUsando dispositivos móveis no apoio á gerência de configuração
Usando dispositivos móveis no apoio á gerência de configuraçãoJaguaraci Silva
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioJaguaraci Silva
 
Modelagem de Processo CMMI N3
Modelagem de Processo CMMI N3Modelagem de Processo CMMI N3
Modelagem de Processo CMMI N3Jaguaraci Silva
 
Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...
Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...
Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...Jaguaraci Silva
 

Más de Jaguaraci Silva (20)

Oracle soa suite 11 g
Oracle soa suite 11 gOracle soa suite 11 g
Oracle soa suite 11 g
 
Mapa mental desenvolvimento ágil
Mapa mental desenvolvimento ágilMapa mental desenvolvimento ágil
Mapa mental desenvolvimento ágil
 
Mapa Mental sobre Engenharia de Software
Mapa Mental sobre Engenharia de SoftwareMapa Mental sobre Engenharia de Software
Mapa Mental sobre Engenharia de Software
 
Mapa mental envolvendo os conceitos sobre dependabilidade
Mapa mental envolvendo os conceitos sobre dependabilidadeMapa mental envolvendo os conceitos sobre dependabilidade
Mapa mental envolvendo os conceitos sobre dependabilidade
 
Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...Managing Technical Debt - A Practical Approach Using Continuous Integration a...
Managing Technical Debt - A Practical Approach Using Continuous Integration a...
 
What agile teams think about agile principles
What agile teams think about agile principlesWhat agile teams think about agile principles
What agile teams think about agile principles
 
FRAMEWORK FACTO - Governança Tecnológica Corporativa
FRAMEWORK FACTO - Governança Tecnológica CorporativaFRAMEWORK FACTO - Governança Tecnológica Corporativa
FRAMEWORK FACTO - Governança Tecnológica Corporativa
 
FACTO Framework - Introdução Amigável a Governança de TI
FACTO Framework - Introdução Amigável a Governança de TIFACTO Framework - Introdução Amigável a Governança de TI
FACTO Framework - Introdução Amigável a Governança de TI
 
SOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM CertificationSOA Service-oriented Architecture Fundamentals IBM Certification
SOA Service-oriented Architecture Fundamentals IBM Certification
 
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
Fundamentos Em Business Process Management Modelagem de Processos de Negócio ...
 
Windows Server 2008 R2 Overview
Windows Server 2008 R2 OverviewWindows Server 2008 R2 Overview
Windows Server 2008 R2 Overview
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem Fio
 
Controle Remoto de Residências
Controle Remoto de ResidênciasControle Remoto de Residências
Controle Remoto de Residências
 
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
Utilizando RUP e Modelagem de processo para especificar aplicações Web 2.0
 
Virtualização de Cluster na plataforma Microsoft.
Virtualização de Cluster na plataforma Microsoft.Virtualização de Cluster na plataforma Microsoft.
Virtualização de Cluster na plataforma Microsoft.
 
Técnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web servicesTécnicas para implementar aspectos de confiança em Web services
Técnicas para implementar aspectos de confiança em Web services
 
Usando dispositivos móveis no apoio á gerência de configuração
Usando dispositivos móveis no apoio á gerência de configuraçãoUsando dispositivos móveis no apoio á gerência de configuração
Usando dispositivos móveis no apoio á gerência de configuração
 
Protocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem FioProtocolos De Transporte Para Redes Sem Fio
Protocolos De Transporte Para Redes Sem Fio
 
Modelagem de Processo CMMI N3
Modelagem de Processo CMMI N3Modelagem de Processo CMMI N3
Modelagem de Processo CMMI N3
 
Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...
Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...
Manual ou Metodologia para Modelagem de Processos Usando Business Process Man...
 

Último

Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 

Último (20)

Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

Business Rules Separation and Reuse Using MDA, OWL and AspectJ

  • 1. Business Rules Separation and Reuse Using MDA, OWL and AspectJ Jaguaraci B. Silva and Luciano P. Barreto {jaguarac,lportoba}@ufba.br Project: Deacouple Business Rules in the MDA Models Building Federal University of Bahia (UFBA) Department of Computer Science (DCC) Distributed Systems Laboratory (LaSiD)
  • 2. Motivation • To ensure business rules/domain properties does not violate the specified properties in the application domain. • Allows developers to both describe and corroborate domain properties at run-time. • Increase dependability because of MDA growth up in several applications context. • The business rules could not typically have been cared by the implementation code produced automatically. 2009-11 ISSRE 2009 2
  • 3. Objectives • Business rules separation, allows secure and automatic way to insert final application code generated by independent models (PIM). • The business rules are defined on ontology domain and are transformed in aspectJ. The aspects are merged and compiled in a specific model (PSM). • OWLToAspectJ: a tool that automatically translates ontology business rules (OWL:Restrictions) in aspectJ. 2009-11 ISSRE 2009 3
  • 5. Process Overview (1) An ontology about application domain is conceived using a ontology tool (Protégé) ODM-based (Ontology Definition Metamodel) . (2) The domain ontology generated into a platform independent model (PIM) then is converted to UML language using ODM-UML profile bridge. (3) The PIM business rules will be transformed in a PSM model across of OWLtoAspectJ tool. Diverse PSMs models can be generated, being at less one: – for business rules – for other application PSM wished (e.g. Java SE, Java EE, RMI, Corba). (4) Finally, the code application combines the business rules and application PSM using weaving process (Aspect-oriented Programming). 2009-11 ISSRE 2009 5
  • 6. Contributions • In making an approach to emerging technologies (MDA, OWL and AOP), was built a tool specifically for it (OWLtoAspectJ). • In this boarding, was add a set of activities to orient the development process using MDA, OWL and AOP. • Our approach uses OWL-DL and a reasoner tool (Racer) instead of OCL. It helps to verify the domain properties in a formal way for critical systems. The UML language does not support it actually. 2009-11 ISSRE 2009 6
  • 7. Case Study – Furnace Management Application 2009-11 ISSRE 2009 7
  • 8. Case Study – Overview of Industrial Process • Reengineering of industrial furnace management application of Ferroalloys (e.g. Ferrochrome). • For each alloys iron exist a recipe that has inputs (e.g. carbon, chromium, silicon). Theses inputs are put on in the industrial ovens in according to recipe made by production analyst. • Sensors sends the plan data for a programmable logic controller (PLC) system managed. 2009-11 ISSRE 2009 8
  • 9. Case Study – Domain Engineering Process • Conceptual modeling of application domain – Functional requirements and business rules analysis – UML for knowledge representation – Domain modeling using ontology – Verification of domain properties 1. Domain modeling • Definition of concepts, axioms, properties, relationship between concepts 2. Verification of domain properties • Business rules definition using PAL (Protégé Axiomatic Language) • Instance creations and business rules satisfatibility using reasoner for knowledge validation 2009-11 ISSRE 2009 9
  • 10. Case Study – Functional Requirements Analisys 2009-11 ISSRE 2009 10
  • 11. Case Study – Knowledge Representation in UML 2009-11 ISSRE 2009 11
  • 12. Case Study – Translation business rules to PAL Business rules PAL 1- An oven should only produce one ∀Product.Is_made_in_Oven exactly 1 product by time. 2- During charge of ovens them should =Oven.Makes_a_Product exactly 1 produce exactly one product, should have inputs =Oven.Has_a_Recipe exactly 1 that are part of one specific recipe to one kind of product. ∀Oven.Has_a_Recipe only Recipe 3– The oven is charge by the operator. ∀Oven.Is_Charged_by_Operator only Operator 4 – An recipe has at less one input. ∀Recipe.Has_Input some Input 2009-11 ISSRE 2009 12
  • 13. Case Study – Verification of Domain (Instance) 2009-11 ISSRE 2009 13
  • 14. Case Study – Business Rules Validation 2009-11 ISSRE 2009 14
  • 15. Case Study – PSM Building • Generation of application domain from ontology to OWL – Classes, properties, relationship between classes, axioms • Building PSM model to Java platform – UML backend (Protégé plugin for XMI) – Generate from PIM UML model to application Java code importing domain model XMI using UML tool • Building PSM model to business rules – Separation and generation automatically of business rules from conceptual domain in OWL-DL format 2009-11 ISSRE 2009 15
  • 16. Case Study – Business rules in OWL format <owl: <owl:Restriction> <owl: <owl:onProperty> <owl: <owl:ObjectProperty rdf:ID=“Is_Stored_in_the_Silo"/> rdf: </owl: </owl:onProperty> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"> 1 <owl: rdf:datatype="http://www. org/2001 2001/XMLSchema#int"> </owl: </owl:maxCardinality> </owl: </owl:Restriction> <owl: <owl:ObjectProperty rdf:about="#Is_Stored_in_the_Silo"> rdf: <rdfs: <rdfs:domain rdf:resource="#Input"/> rdf: <rdfs: <rdfs:range rdf:resource="#Silo"/> rdf: <owl: <owl:inverseOf rdf:resource="#Has_Input"/> rdf: </owl: </owl:ObjectProperty> 2009-11 ISSRE 2009 16
  • 17. Case Study – OWLtoAspectJ tool 2009-11 ISSRE 2009 17
  • 18. Case Study – Business rules translated to aspectJ package businessRules; import furnace.Operator; public aspect Oven_Is_Charged_by_Operator { public pointcut Operator() : call(* *.*Oven(..)) && (!(call(* *.getOven(*)) || call(* *.setOven(*)))); before():Operator() { Object obj = thisJoinPoint.getTarget(); if (!(obj instanceof Operator)){ System.out.print("n Exception Rule: FornoE_carregado_por_Operador"); } } } 2009-11 ISSRE 2009 18
  • 19. Case Study – Business rules validation in run-time 2009-11 ISSRE 2009 19
  • 20. Related works • AOP and MDA: – Crosscut concerns (non-functional requirements) and business rules [CALA-INRIA] – PSM models generation in LOA (Aspect-oriented Language) [CALA-INRIA, LASID-UFBA] • MDA and OWL: – Domain modeling and reuse using ontology [OMG] – Bridge between OWL and UML using ODM profile [LORE- SFU Surrey] – UML formalization using OWL-DL [Cin-UFPE, LASID-UFBA] 2009-11 ISSRE 2009 20
  • 21. Conclusion • Across of needs to check the domain properties defined for dependability of critical systems, was created a domain modeling process ontology-based. • The definition of business rules by an ontology editor and validations them using reasoner (Racer), has warranty of functional requirements understading. • Business rules extraction and validation before generating the PSMs on PIM level (OWL ontology). Improved reuse of business rules easier and can avoid implementation code fail because it is generates automatically in final application code. 2009-11 ISSRE 2009 21
  • 22. Future works • The business rules formalization before translates it to aspectJ for full warranty dependability them. • Aspects concorrency evaluation from view point of business rules overlap. • OWLtoAspectJ improve to standardize the violation messages and building a rules repository to merge rules in software produtc lines. • Other works in progress in LASID involving formal verification and model transformation. 2009-11 ISSRE 2009 22
  • 23. Business Rules Separation and Reuse Using MDA, OWL and AspectJ Jaguaraci B. Silva and Luciano P. Barreto {jaguarac,lportoba}@ufba.br Project: Deacouple Business Rules in the MDA Models Building Federal University of Bahia (UFBA) Department of Computer Science (DCC) Distributed Systems Laboratory (LaSiD)