Your SlideShare is downloading. ×

11645

191

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
191
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Last update: 01/07/2009 11645 - APDA - Advanced Programming and Distributed Applications Coordinating unit: 230 - ETSETB - Escola Tècnica Superior d'Enginyeria de Telecomunicació de Barcelona Teaching unit: 701 - AC - Department of Computer Architecture Academic year: 2009 Degree: MASTER OF SCIENCE IN INFORMATION AND COMMUNICATION TECHNOLOGIES (Syllabus 2004). (Teaching unit Compulsory) TELECOMMUNICATION ENGINEERING (Syllabus 1992). (Teaching unit Optative) ELECTRONICS ENGINEERING, PLA 92 (Syllabus 1992). (Teaching unit Optative) MASTER OF SCIENCE IN INFORMATION AND COMMUNICATION TECHNOLOGIES (Syllabus 2006). (Teaching unit Compulsory) MASTER IN TELEMATICS ENGINEERING (Syllabus 2006). (Teaching unit Optative) Credits: 6 Teaching languages: English Lecturers Coordinator: PABLO JESUS CHACIN MARTINEZ Teaching methodology Theory lectures Practice sessions and guided discussions Lab practices in groups Learning objectives of the subject Understand the characteristics, challenges and main design concerns for large scale distributed systems. Take informed decisions on the selection of the architecture, the application of design principles, and the utilization of algorithms and techniques for distributed systems in future projects. Understand the principles of network programming and the mechanisms for the communication between components of a distributed system. 1/6 Universitat Politècnica de Catalunya
  • 2. Last update: 01/07/2009 11645 - APDA - Advanced Programming and Distributed Applications Content 1. Introduction 1.1 Basic concepts, characteristics and challenges 1.2 Architectures: tightly coupled, client/server, multi-tier, P2P 1.3 Comunication models: shared memory, stream oriented, remote procedure call, 1.4 Case studies 2. Network programming 2.1 TCP/IP Networking basics 2.2 Java network programming 2.3 Network protocol design 2.4 Data encoding 2/6 Universitat Politècnica de Catalunya
  • 3. Last update: 01/07/2009 11645 - APDA - Advanced Programming and Distributed Applications 3. Network services and middleware 3.1 Network services: FTP, DNS, Mail, Time 3.2 Middleware: communication, transaction monitors, application servers, data 4. Web Applications 4.1 HTTP protocol 4.2 Static and dynamic web content 4.3 Server side application programming 5 Internet of Services 5.1 Service Oriented Architectures 5.2 Web Services Standards: XML, SOAP, WSDL 3/6 Universitat Politècnica de Catalunya
  • 4. Last update: 01/07/2009 11645 - APDA - Advanced Programming and Distributed Applications 5.3 Alternatives to Web Services: XML-RPC, REST 6. Design of distributed Systems 6.1 Design concerns: scalability and foult tolerance 6.2 Replication and Distribution 6.3 Architecture topologies: Centralized, Ring, Decentralized, Hierarchical, Hybrid 7 Naming and location 7.1 Name resolution and location 7.2 DNS 7.3 Mobility 8 Basic algorithms 4/6 Universitat Politècnica de Catalunya
  • 5. Last update: 01/07/2009 11645 - APDA - Advanced Programming and Distributed Applications 8.1 Logical an physical clocks, causality 8.2 Global state 8.3 Reaching consensus and leader selection 8.4 Mutual exclusion and distributed transactions 9. Advanced Topics 9.1 Grid Computing 9.2 P2P systems 9.3 Content Delivery Networks 9.4 Sensor Networks Qualification system Continuous assessment 30 % Laboratory 30 % Final examination 40 % 5/6 Universitat Politècnica de Catalunya
  • 6. Last update: 01/07/2009 11645 - APDA - Advanced Programming and Distributed Applications Regulations for carrying out activities Prior skills Computer Networks: Communication protocols, LANs/WANs Computer Systems: Computer organization and architecture (CPU, memory, I/O), processes and threads System Software: Linux operating systems and tools Programming: Basic algorithms and data structures, Compile-Test-Debug cycle, Java programming language Requirements Bibliography Basic: Tanenbaum, A.S.; Steen, M.van. Distributed systems: principles and paradigms. 2nd ed. Upper Saddle River, N. J.: Pearson Prentice Hall, 2007. ISBN 0132392275. Reilly, D.; Reilly, M. Java network programming and distributed computing [on line]. Addison-Wesley, 2002 [Consultation: 27/07/2009]. Available on: <http://proquest.safaribooksonline.com/0201710374/pref01>. ISBN 0201710374. Others resources: 6/6 Universitat Politècnica de Catalunya

×