Mobile Computing

A.Y. 2023/2024
9
Max ECTS
96
Overall hours
SSD
INF/01
Language
Italian
Learning objectives
The aim of the course is presenting the peculiar problems of mobile devices, and the corresponding solutions. For this purpose, the course will show how to apply, in the context of mobile devices, what the students have learned in other courses from the program and among others: human-computer interaction, operating systems, computer networks, databases and web. Particular attention will be devoted to the aspects concerning mobile applications development.
Expected learning outcomes
The student will discover what solutions are adopted to solve the main problems related to mobile devices, operating systems, communication networks, data management, and application development. The student will be able to develop prototype applications for mobile devices.
Single course

This course can be attended as a single course.

Course syllabus and organization

Single session

Responsible
Lesson period
First semester
Course syllabus
FIRST PART: Fundamentals of Mobile Computing
- Introduction to MC
- OS and developing on mobile devices
- Analysis and design of applications for mobile devices (GUI design and design of the code organization)
- Architectures that includes mobile devices
- Techniques to acquire position and spatio-temporal data management
- Testing, debugging and deploy of apps for mobile devices

SECOND PART: app development in Android
- Introduction to Android development
- View development
- Model development
- Controller development
- Managing threads
- Acquiring and using the position

THIRD PART: cross-platform development.
- Introduction to Javascript
- Javascript Object Oriented
- Introduction to React
- Introduction to React Native
- Interaction with the OS, acquisition and use of position
- Plugins
Prerequisites for admission
It is strongly recommended to have passed the exams of Operating Systems, databases and web, networks, Programming 1 and 2, web and cloud applications.
The student is expected to be able to create an application, possibly in Java, and to be able to create dynamic web pages, possibly using HTML, CSS, and JavaScript.
Teaching methods
The part about the fundamentals of mobile computing involves frontal teaching. The development parts include about one-third of hours of frontal teaching and the remaining hours of lab, during which the students work on exercises assigned by the teacher. During some of the lab lessons, the teacher supports the students in developing the exam project.
Teaching Resources
Lecture notes and slides are provided for each lesson, forming the base for the studying material. Within the slides, links are available to online resources.
Assessment methods and Criteria
There are three tests, one for each part of the program (fundamentals of mobile computing, Android development, and Cross-Platform development). Each test is evaluated with a score from 1 to 31. In order to succeed in the course, the student needs a score of 18 or above in each part. The final score is computed as the average among the three partial scores.
INF/01 - INFORMATICS - University credits: 9
Laboratories: 48 hours
Lessons: 48 hours
Professor: Mascetti Sergio
Educational website(s)
Professor(s)