Progettare l'architettura dati più adatta a rappresentare un un lavoro di una squadra di più persone è sempre una sfida. La struttura deve rispecchiare sia fatti organizzativi, la squadra, che necessità tecniche dettate dai dati e dalle loro esigenze di protezione e integrazione.
Il Cloud ha messo sul tavolo il grande strumento della condivisione e dello sviluppo cooperativo, ma la struttura complessiva dei dati è spesso ancora quella che riflette il classico approccio top-down dell'ingegneria del software: una "cartellona", il progetto, magari di proprietà del Project Manager o di un account specifico, che contiene altre cartelle - una classica struttura ad albero - secondo la "decomposizione funzionale" determinata dall'analisi ad alto livello. Fondamentale per ricondurre il "problemone", l'obiettivo finale del progetto ai problemi più semplici, gli obiettivi intermedi, che lo compongono. Questa struttura deve però incrociarsi con quella dell'organizzazione del team, che non è detto coincida con la struttura di progetto. A questo punto le "tensioni" sono normalmente risolte dagli schemi di autorizzazione all'accesso delle varie cartelle.
Il risultato è una struttura rigida, più simile a una curia papalina del '600 che a un'approccio agile dell'ingegneria del sofware.
L'esistenza di un prodotto come Google Sites strettamente integrato con il cloud (Google Drive) permette un approccio più flessibile grazie alla possibilità di adottare una struttura a rete al posto di quella ad albero. Ogni membro del gruppo può liberamente organizzare il lavoro all'interno del proprio account, perché il collante tra i vari contribuiti non è una super cartella matrioska che contiene tutte le altre, ma un'interfaccia. Un'interfaccia HTML che le riferisce invece di includerle. Inoltre, può riferire, a corredo del progetto, contenuti esterni.
Questa è la via che abbiamo seguito in questo progetto, e il risultato è il sito web che state leggendo. In questo, ogni pagina corrisponde a una cartella di progetto (condivisa in visualizzazione pubblica), che viene automaticamente aggiornata quando la cartella che riferisce viene aggiornata dal suo proprietario.
La reportistica di progetto e la comunicazione sono sempre state due sfide spesso affrontate a parte da personale specializzato. Ora è tutto più facile e molto più integrato. Un nuovo strumento basato sull'Intelligenza Artificiale, NotebookLM, rende tutto più semplice e immediato, a patto di caricare nella sua base di conoscenza i contenuti di progetto. A partire da questa possono essere derivati, personalizzandoli in modo immediato, altri contenuti come rapporti, presentazioni, sintesi vocali e visive, mappe concettuali, guide alla navigazione e all'apprendimento e molto altro ancora, che ovviamente possono rientrare tra i risultati del progetto stesso. Inoltre, la stessa base di conoscenza può essere liberamente arricchita di contribuiti esterni quali siti web o altri documenti provenienti dalla rete o dal computer dell'utente. Ancora, lo stesso progetto può essere interrogato come se fosse una persona attraverso una chat.
Quello che richiede un minimo di attenzione e buon senso gestionale, è la mancanza di allineamento automatico tra contenuti della base di conoscenza e del cloud. Limite che, insieme a quello della gestione difettosa degli spreadsheet, magari vedremo superato in una prossima edizione di questo bel prodotto.
"Il progetto finisce quando viene raggiunta la pace interna delle strutture dati" (J.P. Lomas, F. Marra, Cupertino 1980 circa)
"Il Buddha, il Divino, dimora nel circuito di un calcolatore o negli ingranaggi del cambio di una moto con lo stesso agio che in cima a una montagna o nei petali di un fiore" (Robert M. Pirsig: "Lo Zen è l'arte della manutenzione della motocicletta", Adelphi 1988)