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).
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.
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.
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.
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.
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.
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.
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