Método para complementar la generación de códigos de aplicaciones web desde el diagrama de clases UML

  • Adolfo Vega Fajardo AVF
Palabras clave: técnica de programación, programación orientada a objetos, arquitectura de capas, método de generación de códigos

Resumen

En el desarrollo de aplicaciones web, el mayor esfuerzo se centra en la generación de código, sin embargo, los trabajos de investigación al respecto se enfocan en resolver problemas de diseño, por otro lado, la herramienta case genera código limitado o incompleto y no tiene las especificaciones formales para el desarrollo de aplicaciones web. En este artículo, se propone un nuevo enfoque para completar la generación de códigos a partir del diagrama de clases UML. El enfoque se basa en analizar el archivo del diagrama de clases para luego generar el código. Se ha definido un modelo de diseño como meta-modelo, el cual tiene el formalismo de la metodología de desarrollo de software por capas y está representado por un perfil con extensión XML, de este modo, se extrae las líneas de código XML del archivo que contiene el diagrama de clases, se comparan con el meta-modelo a través de algoritmos y después se genera el código para aplicaciones web. Para validar la propuesta, se ha desarrollado una herramienta situada entre la generación del código automático y la generación de código manual. A partir del uso del indicador tiempo de generación, se demuestra que la generación del código se reduce hasta en un 98 %.

Descargas

La descarga de datos todavía no está disponible.

Citas

Almuallim, H. (1996). An efficient algorithm for optimal pruning of decision trees. Artif. Intell, 347-362.

Basso, F. P. (2016). Automated design of multi-layered web information systems. Journal of Systems and Software, vol. 117, 612-637.

Bennett, J. (2010). Aspect-oriented model-driven skeleton code generation: A graph-based transformation approach. Science of Computer Programming 75, 689_725.

Clemente, P. (2011). Managing crosscutting concerns in component based systems using a model driven development approach,. The Journal of Systems and Software 84 , 1032–1053.

Domínguez, B. P. (2012). A systematic review of code generation proposals from state machine specifications. Information and Software Technology 54, 1045–1066.

Eclipse Luna. (21 de Abril de 2018). Obtenido de www.eclipse.org/downloads/packages/eclipse-modeling-tools/lunasr2

Garrigós, I. (2010). Specification of personalization in web application design. nformation and Software Technology, 991–1010.

Hat, R. (30 de 09 de 2019). http://www.hibernate.org/.

IBM. (20 de Agosto de 2018). IBM Rational Rose. Obtenido de http://www-01.ibm.com/software/awdtools/ developer/rose/

JBOSS. (23 de 09 de 2019). http://richfaces.jboss.org.

Magdalenic, I. (2012). Autogenerator: Generation and execution of programming code on demand. Expert Systems with Applications, 2845–2857.

Mamas, E. (2000). Towards PortableSource Code Representation Using XML. 7th WCRE’2000.

Manoli, A. (2011). Generating operation specifications from UML class diagrams: A model transformation approach. Data & Knowledge Engineering, 70, 365–389.

Mehmood, A. (2013). Aspect-oriented model-driven code generation: A systematic mapping study. Information and Software Technology vol. 55, 395–411.

Microsoft. (23 de 09 de 2019). https://visualstudio.microsoft.com.

Microsystems, S. (04 de Febrero de 2016). JSF. Obtenido de https://javaee.github.io/javaserverfaces-spec/

MKLab. (29 de 05 de 2019). http://staruml.io/.

Papyrus. (30 de Octubre de 2018). Obtenido de http://www.papyrusuml.org/

PHP. (30 de 06 de 2018). Obtenido de PHP: www.php.net

Pinto, M. (2012). Deriving detailed design models from an aspect-oriented ADL using MDD”. The Journal of Systems and Software, 85, 525– 545.

Piraquive, R. G. (2015). Analysis and Improvement of the Management. IEEE Latin America Transactions.

PrimeFaces. (23 de 09 de 2019). https://www.primefaces.org/.

Resig, J. (29 de 05 de 2019). https://jquery.com.

Rincón, M. (2011). Generación Automática de Código a Partir de Máquinas de Estado Finito. Computación y Sistemas Vol. 14 No. 4, 405-421.

Ruiz Catalan, J. (2010). Compiladores Teroria y Implmentación. Madrid: Grupo RC.

Selic, B. (2003). The pragmatics of model-driven development. IEEE Software 20 (5), 19–25.

Thuma, T. (2012). FeatureIDE: An Extensible Framework for. Science of Computer Programming.

Tigris.org. (25 de Setiembre de 2018). Open Source Software Engineering Tools. Obtenido de ArgoUML Modeling Tool: http://argouml.tigris.org

Vega Fajardo, A. (30 de Octubre de 2018). Generación Codigo. Obtenido de www.speeddatasoftware.com/speed/gca.html

Publicado
2020-05-10
Sección
Artículos