Logo UAB
2022/2023

Laboratori Integrat de Software

Codi: 102788 Crèdits: 9
Titulació Tipus Curs Semestre
2502441 Enginyeria Informàtica OB 3 2
2502441 Enginyeria Informàtica OT 4 2

Professor/a de contacte

Nom:
Antonio Manuel Lopez Peña
Correu electrònic:
antoniomanuel.lopez@uab.cat

Utilització d'idiomes a l'assignatura

Llengua vehicular majoritària:
espanyol (spa)
Grup íntegre en anglès:
No
Grup íntegre en català:
No
Grup íntegre en espanyol:
No

Altres indicacions sobre les llengües

Hi ha diversos professors. Un/a professor/a pot utilitzar castellà i un altre/a català per dirigir-se a l'alumnat, però tots entenen castellà i català. La documentació pot estar o bé en castellà, o en català, o en anglès.

Equip docent

Pablo Torrellas Perez
Rodolfo Alberto Guichon Aguilar

Prerequisits

Aquesta assignatura té un caràcter molt pràctic, però es basa en els fonaments teòrics impartits a d'altres assignatures de la menció en Enginyeria del Software. Per tant, si es vol cursar aquesta assignatura amb èxit, és necessari haver cursat prèviament:

(1) Requisits del software,
(2) Disseny de software,
(3) Gestió i Administració de Bases de Dades,
(4) Test i Qualitat del Software,
(5) Gestió del Desenvolupament de Software (aquesta es pot cursar paral·lelament, no és necessari haver-la cursat prèviament).

Objectius

Aquesta assignatura vol proporcionar una experiència útil a l'alumnat respecte el que es poden trobar a l’hora de desenvolupar projectes software professionalment. Per tant, des del punt de vista de l'alumnat, es tracta de desenvolupar un projecte software complet i relativament llarg. A més a més, el procés de desenvolupament serà tan o més important que el resultat final (producte software). Per tant, el software s’haurà de desenvolupar de la forma més professional possible, en particular, aplicant les millors pràctiques i treballant en equip.

Així, els objectius de l’assignatura són:

1. Treballar en un equip relativament gran, composat de sub-equips amb diferents responsabilitats.
2. Aplicar els coneixements teòrics que constitueixen les millors pràctiques del desenvolupament de software.
3. Desenvolupar un software complet, és a dir, anant des del paper en blanc fins a una aplicació, amb la seva documentació interna i externa, que satisfà els requisits d’un client.
4. Que el desenvolupament d’aquest software també serveixi per adquirir experiència en entorns SW actuals.

L’aplicació feta, i la manera en que s’ha fet, hauria de poder servir com a “carta de presentació” curricular.

Competències

    Enginyeria Informàtica
  • Adquirir hàbits de pensament.
  • Adquirir hàbits de treball personal.
  • Capacitat d'identificar, avaluar i gestionar els riscos potencials que puguin presentar-se.
  • Capacitat de solucionar problemes d'integració en funció de les estratègies, estàndards i tecnologies disponibles.
  • Capacitat per dissenyar, desenvolupar, avaluar i assegurar l'accessibilitat, l'ergonomia, la usabilitat i la seguretat dels sistemes, serveis i aplicacions informàtiques, així com de la informació que gestionen.
  • Capacitat per resoldre problemes amb iniciativa, presa de decisions, autonomia i creativitat. Capacitat per saber comunicar i transmetre els coneixements, habilitats i destreses de la professió d'enginyer tècnic en informàtica.
  • Treballar en equip.

Resultats d'aprenentatge

  1. Adaptar-se a situacions imprevistes.
  2. Assumir i respectar el rol dels diversos membres de l'equip, així com els diferents nivells de dependència de l'equip.
  3. Avaluar de manera crítica el treball dut a terme.
  4. Definir i gestionar la documentació que es genera durant el desenvolupament d'una aplicació software.
  5. Desenvolupar el pensament sistèmic.
  6. Dissenyar una arquitectura d'un sistema informàtic basat en components.
  7. Dissenyar una arquitectura que permeti solucionar de manera òptima el problema especificat, tenint en compte els riscos associats.
  8. Gestionar el temps i els recursos disponibles. Treballar de manera organitzada.
  9. Identificar, gestionar i resoldre conflictes.
  10. Planificar la integració de les diferents components desenvolupades en el procés de codificació.
  11. Prendre decisions pròpies.
  12. Resoldre problemes d'integració del software amb iniciativa i autonomia.
  13. Saber comunicar i transmetre coneixements, habilitats i destreses relatives a la integració del software.
  14. Seleccionar i utilitzar les eines CASE adequades a cada fases de desenvolupament del software.
  15. Treballar cooperativament.

Continguts

En aquesta assignatura no busquem afegir més contingut teòric al que ja es desenvolupa a les altres assignatures de la menció d’Enginyeria del Software. És a dir, ja s’assumeixen els coneixements teòrics de la captura de requisits, el disseny i codificació orientat a objecte, la gestió i administració de bases de dades, el test i qualitat del software, i la gestió del desenvolupament. Es tracta de posar tot això en pràctica per desenvolupar una aplicació concreta. Per tant, com a continguts nous hi ha dos aspectes:

1. El treball en equip: rols i responsabilitats d’un equip software, reunions, presentacions, etc.
2. Mètodes àgils de desenvolupament de software. 

Metodologia

Aquesta assignatura s’enfoca a desenvolupar una aplicació software de la forma més realista possible. Per tant, es fa un aprenentatge basat en un cas pràctic. De fet hi haurà un cas pràctic per a cada equip de pràctiques. Un equip estarà format per un conjunt d'entre 6 i 9 estudiants. D’una banda això vol dir que hi haurà molt de treball autònom, però, d’altra banda, també hi haurà molt treball d’equip. Així, la tipologia de les classes donarà suport al treball d’equip i al desenvolupament de software basat en un procés àgil. En particular, tindrem:

Classes de teoria. Estan destinades a complementar els aspectes no coberts per les altres assignatures de la menció d’Enginyeria del Software, principalment el treball en equip.

Reunions de projecte. Qualsevol equip que desenvolupi una aplicació determinada, estarà dividit en sub-equips amb diferents responsabilitats (p.e., caps de projecte, responsables de proves, responsables de disseny i codificació, etc.). Aquests sub-equips s’han de reunir i discutir l’estat del projecte des dels diferents punts de vista.

Classes de presentació. Cada equip ha de fer presentacions públiques (a la resta d'equips) regulars sobre l’estat del seu projecte.

Totes les comunicacions amb l'alumnat es faran mitjançant els mecanismes habilitats al Campus Virtual i MS Teams.

Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.

Activitats formatives

Títol Hores ECTS Resultats d'aprenentatge
Tipus: Dirigides      
Classes de teoria 15 0,6 2, 15
Presentacions 16 0,64 3, 13
Reunions de projecte 40 1,6 1, 2, 3, 4, 7, 9, 10, 12, 14, 15
Tipus: Autònomes      
Estudi pels exàmens individuals 16 0,64 3
Tasques assignades a la pràctica 134 5,36 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15

Avaluació

L’avaluació és continuada i es basarà en les notes següents:

1) Desenvolupament de l’aplicació: Cal destacar que no només es valora el resultat final, és a dir, l’aplicació en si mateixa, sinó que també es valora, i molt, el procés de desenvolupament d’aquesta. Per tant, tindrà molta importància la valoració continuada del treball mostrat a les reunions regulars de projecte i, especialment, a l’estat del desenvolupament en fites preestablertes. En particular hi ha dues avaluacions parcials referents al desenvolupament de l’aplicació. Les corresponents notes són DA1 i DA2.

2) Presentacions d’equip: En acabar el curs, l’aplicació desenvolupada i la metodologia seguida per fer-ho s’exposaran a tota la classe i al professorat mitjançant una “presentació final” que serà avaluada. Noteu que s’avalua la presentació com a tal. La nota corresponent és PE.

3) Avaluacions individuals: Es faran avaluacions individuals per tal de conèixer el grau de participació real de cada estudiant a l’aplicació que desenvolupa el seu equip. En particular hi ha dues avaluacions parcials d’aquest tipus. Les corresponents notes són I1 i I2.

Per tal d’aprovar l’assignatura, s’han d’aprovar per separat tots aquests apartats. És a dir, DA1>=5 i DA2>=5, PE>=5, AI1>=5, i AI2>=5, on DA1, DA2, PE, I1, i I2 són notes sobre 10. Si això es compleix, llavors la nota final, NF, es calcula com:

[Oportunitat 1] NF =  0.1 DA1 + 0.5 DA2 + 0.15 PE + 0.1 I1 + 0.15 I2 + Extra

ATENCIÓ: En casos extrems en que un/a estudiant sistemàticament no fa la seva feina o té una contribució marginal (I1<5 o I2<5), l'estudiant tindrà l’assignatura suspesa. Si I1<5 però I2>=5, l'estudiant pot tenir una segona oportunitat d’aprovar l’assignatura. En particular, el professorat avaluarà amb l’equip corresponent si, encara que l’estudiant va començar malament l’avaluació continuada (I1<5) la resta del curs ha millorat significativament (I2>=5). Si I1>=5 però I2<5, l'estudiant pot tenir una segona oportunitat d’aprovar l’assignatura. Es procedirà com al cas anterior per tal de discernir si, encara que l’estudiant ha acabat el curs pitjor del que l’havia començat (I2 <5<=I1), s’han donat circumstancies que fan possible que l’estudiant aprovi l’assignatura de forma merescuda.

ATENCIÓ: Si PE<=5 i durant el curs l’equip ha realitzat les seves presentacions regulars, llavors hi haurà una segona oportunitat per fer la presentació d’equip.

ATENCIÓ: Si DA1<5 o DA2<5, tots els membres de l’equip estaran suspesos. Si DA1<5 però DA2>=5, el professorat valorarà si l’equip mereix una segona oportunitat. Aquesta segona oportunitat consistiria en anular la condició DA1>=5. Si DA2<5, no hi ha segona oportunitat.

Si, finalment, un/una estudiant suspèn, llavors la seva nota final (NF) serà max(0, min(I1,I2,PE,DA1,DA2)). S’entén que els/les estudiants “No Avaluables” només són aquells/es que no s’han sotmès a cap activitat d’avaluació.

El nombre de MH (Matrícula d'Honor) que es pot concedir és proporcional al nombre d'estudiants matriculats. Per poder obtenir MH l'estudiant ha de complir NF>9.5 al moment de l'Oportunitat 1. Diguem que es poden atorgar "N" MH. A partir d'aquí, si hi ha més de N candidats/es, el professor examinarà la trajectòria dels/de les estudiants candidats/es a MH i seleccionarà els/les N. Per tant, és el professor qui avalua les evidències que consideri més oportunes (treball continuat, rellevància dins l'equip, NF, etc.) per prendre la decisió final.

Les aplicacions que es desenvolupen són proposades per l'alumnat de forma individual i surten d'un procés de selecció basat en presentacions i votacions. Per tant, durant aquesta primera fase, les competències transversals T01 i T02 són molt importants. De fet, l’estudiant que proposa una aplicació tal que passa tot el procés (és a dir, esdevé una aplicació que es portarà a terme per un equip), és nomenat/da cap d'equip i rep 1 punt "Extra" (veure NF en Oportunitat 1). Parlant de competències transversals, noteu que tota l'assignatura està inherentment lligada a T03. DA1, DA2, i PE quantifiquen aquesta competència en particular. A més a més, el cap d'equip pot distribuir 1 punt "Extra" (veure NF en Oportunitat 1) entre els membres de l'equip amb una contribució més significativa vista des de dins de l'equip. 

Cal destacar també que els/les repetidors/es no rebran cap tracte especial, han de fer l'assignatura com la resta d'estudiants.

Sense perjudici d'altres mesures disciplinàries que s'estimin oportunes, i d'acord amb la normativa acadèmica vigent, es qualificaran amb un zero les irregularitats comeses per l'estudiant que puguin conduir a una variació de la qualificació d'un acte d'avaluació. Per tant, plagiar, copiar o deixar copiar una pràctica o qualsevol altra activitat d'avaluació implicarà suspendrela amb un zero i no es podrà recuperar en el mateix curs acadèmic. Si aquesta activitat té una nota mínima associada, aleshores l'assignatura quedarà suspesa.

 

Activitats d'avaluació

Títol Pes Hores ECTS Resultats d'aprenentatge
Avaluacions individuals (I1 i I2) 25% (I1: 10% , I2: 15%) 2 0,08 4, 6, 7, 10, 12, 13, 14
Desenvolupament de l'aplicació (DA1 i DA2) 60% (DA1: 10% , DA2: 50%) 0 0 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
Presentació d'Equip (PE) 15% 2 0,08 13

Bibliografia

A la bibliografia pròpia de la resta de les assignatures de la menció d’Enginyeria del Software, s’ha d’afegir: "Crystal Clear: A Human-Powered Methodology for Small Teams",  A. Cockburn.

 

Programari

Cada equip buscarà el que més li convingui per desenvolupar la seva aplicació.