72
Data Processing Systems
REGGIO DI CALABRIA
Overview
Date/time interval
Syllabus
Course Objectives
Knowledge and understanding: Acquisition of fundamental notions relating to the architecture and main technologies of the World Wide Web. Acquisition of SOA design methodologies, and of the use of patterns for e-Business. Understanding of the main technologies used in the field of Web Applications.
Ability to apply knowledge: Ability to design and implement Web Applications using different technologies, such as Web services in the AXIS environment, Javascript, PHP, Servlets, AJAX, HTML 5.
Making judgements: in order to pass the exam, the student must independently answer free-answer theoretical, analytical and design questions and is therefore led to develop independent judgments on the completeness, depth and correctness of the freely given answers.
Communication skills: the student is able to illustrate the theoretical and technical motivations that underlie the Web and Web Applications.
Learning skills: after passing the exam, the student is able to independently learn other basic characteristics of the Web and Web Applications.
The exam consists in the discussion of a project relating to the design and consequent implementation of a Web application, and in an oral examination relating to the various topics covered during the course.
The student who has carried out the project work sufficiently correctly, and has demonstrated during the oral exam that he possesses the basic knowledge of Web architecture, receives a mark between 18 and 24.
If the student has carried out the project work sufficiently correctly, and has demonstrated during the oral exam that he possesses not only basic knowledge of the Web, but also sufficient knowledge of the development of Web applications, he will receive a grade between 25 and 27.
The student who has carried out the design work sufficiently correctly, and has demonstrated that he has particularly in-depth knowledge of the Web and Web applications, will receive a grade between 28 and 30.
Honors may be awarded to students who have earned a grade of 30, distinguishing themselves for a particularly accurate and effective realization of the project.
Course Prerequisites
No pre-requisites required
Teaching Methods
traditional frontal teaching
Assessment Methods
The exam consists in the discussion of a project relating to the design and consequent implementation of a Web application, and in an oral examination relating to the various topics covered during the course.
The student who has carried out the project work sufficiently correctly, and has demonstrated during the oral exam that he possesses the basic knowledge of Web architecture, receives a mark between 18 and 24.
If the student has carried out the project work sufficiently correctly, and has demonstrated during the oral exam that he possesses not only basic knowledge of the Web, but also sufficient knowledge of the development of Web applications, he will receive a grade between 25 and 27.
The student who has carried out the design work sufficiently correctly, and has demonstrated that he has particularly in-depth knowledge of the Web and Web applications, will receive a grade between 28 and 30.
Honors may be awarded to students who have earned a grade of 30, distinguishing themselves for a particularly accurate and effective realization of the project.
Texts
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.
Slides of the course.
Contents
Computer Networks and Distributed Systems (1.5 CFU)
Classification of Distributed Systems. Distributed Object-Oriented Programming. Processes. Threads. Multi-threaded client and server. Sockets. Implementing clients and servers in Java. Multi-threaded servers. Architectures for Distributed Systems. Level-based architectures, object-based, data-based, event-based architectures. Centralized and decentralized architectures. Client-server model. Application levels. Software distribution. P2P architectures. Chord. Process communication. Protocols, interfaces. Network architectures. Services. ISO-OSI Model and TCP/IP Architecture.
Remote Procedure Calling (1.5 CFU)
Message-oriented communication. Naming. Types of naming. Implementing a naming space. Domain Name System (DNS). Remote Method Invocation (RMI). Distributed programming with RMI.
The Web (2 CFU)
Hypertexts. Three-tier and four-tier models. Technological principles of the Web. Resources and identifiers. URI. HTTP. Proxy. Web server. Apache Web Server. XML. XML applications. 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 deployment. Designing Web Services in Java with Apache SOAP. Axis. JWS extension. WS Client. Service descriptions: XML, WSDL. Tools. REST Web Services. Implementing Web Services in Axis. Server-side and client-side scripting (PHP, JavaScript). Servlets. Ajax.
More information
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.