48
SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
REGGIO DI CALABRIA
Dati Generali
Periodo di attività
Syllabus
Obiettivi Formativi
Conoscenza e comprensione: Acquisizione delle nozioni fondamentali relative all'architettura ed alle principali tecnologie del World Wide Web. Acquisizione delle metodologie di progettazione SOA, e dell'uso dei patterns per gli e-Business. Comprensione delle principali tecnologie utilizzate nell'ambito delle Web Applications.
Capacità di applicare la conoscenza: Capacità di progettare e realizzare Web Applications utilizzando diverse tecnologie, quali Web services in ambiente AXIS, Javascript, PHP, Servlet, AJAX, HTML 5.
Autonomia di giudizio: per il superamento dell'esame lo studente deve rispondere autonomamente a domande teoriche, analitiche e progettuali a risposta libera ed è quindi portato a sviluppare autonomia di giudizio sulla completezza, la profondità e la correttezza delle risposte liberamente fornite.
Abilità comunicative: lo studente è in grado di illustrare le motivazioni teoriche e tecniche che sono alla base del Web e delle Web Applications.
Capacità di apprendimento: a seguito del superamento dell’esame, lo studente è in grado di apprendere in autonomia altre caratteristiche di base del Web e delle Web Applications.
La prova di esame consiste nella discussione di un elaborato progettuale relativo alla progettazione e conseguente realizzazione di una Web applications, e in un esame orale relativo ai vari argomenti trattati durante il Corso.
Allo studente che abbia svolto in maniera sufficientemente corretta l'elaborato progettuale, ed abbia dimostrato durante l'esame orale di possedere le conoscenze di base circa l'architettura del Web, è attribuito un voto compreso tra 18 e 24.
Se lo studente avrà svolto in maniera sufficientemente corretta l'elaborato progettuale, ed avrà dimostrato durante l'esame orale di possedere oltre alle conoscenze di base sul Web, anche sufficienti conoscenze sullo sviluppo di Web applications, gli sarà attribuito un voto compreso tra 25 e 27.
Allo studente che abbia svolto in maniera sufficientemente corretta l'elaborato progettuale, ed abbia dimostrato di possedere conoscenze particolarmente approfondite sul Web e sulle Web applications, sarà attribuito un voto tra 28 e 30.
Potrà essere attribuita la lode agli studenti che avranno meritato un voto pari a 30, distinguendosi per una realizzazione particolarmente accurata ed efficace dell'elaborato progettuale.
Prerequisiti
Nessun pre-requisito richiesto
Metodi didattici
Didattica Frontale Tradizionale
Verifica Apprendimento
La prova di esame consiste nella discussione di un elaborato progettuale relativo alla progettazione e conseguente realizzazione di una Web applications, e in un esame orale relativo ai vari argomenti trattati durante il Corso.
Allo studente che abbia svolto in maniera sufficientemente corretta l'elaborato progettuale, ed abbia dimostrato durante l'esame orale di possedere le conoscenze di base circa l'architettura del Web, è attribuito un voto compreso tra 18 e 24.
Se lo studente avrà svolto in maniera sufficientemente corretta l'elaborato progettuale, ed avrà dimostrato durante l'esame orale di possedere oltre alle conoscenze di base sul Web, anche sufficienti conoscenze sullo sviluppo di Web applications, gli sarà attribuito un voto compreso tra 25 e 27.
Allo studente che abbia svolto in maniera sufficientemente corretta l'elaborato progettuale, ed abbia dimostrato di possedere conoscenze particolarmente approfondite sul Web e sulle Web applications, sarà attribuito un voto tra 28 e 30.
Potrà essere attribuita la lode agli studenti che avranno meritato un voto pari a 30, distinguendosi per una realizzazione particolarmente accurata ed efficace dell'elaborato progettuale.
Testi
Tanenbaum, Van Steen. Sistemi Distribuiti. Pearson Italia.
Tidwell, Snell, Kulchenko: Programming Web Services with SOA. O’Reilly Publisher.
Endrei et al. Patterns: Service-Oriented Architecture and Web Services. IBM Redbooks.
Dispense del corso.
Contenuti
Reti di Computer e Sistemi Distribuiti (1.5 CFU)
Classificazione dei Sistemi Distribuiti. Distributed Object-Oriented Programming. Processi. Threads. Client and Server multi-thread. Socket. Implementare client e server in Java. Server multi-thread. Architetture per Sistemi Distribuiti. Architetture Level-based architectures, object-based, data-based, event-based. Architetture centralizzate e decentralizzate. Client-server model. Application levels. Software distribution. Architetture P2P. Chord. Process communication. Protocols, interfaces. Network architectures. Services. Modello ISO-OSI e Architettura TCP-IP.
Remote Procedure Calling (1.5 CFU)
Message-oriented communication. Naming. Naming types. Implementare un naming space. Domain Name Systems (DNS). Remote Method Invocation (RMI). Distributed programming in RMI.
Il Web (2 CFU)
Gli ipertesti- Three tier and four-tier models. Principi tecnologici del Web. Risorse e identificatori. URI. HTTP. Proxy. Web server. Apache web server. XML. Applicazioni XML. XML-Schema.
Web Applications (4 CFU)
Web Services: Introduction. SOA and patterns for e-business. Supply Chain Management. SOA steps: domain decomposition, goal-service model creation, subsystem analysis, service allocation, component specification, structuring components and services using patterns, technological implementation. Web services. Transport: HTTP, Java Message Service, SMTP, HTTPR. SOAP. Web Services Deploying. Designing Web Services in Java with Apache SOAP. axis. JWS extension. WS Client. Service descriptions: XML, WSDL. tools. REST Web Services. Implement Web Services in AXIS. Script Server Side and Client Side (PHP, Javascript). Servlets. Ajax.
Altre informazioni
Codice Teams: r05x1nw
Il canale Teams contiene, nella sezione condivisa, una serie di dispense che coprono tutte le tematiche trattate al corso.
Sono presenti dispense specifiche come guida alle esercitazioni e una sezione sofware che contiene gli installatori di tutti gli ambienti software utilizzati nel corso.