EE-490(g) / 4 credits

Teacher: Atienza Alonso David

Language: English

Withdrawal: It is not allowed to withdraw from this subject after the registration deadline.


Summary

This course focuses on mobile application programming for the Android ecosystem. The students learn to develop distributed Apps on mobile platforms, interfacing with multiple heterogeneous devices and the cloud. Students receive a tablet and a smartwatch, and can use their smartphones if desired.

Content

Keywords

Embedded systems, IoT, mobile platforms, smartphones, smartwatches, Android, system-level design, advanced programming, App.

 

Embedded systems, Internet of Things (IoT), mobile platforms, smartphones, smartwatches, Android, App development, advanced programming, Kotlin.

Learning Prerequisites

Required courses

Microprogrammed Embedded Systems (Systèmes Embarqués Microprogrammés)

Recommended courses

- Microprogrammed Embedded Systems (EE-310).
- Lab on Hardware-Software Digital Systems Codesign (EE-390(a)).

 

Important concepts to start the course

  • Basics of Object-Oriented programming (C++ or Java)
  • Basic Software Engineering (Compilation, Debugging, etc.)
  • Linux OS (optional).

Learning Outcomes

  • Analyze requirements of Apps to be designed.
  • Assess / Evaluate complexity of a certain App design.
  • Choose the right set of technologies to include an App design.
  • Optimize o optimize an App design to improve performance and reduce power consumption.
  • Implement the required services and modules to design Android Apps.
  • Test the final App design.
  • Discuss the possible bugs and defects found in the App.
  • Select appropriately techniquest to correct those bugs.

Transversal skills

  • Access and evaluate appropriate sources of information.
  • Evaluate one's own performance in the team, receive and respond appropriately to feedback.
  • Assess one's own level of skill acquisition, and plan their on-going learning goals.
  • Communicate effectively, being understood, including across different languages and cultures.
  • Set objectives and design an action plan to reach those objectives.
  • Assess progress against the plan, and adapt the plan as appropriate.
  • Plan and carry out activities in a way which makes optimal use of available time and other resources.
  • Continue to work through difficulties or initial failure to find optimal solutions.
  • Use both general and domain specific IT resources and tools

Teaching methods

The course will include a combination of lectures and practical exercises in the laboratory to understand the baseline technologies and design aspects required in the development of Apps in Android-based. Then, in the last part of the course, it will be developed a project on a topic defined by the students team or the teacher to evaluate the learned technologies in real-life setups.

In the first weeks, the course includes a combination of lectures and guided laboratory exercises to understand the baseline technologies and design aspects required in the development of Apps in Android systems.

Then, in the last part of the course, students will develop original projects, selected either from a list proposed by the teacher or of their own design. Students will work in groups under the teacher's supervision, applying the learned concepts.

Expected student activities

Guided individual exercises in Android-based platforms, interact in the course, develop a complete and original App project working in a team.

 

Guided exercises, development an original app project while working in a team.

Assessment methods

The evaluation will be based on a mid-term and a 2- or 3-person project done in the last part of the semester.

 

Supervision

Office hours Yes
Assistants Yes
Forum Yes

Resources

Bibliography

List of references provided in class, cf. on the Moodle page of the course.

Support material: lecture slides, lab handouts, code snippets, example applications, solutions to the labs will be available through the Moodle page.

 

 

 

Websites

Moodle Link

In the programs

  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Lab on app development for tablets and smartphones
  • Practical work: 4 Hour(s) per week x 14 weeks
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Lab on app development for tablets and smartphones
  • Practical work: 4 Hour(s) per week x 14 weeks
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Lab on app development for tablets and smartphones
  • Practical work: 4 Hour(s) per week x 14 weeks
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Lab on app development for tablets and smartphones
  • Practical work: 4 Hour(s) per week x 14 weeks
  • Semester: Fall
  • Exam form: During the semester (winter session)
  • Subject examined: Lab on app development for tablets and smartphones
  • Practical work: 4 Hour(s) per week x 14 weeks

Reference week

 MoTuWeThFr
8-9     
9-10     
10-11     
11-12     
12-13     
13-14     
14-15 MED22419
MED22519
   
15-16    
16-17    
17-18    
18-19     
19-20     
20-21     
21-22     

Tuesday, 14h - 18h: Exercise, TP MED22419
MED22519