Lightweight Approach to Connect Business Rules with Aspects

Abstract

Aspectual connection that compose business rule, refers to the code in charge of not only triggering the application of the rules at certain events, but also gathering the necessary information for their application and incorporating their results in the rest of the core application functionality. We propose an approach to connect business rule with aspect systematically. This approach is agile, programming language-independent, business rules type independent and it can be used in different stages of development. This approach considers the identification, analysis and construction of connections with aspects, (aspectual connection). We use our experience and previous works to define the initial steps, and complete them with the analysis of interactions and propose methods to implement aspectual connections code. We have developed a tool that supports this approach.

Share and Cite:

S. Casas, C. Marcos, C. Fuentes, J. Enriquez and G. Vidal, "Lightweight Approach to Connect Business Rules with Aspects," Journal of Software Engineering and Applications, Vol. 5 No. 2, 2012, pp. 76-84. doi: 10.4236/jsea.2012.52012.

Conflicts of Interest

The authors declare no conflicts of interest.

References

[1] M. Jackson. “Software Requirements and Specifications,” ACM Press & Addison Wesley, New York, 1995.
[2] J. Leite J and A. Padua, “A Client Oriented Requirements Baseline,” Proceedings of the 2nd IEEE International Symposium on Requirements Engineering, York, 27-29 March 1995, pp. 108-115.
[3] G. Kiczales, L. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J. Loingtier and J. Irwin, “Aspect-Oriented Programming,” Proceedings Object-Oriented Programming, 11th European Conference, Jyvaskyla, 9-13 June 1997.
[4] J. Araujo, and J. Whittle, “Modeling Volatile Concerns as Aspects,” In: E. Dubois and K. Pohl, Eds., CAiSE 2006, LNCS 4001, Springer-Verlag, Berlin, 2006, pp. 544-558.
[5] S. Casas, “Clasificacion y Documentacion de Conexiones Aspectuales para Reglas de Negocio,” I Encuentro Internacional de Computacion e Informatica del Norte de Chile, 2010.
[6] M. Cibrán, M. D’Hondt and V. Jonckers, “Aspect-Oriented Programming for Connecting Business Rules,” Proceedings of the 6th International Conference on Business Information Systems, Colorado, 5 June 2003.
[7] R. Laddad, “AspectJ in action,” Manning Publications Co., Greenwich, 2003.
[8] M. Cibrán and M. D’Hondt, “Composable and Reusable Business Rules Using AspectJ,” Workshop on Software engineering Properties of Languages for Aspect Technologies (SPLAT) at the International Conference on AOSD, Boston, 17-21 March 2003.
[9] G. Vidal, J. Enriquez and S. Casas, “Integración de Reglas de Negocio con Conectores Aspectuales Spring,” 11th Argentine Symposium on Software Engineering, Buenos Aires, 2-3 September 2010.
[10] J. Leite and M. Leonardi, “Business Rules as Organizational Policies,” IEEE IWSSD9: 9th International Workshop on Software Specification and Design, Ise-shima, 16-18 April 1998, pp. 68-76. doi:10.1109/IWSSD.1998.667921
[11] R. Ross, “The BRS Rule Classification Scheme,” 2001.
[12] C. Date, “What Not How: The Business Rules Approach to Application Development,” Addison-Wesley Longman Inc, Reading, 2000.
[13] R. Ross, “Principles of the Business Rule Approach,” Addison Wesley, Reading, 2003.
[14] Arsanjani, “Rule Object 2001: A Pattern Language for Adaptive and Scalable Business Rule Construction,” Technical Report, IBM T.J. Watson Research Centre, Yorktown Heights, 2001.
[15] Jess homepage, 2011. http://www.jessrules.com/
[16] S. Casas and J. Enriquez, “Mapping Connection Templates to Spring Aspects to Integrate Business Rules,” Workshop of Early Aspects AOSD, Pernambuco, 21 March 2011.
[17] Business Rule Group, “Defining Business Rules: What Are They Really?” 2001. http://www.businessrulesgroup.org/.
[18] The AspectJ Programming Guide, 2011; http://eclipse.org/aspectj
[19] C. M. Riveill, M. Blay-Fornarino and A. Pinna-Dery, “Transparent and Dynamic Aspect Composition,” Workshop on Software Engineering Properties of Languages and Aspects Technologies, VII AOSD, Bonn, 20 March 2006.
[20] CaesarJ homepage, 2011. http://caesarj.org
[21] Spring Framework Guide, 2011. http://www.springsource.org/
[22] XRules Homepages, 2011. http://www.xrules.org/
[23] B. Demuth, H. Hu?mann and S. Loecher, “OCL as a Specification Language for Business Rules in Database Applications,” Proceedings of the 4th International Conference on the Unified Modeling Language, Modeling Languages, Concepts, and Tools, Springer-Verlag, London, 2001. doi:10.1007/3-540-45441-1_9
[24] M. Cibran, “Connecting High-Level Business Rules with Object-Oriented Applications: An Approach Using Aspect-Oriented Programming and Model-Driven Engineering,” Ph.D. Dissertation, Universiteit Brussel, Brussel, 2007
[25] D. Suvee, W. Vanderperren and V. Jonckers, “JAsCo: An Aspect-Oriented Approach Tailored for Component Based Software Development,” Proceedings of the 2nd International Conference on Aspect-Oriented Software Development, Boston, 17-21 March 2003.
[26] M. Cibrán, M. D’Hondt, D. Suvee, W. Vanderperren and V. Jonckers, “Linking Business Rules to Object-Oriented Software Using JAsCo#,” Journal of Computational Methods in Sciences and Engineering, Vol. 5, No. 1, 2005, pp. 13-27.
[27] K. De Schutter, T. D′’Hondt, V. Jonckers and H. Doggen, “Experiences in Modularizing Business Rules into Aspects,” ICSM 24th IEEE International Conference on Software Maintenance, Beijing, 28 September-4 October 2008, pp. 448-451.
[28] J. Conejero, J. Hernandez, A. Moreira and J. Araujo, “Discovering Volatile and Aspectual Requirements Using a Crosscutting Pattern,” 15th IEEE International Requirements Engineering Conference, New Delhi, 15-19 October 2007. doi:10.1109/RE.2007.33
[29] K. van der Berg, J. Conejero and J. Hernandez, “Analysis of Crosscutting in Early Software Development Phases based on Traceability,” Transactions on AOSD, Special Issue on Early Aspects, Springer-Verlag, Berlin, 2007.

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.