SciELO - Scientific Electronic Library Online

 
vol.7 número1Granada modificado con restricción geométricaEstudio de viabilidad de una herramienta software para monitorización de tráfico IP en Windows Phone índice de autoresíndice de materiabúsqueda de artículos
Home Pagelista alfabética de revistas  

Servicios Personalizados

Articulo

Indicadores

  • No hay articulos citadosCitado por SciELO

Links relacionados

  • No hay articulos similaresSimilares en SciELO

Compartir


Revista Cubana de Ciencias Informáticas

versión On-line ISSN 2227-1899

Rev cuba cienc informat vol.7 no.1 La Habana ene.-mar. 2013

 

ARTÍCULO ORIGINAL

 

Delfdroid y su comparación evaluativa con XP y Scrum mediante el método 4-DAT

 

Comparative Evaluation of Delfdroid whit XP and Scrum using the 4-DAT

 

 

Ernesto Ávila Domenech1*, Abel Meneses Abad2

1 Departamento Web y Multimedia. Facultad Regional de Granma. Universidad de las Ciencias Informáticas. Ave. Camilo Cienfuegos, Manzanillo, Granma, Cuba. *E-mail: eadomenech@grm.uci.cu
2 Centro de Desarrollo. Facultad Regional de Granma. Universidad de las Ciencias Informáticas. Ave. Camilo Cienfuegos, Manzanillo, Granma, Cuba

 

 


RESUMEN

Debido a las diferencias notables entre el desarrollo de software tradicional y el software para dispositivos móviles, es necesario que la metodología utilizada para guiar proyectos de desarrollo de aplicaciones para móviles tenga características no tradicionales. En el presente trabajo se propone una metodología ágil de desarrollo de software específica para dispositivos móviles. Para su descripción se ha tomado la propuesta de Alistair Cockburn, en la que se indica desglosar la metodología en diez elementos como mínimo: roles, destrezas, artefactos, actividades, valores, equipos, asignación de tareas, técnicas, herramientas y estándares. Además se realiza una evaluación comparativa con las metodologías ágiles XP y Scrum mediante el método 4-Dimensional Analytical Tool propuesto por Asif Qumer y Brian Henderson-Sellers

Palabras clave: desarrollo, dispositivo móvil, ingeniería de software, métodos ágiles.


ABSTRACT

Because of the significant differences between traditional software development and software for mobile devices, it is necessary for mobile application projects to use a development methodology with non traditional characteristics. This paper proposes an agile software development methodology for mobile devices. For description is taken Alistair Cockburn's proposal, which break down the methodology described in at least ten elements: roles, skills, artifacts, activities, values, teams, assignments, techniques, tools and standards. It also shows a benchmarking between XP and Scrum using 4-Dimensional Analytical Tool proposed by Asif Qumer and Brian Henderson-Sellers.

Key words: agile methods, development, mobile device, software engineering.


 

 

INTRODUCCIÓN

El desarrollo de aplicaciones móviles difiere del desarrollo de software tradicional en muchos aspectos, lo que provoca que las metodologías usadas para estos entornos también difieran de las del software clásico. Esto es porque el software móvil tiene que satisfacer una serie de requerimientos y condicionantes especiales que lo hace más complejo (Blanco, et al., 2009).

En la literatura se pueden encontrar algunas propuestas de metodologías para el desarrollo de aplicaciones para dispositivos móviles, entre ellas se encuentran Dynamic Channels (Alfonso, Regateiro y Silva, 1998), Mobile-D (Abrahamsson, et al., 2004), un modelo híbrido (RAHIMIAN; RAMSIN, 2008) y SXP-J2ME (Ávila, 2012). Si bien no son populares, tienen algunos elementos interesantes en comparación con las populares XP, Scrum, FDD, etc.

Específicamente SXP-J2ME, híbrido de las bien conocidas XP y Scrum, surgió en abril de 2012, con el objetivo de diseñar una metodología de desarrollo de software que se adecuara a las características de los proyectos que conforman la línea de productos “Aplicaciones J2ME para la Cultura y el Patrimonio” perteneciente a la Facultad Regional de la Universidad de las Ciencias Informáticas en Granma (Ávila-Domenech, 2012). La línea antes mencionada la componen los proyectos que utilizan la plataforma Java 2 Micro Edition (J2ME, por sus siglas en inglés) para el desarrollo de aplicaciones para dispositivos móviles y que están enfocados en la promoción y difusión de la cultura y el patrimonio de la provincia Granma.

Teniendo en cuenta que entre los dispositivos móviles más usados está el teléfono móvil y que además las aplicaciones que estos utilizan están soportadas bajo distintas plataformas, se dispuso rediseñar SXP-J2ME de forma tal que pudiese guiar proyectos donde se desarrollen aplicaciones para dispositivos móviles sin tener en cuenta la plataforma de desarrollo, ya sea iOS, Android, J2ME, etc; surgiendo así Delfdroid.

 

METODOLOGÍA COMPUTACIONAL

Delfdroid

En Delfdroid se proponen un total de ocho roles: Equipo del Proyecto (Team), Jefe de Proyecto (del inglés, Project Manager), Jefe de Producto (del inglés, Product Management), Arquitecto (del inglés, Architect), Visionario (del inglés, Visionary), ADD (del inglés, Analyst-Designer-Developer), Encargado de Pruebas (Tester) y Consultor (del inglés, Consultant). Además cuenta con tres fases, las mismas indican el énfasis propuesto por Barry Boehm (Boehm; y Turner, 2003) en relación a la división en dos perspectivas de desarrollo. En la Figura 1 se pueden observar las fases y flujos de trabajo propuestos.

Durante la fase de Inicio el Visionario deberá plasmar los objetivos y elementos que persigue la aplicación, comienza a realizar un estudio de aplicaciones similares existentes así como de los posibles usuarios. Además se realiza un diseño del escenario (diagrama o descripción que refleja la manera que se venderá o divulgará la aplicación). Una vez terminadas las actividades anteriores se realiza un estudio de factibilidad económica de la aplicación propuesta a desarrollar teniendo en cuenta otros beneficios no necesariamente económicos.

En la siguiente fase (Elaboración-Construcción) se describen las funcionalidades a desarrollar mediante Historias de Usuario. Luego se diseñan haciendo uso de las tarjetas CRC y por último son implementadas.

Durante la fase Transición ya deberán existir varias versiones Betas en el mercado con sus respectivos beneficios; no obstante la experiencia dice que existirán inconvenientes o funcionalidades con resultados no esperados en el accionar de los usuarios por lo que habrá que realizar algunos cambios. En el caso de llegar a una versión estable y con altos niveles de aceptación se procede a registrarlo y se firma el acta de aceptación si procede. Ver Figura 2.

 

RESULTADOS Y DISCUSIÓN

Comparación evaluativa con XP y Scrum mediante 4-DAT

Dimensional Analytical Tool (4-DAT)

Un método de desarrollo de software se dice que es un método ágil de desarrollo de software cuando se centra en las personas, es orientado a la comunicación, flexible (listo para su adaptación a la espera de un cambio inesperado en cualquier momento), rápida (estimula el rápido e iterativo desarrollo del producto en versiones pequeñas), eficiente (se centra en acortar los plazos y costes y en la mejora de la calidad), adaptable (reacciona adecuadamente a los cambios esperados e inesperados), y aprende (centrado en la mejora durante y después del desarrollo del producto) (Qumer y Henderson, 2008b).

4-DAT facilita el examen de los métodos ágiles desde cuatro perspectivas o dimensiones: alcance de la metodología, caracterización de la agilidad, valores ágiles (Manifiesto Ágil) y caracterización del proceso de software. Aunque en la actualidad hay cuatro dimensiones evaluadas en el enfoque de 4-DAT, es ampliable en el hecho de que se pueden agregar o quitar dimensiones o elementos de las dimensiones, si se considera necesario en el futuro. (Qumer y Henderson, 2008a).

La herramienta está diseñada para comparar y analizar los métodos ágiles. Un informe que se genera con la ayuda de 4-DAT se puede utilizar para la toma de decisiones con respecto a la adopción de un método ágil apropiado ver Figura 3. (Quer y Henderson, 2006b)

Comparación

Para comparar Delfdroid con las metodologías de desarrollo de software XP y Scrum fueron tomados los datos de estas dos últimas metodologías de Qumer y Henderson (2006a).

Dimensión 1: Alcance de la metodología (Ver Tabla 1)

Dimensión 2: Caracterización de la agilidad (Ver Tabla 2)

El grado de agilidad (DA) depende de los términos flexibilidad (FY), velocidad (SD), eficiencia (LS), aprendizaje (LG) y adaptabilidad (RS). Para calcular la agilidad en esta dimensión Qumer y Henderson-Sellers proponen la siguiente fórmula: (Qumer y Henderson, 2008b). DA (Object) = (1/m)∑m DA(del ingles, Object, Phase or Practices)

Delfdroid al ser un híbrido de las metodologías ágiles XP y Scrum, posee prácticas que estas dos últimas también poseen, o al menos una de ellas. Las enumeradas con 1, 2, 3, 4, 5, 7, 8 y 12 han sido tomadas de XP por lo que se han evaluado de igual manera que en Qumer y Henderson (2008a). De forma semejante la enumerada con 13 ha sido evaluada, con la diferencia de que pertenece a Scrum.

Teniendo en cuenta que al realizar reuniones para controlar el Sprint terminado y planificar el siguiente se realiza un juego de planificación, se puede decir que la enumera con 1 pertenece tanto a XP como a Scrum. Por otra parte se consideran a las prácticas 6, 9, 10 y 15 como nativas de Delfdroid.

Dando oportunidad a todo el equipo que participe activamente podrán proponer funcionalidades nuevas al sistema o sencillamente cambios significativos que el Visionario no ha sugerido. Esta acción es flexibilidad, veloz, eficaz, el equipo aprende con el aumento de la experiencia y perfectamente posee adaptabilidad por lo que ha evaluado de forma global con 5.

Al sacar un producto funcional aunque con un número importante de requisitos por cumplir se poseen criterios de usuarios finales de manera rápida; pudiendo el equipo retroalimentarse a una mayor velocidad. Teniendo en cuenta las características a evaluar, se le otorga de manera general la evaluación de 5.

Por último, a diferencia de XP, no se considera al cliente en el equipo por la sencilla razón de que no existe tal cliente. Delfdroid está enfocado a los usuarios. La práctica cliente en la puerta es una metáfora que indica que no existe cliente dentro ni fuera del equipo del proyecto. Como se ha explicado, se toman en cortos periodos de tiempo, a usuarios finales y se les solicita que comenten, critiquen y propongas ya sea cambios o nuevas funcionalidades. A diferencia de las explicadas anteriormente, se considera que esta práctica no le da velocidad por lo que su evaluación global es 4.

Dado el grado de agilidad de XP y Scrum se obtienen los siguientes resultados. (Ver Tabla 3)

Dimensión 3: Valores ágiles

La tercera dimensión de 4-DAT es sólo cualitativa y presentan los valores ágiles que son promulgadas por la metodología ágil bajo investigación. Se puede observar que tanto XP como Scrum ofrecen soporte para todos los valores iniciales ágiles, pero no son compatibles con los dos identificados recientemente por Qumer y Henderson Sellers. XP no ofrece ningún apoyo, ya sea para "mantener el proceso ágil" (lo que podría sugerir un eslabón perdido de la SPI (mejora de procesos software) de la comunidad) o para "mantener el coste del proceso efectivo" (un valor pragmático para la ágil adaptabilidad comercial). Esta última característica no se ve bien en Scrum. (Qumer y Henderson, 2008a).

En el caso de Delfdroid, específicamente en el manteniendo del costo efectivo del proceso, se observa se le da gran importancia a la retroalimentación. Mediante ella se conoce si la aplicación tiene una buena aceptación por parte de los usuarios y en correspondencia una ganancia económica para la empresa desarrolladora de dicha aplicación. Otro elemento es el desarrollo de varios modelos en paralelo; contribuyendo así a que llegue a los usuarios el producto que realmente quieran tener sin una demora considerable. Una de las características que ayuda a esta rapidez es la reutilización. (Ver Tabla 4)

Dimensión 4: Caracterización del proceso de software

En esta parte de la evaluación, se examinan las prácticas de XP, Scrum y Delfdroid para el apoyo a los procesos de software. En la Tabla 5 se presenta un informe de evaluación para esta cuarta dimensión. Al igual que en la Dimensión 3, la comparación es puramente cualitativa e informativa (descriptiva y no normativa). (Ver Tabla 5)

 

CONCLUSIONES

Luego de describir Deldroid se puede concluir que se ha propuesto una metodología con tres fases y cuatro flujos de trabajo principales. Por sus características se considera ágil y adaptable a entornos de desarrollo de aplicaciones para dispositivos móviles. Además agrupa muchas de las llamadas “buenas prácticas de desarrollo de software” empleadas en las más importantes y utilizadas metodologías ágiles encontradas en la literatura.

 

REFERENCIAS BIBLIOGRÁFICAS

ABRAHAMSSON, P.; HANHINEVA, A.; HULKKO, H.; et al. Mobile-D: an Agile Approach for Mobile Application Development. In Companion to the 19th annual ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications ISBN 1-58113-833-4. [En línea]. New York, NY, USA: ACM, 2004. Disponible en: [http://doi.acm.org/10.1145/1028664.1028736].

ALFONSO, A. P.; REGATEIRO, F.S. y SILVA, M.J. Dynamic Channels: a New Development Methodology for Mobile Computing Applications. 1998.

ÁVILA-DOMENECH, E. Propuesta de metodología de desarrollo de software para su utilización en la línea de productos “Aplicaciones J2ME para la Cultura y el Patrimonio”. Camagüey: Universidad de Camagüey, 2012. 104.

BLANCO, P.; CAMARERO, J.; FUMERO, A.; et al. Metodología de desarrollo ágil para sistemas móviles. Introducción al desarrollo con Android y el iPhone. Universidad Politécnica de Madrid, 2009.

BOEHM, B y TURNER, R. Balancing Agility and Discipline: A Guide for the Perplexed. Addison Wesley, 2003. 304. ISBN 0-321-18612-5.

QUMER, A; HENDERSON-SELLERS, B. A Framework to Support the Evaluation, Adoption and Improvement of Agile Methods in Practice. Elsevier Inc. 2008a, s. 1899–1919. Dostupné také z: Disponible en: [www.sciencedirect.com].

QUMER, A. y HENDERSON-SELLERS, B. An Evaluation of the Degree of Agility in Six Agile Methods and its Applicability for Method Engineering. Elsevier Inc. 2008b, s. 280–299.

QUMER, A y HENDERSON-SELLERS, B. Comparative Evaluation of XP and SCRUM using the 4D Analytical Tool (4-DAT). Alicante, Spain, 2006a.

QUMER, A; HENDERSON-SELLERS, B. Measuring Agility and Adoptability of Agile Methods: A 4-Dimensional Analytical Tool. 2006b. ISBN 972-8924-09-7.

RAHIMIAN, V y RAMSIN, R. Designing and Agile Methodology for Mobile Software Development: a Hybrid Method Engineering Approach. Marrakech, 2008.

 

 

Recibido: 26/12/2012
Aceptado: 12/03/2013

Creative Commons License Todo el contenido de esta revista, excepto dónde está identificado, está bajo una Licencia Creative Commons