Dar respuesta a las solicitudes de servicios de transición de instalaciones software como consecuencia del desarrollo y evolución de sistemas de información, que llegarán al adjudicatario en forma de peticiones de lanzamiento (PL).
Las peticiones de lanzamiento se clasifican por tipificaciones:
Rol | Descripción |
---|---|
Peticionario (*) | Rol solicitante de la PL. Puede ser tanto el Responsable de Producto como el Proveedor (de desarrollo) |
Responsable de producto (**) | Rol responsable de la aplicación sobre la que se solicita una PL. |
Responsable sistemas (**) | Rol responsable del área de sistemas de la aplicación. Coincide con el responsable de la plataforma en la que se ubica la aplicación |
Responsable funcional (***) | Rol responsable funcional de la aplicación sobre la que se solicita una PL. |
Grupo planificador | Rol responsable de la correcta gestión y planificación por parte del resolutor |
Resolutor | Rol que ejecuta y resuelve la PL. Es el proveedor de sistemas (CTI) |
Oficina Técnica de Calidad (OCA) | Rol responsable de la verificación del código entregado por el Proveedor |
Oficina Técnica de Interoperabilidad | Rol responsable de verificar en algunos casos información necesaria para los despliegues |
(*) Solicitante puede ser tanto el Responsable de producto como cualquier usuario que tenga rol de Jefe de proyecto del área de proyectos, mientras que sólo podrá ser el proveedor de la aplicación sobre la que se requiere el despliegue.
(**) A efectos del flujo en la herramienta, los permisos del Responsable de Sistemas son los mismos que los que tiene cualquier jefe de proyectos del área de Sistemas
(***) A efectos del flujo en la herramienta, dicho rol no posee acciones
Si se trata de una PL normal, el Proveedor de Desarrollo debe incluir en un comentario una tabla con tres columnas, las dos primeras obligatorias y la última opcional con los siguientes datos:
Cuando se creen las Peticiones de Lanzamiento hijas, el Responsable de producto o el Proveedor de Desarrollo deberá mencionar a la Oficina de Interoperabilidad en las que ésta tenga que indicar la URL. La información deberá estar solicitada como mínimo el día antes de la ejecución.
Para mencionar al grupo en un comentario bastará con acceder a “+” y seleccionar “oficina-interoperabilidad”
Con esta mención llegará un correo electrónico con ese comentario a todos sus integrantes. La Oficina de Interoperabilidad indicará en un comentario la URL solicitada.
El Proveedor de Sistemas tendrá que tener en cuenta estos comentarios a la hora de ejecutar la Petición de Lanzamiento.
Cuando el proveedor acaba un desarrollo y necesita hacer un despliegue en unos de los entornos de la STIC, entrega el código para que el proveedor de sistemas que gestiona la plataforma donde va a hacerse el despliegue, lo ejecute en los entornos solicitados por el proveedor, siempre bajo la supervisión del Responsable de Producto.
Por tanto, será necesario saber la normativa de gestión de entregas y qué requerimientos debe cumplir el proveedor para que el código que ha desarrollado pueda ser desplegado satisfactoriamente:
El Área de Sistemas únicamente despliega el código que se encuentre en la Digital Media Library (DML). La mayoría de aplicaciones hace la entrega en el Gestor de Control de Versiones (GIT), a través del cuál y de manera automatizada, Jenkins lo compila y deposita en la DML. Eso ocurre siempre que la compilación o empaquetado no lo haga el proveedor. Si además en la entrega hay otra serie de archivos como archivos de texto, se deberá hacer una petición a la Oficina de Calidad para que todo pueda entregarse en el GIT (petición para "configurar job de JENKINS").
Por otro lado, existe un grupo de aplicaciones en las que el proveedor es quien realiza la tarea de compilar o empaquetar, y para ello utiliza otro procedimiento. Hasta ahora, el proveedor adjuntaba el código en FARO, o directamente en JIRA en la propia PL. Ahora, el proveedor del software entrega el código fuente en GIT pero además dispone en JIRA de un registro denominado Entrega de Binarios que automáticamente deposita el código en la DML. En estos casos se deberá crear petición a la Oficina de Calidad para "configurar job para entrega de binarios".
En el PID (Procedimiento de Instalación y Desinstalación) siempre habrá que indicar la ruta relativa de la DML que siempre coincidirá con la de GIT. En el caso de que no haya entrega de código fuente, la ruta será la indicada en el registro de entrega de binarios.
La entrega de binarios no siempre conlleva entrega en GIT. Es posible que sólo sea necesario hacer la entrega de binarios, con lo que si no existe el job para el proyecto hay que hacer la petición correspondiente.
Mientras la OCA no ejecute su verificación es imposible avanzar con la PL. Ahora bien, el veredicto de la OCA puede ser conforme o no conforme. En cualquier caso, a excepción de que la no conformidad se deba a que la compilación en JENKINS falla, será posible seguir con el despliegue del código.
La verificación que hace la OCA del código y la PL están relacionadas y tienen un vínculo común, la entrega, de forma que para una entrega sólo es válida una SVE y una PL, a menos que la PL se cancelara y no llegara a ejecutarse.
Hay que tener en cuenta que además de la entidad en la que la OCA verifica el código (SVE=Servicio de Verificación de entrega), el proceso de gestión de lanzamientos se articula en JIRA con dos tipos de entidades:
Por otra parte, cualquier PL incremento versión puede tener dos tipo:
A continuación se describe el flujo para la SVE, teniendo en cuenta que puede crearse en cualquier momento en el que se conozcan los dígitos de la entrega, pero que no podrá ser asignada a la Oficina Técnica de Calidad hasta que el código no haya sido entregado en el repositorio correspondiente.
Ver en servicios OCA.
En el siguiente enlace, puedes consultar el manual del JIRA , herramienta en la que se ha modelado este proceso.
Para que el solicitante pueda crear y seguir un flujo de PL de Incremento de versión en un proyecto de tipo aplicación, es necesario que:
El solicitante, ya sea el proveedor o el responsable del producto, crea el tipo de entidad "PL versión" sobre el proyecto de tipo aplicación correspondiente.
Debe informar obligatoriamente:
Tras estos pasos, la PL se habrá creado en estado ABIERTA y se habrá creado un enlace con una página de CONFLUENCE (en la página de la plataforma en la que se crea la PL) para que se complete el PID. Una vez completado, será necesario acceder a COMENZAR, momento en el que desaparecen los permisos de edición en el PID y en el que la PL pasará a un estado en el que el proveedor de sistemas (CTI) deberá revisar la documentación aportada (sobre todo para asegurarse de que las plataformas y los entornos solicitados son a los que se hace referencia en el PID).
El proveedor deberá completar el PID en la página de CONFLUENCE enlazada. Aparecen dos páginas enlazadas, una para el PID en sí y la otra la página de la PL que la contiene y donde puede aparecer otra información importante de la PL. Esta página se crea en la página de la plataforma en la que se solicita la PL aunque tiene un enlace a la página de la versión para la que se crea la PL.
Una vez que se ha completado el PID, el proveedor o el Responsable de producto deberán comenzar la PL, lo que implicará que al PID se le quitan los permisos de edición para todo el mundo.
El proveedor de sistemas revisa el PID, pudiendo:
Recuerda siempre que en el PID deben darse instrucciones concretas al proveedor de sistemas (ni omprobaciones ni notas).
hay una serie de motivos por los que sistemáticamnete se rechaza el PID, lo que conlleva a qeu la PL pase a estado NO ACEPTADA y que haya que rehacerlo. Puedes ver los principales motivos de rechazo accediendo aquí.
Al finalizar la revisión de la documentación la PL estará en estado PLANIFICABLE que indica al solicitante que se ha finalizado el ciclo de lectura de documentación y ya ha sido aprobada. En este estado, y aunque CTI esté leyendo la documentación, el peticionario de la PL va a poder:
El Proveedor o el Responsable de producto deben editar de nuevo el PID, de manera que al completar la información ese permiso de edición de nuevo desaparezca.
Puedes ver aquí los motivos de rechazo del proveedor de sistemas.
CTI puede solicitar información desde cualquier estado y el solicitante debe completar esa información.
Si el peticionario aún no ha solicitado PLs hijas, puede hacerlo en este estado tantas veces como desee.
En el momento en el que se hayan solicitado PLs hijas, el Grupo Planificador procederá a crearlas, para ello:
El hecho de generar PLs hijas hace que la PL cambie a estado EN RESOLUCIÓN.
El peticionario puede en cualquier momento cambiar la urgencia de la PL pasándola a PLU, lo que conllevará la creación automática de la PL Hija si no estuviera creada ya. En el caso de que ya existiera, podría cambiar la urgencia de la PL Hija.
Estado asignado al informador y que indica al solicitante que ya existen PL hijas. Al igual que en el estado anterior, el peticionario puede solicitar PLs hijas tantas veces como desee (tanto normales como PLU), y el Grupo Planificador podrá generar las PLs hijas.
Una vez que el Responsable de Producto considera que ya no debe haber más implantaciones, podrá finalizar la PL tanto él como el Proveedor para lo cual es imprescindible que todas las PLs hijas estén cerradas.
Ahora bien, dependiendo de cómo se hayan cerrado las hijas se cerrará la padre. Estos cierres se controlan con el campo Resolución que aparece debajo del estado.
Hay tres posibles resoluciones para una PL cerrada en una versión:
A la hora de finalizar a PL, Responsable de producto/Proveedor podrán determinar si es necesaria o no implantar una nueva entrega para esa versión, con lo que será necesaria para la misma una nueva SVE y una nueva PL con implantaciones. En ese caso, la PL primera se cerrará con resolución Parcialmente resuelta.
Partíamos de versiones En resolución para poder generar PLs.
Una vez que la PL está cerrada, el Responsable de producto puede finalizar las implantaciones, pasando la versión de En resolución a Implantada, lo que hará que las mejoras e incidencias pasen de estado En versión a Cerradas.
Una vez que la versión esté en estado Implantada, el Responsable de producto puede cerrar la versión siempre que las OTs estén cerradas.
En la siguiente tabla se contemplan los posibles estados de la versión una vez que está En resolución
Estado versión | Acción | Condiciones | Validación | Mensaje | Estado final |
EN RESOLUCIÓN | Finalizar (y no sale Finalizar Implantaciones) | Si y sólo si NO HAY SVEs ni PLs relacionadas con la versión | Deben estar las Ots cerradas | La versión se va a finalizar sin haber generado PLs | La versión pasa a estado CERRADA, resolución Cerrada y mejoras, incidencias y no conformidades pasan a CERRADA |
EN RESOLUCIÓN | Finalizar implantaciones (y no sale Finalizar) | Si y sólo si HAY PLs relacionadas con la versión | Deben estar las PLs cerradas | Comprueba que las PLs están cerradas | La versión pasa a estado IMPLANTADA y mejoras, incidencias y no conformidades pasan a CERRADA |
IMPLANTADA | Finalizar | Si y sólo si HAY PLs relacionadas con la versión | Deben estar las Ots cerradas | Comprueba que las OTs están cerradas | La versión pasa a estado CERRADA, resolución Cerrada |
EN RESOLUCIÓN | Cancelar | Siempre (motivo obligatorio) | Si sólo hay SVEs→deben estar cerradas Si hay PLs →deben estar cerradas con resolución Cancelada | Comprueba que las entidades relacionadas están cerradas | La versión pasa a estado CERRADA, resolución cancelada y mejoras, incidencias y no conformidades pasan a BACKLOG |
IMPLANTADA | Cancelar | NO ES POSIBLE |
Como hemos adelantado, las PLs hijas se crean de dos formas:
En este caso, las Pls hijas se crean en estado Planificable, con idea de que el Grupo Planificador proponga una fecha y que en base a la misma CTI la planifique. Esa fecha de planificación deberá ser validada por el Grupo Planificador.
Si una PL hija se transforma en una PLU, transicionará automáticamente de estados anteriores al estado en el que CTI planifica, no necesitando aprobación por parte del Grupo Planificador de esa planificación.
Estas transiciones automáticas se harán también en el caso de una PLU que esté pendiente de planificación y que pase a ser normal. En este caso, pasará al estado en el que el Grupo Planificador proponga fechas.
Los estados por los que pasa la PL hija por tanto son:
Al generarse la PL hija está en estado PLANIFICABLE si se ha solicitado una PL hija no urgente.
El Grupo Planificador solicita planificación a CTI indicándole una fecha en base a la restricción horaria del peticionario. Hay que tener en cuenta lo siguiente (esto es de aplicación no sólo a PLs de versión, también a las de datos y de configuración):
CTI recibe la solicitud de planificación del Grupo de Lanzamientos y propone una fecha de inicio estimada y una fecha fin estimada.
El Grupo Planificador debe aprobar o no aprobar las fechas que propone. En caso de no estar conforme con las fechas, CTI deberá volver a planificar.
Una vez la fecha está aprobada, la PL hija quedará pendiente de iniciar la resolución.
En este estado, el proveedor sistemas podrá cambiar tanto la fecha de inicio estimada como los grupos lógicos.
Hasta este estado, el peticionario podrá cambiar la urgencia de la PL.
El proveedor de sistemas comienza la resolución, realizando las actividades programadas en la documentación.
Al finalizar la resolución debe informar si se han producido errores y los comentarios que considere necesario.
El proveedor de sistemas puede paralizar la ejecución de la PL porque puede haber un motivo de bloqueo de la misma. Una vez se haya eliminado ese motivo, volverá a pasarla a EN RESOLUCIÓN
El peticionario debe revisar la ejecución y aceptar o no aceptar la solución técnica.
Reinstalación | Marcha Atrás | Desinstalación |
---|---|---|
SI | SI | |
SI | NO | |
NO | SI | |
NO | NO |
Al finalizar cada ejecución se graba en una tabla visible los siguientes datos:
El proveedor de sistemas dispondrá durante todos los estados de la PL Hija y hasta 10 días después de finalizar el mes, la acción Solicitar Revisión. Con esta acción podrá solicitar al Grupo Planificador que se revisen los parámetros de Complejidad y/o facturación.
El Grupo Planificador dispondrá de una acción para actualizar la tabla de ejecuciones si el proveedor sistemas así se lo ha solicitado. Los cambios quedarán registrados en el histórico de cambios.
Puedes ver un resumen del proceso accediendo aquí.
Lo normal es que el proveedor que hace los despliegues sea CTI, pero hay ciertas plataformas en las que , si bien su administración corresponde a CTI, los despliegues en las mismas se hacen a cargo de los propios proveedores de desarrollo. En estos casos no interviene el Grupo Planificador, siendo el proveedor de sistemas de la plataforma quien ejecuta todas las acciones.
Como ya hemos comentado, el peticionario puede en cualquier momento cambiar la urgencia de la PL y de la PL hija (hasta el estado EN RESOLUCIÓN).
Es imprescindible que, hasta que no finalice la compilación del código, no se marque como Urgente una PL. Si se hace, existe un alto riesgo de que se atienda antes de que haya terminado la compilación, y en ese caso quede rechazada porque en el momento de atenderla no haya aún un paquete instalable.
Por tanto, es importante para el correcto desarrollo de los proyectos, el marcar la PLU en el momento adecuado, entendiendo que la U no significa importante, sino Urgente (para acometer cuanto antes).
Rol | Descripción |
---|---|
Peticionario | Rol solicitante de la PL, en este caso el proveedor de sistemas (CTI) |
Responsable sistemas | Rol responsable de la plataforma en la que se hace la modificación o el cambio de configuración |
Grupo planificador | Rol responsable de la correcta gestión y planificación por parte del resolutor |
Resolutor | Rol que ejecuta y resuelve la PL. Es el proveedor de sistemas (CTI) |
El Responsable de sistemas podrá ejecutar las mismas acciones que cualquier usuario que tenga rol JP sistemas.
En el siguiente enlace puedes consultar el manual de JIRA, donde se ha modelado este proceso.
El solicitante, crea el tipo de entidad "PL sistemas" sobre el proyecto de tipo plataforma correspondiente.
Debe informar de forma obligatoria:
Clasificación PL: dependiendo de la clasificación que se escoja deberán adjuntar un tipo de PID u otro.
Si el tipo PL es con aprobación horaria por parte de la STIC:
Normal
Alta/Baja/Modificación de regla de firewall
Si el tipo es sin aprobación horaria por parte de la STIC:
Alta/Baja/Modificación de zonas/alias en SAN de los CTIs
Alta/Baja/Modificación una granja en balanceador
Alta/Baja/Modificación/Propagación de VLANs en equipos de conmutación
Alta/Baja/Modificación de registro en DNS corporativo/externo
Alta/Baja/Modificación de configuraciones de ámbitos en NGINX
Alta/Baja/Modificación publicación de acceso externo en PROXY-INVERSO de CTI
Miembro asignado: (opcional) se podrá indicar miembros de CTI, tanto coordinadores como grupos por tecnologías, para identificarlos.
Tras estos pasos, la PL se habrá creado y pasará a un estado en el que el proveedor de sistemas (CTI) resolverá.
Al igual que para la PL de incremento versión, este proceso se modela con dos tipos de entidades:
En este estado pasan a poder ejecutarse las PLs hijas creadas de manera automática con la creación de la PL. En este estado es posible generar PLs hijas que no correspondan a las creadas con los datos solicitados en la creación de la PL. Es posible generar hijas con la misma tripleta que ya se hubiera solicitado anteriormente.
Si todas las Pls hijas están cerradas y no es necesario generar ninguna más, el peticionario puede finalizar la PL.
Hay tres posibles resoluciones para cerrar la PL:
Las PLs hijas se crean de dos formas:
El ciclo de vida de las PLs hijas va a depender del tipo de la PL:
En cualquier caso, cuando se ejecuta la PL hija NO hay revisión de la ejecución, pasando directamente al estado CERRADA.
Los estados por los que pasa la PL hija por tanto son:
CTI propone una fecha de inicio estimada y una fecha fin estimada.
El Grupo Planificador debe aprobar o no aprobar las fechas que propone. En caso de no estar conforme con las fechas, CTI deberá volver a planificar.
Una vez la fecha está aprobada, la PL hija quedará pendiente de iniciar la resolución.
En este estado, el proveedor sistemas podrá cambiar tanto la fecha de inicio estimada como los grupos lógicos.
El proveedor de sistemas comienza la resolución, realizando las actividades programadas en la documentación.
Al finalizar la resolución debe informar si se han producido errores y los comentarios que considere necesario.
En el espacio de Ayuda Jira/Confluence podrás ver vídeos explicativo del proceso de gestión de lanzamientos.