La rappresentazione e il trattamento della conoscenza: metodi e tecniche di aggregazione, decorazione e instrumentazione delle informazioni.
Progetto Nel trattamento della conoscenza gli strumenti atti a catturare la componente tacita dell¿informazione assurgono a sempre maggiore importanza. Ciò è ancor più vero nello sviluppo di pratiche professionali all¿interno di ambienti collaborativi. Le tecniche e gli strumenti attualmente usati in questo contesto sono essenzialmente basati sull'annotazione del codice e delle informazioni o mutuati dall¿insieme di tecniche che costituiscono il cosiddetto ¿Web2.0¿.
L¿obiettivo della ricerca è indagare sulle tecniche di gestione ed elaborazione delle informazioni e sugli strumenti di supporto ad essa. Questi due filoni sono complementari e sinergici.
Gestione ed elaborazione delle informazioni
Oggigiorno la gestione di parte rilevante della conoscenza passa attraverso le comunità online, che sono sempre più organizzate e strutturate. E¿ perciò utile comprendere quali tecniche e quali strumenti siano maggiormente adeguati a tracciare, rappresentare e raccogliere la conoscenza condivisa e la sua evoluzione dinamica in tali sistemi socio-tecnici. In particolare:
- estrazione e classificazione dinamica di contenuti
- estrazione di contenuti in ambienti multimediali (es. generazione di RSS feed da fonti multiple e/o multimediali)
- tecniche per virtual e semantic filesystems
Strumenti di supporto
Per supportare comunità virtuali ed in genere gruppi di lavoro decentralizzati sono in corso di studio diversi metodologie e approcci architetturali con struttura fortemente distribuita e paritetiche, quali approcci peer to peer e web 2.0. In particolare questo tema è di fondamentale importanza per le comunità di sviluppatori di software libero e opensource (FLOSS) che hanno perciò negli anni sviluppato strumenti di supporto per la gestione della conoscenza, sebbene orientati allo sviluppo software. In questa sede miriamo alla valutazione, all'estensione e alla generalizzazione di alcuni di questi strumenti.
L'annotazione del codice è una tecnica di programmazione per estrarre informazioni su struttura e comportamento del sistema. Solo di recente alcuni dei più diffusi linguaggi di programmazione (ad es. Java, tramite riflessione) supportano questa tecnica a vari livelli. A questo proposito si intende estendere il modello delle annotazioni di java per misurare alcune metriche SW e per selezionare ed estrarre informazioni dal codice a supporto dell'evoluzione, del riverse engineering e del testing.
Si intende infine esplorare l¿usabilità di modelli evolutivi basati su formalismi (ad esempio Reti di Petri).