Migrare applicazioni da Lotus Notes

Digital Transformation

migrare applicazioni

Molte aziende stanno sostituendo la piattaforma Lotus Domino con soluzioni alternative. Ma mentre trovare una soluzione di mercato per server di posta e strumenti collaborativi è relativamente facile (pensiamo a Google Apps for Business o Microsoft Office 365), migrare la pletora di applicazioni Lotus Notes realizzate negli anni all’interno di Domino rappresenta la vera sfida per una organizzazione.

L’abbandono di Lotus Notes

IBM Lotus Domino è un prodotto nato alla fine degli anni 80 che fornisce strumenti enterprise per email, strumenti collaborativi e una piattaforma applicativa. Può essere utilizzato come Mail server o Application Server per l’esecuzione di applicazioni Lotus Notes basate su database in formato NSF.
Nel corso degli ultimi decenni molte aziende che hanno adottato questa piattaforma, hanno sviluppato decine o centinaia di applicazioni Lotus Notes basate sul suo database documentale.
Dal punto di vista dello sviluppo applicativo, Lotus Domino si è evoluto nel corso degli anni, cercando di adattarsi alle tecnologie e mode del momento, inclusa la possibilità di avere una interfaccia web oriented e la capacità di gestire enormi volumi di dati. Una delle peculiarità di Domino è di essere una soluzione distribuita, in grado cioè di far interagire e raccogliere dati da più database distribuiti.
Non è quindi in discussione la capacità di Domino di fornire un front-end web o di garantire un’elevata scalabilità o di offrire una interfaccia utente sufficientemente flessibile.
Tuttavia, il mercato enterprise già da tempo si è orientato verso altre direzioni: una architettura basata su database distribuiti come quella di Domino non rappresenta il più delle volte una necessità per una organizzazione; inoltre, per quanto riguarda il mondo web, i web server Apache e Microsoft IIS si sono di fatto spartiti la totalità del mercato, con dietro altre piattaforme di sviluppo, come quelle di Java, Microsoft, PHP, etc. Queste piattaforme rendono anche più fine il controllo che uno sviluppatore può avere sul contenuto della pagina web, ad esempio attraverso l’introduzione di tecnologie di ultima generazione, come Ajax o altri meccanismi come iFrame e javascript dinamico.
A questo va aggiunto il fatto che la maggior parte delle applicazioni web moderne ha adottato database relazionali, piuttosto che database documentali come quello di Lotus Notes. Uno dei vantaggi del modello relazionale è la possibilità di sviluppare complesse logiche di interrogazione che includono l’aggregazione di dati provenienti da molte tabelle, grazie all’espressività del linguaggio SQL e quindi di sviluppare applicazioni estremamente complesse.
Oggigiorno un’organizzazione ha inoltre bisogno di soluzioni multi-channel: non solo web, ma anche mobile, ragione di più per orientarsi verso soluzioni più aperte a diversi tipi di media e device.
Infine, i costi di licenza legati alla piattaforma Lotus Domino non si possono certo considerare contenuti, sopratutto se paragonati a quelli di piattaforme e soluzioni alternative free o low cost, come possono essere la combinazione del s.o. Linux, Apache Web Server, Apache Tomcat e la piattaforma Java/JEE.

E-mail e Collaboration: le alternative di mercato a Lotus Notes

In precedenza ho elencato le principali ragioni per cui molte aziende stanno sostituendo la piattaforma Lotus Domino con soluzioni alternative. Ciò significa dover trovare dei componenti alternativi su diversi fronti: server di posta, strumenti collaborativi, applicazioni web custom.
Per i primi due sistemi, è facile trovare una soluzione nel mercato, ad esempio basata su soluzioni Google Apps for Business o Microsoft Office 365, giusto per menzionare le due più popolari.

Che fare delle applicazioni su Lotus Notes?

Migrare la pletora di applicazioni Lotus Notes realizzate negli anni all’interno di Domino rappresenta la vera sfida del momento per una organizzazione, perché  ha dei costi legati alla necessità di svilupparle da capo con un’altra piattaforma.
Andando ad analizzare più in dettaglio che cosa significa migrare applicazioni Lotus Notes, indipendentemente dalla scelta tecnologica fatta, si possono identificare questi passi fondamentali:

  • estrazione delle strutture dati dei database documentali NSF;
  • estrazione dei dati contenuti in queste strutture, comprese informazioni legate all’accesso in lettura e scrittura dei singoli documenti, legati agli utenti e gruppi censiti nel server Domino;
  • estrazione di files, intesi come attachments e documenti RTF e file embedded, sempre contenuti nei documenti;
  • riprogettazione della base dati finale, attività che diventa libera dai vincoli imposti da Domino e che può sfruttare il modello relazionale ed eventali altre sorgenti di dati già presenti nella propria organizzazione ed ora più facilmente integrabili, come LDAP, altri sistemi informativi/database;
  • trasformazione dei dati/files estratti ai punti precedenti e caricamento sul nuovo modello di database, presumibilmente tramite uno strumento di Data Integration;
  • risviluppo delle applicazioni, basate sul nuovo modello dati e sulla piattaforma di sviluppo scelta.

lotus notes

Osservando i passi descritti sopra, è evidente che alcune attività sono relativamente facili da approcciare tramite metodologie di sviluppo normalmente presenti in ogni software house o dipartimento IT, come l’adozione di uno strumento di data integration, l’uso di database relazionali ed attività di analisi e progettazione.

Restano esclusi due step che richiedono una più attenta valutazione:

  • l’estrazione dei metadati, dati e files da Domino, preferibilmente tramite un tool automatico di estrazione in grado di minimizzare i costi legati alla migrazione della base dati;
  • la scelta della corretta piattaforma di sviluppo su cui basare la riscrittura delle applicazioni.

Quest’ultima è la più critica, perché la più costosa, considerando la numerosità delle applicazioni da riscrivere.

Piattaforme per la migrazione delle applicazioni Lotus Notes

Una piattaforma utilizzabile per completare la migrazione è 4WS.Platform.
Questa soluzione fornisce sia uno strumento integrato per l’estrazione metadati/dati/files da Domino, sia una piattaforma per lo sviluppo rapido di applicazioni web e/o mobile. Può essere inoltre integrata con server di posta elettronica, con strumenti di collaboration (Google), con il sistema ECM Alfresco nel caso si voglia gestire la parte documentale su un sistema CMS (Content Management System), con LDAP nel caso di gestione centralizzata degli utenti e/o ruoli e con il BPM Activity se vi è la necessità di disegnare processi di business da eseguire per la gestione di workflow aziendali.

lotus-notes2
La piattaforma web Platform, basata su Java e Javascript, fa uso di strumenti open source (Alfresco, Activiti, Jasper Report, Sencha ExtJS, etc.), riducendo in questo modo i costi legati all’adozione di una piattaforma alternativa a Domino, che è uno dei punti dolenti della soluzione IBM.
La parte core di Platform è quella che consente di costruire rapidamente nuove applicazioni: ciò avviene attraverso strumenti di reverse engineering di tabelle su database relazionali o da tipi di documenti definiti sul CMS Alfresco. A partire dalla rappresentazione di oggetti e relazioni così ottenute, è poi possibile costruire sopra uno strato di business logic, la user interface e gli eventi, attraverso una serie di wizard in grado di ridurrre fortemente i costi di sviluppo.
Uno dei plus di Platform è la flessibilità del suo modello di programmazione: gran parte dell’applicazione può essere costruita visualmente; tuttavia è sempre possibile includere nell’applicazione degli script java o javascript per realizzare specifiche parti con un approccio di programmazione tradizionale: questa caratteristica di Platform garantisce la possibilità di estendere quanto creato tramite strumenti grafici, senza quindi avere limiti nella capacità della piattaforma di realizzare anche funzionalità complesse.
Il risultato della configurazione grafica è la produzione di metadati che rappresentano e descrivono ogni parte dell’applicazione. Questi metadati possono poi essere interpretati su diversi device:

  • tramite un interprete web embedded sul server Platform, in grado di produrre l’applicazione web, accessibile su qualunque tipo di browser di ultima generazione;
  • tramite un interprete mobile per Apple iOS, di fatto una app mobile nativa, installabile su device iPad o iPhone;
  • tramite un interprete mobile per Android, cioè una app mobile nativa, installabile su device Android tablet o smartphone.

In conclusione, qualora un’azienda abbia la necessità di migrare le proprie applicazioni Lotus Notes e voglia minimizzare i costi legati alla reingegnerizzazione di queste applicazioni,4WS.Platform può rappresentare una valida soluzione, in grado di costruire rapidamente e con costi contenuti applicazioni web o mobile, utilizzando soluzioni tecnologiche moderne epotenzialmente eseguibili anche in un contesto cloud.
Se sei interessato ad un approfondimento contattaci.

Migrare applicazioni da Lotus Notes ultima modifica: 2015-09-23T16:41:12+02:00 da Mauro Carniel

Parla gratuitamente con un nostro esperto

Contattaci e racconta il tuo Progetto a un nostro esperto di Trasformazione Digitale per analizzare assieme le tue esigenze, scoprire nuove opportunità e richiedere un preventivo.

Articoli Consigliati

Sinesy Innovision