Curriculum Vitae di SERGIO OREFICE
Transcript
Curriculum Vitae di SERGIO OREFICE
Curriculum Vitae di SERGIO OREFICE INFORMAZIONI GENERALI Dati personali: Sergio Orefice é nato a Torre del Greco (Napoli) il 8/9/1965 ed è residente a L’Aquila in via Federico Trecco n. 8. Email: [email protected] Pagina Web personale: http://www.di.univaq.it/orefice Educazione scolastica e universitaria: Ha conseguito il diploma di maturità scientifica presso il Liceo Scientifico "A. Nobel" di Torre del Greco nell'anno scolastico 1983/84 con voto 60/60. Si é laureato con lode in Scienze dell'Informazione presso la Facoltà di Scienze Matematiche Fisiche e Naturali dell'Università di Salerno nella seduta del 21/11/1989 discutendo una tesi dal titolo "Programmazione Logica a 3-valori e tipi di dato", di cui é stato relatore il Prof. G. Pacini. ESPERIENZE PROFESSIONALI Da Novembre 1990 a Luglio 1991 ha collaborato in qualità di consulente con il CRIAI (Consorzio Campano di Ricerca per l'Informatica e l'Automazione Industriale) di Portici (Napoli) ad un progetto di ricerca su interfacce visuali per banche dati. In particolare, ha progettato e implementato un prototipo di interfaccia iconica per la banca dati Cerved contenente le informazioni relative all'Anagrafe Camerale delle imprese italiane. Da Agosto 1991 a Giugno 1992 é stato titolare di una borsa di studio dell'Università di Salerno per il perfezionamento all'estero della quale ha usufruito negli Stati Uniti presso il Dipartimento di Computer Science dell'Università di Pittsburgh. Durante questo periodo ha seguito alcuni corsi appartenenti al regolare programma di Ph.D. in Computer Science ed ha svolto attività di ricerca sotto la direzione del Prof. S.K. Chang in qualità di Visiting Researcher. Da Giugno 1992 a Maggio 1993 è stato titolare di una borsa di studio del C.N.R. ed ha svolto la sua attività di ricerca presso il Dipartimento di Informatica ed Applicazioni dell'Università di Salerno sotto la direzione del Prof. G. Pacini e della Prof.ssa G. Tortora. Ha conseguito il titolo di Dottore di Ricerca in Matematica Applicata ed Informatica, elaborando una tesi dal titolo "Generazione automatica di compilatori per linguaggi visuali". Da Gennaio 1995 a Ottobre 2000 ha ricoperto il ruolo di ricercatore presso la Facoltà di Scienze Matematiche Fisiche e Naturali dell'Università di L'Aquila. Dal 1 Novembre 2000 é professore associato presso l'Università di L'Aquila per il raggruppamento INF/01 (Informatica), ed afferisce attualmente al Dipartimento di Ingegneria e Scienze dell’Informazione e Matematica. Ha ricoperto diversi incarichi istituzionali fra cui membro della Commissione Biblioteca della Facoltà di Scienze e coordinatore dei Laboratori didattici del corso di Laurea in Informatica e del Dipartimento di Informatica. Ha contribuito all'organizzazione di varie edizioni del Workshop IEEE su Linguaggi Visuali in qualità di recensore. Ha recensito articoli per diverse riviste internazionali fra cui "Journal of Visual Languages and Computing" Elsevier, e "International Journal of Software Engineering and Knowledge Engineering" World Scientific. ATTIVITA' DIDATTICA Anno accademico 1994-95: - 15 ore di lezioni nell'ambito del corso di "Sistemi per l’Elaborazione dell’Informazione I" del Corso di Laurea in Scienze dell’Informazione, con partecipazione alla relativa commissione di esame. - 15 ore di lezioni nell'ambito del corso di "Linguaggi Formali e Compilatori" del Corso di Laurea in Scienze dell’Informazione, con partecipazione alla relativa commissione di esame. Anno accademico 1995-96: - 25 ore di lezioni nell'ambito del corso di "Algoritmi e Strutture Dati" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - 45 ore di lezioni nell'ambito del corso di "Linguaggi Formali e Compilatori" del Corso di Laurea in Scienze dell’Informazione, con partecipazione alla relativa commissione di esame. Anno accademico 1996-97: - 45 ore di lezioni nell'ambito del corso di "Linguaggi Formali e Compilatori" del Corso di Laurea in Scienze dell’Informazione, con partecipazione alla relativa commissione di esame. Anno accademico 1997-98: - 45 ore di lezioni nell'ambito del corso di "Linguaggi di Programmazione: Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. Anno accademico 1998-99: - E' stato titolare del corso di "Linguaggi di Programmazione: Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. Anno accademico 1999-2000: - E' stato titolare del corso di "Linguaggi di Programmazione: Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Sistemi per l'elaborazione dell'informazione" del Corso di Laurea in Scienze Ambientali, con partecipazione alla relativa commissione di esame. Anno accademico 2000-2001: - E' stato titolare del corso di "Linguaggi di Programmazione: Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Sistemi per l'elaborazione dell'informazione" del Corso di Laurea in Scienze Ambientali, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Calcolo Numerico e Programmazione" dei Diplomi di Laurea in Chimica, Biotecnologie Agroindustriali e Scienza dei Materiali, con partecipazione alla relativa commissione di esame. Anno accademico 2001-2002: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica" dei Corsi di Laurea in Chimica, Biotecnologie, Scienza dei Materiali e Scienze Ambientali, con partecipazione alla relativa commissione di esame. Anno accademico 2002-2003: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica" del Corso di Laurea in Scienze Ambientali, con partecipazione alla relativa commissione di esame. Anno accademico 2003-2004: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio Informatico" del Corso di Laurea in Scienze e Tecnologie per l’Ambiente, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica I" del Corso di Laurea in Scienze e Tecnologie Chimiche e dei Materiali, con partecipazione alla relativa commissione di esame Anno accademico 2004-2005: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare della parte di informatica del corso di "Metodologie Statistiche per Analisi Dati Ambientali" del Corso di Laurea in Scienze e Tecnologie per l’Ambiente, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica I" del Corso di Laurea in Scienze e Tecnologie Chimiche e dei Materiali, con partecipazione alla relativa commissione di esame Anno accademico 2005-2006: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare della parte di informatica del corso di "Metodologie Statistiche per Analisi Dati Ambientali" del Corso di Laurea in Scienze e Tecnologie per l’Ambiente, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica I" del Corso di Laurea in Scienze e Tecnologie Chimiche e dei Materiali, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Informatica per le scienze sociali" del Corso di Laurea internazionale della Facoltà di Economia, con partecipazione alla relativa commissione di esame. Anni accademici 2006-2007, 2007-2008: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare della parte di informatica del corso di "Metodologie Statistiche per Analisi Dati Ambientali" del Corso di Laurea in Scienze e Tecnologie per l’Ambiente, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica I" del Corso di Laurea in Scienze e Tecnologie Chimiche e dei Materiali, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Informatica per le scienze sociali" del Corso di Laurea internazionale della Facoltà di Economia, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica II" del Corso di Laurea in Scienze e Tecnologie Chimiche e dei Materiali, con partecipazione alla relativa commissione di esame. Anno accademico 2008-2009: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare della parte di informatica del corso di "Metodologie Statistiche per l’Ambiente" del Corso di Laurea in Scienze e Tecnologie per l’Ambiente, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Laboratorio di Informatica II" del Corso di Laurea in Scienze e Tecnologie Chimiche e dei Materiali, con partecipazione alla relativa commissione di esame. Anni accademici 2009-2010, 2010-2011, 2011-2012, 2012-13: - E' stato titolare del corso di "Linguaggi di Programmazione e Compilatori" del Corso di Laurea in Informatica, con partecipazione alla relativa commissione di esame. - E' stato titolare del corso di "Fondamenti dell’informatica II" del Corso di Laurea Magistrale in Informatica, con partecipazione alla relativa commissione di esame. Nel corso di tali anni accademici ha seguito lo sviluppo di progetti didattici - nell'ambito dei corsi di "Linguaggi Formali e Compilatori", di "Linguaggi di Programmazione: Compilatori" e di "Linguaggi di Programmazione e Compilatori" - riguardanti la costruzione di compilatori per linguaggi simbolici bidimensionali attraverso l'uso del tool Yacc. Ha inoltre fatto parte delle commissioni di esami di Laurea in Scienze dell'Informazione e Informatica, e ha seguito lo svolgimento di numerose tesi e tesine. ATTIVITA' SCIENTIFICA I suoi interessi di ricerca includono la programmazione logica, i linguaggi visuali e tecnologie di parsing per linguaggi formali multidimensional, e l'ingegneria del software. 1. Programmazione Logica Nell'area della programmazione logica, i risultati raggiunti nel proseguimento del lavoro della tesi di laurea sono stati raccolti in [2, 28] (cfr. elenco delle pubblicazioni). Essi hanno riguardato la definizione di una logica a 3-valori dove il terzo valore segnala l'inaccettabilità di una sentenza logica. Il risultato centrale raggiunto é stato la dimostrazione della consistenza dell'uso dell'algoritmo tradizionale di risoluzione SLD per la classe di programmi logici a 3-valori legali. L'implicazione pratica di questo risultato é che la valutazione di un goal può essere effettuata attraverso un convenzionale esecutore Prolog. Come applicazione, il concetto di legalità é stato studiato relativamente ad esempi concernenti domande mal poste a basi di dati e goals di tipo scorretto in programmi logici tipati. In [1] é stata svolta una ricerca riguardante il raffinamento di specifiche logiche. E' pratica abbastanza comune nella fase di specifica del ciclo di vita del software dare la descrizione di un sistema complesso in passi successivi, partendo da informazione generale e aggiungendo dettagli livello per livello. La logica del primo ordine risulta essere un modello adeguatamente formale e naturale per essere proposto come base per linguaggi di specifica. Nel lavoro si é usata l'implicazione logica dal livello di specifica più basso a quello più alto per dare una definizione formale di raffinamento fra differenti livelli di specifica (descritti attraverso teorie generali del primo ordine). 2. Linguaggi Visuali e Multidimensionali Il recente sviluppo della tecnologia hardware e la disponibilità di terminali grafici avanzati a basso costo hanno motivato una crescente domanda per una interazione uomo-macchina ad alto livello. Da questa esigenza sono nati i linguaggi visuali con i quali le rappresentazioni grafiche e le immagini entrano in gioco nel processo di programmazione rompendo la struttura unidimensionale e testuale dei tradizionali linguaggi di programmazione. La ricerca svolta ha riguardato aspetti relativi alla sintassi e alla semantica di questi linguaggi, a tecniche per la loro progettazione e implementazione, ed al loro uso per migliorare l'interazione uomo-macchina. Allo scopo di facilitare ulteriormente l'uso di linguaggi visuali, in [6] è stato sviluppato un generatore di interfacce grafiche interattive che aiutano l'utente a formulare sentenze iconiche corrette. Una sentenza iconica é un programma visuale scritto mediante disposizione spaziale di icone. Il generatore si basa su una tecnica di parsing sottostante che estende l'algoritmo classico per grammatiche LR al caso bidimensionale, utilizzando tavole di parsing modificate in modo da specificare la posizione del simbolo "look-ahead", [16]. Successivi studi sono stati focalizzati sulle grammatiche posizionali come modello per la specifica della sintassi di linguaggi visuali (e più in generale di linguaggi multidimensionali), e sulle relative tecniche di parsing. Una grammatica posizionale è una grammatica context free in cui le relazioni fra i suoi simboli vengono chiaramente esplicitate. In [19] é stata caratterizzata una famiglia di grammatiche posizionali (extended pLALR grammars) che possono essere automaticamente tradotte in grammatiche context free con azioni posizionali. Un'azione posizionale é una chiamata di procedura che implementa una relazione spaziale. Poiché la grammatica context free prodotta dalla traduzione é in formato Yacc, la generazione del parser per il linguaggio bidimensionale corrispondente può essere ottenuta automaticamente tramite un tool noto alla maggioranza degli implementatori di linguaggi. In [5] é stata definita una metodologia di analisi sintattica deterministica LR-like (chiamata pLR parsing) per linguaggi visuali generati da grammatiche posizionali. Analogamente alla tradizionale tecnica LR, la metodologia pLR consiste di algoritmi attraverso i quali una grammatica posizionale viene precompilata in una parsing table pLR, e poi, all'effettivo tempo di parsing, viene realizzata un'analisi sintattica shift-reduce dell'input guidata deterministicamente dalla parsing table. In [21, 22] la tecnica di parsing pLR é stata estesa in modo da poter essere applicata ad una classe di data-flow graphs con strutture condivise. L'estensione si basa su un nuovo meccanismo di derivazione che permette riferimenti multipli a terminali e a nonterminali durante la generazione di sentenze da parte di una grammatica posizionale. Una completa descrizione dell'evoluzione del modello delle grammatiche posizionali e della corrispondente metodologia di parsing é presentata in [15]. Il modello posizionale é stato usato come formalismo sottostante al sistema software VLCC (Visual Language Compiler-Compiler) presentato in [4]. Il VLCC é un sistema grafico per la generazione automatica di ambienti di programmazione visuale. Esso supporta l’implementazione di un linguaggio visuale assistendo il progettista durante la definizione degli oggetti grafici, della sintassi e della semantica del linguaggio. Il risultato finale del processo di generazione consiste in un ambiente integrato che include un editore e un compilatore per il linguaggio visuale specificato. VLCC permette la creazione di ambienti per linguaggi visuali particolarmente significativi come flow-charts strutturati, espressioni aritmetiche bidimensionali, layouts di documenti, data-flow graphs, diagrammi logici, circuiti elettrici, etc., e, grazie alla natura object-oriented e quindi scalabile dell'implementazione, è possibile aggiungere al sistema altri tipi di linguaggi visuali. In particolare, un approfondito studio sulle caratteristiche sintattiche dei linguaggi che possono essere implementati attraverso il VLCC e sulla loro progettazione é presentato in [8, 23]. Per quanto riguarda la ricerca nel campo della semantica dei linguaggi visuali, in [3, 17] é stata formalizzata una metodologia per la progettazione di linguaggi visuali iconici basata sul principio di compattamento della semantica. La principale idea del compattamento della semantica é usare icone ambigue per rappresentare concetti. In tal modo molti concetti possono essere rappresentati usando poche icone. L'ambiguità é risolta quando più icone sono combinate in una sentenza iconica. Questa ricerca ha preso spunto dallo studio del Minspeak system un terminale iconico largamente diffuso negli Stati Uniti che permette ad utenti disabili di comunicare componendo sentenze iconiche che sono automaticamente translate in voce da un sintetizzatore vocale il quale produce il messaggio prememorizzato associato alla sentenza. A partire da un vocabolario di "parole" P in input (che può essere un sottinsieme di un linguaggio naturale come nel caso del Minspeak o un insieme di comandi ed entità ammissibili in un certo dominio di applicazione), la metodologia finale permette di individuare un insieme limitato I di icone tale che ogni parola di P possa essere codificata attraverso una sentenza iconica (formata da icone in I e di lunghezza non superiore ad un parametro predefinito) che evochi intuitivamente il significato della parola. Per realizzare tale codifica é stato usato un modello di interpretazione incrementale della semantica di sentenze iconiche, proposto in [18, 20], su cui é stata realizzata una funzione in grado di calcolare la similarità concettuale fra parole, icone e sentenze iconiche. In [7] é stata presentata una metodologia per la descrizione formale e l'implementazione di applicazioni grafiche. In genere, le specifiche utente di tali applicazioni sono implementate ad-hoc usando un ambiente di programmazione visuale come Visual Basic o Visual C. Di conseguenza, quando l'applicazione deve essere estesa o modificata, ciò non può essere fatto senza una massiccia riprogrammazione. Utilizzando la metodologia proposta, le specifiche sono formalizzate attraverso un diagramma stati-transizioni (chiamato Automa Visuale) che descrive l'interfaccia utente e il comportamento dell'applicazione. Gli Automi Visuali sono direttamente eseguibili all'interno del tool software IVAG (Interactive Visual Application code Generator) che permette di generare automaticamente il codice dell'applicazione visuale a partire dalla sua specifica formale. L’architettura software del tool e una serie di casi di studio (in particolare applicazioni web-based e applicazioni per giochi su scacchiera) attraverso i quali IVAG è stato sperimentato sono descritti in [10]. Dalla sperimentazione risulta che IVAG riduce significativamente i tempi e gli sforzi nello sviluppo del codice e della documentazione di queste applicazioni, e limita il tipico problema dell’esplosione degli stati degli approcci basati su diagrammi stati-transizioni. Linguaggi e tecniche visuali sono stati studiati anche nel contesto dell’Information Extraction. In [13] è stato presentato il tool SRQ (Spatial Relation Query), un sistema grafico per l’estrazione di informazioni da pagine web basato sull’”apparenza visuale” dell’informazione, cioè il suo rendering attraverso un web browser. Il tool è provvisto di un editor grafico che permette di definire e gestire una libreria di relazioni spaziali, e di comporre ed eseguire query (in un semplice linguaggio SQLlike) basate sull’arrangiamento spaziale degli elementi nel documento. Il formalismo di relazioni spaziali sottostante la tecnica di estrazione visuale delle informazioni è stato esteso in [14, 26, 27] e l’applicazione è stata arricchita di nuovi plugin per eseguire interrogazioni su diverse sorgenti dati permettendo di applicare SRQ anche a dati geospaziali e documenti PDF. 3. Ingegneria del software La ricerca svolta nell’area dell’ingegneria del software ha come obiettivo quello di usare le tecnologie XML per rappresentare, manipolare e permettere il riuso delle specifiche software. Un approccio comunemente usato nella fase di requirements engineering per analizzare, comprendere e rappresentare le specifiche software è l’approccio basato su scenari, dove per scenario si intende una sequenza di interazioni fra un utente e il sistema. La nozione di scenario fa parte anche di UML, una notazione ormai divenuta standard per metodologie object-oriented di software engineering. In [9, 24] è stato presentato il formalismo SDML (Scenario Description Markup Language), un linguaggio XML-like per la descrizione formale e la manipolazione degli scenari. La sintassi di SDML è stata formalmente definita attraverso uno Schema XML e permette di rappresentare nozioni quali sequenze, alternative, iterazione e concorrenza, dipendenze tra scenari, decomposizione gerarchica, etc. Il linguaggio SDML è stato usato come formalismo sottostante la metodologia SMDP (Scenario Model Development Process), [12, 25], grazie alla quale è possibile gestire un insieme di scenari, sia semplici che composti, in un singolo modello chiamato scenario model che fornisce una potente notazione per documentare scenari e comprenderne le interrelazioni. SMDP è un processo composto da cinque fasi: definizione (la descrizione e la formalizzazione in scenari dei requisiti software), raffinamento (l’elaborazione di scenari più dettagliati), composizione (la fase di composizione dove differenti scenari sono composti), trasformazione (la fase di derivazione dove altre forme di specifica sono derivate dagli scenari) e validazione (la verifica di consistenza, completezza e correttezza sugli scenari). Come controparte automatica della metodologia è stato sviluppato l’ambiente software SME (Scenario Model Environment), la cui architettura software è descritta in [11]. Il tool SME è stato sperimentato su un’ampia classe di casi di studio che hanno permesso di migliorare il tool e raffinare il sottostante linguaggio SDML. ELENCO DELLE PUBBLICAZIONI DI OREFICE SERGIO Lavori pubblicati su riviste internazionali [1] F. Ferrucci, G. Nota, S. Orefice, G. Pacini, G. Tortora, "On the Refinement of Logic Specifications", in International Journal of Software Engineering and Knowledge Engineering, vol. 2, n. 3, pp. 433-448, Settembre 1992. [2] G. Nota, S. Orefice, G. Pacini, F. Ruggiero, G. Tortora, "Legality Concepts for Three-valued Logic Programs", in Theoretical Computer Science, vol. 120, pp. 45-68, Novembre 1993. [3] S. Orefice, G. Polese, M. Tucci, S.K. Chang, "A Methodology and Interactive Environment for Iconic Language Design", in International Journal of Human-Computer Studies, vol. 41, pp. 683-716, Novembre 1994. [4] G. Costagliola, A. De Lucia, S. Orefice, G. Tortora, "Automatic Generation of Visual Programming Environments", in IEEE Computer, vol. 28, n. 3, pp. 56-66, Marzo 1995. [5] G. Costagliola, A. De Lucia, S. Orefice, G. Tortora, "A Parsing Methodology for the Implementation of Visual Systems", in IEEE Transactions on Software Engineering, vol. 23, n. 12, pp. 777-799, Dicembre 1997. [6] G. Costagliola, S. Orefice, G. Polese, M. Tucci, G. Tortora, "On the Generation of Interactive Iconic Environments", in International Journal of Human-Computer Studies, vol. 50, pp. 363-390, Maggio 1999. [7] G. Della Penna, B. Intrigila, S. Orefice, "Generating Graphical Applications from StateTransition Visual Specifications", in International Journal of Human-Computer Studies, vol. 55 n. 6, pp. 861-880, Dicembre 2001. [8] G. Costagliola, A. De Lucia, S. Orefice, G. Polese, "A Classification Framework to Support the Design of Visual Languages", in Journal of Visual Languages and Computing, vol. 13 n. 6, pp. 573600, Dicembre 2002. [9] G. Della Penna, B. Intrigila, A. Laurenzi, S. Orefice, "An XML Definition Language to Support Scenario-Based Requirements Engineering", in International Journal of Software Engineering and Knowledge Engineering, vol. 13 n. 3, pp. 237-256, Giugno 2003. [10] G. Della Penna, B. Intrigila, S. Orefice, "An Environment for the Design and Implementation of Visual Applications", in Journal of Visual Languages and Computing, vol. 15 n. 6, pp. 439-461, Dicembre 2004. [11] G. Della Penna, B. Intrigila, A. Laurenzi, S. Orefice, "An XML Environment for ScenarioBased Requirements Engineering", in Journal of Systems and Software, vol. 79 n. 3, pp. 379-403, Marzo 2006. [12] G. Della Penna, B. Intrigila, A. Laurenzi, S. Orefice, "An XML Based Methodology to Model and Use Scenarios in the Software Development Process", in International Journal of Software Engineering and Knowledge Engineering, vol. 18 n. 6, pp. 823-852, Settembre 2008. [13] G. Della Penna, D. Magazzeni, S. Orefice, "Visual Extraction of Information from Web Pages", in Journal of Visual Languages and Computing, vol. 21 n. 1, pp. 23-32, Febbraio 2010. [14] G. Della Penna, D. Magazzeni, S. Orefice, "A Spatial Relation based Framework to Perform Visual Information Extraction", in Knowledge and Information Systems, vol. 30 n. 3, pp. 667-692, 2012. Lavori pubblicati su libri [15] G. Costagliola, A. De Lucia, S. Orefice, G. Tortora, "Positional Grammars: a Formalism for LR-like Parsing of Visual Languages", in Theory of Visual Languages, Springer-Verlag ed., pp.171192, 1998. Lavori pubblicati su atti di convegni internazionali [16] S. Orefice, G. Polese, M. Tucci, G. Tortora, G. Costagliola, S.K. Chang, "A 2D Interactive Parser for Iconic Languages", in Proceedings of 1992 IEEE Workshop on Visual Languages, pp. 207-213, Seattle, Washington, USA, 15/18 Settembre 1992. [17] S.K. Chang, G. Costagliola, S. Orefice, G. Polese, B.R. Baker, "A Methodology for Iconic Language Design with application to Augmentative Communication", in Proceedings of 1992 IEEE Workshop on Visual Languages, pp. 110-116, Seattle, Washington, USA, 15/18 Settembre 1992. [18] S.K. Chang, S. Orefice, G. Polese, J.M. Hoover, "Towards a Formal Theory of Icon Semantics with application to Augmentative Communication", in Proceedings of 1993 RESNA Conference, Las Vegas, Nevada, USA, 12/17 Giugno 1993. [19] G. Costagliola, S. Orefice, G. Polese, G. Tortora, M. Tucci, "Automatic Parser Generation for Pictorial Languages", in Proceedings of 1993 IEEE/CS Symposium on Visual Languages, pp. 306313, Bergen, Norvegia, 24/27 Agosto 1993. [20] S.K. Chang, S. Orefice, G. Polese, B.R. Baker, "Deriving the Meaning of Iconic Sentences for Augmentative Communication", in Proceedings of 1993 IEEE/CS Symposium on Visual Languages, pp. 267-274, Bergen, Norvegia, 24/27 Agosto 1993. [21] G. Costagliola, A. De Lucia, S. Orefice, "Toward Efficient Parsing of Diagrammatic Languages", in Proceedings of Advanced Visual Interfaces 1994, ACM press, pp. 162-171, Bari, 1/4 Giugno 1994. [22] G. Costagliola, A. De Lucia, S. Orefice, G. Tortora, "Efficient Parsing of Data-Flow Graphs", in Proceedings of SEKE '95, Seventh International Conference on Software Engineering and Knowledge Engineering, pp. 226-233, Rockville, Maryland, USA, 22/24 Giugno 1995. [23] G. Costagliola, A. De Lucia, S. Orefice, G. Tortora, "A Framework of Syntactic Models for the Implementation of Visual Languages", in Proceedings of 1997 IEEE Symposium on Visual Languages, pp. 58-65, Capri, 23/26 Settembre 1997. [24] G. Della Penna, B. Intrigila, A. Laurenzi, S. Orefice, "An XML Definition Language for Software System Specification", in Proceedings of SCI '02, Sixth World Multiconference on Systemics, Cybernetics and Informatics, Orlando, USA, 14/18 Luglio 2002. [25] G. Della Penna, B. Intrigila, A. Laurenzi, S. Orefice, "A Methodology for Scenario Development", in Proceedings of SEKE '04, Sixteenth International Conference on Software Engineering and Knowledge Engineering, pp. 7-12, Banff, Canada, 22/24 Giugno 2004. [26] G. Della Penna, D. Magazzeni, S. Orefice, "A Graphical Tool to Support Visual Information Extraction", in Proceedings of DMS '09, Fifteenth International Conference on Distributed Multimedia Systems (VLC workshop), pp. 329-334, San Francisco, USA, 10/12 Settembre 2009. [27] G. Della Penna, D. Magazzeni, S. Orefice, "Supporting Visual Information Extraction from Geospatial Data", in Proceedings of DMS '11, Seventeenth International Conference on Distributed Multimedia Systems (VLC workshop), Firenze, 18/20 Agosto 2011. Lavori pubblicati su atti di convegni nazionali [28] G. Nota, S. Orefice, G. Pacini, G. Tortora, "Notes on Legality Concepts for Logic Programs using Three-valued Logic ", in Atti del GULP 91, 6° convegno sulla Programmazione Logica, pp. 133-148, Pisa 12/14 Giugno 1991.