Migrazione != Traduzione Automatica
Ultimamente mi sono trovato ad affrontare (quasi) contemporaneamente due scenari di migrazione completamente differenti verso sistemi SharePoint (da Lotus Notes in un caso, da un archivio poco organizzato di documenti nell'altro) e a raggiungere le stesse identiche considerazioni.
Ricordo, peraltro, con chiarezza e con piacere un paio di interventi effettuati durante la recente SharePoint Conference (mi riferisco alla keynote di Roberto D'Angelo e alla sessione mattutina di Igor), durante i quali sono emersi un paio di punti sui quali vale la pena soffermarsi.
A questi mi riallaccio per qualche considerazione generale sul concetto di migrazione di dati, che trascendono la tecnologia specifica (SharePoint) anche se vi trovano un'esemplificazione estremamente efficace.
Spero di riuscire ad essere organico nel proporre il mio modo di vedere la cosa.
Come di consueto, ecco wikipedia:
Data migration is the process of transferring data between storage types, formats, or computer systems. Data migration is usually performed programmatically to achieve an automated migration, freeing up human resources from tedious tasks. It is required when organizations or individuals change computer systems or upgrade to new systems.
I dati ... i dati, chiaramente, sono essenziali e centrali. Ma non sono l' unico aspetto del sistema che va considerato.
Condizione necessaria è che il dato sia preservato (pena l'impossibilità di utilizzo del sistema nuovo in completa sostituzione del precedente). Ma tale preservazione non è sufficiente, poichè non considera la contestualizzazione del dato stesso (quello che lo rende, in senso più esteso, informazione).
Faccio un esempio un po' forzato, ma credo abbastanza calzante in alcuni suoi punti.
Una frase è costituita da parole. Ognuna di esse ha il suo valore anche a prescindere dalla frase nella quale è inserita. Una frase è, però, compiuta solo se le parole che la formano (= la loro successione ordinata) rispettano le regole sintattiche e le declinazioni che il linguaggio prevede. E se il significato che ne deriva ha un senso e dà luogo, in ultima analisi, ad un discorso logicamente valido.
Avete presente le famigerate traduzioni automatiche ? (Se volete farvi due risate e non avete voglia di inventare una frase da dare in pasto al tool di turno, leggete questo post di Rob).
Sono perfettamente funzionanti sui singoli termini. Sono decisamente carenti sulla frase nel suo insieme.
Se la cosa sembra palese e scontata parlando di traduzioni, proviamo a calarla nel contesto delle migrazioni.
Il tool di migrazione automatica ? Paragonatelo al traduttore di google (o chi per lui).
[Includo, per inciso, nella categoria "tool di migrazione automatica" anche il copia e incolla di una intera struttura di folder da un file share ad una document library SharePoint (esperienza diretta)]
Preserva il dato (in caso contrario, semplicemente, è bacato). Ma perde nella maggior parte dei casi il contesto. Perchè non riesce a desumerlo dal sistema di origine e/o perchè non riesce a riprodurlo nel sistema di destinazione.
Conseguenza ? I dati ci sono. Ma meno usufruibili di prima.
Conseguenza della conseguenza ? La piattaforma nuova viene giudicata scomoda. E occhio, perchè capita che sia il sistema ad essere giudicato scomodo, in luogo della sua implementazione.
Personalmente credo che non sia utile sia dannoso affrontare una migrazione di dati prescindendo dalla loro organizzazione e dalla loro collocazione all'interno del sistema informativo nel suo complesso.
Se tali aspetti mancano, si perdono o semplicemente non vengono considerati, la migrazione perde il 90% della sua complessità. Ma, appunto, di migrazione non si può parlare ! Chiamiamola copia, chiamiamola cut&paste !
Il processo di migrazione, per come lo vedo io, non dovrebbe condizionare di per sè la struttura del sistema di destinazione, portandosi dietro le particolarità e gli idiomi del sistema precedente.
I tool di migrazione vanno benissimo, perchè (cit. dalla definizione di cui sopra) consentono di automatizzare la trasformazione dei formati (fisici e logici). Compito noioso, ripetitivo e facilmente delegabile ad una macchina.
Però credo che il successivo intervento umano, nella progettazione, nelle ristrutturazione e nella risultante implementazione del nuovo sistema, sia assolutamente imprescindibile per un livello anche solo minimo di validità della soluzione finale.
Le migrazioni, secondo me, sono "difficili" per questa ragione, ancor più che per la (ovvia) necessità di superare i limiti tecnici che differenziano i sistemi.