Upload
ambrosio-arquilla
View
4
Download
2
Embed Size (px)
Citation preview
®
IBM Software Group
© 2004 IBM Corporation
Solución IBM Rational de gestión de configuración para plataformas heterogéneas : Windows, Unix y Z/OS
IBM Software Group
Agenda
¿Porqué este seminario?
Estrategia Rational para el Z/OS
Gestión de configuración con Rational para plataformas heterogéneas.
Gestión de Assets sobre ClearCase
Servicios de implantación de la Solución.
IBM Software Group
Agenda
¿Porqué este seminario?
Estrategia Rational para el Z/OS
Gestión de configuración con Rational para plataformas heterogéneas.
Gestión de Assets sobre ClearCase
Servicios de implantación de la Solución.
IBM Software Group
Realidad del desarrollo de software en grandes corporaciones :
Plataformas heterogenas de desarrollo y ejecución. OS/390, z/OS Unix / Linux Windows. AS400 , i series
Las aplicaciones mixtas, componentes diversos (java, web, cobol, C)
Varios IDEs de desarrollo : RAD, Eclipse, .net , IDEs cobol, TSO, etc.
Procesos despliegue y promoción diversos según plataforma : A menudo labores manuales.
Proceso de promoción distintos en cada plataforma.
Pases a producción de urgencia no controlados.
IBM Software Group
Razones históricas para la esta realidad “multiplataforma” en las organizaciones :
En los años 90 – > “ El Mainframe está muerto”– Nuevas inversiones en sistemas Unix.
– Nuevas tecnologías en Windows : C, C++, VB, Java, J2EE.
Aparición de la WEB : – Al principio, fiebre por abrir este nuevo canal de negocio.
– Una nueva era aparece , “on demand world”.
– Nuevos mecanismos de acceder al legacy residente en Z o AS400
Adquisiciones y fusiones– Cada contribuyente en su arquitectura.
IBM Software Group
Evolución historica de herramientas de gestión de gestión de configuración.
Han proliferado nuevas herramientas a medida que surgen nuevas plataformas :
Z/OS – Endevor, ChangeMan, Librarian, SCLM y gran cantidad de desarrollos a medida.
Unix / Windows – ClearCase, PVCS y diversos freewares (CVS, Subversion)
Cada herramienta resuelve la problemática de solamente una plataforma.
IBM Software Group
Y esta es la situación actual ..... Cada plataforma resuelve un problema de negocio, no es posible
migrar aplicaciones a una tecnología única.
El ciclo de vida depende de la plataforma, mientras que las aplicaciones son multiplataforma :
– Dificultad en el pase a de entornos, ciclos distintos
– A menudo perdida de control de la versión que hay en producción.
– Baja la calidad de la aplicación.
Es necesario establece un mecanismo de control del cambio del ciclo de vida del software único.
Es un escenario complejo para las organizaciones y para los fabricantes.
IBM Software Group
Y si pudiera lograr de una forma efectiva : Tener un sistema unificado de gestión de configuración para todas las
plataformas.
Tener la garantía de correspondencia entre versión de fuentes y ejecutables que tengo en cada entorno.
Tener un proceso de gestión de ciclo de vida común.
Automatizar despliegues.
Tener un punto de acceso único a el estado y ejecución de las compilaciones y despliegues.
Y si pudiera utilizar la potencia de la metodología de IBM Rational también para todos mis desarrollos (Z/OS incluido)
IBM Software Group
Objetivos del seminario
1. Mostrar como la solución de IBM Rational proporciona un framework para control de ciclo de vida de aplicaciones distribuidas.
2. Ver las herramientas funcionando.
IBM Software Group
Agenda
¿Porqué este seminario?
Estrategia Rational para el Z/OS
Gestión de configuración con Rational para plataformas heterogéneas.
Gestión de Assets sobre ClearCase
Servicios de implantación de la Solución.
IBM Software Group
System z Application Lifecycle
zSeries Application LifecycleBusiness driven process
Assem
ble
Develop
System z Application Lifecycle
Model and simulate business
processes
WebSphere Business Modeler
Model applications and data
Rational Software
Architect
Understand, Identify and
prepare existing assets for reuse
WSAA / ATW / CICS IA
N-Tier Model based Application
and process generation
WebSphere Integration Developer
N-Tier Visual construction
WebSphere Developer
for zSeries / HATS
Data Creation, update
File Manager
Application Test, Debug, and Deploy
Debug Tool Utilities
Functional and Load Testing
RPT/RFT
Application performance,
management and problem determination
Fault AnalyzerITCAM
OmegamonApplication
Performance Analyzer
Monitor and manage
Business processes
TivoliWS Business
Monitor DevelopModel
ApplicationsDiscover /
UnderstandModel
Business
Manage Data
AssembleDebug/ Deploy
Test
Monitor Applications
Monitor Business
Common Processes and Software Configuration Management
ClearQuest/ClearCase
IBM Software Group | Rational software
Rational Method Composer
Incluye el Proceso Unificado de Rational (RUP)
Para cada fase del ciclo de vida indica: Qué hacer
Cómo hacerlo
Cuándo hacerlo
Quién debe hacerlo
Válido para todo tipo de desarrollo
Se puede adaptar a cualquier tipo de
desarrollo utilizando la herramienta de
configuración y diseño que viene incluída
Proyecto Eclipse: Eclipse Process Framework (EPF)
RUP for System Z
IBM Software Group | Rational software
IBM Software Group | Rational software
IBM Software Group | Rational software
Herramienta para sencilla adaptación
Modificación del contenido
directamente en Eclipse utilizando
sencillos formularios.
IBM Software Group | Rational software
Agenda
¿Porqué este seminario?
Estrategia Rational para el Z/OS
Gestión de configuración con Rational para plataformas heterogéneas.
Gestión de Assets sobre ClearCase
Servicios de implantación de la Solución.
IBM Software Group
IBM Rational ClearCase : Como repositorio único
Robustez probada – 500,000 usuarios.
Gran flexibilidad para gestionar proceso de cambio.
Soporte para grandes equipos de trabajo.
IBM Software Group
Si pero en gestión de configuración en el host nos encontramos con ….. Habitualmente se realizan labores de mantenimiento, más que evolutivos..
Muy habitual trabajar con la versión que está en producción.
Modelo de gestión de configuración basado en “cambio de entorno”.
Es necesario que el sistema tenga “inteligencia” para conocer el lenguaje utilizado (Cobol, PL1, etc) para poder gestionar compilaciones.
En host la gestión de configuración debe resolver la gestión de builds.
Y sobre todo en host nos encontramos con una barrera organizativa, de procesos de tradición y de conocimientos que dificultan el acceso a una solución de platafoma distribuida como ClearCase.
IBM Software Group
Por eso más que nunca !! Tiene importancia el proceso
VERSIONCONTROL
FOO BAR
Release4.0
TRABAJO EN PARALELO
PROCESSCONTROL
SoftwareDevelopment
Process
Report AlertWORKSPACE
MANAGEMENT
IBM Software Group
Por eso ahora más que nunca proceso:
ArtifactsArtifacts
ActivitiesActivities
ActivityActivityActivityActivity
ActivityActivity
IBM Software Group
IBM Rational: Gestión de ConfiguraciónRational ClearCase y Rational ClearQuest
IBM Software Group | Rational software
TRABAJO EN PARALELO : Unica Línea de Desarrollo
PRODUCTO XCOMP. A NUCLEO COMP. B SERVICIOS COMP.C PRESENTACION
V1
V1
V1V2
V2
V2
IBM Software Group | Rational software
TRABAJO EN PARALELO: Diversidad de producto
PRODUCTO X con variantesCOMP. A NUCLEO COMP. B SERVICIOS COMP.C PRESENTACION
V1
V1
V2
V2CLIENTE 1 CLIENTE 2
V1CL1V2CL1
V1CL1
V2CL1
IBM Software Group | Rational software
TRABAJO EN PARALELO: Desarrollo concurrente
PRODUCTO XCOMP. A NUCLEO COMP. B SERVICIOS COMP. C PRESENTACION
V1
V1
V1V2V2
V2
DEV 1 DEV 2 DEV 3
IBM Software Group | Rational software
TRABAJO EN PARALELO: Evolutivo y Mantenimiento
PRODUCTO XCOMP. A NUCLEO COMP. B SERVICIOS COMP.C PRESENTACION
V1
V1
V2
V2
V1
MANT
MANT
V1.fi
x
V2
V1.fi
xV2.fi
x
IBM Software Group | Rational software
TRABAJO EN PARALELO: Cambio de Entornos
PRODUCTO XCOMP. A NUCLEO COMP. B SERVICIOS COMP.C PRESENTACION
PRODPROD PROD
V1 V1V1
V2
V2V2
PREPROD
DESARR
PREPROD
DESARR
PREPROD
DESARR
IBM Software Group | Rational software
TRABAJO EN PARALELO: Cambio de Entornos
PRODUCTO XCOMP. A NUCLEO COMP. B SERVICIOS COMP.C PRESENTACION
PRODPROD PROD
V1 V1V1
V2
V2V2
PREPROD
DESARR
PREPROD
DESARR
PREPROD
DESARR
IBM Software Group | Rational software
TRABAJO EN PARALELO: Comparición de componentes
PRODUCTO XCOMP. A NUCLEO COMP. B SERVICIOS COMP.C PRESENTACION
COMP.D
PRODUCTO Y
COMP.E
PRODUCTO Z
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
Entorno de Desarrollo:
•Facilidades de edición•Debugging•Integración con resto de ciclo de vida.
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
Repositorio:
-Repositorio seguro-Control de versión.-Recuperación de versiones.-Desarrollo en paralelo.-Gestión de espacios de trabajo
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build ConsoleBuild Management :
-Gestión de dependencias.-Generación y expansión de script de build.-Mantenimiento información de independencias.-Automatización de build.
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
Build Console
-Centralización de definición de builds y pasos de despliegues.-Conectividad con entorno de ejecución.-Despliegue sincronizado a plataformas heterogenas.-Mecanismos de rollback.-Gestión de resultados de builds.
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
Workflow de pase entre entornos:
-Control de aprobación.-Petición de pase.-Lanzamiento del pase automático.-Acciones manuales del pase.-Consulta estado de entornos.-Personalización del workflow
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
Plataformas de ejecución.
-Diversidad de Plataforma.-WAS, ZOS, Windows, Unix,Apache, etc.
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Cliente TSOWebSphere for Z
Rational App Dev..NET
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
IBM Software Group
ClearCase z/OS Extensions: TSO Client
IBM Software Group
API Cliente TSO de ClearCase
IBM Software Group
IDE para desarrollos multiplataforma
Soporta :
COBOL, PLI, HLASM
TSO/Batch, CICS, IMS, DB2
DB2 Stored Procedures – COBOL, PLI, Java, SQL
Crea COBOL/CICS/JSF/Java/J2EE Multi-tier apps
Incluye RAD (J2EE)
Genera JSF/J2EE web front ends
COBOL backends en zSeries
Hablita aplicaciones en CICS y IMS para servicios Web y SOA
IDE para desarrollos multiplataforma
Soporta :
COBOL, PLI, HLASM
TSO/Batch, CICS, IMS, DB2
DB2 Stored Procedures – COBOL, PLI, Java, SQL
Crea COBOL/CICS/JSF/Java/J2EE Multi-tier apps
Incluye RAD (J2EE)
Genera JSF/J2EE web front ends
COBOL backends en zSeries
Hablita aplicaciones en CICS y IMS para servicios Web y SOA
WebSphere Developer for System z
IBM Software Group
La demo es una simplificación o máqueta con objetivo mostrar framework necesario para llegar a
tener una solución real.
IBM Software Group
DEMO
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
IBM Software Group
Compilaciones en host
Las compilaciones dependen de tipo de aplicación. Por ejemplo : Cobol Batch, Cobol con precompilador CISC, DB2, etc..
En host las compilaciones pueden ser largas, es importante solamente compilar lo necesario.
Las compilaciones deben hacerse en el host, es necesario un mecanismo de compilación remota.
Un requerimiento clásico es la automatización de la compilación de forma que la herramienta sepa construir el JCL adecuado de compilación.
IBM Software Group
Paquete : Data Driven Approach to CMhttp://www-128.ibm.com/developerworks/rational/library/feb07/onorato/index.html
IBM Software Group
Los metadatos de Clearcase guardarán la información necesaria.
element
REL1
REL2
Rel2_bugfix
CICS=Y
DB2=Y
LANG= COBOL
BUILD=UPTODATE
Banner.cbl@@
/main
Atributo
Etiqueta
Rama
IBM Software Group
DATA DRIVEN APPROACH : http://www-128.ibm.com/developerworks/rational/library/feb07/onorato/index.html
IBM Software Group
EJEMPLO DE FLUJO DE BUILD
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
IBM Software Group
Rational Build Forge
Framework que centraliza la creación de procesos de build y despliegue
Permite la ejecución de la build.
Guarda resultados de compilación.
Gestión integral de compilaciones
Obtención de bill of materials, notificaciones, logs, scheduler.
IBM Software Group
Threading: ejecución en paralelo de pasos dentro del mismo proyecto
Proyecto de Despliegue:
Todos los Steps con Thread =Yes se ejecutan en paralelo El bloque finaliza cuando aparece un Step con Thread = Join
Step 1 Step 2
Acciones Despliegue Mainframe
Acciones Despliegue Distribuido
Join Step Last Step
Thread = Yes
Thread = Yes
Thread = JoinThread = No Thread = No Thread = No
IBM Software Group
Semáforos: ejecución en paralelo de proyectos. Condiciones para coger y liberar semáforos
Proyecto DespliegueComún
EjecuciónProyecto Despliegue
Mainframe
EjecuciónProyecto Despliegue
Distribuido
Espara liberalizaciónsemáforos
SiguientesSteps
.semget MAINFRAME_SEMAPHORE .semput MAINFRAME_SEMAPHORE
.semget DISTRIBUTED_SEMAPHORE .semput DISTRIBUTED_SEMAPHORE
.semget MAINFRAME_SEMAPHORE
.semget DISTRIBUTED_SEMAPHORE
Semáforo: variable global compartida entre proyectos
Coger semáforo: .semget <nombre_semáforo> Liberar semáforo: .semput <nombre_semáforo>
IBM Software Group
Marcha atrás ante un fallo Chaining: encadenación de proyectos ante el fallo de un paso
Chaining: encadenación de proyectos ante el fallo de un paso Fail Chain: proyecto a ejecutar ante un fallo
IBM Software Group
Rational z/OS Extensions: Remote Build
Build request
Return derived objects
Unix, Linux Windows
z/OS or OS/390
IBM Software Group
Remote Build
JCL / RCCBUILD commands//S1ALLOC EXEC PGM=IEFBR14
//TEMP1 DD DSN=DGUPTON.&USR..COPYLIB,DISP=(NEW,CATLG,DELETE),RCCEXT=CPY,
// SPACE=(CYL,(10,5,10)),UNIT=3390,VOL=SER=RTL003,
// DCB=(RECFM=FB,DSORG=PO,LRECL=80,BLKSIZE=23440)
//TEMP2 DD DSN=DGUPTON.&USR..SOURCLIB,DISP=(NEW,CATLG,DELETE),RCCEXT=CBL,
// SPACE=(CYL,(10,5,10)),UNIT=3390,VOL=SER=RTL003,
// DCB=(RECFM=FB,DSORG=PO,LRECL=80,BLKSIZE=23440)
//TEMP3 DD DSN=DGUPTON.&USR..LOADLIB,DISP=(NEW,CATLG,DELETE),
// UNIT=3390,SPACE=(CYL,(15,5,15),RLSE),VOL=SER=RTL003,
// DCB=(DSORG=PO,RECFM=U,BLKSIZE=19069)
//TEMP4 DD DSN=DGUPTON.&USR..LISTLIB,DISP=(NEW,CATLG,DELETE),
// UNIT=3390,SPACE=(CYL,(50,25,25),RLSE),VOL=SER=RTL003,
// DCB=(DSORG=PO,RECFM=FBA,LRECL=133,BLKSIZE=27930)
//TEMP5 DD DSN=DGUPTON.&USR..OBJLIB,DISP=(NEW,CATLG,DELETE),
// UNIT=3390,SPACE=(CYL,(15,5,15),RLSE),VOL=SER=RTL003,
// DCB=(DSORG=PO,RECFM=FB,LRECL=80,BLKSIZE=400)
//TEMP6 DD DSN=DGUPTON.&USR..PIDLIB,DISP=(NEW,CATLG,DELETE),RCCEXT=PID,
// UNIT=3390,SPACE=(CYL,(15,5,15),RLSE),VOL=SER=RTL003,
// DCB=(DSORG=PO,RECFM=FB,LRECL=80,BLKSIZE=400)
rccbuild -h zos.lexma.ibm.com@3669 -b S1ALLOC -ft S1ALLOC.jcl -v USR=$(usr) MBR=$(mbr) -d test1.cpy -i $(mbr).cbl $(mbr).pid -V -V -V
Clearmake –f build1.mak usr=BRANDT mbr=BANNER
IBM Software Group
Ejemplo Proceso de Promoción heterogéneo :
PRE
BASELINE1
Des
PRO
ACT1
ACT2
BASELINE2
Web Server Des
Mainframe DesDES.APX
Web Server PRE
Mainframe PREPRE.APX
Web Server PRO
Mainframe PROPRO.APX
BUILD FORGE VARIABLES:
BASELINE IN PRO : BASELINE 1
BASELINE IN PRE : BASELINE 2
Se desarrollan actividades en el stream de desarrollo via TSO client, RAD, eclipse,
etc ejemplo, ACT 1 y ACT 2
IBM Software Group
Ejemplo Proceso de Promoción heterogéneo :
PRE
BASELINE1
Des
PRO
ACT1
ACT2
BASELINE2
Web Server Des
Mainframe DesDES.APX
Web Server PRE
Mainframe PREPRE.APX
Web Server PRO
Mainframe PROPRO.APX
BUILD FORGE VARIABLES:
BASELINE IN PRO : BASELINE 1
BASELINE IN PRE : BASELINE 2
Cuando esten listas se lanza proyecto BF heterogeneo con pase a integracion a web
y host.
BF
: BU
ILD
INT
IBM Software Group
Ejemplo Proceso de Promoción heterogéneo :
PRE
BASELINE1
Des
PRO
ACT1
ACT2
BASELINE2
Web Server Des
Mainframe DesDES.APX
Web Server PRE
Mainframe PREPRE.APX
Web Server PRO
Mainframe PROPRO.APX
BUILD FORGE VARIABLES:
BASELINE IN PRO : BASELINE 1
BASELINE IN PRE : BASELINE 2
Si compila en integracion
promocionamos a preproduccion
IBM Software Group
Ejemplo Proceso de Promoción heterogéneo :
PRE
BASELINE1
Des
PRO
BASELINE2
Web Server Des
Mainframe DesDES.APX
Web Server PRE
Mainframe PREPRE.APX
Web Server PRO
Mainframe PROPRO.APX
BUILD FORGE VARIABLES:
BASELINE IN PRO : BASELINE 1
BASELINE IN PRE : BASELINE 3
Pasamos a Preproduccion. Se crea Baseline 3 y se actualiza el stream y se
cambia el valor a BASELINE IN PRE
PR
E D
EP
LO
Y
BASELINE3
IBM Software Group
Ejemplo Proceso de Promoción heterogéneo :
PRE
BASELINE1
Des
PRO
BASELINE2
Web Server Des
Mainframe DesDES.APX
Web Server PRE
Mainframe PREPRE.APX
Web Server PRO
Mainframe PROPRO.APX
BUILD FORGE VARIABLES:
BASELINE IN PRO : BASELINE 1
BASELINE IN PRE : BASELINE 3
Se hacen las pruebas en preprod, y se despliega a producción
BASELINE3
IBM Software Group
Ejemplo Proceso de Promoción heterogéneo :
PRE
BASELINE1
Des
PROBASELINE2
Web Server Des
Mainframe DesDES.APX
Web Server PRE
Mainframe PREPRE.APX
Web Server PRO
Mainframe PROPRO.APX
BUILD FORGE VARIABLES:
BASELINE IN PRO : BASELINE 2
BASELINE IN PRE : BASELINE 3
Se pasa a produccion se actualiza el stream y la valiable a
BASELINE 3. BASELINE3
PR
OD
DE
PL
OY
IBM Software Group
DEMO
IBM Software Group
Solución IBM Rational gestión ciclo de vida unificado
Build scripts
Source + =
Source
IDE Desarrollo
Repositorio
Control de PaseDe Entornos
Build Metadata information
System
Plataformas de Ejecución
Build Console
IBM Software Group
Gestión de pase de entornos
Labores automáticas , pero también manuales.
Diversos roles involucrados : Desarrolladores
Jefes de Proyecto
Responsables de base de datos.
Administradores de sistemas en producción.
Es habitual tener un ciclo de aprobaciones para ello.
ClearQuest : Deployment Tracking Package.
IBM Software Group
ClearQuest : Ejemplo de flujo de despliegue
RejectedRejected
Pending to Integration
Pending to Integration
SubmittedSubmitted
Deployedto Integration
Deployedto Integration
PendingTo Preprod
PendingTo Preprod
DeployedTo Preprod
DeployedTo Preprod
Pending to Production
Pending to Production
InProduction
InProduction
INT PREPROD
PROD
Execute BF Project
Pass Integration Tests
Execute BF Project
Pass PreProduction Tests
Execute BF Project
IBM Software Group
Agenda
¿Porqué este seminario?
Estrategia Rational para el Z/OS
Gestión de configuración con Rational para plataformas heterogéneas.
Gestión de Assets sobre ClearCase
Servicios de implantación de la Solución.