9
XVII Convención y Feria Internacional Informática 2018HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS TOOL TO SUPPORT THE ENGINEERING PROCESS FOR THE DEVELOPMENT OF VIDEOGAMES Andy Hernández Paez 1 , Eylin Campillo Santos 2 , Dianne Cordero García 3 1 Universidad de las Ciencias Informáticas, Centros de Entornos Interactivos 3D, Cuba, [email protected], 17100 2 Universidad de las Ciencias Informáticas, Centros de Entornos Interactivos 3D, Cuba, [email protected] 3 Universidad de las Ciencias Informáticas, Centros de Entornos Interactivos 3D, País, [email protected] RESUMEN: Un proceso ingenieril está compuesto por actividades de ingeniería de software enfocadas a es- pecificar y representar las características funcionales de un producto de calidad. Estas actividades definen la base para la implementación de las operaciones de un software. El desarrollo de software dinámico, que simule una apariencia de la realidad, se ha visto condicionado por la utilización de marcos de trabajo, metodologías y/o modelos de procesos. Los videojuegos pertenecen a este dominio de aplicación. En la Universidad de las Cien- cias Informáticas se encuentra el Centro de Entornos Interactivos 3D, Vertex, el cual desarrolla videojuegos. En dicho centro las representaciones y especificaciones previas a la etapa de implementación son diseñadas te- niendo en cuenta buenas prácticas propuestas por un marco de trabajo ingenieril para el proceso de desarrollo de videojuegos. En este marco de trabajo se generan productos de trabajo ingenieriles centrados en mecanis- mos. Para apoyar la gestión de estos productos de trabajo ha sido necesaria la implementación de una herra- mienta basada en la web. El presente trabajo persigue como objetivo, desarrollar una herramienta web para la gestión de artefactos del marco de trabajo ingenieril en el proceso de desarrollo de videojuegos. La herramienta es centralizada y el control de acceso a sus funcionalidades se basa en los roles propuestos por este marco de trabajo. La validez de la herramienta fue comprobada con la aplicación del método de Iadov, del cual se obtiene una adecuada satisfacción y criterios positivos a partir de su utilización. Palabras Clave: herramienta, marco de trabajo ingenieril, Vertex, videojuegos. ABSTRACT: An engineering process is composed of software engineering activities focused on specifying and representing the functional characteristics of a quality product. These activities define the basis for the implemen- tation of software operations. The development of dynamic software, which simulates an appearance of reality, has been conditioned by the use of frameworks, methodologies and/or process models. Videogames belong to this application domain. At the University of Computer Science, the Center of 3D Interactive Environments, Ver- tex, develops videogames. In this center the representations and specifications prior to the implementation stage are designed taking into account good practices proposed by an engineering framework for the videogames de- velopment process. In this work area, engineering work products are centered on mechanisms. To support the management of these work products, it has been necessary to implement a web-based tool. The present work aims to develop a web tool for the management of artifacts of the engineering framework in the process of devel- oping videogames. The tool is centralized and access control to its functionalities is based on the roles proposed by this framework. The validity of the tool was tested with the application of the Iadov method, from which ade- quate satisfaction and positive criteria are obtained from its use.

HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

“XVII Convención y Feria Internacional Informática 2018”

HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS

TOOL TO SUPPORT THE ENGINEERING PROCESS FOR THE DEVELOPMENT OF VIDEOGAMES

Andy Hernández Paez1, Eylin Campillo Santos2, Dianne Cordero García3

1 Universidad de las Ciencias Informáticas, Centros de Entornos Interactivos 3D, Cuba, [email protected], 17100

2 Universidad de las Ciencias Informáticas, Centros de Entornos Interactivos 3D, Cuba, [email protected]

3 Universidad de las Ciencias Informáticas, Centros de Entornos Interactivos 3D, País, [email protected]

RESUMEN: Un proceso ingenieril está compuesto por actividades de ingeniería de software enfocadas a es-pecificar y representar las características funcionales de un producto de calidad. Estas actividades definen la base para la implementación de las operaciones de un software. El desarrollo de software dinámico, que simule una apariencia de la realidad, se ha visto condicionado por la utilización de marcos de trabajo, metodologías y/o modelos de procesos. Los videojuegos pertenecen a este dominio de aplicación. En la Universidad de las Cien-cias Informáticas se encuentra el Centro de Entornos Interactivos 3D, Vertex, el cual desarrolla videojuegos. En dicho centro las representaciones y especificaciones previas a la etapa de implementación son diseñadas te-niendo en cuenta buenas prácticas propuestas por un marco de trabajo ingenieril para el proceso de desarrollo de videojuegos. En este marco de trabajo se generan productos de trabajo ingenieriles centrados en mecanis-mos. Para apoyar la gestión de estos productos de trabajo ha sido necesaria la implementación de una herra-mienta basada en la web. El presente trabajo persigue como objetivo, desarrollar una herramienta web para la gestión de artefactos del marco de trabajo ingenieril en el proceso de desarrollo de videojuegos. La herramienta es centralizada y el control de acceso a sus funcionalidades se basa en los roles propuestos por este marco de trabajo. La validez de la herramienta fue comprobada con la aplicación del método de Iadov, del cual se obtiene una adecuada satisfacción y criterios positivos a partir de su utilización.

Palabras Clave: herramienta, marco de trabajo ingenieril, Vertex, videojuegos.

ABSTRACT: An engineering process is composed of software engineering activities focused on specifying and representing the functional characteristics of a quality product. These activities define the basis for the implemen-tation of software operations. The development of dynamic software, which simulates an appearance of reality, has been conditioned by the use of frameworks, methodologies and/or process models. Videogames belong to this application domain. At the University of Computer Science, the Center of 3D Interactive Environments, Ver-tex, develops videogames. In this center the representations and specifications prior to the implementation stage are designed taking into account good practices proposed by an engineering framework for the videogames de-velopment process. In this work area, engineering work products are centered on mechanisms. To support the management of these work products, it has been necessary to implement a web-based tool. The present work aims to develop a web tool for the management of artifacts of the engineering framework in the process of devel-oping videogames. The tool is centralized and access control to its functionalities is based on the roles proposed by this framework. The validity of the tool was tested with the application of the Iadov method, from which ade-quate satisfaction and positive criteria are obtained from its use.

Page 2: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

KeyWords: engineering framework, tool, Vertex, videogames.

1. INTRODUCCIÓN

En la actualidad, la informática tiene como propósito convertirse en una de las ramas más productivas para Cuba. Para lograr esta meta es trascendental el lugar que ocupa la Universidad de las Ciencias Informáticas (UCI). La UCI, además de su perfil académico, encaminado a preparar profesionales en el campo de la informática, tiene otros perfiles como la investigación y producción de software [1]. Por la magnitud que han alcanzado estos proyectos y el peso que tienen dentro de la economía del país es preciso contar con procesos bien definidos que ayuden a lograr una alta calidad en los productos desarrollados. Dentro de estos procesos se encuen-tran los que se encargan de aplicar buenas prácti-cas de ingeniería de software. Estas pautas contri-buyen a una adecuada especificación y validación de los componentes de un producto de software para no incurrir en problemas posteriores que impli-quen un retraso en el cronograma, un presupuesto erróneo o hasta la posible cancelación del proyecto.

Estudios actuales realizados por el Instituto de Ad-ministración de Proyectos (PMI, por sus siglas en inglés) sobre el éxito del desarrollo de software reflejan que Requisitos es una de las disciplinas que más incidencias tiene en el fracaso de los proyec-tos, una muestra de estos factores se puede perci-bir en el libro de Gestión de Requisitos, “Una com-petencia esencial para el éxito de proyectos y pro-gramas” [2].

Para facilitar este proceso en Cuba y el mundo, el uso de herramientas para auxiliar la gestión de re-quisitos se ha convertido en un aspecto importante en la disciplina de requisitos [3]. Por tal motivo, es-tas herramientas usadas por los administradores para automatizar procesos de dicha disciplina, han disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en la reducción de errores. En la prác-tica, para gestionar los requisitos el personal del equipo de desarrollo confía en muchas ocasiones en herramientas ofimáticas tradicionales como Word, Excel y Access.

La UCI dedicada al desarrollo de software no está exenta de ellos y consta con herramientas que sus-tentan a la disciplina de requisitos. En función de la línea de desarrollo y el Expediente de Proyecto de Desarrollo (EPD) se hace necesario tener presente las nuevas especificaciones definidas por el pro-grama de mejora que se lleva a cabo en la institu-ción y por ende desarrollar herramientas que le den soporte. Actualmente esta universidad está com-

puesta por varios centros de desarrollo que trabajan con este EPD y lo ajustan a sus necesidades [4].

Dentro de estos centros se encuentra, el Centro de Entornos Interactivos 3D, Vertex, el cual tiene como principal misión: generar soluciones integrales, tec-nologías, productos y servicios informáticos para la industria, que cumplan con las necesidades y ex-pectativas de los clientes; potenciando la formación especializada y las investigaciones afines que ga-ranticen un alto valor agregado. El objetivo primor-dial de este centro radica en desarrollar productos y servicios informáticos asociados a entornos virtua-les interactivos 3D [5], con un alto valor agregado, resultado de un ciclo completo de I+D+i: Investiga-ción-Desarrollo e Innovación [6].

Dentro del proceso de producción de software del centro Vertex se encuentra una línea de desarrollo de videojuegos, la cual implementa estos productos sobre el motor de juego Unity 3D. Se emplea esta herramienta porque la misma está enfocada en los bloques de construcción que permiten desarrollar plugins y módulos integrables a la interfaz de usua-rio, de manera flexible, lo cual potencia la reutiliza-ción, obteniéndose como consecuencia la acelera-ción y optimización del tiempo de desarrollo y mini-mizando el esfuerzo necesario para su realización, ya que las soluciones creadas son adaptables a futuros cambios [7]. Las especificaciones y repre-sentaciones correspondientes a las implementacio-nes de estos productos de software deben ser bien detalladas y esquemáticas. Sin embargo, teniendo en cuenta las prácticas ingenieriles tradicionales no se logra una correspondencia efectiva entre lo mo-delado y lo implementado [8].

En los videojuegos la definición de requisitos fun-cionales no se trata como en el desarrollo de siste-mas de gestión de otros dominios de aplicación, sino que estos se especifican en términos de me-canismos. Estos últimos engloban los elementos que conforman las partes de un videojuego como sistema a nivel de escena y por detrás de esta. Los elementos básicos que incluye un mecanismo son: objetos, propiedades, comportamientos y relaciones [9].

Por tal motivo, para el trabajo de los videojuegos en este centro se definió un marco de trabajo ingenieril aplicable a cualquier escenario de desarrollo de videojuegos con actividades que se deben ejecutar durante este proceso y generan resultados diferen-tes a un proyecto de software de cualquier otro do-minio de aplicación. Los entregables o especifica-ciones a generar no son concebidos de la misma forma en las disciplinas estándares de: Negocio,

Page 3: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

Requisitos, Análisis y Diseño, Implementación, Pruebas y Despliegue. En ocasiones se trata de seguir la forma estándar para encapsular los requi-sitos que contribuirían con el proceso de desarrollo, propuestos por metodologías ágiles y tradicionales, así como marcos de trabajo, pero en su gran mayo-ría no representan un apoyo base para la disciplina de implementación; o incluso las actividades que se ejecutan no están acordes a las necesidades des-criptivas para garantizar la calidad del producto final.

El marco de trabajo propuesto está estructurado (ver Figura 1) en 20 actividades, las cuales están divididas en 5 etapas que complementan el proceso de desarrollo de videojuegos, dichas etapas son: Conceptualización, Diseño, Implementación, Prueba y Mantenimiento. Además, incluye técnicas para llevar a cabo las actividades englobadas en las eta-pas definidas, herramientas, roles y productos de trabajos o artefactos ingenieriles. Por otro lado, el marco de trabajo durante su ejecución adoptará las actividades de calidad definidas en el Sistema de Gestión de la Calidad para los proyectos de desa-rrollo de la UCI [8].

Figura. 1: Marco de trabajo ingenieril para el proceso

de desarrollo de videojuegos

Una vez ejecutadas las actividades se obtienen como salidas, los productos de trabajo siguientes: Diseño del videojuego, Criterios para validar meca-nismos [10], Especificación de mecanismos, Modelo de diseño, Arquitectura de software, Modelo de implementación, Guía de jugabilidad, Registro de defectos y Reporte de Postmortem. Estos entrega-bles representan las características fundamentales para contribuir con el proceso ingenieril durante el desarrollo de videojuegos. Los artefactos que se obtienen como salidas en cada una de las etapas

funcionan como elementos de entrada para la si-guiente etapa [8].

Teniendo en cuenta la experiencia en el análisis, diseño y desarrollo de videojuegos en el centro Ver-tex existen algunas limitantes que entorpecen el proceso de producción. Existen productos de traba-jo que no cumplen con las normas y estándares establecidos por un programa de mejora, lo que provoca incumplimiento de las políticas y prácticas definidas a nivel institucional. No se documentan adecuadamente los productos de trabajo necesarios para cumplir con la adecuación del marco de trabajo para videojuegos aplicables a proyectos de software del centro Vertex. En ocasiones la disponibilidad, centralización y uniformidad de los productos de trabajo entorpecen el proceso de desarrollo para realizar su gestión. No existe una correlación o iden-tidad en las especificaciones realizadas durante la disciplina de requisitos. El análisis anterior conduce al problema: ¿Cómo contribuir a la generación de artefactos del marco de trabajo ingenieril para el proceso de desarrollo de videojuegos en el Centro de Entornos Interactivos 3D, Vertex? El objetivo consiste en: desarrollar una herramienta web para la gestión de artefactos del marco de trabajo inge-nieril en el proceso de desarrollo de videojuegos.

2. CONTENIDO

2.1 Materiales y métodos

Para el modelado de la propuesta de solución se trabajó con la herramienta de Ingeniería de Softwa-re Asistida por Computadoras (CASE, por sus siglas en inglés) Visual Paradigm (VP). VP aporta un gran apoyo en cuanto a la generación de diagramas UML como es el caso de los diagramas de clases, dia-gramas de casos de uso del sistema, diagramas de secuencias. Por otro lado, en el proceso de captura de requisitos con el diagrama de requisitos, en el modelado de bases de datos con los diagramas de entidad-relación, diagramas ORM (mapeo objeto-relacional) y por último en las matrices de trazabili-dad [11].

PHP y Java son dos tecnologías que desde su lan-zamiento siempre han venido precedidas de deba-tes acerca de las ventajas y desventajas. En el mundo de los desarrolladores, en la mayoría de los temas, especialmente en los lenguajes de progra-mación existe diversidad de criterios [12]. En esta investigación se ha llegado a la selección de PHP (PHP Hypertext Pre-processor) por su simplicidad, pues permite la generación de código de manera rápida ya que cuenta con una amplia gama de fun-ciones predefinidas y seguridad porque tiene pro-tección contra ataques, suministrando niveles de seguridad [13].

Después de seleccionado el lenguaje de programa-ción con que se va a trabajar se realiza un análisis

Page 4: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

sobre el framework de desarrollo a utilizar. En PHP, algunos de los frameworks más importantes son: Zend, Symfony, Codeigniter, Yii y Cake PHP [14].

Se optó por el framework Yii, ya que [14]:

Posee una curva rápida de aprendizaje, tiene una excelente comunidad, foros y demás.

Utiliza el patrón Modelo-Vista-Controlador (MVC) de una manera fácil de entender y muy organizado.

Posee una excelente documentación.

Cuenta con un módulo Gii para la autogene-ración de código, no sólo del modelo, sino que tiene scafolding el cual te genera vistas y controladores (CRUD). Además, puedes ge-nerar o definir tus propias plantillas para esa autogeneración. En caso de no gustar las plantillas que trae por defecto, se les puede cambiar el estilo y la estructura de los directo-rios por lo que se convierte en un framework bastante flexible.

Como gestor de base de datos se seleccionó Post-greSQL por ser libre, robusto y para sistemas serios e importantes (bases de datos de bancos) garantiza la consistencia de dichas bases de datos. Además, aunque en ocasiones puede ser algo lento en su proceso, soporta transacciones, tiene mejor soporte para triggers y procedimientos en el servidor, es una tecnología multiplataforma y puede ser usado en diversos entornos de desarrollo [15].

Para el desarrollo de la propuesta de solución se seleccionó el entorno de desarrollo integrado (IDE, por sus siglas en inglés) NetBeans 8.0 por las si-guientes cuestiones [16]:

Carácter multiplataforma.

Tiene una amplia gama de soporte de len-guajes de programación y es un IDE basado en herramientas por lo que lo hace un tanto menos disperso. Mientras Eclipse está basa-do en plugin y gran parte de sus funcionalida-des viene de estos.

Viene con soporte incorporado en los drivers, SQL, MySQL y Oracle, además de que inclu-ye otros, por lo que resulta más fácil para los principiantes.

2.2 Resultados y discusión

2.2.1 AREXPRO herramienta de apoyo

Para el desarrollo de la propuesta de solución, la cual es una herramienta web llamado AREXPRO (Artefactos de Proyecto), se incluirán algunos ras-gos pertenecientes a la estrategia marcaria XEDRO debido a la vinculación temática de esta línea de diseño UCI con el negocio a tratar en la investiga-ción [17]. La misma estará destinada a la gestión de productos de trabajo del marco de trabajo ingenieril

del proceso de desarrollo de videojuegos (ver Figu-ra 2) y también de artefactos del EPD aplicables a los escenarios de la disciplina de requisitos [18] de los proyectos del centro Vertex. El propósito es ayudar a los integrantes de los equipos de proyec-tos en el desempeño de sus tareas, proveer dispo-nibilidad y centralización de la información en cual-quier momento. Algunas características personali-zadas de la herramienta AREXPRO son las siguien-tes:

La gestión de los proyectos, la posibilidad de evaluación de los requisitos definidos tanto del cliente como del producto y la gestión de los casos de uso.

Incluye una línea de desarrollo específica-mente para videojuegos con los productos de trabajo definidos en el marco de trabajo inge-nieril para el proceso de desarrollo de video-juegos.

La gestión de productos de trabajo de la dis-ciplina de requisitos, tales como: criterios pa-ra validar requisitos del cliente y del producto, registro de proveedores de requisitos, eva-luación de requisitos y casos de uso del sis-tema, especificación de requisitos de softwa-re y casos de uso del sistema, modelo con-ceptual, modelo de diseño, historias de usua-rio.

Permite el diseño de matrices bidireccionales.

Cuenta con un sistema de control de acceso en el cual se le asignan roles y permisos a los usuarios que pueden o no ser del centro para el cumplimiento de sus tareas, evitando así la mala manipulación o modificación de la in-formación ya guardada.

Permite la generación de productos de traba-jo en formato PDF en caso necesario. Repor-tes que fueron creados con la herramienta IReport [19], manteniendo un estándar de di-seño muy similar a las plantillas ofimáticas anteriormente usadas.

Cuenta con un módulo para la disciplina de pruebas el cual toma los casos de uso regis-trados y los convierte en posibles casos o secciones de prueba conjuntamente con las variables descritas.

Page 5: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

Figura. 2: Productos de trabajo definidos en el marco

de trabajo ingenieril por etapas

Mediante el análisis de la propuesta de solución se determinaron los actores y sus correspondientes funcionalidades vinculadas a los artefactos gestio-nados por el marco de trabajo. Entre algunas de las funcionalidades principales del sistema se encuen-tran:

Gestionar proyecto.

Gestionar mecanismo.

Visualizar matrices de trazabilidad.

Gestionar casos de prueba.

Gestionar Registros de defectos.

Gestionar Lista de inconsistencias.

Exportar los artefactos en .pdf.

Generar Reportes.

AREXPRO se desarrolló bajo el patrón arquitectóni-co, Modelo-Vista-Controlador (MVC), el cual separa los datos de una aplicación, la interfaz de usuario y la lógica de control en tres componentes distintos. El estilo de llamada y retorno MVC, se ve frecuen-temente en aplicaciones web, donde la vista es la página HTML que maneja la visualización de la información y el código que provee de datos diná-micos a la página. El modelo es el Sistema de Ges-tión de Base de Datos (administra el comportamien-to y los datos del dominio de aplicación) y la Lógica de negocio y el controlador es el responsable de recibir los eventos de entrada desde la vista [20].

En la Figura 3 se puede apreciar una imagen del comportamiento del patrón arquitectónico MVC en la funcionalidad Gestionar mecanismo.

Figura. 3: Patrón arquitectónico MVC en la funciona-

lidad Gestionar mecanismo

A continuación, se describen los paquetes corres-pondientes al patrón arquitectónico MVC utilizado en la propuesta de solución:

Vista: Esta capa contiene las páginas HTML o vistas que son las que se encargan de vi-sualizar la información. (Ejemplo: admin.php y create.php).

Modelo: Esta capa se encarga de recibir los eventos de entrada desde la vista o capa de presentación. (Ejemplo: Mecanismo.php).

Controlador: Esta capa trabaja mediante un sistema de gestión de base de datos, admi-nistrando, controlando el comportamiento y dominio de aplicación, así como la lógica de negocio. (Ejemplo: MecanismoContro-ller.php).

2.2.2 Interfaces gráficas de AREXPRO

Figura. 4: Interfaz gráfica de la funcionalidad autenti-

car usuario

Page 6: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

Figura. 5: Interfaz gráfica de la página principal

Figura. 6: Vista principal del analista de sistema

Figura. 7: Interfaz gráfica para la creación de requisi-

tos funcionales

Figura. 8: Listado de requisitos funcionales a medida

de su creación

Figura. 9: Interfaz gráfica para gestionar el producto

de trabajo diseño del videojuego

Figura. 10: Interfaz gráfica para la gestión de meca-

nismos en videojuegos

Figura. 11: Interfaz gráfica para gestionar el producto

de trabajo especificación de mecanismos

2.2.3 Validación de la propuesta

El uso de cualquier producto de software tiene que estar justificado por las ventajas que brinda. Es por ello que una vez concluida la etapa de desarrollo se le realizan una serie de pruebas para justificar su validez [21]. Al software desarrollado se le aplicaron las pruebas de caja negra. El objetivo de este tipo de pruebas es demostrar que las funcionalidades son operativas y que las entradas se aceptan de forma adecuada y se produce el resultado correcto. La técnica aplicada fue la de partición de equivalen-

Page 7: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

cia para examinar los valores válidos e inválidos de las entradas existentes en la aplicación [22]. Se realizaron cuatro iteraciones de pruebas, de las cuales las tres primeras resultaron con deficiencias y para la última se erradicaron las mismas. En la primera se detectaron 42 deficiencias, en la segun-da 26, en la tercera 12 y en la cuarta no se detectó ninguna. Las principales deficiencias detectadas estuvieron relacionadas con la entrada de datos, la carga inicial de los mismos y la eliminación de datos en cascada.

Se realizaron además pruebas de sistema y acep-tación para evaluar el funcionamiento de la aplica-ción como un todo y para observar el grado de aceptación entre los usuarios finales [23]. El tiempo de respuesta de las transacciones fue de 10 000 milisegundos y en el caso de exportar los artefactos de proyecto fue de 15 000 milisegundos como se tenía previsto. Se probó el software en sistemas operativos de las distribuciones de Windows y Linux y se concluye que la propuesta es aceptable, y el uso de la misma debe ser en computadoras con más de 1gb de RAM y 80 Gb de disco duro.

La técnica de Iadov fue otra de las vías empleadas en el estudio del grado de satisfacción de los impli-cados en el proceso objeto de análisis.

La técnica de validación Iadov en su versión original fue creada por su autor para el estudio de la satis-facción por la profesión en carreras pedagógicas [24]. Esta técnica fue utilizada para evaluar la satis-facción por la profesión en la formación profesional pedagógica [25] y explicada la metodología para su utilización [26].

Para el desarrollo de esta técnica se aplicó una encuesta que permitió conocer el grado de satisfac-ción sobre el proceso ingenieril de videojuegos apo-yado con la utilización de la herramienta web AREXPRO:

La definición de aspectos críticos a incorporar dentro del proceso desarrollo actual.

La definición de una herramienta para satis-facer las necesidades del entorno de desarro-llo.

El aumento de la eficiencia en el proceso de desarrollo mediante la relación contractual entre clientes y analistas.

Las deficiencias existentes entre lo definido y el entorno real.

Esta técnica constituye una eficiente herramienta para el estudio de la satisfacción de un proceso, debido a que los criterios que utiliza se fundamen-tan en las relaciones que se establecen entre tres preguntas cerradas y dos abiertas.

Pregunta 1: ¿Considera usted que se deba llevar a cabo un proceso de desarrollo de videojuegos guia-do por un marco de trabajo ingenieril sin la utiliza-ción de una herramienta de apoyo para la gestión de sus artefactos?

Pregunta 2: ¿Si usted fuera a realizar otro proyecto utilizaría la herramienta propuesta para la gestión de los artefactos ingenieriles en el proceso desarro-llo de videojuegos?

Pregunta 3: ¿Satisface sus necesidades en su rol de analista la herramienta propuesta?

Pregunta 4: ¿Incluiría o modificaría usted alguna actividad o producto de trabajo dentro de la herra-mienta de desarrollo? Argumente.

Pregunta 5: ¿Considera útil la herramienta utilizada para el desarrollo de software de su proyecto? Ar-gumente.

Las tres preguntas cerradas se relacionan a través de lo que se denomina el "Cuadro Lógico de Iadov" (ver Tabla 1) e indica la posición de cada sujeto en la escala de satisfacción.

Para medir el grado de satisfacción se tomó una muestra de 11 personas pertenecientes al centro de Vertex de la UCI, teniendo en cuenta los años de experiencia, la experiencia en el trabajo en plata-formas similares a las utilizadas en el grupo, el rol que desempeñan y el tiempo de permanencia den-tro del centro, teniendo en cuenta que en sus inicios ambos centros estaban fusionados.

Como resultado de la aplicación de la técnica se evidencia que la propuesta formulada presenta un adecuado grado de aceptación entre la población encuestada obteniéndose como índice de satisfac-ción grupal el valor aproximado de 0,82, lo que sig-nifica una clara satisfacción con la propuesta y re-conocimiento de su utilidad en la mejora de la efi-ciencia del proceso de desarrollo sin la necesidad de cambios en los elementos existentes para el desarrollo en el grupo como son cantidad de recur-sos humanos y otros.

Tabla I: Cuadro lógico de Iadov evaluando la pro-

puesta

1. ¿Considera usted que se deba llevar a cabo un proceso de desarrollo de videojue-gos guiado por un marco de trabajo ingenie-ril sin la utilización de una herramienta de apoyo para la gestión de sus artefactos?

No No sé Sí

3. ¿Satisfa-ce sus ne-cesidades en su rol de analista la herramienta propuesta?

2. ¿Si usted fuera a realizar otro proyecto utilizaría la herramienta propuesta para la gestión de los artefactos ingenieriles en el proceso desarrollo de videojuegos?

Sí No sé

No Sí No sé

No Sí No sé

No

Me satisfa-ce mucho

1 2 6 2 2 6 6 6 6

No me sa-tisface mu-cho

2 2 3 2 3 3 6 3 6

Me da lo mismo

3 3 3 3 3 3 3 3 3

Me disgusta 6 3 6 3 4 4 3 4 4

Page 8: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

más de lo que me satisface

No me sa-tisface nada

6 6 6 6 4 4 6 4 5

No sé qué decir

2 3 6 3 3 3 6 3 4

La técnica Iadov contempla además dos preguntas complementarias de carácter abierto, las cuales permiten profundizar en las causas que originan los diferentes niveles de satisfacción. En este caso fueron formuladas las siguientes:

Pregunta 4: ¿Incluiría o modificaría usted alguna actividad o producto de trabajo dentro de la herra-mienta de desarrollo? Argumente.

Pregunta 5: ¿Considera útil la herramienta utilizada para el desarrollo de software de su proyecto? Ar-gumente.

Esta información sirvió para perfeccionar la pro-puesta realizada aportando elementos objetivos que se tuvieron en cuenta para la formulación final de la misma.

3. CONCLUSIONES

La utilización de PHP como lenguaje de programa-ción, NetBeans como IDE de desarrollo, Post-greSQL como gestor de base de datos, Yii como framework de desarrollo, posibilitaron la implemen-tación de un herramienta de apoyo robusta para la gestión de artefactos ingenieriles en el proceso de desarrollo de videojuegos. La implementación de la herramienta AREXPRO para controlar los artefactos del marco de trabajo ingenieril en el desarrollo de videojuegos, posibilitó una adecuada gestión y co-rrespondencia entre las especificaciones, represen-taciones y la implementación de estos productos de software, tanto en el contexto del Centro de Entor-nos Interactivos 3D, de la Universidad de las Cien-cias Informáticas, como en cualquier otro escenario que se requiera. La centralización de la información relacionada con los productos de trabajo ingenieri-les para videojuegos, permitió el acceso a esta de forma inmediata por cualquier recurso humano del equipo de proyecto al cual se le asocien los permi-sos pertinentes desde la herramienta de apoyo AREXPRO. La incorporación de otros productos de trabajo relacionados con los escenarios de la disci-plina de requisitos, permitió la administración de otros contextos para encapsular las funcionalidades de un sistema, sobre todo en otras líneas de desa-rrollo del centro Vertex. La aplicación de la técnica de validación Iadov, permitió reconocer la satisfac-ción con la propuesta de solución por parte de los usuarios finales representados por los integrantes de los proyectos del Centro de Entornos Interactivos 3D.

4. REFERENCIAS BIBLIOGRÁFICAS

1. UCI: Universidad de las Ciencias Informáticas. 2016; Available from: https://www.uci.cu/.

2. Smith, A.: Gestión de Requisitos. Una compe-tencia esencial para el éxito de proyectos y progra-mas. Instituto de Administración de Proyectos, 2014.

3. Arias Chaves, M.: La ingeniería de requeri-mientos y su importancia en el desarrollo de proyec-tos de software. Revista de las Sedes Regionales, 2005. 6(10).

4. Excriba: Gestor de Documentos Administrati-vos. UCI 2013; Available from: https://excriba.prod.uci.cu/page/.

5. Paez, A. H.: Procedimiento de arquitectura de Información para los entornos de Realidad Virtual con fines educativos. Serie Científica de la Universi-dad de las Ciencias Informáticas, 2016. 9(4).

6. GESPRO: Herramienta de apoyo a la Gestión de proyectos UCI. Universidad de las Ciencias In-formáticas 2016; Available from: https://gespro.vertex.prod.uci.cu/login?back_url=https%3A%2F%2Fgespro.vertex.prod.uci.cu%2F.

7. Technologies, U.: Motores Gráficos. 2011; Available from: http://www.mat.ub.edu/futurs_ub/activitats/Matefest/2011/triptics/motoresgraficos.pdf.

8. Hernández, P.A.: Marco de trabajo ingenieril para el proceso de desarrollo de videojuegos. RA-CCIS 7(1), 13-26, 2017. Revista Antioqueña de las Ciencias Computacionales y la Ingeniería de Soft-ware.

9. Fulletron, T.: Game Design WorkShop: A Playcentric Approach to Creating Innovative Games. 2008.

10. Hernández, P., and Pérez, T., Criterios para verificar y validar mecanismos en el desarrollo de videojuegos. Revista Antioqueña de las Ciencias Computacionales, 2017. 7(1).

11. Paradigm, V., Visual paradigm for uml. Vi-sual Paradigm for UML-UML tool for software appli-cation development, 2013.

12. Gómez López, R. PHP vs JAVA. Adictos al trabajo 2015; Available from: http://www.adictosaltrabajo.com/tutoriales/php-vs-java.

13. Gamboa Comas, A., Java o PHP. Biblioteca de edición digital, 2006.

14. Sismo, J.M., Comparativa Frameworks PHP: Zend, Symfony, Codeigniter, Yii y Cake PHP. 2015.

15. Martínez., D.P. PostGreSQL vs MySQL. 2005; Available from: https://danielpecos.com/documents/postgresql-vs-mysql/.

Page 9: HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL ... · disminuido el trabajo duro en el mantenimiento de requisitos y por consiguiente han traído beneficios significativos en

Hernández, A.; Campillo, E., Cordero, D. | “HERRAMIENTA DE APOYO AL PROCESO INGENIERIL PARA EL DESARROLLO DE VIDEOJUEGOS”

“XVII Convención y Feria Internacional Informática 2018. VIII Taller internacional de calidad en las tecnologías de la información y las comunicaciones”

16. Mendoza González, G., Herramienta de Desarrollo Netbeans. 2008.

17. Diseño, C.d. Estrategia Marcaria de los pro-ductos UCI. Universidad de las Ciencias Informáti-cas 2014; Available from: http://iux.prod.uci.cu/.

18. Rodríguez, T., Metodología de desarrollo pa-ra la actividad productiva UCI. Programa de Mejora. Universidad de las Ciencias Informáticas, 2015.

19. Torres Arcos, C.M., Generación dinámica de reportes basado e IREPORT & JASPERRE-PORT bajo plataforma J2EE. Tesis de Licenciatura, 2007.

20. StudyLib. Guía para la Arquitectura de Soft-ware. 2008; Available from: http://studylib.es/doc/209467/gu%C3%ADa-para-la-arquitectura-de-software.

21. Carrillo, L.V., Fundamentos de Pruebas de Software. . Software Guru, 2010. 53.

22. Fuentes Ramírez, S., Sistema de gestión de Pruebas de Caja Negra mediante la Técnica de particiones equivalentes. Tesis Doctoral, 2014.

23. Gutiérrez, J.J., Escalona, M. J., Mejías, M., and Quintero, A. M. R., Modelos de Pruebas para Pruebas del Sistemas. In DSDM, 2006.

24. Kuzmina, N.V., Metódicas investigativas de la actividad pedagógica Editorial Leningrado, 1970.

25. González, V., Niveles de integración de la motivación profesional. Tesis Doctoral. Cuidad de la Habana, 1989.

26. González, V., Motivación Profesional y Per-sonalidad. Editorial Universitaria. Universidad de

Sucre, Bolivia, 1994.

y Calidad de Software.

Ing. Dianne Cordero García: Graduada de Ingeniería en Ciencias Informáticas en junio de 2016, en la Universidad de Ciencias Informáticas. Actualmente se desempeña como integrante del Grupo de Calidad del centro Vertex. Posee 2 años de experiencia en los roles de: analista de proyecto, planificadora, administradora la calidad y revisora de PPQA de proyectos del centro Vertex. Presenta varias publicaciones en eventos nacionales relacionados con Ingeniería y Calidad de Software.

5. SÍNTESIS CURRICULARES DE LOS AU-TORES

Ing. Andy Hernández Paez: Graduado de Ingeniería en Ciencias Informáticas en junio de 2012, en la Universidad de Ciencias Informáticas. Profesor Instructor de la disciplina de Ingeniería y Gestión de Software en la UCI. Actualmente jefe del departamento de Desarrollo de Aplicaciones del centro Vertex. En dicho centro se ha desempeñado como Asesor de calidad en software y jefe del Grupo de Ingeniería y Calidad de Software. Posee 6 años de experiencia como: jefe de proyecto, planificador, administrador de la calidad y/o analista de sistemas en proyectos de Realidad Virtual, Videojuegos. Especialista en el marco de trabajo común de la Ingeniería de Requisitos y Arquitectura de la Información. Presenta varias publicaciones y participación en eventos relacionados con las áreas del conocimiento de la Ingeniería, Gestión y Calidad de Software. Miembro del grupo de revisores de actividades de calidad de aseguramiento de la calidad de los procesos y productos (PPQA) y de revisiones técnicas formales (RTF) a los Requisitos en la institución donde labora.

Ing. Eylin Campillo Santos: Graduada de Ingeniería en Ciencias Informáticas en junio de 2016, en la Universidad de Ciencias Informáticas. Actualmente se desempeña como integrante del Grupo de Calidad del centro Vertex. Posee 2 años de experiencia en los roles de: analista de proyecto, planificadora, administradora la calidad y revisora de PPQA y RTF de proyectos del centro Vertex. Presenta varias publicaciones en eventos nacionales relacionados con Ingeniería