Metodi e tecniche per la rappresentazione e la manipolazione della conoscenza: aggregazione, decorazione e instrumentazione delle informazioni.
Progetto Nell'economia della conoscenza lo sviluppo di strumenti atti a catturare la componente tacita insita nello sviluppo di pratiche professionali in ambienti collaborativi assurge a sempre maggiore importanza. Recentemente le tecniche e gli strumenti maggiormente usati in questo contesto, sono basati sull'annotazione del codice e/o delle informazioni.
In particolare, è possibile articolare la ricerca sotto due filoni complementari e sinergici, che ci proponiamo di indagare: elaborazione delle informazioni e strumenti di supporto ad essa.
Elaborazione delle informazioni.
Le comunità online hanno assunto una crescente importanza nella gestione della conoscenza, è perciò rilevante 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
- rappresentazione della conoscenza nel web semantico
- estrazione di contenuti in ambienti multimediali (es. generazione di RSS feed da fonti multiple e/o multimediali)
- virtual FS
Strumenti di supporto.
L'annotazione del codice è una tecnica di programmazione per marcare e successivamente estrarre informazioni su struttura e comportamento del sistema. Solo di recente i principali linguaggi di programmazione (ad es. Java) supportano (tramite riflessione) questa tecnica, seppure con diversi limiti (solo le dichiarazioni possono essere annotate).
A questo proposito si intende estendere il modello delle annotazioni di Java affinché permetta di annotare con una granularità più fine (blocchi di istruzioni ed espressioni). Sperimentare, quindi, l'uso delle annotazioni per misurare il SW (metriche) e per selezionare ed estrarre informazioni dal codice a supporto dell'evoluzione, del reverse-engineering e del testing del SW. Inoltre si esplorerà l'uso delle annotazioni nell'ambito della programmazione orientata agli aspetti.