Ministero dell'Universita' e della Ricerca scientifica e tecnologica
Dipartimento Affari Economici
Programmi di Ricerca scientifica - richiesta di cofinanziamento
(DM del 23 aprile 1997)
PROGETTO DI UNA UNITA' DI RICERCA - MODELLO B
Anno 1997 - prot. 9709A77351_010


1. Programma di Ricerca di tipo: interuniversitario


Area Scientifico Disciplinare: Ingegneria industriale dell'informazione
Per programmi inter-area:
Area: Scienze matematiche (35%)

2. Coordinatore Scientifico del Programma di Ricerca
ATZENI
(Cognome)
PAOLO
(Nome)

(Cognome acquisito - facoltativo)
IIIa Università
(Università)
INGEGNERIA
(Facoltà)
DIP INFORMATICA E AUTOMAZIONE
(Dipartimento/Istituto)

3. Titolo del Programma di Ricerca Metodologie e tecnologie per la gestione di dati e processi su reti Internet e Intranet


4. Responsabile Scientifico dell'Unità di Ricerca
ALBANO
(Cognome)
ANTONIO
(Nome)

(Cognome acquisito - facoltativo)
Professore Ordinario
(Qualifica)
01/03/45
(Data di nascita)
LBNNTN45C01H975C
(Codice di identificazione personale)
PISA
(Università)
SCIENZE MATEMATICHE FISICHE e NATURALI
(Facoltà)
Informatica
(Dipartimento/Istituto)
177701
(Codice conto Tesoreria Unica del Dip/Ist.)
050/887269
(Prefisso e telefono)
050/887226
(Numero fax)
albano@di.unipi.it
(Indirizzo di posta elettronica)


5. Settori disciplinari interessati dal Programma di Ricerca
K05A K05B


6. Titolo specifico del programma svolto dall'Unità di Ricerca
Linguaggi per la programmazione di applicazioni per basi di dati su Internet e Intranet


7. Descrizione del Programma dell'Unità di Ricerca
Lo scopo della ricerca proposta è la definizione e lo studio di costrutti per la programmazione di applicazioni per basi di dati ad oggetti in ambiente internet nel contesto di un linguaggio per basi di dati ad oggetti, con tipizzazione forte. L’utilizzo di un linguaggio ad oggetti è ampiamente motivato dal fatto che i meccanismi di astrazione del modello ad oggetti sono considerati i più adatti non solo alle attività di modellazione della realtà tipiche delle applicazioni per basi di dati, ma anche alla realizzazione del software distribuito ed eterogeneo. La tipizzazione forte costituisce uno strumento essenziale per la verifica parziale della correttezza dei programmi, la cui rilevanza nel contesto dei sistemi distribuiti è ormai pienamente riconosciuta, come testimoniato dalla successo del linguaggio Java. In questo contesto, saranno studiati in particolare i seguenti aspetti.
• Meccanismi di comunicazione: lo studio inizierà con la sperimentazione di meccanismi per la comunicazione tra un linguaggio per basi di dati ad oggetti e componenti scritti in altri linguaggi. La sperimentazione verrà condotta nell’ambito dello standard industriale CORBA, scelto di recente anche dall’AIPA come riferimento per l’architettura della rete unitaria della Pubblica Amministrazione. In questo contesto l’attenzione sarà rivolta all’integrazione di costrutti per l’integrazione di componenti all’interno di un linguaggio per basi di dati con tipizzazione forte. Un altro aspetto che sarà studiato riguarda la definizione di sistemi di tipo che permettano la comunicazione di oggetti multiruolo tra componenti diverse, evitando in particolare il ricorso a meccanismi di tipi generativi, i quali perdono di significato quando si esce dal contesto in cui il tipo è stato definito. (Fase: primo semestre. Prodotti: almeno un rapporto scientifico e prima versione del sistema Fibonacci esteso con meccanismi di comunicazione tra il linguaggio per basi di dati ad oggetti e componenti esterne)
• Meccanismi per la riflessione: verrà affrontato in particolare il problema di definire meccanismi riflessivi che permettano di anticipare alcuni dei controlli di correttezza prima dell’esecuzione dinamica del codice. Un altro aspetto che verrà approfondito è l’integrazione tra i meccanismi riflessivi ed il sistema di tipi del linguaggio che li ospita. (Fase: secondo semestre. Prodotti: almeno un rapporto scientifico e seconda versione del sistema Fibonacci con meccanismi di comunicazione tra il linguaggio e componenti esterne.) • Meccanismi di modularizzazione: verrà affrontato il problema di definire meccanismi di moduli sofisticati, basati su valori di prima classe e che possano essere definiti in modo parametrico rispetto ad altri moduli. (Fase: terzo semestre. Prodotti: almeno un rapporto scientifico e prima versione del sistema Fibonacci con meccanismi di modularizzazione.) • Programmazione del World Wide Web: verrà affrontato il problema di individuare astrazioni ed operazioni adatte ad operare sui dati contenuti nel World Wide Web. In questo contesto, sarà affrontato in particolare il problema della manipolazione di dati persistenti e di riferimenti con caratteristiche di tipizzazione dinamica e di significato non determinabile a priori, quali gli URL. (Fase: quarto semestre. Prodotti: almeno un rapporto scientifico e prima versione del sistema Fibonacci con meccanismi di riflessione e per la programmazione del World Wide Web.)


8. Obiettivo del programma dell'Unità di Ricerca
Obiettivo della ricerca è la progettazione e realizzazione di un linguaggio ad oggetti e fortemente tipizzato per basi di dati su Internet e Intranet, considerando in particolare i seguenti aspetti:
a) sistemi di tipi che permettano la comunicazione di oggetti con ruoli sulla rete;
b) meccanismi per la riflessione, per permettere la negoziazione tra componenti;
c) meccanismi di modularizzazione, basati su valori di prima classe e sulla possibilità di definire moduli parametrici;
d) meccanismi per la programmazione del World Wide Web.


9. Base di partenza scientifica
L'unità di Pisa negli ultimi anni ha fatto ricerche sul disegno e sulla realizzazione di linguaggi per basi di dati. In particolare, il gruppo si è occupato di linguaggi per basi di dati ad oggetti con un sisteme di tipi forte e statico. I risultati di questa ricerca riguardano i seguenti temi: a) linguaggi di programmazione per basi di dati a oggetti, b) tecniche per la realizzazione di oggetti estendibili e c) teoria dei tipi per linguaggi a oggetti.
Per quanto riguarda i linguaggi di programmazione per basi di dati a oggetti sono state studiate le proprietà (a) del meccanismo degli oggetti con ruoli per consentire la modellazione di oggetti che cambiano tipo dinamicamente e presentino una pluralità di comportamenti, (b) del meccanismo degli oggetti virtuali per modellare viste di basi di dati a oggetti e (c) del meccanismo dei moduli. Questi meccanismi sono stati sperimentati in due prototipi: il sistema Fibonacci e il sistema Galileo 95 ([1], [2]). Per quanto riguarda le tecniche per la realizzazione di oggetti estendibili è stato presentato un modello di realizzazione che mostra come vadano arricchite le strutture dati all’aumentare della generalità del meccanismo di estendibilità degli oggetti ([3]). Per quanto riguarda la teoria dei tipi per linguaggi per basi di dati a oggetti, sono stati studiati alcuni aspetti della formalizzazione delle proprietà del sistema dei tipi di un linguaggio con controllo statico. Come fondazione del sistema dei tipi è stato scelto il lambda calcolo al secondo ordine con sottotipi, poiché esso è il minimo sistema di tipi che integri polimorfismo parametrico e di inclusione ([4], [5]).
1. A. Albano, R. Bergamini, G. Ghelli, R. Orsini, “An Object Data Model with Roles”, Proc. of 19th Int. Conf. on VLDB, Dublin, 1993, pp. 39-51.
2. A. Albano, G. Ghelli, and R. Orsini, “Fibonacci: a Programming Language for Object Databases”, Journal of Very Large Data Bases, 4 (3), 1995, pp. 403-444.
3. A. Albano, M. Diotallevi, and G. Ghelli, “Extensible Objects for Database Evolution: Language Features and Implementation Issues”, Proc. of the Fifth Intl. Workshop on Data Base Programming Languages (DBPL), Gubbio, Italy, 1995.
4. G. Ghelli, “Divergence of F< Type-checking”, Theoretical Computer Science, 139 (1,2), Marzo 1995, pp. 131-162.
5. G. Castagna, G. Ghelli, G. Longo, “A Calculus for Overloaded Functions with Subtyping”, Information & Computation, 117(1), 1995, pp. 115-135.


10. Durata del Programma di Ricerca 24 (mesi)


11. Pubblicazioni scientifiche più significative del Responsabile dell'Unità di Ricerca
  1. A. Albano, G. Ghelli, “Object Oriented Data Base Programming Languages”, invited paper, IEEE EuroComp Conference, Bologna, 1991, pp. 726-734.
  2. A. Albano, G. Ghelli, R. Orsini, “A Relationship Mechanism for a Strongly Type Object-Oriented Database Programming Language”, Proc. of 17th Int. Conf. on VLDB, Barcelona, 1991, pp. 565-575.
  3. A. Albano, R. Bergamini, G. Ghelli, R. Orsini, “An Object Data Model with Roles”, Proc. of 19th Int. Conf. on VLDB, Dublin, 1993, pp.39-51.
  4. A. Albano, G. Ghelli, and R. Orsini, “Fibonacci: a Programming Language for Object Databases”, Journal of Very Large Data Bases, 4 (3), 1995, pp.403-444.
  5. A. Albano, M. Diotallevi, and G. Ghelli, “Extensible Objects for Database Evolution: Language Features and Implementation Issues”, Proc. of the Fifth Intl. Workshop on Data Base Programming Languages (DBPL), Gubbio, Italy, 1995.


12. Risultati ottenibili con fondi propri
Proposte di meccanismi di comunicazione tra il linguaggio per basi di dati ad oggetti Fibonacci e componenti esterne, di meccanismi per la riflessione e per la comunicazione di oggetti con ruoli sulla rete, esperimenti preliminari per la loro realizzazione nel linguaggio Fibonacci.


13. Risorse umane impegnabili nel Programma dell'Unità di Ricerca
(un docente-ricercatore può far parte di una sola Unità di Ricerca)

13.1 Personale universitario dell'Università sede dell'Unità di Ricerca


No. Cognome Nome Dipart./Istituto Qualifica Mesi uomo
1. Albano Antonio Informatica Professore Ordinario 8
2. Ghelli Giogio Informatica Professore Associato 8

13.2 Personale universitario di altre Università:

No. Cognome Nome Università Dipart./Istituto Qualifica Mesi uomo

13.3 Titolari di borse ex L. 398/89 art. 4 (post-dottorato e specializzazioni)

No. Cognome Nome Dipart./Istituto Mesi uomo

13.4 Titolari di borse per dottorato di ricerca

No. Cognome Nome Università sede amm. Dipart./Istituto Ciclo Mesi uomo
1. Manghi Paolo Pisa Informatica XII 12

13.5 Personale extrauniversitario - aggregabile al programma senza oneri aggiuntivi

No. Cognome Nome Ente Qualifica Mesi uomo

13.6 Personale a contratto

No. Cognome Nome Qualifica Costo previsto Mesi uomo
1. X X X 24 12


14. Risorse finanziarie a sostegno del Programma già disponibili all'atto della domanda
(tutte le cifre sono espresse in milioni)

QUADRO RD

Provenienza anno di assegnazione importo disponibile nome Resp. Naz.
Universita'    
Dipartimento    
MURST (ex 40%)  antecedente 1995  
MURST (ex 40%)  1995  2,000  Atzeni Paolo
MURST (ex 40%)  1996  13,000  Atzeni Paolo
CNR    
Unione Europea  1992  15,000
Altro    
TOTALE    30,000

14.1 Altro (origine e importi dettagliati):


15. Risorse finanziarie acquisibili in data successiva a quella della domanda e utilizzabili a sostegno del Programma
(tutte le cifre sono espresse in milioni)

QUADRO RA

Provenienza anno della domanda o stipula del contratto stato di approvazione disponibilità per il programma
Università      
Dipartimento      
CNR      
Unione Europea      
Altro      
TOTALE      

15.1 Disponibilità per il programma(articolare negli anni di durata del programma)

15.2 Altro (origine e importi dettagliati)


16. Apparecchiature o grandi attrezzature

16.1 Disponibili ed utilizzabili per la ricerca proposta
(tutte le cifre sono espresse in milioni)

descrizione anno di acquisizione valore all'acquisto finanziamenti ottenuti dal MURST % di utilizzo per la ricerca proposta
 SUN Sparc 10  1992  21800000  0  50
         
         

L'uso delle attrezzature disponibili richiede, per la ricerca proposta, interventi di adeguamento? no

Quota necessaria per l'adeguamento:


16.2 Descrizione sintetica dell'adeguamento richiesto


16.3 Richiesta di grandi attrezzature (GA)
(tutte le cifre sono espresse in milioni)
  1. Descrizione:


    Valore presunto (milioni):    

  2. Descrizione:


    Valore presunto (milioni):    

  3. Descrizione:


    Valore presunto (milioni):    


17. Certifico la disponibilità e l'utilizzabilità dei fondi si



Firma ________________________________ (per la copia da depositare presso l'Ateneo)


18. Costo complessivo del Programma dell'Unità di Ricerca (in milioni di lire)

Costo complessivo

di cui:
 72,000

Voce importo
Materiale inventariabile - (Voce A)  10,000
Spese generali - (Voce B)  62,000
Grandi attrezzature - (Voce GA)  


Risorse disponibili all'atto della domanda (RD)  30,000
Risorse acquisibili (RA)  
Cofinanziamento richiesto al MURST  42,000
Costo minimo per garantire
la possibilità di verifica dei risultati
 48,000

Occorre precisare che la quota di cofinanziamento massimo del Programma di Ricerca deve essere pari a:
(Totale RD + Totale RA) x 1.5 per progetti Interuniversitari e
(Totale RD + Totale RA) x 0.66 per progetti Intrauniversitari

(per la copia da depositare presso l'Ateneo e per l'assenso alla divulgazione via Internet delle informazioni riguardanti i programmi finanziati; legge del 31.12.96 n° 675 sulla "Tutela dei dati personali")



Firma ____________________________________ Data 11/7/97
Ora  11:30:37