Scheda insegnamento

Anno Accademico 2018/2019

Conoscenze e abilità da conseguire

Al termine del corso lo studente è introdotto ai concetti fondamentali per la realizzazione di piattaforme di servizi e applicazioni di telecomunicazioni. Conosce i servizi per terminali fissi e mobili, i servizi di broadcasting e streaming, i servizi basati su interfacce web. È introdotto allo sviluppo di applicazioni software per la realizzazione pratica dei servizi trattati nel Corso di Software per le telecomunicazioni.


The course consists in two modules: "Software per le Telecomunicazioni" and "Laboratorio di Software per le Telecomunicazioni" that run in parallel.

The first modules, awarding six credits, introduces basics on Software development, Object Oriented Programming,  and Operating Systems with the objective of allowing Students to understand the principles of software applications development and Operating Systems behavior. Laboratory experiences (in addition to those of the second module) and homework are proposed throughout the entire module with the aim of helping Students to mastering the concepts and tools studied during the course.

The first module is organized into three parts as follows:

Part I: Programming Languages

  • Introduction and rationale
  • Software programming principles and tools
  • Object Oriented Programming Paradigm
  • Object Oriented Programming Languages (JAVA)
  • Principles of Android Application Programming

Part II: Operating System Overview

  • OS Architecture (Linux/Android)
  • OS Basic components (Linux/Android)
  • OS Networking (Linux/Android)
  • OS Drivers (Linux/Android)

Skills and knowledge acquired during the first module will be used during the second module, "Laboratorio di Software per le Telecomunicazioni T" (3 credits). Students will create, design, and develope an Andorid Mobile application. The detailed program of the second module can be found in the course web page.


Slides will be made available to the registered students on AMS Campus.

The following books shall be used to complete the preparation and as references

  1. M. Gabbrielli, S. Martini, Programming Languages: Principles and Paradigms, Springer
  2. Siddhartha Rao, C++ in One Hour a Day, Sams Teach Yourself, Sams Publishing
  3. Rogers Cadenhead, Java in 24 Hours, Sams Teach Yourself, Sams Publishing
  4. Mark G. Sobell, A Practical Guide to Linux Commands, Editors, and Shell Programming, Prentice All
  5. Modern Operating Systems, Andrew S. Tanenbaum, Herbert Bo, Pearson Ed.


Other supporting material can be suggested during the course and listed on the course slides.


Metodi didattici

Principles, concepts, and basic tools are introduced with the support of slides.
Programming exercises are proposed to Students as laboratory experiences and homework in order to allow a better understanding of the course subjects.

Modalità di verifica dell'apprendimento

Assessment is performed through

  • a multiple choice test;
  • an interview.
The multiple-choice test and the interview are part of a single assessment and shall be undergone on the same day.

Strumenti a supporto della didattica

  • Laboratory with personal computers equipped with Eclipse (IDE), Java Developer Kit (JDK), and Android SDK.
  • Students can use their own computing resources (notebooks or personal computers). IDE and SDK tools needed to complete the proposed exercises and homework are open source tools available on the Internet

Link ad altre eventuali informazioni


Orario di ricevimento

Consulta il sito web di Alessandro Vanelli Coralli

Consulta il sito web di Daniele Tarchi