Identifying Data 2014/15
Subject (*) Programación de Sistemas Code 614G01058
Study programme
Grao en Enxeñaría Informática
Descriptors Cycle Period Year Type Credits
Graduate 1st four-month period
Fourth Obligatoria 6
Language
Spanish
Prerequisites
Department Electrónica e Sistemas
Coordinador
Vazquez Regueiro, Carlos
E-mail
carlos.vazquez.regueiro@udc.es
Lecturers
Amor Lopez, Margarita
Vazquez Regueiro, Carlos
E-mail
margarita.amor@udc.es
carlos.vazquez.regueiro@udc.es
Web
General description Programación de sistemas encaixados e dispositivos móbiles

Study programme competencies
Code Study programme competences
A32 Capacidade de desenvolver procesadores específicos e sistemas embarcados, así como desenvolver e optimizar o sóftware dos ditos sistemas.
A34 Capacidade de deseñar e implementar sóftware de sistemas e de comunicacións.
B1 Capacidade de resolución de problemas
B3 Capacidade de análise e síntese
C2 Dominar a expresión e a comprensión de forma oral e escrita dun idioma estranxeiro.
C3 Utilizar as ferramentas básicas das tecnoloxías da información e as comunicacións (TIC) necesarias para o exercicio da súa profesión e para a aprendizaxe ao longo da súa vida.
C4 Desenvolverse para o exercicio dunha cidadanía aberta, culta, crítica, comprometida, democrática e solidaria, capaz de analizar a realidade, diagnosticar problemas, formular e implantar solucións baseadas no coñecemento e orientadas ao ben común.
C6 Valorar criticamente o coñecemento, a tecnoloxía e a información dispoñible para resolver os problemas cos que deben enfrontarse.
C7 Asumir como profesional e cidadán a importancia da aprendizaxe ao longo da vida.
C8 Valorar a importancia que ten a investigación, a innovación e o desenvolvemento tecnolóxico no avance socioeconómico e cultural da sociedade.

Learning aims
Subject competencies (Learning outcomes) Study programme competences
Ability to develop Android applications in mobile devices, specific processors and embedded systems A32
A34
B1
B3
C2
C3
C4
C6
C7
C8
Ability to develop Android applications with capacity of communications and interaction A32
A34
B1
B3
C2
C3
C4
C6
C7
C8

Contents
Topic Sub-topic
1.1. Introduction to Systems Program Introduction to Systems Program
Subject presentaction
1.2. Introduction to Android History and evolution
Architecture and characteristics
Main components
1.3. Development tools SDK and Android Studio instalation
Basic application and application structure
Debugging
Resources
2.1. Activities and Intents Cycle of life
Manifest
Intents, explicit and implicit
Parameters exchange
2.2. User interface Layouts
Views
Events
2.3. Fragments Concept
Fragments statics and dynamics
Fragments communication
2.4. Working in background Local Services
Bound Services
Broadcast Receivers
Processes and Threads
Asynchronous threads
3.1. Interacting with user Menu and Action Bar
Contextual menu
Notifications
Dialogs
Lists and Adapters
3.2. Data persistence Preferences
Files internal and external
Data bases
Content Providers
Loaders
3.3. Interconnection Sockets
Connection by Post
Protocols: XML y JSON
3.4. AppWidgets and Distribution AppWidgets
Publication
Monetization and Publicity
Optimization
4.1. System services and Sensors System services
Connectivity
Wifi and Phone Services
Sensors
4.2. Localization and Maps Localization
Maps (Google Maps library)
Localization Services
4.3. Multimedia and Camera Multimedia reproduction
Audio Manager
Camera
4.4. Animations and Graphics Animations
Graphics
Multiple events

Planning
Methodologies / tests Ordinary class hours Student’s personal work hours Total hours
Laboratory practice 14 35 49
Supervised projects 7 24.5 31.5
Mixed objective/subjective test 2 0 2
Guest lecture / keynote speech 21 42 63
 
Personalized attention 4.5 0 4.5
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies Description
Laboratory practice Students will develop practices in the laboratory for learning programming mobile devices with Android.
A series of practices following a script to familiarize the student with the concepts and basic procedures of Android programming will be raised.
It will also promote the expansion and improvement of the basic features of each proposed practice as well as the discussion and resolution of problems.
Practices consist of a face-to-face part (which is delivered to the end) and other non-Presential delivered before the next class of laboratory.
Part-time students could present all the practices of non Presential form.
Supervised projects Works (applications) will be proposed to make students deepen in topics covered by the course and explore new knowledge. It will be valued especially that the application is functional and robust.
Each work will be developed by a small number of students (typically between 2 and 4), so that coordination and working methodology is important.
Ideas and problems will be discussed primarily during the hours tutoring in small groups.
A report of follow-up in each phase of development will also be required.
Mixed objective/subjective test Examination of the contents of the subject that will combine theory with problem solving questions
Guest lecture / keynote speech Didactic exhibition of the theoretical content of the subject using slides and other ICT resources.
Also, certain basic application will be explain in detail so that students can implement them and tested during laboratory practices.

Personalized attention
Methodologies
Guest lecture / keynote speech
Laboratory practice
Supervised projects
Description
Keynote session: attend and answer questions from students in relation to the theoretical material exposed in the lectures.
Laboratory practice: attend and answer questions from students in relation to proposed or carried out in the laboratory practices.

Supervised projects: attend and answer questions from students in relation to the proposed projects.

Assessment
Methodologies Description Qualification
Laboratory practice Evaluation of the work done by the student in the laboratory practice by means of mixed tests. 40
Supervised projects Evaluation of the work done by the student in the supervised projects by means of mixed tests. 20
Mixed objective/subjective test The knowledge of the subject will be valued (including the problem solving) by means of mixed tests. 40
 
Assessment comments

The subject is approved by obtaining at least 50% of the rating.

It is necessary to get more than 30% of the note in each section: laboratory practice, supervised projects and mixed practice.


Sources of information
Basic Wie Meng Lee (2012). Android 4 Desarrollo de aplicaciones. Wrox (Anaya Multimedia)
Lauren Darcey y Shane Conder (2012). Android 4. Programación. Anaya
Erik Hellman (2013). Android Programming: Pushing the Limits. Wiley
Scott McCracken (2012). Android. Curso de desarrollo de aplicaciones. Inforbook
Jesús Tomás Gironés (2012). El gran libro de Android. Marcombo
Joan Ribas Lequerica (2014). Manual imprescindible de desarrollo de aplicaciones para Android. Anaya Multimedia
Reto Meier (2012). Professional Android 4 Application Development. WRox

Complementary Lauren Darcey y Shane Conder (2012). Android Application development in 24 hours. SAMS
Joshua J. Drake , Zach Lanier , Collin Mulliner , Pau Oliva Fora, Stephen A. Ridley , Georg Wichersk (2014). Android Hacker's Handbook. Wiley
José Enrique Amaro Soriano (2012). Android. Programación de dispositivos móviles a través de ejemplos. Marcombo
Joan Ribas Lequerica (2012). Desarrollo de aplicaciones para Android. Anaya
Anders Goransson (2014). Efficient Android Threading: Asynchronous Processing Techniques for Android Applications. O'Reilly Media


Recommendations
Subjects that it is recommended to have taken before

Subjects that are recommended to be taken simultaneously
Sistemas Empotrados/614G01060

Subjects that continue the syllabus
Sistemas Operativos/614G01016
Concorrencia e Paralelismo/614G01018

Other comments


(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.