Separação e Validação de Regras de Negócio MDA através de Ontologias e Orientação à Aspectos
Resumo
Dois desafios importantes para projetistas MDA consistem em separar as regras de negócio do modelo específico de plataforma e, por fim, garantir que tais regras sejam atendidas pela implementação resultante. Este artigo apresenta uma abordagem que permite a descrição de propriedades de domínio e a verificação de tais propriedades na implementação. Para isso, é feita uma modelagem das propriedades conceituais através de uma ontologia, a qual é posteriormente transformada em aspectos. Estes aspectos são finalmente combinados e automaticamente inseridos no código da aplicação. Assim, as regras de negócio podem ser geradas automaticamente e reutilizadas em outros modelos MDA específicos da plataforma Java. A ferramenta e abordagem foram validadas através da reestruturação de uma aplicação crítica de gerenciamento de fornos industriais.
Referências
AspectJ (2008). “AspectJ Java Aspect-Oriented Programming”. http://www.eclipse.org/ajdt/. Acesso: Abril/2008.
Booch, G., Jacobson, I., Rumbaugh, J. (1999). “Unified Modeling Language – User’s Guide”. Addison-Wesley, 1999.
Braga, R. T. V, Germano, F. S. R., Pacios, S. F., Masiero, P. C. (2007). “AIPLE-IS An Approach to Develop Product Lines for Information Systems Using Aspects”. Simpósio Brasileiro de Componentes, Arquiteturas e Reutilização de Software (SBCARS), 2007.
Dhondt, M., Streten, R. V. D. “Programme Inria Equipes Associées”. http://jacquard.lifl.fr/CALA/CALA2007.html. Acesso: abril/2008.
Dhondt, M. Cibrán, M. A. (2006) “A Slice of MDE with AOP: Transforming High-Level Business Rules to Aspects”. ACM/IEEE 9th International Conference on Model Driven Engineering Languages and Systems (Models), 2006, Genova, Itália.
Djuric, D. 2004 “MDA-Based Ontology Infrastructure”. International Journal on Computer Science and Information Systems, Vol. 1, No. 1, 2004, pp. 91-116.
Freitas, F.. 2003 “Ontologias e Web Semântica”. IV ENIA – Encontro Nacional de Inteligência Artificial, Campinas, Minicurso. Anais do XXIII Congresso da Sociedade Brasileira de Computação, 2003, 52 p.
Guizzard, Giancarlo. (2000) “Uma abordagem metodológica de desenvolvimento para e com reuso, baseada em ontologias formais de domínio”. Dissertação de Mestrado. Universidade Federal do Espírito Santo, Vitória, Julho, 2000.
Haarslev, V., Muller, R.. (2004) “Racer’s User Guide and Reference Manual”. Versão 1.7.19.
Han, Y., Kniesel, G., Cremers, A.B. (2005). “Towards Visual AspectJ by a Meta Model and Modeling Notation”. 6th Aspect-Oriented Software Development Conference (AOSD), 2005.
Horrocks, I., Sattler, U., Tobies, S. (2000). “Reasoning with Individuals for the Description Logics SHIQ”. Proceedings of the 17th Int. Conf. on Automated Deduction (CADE), volume 1831 of Lecture Notes in Computer Science, pages 482-496. Springer, 2000.
Jena. “A Semantic Web Framework for Java”. http://jena.sourceforge.net/. Acesso em abril/2008.
Kiczales, G. (1996). “Aspect-oriented programming”. ACM Computing Surveys, 28A(4), 1996.
Laddad, R. (2003). “AspectJ in Action: Practical Aspect-Oriented Programming”. Manning, 2003. 512 p.
Mellor, J. Stephen et al (2003). “MDA Destilada: Princípios da Arquitetura Orientada por Modelos”. Ed. Ciência Moderna Ltda., p. 15-169, 2003.
OMG (2008). MDA Guide version 1.0.1. Formal Document: 03-06-01. Disponível em: http://www.omg.org/cgi-bin/apps/doc?omg/03-06-01.pdf. Acesso em: maio/2008.
OptimalJ.“Model-Driven Development for Java”. http://www.compuware.com/products/optimalj/, Julho, 2006.
Noy, N., Fergerson, R., Musen., M. 2000. “The knowledge model of Protégé-2000: Combining interoperability and flexibility”. 2nd International Conference on Knowledge Engineering and Knowledge Management (EKAW), Juan-les-Pins, France, 2000.
Poseidon. “Poseidon for UML 4.2”. http://gentleware.com/index.php, Julho, 2006.
Protégé. “Ontology Editor and knowledge-base framework”. http://protege.stanford.edu/. Acesso: Abril/2008.
Santos, D. A., Vieira, Renata, Santana, M. R., Silva, D. M.. (2005) “Web Semântica: Ontologias, Lógica de Descrições e Inferências”. WebMídia 2005. Porto Alegre: SBC, v. 1, p. 127-165, 2005.
Silva, J.B., Pezzin J. (2007). “The formal verification of an application conceptual model using MDA and OWL”. World Congress on Engineering and Computer Science (WCECS), San Francisco, 2007.
Sun (2008). Sun Microsystems (2008). “Java Technology”. http://www.java.sun.com. Abril, 2008.
W3C. World Wide Web Consortium (2008). “OWL Web Ontology Language Guide”. http://www.w3.org/TR/owl-guide/. Acesso :Abril/2008.