AUTORES: HANNA HULKKO PEKKA ABRAHAMSSON Múltiples Casos de Estudio sobre el Impacto de la Programación en Pares sobre la Calidad del Producto Mayrée Ludeña.

Slides:



Advertisements
Presentaciones similares
MODELO DE AUDITORIA DE IMAGEN
Advertisements

Semana 1 APRENDIZAJE COLABORATIVO
CÓMO TRANSFORMAR LA AUTO-EVALUACIÓN EN UNA HERRAMIENTA DE APRENDIZAJE
ASEGURANDO LA CALIDAD DEL CODIGO
Evaluación Xalapa, Ver., Diciembre 2011.
UNIDAD III: CONTROL ESTADÍSTICO DE LOS PRODUCTOS
METRICAS DE PROCESO Y PROYECTO
Gestión de proyectos Es la primera etapa de Ingeniería del Software.
AUDITORIA DE LA ADMINISTRACIÓN DE RECURSOS HUMANOS
Lohana Lema Moreta. Manuel Olvera Alejandro.
Sistema Obligatorio de Garantía de la Calidad, de la Atención de Salud
HERRAMIENTAS CASE.
ITERASOFT. OBJETIVOS DEL GRUPO Producir un sistema Manejador de Itinerarios de alta calidad y confiabilidad Realizar un proyecto bien administrado y productivo.
TEAM SOFTWARE PROCESS CICLO 2.  Producto  Reporte del ciclo  Plan  Inspección  Plan de calidad  Valor ganado  Objetivos  Proceso TSP  Equipo.
EDUCACION TECNOLOGICA
CUADRO COMPARATIVO CONTROL ADMINISTRATIVO Y CONTROL FINANCIERO.
Ciclos de vida ágiles.  Es una metodología ágil que plantea: ◦ Iteraciones cortas ◦ Entregables periódicos ◦ Colaboración con el cliente full time ◦
TEAM SOFTWARE PROCESS CICLO 3.  Análisis del Proyecto  Producto  Resultados por Rol  Resultado del Proceso.
Requerimientos /Metas:
 Tema del proyecto  Integrantes y roles del equipo  Objetivos del proyecto  Alcance.
WEBQUEST.
Fundamentos de la Gerencia de Proyectos
Conclusiones de Fase de Construcción Grupo 2 – Año 2006.
Fase Inicial Grupo 6 – PIS – 2013.
Importancia de las aplicaciones de estadística en el control de procesos Guatemala 2010.
Inspecciones de Software
Métodos y Diseño de Investigación II
REQUERIMIENTOS DE SOFTWARE
ANÁLISIS DE PUESTOS.
WebQuest: investigación para el aprendizaje. ¿Qué es? Actividad de investigación que aborda diferentes temáticas y ayuda a desarrollar las competencias.
TIPOS DE INVESTIGACIÓN DE MERCADOS
VERSIÓN 05 - FORMATO ACCIONES CORRECTVAS, PREVENTIVAS Y DE MEJORA, PRODUCTO O SERVICIO NO CONFORME 2. ANÁLISIS DE CAUSAS.
Santiago, Diciembre 2010 LEVANTAMIENTO DE PERFILES DE COMPETENCIAS:
WEBQUEST. ¿QUÈ ES UNA WEBQUEST?  Webquest significa indagación, investigación a través de la Web.  Consiste en presentarle al alumnado un problema,
METODOLOGÍA DE MARCO LÓGICO
Conceptos de Gestión y Planificación de Proyectos Software
UNIVERSIDAD NACIONAL AUTÓNOMA DE HONDURAS UNAH-VS
Análisis de Riesgo en la Planificación
Habilidades TIC para el aprendizaje
PRESENTACION DE WEB QUEST EQUIPO: 1 INTEGRANTES: Daisy Araujo Flores Alma Verónica Camacho Camacho Claudia Mascareño ASESOR: Luis Fernando Sánchez López.
El rol de SQA en PIS.
INGENIERÍA DEL SOFTWARE GESTIÓN DE PROYECTOS
A DMINISTRACIÓN DE R IESGOS Plan de contingencia.
¿Cómo se originan las investigaciones cuantitativas, cualitativas o mixtas?
Grupo 10 – 2008 Proyecto de Ingeniería de Software
 Sara Isabel Osorio Alcaraz Ana Isabel Vallejo Grisales 10 Informática 1.
Diseño de Adiestramientos
TÉCNICAS Y HERRAMIENTAS PARA LA ACTUALIZACIÓN DE LA DNC
Proyecto: Lanzamiento QUICK ORDER. Objetivo General  Desarrollar el sistema de información de acuerdo a los requerimientos establecidos por el cliente,
Implementando PSP / TSP
TEMA: RESPONSABILIDAD DE ERRORES
Tecnicas del Mantenimiento del Software
TÉCNICAS DEL ANÁLISIS INTERNO
Ingeniería en Informática F UNDAMENTOS DE C OMPUTACIÓN B ACHILLERATO EN I NGENIERÍA I NFORMÁTICA L IC. C ARLOS H. G UTIÉRREZ L EÓN.
ANALISIS SEGURO DE TRABAJO (AST)
6.6 Administración de defectos
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
ALEXIS VERA LUIS VERA 5 SEMESTRE Estas herramientas nos sirven para controlar procesos, resolver problemas, tomar decisiones. Además de ser una.
EI, Profesor Ramón Castro Liceaga IV. AREAS DE EVALUACIÓN DE LA AUDITORIA EN INFORMÁTICA. UNIVERSIDAD LATINA (UNILA)
Análisis y Balance del Proyecto Análisis Inicial Estimación Inicial Arquitectura de Datos Propuesta Tecnología Metodología aplicada Estimaciones elaboradas.
Fundamentos de Computación
Algunas anotaciones sobre las TIC y los procesos de investigación Vivian Rivera R. Setiembre, 2015.
Auditoria de comunicación interna ¿En qué consiste?
CICLO DE VIDA DE UN SOFTWARE. Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados, que forman parte de.
 La empresa en la que desarrollamos este trabajo de campo es el Grupo Crystal compuestas por las empresas Tintorería Industrial Crystal creada en 1958,
Trabajo en equipo Curso Virtual La Gestión de la Calidad en la
Sistemas de calidad en el desarrollo de software.
GESTIÓN DE PROYECTOS.
ALUMNO ALUMNO: DIEGO URES LEGAJO LEGAJO: La prueba unitaria es la herramienta para la Calidad Presentación Trabajo Final de Grado.
TEMA 7 ANÁLISIS DE LOS RESULTADOS TEMA 7 ANÁLISIS DE LOS RESULTADOS.
Transcripción de la presentación:

AUTORES: HANNA HULKKO PEKKA ABRAHAMSSON Múltiples Casos de Estudio sobre el Impacto de la Programación en Pares sobre la Calidad del Producto Mayrée Ludeña Rengifo Jinob De la Cruz Magallanes

Agenda Estado Actual de Programación en Pares Evaluación de los casos de Estudio Resultados sobre la calidad del software

Programación en Pares DRIVER NAVIGATOR

Programación en Pares DRIVER NAVIGATOR

Programación en Pares Es una técnica de programación en la cual 2 programadores trabajan juntos en una misma computadora en la misma tarea. La persona encargada de elaborar el código es llamada Driver, la otra llamada Navigator, es la responsable de buscar los errores, pensar en la estructura del código, encontrar la información cuando sea necesaria y ser el apoyo y generador de ideas para el Driver.

Importancia de la Programación en Pares Los principales beneficios asociados a ese nuevo tipo de programación se suelen considerar como: Aumento de productividad del desarrollo del producto. (reduciendo los tiempos de desarrollo) Aumento de la Calidad del Producto. Menos estaciones de trabajo Estos dos supuestos son los que se tratan de comprobar con los casos de estudio que se tratan en el documento.

Críticas de la Programación en Pares Desarrolladores expertos pueden encontrar tedioso enseñar a un desarrollador menos experimentado en un ambiente emparejado. Muchos desarrolladores prefieren trabajar solos y encuentran el ambiente emparejado incómodo. La productividad es difícil de medir, para comparar desarrolladores en parejas contra desarrolladores trabajando solos. Diferencias en el estilo de codificación pueden resultar en conflictos, aunque esto a su vez promueve la normalización (estandarización), para que todo el mundo pueda entender el código.

Categorías de Investigación Los estudios han sido organizados basados en la investigación para lo cual han utilizado las siguientes categorías: Casos de Estudio Experimentos Encuestas Reportes de Experiencias

Categorías de Investigación

Estado Actual de la Programación en Pares Existen pocos casos de estudio correctamente documentados. La mayoría de los casos de estudio han estado orientados ala parte de caracterización de programación de pares que a la calidad del producto. La mayoría de las conclusiones se han basado en experimentos a nivel de investigación, no en casos de desarrollo de software de mercado. La metodología de medición de calidad no esta claramente establecida.

Casos de Estudio Colecta de datos Resumen de recursos Resultado de los casos

Colecta de Fuentes de Información FUENTETIPO DE DATOCASO 1 CASO 2 CASO 3 CASO 4 Hojas ExcelEsfuerzo: tarea, tipo de esfuerzo, horas XXXX Notas de los Desarrolladores Esfuerzo:observaciones personales XXXX Notas de los programadores en pares PP:tiempo,tareas, nombre de los pares, cambios de rol XXX Lista de defectosTarea que lo origina, cuando se detecta, severidad XXXX Código fuente (líneas base luego del c/iteracción) Código relacionado a los datos, cantidad de LOC, Parte de código Individual / PP XXXX Entrevistas FinalesDatos cualitativos, experiencia XXXX ObservaciónUso de ppX

Resumen de los Recursos de los Casos de Estudio CASO 1CASO 2CASO 3CASO 4 Duración8 semanas885 Tamaño del Equipo4 personas Desviación Total Esfuerzo 7.5 personas / mes Iteracción6666(9) Tipo de ProductoAplicación IntranetAplicación para Celular Concepto del Producto Sistema de Gestión de Búsqueda de datos Explorador de stock de mercado Sistemas de control de producción Tamaño del Producto (LOC lógico) Lenguaje de Programación Java / jspJava Movil Symbian C++

Métricas METRICAS DE USO Porcentaje de esfuerzo de la programación en pares Productividad entre las iteraciones (programación en pares ó individual) Base de la Programación en pares METRICAS DE CALIDAD Densidad de las desviaciones de estándares de la codificación : programación en pares ó individual Ratio: programación en pares ó individual Densidad relativa del defecto programación en pares ó individual

MU1:Porcentaje de esfuerzo de la programación en pares 3 primeras iteracciones los ratios son similares, el caso 3 es un poco más alto y el 4 es un poco más bajo En los casos 2 y 3 es evidente que la pp, disminuye constantemente, especialmente en la iteración 6 para el caso 3 la programación es individual. En los casos 1 y 4 la pp ha incrementado en las iteraciones 4 y 6. En cambio han disminuido notablemente en la iteración 5. (las 3 primeras semanas del caso4 no están incluidas en el estudio)

MC1:Densidad de las desviaciones de estándares de la codificación : pp ó individual Solo se analizaron los casos 2 y 3, debido a que el caso 1 no utilizó estándares y en el caso 4 el código fue escrito por una herramienta Symbian C++, el trabajo consistió solo en análisis En este ESTUDIO: La densidad de la desviación de estándares es mucho más alta para la programación en pares que para la programación individual.

Conclusiones La programación en pares es más productiva que la individual y se incrementa gradualmente. La programación en pares es la más útil para tareas complicadas, capacitación, entrenamiento y aprendizaje. La programación en pares produce un código más legible y con menos defectos. Aumento en la calidad del desarrollo de software para Tareas que no son rutinarias Proyectos de mediana y larga duración