PROGRAMMAZIONE SU RETI

Informatica PROGRAMMAZIONE SU RETI

0512100036
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA
INFORMATICA
2013/2014



ANNO ORDINAMENTO 2008
SECONDO SEMESTRE
CFUOREATTIVITÀ
648LEZIONE
Obiettivi
"CONOSCENZA E CAPACITÀ DI COMPRENSIONE": IL CORSO HA L’OBIETTIVO DI APPROFONDIRE GLI ASPETTI RELATIVI ALLA PROGRAMMAZIONE DISTRIBUITA AD UN LIVELLO MEDIO-ALTO. IL CORSO PREVEDE UNA PARTE TEORICA ED UNA PARTE PRATICA. NELLA PARTE TEORICA VENGONO PRESENTATI I PRINCIPALI MODELLI PER LO SVILUPPO DI APPLICAZIONI DISTRIBUITE ESISTENTI IN LETTERATURA, VENGONO PRESENTATE LE ARCHITETTURE ORIENTATE AI SERVIZI E VIENE PROPOSTA UNA IMPLEMENTAZIONE DI TALI ARCHITETTURE UTILIZZANDO IL MODELLO DEI WEB SERVICES. NELLA PARTE PRATICA VENGONO FORNITI DIVERSI ESEMPI DI WEB SERVICES SVILUPPATI IN LINGUAGGIO JAVA.

"CAPACITÀ DI APPLICARE CONOSCENZA E COMPRENSIONE": IL CORSO HA COME OBIETTIVO QUELLO DI RENDERE LO STUDENTE CAPACE DI PROGETTARE E SVILUPPARE APPLICAZIONI DISTRIBUITE E SEMPLICI WEB SERVICES. AL TERMINE DEL CORSO LO STUDENTE SARÀ IN GRADO DI PROGETTARE E SVILUPPARE APPLICAZIONI DISTRIBUITE, SCALABILI E SICURE, BASATE SU RPC O WEB SERVICES.

"ABILITÀ COMUNICATIVE": GLI STUDENTI ACQUISIRANNO LA CAPACITÀ DI DESCRIVERE, PROGETTARE E SVILUPPARE APPLICAZIONI DISTRIBUITE CON PROPRIETÀ DI LINGUAGGIO.

"AUTONOMIA DI GIUDIZIO": GLI STUDENTI SARANNO GUIDATI NELL'APPRENDIMENTO CRITICO E RESPONSABILE DELLE ATTIVITÀ DI CLASSE E NELL' ARRICCHIMENTO DELLE PROPRIE CAPACITÀ DI ANALISI E SINTESI ATTRAVERSO LO STUDIO DI OPPORTUNO MATERIALE CHE IL DOCENTE PROPORRÀ AL FINE DI STIMOLARE L'AUTONOMIA DI GIUDIZIO DEGLI STUDENTI.
Prerequisiti
LO STUDENTE DEVE AVERE ACQUISITO CONOSCENZE SULL’ARCHITETTURA DELLE RETI E SUI PROTOCOLLI TCP/IP E SULLA PROGRAMMAZIONE CLIENT/SERVER. LO STUDENTE DEVE AVERE ANCHE ESPERIENZA DI PROGRAMMAZIONE IN C E JAVA. E’ AUSPICABILE CHE LO STUDENTE ABBIA ANCHE CONOSCENZE DI BASE DEL XML E DELLE PRINCIPALI TECNICHE DI SVILUPPO PER APPLICAZIONI WEB.
Contenuti
"PARTE TEORICA"

•INTRODUZIONE AL CALCOLO DISTRIBUITO
•CALCOLO DISTRIBUITO E MIDDLEWARE
•MODELLO CLIENT-SERVER
•CARATTERISTICHE DELLE COMUNICAZIONI TRA PROCESSI
•DIVERSE TIPOLOGIE DI MIDDLEWARE: SINCRONO, ASINCRONO, ORIENTATO A OGGETTI E ORIENTATO ALLE TRANSAZIONI
•MECCANISMI DI MIDDLEWARE SINCRONO (RPC, RMI)
•MECCANISMI DI MIDDLEWARE ASINCRONO
•SISTEMI COMPLESSI DI MIDDLEWARE (MESSAGE ORIENTED, TRANSACTION ORIENTED ED ENTERPRISE APPLICATION)
•SISTEMI CENTRALIZZATI/ DISTRIBUITI E CLOUD
•SISTEMI CENTRALIZZATI E DISTRIBUITI
•CLOUD COMPUTING: COSA È?
•CLOUD COMPUTATION E BUSINESS
•WEB SERVICES E SOA
•CARATTERISTICHE DEI WEB SERVICES
•SERVICE ORIENTED ARCHITECTURE
•WEB SERVICES TECHNOLOGY STACK
•QUALITY OF SERVICE: DISPONIBILITÀ, ACCESSIBILITÀ, STANDARD, INTEGRITÀ, PERFORMANCE, RELIABILITY, SCALABILITÀ, SICUREZZA, TRANSAZIONALITÀ
•INTEROPERABILITÀ
•CONFRONTO COMPONENTI DISTRIBUITE E WS
•XML
•DEFINIZIONE XML
•ISTANZE XML
•XML NAMESPACE
•XML SCHEMA
•ELABORAZIONE DI XML
•SIMPLE API FOR XML (SAX)
•DOCUMENT OBJECT MODEL (DOM)
•SOAP
•DEFINIZIONE DI SOAP: SEMPLICE, FLESSIBILE, ESTENDIBILE
•ARCHITETTURA DI SOAP
•IL MODELLO DI ELABORAZIONE DI SOAP
•IL MODELLO DEI DATI DI SOAP
•SOAP RPC.

"PARTE PRATICA"
•SOAP, WSDL E UDDI
•UTILIZZO DI TOMCAT E AXIS2
•SVILUPPO DI WEB SERVICES
•APACHE WEB SERVICE STACK
•IL MOTORE SOAP AXIS2
•AXIOM: LIGHT-WEIGHT PULL-BASED XML OBJECT MODEL PER IL MESSAGE PROCESSING
•ESTENDIBILITÀ DI AXIS2
•GESTIONE DELLE SESSIONI
•ATTACHMENT CON AXIS2
•IMPLEMENTAZIONE DI WEB SERVICES IN JAVA USANDO TOMCAT E AXIS2
Metodi Didattici
IL CORSO DI PROGRAMMAZIONE SU RETI COMPRENDE UNA PARTE TEORICA IN CUI VENGONO SPIEGATI I PRINCIPI DEL CALCOLO DISTRIBUITO, MIDDLEWARE E DELLE ARCHITETTURE ORIENTATA AI SERVIZI E DI UN PARTE PRATICA IN CUI VENGONO SVILUPPATI DIVERSI ESERCIZI SUI WEB SERVICES IN JAVA USANDO TOMCAT E AXIS2.
Verifica dell'apprendimento
SEI APPELLI DISTRIBUITI NEL CORSO DELL’ANNO ACCADEMICO, OLTRE A DUE APPELLI RISERVATI AGLI STUDENTI FUORI CORSO. PER OGNI APPELLO È PREVISTA UNA PROVA SCRITTA/PRATICA ED UNA PROVA ORALE. IL VOTO VIENE CALCOLATO CON UNA MEDIA PESATA DEI VOTI DELLE DUE PROVE SOSTENUTE. DURANTE IL CORSO SI TERRANNO DUE PROVE INTERCORSO (UNA A METÀ DEL CORSO ED UNA ALLA FINE), RISERVATE AGLI STUDENTI CHE SEGUONO REGOLARMENTE IL CORSO, CHE ESONERANO DALLA PROVA SCRITTA
Testi
PARTE TEORICA
•M. PAPAZOGLOU. “WEB SERVICES: PRINCIPLES AND TECHNOLOGY”. PEARSON, PRENTICE HALL
•GRAHAM, DAVIS ET AL. “BUILDING WEB SERVICES WITH JAVA". SAMS PUBLISHING

PARTE PRATICA

•APACHE AXIS2 WEB SERVICES 2ND EDITION. DEEPAL JAYASINGHE, AFKHAM AZEEZ. PACKT PUBLISHING, 2011
•DOCUMENTAZIONE DISPONIBILE SU INTERNET RELATIVA A STANDARD E DOCUMENTI UFFICIALI
Altre Informazioni
SULLA PIATTAFORMA DI FACOLTA'
SONO DISPONIBILI I CODICI DEGLI ESEMPI DISCUSSI NELLE LEZIONI DI LABORATORIO, TRACCE DI ESAMI E ALTRO MATERIALE DI SUPPORTO (MANUALI DI PROGRAMMAZIONE, TUTORIAL)
HTTP://WWW.SCIENZEMFN.UNISA.IT/EL-PLATFORM/LOGIN/INDEX.PHP
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2016-09-30]