Metodología para el desarrollo de software libre (MeRinde
1. Metodología de la Red Nacional de
Integración y Desarrollo de Software Libre
(MeRinde)
Una Propuesta Metodológica para Elaborar Software Libre con el Uso de
Estándares Abiertos y con un Enfoque de Calidad
Ing. Carlos Marrero
Ing. Kiberley Santos
Caracas, Abril 2008
2. El Problema
Diversas Diversos tipos de
Metodologías Documentación
Equipos de
Proyectos
Definición de No se Sigue un Mismo
Artefactos y Plantillas Modelo de Desarrollo
Aseguramiento No cumplimiento
Problemas
de Calidad del decreto 3.390
Trazabilidad Definición de Roles
y Actividades
3. MeRinde
MeRinde es un proyecto de Software Libre (SL) que propone un estándar para
el proceso de desarrollo de software que puede ser empleado y adaptado
según los requerimientos de cualquier comunidad u organización. Además,
esta mantiene una librería de plantillas reutilizables para la Ingeniería de
Software.
Estas plantillas proveen un punto partida para los documentos utilizados en
proyectos, con lo que pueden ayudar a los desarrolladores a trabajar más
rápido y evitar pasar por alto aspectos importantes del proceso de desarrollo.
MeRinde es concebida para abarcar el desarrollo completo de Sistemas de
Información sea cual sea su complejidad y magnitud, por lo cual su estructura
responde a desarrollos máximos y deberá adaptarse y dimensionarse en cada
momento de acuerdo a las características particulares de cada proyecto.
4. MeRinde
Objetivos Específicos
Estandarización en la documentación, líneas base y procesos, que cumpla
con los estándares internacionales que propician software de calidad.
Contribuir con planificación y coordinación de los procesos de desarrollo de
software.
Ofrecer una metodología basada en estándares abiertos.
Fortalecer del perfil de las empresas, cooperativas y comunidades
desarrolladoras de Software Libre.
Permitir a los equipos de desarrollo producir software más robusto,
reutilizable y de fácil mantenimiento.
Estimular la transferencia de conocimieno entre las comunidades
desarrolladoras de software.
5. MeRinde
Esta Metodología para el desarrollo de software está destinada a cualquier
persona, comunidad u organización implicada en un proceso de desarrollo de
software.
Es útil para :
Analistas y usuarios finales (que especifican la estructura y comportamiento
requeridos por el sistema);
Diseñadores (que diseñan los sistemas que satisfacen esos requerimientos);
Desarrolladores (que convierten esos diseños en código ejecutable);
Probadores (que verifican y validan la estructura y comportamiento del
sistema) y;
Líderes del proyecto.
6. Fundamentos Teóricos
Diversas Metodologías de Desarrollo de Software.
Mejores Prácticas para el Proceso de Desarrollo de Software.
Comparaciones entre las Metodologías para el Desarrollo de
Software.
Antecedentes
Información General del CNTI
Red Nacional de Desarrollo e Integración de Software Libre
(RINDE)
7. Proceso de Desarrollo de Software
¿Qué es un proceso de desarrollo de software?
Preguntas a las que responde un proceso de desarrollo de software:
Calidad
11. Mejores Prácticas
✔Adaptar el Proceso de Desarrollo
✔Alto Nivel de Abstracción
✔Centrarse en la Arquitectura
✔Colaboración Entre Equipo
✔Demostrar Resultados Iterativamente e Incrementalmente
✔Dirigido por Casos de Uso
✔Diseño Simple
✔Enfoque Continuo en la Calidad
✔Enfoque en los Riesgos
✔Fomento del Aprendizaje de Experiencias
✔Interacción Continua con Cliente
✔Modelar el Software
✔Permanecer Ágil y Esperar los Cambios
15. Artefactos
MeRinde propone setenta y siete (77) artefactos que pueden ser creados
durante el proceso de desarrollo de software.
Partiendo de estos artefactos se pueden crear sólo los artefactos que se
consideren necesarios para el proyecto, adicionalmente según los lineamientos
establecidos se les puede hacer modificaciones a los mismos y también se
pueden establecer artefactos adicionales a los aquí propuestos siempre que
estos faciliten y cumplan con los requerimientos.
16. Artefactos
✔Documento de Arquitectura del Software (DAS)
✔El Sistema
✔Especificación de Requerimientos del Software (ERS)
✔Glosario del Sistema
✔Modelo de Diseño
✔Plan de Gestión de Riesgos
✔Plan de Implantación
✔Plan de Pruebas
✔Planificación del Proyecto
✔Repositorio de Versiones
✔Solicitud del Sistema
✔Términos de Referencia del Sistema
✔Términos de Referencia para el Equipo de Desarrolladores del
Sistema
✔Visión del Sistema
17. Aportes
Estandarización del proceso de desarrollo,
documentación y herramientas.
Flujos de trabajo que refleja la realidad del desarrollo de
software.
Proceso de desarrollo, documentación y herramientas
basadas en estándares abiertos.
Modelo de equipo para el desarrollo de software que
supera limitaciones geográficas.
Propicia calidad en el proceso y en el producto final.
Plantillas de los artefactos.
Adaptación de varias prácticas probadas por el
aprendizaje.