Un esquema ALM ofrece funciones para seguridad, gobernancia, rastreabilidad y gestión de flujo de trabajo.
El esquema ALM se basa en algunos tipos de registro interrelacionados principales con el objeto de garantizar que las solicitudes de cambio se evalúen, se asignen, se efectúe su seguimiento, se trabaje en las mismas y se resuelvan con un proceso que garantice su rastreabilidad y seguimiento completos.
Los tipos de registro principales son ALMRequest, ALMTask y ALMActivity.
Un registro ALMRequest representa una solicitud para algunos tipos de cambio.
Un registro ALMTask se encarga de una solicitud y ayuda a gestionar las actividades que son las unidades de trabajo para completar la tarea.
Un gestor o jefe de equipo puede utilizar un registro ALMTask para gestionar el trabajo a llevar a cabo y los recursos que se van a asignar para todas las actividades.
Cada tipo de registro de trabajo ALM tiene un campo Type que se puede utilizar para describir un tipo de trabajo (por ejemplo, Defect, Enhancement y Release Requirement). Aunque los paquetes ALM incluyen valores
Tipo suministrados que son comunes para los métodos recomendados de desarrollo de software, no se limitan a los mismos y el usuario puede crear sus propios tipos.
Las relaciones entre los tipos de registro pueden ayudar a facilitar los procesos para la gestión de cambios a través de varios roles. Por ejemplo, al ejecutar una acción CreateTask del registro Request, puede crear una o
varias tareas. Si ya ha creado tareas para dicha solicitud, puede especificar que se cree la misma o un conjunto diferente de una o varias tareas con tipos de tareas que sean las mismas que los tipos de solicitud o diferentes. Al ejecutar una acción CreateActivity, puede crear una o varias actividades de tipos diferentes.
Si ya existen actividades para dicha tarea, puede crear un conjunto de actividades diferentes. Dispone de flexibilidad para personalizar el proceso de trabajo, pero es opcional.
Cada tipo de trabajo puede tener roles de usuario específicos asociados (por ejemplo, asociar el rol Verificador a la actividad Test). Cada rol lista los miembros del equipo que pueden realizar dicho tipo de trabajo.
Un proceso de trabajo ALM empieza con una solicitud:
- Un usuario envía una solicitud. La solicitud de cambio puede describir una solicitud de mejora, un requisito de release o un defecto.
- Un equipo de clasificación o un gestor de control de cambios revisa la solicitud y la acepta o no la acepta. Si la acepta, se crea una tarea, que es una descripción de alto nivel del trabajo a llevar a cabo para implementar la solicitud. El registro de solicitud incluye un enlace al registro de tareas y la tarea se asigna a un proyecto.
- Un jefe de desarrollo u otro jefe de equipo revisa la tarea y, a continuación, la activa. Al activar la tarea, se crean las actividades para completarla. El jefe de equipo asigna dichas actividades a los miembros
del equipo. Las actividades son, por ejemplo, actividades de desarrollo, actividades de prueba y actividades de documentación. El registro de tareas incluye enlaces a los registros de actividades y, a su vez, los registros de actividades tienen enlaces a la tarea.
- Los roles de Jefe de desarrollo, Jefe de pruebas y Jefe de documentación asignan las actividades correspondientes a los miembros del equipo, que actualizan los registros de actividades a fin de que reflejen el estado de su trabajo. Al finalizar el trabajo, entregan los cambios y marcan las actividades como completadas.
- El Ingeniero de release integra y compila los cambios entregados, y crea líneas base.
- El Verificador comprueba los cambios en las líneas base. El Jefe de pruebas marca una tarea de prueba como completada una vez que se han realizado y completado las actividades de prueba.
- El usuario que ha enviado la solicitud (emisor) revisa la tarea y las actividades de ésta y, si está satisfecho, la marca como completada.
Gracias a este proceso, se puede rastrear la solicitud del usuario inicial siguiendo todas las actividades necesarias para satisfacer su resolución.
Los tipos de roles comunes para un esquema ALM son los siguientes:
- Emisores. Aunque no sea un rol ALM definido, un emisor puede ser cualquier usuario, por ejemplo, un ingeniero de soporte, un desarrollador, un verificador, un escritor técnico o un gestor. Un Emisor puede:
- Enviar solicitudes.
- Comprobar el estado de la solicitud.
- Gestores de proyectos o desarrollo o jefes de equipo. Estos roles pueden clasificar las solicitudes e identificar los destinos del release. Un gestor puede:
- Comprobar el estado de la solicitud y cerrarla según proceda.
- Comprobar si la carga de trabajo de los desarrolladores está equilibrada correctamente.
- Ejecutar informes (solicitar medidas entrantes, buscar, cerrar, estado del release)
- Evaluador de documentos, Verificador y Desarrollador. Estos roles pueden:
- Buscar solicitudes que se le han asignado.
- Trabajar en solicitudes y resolverlas.
- Gestor de soporte o del producto. Estos roles pueden:
- Ejecutar informes (solicitar medidas entrantes, buscar, cerrar, estado del release)
- Comprobar el estado de release y la solicitud.
Mientras que un usuario puede tener varios roles en un momento dado, un esquema ALM permite definir más claramente una transición entre los roles.
Por ejemplo, el mismo usuario, que es un desarrollador, puede enviar una solicitud y, a continuación, asignarse a sí mismo una actividad asociada y resolverla. En este ejemplo, el mismo usuario es Emisor, Jefe de desarrollo, Desarrollador y Verificador.