Practical Course Advanced Networking (Summer 2015)

Details

Workload/ECTS Credits: 180h, 6 ECTS
Module: M.Inf.805.6C: Fortgeschrittenenpraktikum Computernetzwerke (6C), M.Inf.1800.Mp: Fortgeschrittenen Praktikum Computernetzwerke
Lecturer: Dr. David Koll,Dr. Stephan Sigg
Teaching assistant: Lingjun Pu, MSc
Time: start:April 16, 2015, 14:00-16:00
Place: IfI 3.101
UniVZ [1]


Prerequisites

Solid knowledge in computer networks (e.g., obtained by attending the course "Computer Networks") Solid object-oriented programming knowledge including networking techniques like sockets (preferably in JAVA) Ideally, you have experience in Android Programming (however, not necessary for all projects)

Course description

The course is designed to provide students with the opportunity to enhance their programming skills in the network context. For that, participating students can form teams of two to three students to tackle a particular problem. Here, the problem can be chosen from a list of available topics. In the past, students have created mobile phone apps to share rides on a train, have investigated the propagation of wireless signals or have implemented research simulators.

This semester, the Practical Course Advanced Networking will take a different approach than in previous editions. Instead of working on disjoint topics, student teams will cooperate within a larger project in the area of crowd sensing.

Crowd sensing is an emerging research area that deals with using mobile phones as sensors. The advantages of using smartphones over classical sensors range from more computational and communication resources to multi-modal sensing capabilities. Possible applications are, for instance, smart cities, in which the use of mobile phones as sensors can increase the sustainability of rural areas.

In this course, students will - under supervision - implement such a crowd sensing system. We will have different tasks to complete, ranging from client/server infrastructure implementation to sensor analysis and the design of user applications and their GUIs. Each team will work on a different task and grades will not be influenced by the performance of the other groups.

Outcomes of the course may result in publications at well-known research venues, which the students are then invited to attend.

An example of a crowd sensing system in action can be found on on Youtube

Organization

Informational meeting

We will have bi-weekly status update meetings. These meetings are usually short if everything goes well ;)

Course teams

Students conduct this course in small teams. A team consists of at most three students.

Passing requirements

  • Actively participate in the project communication (20%)
  • Present your topic and demonstrate your project at the end of this course (50%)
  • Prepare a written report on the selected topic (12-15 pages, Template:[2]) (30%)

Schedule

  • 16 April, 14:00-16:00: Kick-off meeting
    • Introduction to the course, selection of topics, formation of teams, and discussion of open questions
  • 30 April, 28 May, 11 June, 25 June, 9 Jul: Bi-weekly meetings
    • Each team gives a status update on their subproject
    • Time limit: 10 minutes per team, including discussion
  • TBA May/June: Mid-term presentation:
    • Each team gives a review of work done and work to be done in the second half of the semester
    • Time limit: 10 minutes per team + 5 minutes discussion
    • You can re-use material from your earlier status updates here
  • TBA September: Final presentation:
    • Each team presents the work done
    • Time limit: 20 minutes per team + 5 minutes discussion

Topics

In this semester, we limit the topics to the following:

Topic Description Students
Server implementation TBD TBD
Client implementation TBD TBD
Application and GUI Design* TBD TBD
  • There can be more topics in this category, depending on the student count.