Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Metodologías de la Investigación: Técnicas de Medición en Ingeniería de Software, Apuntes de Metodología de Investigación

Una introducción a las técnicas de medición en ingeniería de software, enfatizando la importancia de la medición en la evaluación del progreso, calidad y eficiencia de los proyectos. Se explican diferentes tipos de métricas, como métricas de proceso, producto y proyecto, y se discuten sus aplicaciones y beneficios. Además, se abordan técnicas de recolección de datos y análisis de resultados.

Tipo: Apuntes

2023/2024

Subido el 13/04/2024

jorge-parra-27
jorge-parra-27 🇲🇽

2 documentos

1 / 11

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Metodolog´ıa de la Investigaci´on:
ecnicas de Medici´on en Ingenier´ıa de Software
Dr. Jorge Ram´on Parra Michel
11 de abril de 2024
1. Introducci´on
En la Ingenier´ıa de Software, la medici´on juega un papel fundamental para evaluar el
progreso, la calidad y la eficiencia de los proyectos. Las ecnicas de medici´on proporcio-
nan informaci´on cuantitativa que permite a los desarrolladores, gerentes y clientes tomar
decisiones informadas sobre el desarrollo y mantenimiento del software.
Existen diversas ecnicas de medici´on que se pueden aplicar en diferentes etapas del ciclo
de vida del software. A continuaci´on, se describen algunas de las ecnicas as comunes:
2. etricas de proceso:
Esfuerzo: Esta etrica se enfoca en la cantidad de tiempo y recursos humanos dedi-
cados al desarrollo del software. Incluye aspectos como las horas de trabajo invertidas,
el umero de personas involucradas y los costos asociados al proyecto. Un an´alisis del
esfuerzo permite comprender la eficiencia del equipo y estimar mejor el tiempo y los
recursos necesarios para futuros proyectos.
Productividad: La productividad se refiere a la cantidad de trabajo completado por
unidad de tiempo o recurso. Se puede medir, por ejemplo, en erminos de ıneas de
odigo escritas por hora, defectos corregidos por ıa o historias de usuario completadas
por sprint. Una alta productividad indica que el equipo est´a trabajando de manera
eficiente y aprovechando al aximo sus recursos.
Calidad del proceso: La calidad del proceso eval´ua la efectividad de los etodos y
herramientas utilizados para desarrollar software. M´etricas como el umero de defectos
1
pf3
pf4
pf5
pf8
pf9
pfa

Vista previa parcial del texto

¡Descarga Metodologías de la Investigación: Técnicas de Medición en Ingeniería de Software y más Apuntes en PDF de Metodología de Investigación solo en Docsity!

Metodolog´ıa de la Investigaci´on:

T´ecnicas de Medici´on en Ingenier´ıa de Software

Dr. Jorge Ram´on Parra Michel

11 de abril de 2024

1. Introducci´on

En la Ingenier´ıa de Software, la medici´on juega un papel fundamental para evaluar el progreso, la calidad y la eficiencia de los proyectos. Las t´ecnicas de medici´on proporcio- nan informaci´on cuantitativa que permite a los desarrolladores, gerentes y clientes tomar decisiones informadas sobre el desarrollo y mantenimiento del software. Existen diversas t´ecnicas de medici´on que se pueden aplicar en diferentes etapas del ciclo de vida del software. A continuaci´on, se describen algunas de las t´ecnicas m´as comunes:

2. M´etricas de proceso:

Esfuerzo: Esta m´etrica se enfoca en la cantidad de tiempo y recursos humanos dedi- cados al desarrollo del software. Incluye aspectos como las horas de trabajo invertidas, el n´umero de personas involucradas y los costos asociados al proyecto. Un an´alisis del esfuerzo permite comprender la eficiencia del equipo y estimar mejor el tiempo y los recursos necesarios para futuros proyectos.

Productividad: La productividad se refiere a la cantidad de trabajo completado por unidad de tiempo o recurso. Se puede medir, por ejemplo, en t´erminos de l´ıneas de c´odigo escritas por hora, defectos corregidos por d´ıa o historias de usuario completadas por sprint. Una alta productividad indica que el equipo est´a trabajando de manera eficiente y aprovechando al m´aximo sus recursos.

Calidad del proceso: La calidad del proceso eval´ua la efectividad de los m´etodos y herramientas utilizados para desarrollar software. M´etricas como el n´umero de defectos

encontrados en las diferentes etapas del desarrollo, el tiempo de respuesta ante inci- dentes y la satisfacci´on de los usuarios con el proceso proporcionan informaci´on valiosa para identificar ´areas de mejora y optimizar los flujos de trabajo.

Las m´etricas de proceso permiten:

Identificar cuellos de botella y ´areas de ineficiencia: Al analizar el esfuerzo y la productividad, se pueden detectar puntos d´ebiles en el proceso que est´an ralentizando el desarrollo o generando un uso ineficiente de los recursos.

Mejorar la calidad del software: Una evaluaci´on de la calidad del proceso permite identificar pr´acticas que est´an generando defectos o retrasos, y tomar medidas para corregirlas.

Optimizar los flujos de trabajo: La informaci´on obtenida de las m´etricas de proceso puede ser utilizada para redise˜nar los flujos de trabajo, eliminar pasos innecesarios y automatizar tareas repetitivas.

Estimar mejor el tiempo y los recursos: Un entendimiento claro del esfuerzo y la productividad del equipo permite realizar estimaciones m´as precisas para futuros proyectos.

Aumentar la satisfacci´on del equipo: Un proceso optimizado y eficiente puede contribuir a mejorar la motivaci´on y el compromiso del equipo de desarrollo.

La implementaci´on efectiva de m´etricas de proceso en el desarrollo de software conduce a la creaci´on de equipos m´as eficientes, procesos m´as robustos y productos de mayor calidad.

  1. M´etricas de Producto

En el ´ambito de la Ingenier´ıa de Software, las m´etricas de producto son herramientas fundamentales para evaluar la calidad, el rendimiento y la usabilidad del software desarrolla- do. Estas m´etricas proporcionan informaci´on cuantitativa que permite a los desarrolladores, gerentes y clientes tomar decisiones informadas sobre el proceso de desarrollo y manteni- miento del software. Las m´etricas de producto se engloban en cinco categor´ıas principales:

Tama˜no: Esta m´etrica se enfoca en la magnitud del software, midiendo aspectos como la cantidad de l´ıneas de c´odigo, m´odulos, funciones o puntos de funci´on. Un tama˜no adecuado permite comprender la complejidad del proyecto y estimar el esfuerzo nece- sario para su desarrollo.

Complejidad: La complejidad del software se eval´ua en funci´on de la estructura del c´odigo, el n´umero de dependencias entre m´odulos y el grado de acoplamiento entre ellos. Un software menos complejo suele ser m´as f´acil de mantener, modificar y extender.

Riesgo: La evaluaci´on del riesgo implica identificar y cuantificar los factores que podr´ıan afectar negativamente el ´exito del proyecto. Estos factores pueden incluir la complejidad del proyecto, la incertidumbre del mercado, la experiencia del equipo, la disponibilidad de recursos y los cambios en los requisitos del cliente. Una gesti´on efecti- va del riesgo permite tomar medidas preventivas para mitigar los potenciales impactos negativos y aumentar las probabilidades de ´exito del proyecto.

4.1. An´alisis y Uso de las M´etricas de Proyecto

Las m´etricas de proyecto no solo se recopilan y registran, sino que tambi´en se deben analizar e interpretar para extraer informaci´on valiosa. Esto implica:

  1. Comparar las m´etricas con los valores objetivos o de referencia: Se analiza si las m´etricas de duraci´on, costo y riesgo se encuentran dentro de los rangos esperados o si se desv´ıan significativamente.
  2. Identificar tendencias: Se observan las tendencias de las m´etricas a lo largo del tiempo para detectar patrones y ´areas que requieren atenci´on.
  3. Investigar las causas de las desviaciones: Si se observan desviaciones significativas en las m´etricas, se deben investigar las causas subyacentes para tomar las medidas correctivas necesarias.
  4. Comunicar los resultados a las partes interesadas: Se informa a los gerentes, clientes y otras partes interesadas sobre el progreso del proyecto, los riesgos identificados y las medidas tomadas en base a las m´etricas.

4.2. Beneficios de la Implementaci´on de M´etricas de Proyecto

Las m´etricas posibilitan una planificaci´on y estimaci´on m´as precisa de la duraci´on, costo y recursos necesarios para completar el proyecto. La evaluaci´on del riesgo identifica potencia- les problemas y permite tomar medidas preventivas. La informaci´on proporcionada por las m´etricas es crucial para monitorear el progreso del proyecto y tomar decisiones informadas sobre recursos, tiempo y problemas. Facilitan la comunicaci´on entre miembros del equipo, gerentes y clientes. Una gesti´on efectiva de las m´etricas optimiza recursos, mitiga riesgos y facilita decisiones oportunas, incrementando as´ı las probabilidades de ´exito del proyecto y el cumplimiento de sus objetivos.

Las m´etricas de proyecto son herramientas indispensables para la gesti´on efectiva de proyectos de software. Al recopilar, analizar e interpretar las m´etricas de duraci´on, costo y riesgo, los gerentes de proyecto pueden tomar decisiones informadas, optimizar el uso de recursos, mitigar riesgos y aumentar las probabilidades de ´exito del proyecto. La implemen- taci´on de m´etricas de proyecto de manera efectiva conduce a una mayor eficiencia, una mejor comunicaci´on y un mayor control sobre el desarrollo del software.

  1. T´ecnicas de recolecci´on de datos:

Para obtener las m´etricas necesarias, se utilizan diversas t´ecnicas de recolecci´on de datos, como:

Observaci´on: Esta t´ecnica implica observar directamente el comportamiento del soft- ware y los usuarios para recopilar datos. Por ejemplo, un equipo de desarrollo puede observar c´omo interact´uan los usuarios con una nueva funci´on de un software de gesti´on de proyectos para recopilar datos sobre su usabilidad y eficacia.

Encuestas: Se realizan encuestas a los usuarios, desarrolladores y otros interesados para recopilar sus opiniones y percepciones sobre el software y el proceso de desarrollo. Por ejemplo, un equipo de desarrollo puede enviar encuestas a los usuarios finales para recopilar informaci´on sobre su satisfacci´on con la interfaz de usuario de una aplicaci´on m´ovil.

Registros: Consiste en registrar eventos y actividades relacionadas con el desarro- llo y la operaci´on del software. Por ejemplo, un sistema de registro de errores puede registrar autom´aticamente cada vez que se produce un error en una aplicaci´on web, proporcionando datos sobre la frecuencia y la gravedad de los errores.

Herramientas de medici´on: Se utilizan herramientas especializadas para recopilar datos de rendimiento, consumo de recursos y otros aspectos del software. Por ejemplo, un equipo de desarrollo puede utilizar herramientas de monitoreo de rendimiento para recopilar datos sobre el tiempo de carga de una p´agina web y el uso de la CPU para identificar posibles cuellos de botella y ´areas de mejora.

Estas t´ecnicas de recolecci´on de datos proporcionan informaci´on valiosa que puede utili- zarse para calcular m´etricas importantes y tomar decisiones informadas sobre el desarrollo y la gesti´on del software.

  1. An´alisis de datos:

Una vez recolectados los datos, es necesario analizarlos para extraer informaci´on ´util. Se utilizan t´ecnicas estad´ısticas y de visualizaci´on de datos para identificar tendencias, patrones y ´areas de mejora.

  1. Interpretaci´on y uso de los resultados:

Los resultados de las mediciones deben ser interpretados considerando el contexto es- pec´ıfico del proyecto y la organizaci´on. Es fundamental tener en cuenta factores como los objetivos del proyecto, las restricciones presupuestarias y las capacidades del equipo.

Mejorar el proceso de desarrollo de software: Los resultados de las mediciones pueden identificar ´areas problem´aticas en el proceso de desarrollo, lo que permite corregir