Métricas de Software



Documentos relacionados
Métricas de Software

Técnico Certified Software Engineer Professional (CSIP)

Calidad Escuela de Ingeniería de Sistemas y Computación Desarrol o de Software II Agosto Diciembre 2007

Ingeniería de Software: Parte 2

Beneficios del Uso de Modelos de Madurez

CMMI (Capability Maturity Model Integrated)

Introducción a Rational Unified Process (RUP)

Problemas de PYMES en el Nivel 2 de Madurez Una Muestra Sesgada

Introducción. Por lo que existe una creciente preocupación por lograr que los productos software cumplan con ciertos criterios de calidad.

CMM - Capability Maturity Model. Estructura de CMM... Componentes de CMM. Estructura de CMM

Introducción: Modelos, Escalas y Métricas. Valentin Laime. Calidad de Software

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Plan de Gestión de Configuración. Universidad Nacional de la Patagonia Austral

CMMi. Lic. Virginia Cuomo

Dirección General de Educación Superior Tecnológica

Initial Testing Assessment

Planeación del Proyecto de Software:

E a v l a ua u c a i c ón ó n de d l e Pr P oc o e c s e o s o de d Ing n e g n e i n er e ía a de d e So S f o twa w r a e

El Modelo CMMI (for Development) Monterrey, N.L. México Noviembre 2008

OBJETIVOS GENERALES DE LA EMPRESA

SW-CMM Capability Maturity Model for Software

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

Área Académica: Licenciatura Sistemas Computacionales. Profesor: Lic. Virginia Arguelles Pascual

Call Center Management. Preparado por CCtrainning

Ingeniería del Software I

Prof. Juan José Díaz Nerio. Foro de Tecnología : Gestión de la Calidad del Software. Domingo 16 Noviembre 2014

Administración de Proyectos de Software - PMI. Tema: Cierre de Proyectos. Autor: Mario Hernández

CAS-CHILE. Líder en Software de Gestión Pública

Administración de Proyectos de Software - PMI. Tema: Gestión de la Calidad del Proyecto. Autor: Mario Hernández

8. Project Quality Management

Calidad. Preparado por: Amelia Soriano. Referencias. Rational Unified Process Version Copyright Rational Software Corporation

Elementos requeridos para crearlos (ejemplo: el compilador)

CURSO DE LEAN SIGMA TRANSACCIONAL PARA BLACK BELTS Dr. P. Reyes CURSO DE BLACK BELTS EN LEAN SIGMA TRANSACCIONAL

Estándares para planes de calidad de software. Escuela de Ingeniería de Sistemas y Computación Desarrollo de Software II Agosto Diciembre 2008

A continuación se describe con mayor detalle cada una de las unidades: UNIDAD 2: Calidad en el desarrollo, adquisición, operación y mantenimiento del

6 Anexos: 6.1 Definición de Rup:

+ Cómo ahorrar dinero con Software Quality

Calidad de Software - CMM

ITZOFT, una metodología de desarrollo de sistemas basada en el Proceso Unificado de Rational. Resumen

Norma ISO Francisco D Angelo Douglas García Claudia Herrera Luis Laviosa

Mejora continua del servicio (CSI) Mejora continua del servicio (CSI) D.R. Universidad Tec Virtual del Sistema Tecnológico de Monterrey México, 2012.

Gestión de Requisitos ULPGC

Metodología básica de gestión de proyectos. Octubre de 2003

Ingeniería de Software Calidad de Procesos y Productos de Software

UNIVERSIDAD RICARDO PALMA


1.1 Aseguramiento de la calidad del software

Nombre de la asignatura: Proceso Personal para el Desarrollo de Software

P.S.P. Programa Educativo. Tecnologías de la Información y Comunicación. Alumno. José Alfredo Ramírez Jaguey

EL PORTAL DE LOS EXPERTOS EN PREVENCIÓN DE RIESGOS DE CHILE. División Difusión y Comunicaciones CALIDAD APQP

Carrera: ISH

Team Software Process IntroductionTSPi SM

INGENIERÍA DE SOFTWARE CICLOS DE VIDA Y METODOLOGIAS

Gestión de Proyectos de desarrollo de software. Ing. Rafael Bentancur Universidad ORT Uruguay

Estrategia de Impacto de Seis Sigma

Sede Escazú, Plaza Tempo

Curso Online de Microsoft Project

Ingeniería de Software Dr. Marcello Visconti Z. Ingeniería de Software

El Proceso de Desarrollo de Software. Diseño de Software Avanzado Departamento de Informática

Qué ofrece un diagnóstico a un área de calidad. Agosto ra visita de ISQI - HASTQB

4 COMPATIBILIDAD DE ISO/IEC TR CON ISO 9001:2000. Los procesos de ciclo de vida organizacional constan de dos categorías de proceso:

Midiendo ITIL : Métricas e indicadores para la Gestión de Servicios TI

El Software. Es lo que se conoce como el ciclo de vida del software.

RUP: Disciplina de Manejo de Cambios y Configuraciones

Modelo de Proceso de Desarrollo de Software

UNIDAD 2: Abstracción del Mundo real Al Paradigma Orientado a Objetos

Proyectos de automatización de procesos de negocio

MÉTODOS PARA DESARROLLAR SISTEMAS DE INFORMACIÓN Anexo

2. EL MODELO CMMI. En 1991, el Instituto de Ingeniería de Software (SEI) publicó el Modelo de

Microsoft Solutions Framework - CMMI. Luis Fraile MVP Team System lfraile@lfraile.net

Clima Organizacional

Enginyeria del Software III

COBIT Y GERENCIA DE PROYECTOS. Iván Daniel Rincón, MBA, PMP, CISA Program Manager, Ocean Networks Canada. Tópicos

TEMA 6: AUDITORIA INTERNA

MARCO METODOLÓGICO CAPITULO III

Ciclo de vida del software

CLASE 2: INTRODUCCIÓN A LA ING. DE SOFTWARE. MODELOS DE PROCESOS. MEJORES PRÁCTICAS. USB Ing. De Software. Prof. I. C. Martínez

BPM es el arte de identificar una cadena de valor, automatizarla y mejorarla continuamente.

Modelos de Ciclo de Vida de Desarrollo de Software en el Contexto de la Industria Colombiana de Software

CMMI Capability Maturity Model Integration Modelo integrado de madurez de la capacidad

2. Administración de Proyectos en el contexto de TI

Porque sólo podemos mejorar aquello que podemos medir. RDT Performance Systems. Contacto : Fco Javier López Martín. T:

Administración de Centros de Computo. ITIL. MSG.ING. DARWIN CERCADO B dcercado@primma.com.ec

Estándares ISO en Ingeniería de Software. Calidad de Software. Estándares y modelos de calidad. Ciclo de Ingeniería ISO/IEC 12207

Sistema Integral de Calidad IQS

Próximo escalón hacia la calidad del software: Shift Left. Amalia Álvarez TestingUY 14 de Abril 2015

El Proceso Unificado de Desarrollo de Software

Tópicos Avanzados de Análisis y Diseño INGENIERIA DE SOFTWARE ING. MA. MARGARITA LABASTIDA ROLDÁN

Unidad VI: Auditoria de la calidad

CURSO: INTRODUCCION A PRONOSTICOS

COSTOS ESTÁNDAR-ABC PARA LA INDUSTRIA DE PLÁSTICOS-LÍNEA DE TUBERÍAS Y ACCESORIOS DE PVC : (CASO : SURPLAST S.A.C.) Carrión Nin, José Luis.

INDICADORES DE GESTIÓN PARA EL ÁREA DE RECURSOS HUMANOS

Administración por Procesos contra Funciones

Modelos de Medición. De los Procesos de Desarrollo de Software

ISO 9001 Auditing Practices Group Directriz en:

TALLER: CALIFICACIÓN DE EQUIPOS Y SISTEMAS

Transcripción:

Métricas de Software Itinerario Métrica Alcance de las Métricas en la Ingeniería de Software CMM assesment QIP Ingeniería de Software II Métricas de Software 2 1

Medición Debo definir una escala... Es el proceso por el cual números o símbolos son asignados a atributos de entidades del mundo real de modo de poder describirlos acorde a reglas claramente definidas. Debo poder identificar los objetos del dominio y especificar su comportamiento El objetivo debe estar previamente establecido. Establecer una relación entre dicha escala y los atributos de los objetos establecidos. Ingeniería de Software II Métricas de Software 3 Medición What is not measurable make it measurable. Ingeniería de Software II Métricas de Software 4 2

Atributos Posibilidad de analizarlos en forma aislada Interno Atributo Externo Dependen del entorno... Se requiere integrar antes de poder analizarlos. Ingeniería de Software II Métricas de Software 5 Predicción Los atributos externos son indirectos y se deducen en función de atributos internos. En el proceso de predicción de atributos externos, debo poder calcular y/o obtener los atributos internos esperados para acertar en mi predicción Ingeniería de Software II Métricas de Software 6 3

Atributos Ingeniería de Software II Métricas de Software 7 Atributos Ingeniería de Software II Métricas de Software 8 4

Atributos Ingeniería de Software II Métricas de Software 9 Sistema de Relaciones Empíricas Nuestra intuición es el punto de partida para toda medición Ingeniería de Software II Métricas de Software 10 5

Sistema de Relaciones Asignamos un descriptor a un aspecto de interés de un objeto de modo que nos permita compararlo con otros. Ingeniería de Software II Métricas de Software 11 Sistema de Relaciones Empíricas Diseño A Primer Entrega Diseño A Segunda Entrega Nuestra observación refleja una serie de reglas que estamos imponiendo sobre el dominio... Ingeniería de Software II Métricas de Software 12 6

Sistema de Relaciones La Empíricas segunda entrega es mas confiable que la segunda Diseño A Primer Entrega Diseño A Segunda Entrega Esas reglas definen una relación entre los objetos del dominio deducida de la medición de los atributos de las entidades. Ingeniería de Software II Métricas de Software 13 Sistema de Relaciones Empíricas Diseño A Primer Entrega Diseño A Segunda Entrega Decimos entonces que mas confiable es una Relación Empírica basada en el atributo indirecto densidad de errores detectados durante la inspección. Ingeniería de Software II Métricas de Software 14 7

Método Medición Identificar los atributos de las entidades del dominio Identificar relaciones empíricas para los atributos Identificar relaciones numéricas correspondientes a cada relación empírica Definir el mapping entre las entidades y los números Ingeniería de Software II Métricas de Software 15 Método Medición Identificar los atributos de las entidades del dominio Identificar relaciones empíricas para los atributos Identificar relaciones numéricas correspondientes a cada relación empírica Verificar que la semántica de las relaciones empíricas se preserva en las relaciones numéricas Definir el mapping entre las entidades y los números Ingeniería de Software II Métricas de Software 16 8

Asistencia de las Métricas en Software Entender y Modelar Procesos de Ingeniería de Software y Productos Asistencia en la Administración de Proyectos de Software Guiar Mejoras en Procesos de Ingeniería de Software Ingeniería de Software II Métricas de Software 17 Entender y Modelar Poder comparar líneas de base con evoluciones posteriores permite determinar la relación entre los atributos de un producto y una posible mejora. Debemos poder predecir el efecto de introducir un cambio en un parámetro. Ingeniería de Software II Métricas de Software 18 9

Entender y Modelar Cuanto esfuerzo consume el desarrollo de software? En qué fases del proceso de software consumimos más recursos? Qué tipos de error y cambios son típicos en nuestros proyectos? Ingeniería de Software II Métricas de Software 19 Entender y Modelar Ejemplo 1 Distribución del Esfuerzo (horas) SEL - NASA 200 años-staff sobre 25 proyectos Específico del Dominio Se puede utilizar como estimador durante la Preparación Ingeniería de Software II Métricas de Software 20 10

Entender y Modelar Ejemplo 2 por clase Distribución de Errores (#) SEL - NASA 10000 errores sobre 5 años de operación Específico del Dominio Se conserva a lo largo de los proyectos Ingeniería de Software II Métricas de Software 21 Entender y Modelar Ejemplo 2 por origen Distribución de Errores (#) SEL - NASA 10000 errores sobre 5 años de operación Específico del Dominio Se conserva a lo largo de los proyectos Ingeniería de Software II Métricas de Software 22 11

Entender y Modelar Ejemplo 3 Actividad de Cambio (# SLOCs) SEL - NASA Basado en 20 proyectos bajo ciclo de vida Waterfall Establecer una base para la actividad de cambio en SCM Indica si la actividad de cambio se sale de la espectativa posible mala selección de ciclo de vida Ingeniería de Software II Métricas de Software 23 Administración de Proyectos Poder usar datos históricos para hacer estimaciones Poder aprender la relación existente entre parámetros Poder dar seguimiento Poder validar las mismas métricas Ingeniería de Software II Métricas de Software 24 12

Administración de Proyectos Ejemplo Planeamiento Estabilidad de Requerimientos Complejidad de Software Estimaciones: COCOMO 2.0 Ingeniería de Software II Métricas de Software 25 Administración de Proyectos Ejemplo Seguimiento Usamos la actividad de cambio para Planning La desviación puede indicar que usamos el modelo equivocado. Ingeniería de Software II Métricas de Software 26 13

Modelos en Métricas en Software Modelos de Estimación de Costo y Esfuerzo Modelos de Productividad Modelos de Métricas de Calidad Modelos de Recolección de Datos Modelos de Confiabilidad Modelos de Evaluación de Performance Modelos de Estructura y Complejidad Evaluación de Métodos y Herramientas Ingeniería de Software II Métricas de Software 27 Modelos en Métricas en Software Modelos de Estimación de Costo y Esfuerzo Modelos de Productividad Modelos de Métricas de Calidad Modelos de Recolección de Datos Modelos de Confiabilidad Modelos de Evaluación de Performance Modelos de Estructura y Complejidad Evaluación de Métodos y Herramientas Ingeniería de Software II Métricas de Software 28 14

Modelos Modelos de Productividad Un modelo de productividad definido en función de Valor y Costo... Productivity Value Cost Quality Quantity Personnel Resources Complexity Reliability Size Time Hardware Environmental Constrains Defects Functionality Money Software Problem Difficulty Ingeniería de Software II Métricas de Software 29 Modelos Modelos de Métricas de Calidad Product Operation Usability Reliability Efficiency Communicativeness Accurancy Consistency Device Efficiency Accessibility Reusability Completeness Structuredness Metrics Product Revision Maintainability Portability Conciseness Device Independence Legibility Testability Self-descriptiveness Traceability Ingeniería de Software II Métricas de Software 30 15

Modelos Modelos de Métricas de Calidad Product Operation Product Revision Usability Reliability Efficiency Reusability Maintainability Portability Testability Communicativeness Accurancy Consistency Device Efficiency Accessibility Completeness Structuredness Conciseness Device Independence Legibility Self-descriptiveness Traceability Metrics Ingeniería de Software II Métricas de Software 31 Modelos Recolección de Datos Debe formar parte integral de todos los procesos Incluso del Producto Cada artefacto que es medido posee una forma particular de informarnos, debemos ser capaces de capturar esta información. Ingeniería de Software II Métricas de Software 32 16

CMM assessment - Level 2 Repeatable (Level 2) Software Configuration Management Software Quality Assurance Software Subcontract Management Software Project Tracking and Oversight Software Project Planing Requirement Management Control: Budget Schedule Standars Input: Requirements Constructing the System Output: Code Documentation Control: Staff Tools Ingeniería de Software II Métricas de Software 33 CMM assessment - Level 2 Control: Budget Schedule Standars Input: Requirements Constructing the System Output: Code Documentation Control: Staff Tools Debo definir métricas para cada aspecto visible Requirements, Code, Documentation Ingeniería de Software II Métricas de Software 34 17

CMM assessment - Level 3 Defined (Level 3) Peer Reviews Intergroup Coordination Software Product Engineering Integrated Software Management Training Program Organization Process Definition Organization Process Focus Design Method Inspection Criteria Test Plans Requirements Define design System Design Code, Unit Test Tested Modules Integrate System Software Tools Staff Tools Staff Tools Staff Ingeniería de Software II Métricas de Software 35 CMM assessment - Level 3 Design Method Inspection Criteria Test Plans Requirements Define design System Design Code, Unit Test Tested Modules Integrate System Software Tools Staff Tools Staff Tools Staff Debo definir métricas para cada aspecto visible Product attributs System design, Quality of Tested Modules Ingeniería de Software II Métricas de Software 36 18

QIP Quality Improvement Paradigm Planning Setting Goal Step Construction and Data Generation Step Execution Analysis and Packaging Postmortem Analysis Ingeniería de Software II Métricas de Software 37 QIP Goal Setting Step QIP (Quality Improvement Paradigm) Building Software Competencies and Supplying them to Projects GQM (Goal Query Metric) EF (Experience Factory) Ingeniería de Software II Métricas de Software 38 19

GQM Todo proceso de ingeniería requiere retroalimentación y evaluación. La construcción de software es una actividad de Ingeniería y como tal debe poseer disciplinas de medición. La medición debe poseer foco basado en modelos y objetivos (goals). Debemos entonces establecer objetivos medibles y dirigidos por el modelo apropiado. Ingeniería de Software II Métricas de Software 39 GQM - Goals Existen una variedad de perspectivas que pueden definir un objetivo: El cliente, la corporación e incluso el proyecto Ejemplos Objetivo del cliente: Satisfacción del usuario. Objetivo del Proyecto: Entrega en término. Objetivo de la Corporación: Continua mejora del proceso de desarrollo. (CMM level 3 assessment) Ingeniería de Software II Métricas de Software 40 20

GQM - Paradigm Definir objetivos corporativos y de proyecto Rastrear que datos hablan de ese objetivo Proveer un marco de trabajo para interpretar los datos y entender el enfoque sobre los objetivos Ingeniería de Software II Métricas de Software 41 GQM - Paradigm Los objetivos son definidos en forma operacional y refinados a través de una serie de preguntas cuantificables. Esas preguntas son usadas para extraer la información necesaria de los modelos. Métricas son asignadas a las respuestas, y la recolección de datos que responden a las preguntas nos otorgan el universo de interpretación. Ingeniería de Software II Métricas de Software 42 21

Definición Interpretación GQM - Proceso El flujo desde los objetivos hacia las métricas en GQM puede ser visto como un grafo dirigido. Goal 1 Question 1 Question 2 Question 3 M1 M2 M3 Ingeniería de Software II Métricas de Software 43 GQM - Proceso Ejemplo: Efectividad de usar estándares para la codificación Goal: Evaluate effectiveness of coding standard Who is using standard? What is coder productivity? What is code quality? Proportion of coder: - using standard - using language Experience of coders: - with standard - with language - with environment Code Size Effort Errors Ingeniería de Software II Métricas de Software 44 22

GQM - Proceso Desarrollar el conjunto de objetivos corporativos, de división y proyecto Construir preguntas para cada objetivo que lo definen en la forma más completa posible Especificar las métricas requeridas para contestar las preguntas Construir los procesos de recolección datos Recolectar, validar y analizar los datos obtenidos Ingeniería de Software II Métricas de Software 45 QIP Goal Setting Step QIP (Quality Improvement Paradigm) Building Software Competencies and Supplying them to Projects GQM (Goal Query Metric) EF (Experience Factory) Ingeniería de Software II Métricas de Software 46 23

EF Experience Factory La construccion de software es evolutiva y experimental. Es basado en las personas Los procesos y objetivos son variables. Las experiencias empacadas reusables requieren recursos adicionales dentro de la organización a fin de ser utilizadas Ingeniería de Software II Métricas de Software 47 EF The Process Project Organization Experience Factory Characterize Set Goals Choose Process Execution Plans Execute Process Project / environment characteristics Tailorable goals, processes, tools products, resource models, defect models, from simlar projects Data, lessons learned,... Project analysis, process modification... Ingeniería de Software II Métricas de Software 48 24

EF The Process Project Organization Data, lessons learned, models Direct project feedback Project characteristics Models, tools, baselines Analyze Products, lessons learned, models Project Support Experience Factory Experience Base Package Generalize Tailor Formalize Ingeniería de Software II Métricas de Software 49 SEL - Estructura Ingeniería de Software II Métricas de Software 50 25

SEL Foco de Componentes Org. Ingeniería de Software II Métricas de Software 51 SEL Distribución del Esfuerzo Staff Process Analyst 5% Database Support 3% Development 92% Development Process Analyst Database Support Ingeniería de Software II Métricas de Software 52 26

Muchas Gracias! Ingeniería de Software II Métricas de Software 53 27