SPIN-Chile 2001 Red Chilena para el mejoramiento del Proceso de Software
La Industria de Software en Chile: La Calidad y Madurez del Proceso de Desar
Story Transcript
Aseguramiento de Calidad en el Desarrollo de Software Libre Marzo, 2014
N. Baez, V. Bravo y J. Alvarez
Contenido de la Presentación ●
●
●
Segunda versión de la Metodología de Desarrollo de Software Libre. Segunda versión del Plugin del Trac desarrollado como apoyo en la aplicación de la metodología. Proceso de Aseguramiento de Calidad en el Desarrollo de Software Libre.
Segunda versión de la Metodología de Desarrollo de Software Libre
Conceptualización de Proyectos de Software Libre Antes
Ahora
Conceptualización de Proyectos de Software Libre
Elaborar diagramas de procesos, de relación entre procesos y de actividades por procesos Validar con los usuarios los diagramas de procesos y de actividades Elaborar los diagramas de casos de uso del software Identificar potenciales colaboradores en el desarrollo del software
Identificar los procesos que se requieren automatizar y las necesidades o problemas en torno a éstos
Administración de Proyectos de Software Libre Antes
Ahora
Administración de Proyectos de Software Libre Definir y priorizar las funcionalidades del software Definir el orden de dependencia entre funcionalidades
Instalar una plataforma de desarrollo Seleccionar un framework de desarrollo Realizar reuniones periódicas entre el equipo de desarrollo
Realizar un estudio de los riesgos de desarrollo del software Elaborar el plan del proyecto Realizar seguimiento de las tareas del Equipo de Desarrollo Gestionar los errores reportados sobre el software
Construcción de Aplicaciones de Software Libre Antes
Ahora
Construcción de Aplicaciones de Software Libre Describir los casos de uso del software y validarlos con los usuarios
Discutir los casos de uso con el equipo de desarrollo
Especificación de Requerimientos
Definir los requerimientos no funcionales
Recomendaciones para la actividad “Describir casos de uso”: ●
●
La descripción textual de un caso de uso debe contener: actores, condiciones de entrada y salida, flujo básico y alternativo, requisitos especiales. Los casos de uso no constituyen documentos de diseño de interfaz, por lo cual nunca debe hacerse referencia en ellos a elementos de la interfaz.
Construcción de Aplicaciones de Software Libre
Especificar los datos a intercambiar con otras aplicaciones
Modelar los datos persistentes
Análisis y Diseño
Validar el prototipo no funcional de la interfaz
Definir la arquitectura del software Diseñar las pantallas no funcionales de la interfaz del software (prototipo no funcional)
Construcción de Aplicaciones de Software Libre
Construir la Base de datos Corregir los errores reportados Codificar los pasos para instalar y desinstalar el software
Codificar los componentes requeridos para construcción de funcionalidades
Codificación
Realizar las pruebas unitarias a los componentes codificados Construir la interfaz de usuario
Colocar el código fuente en el sistema de control de versiones
Documentar el código fuente
Construcción de Aplicaciones de Software Libre
Pruebas
Elaborar planes de pruebas funcionales y no funcionales
Aplicar pruebas funcionales, no funcionales, de regresión y de instalación/desinstalación
Construcción de Aplicaciones de Software Libre
Empaquetar el software para diferentes distribuciones de software
Elaborar el manual de usuarios
Liberación
Probar versiones beta del software
Publicar versiones estables del software
Publicar versiones beta del software
Segunda versión del Plugin del Trac desarrollado para apoyar la aplicación de la Segunda Versión de la Metodología de Desarrollo Mejoras con respecto a la primera versión del plugin: ●
●
Un sitio web que incluye tanto los procesos de la metodología como las herramientas que apoyan la ejecución de estos procesos. Reducción del número de plantillas de documentación de los procesos de la metodología.
●
Inclusión de la herramienta Plantuml.
●
Macros para generar wikis
Complemento (plug-in) de la MSL V 2.0 Condiciones iniciales Base complemento (plug-in) Versión 1.0, (lpena...) ● Filosofía “Trac” : ● “minimalista” (hasta simple, pero no tan simple) ● “centralizado” (web, usuarios, documentos) ● “wiki” (versiones, enlaces) ● “no al buracratismo o fines en sí mismo” ● Proyecto corto (desde mitad ~ 2013) ● Filosofía “MSL”: ● Trazabilidad ● Maduración ● Software Libre ●
Complemento (plug-in) de la MSL V 2.0 ●
Trabajo realizado: ● Actualización de todas las plantillas a la versión MSL 2.0 ●
Incorporación de documentación enlazada (a la mano)
●
Incorporación de lenguaje de diagramas (Plantuml)
●
Incorporación de diagramas para la documentación
●
Macro para enlazar diagramas
Complemento (plug-in) de la MSL V 2.0 Acceso (después de instalar): http:////wiki/metodologia
Complemento (plug-in) de la MSL V 2.0 Instalación: ● Ir al sitio: https://calidad-sl.cenditel.gob.ve/trac/
●
●
Ir a la sección de Descargas (Downloads)
●
Seguir los pasos para la instalación
Proceso de Aseguramiento de Calidad en el Desarrollo de Software Libre ●
●
Método de evaluación del Proceso de Desarrollo de Software Libre Método de evaluación de la Calidad en Aplicaciones de Software Libre
Método de evaluación del Proceso de Desarrollo de Software Libre ●
Revisión de la ejecución de las actividades de la práctica de desarrollo teniendo como eje de referencia la metodología de desarrollo. Ejemplo: Evaluación de la interacción entre el equipo de desarrollo y entre éstos y los usuarios: ¿Se realizan reuniones entre los miembros del equipo de desarrollo? ¿Se utilizan herramientas para facilitar la comunicación entre el equipo de desarrollo? ¿Se cuenta con herramientas para la interacción entre miembros del equipo de desarrollo y usuarios? Se generan reportes con las disconformidades observadas en relación a la ejecución de la actividad.
Método de evaluación de Aplicaciones de Software Libre ●
Revisión de la calidad de las aplicaciones de software haciendo énfasis en la evaluación de características asociadas a las facilidades de modificación de estas aplicaciones y a la portabilidad de las mismas. En específico se evalúan los siguientes componentes: * Documentación de: requerimientos, usuarios, código fuente,
instalación y desinstalación.
* Pruebas de software * Interfaz de usuarios * Empaquetado * Publicación del software
Método de evaluación de Aplicaciones de Software Libre Ejemplo de evaluación del componente documentación del código fuente, en específico “mantenibilidad del código”: ¿Que proporción de las funcionalidades del software se encuentran documentadas? Se generan reportes con las disconformidades observadas en relación al componente del software que se evalua.
Enlaces de interés http://wiki.cenditel.gob.ve/wiki/gpdsl http://calidad-sl.cenditel.gob.ve/