Subject: Device Architecture

Scientific Area:

Computer Science

Workload:

80 Hours

Number of ECTS:

6 ECTS

Language:

Portuguese

Overall objectives:

1 - Introduce theoretical and technical aspects of ubiquitous computing.
2 - Identify the characteristics of ubiquitous systems.
3 - Provide the opportunity to study and develop an application or a ubiquitous system.
4 - Develop critical thinking, scientific writing and presentation skills.

Syllabus:

1 - Java programming.
1.1 - Types, variables and expressions.
1.2 - Selection and iteration instructions.
1.3 - Methods, parameters and arguments.
1.4 - Matrices, chains of characters.
1.5 - Methods, functional decomposition.
1.6 - Classes and objects.
1.7 - Enumerated Types and Collections.
1.8 - Exceptions and Java SWING.
2 - Introduction to mobile application development.
2.1 - Application development platforms for mobile devices.
2.2 - Google Android, Microsoft Windows Phone, Apple iOS.
2.3 - Native Application Development with Google Android (Java).
3 - Internet of Things.
3.1 - Introduction and definition of IoT.
3.2 - Main challenges in building IoT systems
3.3 - Programming of IoT devices (sensors and actuators).
3.4 - Communication protocols.
3.5 - Development Platforms.
3.6 - Development of applications for different usage scenarios: smart homes, wearable computing, smart cities.

Literature/Sources:

J.Krumm , 2010 , Ubiquitous Computing Fundamentals , CRC Press
Mendes, J. A.; Marcelino, M. J. , 2012 , Fundamentos De Programação Em Java 4ª ed. atualizada e aumentada , FCA
n. a. , Selecção de artigos sobre cada tema do programa ,

Assesssment methods and criteria:

Classification Type: Quantitativa (0-20)

Evaluation Methodology:
In accordance with the expected for the Professional Higher Technical Courses.