Curricular Unit: | Code: | ||
Mobile Computing | 1126CMOV | ||
Year: | Level: | Course: | Credits: |
1 | Master | Computer Systems Engineering (Mobile Computation) | 6 ects |
Learning Period: | Language of Instruction: | Total Hours: | |
Winter Semester | Portuguese/English | 78 | |
Learning Outcomes of the Curricular Unit: | |||
This curricular unit (UC) aims for students to know the technologies and hardware and software tools currently applied in ubicomp systems. More specifically: • Identify and describe the main features of ubicomp systems • Distinguish and characterize the technological bases of wireless communications used in ubicomp systems • List and compare the main protocols and services used in ubicomp systems • Analyze and list the main system requirements of ubicomp systems • Combine and evaluate concepts and technologies in the specification and development of ubicomp systems • Use microcontrollers, sensors and actuators in the prototyping of ubicomp systems • Apply and combine wireless communication technologies and service platforms in the integration and automation of ubicomp systems • Describe, contextualize, analyze and compare IoT/ubicomp systems used in solving concrete problems of human activity | |||
Syllabus: | |||
1. Introduction to UbiComp / IoT Systems 2. Wireless Communication Technologies 3. IoT Protocols, Networks and Services 4. Location and Context 5. System Requirements 6. Embedded systems based on micro-controllers | |||
Demonstration of the Syllabus Coherence with the Curricular Unit's Objectives: | |||
The syllabus covers the intended objectives as it is organized into modules that specifically address the different aspects of the UbiComp/IoT system base. Module 1 introduces, through examples, the fundamentals of current UbiComp/IoT systems. The most theoretical concepts covering the technology and development are addressed in modules 2, 3, 4 and 5 (cf. communication technologies, protocols and services, location and context, and system requirements) and the most practical concepts are addressed in module 7 (cf. embedded systems based on Arduino and LoPy platforms). In all theoretical modules, the technology-based concepts associated with each theme are covered with typical examples of existing concrete projects. In parallel, the practical modules stimulate the study and knowledge of micro-controller-based platforms with application to the development of embedded UbiComp/IoT solutions. | |||
Teaching Methodologies (Including Evaluation): | |||
Theoretical contents are introduced and exposed in the practical classes (TP), typically using existing projects and technologies, illustrating their application to real problems. The laboratory practical classes (PL) promote the exploration of embedded platforms using micro-controller kits, sensors and actuators. TP classes typically use publications that address current technologies and their application to the development of UbiComp/IoT systems. In PL classes students install the IDEs associated with the selected hardware platforms which are use to create their technology experimentation projects. The classes are organized by modules, addressing the different aspects of the platforms (eg, architecture and development, IO ports, communications, etc.) and complementing the theoretical concepts. The assessment comprises two components TP and PL: 50% TP (90% Test + 10% Cont. Eval) + 50% PL (45% Paper + 45% Prototipo + 10% Cont. Eval) | |||
Demonstration of the Coherence between the Teaching Methodologies and the Learning Outcomes: | |||
The teaching methodology focuses on the contact and understanding of the main technologies that underlie the development of current UbiComp/IoT systems. TP classes cover the various aspects of the protocol stack, from the physical to the application level (cf. focusing communication, networks and services, context perception and acting and dynamic application management). The examples of exercises proposed in PL classes are directed to the understanding and application of technologies using micro-controller kits, sensors and actuators, and communication modules. Sequential resolution of preselected (hands-on) labs encourages the application of knowledge about the technologies exposed in class. This practice makes it possible to consolidate mastery of existing technologies and their use in the development process of UbiComp/IoT applications, by addressing specific problems. | |||
Reading: | |||
1. Jackob E. Bardram, A.J. Bernheim Brush, Anind K. Dey, Adrian Friday, John Krumm, Marc Langheinrich, Shwetak Patel, aaron Quigley, Alex S. Taylor, Alexander Varshavsky, Roy Want, Ubiquitous Computing Fundamentals, CRC Press, Taylors & Francis Group, Ed. John Krumm, 2010. 2. M. Weiser, The Computer for the Twenty-First Century. Scientific American, Vol. 265, No. 3, September 1991, pp. 94-104. 3. M. Satyanarayanan, Pervasive Computing: Vision and Challenges. IEEE Personal Communications, Vol. 8, No. 4, August 2001. 4. G. Coulouris, J. Dollimore & T. Kindberg, Distributed Systems: Concepts and Design, 4th Edition, Addison Wesley, 2005. 5. W. Stallings, Wireless Communications & Networks. 2nd Edition, Prentice Hall 2002. 6. A. Tanenbaum, Computer Networks. 4th Edition, Prentice Hall 2003. | |||
Lecturer (* Responsible): | |||
Rui Silva Moreira (rmoreira@ufp.edu.pt) |