Professor
coordinador: Joan Fàbregas
(fabregas@eupmt.cat)
Tipus
d’assignatura: Troncal
Nivell: 1B
Càrrega lectiva: 7.5 crèdits (6 de teoria/aplicació i 1.5 de
laboratori) / 6 crèdits ECTS
Recomanacions: Estar cursant o haver cursat les assignatures “Metodologia de la Programació” i “Organització Empresarial”.
Organització de
la docència:
Teoria/aplicació: 3 hores/setmana x 15 setmanes
Laboratori: 2 hores/quinzena x 15 setmanes
En aquesta assignatura s’obté una visió general de l'enginyeria del software, les propietats desitjables de les especificacions i disseny del software i l'existència de diferents models i mètodes per dur-les a terme.
En finalitzar el curs, l’estudiant serà capaç de:
· Explicar una visió inicial del procés de l'enginyeria del software.
· Reconèixer les propietats desitjables de les especificacions.
· Escriure especificacions orientades a objecte amb la notació UML.
· Analitzar si les especificacions són consistents i completes.
· Aplicar alguns dels patrons de disseny del Larman.
En aquesta assignatura es treballa la següent competència transversal:
· Dirigir i col·laborar en equips de treball.
· Enginyeria del Software 1. Joan Fàbregas, 2008. Publicacions de l’EUPMt
· UML y patrones. Introducción al análisis y diseño orientado a objetos. Larman, C. Prentice-Hall 2002
·
Ingeniería del
Software: Un enfoque práctico
(6ª edición). Pressman, R.
S. McGrawHill, 2006
·
Software
Engineering. Sommerville,
I. Addison-Wesley 2001
·
UML. El
lenguaje unificado de modelado 2ª Edición. Rumbaugh, J., Jacobson, I., Booch, G. Addison-Wesley 2006
· Exercicis fets a classe o a casa i lliurats pels estudiants (individuals i en grup) 30%.
· Examen parcial d’anàlisi 20% i examen parcial de disseny 20%.
· Nota de pràctiques (2 casos d’estudi en grup) 30%.
· L’assignatura no preveu un examen final.
Programa de teoria
Tema 1. Introducció a l'enginyeria del software
1.1
Què és l'enginyeria del software?
1.2
Com és un bon sistema informàtic?
1.3
Característiques de qualitat del software
1.4
Disciplines del procés
1.5
Diferències amb altres enginyeries
Tema 2. Requeriments
2.1
Definició, qualitats i tipologia
2.2
Casos d’Ús
2.3
Altres requeriments
Tema 3. Model del Domini
3.1
Conceptes bàsics: classes, associacions i atributs
3.2
Agregació i composició
3.3
Classe associativa
3.4
Jerarquia de classes
3.5
Guies de modelat
Tema 4. Model de disseny: realització dels casos d’ús
4.1
Dels requeriments al disseny
4.2
Diagrames d’interacció
4.3
Diagrama de seqüència del sistema
4.4
Patrons GRASP
4.5
Diagrama de classes de disseny
Tema 5. Model d’implementació
5.1
La programació en el procés de desenvolupament
5.2
Definició de les classes a partir del DCD
5.3
Sentències de mètodes a partir dels DI
5.4
Classes contenidors
5.5
Ordre d’implementació
Programa de pràctiques
1. Iniciació a l’anàlisi i disseny amb una eina CASE
2. Casos
d’estudi: Anàlisi
3. Casos
d’estudi: Disseny i Implementació
El treball a l’aula es basarà majoritàriament en la realització d’activitats d’aprenentatge, tant individuals com cooperatives. Les exposicions del professor es limiten a la introducció dels diferents temes i al desenvolupament dels primers exemples d’aplicació (<25% del temps presencial). La major part de les activitats d’aprenentatge demanen de l’estudiant una preparació i/o un complement de feina fora de l’aula. Els estudiants han de desenvolupar també dos casos d’estudi per parelles.