• No se han encontrado resultados

“FAF: MARCO DE TRABAJO ÁGIL Y FORMAL, PARA EL DESARROLLO DE

N/A
N/A
Protected

Academic year: 2023

Share "“FAF: MARCO DE TRABAJO ÁGIL Y FORMAL, PARA EL DESARROLLO DE "

Copied!
89
0
0

Texto completo

Los modelos de software en el desarrollo de un proyecto son de crucial importancia para lograr un trabajo de calidad de manera organizada. Propuesta de intervención, que será un marco de desarrollo de sistemas para la coordinación de servicios informáticos, específicamente en el área del sistema COLMEX.

Metodologías de desarrollo de Software

  • Conceptos de Metodología, Norma, Modelo, Framework y BOK
  • Metodologías tradicionales
    • Modelo de Cascada
    • Modelo de Prototipos
    • Modelo Incremental
    • Modelo Espiral
  • Metodologías ágiles
    • Extreme Programming ( XP )
    • Lean Startup
    • Kanban
    • Scrumban
    • SCRUM
  • Comparación entre metodologías tradicionales y ágiles

Ahora que tenemos información sobre los conceptos Framework y BOK, concluimos que esto es exactamente lo que necesitamos para este trabajo: mejores prácticas de desarrollo de software alineadas con términos estandarizados. La segunda característica fundamental son las reuniones que se llevan a cabo durante el desarrollo de software (Letelier & Penadés, 2006).

Figura 1. Modelo de cascada
Figura 1. Modelo de cascada

SCRUM y PMBOK : desarrollo ágil y gestión de proyectos

Framework de Iacovelli

El Marco de Iacovelli se centra en la clasificación de procesos ágiles (Iacovelli & Souveyet, 2008), teniendo en cuenta los cuatro puntos de vista que se muestran en la Figura 5; uso del proceso ágil, capacidad de agilidad, aplicabilidad, procesos y productos. Se refiere a cuando el ambiente laboral es favorable para la aplicación de metodologías ágiles.

Aplicación del Framework de Iacovelli

Ingeniero de Sistemas: Su objetivo es desarrollar proyectos de software de acuerdo a las necesidades de los usuarios. Los resultados de la aplicación de los formularios se compararon con la versión simplificada de Iacovelli, que se muestra en la tabla 3. D7 VERDADERO VERDADERO VERDADERO VERDADERO D8 VERDADERO VERDADERO VERDADERO VERDADERO D9 VERDADERO VERDADERO VERDADERO VERDADERO D10 VERDADERO VERDADERO VERDADERO VERDADERO.

D15 VERDADERO VERDADERO VERDADERO D16 VERDADERO VERDADERO VERDADERO VERDADERO D17 VERDADERO VERDADERO VERDADERO VERDADERO D18 VERDADERO VERDADERO VERDADERO VERDADERO.

Cuadro 3. Clasificación de procesos ágiles de Iacovelli
Cuadro 3. Clasificación de procesos ágiles de Iacovelli

SCRUM

COLMEX, y con datos del estudio VersionOne como referencia, se decidió utilizar SCRUM para esta propuesta de intervención, método que se describe detalladamente en el siguiente apartado. La capacidad de responder a los cambios que puedan ocurrir a lo largo del proyecto (cambios en requisitos, tecnología, equipos, entre otros) también determina su éxito o fracaso. De los valores mencionados se derivan 12 principios en el manifiesto ágil, que se menciona en el apartado 3.4 de esta propuesta.

Con los requerimientos detallados se realiza otra reunión (Sprint Planning), donde se crean las tareas necesarias para cada requerimiento y se priorizan con una estimación de tiempo y el recurso que realizará la actividad. 28 Como podemos ver, este framework está enfocado a completar más rápidamente solicitudes y tareas con resultados inmediatos, pero es conveniente tener control sobre la administración de proyectos de software, por lo que se debe incluir en la propuesta una guía de gestión de proyectos.

Figura 6. Proceso general de  SCRUM
Figura 6. Proceso general de SCRUM

PMBOK

Gestión de la integración: Describe los procesos necesarios para garantizar que todos los elementos del proyecto estén coordinados e integrados. Gestión del alcance: Describe los procesos necesarios para garantizar que el proyecto incluya todo el trabajo necesario para completarlo con éxito. Gestión de costos: describe los procesos necesarios para garantizar que el proyecto se entregue dentro del presupuesto aprobado.

Gestión de la calidad: describe los procesos para integrar las políticas de calidad de la organización para garantizar que el proyecto satisfaga las necesidades y expectativas de las partes interesadas. Gestión de recursos humanos: describe los procesos para identificar, adquirir y gestionar los recursos necesarios para la finalización exitosa del proyecto.

Figura 7. Grupo de procesos que interactúan en un proyecto
Figura 7. Grupo de procesos que interactúan en un proyecto

Comparativa entre SCRUM y PMBOK

Por otro lado, (Alavandhar & Ņikiforova, 2017) plantean la cuestión de si las metodologías ágiles son mejores que las tradicionales, en cuyo caso. La Tabla 8 muestra el mapeo de Roles, generalmente en SCRUM el Product Owner es el representante del producto y responsable de la calidad del proyecto. En la Tabla 9 se muestra el mapeo de las etapas, se inicia con la apertura del proyecto, generando un plan, estimando los tiempos y trabajando en el desarrollo de tareas para implementar la correcta operación.

Con base en la Figura 8, que muestra el desarrollo del proceso del modelo en cascada para SCRUM, se muestra la adaptabilidad del uso de metodologías ágiles dentro de los modelos tradicionales. La efectividad de prácticas ágiles como SCRUM ha demostrado sus ventajas en el desarrollo de software frente a las metodologías tradicionales.

Cuadro 8. Mapeo de Roles de  MSF  y  SCRUM Microsoft Solutions Framework  SCRUM
Cuadro 8. Mapeo de Roles de MSF y SCRUM Microsoft Solutions Framework SCRUM

Propuesta de marco de trabajo FAF

Planteamiento del problema

Actualmente en COLMEX existen procesos que no están sistematizados y no cuentan con documentación, por lo que es recomendable comenzar con la implementación de un Framework para el desarrollo de software, para realizar los procesos de admisión, intercambio académico, gestión escolar, proyectos profesionales y administrativos. entre otros. El papel de los frameworks es fundamental en el desarrollo de software para promover, por ejemplo, la reutilización de los diferentes elementos del software y facilitar el trabajo de todos los roles que participan en el proceso. En el desarrollo de software, el último punto se refiere a cambiar la forma de trabajar, es decir, no invertir tiempo y trabajo en diseño, codificación y pruebas, sino programar a nivel de ingeniería de modelos y requisitos.

En este sentido, las pautas y/o marcos para el desarrollo de software son vitales porque permiten realizar el trabajo de manera organizada y de calidad, ayudando potencialmente a aumentar su eficiencia y mejorar la satisfacción del usuario. Cada día tenemos que crear desarrollos en menos tiempo, en este sentido se aceptan prácticas ágiles en el proceso de desarrollo de productos de software, así como en la generación de conocimiento (Fuertes A. & Sepúlveda C., 2016).

Objetivo

42 La Coordinación de Servicios Informáticos de COLMEX tiene una demanda de desarrollo de software, lo que estimula la necesidad de implementar un marco, ya que actualmente no se aplica una metodología, modelo o guía para entregar el software en tiempo y forma. De manera similar, los programadores tienden a centrarse en cuestiones técnicas hablando de lenguajes de programación, bases de datos, entornos de desarrollo, pero muchas veces minimizan las cuestiones de ingeniería de software, es decir, la forma en que se debe hacer. En este estudio se propone una propuesta de intervención para establecer lineamientos, integrar estratégicamente las mejores prácticas con un marco de desarrollo ágil, como SCRUM, y una guía de gestión de proyectos, como el PMBOK, para proponer un marco de desarrollo de software ágil y formal.

Se espera que este marco permita al equipo de desarrollo de COLMEX trabajar de manera más unificada bajo un mismo enfoque con el objetivo de entregar entregables valiosos en menos tiempo, mostrando avances visibles en las funcionalidades del sistema, documentación mínima necesaria con manuales de usuario y mantenibilidad de Calidad en el desarrollo de software.

Definición del marco de trabajo FAF

Principios

Roles

También actuará como director de proyecto, lo que significa que coordinará las reuniones con el cliente y el Product Owner. Además, supervisa las actividades de documentación y será responsable de mantener una buena comunicación con el cliente. 46 El flujo de comunicación es el siguiente; El cliente y/o usuario final revisará la solicitud de requisitos con el Product Owner y SCRUM Master, además de validar los impactos en el negocio y sobre todo los beneficios que generará el desarrollo del proyecto.

El Product Owner estará en constante comunicación con el SCRUM Master para priorizar tareas, así como definir los detalles de las actividades. El documentador preparará la documentación técnica, así como los documentos formales, junto con el equipo.

Cuadro 10. Características deseables para los roles principales de  SCRUM
Cuadro 10. Características deseables para los roles principales de SCRUM

Reuniones

Sprint Retrospective: Reunión con el equipo para retroalimentar lo bueno y lo malo que se ha hecho en cada sprint. Reunión final con el cliente: El propósito es presentar el proyecto de desarrollo terminado y al mismo tiempo generar el informe final que concluye el proyecto. Comentarios: reunión con todos los roles para revisar si se cumplieron los objetivos del proyecto y qué se puede mejorar.

El objetivo es generar un documento con lecciones aprendidas para todos los roles participantes.

Entregables

Diagrama de proceso

Planificación: En esta fase se realiza una reunión (Release Planning), con el Product Owner, documentada y moderada por el SCRUM Master. Cierre: En esta fase se realiza una reunión con el cliente para finalizar el desarrollo del sistema solicitado, y firmar un documento de cierre del proyecto. La Carta del Proyecto debe ser definida por el Propietario del Producto en colaboración con el SCRUM Master y escrita por el documentador.

El objetivo es presentar un trabajo visible con el objetivo de obtener la aprobación y aceptación del propietario del producto. En este proceso se reúnen todas las personas que participaron en el proyecto con el objetivo de registrar los conocimientos adquiridos durante el desarrollo del proyecto.

Figura 10. Proceso general de  FAF
Figura 10. Proceso general de FAF

Calidad en FAF

El usuario o cliente siempre será la persona principal en cualquier proyecto de desarrollo de software, por lo que es fundamental comprender sus necesidades y requerimientos (Satpathy, 2017).

Recomendaciones para implementar FAF

Considere primero los requisitos priorizados como los más importantes, ya que son los de mayor valor para el usuario.

Beneficios esperados

En este sentido, este marco tiene como objetivo ayudar a mantener una comunicación continua entre los miembros del equipo, detectar riesgos de manera oportuna y, lo más importante, adoptar este marco como parte de las actividades diarias de desarrollo de software. Esta propuesta de intervención tiene como objetivo que su adopción se pueda realizar con facilidad y flexibilidad en COLMEX, para que pueda ser un ambiente de trabajo diario para el personal de desarrollo de la coordinación de servicios informáticos. Las metodologías ágiles para el desarrollo de software son herramientas que pueden ayudar a organizar, gestionar y controlar las actividades de manera más eficiente para que el sistema se implemente correctamente.

En este sentido, esta propuesta tiene como objetivo apoyar la gestión de proyectos de desarrollo de la Coordinación de Servicios Informáticos. Finalmente, la literatura especializada muestra que es factible combinar exitosamente diferentes metodologías de desarrollo de software.

Formulario de Iacovelli

En general, indique con una “X” cómo es el ambiente y los proyectos de desarrollo de software en COLMEX. 69 Marque cada uno de los siguientes con una “X” Verdadero (V) o Falso (F), considerando el proceso utilizado en el desarrollo de un proyecto de software en COLMEX.

Project Charter

Backlog

Registro de Impedimentos

Minuta de Reunión

Acta de cierre de proyecto

Figure

Figura 1. Modelo de cascada
Figura 2. Modelo de Prototipos
Figura 3. Modelo incremental
Figura 4. Modelo de Espiral
+7

Referencias

Documento similar

En el proyecto se están estableciendo diferentes técnicas de pruebas, en un contexto de desarrollo ágil centrado en las pruebas de aceptación (ver Glosario). Uno de los

• El Capítulo 2 proporciona un completo estado de la cuestión en la temática de esta Tesis Doctoral. En concreto, se presenta una revisión sistemática llevada a

integrado tanto a los actores españoles en el marco del CCCEP como a representantes del gobierno, sociedad civil y sector privado peruanos, a través de

Como resultado novedoso del presente trabajo se propone un Marco de Trabajo para el desarrollo de aplicaciones lo más robustas posibles con ontologías de dominio, conformado

Uno de los instrumentos que podría viabilizar este modelo educativo en el marco de la educación formal, es el currículo escolar, concebido como construcción cultural y

El método de prototipado ágil para enseñanza de entornos y lenguajes de programación tiene como eje central un aprendizaje basado en proyectos.. Los alumnos se

la Ley de Educación Técnico Profesional (Ley 26.058), el Acuerdo Marco del Sistema Nacional de Formación Profesional (SNFP), el Proyecto Sistema Integrado de Formación

Proponiendo como objetivos determinar el desarrollo doctrinal y la regulación legal del ejercicio de la Jurisdicción Especial dentro del marco del Pluralismo jurídico en el