Inspección de software - Software inspection

La inspección en ingeniería de software se refiere a la revisión por pares de cualquier producto de trabajo por parte de personas capacitadas que buscan defectos mediante un proceso bien definido. Una inspección también podría denominarse inspección de Fagan en honor a Michael Fagan, el creador de un proceso de inspección de software muy popular.

Introducción

Una inspección es uno de los tipos más comunes de prácticas de revisión que se encuentran en los proyectos de software. El objetivo de la inspección es identificar defectos. Los productos de trabajo comúnmente inspeccionados incluyen especificaciones de requisitos de software y planes de prueba . En una inspección, se selecciona un producto de trabajo para su revisión y se reúne un equipo para una reunión de inspección para revisar el producto de trabajo. Se elige un moderador para moderar la reunión. Cada inspector se prepara para la reunión leyendo el producto de trabajo y anotando cada defecto. En una inspección, un defecto es cualquier parte del producto de trabajo que impedirá que un inspector lo apruebe. Por ejemplo, si el equipo está inspeccionando una especificación de requisitos de software, cada defecto será un texto en el documento con el que un inspector no esté de acuerdo.

Proceso de inspección

El proceso de inspección se desarrolló a mediados de la década de 1970 y posteriormente se ha ampliado y modificado.

El proceso debe tener criterios de entrada que determinen si el proceso de inspección está listo para comenzar. Esto evita que los productos de trabajo sin terminar ingresen al proceso de inspección. Los criterios de entrada pueden ser una lista de verificación que incluya elementos como "El documento ha sido revisado de ortografía".

Las etapas del proceso de inspección son: planificación, reunión general, preparación, reunión de inspección, reelaboración y seguimiento. Las etapas de preparación, reunión de inspección y reelaboración pueden repetirse.

  • Planificación: la inspección la planifica el moderador.
  • Reunión de resumen: el autor describe los antecedentes del producto de trabajo.
  • Preparación: Cada inspector examina el producto de trabajo para identificar posibles defectos.
  • Reunión de inspección: Durante esta reunión, el lector lee el producto de trabajo, parte por parte, y los inspectores señalan los defectos de cada parte.
  • Rehacer: El autor realiza cambios en el producto de trabajo de acuerdo con los planes de acción de la reunión de inspección.
  • Seguimiento: Los cambios realizados por el autor se verifican para asegurarse de que todo sea correcto.

El moderador finaliza el proceso cuando satisface algunos criterios de salida predefinidos. El término inspección se refiere a uno de los elementos más importantes de todo el proceso que rodea la ejecución y finalización exitosa de un proyecto de ingeniería de software.

Roles de inspección

Durante una inspección se utilizan los siguientes roles.

  • Autor: la persona que creó el producto de trabajo que se está inspeccionando.
  • Moderador: Este es el líder de la inspección. El moderador planifica la inspección y la coordina.
  • Lector: la persona que lee los documentos, un artículo a la vez. Los otros inspectores luego señalan los defectos.
  • Registrador / Escriba: La persona que documenta los defectos que se encuentran durante la inspección.
  • Inspector: Persona que examina el producto de trabajo para identificar posibles defectos.

Tipos de inspección relacionados

Revisión de código

Se puede realizar una revisión de código como un tipo especial de inspección en la que el equipo examina una muestra de código y corrige cualquier defecto. En una revisión de código, un defecto es un bloque de código que no implementa adecuadamente sus requisitos, que no funciona como el programador pretendía, o que no es incorrecto pero podría mejorarse (por ejemplo, podría hacerse más legible o su el rendimiento podría mejorarse). Además de ayudar a los equipos a encontrar y corregir errores, las revisiones de código son útiles tanto para los programadores de capacitación cruzada sobre el código que se está revisando como para ayudar a los desarrolladores jóvenes a aprender nuevas técnicas de programación.

Revisiones hechas por colegas

Las revisiones por pares se consideran una de las mejores prácticas de la industria para la detección temprana de defectos de software y el aprendizaje de artefactos de software. Las revisiones por pares se componen de recorridos de software e inspecciones de software y son parte integral de las actividades de ingeniería de productos de software. Una colección de conocimientos, habilidades y comportamientos coordinados facilita la mejor práctica posible de las revisiones por pares. Los elementos de las revisiones por pares incluyen el proceso de revisión estructurado, listas de verificación de productos estándar de excelencia, roles definidos de los participantes y los formularios e informes.

Las inspecciones de software son la forma más rigurosa de revisiones por pares y utilizan completamente estos elementos para detectar defectos. Los tutoriales de software se basan selectivamente en los elementos para ayudar al productor a obtener la comprensión más profunda de un artefacto y llegar a un consenso entre los participantes. Los resultados medidos revelan que las revisiones por pares producen un atractivo retorno de la inversión obtenido a través del aprendizaje acelerado y la detección temprana de defectos. Para obtener los mejores resultados, las revisiones por pares se implementan dentro de una organización a través de un programa definido para preparar una política y un procedimiento, capacitar a los profesionales y gerentes, definir mediciones y completar una estructura de base de datos y mantener la infraestructura de implementación.

Ver también

Referencias

enlaces externos