IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):Distribuerede Systemer (kl. 9.00 - 15.30) 
Kursusnavn (engelsk):Distributed Systems 
Semester:Efterår 2002 
Udbydes under:cand.it., internet- og softwareteknologi (int) 
Omfang i ECTS:7,50 
Kursussprog:Engelsk 
Kursushjemmeside:https://learnit.itu.dk 
Min. antal deltagere:
Forventet antal deltagere:65 
Maks. antal deltagere:121 
Formelle forudsætninger:Before the course the student should be able to:

  • Use world-wide-web and email
  • Describe what a client and a server is
  • Design, implement and test medium-sized programs in Java

One way to obtain these prerequisites is by taking the course Introductory Programming
(Grundlæggende Programmering) followed by a course or a project at
ITU which contains programming. 
Læringsmål:After the course the student will be able to:

  • Describe the fundamental principles in
    designing and constructing distributed systems
  • Describe the use of middleware, including the principles for
    distributed objects, remote invocation and name services
  • Describe concurrency control
  • Describe the transaction concept and some of its applications
  • Describe replication and some of its applications
  • Implement distributed applications on basis of the above
    knowledge. Focus will be on sharing of resources,
    use of replication, use of Java Sockets, Java RMI and
    maybe on CORBA or XML-based technologies.
 
Fagligt indhold:A distributed system can be described as a collection of independent
components which are connected through a network and cooperates in
performing tasks. The components can for example be computers or mobile
phones. The network can for example be a local network in a company,
a network for mobile phones or the whole Internet.

In this course we will
study some of the fundamental techniques used when developing programs
for distributed systems. We will do this from a practical as well as from
a theoretical point of view. The course consists of three main parts:
Fundamental concepts, middelware and resource sharing:


  • Fundamental concepts:

    • Characterization of distributed systems and models of them
    • Communication between processes, including Java socket programming

  • Middelware:

    • Distributed objects and remote invocation.
    • Java RMI case-study
    • Name services
    • Maybe a case-study on CORBA or XML-based technologies.

  • Resource sharing:

    • Transactions and concurrency control
    • Distributed transactions
    • Replication.


Note that important subjects such as security and network protocols
is covered in the course Computer Security (Datasikkerhed)
and the course Network and Protocols (Netværk og protokoller)
which are good supplemental courses. 
Læringsaktiviteter:

Exercises with instructor Wednesday from 9.00 to 12.00.
Lectures Wednesday from 13.00 to 15.30. Mandatory and practical oriented exercises. 

Eksamensform og -beskrivelse:X. experimental examination form (7-scale; external exam), 13-skala, Ekstern censur

Passed mandatory exercises. Oral exam for 30 minutes (this includes
time for feedback etc). The exam questions are known in advance and there
is no preparation time. Grades will be given according to the 13-scale
and there is external censorship.

The student is allowed to bring notes to the exam but they may only
be used to write down an outline with keywords at the board. The
student is also allowed to bring 1-2 slides for each question,
but only as long as they only contain figures and tables and
not notes or text.  

Litteratur udover forskningsartikler:<a href=\"http://www.booksites.net/coulouris\">
Distributed Systems - Concepts and Design,
by George Colulouris, Jean Dollimore and Tim Kindberg,
ISBN 0201-61918-0, Addison-Wesley, ©Pearson Education 2001.