Estate tempo di sandbox: proviamo il CICS Explorer


Non è molto conosciuta la possibilità di provare una serie di funzionalità dei prodotti di Application Modernization della piattaforma z. Questo è possibile tramite l’Enterprise Modernization Sandbox for System z disponibile nel sito IBM developerWorks in questa pagina.

In pratica, da una infrastruttura Cloud,  si ha a disposizione un ambiente z con i prodotti preinstallati con cui è possibile effettuare delle prove. L’ultimo arrivato è lo scenario dal titolo Manage the CICS ecosystem with CICS Explorer; dopo aver predisposto il vostro PC con le istruzioni riportate nella pagina iniziale, è possibile utilizzare il CICS Interdependency Analyzer per analizzare le risorse utilizzate dalle trnsazioni, valutare gli impatti di change applicativi e verificare se le transazioni sono threadsafe.

Sempre sul tema della modernizzazione dello sviluppo applicativo il 19 Luglio alle 3:00 p.m. UTC (quindi 4:00 p.m. in Italia), Hayden Lindsey, Vice President and Distinguished Engineer appartenente all’IBM Software Group, terrà un webcast dal titolo Building Next-Generation Enterprise Applications Webcast Series. Hayden presenterà un nuovo approccio di tipo smarter computing per accelerare l’innovazione e ridurre i costi di sviluppo. Verrà anche affrontato il tema di come, questo approccio, faciliti le fasi di test e migliora la collaborazione tra i team di sviluppo.

Image: FreeDigitalPhotos.net

Annunci

Il Cobol in tempo di crisi: La battaglia della “Finestra del Batch”


Prendo spunto da una discussione comparsa sul gruppo:

“Mainframe  (COBOL, JCL, DB2, CICS, VSAM, MVS, Adabas/Natural ) Experts”

Con una certa dose di ingenuita’, viene chiesto aiuto: “ Come fare per ridurre il consumo di CPU di programmi Cobol esistenti”.  La risposta, come sempre in questi casi, e’ partecipe e generosa di consigli. Si spazia dal modificare il formato dei dati, al blocksize dei file. Alcuni azzardano la soluzione draconiana della riscrittura in Assembler e la sostituzione del  DB2 con file Vsam.

Ma molto piu’ spesso, la soluzione principe viene riconosciuta nell’architettura del programma, scritto in modo da ridurre, in fase di esecuzione, il numero di operazioni ricorsive.

Penso di fare cosa utile “rubando” alcuni spunti della discussione e riportarli in allegato. Ma volevo accendere una discussione analoga in questo spazio coinvolgendo tutti coloro che hanno combattuto o sono ancora impegnati nella battaglia della “Finestra del batch”.

Allegati:

Link della discussione:     http://www.linkedin.com/groupAnswers?viewQuestionAndAnswers=&discussionID=121615488&gid=910927&commentID=84712832&trk=view_disc&ut=2TMhVqkKT8NRg1

L’alfabeto:

 I would strongly recommend that she start with the basics.


A) Learn COBOL structured programming methodology.

B) Learn COBOL testing and debugging techniques.
C) Learn CICS capabilities, structure, components, services, and interfaces.
D) Learn COBOL CICS Command Level Programming.
E) Learn COBOL CICS testing and debugging techniques.
F) Learn DFSMS QSAM and VSAM AMS and utilities.
H) Learn how to monitor performance of COBOL batch processing.
I) Learn how to tune performance of COBOL batch processing.
J) Learn how to tune performance of QSAM & VSAM data set AMS for access modes.
K) Learn how to monitor performance of COBOL CICS Command Level tasks and progs
L) Learn how to tune performance of COBOL CICS transactions, programs, & services.
M) Learn relational DB capabilities, structure, components, services, interfaces & utilities.
N) Learn SQL for relational database DDL and DML.
O) Learn how to monitor performance of SQL Queries and DML requests.
P) Learn how to tune performance of relational database organization.
Q) Learn how to tune performance of SQL Queries and DML requests.
R) Learn IMS capabilities, structure, components, services, interfaces, & utilities.
S) Learn IMS schema & VSAM and OSAM data set definitions and relationships.
T) Learn IMS HDAM, HIDAM, SHISAM, HSAM, & HISAM access methods.
U) Learn IMS DEDB’s, MSDB’s, and HALDB’s differences.
V) Learn IMS DLI program communication blocks (PCBs)
W) Learn IMS DLI program specification blocks (PSBs) and CBLTDLI
X) Learn IMS EXEC DLI sequential, browse, & random read functions.
Y) Learn IMS EXEC DLI read for update, update/rewrite, add, and delete functions.
Z) Learn IMS Fast Path EXEC DLI commands under DBCTL   

Questo e’ del codice per determinare la durata delle varie routine:

To check the difference between various techniques, this elapsed time calculator with microsecond resolution might come in handy. It executes the (ST)ore (C)loc(K) instruction in Working Storage to get bits 0-63 of the Time-of-Day clock at the start and end times. Elapsed time is then calculated and converted to microseconds for display of up to 999.999999 seconds. (Bit 51 of the TOD clock is equivalent to 1 microsecond.)

WORKING-STORAGE SECTION.
01 FILLER.
___05 ADDR-PTR POINTER.
___05 STORE-CLOCK REDEFINES ADDR-PTR FUNCTION-POINTER.
01 START-TIME PIC 9(18) COMP-5.
01 STOP-TIME PIC 9(18) COMP-5.
01 ELAPSED-TIME PIC 9(18) COMP-5.
01 ELAPSED-TIME-MICRSECS PIC 9(15) COMP-3.
01 ELAPSED-TIME-SECONDS REDEFINES ELAPSED-TIME-MICRSECS
___PIC 9(9)V9(6) COMP-3.
01 ELAPSED-TIME-MESSAGE.
___05 FILLER PIC X(17) VALUE ‘ELAPSED TIME WAS ‘.
___05 ELAPSED-TIME-DISPLAY PIC ZZ9.999999.
___05 FILLER PIC X(08) VALUE ‘ SECONDS’.
01 MACHINE-CODE.
___05 L-1-1 PIC X(04) VALUE X’58101000′.
___05 STCK PIC X(04) VALUE X’B2051000′.
___05 SR-15-15 PIC X(02) VALUE X’1BFF’.
___05 BR-14 PIC X(02) VALUE X’07FE’.

PROCEDURE DIVISION.

___SET ADDR-PTR TO ADDRESS OF MACHINE-CODE
___CALL STORE-CLOCK USING START-TIME
*
* …CODE TO BE TIMED GOES HERE…
*
___CALL STORE-CLOCK USING STOP-TIME
___SUBTRACT START-TIME FROM STOP-TIME GIVING ELAPSED-TIME
___DIVIDE ELAPSED-TIME BY 4096 GIVING ELAPSED-TIME-MICRSECS
___MOVE ELAPSED-TIME-SECONDS TO ELAPSED-TIME-DISPLAY

___DISPLAY ELAPSED-TIME-MESSAGE
___GOBACK.

Non ho provato il funzionamento del codice precedente, per cui aggiungo il riferimento al documento:

http://www-304.ibm.com/support/docview.wss?uid=swg21170967

“IBM Enterprise COBOL Version 4 Release 2 Performance Tuning Whitepaper” @

http://www-304.ibm.com/support/docview.wss?uid=swg27018287

“IBM Enterprise COBOL for z/OS Programmer’s Guide” (SC23-8529-01) includes chapters specifically addressing DB2 SQL and DCLGEN, as well as, IMS CBLTDLI interfaces. The Programmer’s Guide may be downloaded as a PDF file for free @

http://publibfp.boulder.ibm.com/epubs/pdf/igy3pg50.pdf