Grau en Enginyeria de Sistemes Audiovisuals + Grau en Enginyeria Multimèdia

Doble Grau en Enginyeria de Sistemes Audiovisuals i Enginyeria Multimèdia

La Salle Campus Barcelona t'ofereix 5 dobles titulacions en l'àmbit de les Enginyeries TIC. Amb els dobles graus podràs finalitzar els estudis universitaris en 5 anys acadèmics amb dues titulacions oficials de grau

Televisió interactiva

Descripció
L'assignatura de televisió interactiva es desenvolupa al voltant de dos projectes: el desenvolupament d'una aplicació multimèdia Android i el desenvolupament d'una app multimèdia a iOS. En tots dos projectes els estudiants treballaran en grups de màxim 3 persones que ells mateixos decidiran. Per al desenvolupament dels projectes s'explicaran conceptes clau, es facilitaran recursos i es podran desenvolupar demostracions a classe.
Tipus assignatura
Tercer - Obligatoria
Semestre
Primer
Curs
3
Crèdits
3.00
Coneixements previs

Disseny i programació orientada a objectes.
Televisió Digital: Recomanable, però no imprescindible.
Bases de dades: Recomanable, però no imprescindible.

Objectius

L'assignatura té dos objectius ben diferenciats:

1. Guiar l'alumnat en l'aprenentatge de dues de les tecnologies de programació multimèdia més utilitzades: iOS+Android

2. L'adquisició per part de l'alumnat d'una autonomia suficient desenvolupar un sistema robust i estable per poder posar-se en producció.

Continguts

L'assignatura avançarà de manera progressiva, centrada en el desenvolupament dels projectes pràctics. L'execució completa dels projectes es planteja en un conjunt de catorze sessions, durant les quals l'alumne, guiat pel professor, adquirirà els coneixements tècnics i metodològics necessaris per completar una aplicació funcional tant per a Android (React Native) com per a iOS (SwiftUI).

Sessió 1 : Explicació de l'assignatura i instal·lació de l'entorn Android
La primera sessió serveix per introduir l'assignatura, presentar els objectius generals i explicar la metodologia de treball basada en el desenvolupament progressiu d?un projecte pràctic. Els estudiants configuren l'entorn de treball necessari per al desenvolupament en Android, instal·lant Android Studio i comprovant el funcionament de l'emulador. Es fa una primera presa de contacte amb el projecte base i amb la seva estructura interna.

Sessió 2 : Introducció als elements bàsics de React Native
Durant aquesta sessió s'expliquen els conceptes fonamentals de React Native: components, estilització, jerarquia d'elements i gestió bàsica de l'estat. Els estudiants creen les primeres pantalles de prova i aprenen a estructurar un projecte seguint bones pràctiques. Es reforça la comprensió del flux de dades i la modularització del codi.

Sessió 3 : Hooks
En aquesta sessió s'aprofundeix en els React Hooks, com ara useState, useEffect i altres utilitats per gestionar l'estat i els cicles de vida dels components funcionals. Els estudiants apliquen aquests conceptes al seu projecte per millorar la gestió de dades i la reactivitat de la interfície.

Sessió 4 : Comunicació amb l'API i visualització dels vídeos
S?introdueixen les tècniques de comunicació amb APIs externes mitjançant fetch o llibreries específiques. Es treballa la descàrrega de dades i la seva representació visual dins de l'aplicació. A més, s'habilita la funcionalitat de reproducció de vídeo, entenent la diferència entre descàrrega progressiva i reproducció en temps real (streaming). Aquesta sessió consolida la integració entre la capa de dades i la capa de presentació.

Sessió 5 : Testing i treball del projecte
Aquesta sessió combina una introducció a les tècniques bàsiques de testing amb una part pràctica dedicada al desenvolupament del projecte. Els alumnes aprenen a verificar el funcionament correcte dels components i a detectar errors en la seva aplicació. S'inicia també el treball amb bases de dades remotes i la interacció entre dispositius.

Sessió 6 : Treball del projecte
Sessió completament pràctica dedicada al desenvolupament i consolidació del projecte Android. Els estudiants continuen implementant funcionalitats, ajustant la interfície i preparant la versió preliminar de l'aplicació per a la presentació. Es fomenta la col·laboració en equip i la gestió d'incidències.

Sessió 7 : Presentació de l'aplicació Android
Cada grup presenta la seva aplicació Android davant de la classe, explicant el procés de desenvolupament, les funcionalitats implementades i les decisions tècniques preses. Es valoren aspectes com la usabilitat, el disseny visual i l'estabilitat del producte. Aquesta sessió marca el tancament del bloc dedicat a React Native i Android.

Sessió 8 : Introducció a Xcode i fonaments de Swift
S'inicia el bloc dedicat al desenvolupament per a iOS. Es presenta el nou projecte que es desenvoluparà i s'exposen els criteris d'avaluació. Els estudiants instal·len i configuren Xcode, coneixen la seva interfície i exploren els recursos disponibles. També s'introdueixen els fonaments del llenguatge Swift i es proposen activitats pràctiques guiades per familiaritzar-se amb la sintaxi i les estructures bàsiques.

Sessió 9 : SwiftUI (I): Estructures bàsiques i components visuals
Primera sessió dedicada a SwiftUI. Es treballen els fonaments del framework declaratiu per a la creació d'interfícies: estructures bàsiques, declaració de vistes, modificadors i composició visual. Es presenten exemples pràctics i els estudiants reprodueixen petites interfícies per comprendre com funciona la relació entre el codi i el resultat visual.

Sessió 10 : SwiftUI (II): MVVM, Lists i navegació entre pantalles
Segona sessió dedicada a aprofundir en SwiftUI. Es presenta el patró arquitectònic MVVM per separar la lògica i la interfície, s?introdueixen les Lists i s'aprèn a crear fluxos de navegació entre pantalles. Els alumnes realitzen activitats pràctiques per consolidar els coneixements i preparar l'estructura base del seu projecte iOS.

Sessió 11 : Connexió amb l?API i treball del projecte
S'explica com obtenir dades externes mitjançant una API, analitzant com fer sol·licituds HTTP i decodificar la informació en format JSON. Els estudiants implementen aquestes funcionalitats dins del seu projecte iOS, integrant la informació real amb la interfície gràfica. La sessió finalitza amb treball pràctic orientat a consolidar la comunicació amb serveis web.

Sessió 12 : Gestió d'errors i treball del projecte
La sessió se centra en el maneig d'errors en Swift i SwiftUI. Es treballen conceptes com el do-catch, el llançament d'excepcions i la gestió d'errors de xarxa. Els alumnes apliquen aquestes tècniques al seu projecte i continuen avançant en la implementació de funcionalitats personalitzades.

Sessió 13 : Treball del projecte
Sessió pràctica de tancament dedicada a polir la versió final de l'aplicació i preparar-la per a la presentació. Els estudiants revisen la usabilitat, corregeixen incidències i asseguren la coherència entre totes les pantalles i funcionalitats. També s'avaluen possibles millores derivades de les proves d'usuaris.

Sessió 14 ? Presentació de l'aplicació iOS
Sessió final del curs dedicada a la presentació de les aplicacions iOS desenvolupades pels diferents grups. Cada equip exposa les seves solucions, els reptes trobats i les funcionalitats diferencials que han implementat. Es valora la qualitat tècnica, l'originalitat i la capacitat d'explicar el procés complet de desenvolupament i testing.

Metodologia

L'assignatura combina diferents estratègies d'aprenentatge actiu amb l'objectiu de fomentar l'autonomia, la participació i l'aplicació pràctica dels continguts. A continuació es descriuen les principals dinàmiques de treball que s'utilitzaran al llarg del curs:

D1. Classes teòriques
Les classes teòriques serviran per consolidar i aprofundir en els conceptes que els alumnes hauran treballat prèviament mitjançant la metodologia Flipped Classroom. Durant aquestes sessions, el professorat reforçarà els aspectes més rellevants, aclarirà dubtes i establirà connexions entre els diferents continguts, tot promovent la participació i la reflexió crítica.

D2. Classes de problemes i exercicis
Al llarg de l'assignatura es proposaran exercicis individuals amb la finalitat que l'alumne pugui aplicar de manera pràctica els coneixements adquirits. Aquests exercicis permetran detectar possibles dificultats de comprensió i aprofundir en els conceptes tècnics treballats a classe.

D3. Flipped Classroom
Part dels continguts de l'assignatura s'aprendran de manera autònoma per part de l'alumne, seguint les orientacions i recursos facilitats pel professorat. Aquesta metodologia fomenta la responsabilitat individual i la preparació prèvia abans de les sessions presencials, les quals es destinaran principalment a resoldre dubtes, validar els coneixements i ampliar la informació mitjançant exemples pràctics.

D4. Peer Instruction
Per afavorir la comprensió profunda dels continguts i l'aprenentatge col·laboratiu, els estudiants hauran d'explicar-se entre ells els conceptes treballats, exposant la seva pròpia interpretació i contrastant-la amb la dels companys. Aquesta dinàmica permet detectar errors conceptuals, reforçar el raonament propi i consolidar els coneixements de manera activa.

D5. Aprenentatge Basat en Projectes (ABP)
Com a eix central de l'assignatura, els estudiants desenvoluparan un projecte pràctic que els permetrà posar en ús tots els conceptes apresos i descobrir-ne de nous de manera aplicada. El projecte es realitzarà per fases, seguint una progressió guiada pel professorat, i culminarà amb la presentació d'una aplicació funcional. Aquesta metodologia integra la teoria amb la pràctica i potencia competències com el treball en equip, la resolució de problemes i la creativitat.

Avaluació

L'avaluació de l'assignatura es basa en un sistema continu orientat al desenvolupament pràctic i a la demostració de competències tècniques i metodològiques. L'estudiant haurà de completar amb èxit les diferents activitats d'aprenentatge i els projectes finals per superar l'assignatura.

SA1. Projecte final
L'assignatura consta de dos projectes finals, un per cadascuna de les parts del curs:
1.-Projecte Android, desenvolupat mitjançant la tecnologia React Native.
2.-Projecte iOS, desenvolupat amb Swift i SwiftUI.

L'entrega d'ambdós projectes és obligatòria per poder aprovar l'assignatura. Cada projecte haurà de demostrar el domini dels continguts treballats, la capacitat d'aplicació pràctica i la integració de les diferents funcionalitats sol·licitades.

SA2. Entrevistes i presentacions de validació
Es realitzaran dues sessions presencials de validació, una per a cada projecte final (Android i iOS), en què els estudiants presentaran i explicaran el desenvolupament del seu projecte davant del professorat. Aquestes sessions serviran per avaluar la comprensió global del treball realitzat, la justificació de les decisions tècniques i la capacitat comunicativa de l'alumne o de l?equip.

A més, es podran programar entrevistes individuals en funció de les dinàmiques de treball dels equips o en convocatòries extraordinàries, amb l'objectiu de verificar l'autoria i el grau d'implicació en el projecte.

SA3. Exercicis individuals
Al llarg de l'assignatura, els estudiants realitzaran diversos exercicis individuals i activitats a l'aula orientats a reforçar i aplicar els conceptes teòrics i pràctics.Aquests exercicis contribuiran a l'avaluació contínua i serviran per mesurar el progrés i la comprensió dels continguts.

Càlcul de la qualificació final

Convocatòria ordinària: Nota final = 50% Nota part Android + 50% Nota part iOS
Important: Per superar l'assignatura, cal obtenir una nota mínima de 5 tant a la part d'Android com a la d'iOS. En cas que una de les parts no arribi a la nota mínima, l'alumne haurà d'anar a la convocatòria extraordinària corresponent a la part suspesa.

Nota part Android / iOS = 60% Projecte + 40% Avaluació contínua de l'alumne
Avaluació contínua de l?alumne = 90% Exercicis i treballs a l?aula + 10% Assistència

Convocatòria extraordinària: Nota final = 50% Nota part Android + 50% Nota part iOS

Nota part Android / iOS (màxim 5) = 100% Entrega del projecte

En la convocatòria extraordinària, la nota màxima possible per part serà 5, i només es valorarà la nova entrega del projecte.

Criteris avaluació

- Ús correcte de les eines ofimàtiques.
- Ús correcte dels entorns i APIs de programació, tant d'alt com de baix nivell.
- Ús de les metodologies àgils de gestió de projectes.
- S'han adquirit els coneixements mínims sobre els conceptes i tecnologies de televisió interactiva vists a les classes teòriques.
- L'alumne sap treballar en grup.
- L'alumne sap fer presentacions en públic.
- L'alumne sap aplicar els conceptes teòrics al desenvolupament pràctica d'una aplicació de televisió interactiva.

Bibliografia bàsica

Introducción a Android studio : https://developer.android.com/studio/intro?hl=es-419

React documentation : https://react.dev/learn

React native documentation : https://reactnative.dev/

Swift documentation : www.swift.org

SwiftUI documentation: https://developer.apple.com/documentation/SwiftUI

Apple developers documentation : https://developer.apple.com/

Material complementari