logo-polimi
Loading...
Risorse bibliografiche
Risorsa bibliografica obbligatoria
Risorsa bibliografica facoltativa
Scheda Riassuntiva
Anno Accademico 2018/2019
Scuola Scuola di Ingegneria Industriale e dell'Informazione
Insegnamento 093212 - DESIGN AND IMPLEMENTATION OF MOBILE APPLICATIONS
Docente Baresi Luciano
Cfu 5.00 Tipo insegnamento Monodisciplinare

Corso di Studi Codice Piano di Studio preventivamente approvato Da (compreso) A (escluso) Insegnamento
Ing - Civ (Mag.)(ord. 270) - MI (495) GEOINFORMATICS ENGINEERING - INGEGNERIA GEOINFORMATICA*AZZZZ093212 - DESIGN AND IMPLEMENTATION OF MOBILE APPLICATIONS
Ing Ind - Inf (Mag.)(ord. 270) - MI (263) MUSIC AND ACOUSTIC ENGINEERING*AZZZZ093212 - DESIGN AND IMPLEMENTATION OF MOBILE APPLICATIONS
Ing Ind - Inf (Mag.)(ord. 270) - MI (474) TELECOMMUNICATION ENGINEERING - INGEGNERIA DELLE TELECOMUNICAZIONI*AZZZZ093212 - DESIGN AND IMPLEMENTATION OF MOBILE APPLICATIONS
Ing Ind - Inf (Mag.)(ord. 270) - MI (481) COMPUTER SCIENCE AND ENGINEERING - INGEGNERIA INFORMATICA*AZZZZ093212 - DESIGN AND IMPLEMENTATION OF MOBILE APPLICATIONS

Obiettivi dell'insegnamento

Given the always increasing diffusion of mobile and wearable devices (e.g., smartphones, tables, and watches), the course aims to present the main techniques and technologies to design and implement applications for these devices. More specifically, the course will address the design of "mobile" applications by considering both the problem of designing the user experience, that is, the screens used to interact with the user, and the problem of understanding the actual distribution of the components that constitute the application and their interactions.

As for technologies, the course will present the main solutions that are available today. It will cover both iOS-based (iPhone/iPad) and Android-based applications. It will also present cross-platform options as the emerging solution for the realization of cross-platform "mobile" applications.


Risultati di apprendimento attesi

Knowledge and understanding
Students will learn how to:
- Identify the key elements of a modern mobile application
- Design appropriate GUIs
- Design and implement complete mobile applications using different technologies
- Select among different architectural and technological options

Applying knowledge and understanding
Given specific applications, students will be able to:
- Detail concrete and efficient GUIs
- Identify and select among different architectural and technological choices
- Apply theory to assess designed solutions and available technological alternatives
- Design, document, develop and test complex mobile applications.

Making judgements
Given relatively complex mobile applications, students will be able to:
- Analyze and understand the requirements associated with the mobile applications and the devices of interest
- Define the architecture of the corresponding mobile application using proper styles and patterns
- Identify and define the needed external elements, libraries, and services

Communication
Students will learn to:
- Write a design document
- Conceive a technical presentation
- Present their work in front of the professor and their colleagues

Lifelong learning skills
Students will learn how to
- Develop mobile applications
- Identify alternatives and select the proper technologies
- Frame and evaluate new, future technologies.


Argomenti trattati

The course is roughly divided in five parts:
- The introduction frames the problem and the new/many opportunities these devices offer. It also gives a brief survey of the different alternatives and "competing" solutions.

- The first part is about the design of mobile applications. It tries to identify some guidelines and recurring patterns to "ease" the design of these applications and also to help obtain quality solutions.

- The third part introduces the main novelties and characteristics of some key solutions for the development of cross-platform applications.

- The fourth part starts with a brief presentation of Swift and its main differences with respect to Java. Then, it introduces the development of applications for iOS-based devices.

- The fifth part is is about Android and about the development of applications for this operating system and for the family of devices (phones, tablets, watches, TVs) that use it.


Prerequisiti

The course does not require particular prerequisites, except a basic knowledge of object-oriented programming  and  Java in particular.


Modalità di valutazione

The exam consists of a project that can be developed by a group of up to 2 students (max). The project must be documented, presented, demoed, and discussed with the professor.


Bibliografia

Forme didattiche
Tipo Forma Didattica Ore di attività svolte in aula
(hh:mm)
Ore di studio autonome
(hh:mm)
Lezione
30:00
45:00
Esercitazione
20:00
30:00
Laboratorio Informatico
0:00
0:00
Laboratorio Sperimentale
0:00
0:00
Laboratorio Di Progetto
0:00
0:00
Totale 50:00 75:00

Informazioni in lingua inglese a supporto dell'internazionalizzazione
Insegnamento erogato in lingua Inglese
Disponibilità di materiale didattico/slides in lingua inglese
Disponibilità di libri di testo/bibliografia in lingua inglese
Possibilità di sostenere l'esame in lingua inglese
Disponibilità di supporto didattico in lingua inglese
schedaincarico v. 1.6.1 / 1.6.1
Area Servizi ICT
14/12/2019