La tasca més difícil de la construcció d'un sistema d'informació o, en general, d'un sistema software, consisteix en determinar quin sistema s'ha de construir. Aquesta tasca s'anomena Enginyeria de Requisits. No hi ha cap altra tasca que tingui un impacte econòmic i social tan negatiu si es fa malament. Molts dels fracassos en el desenvolupament de sistemes s'atribueixen a no fer bé la seva enginyeria de requisits. En aquesta assignatura es presenten els conceptes, les activitats i els artefactes de l'enginyeria de requisits. S'insisteix en els aspectes que són essencials per garantir l'èxit dels projectes, principalment la definició dels objectius de les parts interessades, la formulació correcta dels requisits, i l'argumentació de satisfacció. El mètode docent de l'assignatura és de la família del PBL (Project Based Learning) i l'element central és un projecte (que varia cada curs) per al qual els estudiants, treballant en grup, n'han de fer l'enginyeria de requisits completa.
Professorat
Responsable
Maria Ribera Sancho Samso (
)
Altres
Ernest Teniente Lopez (
)
Inmaculada Ramirez Perez (
)
Manuel Rello Saltor (
)
Sergio Morales Garcia (
)
Hores setmanals
Teoria
2
Problemes
0
Laboratori
2
Aprenentatge dirigit
0
Aprenentatge autònom
6
Competències
Competències Tècniques de cada especialitat
Especialitat sistemes d'informació
CSI3 - Determinar els requisits dels sistemes d'informació i comunicació d'una organització, atenent als aspectes de seguretat, compliment de la normativa i de la legislació vigent.
CSI3.5
- Proposar i coordinar canvis per a millorar l'explotació del sistema i de les aplicacions.
CSI4 - Participar activament en l'especificació, el disseny, la implementació i el manteniment dels sistemes d'informació i de comunicació.
CSI4.1
- Participar activament en l'especificació dels sistemes d'informació i de comunicació.
Especialitat enginyeria del software
CES2 - Valorar les necessitats del client i especificar els requisits software per a satisfer aquestes necessitats, reconciliant objectius en conflicte mitjançant la cerca de compromisos acceptables, dintre de les limitacions derivades del cost, del temps, de l'existència de sistemes ja desenvolupats i de les organitzacions.
CES2.1
- Definir i gestionar els requisits d'un sistema software.
Competències Transversals
ús solvent dels recursos d'informació
G6 [Avaluable] - Gestionar l'adquisició, l'estructuració, l'anàlisi i la visualització de dades i d'informació de l'àmbit de l'enginyeria informàtica, i valorar de forma crítica els resultats d'aquesta gestió.
G6.3
- Planificar i utilitzar la informació necessària per a un treball acadèmic (per exemple, per al treball de final de grau) a partir d'una reflexió crítica sobre els recursos d'informació utilitzats. Gestionar la informació de manera competent, independent i autònoma. Avaluar la informació trobada i identificar-ne les llacunes.
Objectius
Comprendre la necessitat, els objectius i els contextos en què es realitzen les activitats de l'enginyeria de requisits.
Competències relacionades:
CSI4.1,
CES2.1,
Saber definir els objectius d'un projecte.
Competències relacionades:
CSI4.1,
CES2.1,
CSI3.5,
Saber identificar les parts interessades d'un projecte.
Competències relacionades:
CSI4.1,
CES2.1,
CSI3.5,
Comprendre què són el context del sistema, la frontera del sistema i els casos d'ús.
Competències relacionades:
CSI4.1,
CES2.1,
Saber definir un procés de negoci en un llenguatge determinat.
Competències relacionades:
CSI4.1,
CES2.1,
Comprendre la necessitat de realitzar un estat de l'art detallat de la pràctica professional en l'àmbit d'un projecte.
Competències relacionades:
CSI4.1,
CES2.1,
G6.3,
Saber realitzar un estat de l'art detallat de la pràctica professional en l'àmbit d'un projecte.
Competències relacionades:
G6.3,
Comprendre què son els escenaris i els casos d'ús d'un sistema i quines relacions hi ha entre ells.
Competències relacionades:
CSI4.1,
CES2.1,
Saber definir els casos d'ús d'un sistema usant una plantilla determinada.
Competències relacionades:
CSI4.1,
CES2.1,
Comprendre què son els requisits d'un sistema software i en quins tipus es classifiquen.
Competències relacionades:
CSI4.1,
CES2.1,
Conèixer els mètodes que hi ha per determinar els requisits i en quins contextos són útils.
Competències relacionades:
CSI4.1,
CES2.1,
Saber què són els conflictes en enginyeria de requisits, com s'han d'analitzar i com es poden resoldre.
Competències relacionades:
CSI4.1,
CES2.1,
Comprendre la necessitat de fer l'argumentació de la satisfacció dels objectius en un projecte
Competències relacionades:
CSI4.1,
CES2.1,
Saber realitzar l'argument de satisfacció dels objectius
Competències relacionades:
CSI4.1,
CES2.1,
Saber escriure l'especificació dels requisits usant una plantilla determinada
Competències relacionades:
CSI4.1,
CES2.1,
Conèixer els mètodes que hi ha per validar els requisits i en quins contextos són útils.
Competències relacionades:
CSI4.1,
CES2.1,
Saber validar una especificació de requisits mitjançant la inspecció.
Competències relacionades:
CSI4.1,
CES2.1,
Comprendre la necessitat de realitzar l'esquema conceptual.
Competències relacionades:
CSI4.1,
CES2.1,
Saber desenvolupar l'esquema conceptual partint dels requisits d'un projecte.
Competències relacionades:
CSI4.1,
CES2.1,
Saber escriure un esquema conceptual en un llenguatge executable
Competències relacionades:
CSI4.1,
CES2.1,
Comprendre les relacions entre tots els artefactes de l'enginyeria de requisits, i la necessitat de mantenir-ne la traçabilitat i la consistència.
Competències relacionades:
CSI4.1,
CES2.1,
Saber validar un esquema conceptual mitjançant la inspecció.
Competències relacionades:
CSI4.1,
CES2.1,
Continguts
Visió general de l'enginyeria de requisits
Objectius d'un projecte
Parts interessades
El sistema i el seu context
Escenaris i casos d'ús
Requisits del software
Argument de satisfacció dels objectius
Activitats en l'enginyeria de requisits: Determinació dels requisits; documentació; negociació i validació
La modelització conceptual en l'enginyeria de requisits
Desenvolupament de l'esquema conceptual
Traçabilitat dels artefactes de l'enginyeria de requisits
Validació d'esquemes conceptuals
Activitats
ActivitatActe avaluatiu
Introducció
(1) Participar activament en una classe de teoria, on s'expliquen els objectius i l'organització de l'assignatura (2 hores).
(2) Repassar els exemples de cursos anteriors, i el material docent publicats a l'Atenea (4 hores)
(2) Preparar la reunió de constitució dels grups de projecte revisant la missió del projecte (1,5 hores).
(3) Participar activament en la reunió constituent del grup de projecte, on es nomenen els càrrecs de coordinador i secretari, es comenta l'objectiu i la planificació de la feina que caldrà fer, i es comencen a explorar els objectius del projecte. També es repassa el document de bones pràctiques en l'organització i realització de reunions, que s'hauran de seguir en les reunions del curs (2 hores).
(4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:1 Continguts:
(1) Participar activament en una classe de teoria, on s'expliquen què són i com han de ser els objectius d'un projecte (2 hores). (2) Durant la setmana, realitzar un exercici sobre 'objectius de projectes' i presentar-lo via Atenea (2 hores) (3) Preparar la reunió del grup de projecte, revisant un cop més la missió publicada del projecte, els exemples de cursos anteriors i pensant quins poden ser els objectius del projecte del curs (3,5 hores). (4) Participar activament en la reunió del grup de projecte, que es centra en els objectius del projecte (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana, que tracta de les parts interessades en un projecte. (30 minuts). Objectius:23 Continguts:
Exercici sobre objectius de projectes. Objectius:2 Setmana:
2
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Requisits
(1) Participar activament en una classe de teoria, on s'expliquen què són els requisits, de quins tipus n'hi ha, i la seva relació amb els objectius del projecte (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre l'argument de satisfacció i el presenta via Atenea (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà de les parts interessades del projecte del curs i el refinament d'objectius (2,5 hores). (4) Participar activament en la reunió del grup, que es centra en els requisits que es deriven dels objectius del projecte (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:23131410 Continguts:
Exercici sobre l'argument de satisfacció Objectius:1314 Setmana:
3
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Introducció a l'enginyeria de requisits
1) Participar activament en una classe de teoria, on s'explica què és l'enginyeria de requisits i les activitats que s'hi fan (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre modelització de processos de negoci i el presenta via Atenea (2 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà de delimitar l'àmbit de la feina i els casos d'ús de negoci del projecte (3,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els temes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:45 Continguts:
S'avaluarà el document preparat pels estudiants sobre l'estat de l'art en l'àmbit del projecte. Objectius:67 Setmana:
4
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Sistema, context, casos d'ús
1) Participar activament en una classe de teoria, on s'explica què són el sistema, el context i els casos d'ús. S'introdueixen els elements bàsics per a la modelització de processos de negoci en un llenguatge (2 hores). (2) Aquesta setmana no hi ha exercici per tal de poder destinar més temps a l'estat de l'art (3) Realitzar la tasca encomanada pel grup, que tractarà de l'estat de l'art en l'àmbit del projecte (acabament) i de l'aplicació dels conceptes esmentats al projecte (5,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en l'estat de l'art i de l'aplicació dels conceptes esmentats al projecte (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:6745 Continguts:
Modelització de processos de negoci Objectius:5 Setmana:
5
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Determinació de requisits
1) Participar activament en una classe de teoria, on s'explica quins són els mètodes principals per a determinar els requisits i quan es poden aplicar (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre casos d'ús i el presenta via Atenea (2 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà dels requisits funcioanls i dels casos d'ús (3,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els requisits funcionals i casos d'ús (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:91011 Continguts:
Exercici sobre els casos d'ús essencials i reals Objectius:89 Setmana:
6
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Negociació de requisits
(1) Participar activament en una classe de teoria, on s'expliquen la necessitat i els mètodes de negociació de conflictes en l'enginyeria de requisits (2 hores). (2) Realitzar la tasca encomanada pel grup, que tractarà sobre l'acabament del lliurament preliminar de l'especificació de requisits (5,5 hores). (3) Participar activament en la reunió del grup, que tractarà sobre l'acabament del lliurament preliminar de l'especificació de requisits (2 hores). (4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:12 Continguts:
Lliurament preliminar de l'especificació de requisits Objectius:238915104 Setmana:
7
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Validació de requisits
1) Participar activament en una classe de teoria, on s'explica quins són els mètodes principals de validació de requisits (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre validació de requisits (2 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà dels requisits no funcionals del projecte (3,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els requisits no funcionals, i en la planificació de l'activitat de validació dels requisits (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:1716 Continguts:
Exercici sobre validació de requisits Objectius:1716 Setmana:
8
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Recapitulació requisits
(1) Participar activament en una classe de teoria, on es fa una recapitulació de tots els conceptes i tècniques vistos al curs fins aquest moment. (2 hores). Aquesta setmana no hi ha exercici per tal de poder destinar més temps al lliurament definitiu dels requisits. (2) Realitzar la tasca encomanada pel grup, que tractarà sobre la validació de l'especificació de requisits (5,5 hores). (3) Participar activament en la reunió del grup, que tractarà sobre la validació de l'especificació i l'acabament del lliurament definitiu de l'especificació de requisits (2 hores). (4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:238913141517212210164 Continguts:
Qüestionari sobre els aspectes bàsics de l'enginyeria de requisits. Cada estudiant ha de portar un ordinador portàtil o similar per accedir i respondre al qüestionari. Objectius:1236789131415171011164512 Setmana:
9
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
L2
Lliurament definitiu de l'especificació de requisits Objectius:2389131415171011164 Setmana:
9
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
La modelització conceptual en l'enginyeria de requisits
1) Participar activament en una classe de teoria, on s'explica quin és el paper de la modelització conceptual en l'enginyeria de requisits (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici sobre OCL executable (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà d'estudiar l'esquema conceptual de projectes anteriors i determinar què s'ha de fer en aquest cas. (2,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els aspectes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:182120 Continguts:
Exercici sobre l'OCL executable Objectius:20 Setmana:
10
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
L'esquema estructural
1) Participar activament en una classe de teoria, on es repassaran (i, si cal, s'aprofundiran) els conceptes d'esquema estructural necessaris per al projecte (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici esquemes estructurals (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà sobre la definició de l'esquema estructural del projecte. (2,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els aspectes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:2019 Continguts:
(1) Participar activament en una classe de teoria, on es repassen (i, si cal, s'aprofundeixen) els conceptes necessaris d'esquema del comportament necessaris per al projecte (2 hores). Aquesta setmana ho hi ha exercici per tal de poder destinar més temps al lliurament preliminar de l'esquema conceptual. (2) Realitzar la tasca encomanada pel grup, que consistirà en la contiunació de l'esquema estructural i de comportament del projecte (5,5 hores). (3) Participar activament en la reunió del grup, que consolidarà les feines individuals i prepararà el lliurament preliminar de l'esquema conceptual (2 hores). (4) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:2019 Continguts:
Lliurament preliminar esquema conceptual del projecte Objectius:2019 Setmana:
12
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Validació esquemes conceptuals
1) Participar activament en una classe de teoria, on s'estudiarà què és la validació d'esquemes conceptuals i els mètodes que hi ha per a fer-la (2 hores). (2) Durant la setmana, l'estudiant realitza un exercici de validació d'esquemes (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà sobre la definició de l'esquema de comportament del projecte. (2,5 hores). (4) Participar activament en la reunió del grup, que es centrarà en els aspectes indicats anteriorment (2 hores). (5) Respondre (via Atenea) al qüestionari de la setmana. (30 minuts). Objectius:212022 Continguts:
Exercici sobre validació d'esquemes Objectius:2122 Setmana:
13
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Recapitulació assignatura
1) Participar activament en una classe de teoria, on el coordinador de cada grup explica què han après d'enginyeria de requisits al curs (2 hores). (2) Durant la setmana, prepara un document explicatiu del seu grau d'assoliment dels objectius del curs (3 hores) (3) Realitzar la tasca encomanada pel grup, que tractarà de la validació de l'esquema conceptual del projecte (3 hores). (4) Participar activament en la reunió del grup, que es centrarà en la validació conjunta de l'esquema conceptual (2 hores). Objectius:1821202219 Continguts:
Acabament del lliurament definitiu de l'esquema conceptual
L'alumne realitza la part encomanada d'acabament i presentació de l'esquema conceptual, tenint en compte el resultat de la validació efectuada en la darrera reunió del grup (10 hores) Objectius:202219 Continguts:
Qüestionari sobre els aspectes bàsics de la modelització conceptual en l'enginyeria de requisits. El qüestionari es respondrà en línia en una hora de classe. Cada estudiant ha de portar un ordinador portàtil o similar per accedir i respondre al qüestionari. Objectius:1821202219 Setmana:
14
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Metodologia docent
L'assignatura s'impartirà bàsicament (però no completament) amb el mètode docent PBL (Problem Based Learning).
Hi ha una classe (convencional) de dues hores a la setmana on el professor presenta i explica els temes de l'assignatura i els aspectes que no queden prou coberts amb les altres activitats. A la classe també es presenta una bona solució a l'exercici de la setmana anterior.
La segona activitat principal del curs és la determinació dels requisits d'un sistema de programari concret. El professor planteja una situació concreta (diferent d'un curs a l'altre), per a la qual els estudiants n'han de determinar i especificar els requisits d'un sistema de programari, usant uns mètodes i llenguatges que han d'aprendre prèviament. Aquest treball es fa en grup. El nombre de persones i la composició del grup es defineix en començar el curs (no superior a cinc/sis). Cada grup nomena un coordinador. Cada grup es troba, almenys una vegada a la setmana, durant dues hores, en l'horari de les classes de laboratori. El resultat del treball del grup es presenta en cinc lliuraments durant el curs, dins de terminis prefixats a l'inici del curs.
Cada reunió de projecte consta de tres parts: En la primera part, cada estudiant explica què ha fet durant la setmana i es consolida el treball fet pels membres del grup; en la segona es treballen i discuteixen els nous aspectes del projecte que cal abordar; en la tercera es planifica què es farà la setmana següent, i qui ho farà.
La tercera activitat important del curs és la realització d'exercicis. El professor planteja diversos exercicis durant el curs. Cada estudiant ha de presentar (via Atenea) la seva pròpia solució als exercicis, en el termini indicat (aproximadament una setmana). La realització de l'exercici requereix l'aprenentatge de nous coneixements.
Nota: El mètode docent emprat en l'assignatura requereix que l'estudiant adquireixi nous coneixements de manera autònoma, usant fonts bibliogràfiques que normalment estan en anglès. És imprescindible que l'estudiant tingui un nivell d'anglès suficient per assimilar sense massa dificultats aquesta bibliografia (tècnica).
Mètode d'avaluació
L'assignatura s'avaluarà en base al Projecte, els questionaris i exercicis plantejats i als exàmens parcials, de la manera següent:
50% Projecte:
o Tots els membres d'un equip tenen la mateixa nota, llevat que es detectin incidencies rellevants.
20% Qüestionaris i exercicis individuals
o Qüestionaris: es plantegen al final de la classe de teoria
o Exercicis: l'enunciat es lliura amb una setmana d'antelació a l'entrega
La nota d'aquesta part serà la mitjana dels lliuraments realitzats per l'estudiant. Cal entregar mínim el 70% dels qüestionaris i exercicis plantejats.
30% Exàmens parcials
o Mitjana de dos exàmens parcials
La competència transversal assignada a l'assignatura, s'avalua amb valors A, B, C, D, on:
o A indica que la competència s'ha superat amb un nivell d'execel.lència
o B indica que la competència s'ha superat amb el nivell desitjat
o C indica que la competència s'ha superat amb un nivell suficient
o D indica que la competència no s'ha superat
Aquesta nota s'obté de l'avaluació del primer lliurament del projecte (Estudi de context).
- Una visió general de l'enginyeria del software, i del paper que hi juga l'Enginyeria de requisits
- Elements bàsics de la modelització conceptual en UML/OCL
- Organitzacions, entorn econòmic, presa de decisions.
- Anglès a nivell de lectura.