Sviluppo moderno di applicazioni mainframe

White paper
ChangeMan ZMF
WebSphere
Sviluppo moderno di applicazioni
mainframe
Come accelerare il cambiamento aziendale
minimizzando costi e rischi
Sommario
pagina
Panoramica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Applicazioni mainframe moderne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Come superare le sfide poste da processi, personale e tecnologie. . . . . . . . . . . . . 3
Un alleato nella modernizzazione dello sviluppo delle
applicazioni mainframe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Un’opportunità straordinaria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Oggi, modernizzare le
applicazioni mainframe
riporta diversi workload e
funzioni delle applicazioni al
mainframe.
Panoramica
Soffia vento di cambiamento per ciò che concerne le applicazioni nei vostri data center e
ambienti mainframe.
Sempre più persone oggi desiderano poter accedere in modo istantaneo ai propri dati
sul Web tramite i loro dispositivi preferiti. L’architettura delle applicazioni mainframe in
continua evoluzione è pronta a soddisfare queste esigenze.
I mainframe odierni sono in grado di eseguire workload Java, di ospitare servizi Web,
di utilizzare la virtualizzazione per eseguire più istanze di una stessa applicazione e di
operare nel cloud. I cicli di mainframe, o MIPS (Million Instructions Per Second), hanno
costi sempre più ridotti. Innovazioni come i processori specializzati zIIP e zAAP riducono
ulteriormente i costi di elaborazione, consentendo agli sviluppatori di spostare il carico dei
processi relativi alle applicazioni dalla CPU generale.
Innovazioni come queste creano un ricco ventaglio di possibilità per gli sviluppatori di
applicazioni di tutti i tipi, che operano su mainframe tradizionali o che lavorano con
linguaggi più moderni.
Le aziende hanno l’opportunità di creare nuove applicazioni in grado di combinare
la stabilità, l’affidabilità, la velocità e la potenza di elaborazione del mainframe con la
flessibilità delle interfacce tipiche dell’era del Web.
La gestione SCCM (Software Configuration and Change Management) per mainframe può
garantire la creazione di applicazioni di alta qualità e che rispondono alle esigenze, nonché
agevolare il percorso verso la produzione.
Applicazioni mainframe moderne
Modernizzare le applicazioni mainframe una volta significava spostare le applicazioni
dal mainframe. Oggi, modernizzare le applicazioni mainframe riporta diversi workload e
funzioni delle applicazioni al mainframe.
IBM si è occupata della parte più gravosa del lavoro grazie all’evoluzione continua
dell’architettura delle applicazioni mainframe per soddisfare i requisiti aziendali, come il
commercio elettronico. Le architetture monolitiche tradizionali delle applicazioni mainframe
stanno diventando più flessibili, più veloci e più reattive ai cambiamenti aziendali.
www.microfocus.com
1
White paper
Sviluppo moderno di applicazioni mainframe
Se, da un lato, il mainframe moderno continua ad eseguire workload esistenti (online
e batch, COBOL e PL/I), dall’altro esegue anche workload moderni come il commercio
elettronico, Java e servizi Web, il che lo rende incredibilmente versatile. Infine, il mainframe
funge anche da enorme server per le applicazioni aziendali.
Queste sono tutte buone notizie, poiché consentono alle aziende di creare nuove applicazioni
per migliorare i servizi offerti ai clienti o per rendere l’azienda più efficiente di quanto non lo
sia già.
Ad esempio, un cliente importante di Serena (ora Micro Focus) fonda la sua intera azienda
su applicazioni in grado di combinare front-end Java basati su browser con back end
DB2 basati su mainframe. Il mainframe consente di gestire il commercio elettronico e
l’elaborazione degli ordini del cliente, nonché il flusso delle applicazioni interne. Scritte
in Java, le applicazioni utilizzano un modello di distribuzione continuo anziché il rigido
modello di rilascio utilizzato in molte aziende di grandi dimensioni.
Naturalmente, i mainframe continuano a eseguire applicazioni esistenti scritte negli
anni settanta e ottanta, nonché a elaborare workload di batch critici per l’azienda, come
le transazioni con carte di credito. COBOL è tuttora il linguaggio di programmazione
prevalente. Gli sviluppatori continuano a scrivere programmi in COBOL, a creare sistemi
online in CICS (Customer Information Control System) e a utilizzare database DB2, ma oggi
tali database di mainframe e sottosistemi (IMS, CICS e DB2) sono in grado di eseguire con
semplicità codice XML e servizi Web.
Pertanto, il confine tra ambienti mainframe e ambienti di sviluppo distribuiti continua ad
assottigliarsi, grazie alla disponibilità di file system HFS (HTTP File Server), di Linux e di
altri moderni protocolli e tecnologie sul mainframe.
Da questa situazione derivano grandi vantaggi. Ad esempio, ora è possibile spostare il carico
dallo sviluppo di codice mainframe ad ambienti di sviluppo integrati (IDE) o ad ambienti
basati su Windows, eliminando i costi derivanti da uno spazio di indirizzamento TSO (Time
Sharing Option) dedicato e offrendo agli sviluppatori mainframe l’accesso a programmi di
debug, plug-in e ad altri strumenti non disponibili nell’ambiente di programmazione 3270.
2
Un cliente importante di
Serena (ora Micro Focus)
fonda la sua intera azienda
su applicazioni in grado di
combinare front-end Java
basati su browser con
back end DB2 basati su
mainframe.
Gli sviluppatori Java
desiderano sviluppare
applicazioni da eseguire sul
mainframe, ma preferiscono
lavorare nei loro ambienti
di sviluppo preferiti, come
Eclipse, e concentrarsi su
comuni dispositivi come
telefoni cellulari e iPad.
Ma ci sono anche grandi rischi, in particolare l’ambiente di sviluppo molto più complesso e
la necessità di sviluppare applicazioni complesse in costante evoluzione per rispondere alle
esigenze dell’attività. Secondo Gartner, le richieste di modifica documentate (RFC) possono
arrivare a quota 300 in un mese per le piccole aziende e a più di 5.000 a settimana per le
aziende Global Fortune 500. Durante la fase importante (la produzione), tutto il codice,
dal mainframe agli endpoint, deve integrarsi perfettamente e garantire un funzionamento
coerente in ogni fase del processo.
Come superare le sfide poste da processi,
personale e tecnologie
Per i manager responsabili dello sviluppo di applicazioni mainframe, la sfida è gestire le
applicazioni miste di nuova generazione in modo da favorire il cambiamento senza ulteriori
rischi o costi. Le sfide si evidenziano in tre aree principali: processi, personale e tecnologie.
Processi: la gestione del ciclo di vita delle applicazioni è diventata molto più difficile. Lo sviluppo
di applicazioni ora prevede molte più componenti dinamiche, tecnologie diverse, persone con
varie competenze e culture di programmazione, nonché dipendenze critiche che comprendono
ambienti mainframe e distribuiti. Coordinare le modifiche da apportare alle applicazioni su
diversi team isolati è più difficile. La distribuzione di codice in produzione è intrinsecamente
più rischiosa e tenere sotto controllo le modifiche impreviste all’interno dell’azienda richiede
moltissime competenze, nonché una vigilanza costante.
Personale: le preziose conoscenze pratiche sul mainframe si disperdono man mano che gli
sviluppatori di mainframe vanno in pensione. Gli sviluppatori Java sono disposti a lavorare in
ambiente mainframe, ma non hanno né il tempo né l’inclinazione di impararne il funzionamento.
Preferiscono lavorare nei loro ambienti di sviluppo preferiti, come Eclipse, e concentrarsi
su comuni dispositivi come telefoni cellulari e iPad. Entrambe le forze in campo (gli adepti
dell’ambiente mainframe e degli ambienti distribuiti) hanno le proprie pratiche e sono poco inclini
ai cambiamenti. Migrazioni del mainframe o eventi aziendali come le espansioni e le acquisizioni
possono (anche da un giorno all’altro) lasciare i team IT all’oscuro in merito alle applicazioni o
persino su dove individuare il codice sorgente.
Tecnologie: i tradizionali strumenti SCCM (Software Configuration and Change Management)
per mainframe sono generalmente integrati direttamente nel vecchio mainframe e non si
adattano facilmente allo sviluppo di applicazioni mainframe moderne (incluse metodologie
di sviluppo concorrenti come Agile o Scrum, che iniziano ad essere utilizzate per lo sviluppo
di applicazioni mainframe) o alle nuove applicazioni miste e ai relativi protocolli. Adattare tali
strumenti tradizionali richiede troppo lavoro manuale, originando vulnerabilità pericolose, e può
portare i team di sviluppo a impiegare troppe risorse in termini di tempo e budget per lo sviluppo
di applicazioni miste. Tutto ciò potrebbe determinare più errori nelle applicazioni e interruzioni di
servizio, richiedendo rollback e controlli ancora più dispendiosi in termini di tempo e di lavoro.
www.microfocus.com
3
White paper
Sviluppo moderno di applicazioni mainframe
Per fortuna, i processi SCCM per mainframe, se correttamente automatizzati, sono in grado
di rispondere con successo alla maggior parte di queste sfide. Un’altra fortuna è che alcune
tecnologie di automazione SCCM per mainframe abbiano continuato a evolversi insieme al
mainframe. Questa tecnologia moderna, i processi da essa automatizzati e le best practice
applicate possono aiutarvi nelle operazioni di modernizzazione delle applicazioni.
Un alleato nella modernizzazione dello sviluppo
delle applicazioni mainframe
La gestione SCCM moderna per mainframe può essere un valido alleato nello sviluppo di
applicazioni mainframe moderne. Se automatizzata in modo intelligente e completo, la
gestione SCCM per mainframe è in grado di controllare automaticamente ogni modifica al
codice delle applicazioni nel nuovo ambiente di sviluppo mainframe, riducendo i rischi e
garantendo l’integrità dei sistemi di produzione. È in grado di estendere la precisione e la
stabilità del mainframe allo sviluppo di applicazioni miste, aiutando le organizzazioni che si
occupano di sviluppo a sfruttare tale opportunità.
Una moderna gestione SCCM per mainframe è in grado di unificare i due campi di
sviluppatori, quelli mainframe e in ambienti distribuiti, aiutandoli a collaborare senza
cambiare il modo in cui lavorano di solito e garantendo loro risultati più produttivi
e prevedibili. Intanto, il sistema si occupa di monitorare e garantire l’integrità delle
applicazioni, la possibilità di revisione e la qualità e può replicare le consegne impeccabili
degli ambienti di programmazione mainframe tradizionali.
Tutto questo si ottiene automatizzando in maniera intelligente la gestione della
configurazione software e le modifiche del software durante l’intero ciclo di vita delle
applicazioni: dallo sviluppo alla gestione dei rilasci. Un moderno sistema SCCM per
mainframe:
Individua e codifica le conoscenze pratiche sui mainframe, in modo da far rispettare in modo
discreto le regole a tutti gli sviluppatori che lavorano con codice o applicazioni mainframe.
A
pplica automaticamente le best practice della gestione SCCM per mainframe in tutta
l’organizzazione di sviluppo. Ad esempio, è possibile sviluppare una policy che impedisca di
apportare un certo tipo di modifica al codice o una policy che invii la notifica automatica al
project leader in presenza di un determinato tipo di modifica.
4
La moderna gestione SCCM
(Software Configuration
and Change Management)
per mainframe è in
grado di estendere la
precisione e la stabilità del
mainframe allo sviluppo di
applicazioni miste, aiutando
le organizzazioni che si
occupano di sviluppo a
sfruttare tale opportunità.
Una moderna gestione
SCCM per mainframe
offre il meglio di entrambi
gli approcci allo sviluppo
di applicazioni mainframe:
la precisione e la stabilità
leggendarie del mainframe
e la flessibilità di Java
e degli altri linguaggi di
programmazione moderni.
D
isciplina gli sviluppatori esterni alla piattaforma che sviluppano per il mainframe, inclusi gli
sviluppatori Java e C++, riducendo le possibilità di errori a monte nel ciclo di sviluppo.
C
rea e centralizza le informazioni di gestione, in modo da poterle utilizzare per migliorare
la possibilità di revisione delle applicazioni, la qualità dei processi e la produttività degli
sviluppatori per l’intero ciclo di vita delle applicazioni. Ad esempio, un moderno sistema SCCM
per mainframe registra automaticamente tutte le operazioni eseguite in un log, onde evitare
sorprese. I rollback e le revisioni diventano più semplici, anche al crescere della complessità
delle applicazioni.
Una moderna gestione SCCM per mainframe utilizza standard IBM nativi, standard più
recenti come i servizi Web Java e XML, framework e API aperte per creare ambienti di
sviluppo aperti e flessibili.
Una moderna gestione SCCM per mainframe include il supporto nativo completo di Java,
HFS, XML e le altre tecnologie dell’architettura di applicazioni per mainframe IBM. Questo
vuol dire che ciò che era possibile con COBOL e PL/1 negli ambienti di programmazione
3270 è ora possibile anche con Java su Eclipse, e ciò che era possibile eseguire con Java su
Eclipse è ora possibile sul mainframe. Gli sviluppatori esterni che lavorano in Java possono
scrivere per il mainframe senza conoscerne i dettagli sapendo che il codice risultante
funzionerà semplicemente perché il sistema verifica continuamente le connessioni in
maniera automatica (senza intervento umano), tiene traccia delle modifiche e convalida
l’integrità del codice.
Un moderno sistema SCCM include la gestione integrata dei rilasci ed estende la disciplina
e la scalabilità ai processi di gestione dei rilasci, sia che gli sviluppatori distribuiscano
direttamente il codice in produzione o che lo facciano tramite un team di gestione dei rilasci
delle applicazioni.
Tramite processi come quelli appena descritti, una moderna gestione SCCM per mainframe
offre il meglio di entrambi gli approcci allo sviluppo di applicazioni mainframe: la precisione
e la stabilità leggendarie del mainframe e la flessibilità di Java e degli altri linguaggi di
programmazione moderni.
Ad esempio, il cliente menzionato in precedenza in questo white paper utilizza la gestione
SCCM moderna per mainframe per poter utilizzare i modelli di distribuzione continua per
le sue applicazioni miste (front-end Java e back end DB2). Il cliente utilizza Micro Focus®
ChangeMan ZMF e WebSphere per gestire la distribuzione continua di file JAR (Java
Archive) e WAR (Web Application Archive) in grado di supportare le sue applicazioni.
www.microfocus.com
5
White paper
Sviluppo moderno di applicazioni mainframe
È possibile semplificare e rafforzare ulteriormente lo sviluppo di applicazioni moderne
per mainframe traendo vantaggio da concetti avanzati come il packaging del software.
Il concetto di pacchetto, lanciato da Serena Software (ora Micro Focus), effettua
automaticamente la manutenzione concomitante delle modifiche software per tutto il ciclo
di vita delle applicazioni, gestendo tutto come un unico pacchetto anziché in singoli pezzi.
Quando vengono apportate modifiche, la tecnologia dei pacchetti aggiorna automaticamente
le relazioni tra i componenti. I processi di sviluppo sono più facilmente scalabili, anche in
caso di applicazioni più complesse e distribuite su varie piattaforme e dispositivi.
L’automazione intelligente (che fa uso di best practice integrate) è in grado di automatizzare
i meccanismi alla base delle attività di comunicazione, gestione della configurazione,
gestione dei rilasci, controllo e di altro tipo. Automatizzando i meccanismi alla base di
tali attività, gli sviluppatori potranno concentrarsi su ciò che sanno fare meglio: scrivere
codice di qualità. È possibile individuare automaticamente gli errori e spesso correggerli
senza alcun intervento umano. In questo modo, sarà possibile portare più rapidamente in
produzione nuove applicazioni o miglioramenti alle applicazioni (anche quelle complesse e
miste), a costi inferiori e con meno rischi.
Le API aperte consentono di adottare un approccio alla gestione dello sviluppo di
applicazioni che sia maggiormente incentrato sull’azienda.
Ad esempio, un’azienda ha integrato il proprio sistema SCCM per mainframe con il
sistema di gestione del tempo esistente. Il sistema consente di automatizzare gli addebiti
alle business unit per lavori eseguiti su varie risorse di sviluppo, senza che gli sviluppatori
debbano compilare i moduli orari.
Un’altra azienda, un’importante banca internazionale, ha sviluppato una suite per la
generazione di rapporti che consente ai senior manager di controllare l’avanzamento delle
approvazioni di ogni singolo sviluppatore.
Anche un’altra grande azienda che fornisce servizi di gestione degli stipendi a migliaia di
clienti utilizza una moderna gestione SCCM per mainframe per mantenere sincronizzate
le modifiche tra più istanze della sua applicazione, che vengono poi utilizzate per assistere
diversi clienti. Quando i componenti fondamentali subiscono importanti modifiche, il
sistema invia automaticamente una notifica ai clienti e agli stakeholder principali tramite
e-mail.
Cosa più importante, la moderna gestione SCCM contribuisce a creare una disciplina e dei
processi scalabili che si adattano alle esigenze dell’azienda, man mano che questa cresce
e si evolve e rende lo sviluppo di applicazioni mainframe moderne molto più prevedibile,
scalabile, tracciabile e controllabile.
6
La moderna gestione SCCM
contribuisce a creare una
disciplina e dei processi
scalabili che si adattano
alle esigenze dell’azienda,
man mano che questa
cresce e si evolve e rende
lo sviluppo di applicazioni
mainframe moderne molto
più prevedibile, scalabile,
tracciabile e controllabile.
È possibile trarre vantaggio
da tempistiche e nuove
tecnologie uniche per
esaminare i processi
attuali, eseguire upgrade o
eliminare quelli obsoleti e
distribuirne di nuovi e più
efficaci.
Un’opportunità straordinaria
Chi si occupa dello sviluppo di applicazioni mainframe ha la straordinaria opportunità di
portare più applicazioni sotto il controllo del mainframe e della sua celebre precisione.
È possibile utilizzare la moderna gestione SCCM per mainframe per migliorare le
metodologie di gestione, modifica e distribuzione delle applicazioni aziendali per tutto
il loro ciclo di vita.
È possibile trarre vantaggio da tempistiche e nuove tecnologie uniche per esaminare i
processi attuali, eseguire upgrade o eliminare quelli obsoleti e distribuirne di nuovi e più
efficaci. Non c’è momento migliore di questo per farlo.
www.microfocus.com
7
Micro Focus
Italia
+39 02 366 349 00
Micro Focus
Sede centrale
Regno Unito
+44 (0) 1635 565200
www.microfocus.com
www.microfocus.com
162-IT0080-001 | S | 04/17 | © 2017 Micro Focus. Tutti i diritti riservati. Micro Focus e il logo Micro Focus, tra gli altri, sono marchi di fabbrica o marchi registrati di
Micro Focus o delle sue controllate o consociate nel Regno Unito, negli Stati Uniti e in altri Paesi. Tutti gli altri marchi appartengono ai rispettivi proprietari.