Evaluación de procesos de software

Una evaluación de procesos de software es un examen disciplinado de los procesos de software utilizados por una organización, basado en un modelo de proceso. La evaluación incluye la identificación y caracterización de las prácticas actuales, la identificación de áreas de fortalezas y debilidades, y la capacidad de las prácticas actuales para controlar o evitar causas importantes de calidad, costo y cronograma deficientes (software).

Una evaluación (o auditoría) de software puede ser de tres tipos.

  • UN self-assessment (first-party assessment) se realiza internamente por el propio personal de una organización.

  • UN second-party assessment lo realiza un equipo de evaluación externo o la organización es evaluada por un cliente.

  • UN third-party assessment es realizada por una parte externa o (por ejemplo, un proveedor está siendo evaluado por un tercero para verificar su capacidad para celebrar contratos con un cliente).

Las evaluaciones de procesos de software se realizan en un entorno abierto y colaborativo. Son para uso de la organización para mejorar sus procesos de software, y los resultados son confidenciales para la organización. La organización que se evalúa debe tener miembros en el equipo de evaluación.

Evaluación de la madurez del proceso de software

El alcance de una evaluación de procesos de software puede cubrir todos los procesos de la organización, un subconjunto seleccionado de los procesos de software o un proyecto específico. La mayoría de los enfoques de evaluación de procesos basados ​​en estándares se basan invariablemente en el concepto de madurez del proceso.

Cuando el objetivo de la evaluación es la organización, los resultados de una evaluación del proceso pueden diferir, incluso en aplicaciones sucesivas del mismo método. Hay dos razones para los diferentes resultados. Son,

  • Se debe determinar la organización que se investiga. Para una empresa grande, son posibles varias definiciones de organización y, por lo tanto, el alcance real de la tasación puede diferir en evaluaciones sucesivas.

  • Incluso en lo que parece ser la misma organización, la muestra de proyectos seleccionados para representar a la organización puede afectar el alcance y el resultado.

Cuando la unidad de evaluación objetivo se encuentra en el nivel del proyecto, la evaluación debe incluir todos los factores significativos que contribuyen al éxito o fracaso del proyecto. No debe estar limitado por dimensiones establecidas de un modelo de madurez de proceso dado. Aquí se evalúa el grado de implementación y su efectividad corroborados por los datos del proyecto.

La madurez del proceso se vuelve relevante cuando una organización tiene la intención de embarcarse en una estrategia general de mejora a largo plazo. Las evaluaciones de proyectos de software deben ser evaluaciones independientes para ser objetivas.

Ciclo de evaluación de procesos de software

Según Paulk y colegas (1995), el enfoque de evaluación basado en CMM utiliza un ciclo de seis pasos. Ellos son -

  • Seleccione un equipo: los miembros del equipo deben ser profesionales con conocimientos en ingeniería y gestión de software.

  • Los representantes del sitio a evaluar completan el cuestionario estándar de madurez del proceso.

  • El equipo de evaluación realiza un análisis de las respuestas al cuestionario e identifica las áreas que justifican una mayor exploración de acuerdo con las áreas clave del proceso de CMM.

  • El equipo de evaluación realiza una visita al sitio para comprender el proceso de software que sigue el sitio.

  • El equipo de evaluación produce una lista de hallazgos que identifica las fortalezas y debilidades del proceso de software de la organización.

  • El equipo de evaluación prepara un análisis de perfil de área de proceso clave (KPA) y presenta los resultados a la audiencia adecuada.

Por ejemplo, el equipo de evaluación debe estar dirigido por un evaluador líder de SEI autorizado. El equipo debe estar formado por entre cuatro y diez miembros del equipo. Al menos, un miembro del equipo debe ser de la organización que se está evaluando, y todos los miembros del equipo deben completar el curso de Introducción al CMM de SEI (o su equivalente) y el curso de capacitación del equipo CBA IPI de SEI. Los miembros del equipo también deben cumplir con algunas pautas de selección.

Con respecto a la recopilación de datos, el CBA IPI se basa en cuatro métodos:

  • El cuestionario estándar de madurez
  • Entrevistas individuales y grupales
  • Revisiones de documentos
  • Comentarios de la revisión del borrador de los hallazgos con los participantes de la evaluación

GAMBAS REBOZADAS

El método de evaluación estándar CMMI para la mejora de procesos (SCAMPI) se desarrolló para satisfacer los requisitos del modelo CMMI (Software Engineering Institute, 2000). También se basa en el CBA IPI. Tanto el CBA IPI como el SCAMPI constan de tres fases:

  • Planificación y preparación
  • Realice la evaluación in situ
  • Informe de resultados

Las actividades para el plan y la fase de preparación incluyen:

  • Identificar el alcance de la evaluación
  • Desarrollar el plan de evaluación
  • Preparar y capacitar al equipo de evaluación
  • Haga una breve valoración de los participantes
  • Administrar el cuestionario de evaluación de CMMI
  • Examinar las respuestas al cuestionario
  • Realizar una revisión inicial de documentos

Las actividades para la fase de evaluación in situ incluyen:

  • Conducir una reunión de apertura
  • Entrevistas de conducta
  • Consolidar información
  • Preparar la presentación de borradores de hallazgos.
  • Presentar el borrador de los hallazgos
  • Consolide, califique y prepare los hallazgos finales

Las actividades de la fase de informes de resultados incluyen:

  • Presentar los hallazgos finales
  • Realizar una sesión ejecutiva
  • Finaliza la evaluación