Sistema basado en reglas para la validación del despliegue de servicios

Numerosas aplicaciones empresariales desarrolladas hoy en dia se caracterizan por presentar una arquitectura orientada a servicios (SOA, del ingles Service Oriented Architecture) [15]. Su uso facilita la interoperabilidad entre sistemas heterogeneos, al definir una manera estandar de anunciar e invocar servicios que actuan de manera independiente. Ademas, su empleo favorece la fiabilidad, mantenibilidad y escalabilidad de dichas aplicaciones. Una de las actividades a llevar a cabo durante el desarrollo de este tipo de aplicaciones es el despliegue de los servicios, que consiste en realizar todas las acciones necesarias para poder poner dichos servicios en funcionamiento. Es habitual que los servicios cooperen entre śi, estableciendose dependencias entre ellos en funcion de los recursos ofertados y los requisitos demandados, siendo necesario comprobar su disponibilidad. Por otro lado, es necesario tener en cuenta las caracteŕisticas de los entornos sobre los que se realiza el despliegue. Dichos entornos son normalmente heterogeneos, estando constituidos por componentes de diversa indole, y distribuidos, es decir, los servicios suelen ejecutarse sobre distintos nodos que conforman una red. Por otro lado, se debe tener en cuenta que durante el desarrollo de las aplicaciones empresariales se suelen utilizar varios entornos de despliegue, para de esta forma, adecuarse a las necesidades concretas de cada fase del proyecto. Todo ello conduce a que el despliegue sea una actividad compleja que, sin embargo, se realiza normalmente de forma manual, siendo una de las principales fuentes de error durante el desarrollo de los sistemas, lo que implica un aumento en el tiempo requerido para su puesta en funcionamiento y en el coste asociado. Este hecho ha dado lugar a la investigacion en este campo, con el objetivo de facilitar la realizacion de dicha tarea.

[1]  Philippe Merle,et al.  Towards Model-Driven Validation of Autonomic Software Systems in Open Distributed Environments , 2007 .

[2]  Ling Li,et al.  Modeling uncertainties involved with software development with a stochastic Petri net , 2006, Expert Syst. J. Knowl. Eng..

[3]  David E. Wilkins,et al.  A Call for Knowledge-Based Planning , 2001, AI Mag..

[4]  Christian Pérez,et al.  Generic application description model: toward automatic deployment of applications on computational grids , 2005, The 6th IEEE/ACM International Workshop on Grid Computing, 2005..

[5]  Dennis Heimbigner,et al.  Deployment and dynamic reconfiguration planning for distributed software systems , 2007, Software Quality Journal.

[6]  John C. Grundy,et al.  Deployed software component testing using dynamic validation agents , 2005, J. Syst. Softw..

[7]  Nancy Clark,et al.  IT-management software deployment: field findings and design guidelines , 2008, CHiMiT '08.

[8]  Lionel C. Briand On the many ways software engineering can benefit from knowledge engineering , 2002, SEKE '02.

[9]  Maria Fox,et al.  Validating Plans in the Context of Processes and Exogenous Events , 2005, AAAI.

[10]  Hyunbo Cho,et al.  A Petri Nets based functional validation for services composition , 2010, Expert Syst. Appl..

[11]  Sunil Vadera,et al.  Artificial Intelligence Applications for Improved Software Engineering Development: New Prospects , 2009 .

[12]  Engr. Farah Naaz Raza Artificial Intelligence Techniques in Software Engineering ( AITSE ) , .

[13]  Chouki Tibermacine,et al.  Enforcing Architecture and Deployment Constraints of Distributed Component-Based Software , 2007, FASE.

[14]  Shensheng Zhang,et al.  A dynamically reconfigurable system based on workflow and service agents , 2004, Eng. Appl. Artif. Intell..

[15]  David R. Barstow,et al.  Artificial intelligence and software engineering , 1987, ICSE '87.

[16]  Richard S. Hall,et al.  Evaluating Software Deployment Languages and Schema , 1998 .

[17]  Vijay Karamcheti,et al.  Optimal resource-aware deployment planning for component-based distributed applications , 2004, Proceedings. 13th IEEE International Symposium on High performance Distributed Computing, 2004..

[18]  Setsuo Tsuruta,et al.  Knowledge-Based Validation Method for Validating Intelligent Systems , 2002, FLAIRS Conference.

[19]  Carlo Ghezzi,et al.  Towards a methodology for lifelong validation of service compositions , 2008, SDSOA '08.

[20]  Avrim Blum,et al.  Fast Planning Through Planning Graph Analysis , 1995, IJCAI.

[21]  Mario Cannataro,et al.  The knowledge grid , 2003, CACM.

[22]  Gabriela Esperón,et al.  Artificial Intelligence for Software Quality Improvement , 2010 .

[23]  Richard S. Hall,et al.  A cooperative approach to support software deployment using the Software Dock , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[24]  Maria Fox,et al.  VAL: automatic plan validation, continuous effects and mixed initiative planning using PDDL , 2004, 16th IEEE International Conference on Tools with Artificial Intelligence.

[25]  Félix Cuadrado,et al.  A Model for Enabling Context-Adapted Deployment and Configuration Operations for the Banking Environment , 2009, 2009 Fifth International Conference on Networking and Services.

[26]  Daniel Rubio Pro Spring Dynamic Modules for OSGi Service Platforms , 2008 .