Que estàs buscant?
L'idioma d'impartició principal a classe és el català.
Tanmateix:
- Tot el codi exposat està en anglès
- Les eines usades i material addicional estan en anglès,
- Tot el codi que s'entregui ha d'estar en anglès. Examens i pràctiques que consisteixin en redactar han d'estar o en català o castellà
B2_Que els estudiants sàpiguen aplicar els seus coneixements a la seva feina o vocació d'una forma professional i tinguin les comptències que demostren mitjançant l'elaboració i defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi
B4_Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tan especialitzat com no especialitzat
B5_Que els estudiants hagin desenvolupat aquelles habilitats d'aprenentatge necessàries per emprendre estudis posteriors amb un alt grau d'autonomia
EIS1_Capacitat per a desenvolupar, mantenir i avaluar serveis i sistemes software que satisfacin tots els requisits de l'usuari i que es comportin de forma fiable i eficient, siguin assequibles de desenvolupar i mantenir i compleixin normes de qualitat, aplicant les teories, principis, mètodes i pràctiques de l'enginyeria del software
EIS2_Capacitat per a 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, dins de les limitacions derivades del cost, del temps, de l'existència de sistemes ja desenvolupats i de les pròpies organitzacions
EIS3_Capacitat per donar solució a problemes d'integració en funció de les estratègies, estàndards i tecnologia disponibles
EIS4_Capacitat d'identificar i analitzar problemes i dissenyar, desenvolupar, implementar, verificar i documentar solucions software sobre la base d'un coneixement adequat de les teories, models i tècniques actuals
EIS5_Capacitat d'identificar, avaluar i gestionar els riscos potencials associats que es puguin presentar
EIS6_Capacitat per a dissenyar solucions apropiades en un o més dominis d'aplicació, utilitzant mètodes de l'enginyeria del software que integren aspectes ètics, socials, legals i econòmics
ESI2_Capacitat per determinar els requisits dels sistemes d'informació i comunicació d'una organització, atenent a aspectes de seguretat i compliment de la normativa i legislació vigent
ESI3_Capacitat per participar activament en l'especificació, disseny, implementació i manteniment dels sistemes d'informació i comunicació
T1_Que els estudiants coneixin un tercer idioma, que serà preferentment l'anglès, amb un nivell adequat de forma oral i per escrit, d'acord amb les necessitats que tindran les graduades i els graduats a cada titulació
T2_Que els estudiants tinguin capacitat per a treballar com a membres d'un equip interidisciplinar ja sigui com un membres més, o realitzant tasques de direcció amb la finalitat de contribuir a desenvolupar projectes amb pragmatisme i sentit de la responsabilitat, assumint compromisos tenint en compte els recursos disponibles
Aquest mòdul amplia els fonaments d'enginyeria de software que els estudiants ja tenen — extracció de requisits, modelatge UML, disseny de software i els patrons de disseny del Gang-of-Four — cap a la pràctica de construir software juntament amb agents d'IA de codificació. Els estudiants aprenen a tractar les especificacions, els models de domini i els artefactes d'instrucció per a agents com a lliurables d'enginyeria de primer ordre, i a aplicar el Desenvolupament Dirigit per Especificacions (SDD), el Disseny Dirigit pel Domini (DDD) i les arquitectures de bucle agèntic per produir software la qualitat del qual es pugui verificar en lloc de donar-se per suposada. L'èmfasi al llarg de tot el mòdul recau en l'avaluació crítica de la sortida dels agents: els estudiants han de ser capaços d'explicar què ha fet un agent, per què podria estar equivocat i com detectar-ho.
En finalitzar aquest mòdul, els estudiants seran capaços de:
1. Introducció a l'Enginyeria de Software Nativa en IA
1.1 L'Evolució del Desenvolupament de Software
1.2 IA per al Desenvolupament de Software
1.3 Responsabilitats Humanes vs. IA
2. Especificacions de Comportament amb Gherkin
2.1 Per Què Especificacions de Comportament?
2.2 El Llenguatge Gherkin
2.3 Escriure Especificacions d'Alta Qualitat
2.4 Gherkin com a Especificació per a IA
3. Domain Driven Design per a la IA
3.1 Per Què Importen els Models de Domini
3.2 Ubiquitous Language
3.3 Conceptes Fonamentals del DDD
3.4 Disseny Estratègic
3.5 DDD i IA
4. Specification Driven Development
4.1 Dels Requisits a les Especificacions
4.2 Specification Driven Development
4.3 Especificacions Orientades a la IA
4.4 Qualitat de l'Especificació
5. Enginyeria de Context
5.1 El Context com a Artefacte de Software
5.2 Estructuració de Projectes d'IA
5.3 agent.md
5.4 Enginyeria de Prompts
6. Agents d'IA i Desenvolupament Agèntic
6.1 Què És un Agent d'IA?
6.2 Arquitectura d'Agents
6.3 Bucles d'Agent
6.4 Sistemes Multiagent
7. Proves i Verificació amb IA
7.1 Les Proves en el Desenvolupament Assistit per IA
7.2 TDD Humà vs. TDD Natiu en IA
7.3 Generació de Proves
7.4 Verificació Contínua
8. Garantia de Qualitat del Software Generat per IA
8.1 Revisió de Codi Generat per IA
8.2 Validació Arquitectònica
8.3 Qualitat del Codi
8.4 Seguretat i Fiabilitat
8.5 El Futur de l'Enginyeria de Software Nativa en IA
La nota final es calcularà amb les qualificacions de les activitats ponderades de la forma següent:
· Examen (EX): 60%
· Pràctiques (PR): 40%
Per poder superar l'assignatura és necessari que tant EX com PR siguin iguals o superiors a 5 (s'ha d'aprovar teoria i pràctica per separat). En aquest cas la nota de final NF serà la ponderació segons com està descrit més amunt (40% PR, 60% EX). En cas contrari serà la mínima d'elles.
Només es podrà recuperar l’examen (EX) en una única prova de tota l’assignatura (les pràctiques no es poden recuperar). En cas de recuperació, el 60% de la nota final de l’assignatura serà la més gran entre l'examen de recuperació ER i l'obtinguda a EX.
Per poder realitzar l'examen de recuperació l’estudiant haurà de complir les condicions següents:
Nota sobre el plagi i l'ús d'IA generativa
L’ús d’intel·ligències artificials generatives (IAGs) s’ha de limitar a aquells aspectes que no són fonamentals en el context de l’assignatura. Es poden utilitzar, de manera crítica, com a mecanisme per a resoldre dubtes sobre la matèria i/o per a millorar la redacció de documents lliurables i/o com ajut en la generació de codi de caràcter auxiliar que queda fora de l’abast dels temes de l’assignatura. En el segon cas (millora de la redacció) caldrà explicitar en el document la participació d’IAG en la redacció. En el darrer cas (generació de codi) serà imprescindible esmentar la seva naturalesa de “generat mitjançant IAG” explicitant-ne el model utilitzat i el prompt subministrat, fins i tot si ha estat posteriorment personalitzat i/o modificat. Les IAGs no podran ser utilitzades per a generar codi de programació, ni tan sols en forma de fragments, quan aquest codi quedi dins de l’abast dels temes de l’assignatura i/o tingui caràcter avaluable. Aquesta prohibició es manté fins i tot si el codi és posteriorment personalitzat i/o modificat. Davant dels dubtes respecte de la legitimitat o no de la utilització d’IAGs cal contactar, a priori, amb el professorat de l’assignatura.
Context Engineering for Modern AI: Strategies for Precision Prompting, Memory Management, and Reliable Agent Workflows. Craig Landford. Desembre 2025
Beck, Kent (2002). Test Driven Development: By Example. Addison-Wesley. ISBN 9780321146533
Clean Agile: Back to Basics
Robert C. Martin, Person, ISBN 9780135781869
Clean Craftsmanship: Disciplines, Standards, and Ethics
Robert C. Martin, Person, ISBN 9780136915713
Khorikov, Vladimir (2020). Unit Testing: Principles, Practices, and Patterns. Manning Publications.
Larman, Craig. Applying UML and patterns: an introduction to analysis and object oriented design and the unified process. 3rd edition. Prentice Hall, 2005. ISBN9788420534381.