CONTROL DE CAMBIOS (Change Man) Introducción Secuencia de operaciones y actividades, que nos sirven para modificar componentes de sistemas ya instalados en Producción, así como dar de alta nuevos. Con Change Man se logra controlar la secuencia de liberación. Permite cuidar el desfasamiento de fechas y verificar que las versiones del sistema involucrado sean las correctas. También facilita el seguimiento de los recursos, tiempos y responsables de cada actividad, hasta su total cumplimiento. Metodología de liberación GENERACIÓN DE REQUERIMIENTOS El usuario de sistemas solicita al área de organización su apoyo para satisfacer sus requerimientos, utilizando la metodología IMA se asignan tiempos y responsabilidades, asumiendo en este momento el control el área de organización, quien se encarga de llenar los siguientes documentos: Definición de solicitudes A825. Describe las necesidades de los usuarios hacia el área de sistemas. Se debe contemplar: • Tipo de negocio afectado mas los datos correspondientes a la aplicación que afecta. • Datos de los solicitantes responsables del proyecto, organización y usuario. • Indicar cliente afectado (interno/externo o requerimiento oficial), para delegarle sus funciones. • Los datos exclusivos para gestión de demanda son necesarios para darle seguimiento al requerimiento según la fecha estimada de resolución controlando las causas de desviación si fuera necesario. Identificación de expectativas generales A211 • Describe las necesidades detalladas, incluso acompañadas de documentos anexos para mostrar claramente los problemas encontrados por el usuario de sistemas. Recepción por sistemas de requerimiento y asignación • Al recibir el requerimiento de desarrollo de sistemas asigna el líder de proyecto responsable para su solución. • El líder de proyecto asigna dicho requerimiento a algún recurso y pool de programadores para su resolución. • Este recurso se encargara de descargar del HOST (sistemas de producción), los componentes a modificar a alguna librería de usuario o sistema, por medio de la facilidad del Change Man misma que se describe a detalle a continuación. Ciclo de vida de un paquete en Change-Man CHECKOUT DE ELEMENTO CREAR PAQUETE RECORRIDO VERSIONES BASELINE - STAGE - AUDIT - PROMOTE INSTALACION EN PRODUCCION APROBACION FREZZE PROMOCION Creación del paquete de cambios Menú principal de Change Man. Teclear 1 Build: ------------------CHANGE MAN 4.1.6ª PRIMARY OPTION MENU----------------- OPCION ==> 1 2 3 4 5 D N Q R T X Build Freeze Promote Approve List Delete Notify Query Revert Tutorial Exit - Create, update and review package data Freeze or unfreeze a package Promote or demote a package Approve or reject a package Display (to process)package list Delete or undelete a package Browse the Global Notification File Query package, components and relationships Revert a package to DEV status Display information about Change Man Exit Change Man Press ENTER to process; enter END command to exit Las opciones de esté menú se pueden acceder desde cualquier otro panel o menú de Change Man mediante el signo =, seguido de la opción correspondiente. Menú Build Este menú cubre todos los servicios previstos para Desarrollo, desde la creación del Paquete de Cambios hasta su Audit. Se puede usar 0 Dates para buscar una fecha en la que haya disponibilidad para la instalación del Paquete de Producción. Luego se ha de teclear 1 Create: ---------------------------BUILD OPTIONS--------------------------------OPCION ==> O 1 2 3 4 5 6 7 8 9 B C L S Z Dates - Display the installation calendar Create - Create a new package Update - Update package information Custom - Create, update, approve or review custom forms Utility - Rename and Scratch information Checkout - Check out components from baseline or promotion Stage - Stage, edit, browse and delete components Audit - Audit a package Recompile - Recompile source code from baseline or promotion Relink - Relink or delete load modules Browse - Browse\print\copy baseline or promotion Compare - Compare staging to baseline or promotion Listing - Browse compressed listings Scan - Scan baseline for character strings Compress - Compress change package staging libraries Press ENTER to process; enter END command to exit Menú Build Si no se indica la Aplicación, Change Man presentará una lista de Aplicaciones para seleccionar una. Se debe completar la información requerida en los sucesivos paneles. Al finalizar el proceso, volverá a aparecer el Menú de Desarrollo con el mensaje: Paquete código de paquete creado Es importante recordar dicho código pues será utilizado en todas las funciones posteriores y en todas las notificaciones que realice Change Man. En este panel se indican las informaciones generales que caracterizan el Paquete de Cambios. Es importante el nivel del Paquete: 1. Simple Afecta solamente a una aplicación. 2. Complex, (o 3 Super). Agrupa a paquetes participados. 4. Participating Usa COPY’s o Rutinas de otras Aplicaciones. Debe depender de un paquete tipo 2 o 3. Panel de creación del Paquete de Cambios. ---------------------CREATE: CREATE A NEW PACKAGE----------------------OPCION ==> S L Long method – Prompt for package description and special instructions S Short method – Use default package description and instructions PACKAGE TITLE ==> Descripción APPLICATION REQUESTER’S NAME REQUESTER’S PHONE WORK REQUEST ID DEPARTMENT PACKAGE LEVEL PACKAGE TYPE PACKAGE TIME SPAN PACKAGE TO COPY FORWARD UNPLANNED REASON CODE TEMPORARY CHANGE DURATION ==> ==> ==> ==> ==> ==> QG@ Fred 123 inc001 DL23 l ==> Planned ==> Permanent ==> ==> ==> Press ENTER to process; enter END command to exit (Blank or pattern for list) (1-Simple, 2-Complex, 3-Super, 4-Participating) (Planned or Unplanned) (Permanent or Temporary) (Optional package name) ( For list) (In days) Panel de Fecha de Instalación del Paquete de Cambios. En este Panel se indica la fecha prevista de la instalación del Paquete de Producción. Hay que notar que cuando dicha fecha es sobrepasada, el Paquete de Cambios no puede ser alterado. Si el Paquete está en estado Desarrollo (DEV), se puede usar la función = 1.2.7 para corregirla. OJO CMNCRT07----------CREATE: REMOTE SITE INFORMATION-------------ROW 1 OF 1 COMMAND ==> SCROLL ==> PAGE Enter END command to process or CANCEL to cancel changes and exit. Enter in LCMD field for remote site selection list. REMOTE INSTALL DATE/TIME: LCMD SITE NAME YYMMDD FROM TO PRIMARY/BACKUP CONTACTS PHONE NUMBERS ‘’’’ DS2T ____ 950701 1700 2000 Scottie Macfarlane______1234567_____ Heather Macfarlane______7654321_____ ***********************BOTTOM OF DATA************************************ CHECKOUT DE COMPONENTES El proceso de CHECKOUT obtiene una copia de un componente desde BASELINE (niveles 0 a –n) o desde Promoción (niveles +n). Teclear = 1.5 y seguir las instrucciones. CMNCKOT1--------------------CHECKOUT------------------------------------OPCION ==> S L List libraries where components is located PACKAGE NAME LIBRARY TYPE SOURCE LIBRARY LANGUAGE NAME ==> QG@ 000005 ==> SRC ==> 0 ==> (Must be in DEV status) (Blank for library type list) (Baseline 0 to –n; Promotion +1 to +n) (Required for SRC; blank for language List; ? for designated language name) COMPONENT NAME ==> (Blank or pattern for list; * for all members) CHECK IT OUT TO ==> P (S- Staging library, P- Personal library) PERSONAL LIBRARY NAME (Must be non-sequential for multiple members) ==> ‘MBVD.QG.FONTS’ LIBRARY DSORG ==> PDS (Personal library: PDS, SEQ, PAN, LIB) CHECKOUT MODE ==> 1 (1 – Foreground, 2 – Submit batch job) CONFIRM REQUEST ==> YES (Yes or No) Press ENTER to process; enter END command to exit STAGE DE COMPONENTES. El proceso de STAGE consiste en la inclusión de un componente en un Paquete de Cambios para su instalación en Producción. Teclear = 1.6.1 y seguir instrucciones CMNSTG02-----------------STAGE: DEVELOPMENT DRIVEN------------------------COMMAND ==> CHANGE PACKAGE ID: QG@ 000005 STATUS: DEV INSTALL DATE: 950701 ISPF LIBRARY: PROJECT ==> MBVD GROUP ==> QG TYPE ==> FONTS MEMBER ==> (Blank or pattern for member selection list, for all members) OTHER PARTITIONED OR SEQUENTIAL DATASET: DATASET NAME ==> ORGANIZATION ==> (PDS, SEQ, PAN, LIB, OTH) LIBRARY TYPE LANGUAGE STAGE NAME CONFIRM REQUEST BATCH STAGE ==> NO ==> SRC ==> COBOL2 ==> ==> YES (Yes or No) (Blank for selection list) (Required for SRC:blank for selection list) (Required for SEQ organization) (Yes or No) Press ENTER to process; enter END command to exit Panel de STAGE de Componentes. STAGE • Es sumamente importante que el tipo de componente (LIBRARY TYPE) sea comprobado. Si no se está seguro, ha de dejarse en blanco para que Change Man ofrezca la lista, de la que seleccionaremos el correcto. • En lo que se refiere al nombre del componente se asume el nombre de miembro en la librería origen. Stage de componentes desde lista del paquete: Permite realizar una serie de funciones a los componentes que forman el Paquete de Cambios y comprobar visualmente su estado. Teclear = 1.6.2 y seguir instrucciones. Si la lista de componentes es extensa se recomienda usar = 1.6.3 porque presenta un panel de filtros de componentes. CMNSTG01---------------STAGE: PACKAGE DRIVEN LIST--------ROW 1 OF 4 COMMAND ==> SCROLL ==> PAGE CHANGE PACKAGE ID: QG@ 000005 MEMBER __ __ __ __ STATUS: DEV INSTALL DATE: 950701 TYPE STATUS LASTCHANGED LANGUAGE PROCNAME QG2EC0200 QGM200 QG8EC0200 QG9EC0200 SRC MPS RUS RUS INCOMP INCOMP INCOMP INCOMP 950625 950625 950625 950625 171440 171440 171440 171440 COBOL2 MAPAS COBOL2 COBOL2 TSOID CMNCOB2 CMNMAPGN CMNCOB2 CMNCOB2 REQUEST ACUSR01 ACUSR01 ACUSR01 ACUSR01 ***********************BOTTOM OF DATA****************************** Panel de Lista de Componentes. Para modificar los componentes se usa la función E (Edit). Al finalizar se realiza STAGE de dicho componente y si no es fuente pasa a estado ACTIVE. Si el componente es fuente Change Man genera un job para compilarlo. Al realizar Stage (S1 en el comando de línea en el panel anterior) Change Man puede presentar el siguiente panel de aviso: CMNCMPSW----------------------DSN8BC3.SRC--------------------ROW COMMAND ==> 1 OF 1 SCROLL ==> PAGE This component is also included in the following packages: Enter END to proceed or CANCEL to discontinue your request. PKG NAME STS PROMO-LEVEL YY.MM DATE TIME SIZE SETSSI PROCEDURE ID ---------------------------------------------------------------------------QG@ 000004 DEV 01.01 95/05/25 23:36 1282 3C86A81A CNMASM X01MF ***********************BOTTOM OF DATA*********************************** Cuando el componente es de tipo Fuente (SRC o LIKE S), requiere compilación, por tanto este panel es presentado al usuario para que compruebe las opciones y en su caso las modifique. CMNSTG04------------STAGE: COPMPILE AND OPTIONALLY LINK EDIT--------------COMMAND ==> CHANGE PACKAGE ID: QG@ 000005 STATUS: DEV INSTALL DATE: 950701 DATASET NAME : MBVD.QG.FONTS STAGED NAME : QG2EC0200 LIBRARY TYPE : SRC LANGUAGE : COBOL2 COMPILING PROCEDURE ==> CMNCOB2 (Blank for procedure list; ? to use designated procedure and options) COMPILE PARMS ==> APOST LINKAGE EDIT PARMS ==> DB2 PRE-COMPILE ==> YES (Yes or No) DISPLAY USER OPTIONS ==> YES (Yes or No) JOB STATEMENT INFORMATION: ==> //ACUSR011 JOB (ACCOUNT),’CAJA CASTILLA LA MANCHA’, ==> // CLASS=A, ==> // NOTIFY=ACUSR01, ==> // MSGCLASS= x Press ENTER to process; enter END command to exit Panel de Opciones de Compilación. Las opciones de usuario son requeridas si el componente es On-Line. CMNSTG04---------------------STAGE: EXTRA USER OPTIONS---------------------COMMAND ==> NAME : PE1C2020 COMPILE ONLY CICS PRE-COMPILE EASETRIEVE NO NAME TYPE: SRC ==> ==> Y ==> LANGUAGE: COBOL2 ENTRY TO DLICOBL DROP INCLUDE STMTS CICS P-C SP OPTN. USE Y or N TO SELECT OR DESELECT ADDITIONAL PROCESSING OPTIONS; Press ENTER to process; enter END command to exit ==> ==> ==> Promote de componentes Cuando el paquete es grande, la lista de componentes puede ser poco manejable. Usando la opción = 1.6.3 Change Man presenta el siguiente panel de filtros de componentes: -----------------------COMPONENT LIST PARAMETERS--------------------------OPCION ==> PACKAGE ID: OPTI000001 STATUS: DEV INSTALL DATE: 940612 SPECIFY SELECTION CRITERIA: COMPONENT NAME COMPONENT TYPE LANGUAGE COMPONENT STATUS ==> ==> ==> ==> CHANGED FROM DATE TO DATE COMPILE PROCEDURE TSOID SHORT OR LONG DISPLAY CONFIRM REQUEST SUPPRESS MESSAGES ==> ==> ==> ==> ==> S ==> YES ==> YES (1-Active, 3-Checkout, (YYMMDD) (YYMMDD) 2-Incomplete, 4-Inactive) (S- Short, L-Long) (Y/N) (Y/N; applies to batch stage) Press ENTER to process; enter END command to exit Lista de paquetes: Como método alternativo y siempre que se trabaje con varios paquetes de cambios, es recomendable usar la opción =5 que nos presenta el siguiente panel de filtros de paquetes: -------------------------PACKAGE LIST PARAMETERS--------------------------COMMAND ==> SPECIFY SELECTION CRITERIA: PACKAGE ID ==> QG@ PACKAGE STATUS ==> CREATOR’S TSO-ID WORK REQUEST ID DEPARTMENT ==> DESA PACKAGE LEVEL ==> ==> PACKAGE TYPE PACKAGE TIME SPAN FROM INSTALL DATE TO INSTALL DATE FROM CREATION DATE TO CREATION DATE OTHER CREATION DATE ==> ==> ==> ==> ==> ==> ==> ==> (Full name or pattern; blank for list) (DEV, FRZ, APR, REJ, DIS, INS, BAS, BAK, OPN, CLO, TCC or DEL) (1-Simple, 2-Complex, 3-Super, 4-Participating) (Planned or Unplanned) (Permanents or temporary) (YYMMDD) (YYMMDD) (YYMMDD) (YYMMDD) (Y/N) Press ENTER to process; enter END command to exit Como resultado obtenemos: --------------------CHANGE PACKAGE LIST-----------------------ROW 1 OF 4 COMMAND ==> SCROLL ==> PAGE PACKAGEID STA INSTALL LVL __ __ __ __ QG@000003 QG@000009 QG@000010 QG@000011 FRZ DIS APR DEV 940614 940621 940628 940629 SMPL SMPL SMPL SMPL TYPE WORK REQUEST DEPT PROMOTION AUD PLN/PRM PLN/PRM PLN/PRM PLN/PRM 111 00 123 00 123 00 123 STAGING STAGING STAGING CREATOR 0 0 0 ACUSR01 ACUSR01 ACUSR02 ACUSR02 ***********************BOTTOM OF DATA************************************ En la lista de paquetes podemos usar cualquiera de las siguientes opciones: -----------PACKAGE LIST OPTIONS------------------------INVALID LINE COMMAND COMMAND ==> OPTION DESCRIPTION --------------------------------------------------------------------------U1 Update control information U2 Update general information U3 Update implementation information U4 Update scheduling information U5 Update affected application information U6 Update participating package information U7 Update package install date information CU Work whit custom form UA Rename and Scratch components (Package driven) UB Rename and Scratch components (Baseline driven) C1 Check out components (Baseline promotion) C2 Check out components (Package list) S1 Stage components (Dev Lib list) S2 Stage components (Package list) S3 Specify package driven selection parameters AP Audit package RC Recompile source code from baseline/promotion libraries RL Relink or Delete load modules BB Browse/print Baseline/Promotion libraries BL Browse compressed listing CC Compare stating changes against baseline/promotion libraries DB Manipulate DB2 DBRMs and plans ZP Compress change package staging libraries F1 Freeze the change package online F2 Freeze the change package in batch F3 Selectively unfreeze or refreeze package components F4 Reset Freeze in Progreses indicator PD Promote/Demote a change package A1 Approve/Reject a change package A2 Display reject reasons D1 Memo delete a change package D2 Undelete a memo deleted change package RV Revert a change package back to Development status QP Query change package information B1 Back out a change package SC scan baseline for character strings *************************BOTTOM OF DATA************************************ Panel de Funciones en la Lista de Paquetes. Desarrollo y/o adecuaciones Una vez que este el paquete de componentes a modificar en la librería de usuario o sistema, el Líder de proyecto asigna tiempos y responsabilidades al pool de programadores, el cual procede a modificar o adecuar los componentes según se describe en los requerimientos. El pool de programadores ya hechos los cambios ejecuta pruebas para comprobar que los cambios solicitados sean los que apruebe el usuario. El líder de proyecto da el Vo. Bo. Junto con el usuario, si se encuentran problemas que no satisfagan al usuario dicho proyecto regresa al pool de programadores hasta quedar satisfecho el usuario. Generación del paquete de liberación Una vez que el usuario da Vo. Bo. a su requerimiento se procede a la generación del paquete de liberación. Llenando un requerimiento para los cambios y/o sistemas liberados con Change Man. En este documento se describen los miembros a liberar a producción; siempre cuidando el orden en el que serán liberados (primero copy’s, rutinas y programas). Dichos miembros se deben encontrar en las bibliotecas de traspaso del modulo que corresponda. Este requerimiento de liberación a producción es asignado a un recurso el cual se encarga de dicha liberación con Change Man. Derechos de autor • Este producto has sido elaborado por – Infosyst, S. C. • Para – Intersoftware Training, S. A. de C. V. • Derechos reservados – Prohibida su reproducción parcial o total FIN DE MODULO Derechos de autor • Este producto has sido elaborado por • Jorge Godínez Rodríguez. • Derechos reservados – Prohibida su reproducción parcial o total 28