Enginyeria del programari Codi:  06.545    :  6
Consulta de les dades generals   Descripció   L'assignatura en el conjunt del pla d'estudis   Coneixements previs   Informació prèvia a la matrícula   Objectius i competències   Continguts   Consulta dels recursos d'aprenentatge de què disposa l'assignatura   Recursos d'aprenentatge i eines de suport   Informacions sobre l'avaluació a la UOC   Consulta del model d'avaluació  
ATENCIÓ: Aquest és el pla docent de l'assignatura per al primer semestre del curs 2020-2021. Us servirà per planificar la matrícula. Un cop comenci la docència, heu de consultar-lo a l'aula. (El pla docent pot estar subjecte a canvis.)

L'enginyeria del programari és l'aplicació d'un enfocament sistemàtic, disciplinat i quantificable al desenvolupament, operació i manteniment de programari. Aquest enfocament s'adopta amb la finalitat d'assolir els nivells de qualitat, productivitat i control de costos de la resta d'enginyeries. El programari, però, a diferència d'altres productes, és intangible i, per tant, la seva producció no consumeix matèries primeres. Per altra banda, no es manufactura (totes les còpies són idèntiques i el cost de crear-ne una és pràcticament nul) ni es desgasta però queda obsolet ràpidament. 

L'aplicació de l'enginyeria del programari implica seguir un mètode que descrigui les característiques del procés disciplinat que utilitzem. Més concretament, aquest mètode ens dirà quines tasques s'han de dur a terme, qui les ha de dur a terme (els rols) i quins artefactes seran les entrades i resultats de cada tasca. Les tasques definides per un mètode poden pertànyer a àmbits diversos com ara la gestió del projecte, la identificació i gestió de requisits, la modelització, la construcció del programari, les proves, la gestió de la qualitat, el manteniment o la reenginyeria. Cada mètode pot definir rols diferents, com la persona responsable del projecte, la persona experta en el domini, l'analista funcional, l'arquitecta, l'analista orgànic, l'equip encarregat de programar, etc., tot i que hi ha certs rols que acostumen a aparèixer amb un o altre nom en la majoria de mètodes. Per últim, l'enginyeria del programari també ens proporciona un conjunt de tècniques i eines que ens han d'ajudar a posar en pràctica els mètodes que hàgim escollit per a desenvolupar el nostre projecte de programari.

Aquesta assignatura s'enfoca partint de la base que la major part del seu contingut és d'aplicació directa en el futur treball professional de l'estudiantat; així, es posa èmfasi en els conceptes més pràctics. A més, les activitats de tipus pràctic tenen un pes important dins el temps que cal dedicar a l'assignatura.

Amunt

Aquesta assignatura està relacionada amb altres assignatures que tracten diversos aspectes de l'Enginyeria del Programari:

  • Fonaments de Programació i Disseny i Programació Orientada a l'Objecte, que contemplen la programació.
  • Gestió de Projectes, que aporta una visió general i comuna per a tota mena de projectes de les tecnologies de la informació i comunicació. Pel cas de la gestió de projectes de programari, es complementa amb els mètodes, les tècniques i les eines pròpies dels projectes de desenvolupament de programari.
  • Disseny de Bases de Dades, que inclou el disseny de les bases de dades que formen part del projecte d'un sistema de programari. 

Amunt

Es recomana tenir experiència en programació, pel que és recomanable haver cursat l'assignatura Fonaments de Programació.

Amunt

Aquesta assignatura no pressuposa cap coneixement previ d'aquesta disciplina ni de cap altra assignatura d'aquests estudis. 

Amunt

Els objectius que l'estudiant ha d'adquirir en aquesta assignatura són els següents:

  1. Ser capaç d'explicar què és l'enginyeria del programari i contextualitzar-la.
  2. Ser capaç d'enumerar alguns dels mètodes de desenvolupament més utilitzats.
  3. Ser capaç d'explicar els conceptes fonamentals de l'orientació a objectes.
  4. Ser capaç d'identificar i seleccionar els requisits d'un producte de programari.
  5. Ser capaç de a fer servir la notació UML per a documentar models d'anàlisi orientats a objectes.
  6. Ser capaç de fer servir els casos d'ús per a fer anàlisi funcional de programari per a sistemes d'informació.
  7. Ser capaç de fer modelització del domini mitjançant diagrames UML.

Aquests objectius estan relacionats amb les següents competències del Grau en Enginyeria Informàtica:

  • Saber aplicar les tècniques específiques d'enginyeria del programari a les diferents etapes del cicle de vida d'un projecte.
  • Saber aplicar les tècniques específiques de tractament, emmagatzematge i administració de dades.

També estan relacionats amb les següents competències del Grau en Multimèdia:

  • Capacitat d'organitzar i gestionar la informació utilitzant tecnologies de bases de dades, llenguatges i models estàndards.
  • Capacitat per implementar, posar en marxa i mantenir programari i maquinari multimèdia.

Amunt

El material docent de l'assignatura consta de quatre mòduls didàctics:

Mòdul 1: Introducció a l'enginyeria del programari

Descriu què és l'enginyeria del programari, com s'organitza i presenta alguns dels mètodes, tècniques, eines i estàndards la caracteritzen.

Mòdul 2: Orientació a objectes

Descriu què és l'orientació a objectes (OO) i algunes de les seves característiques principals: classificació i abstracció; ocultació de la informació i encapsulament; i herència i polimorfisme.

Mòdul 3: Requisits

Introdueix el concepte de requisits i descriu com obtenir-los, gestionar-los i documentar-los al llarg d'un procés de desenvoluapment de programari.

Mòdul 4: Anàlisi UML

Presenta l'UML com a llenguatge per modelar diversos aspectes (casos d'ús, interfície, domini) d'un sistema de programari.

Amunt

Vídeos Audiovisual

Amunt

A l'apartat Recursos de l'aula es recullen els recursos d'aprenentatge necessaris per un bon seguiment de l'assignatura, que són:

  1. Mòduls didàctics. Aquest material és el recurs més important i està constituït per quatre mòduls (Introducció, Orientació a objectes, Requisits i Anàlisi UML).  Cadascun d'aquests mòduls es desenvolupa en els següents apartats: la introducció, els objectius, el cos teòric amb els exercicis i els exemples corresponents, una col·lecció d'exercicis d'autoavaluació, i bibliografia específica recomanada.
  2. Video-tutorials. Col·lecció de vídeo-tutorials elaborats per l'equip docent de l'assignatura amb l'objectiu de facilitar la consolidació de l'estudi dels mòduls didàctics 2 i 4 de l'assignatura. Tots els vídeos es poden trobar al següent canal de vimeo: https://vimeo.com/channels/1161621
  3. Col·lecció de problemes resolts. Recull de problemes de modelització en UML (diagrames de classes i diagrames d'activitat).

Per altra banda, per dur a terme algunes activitats de l'assignatura és recomanable utilitzar una eina CASE (Computer Aided Software Engineering), que permet representar diagrames UML. Des de l'assignatura us recomanem utilitzar una de les eines que es mostren a continuació (tot i que podeu utilitzar altres eines disponibles - podeu veure'n algunes aquí: http://en.wikipedia.org/wiki/List_of_Unified_Modeling_Language_tools - o fins i tot realitzar els diagrames a mà alçada):

  • Papyrus: Plugin d'Eclipse.
  • MagicDraw: Programari de pagament per al qual, a principi del semestre i via tauler de l'aula, us proporcionarem una llicència temporal que us permetrà utilitzar-lo fins al final del semestre.

Les instruccions per instal·lar el MagicDraw programari són:

1. Anar a la web del fabricant: http://www.nomagic.com
2. Fer Login (registrar-se)
3. Triar el producte: https://www.magicdraw.com/download/magicdraw 
4. Triar sistema operatiu i descarregar instal.lador en local
5. Instal.lar i introduïr la clau proporcionada pel consultor (select licence key)

Amunt

La Normativa acadèmica de la UOC disposa que el procés d'avaluació es fonamenta en el treball personal de l'estudiant i pressuposa l'autenticitat de l'autoria i l'originalitat dels exercicis fets.

La manca d'originalitat en l'autoria o el mal ús de les condicions en què es fa l'avaluació de l'assignatura és una infracció que pot tenir conseqüències acadèmiques greus.

Es qualificarà l'estudiant amb un suspens (D/0) si es detecta manca d'originalitat en l'autoria d'alguna activitat avaluable (pràctica, prova d'avaluació contínua (PAC) o final (PAF), o la que es defineixi al pla docent), sigui perquè ha utilitzat material o dispositius no autoritzats, sigui perquè ha copiat textualment d'internet, o ha copiat d'apunts, de materials, de manuals o d'articles (sense la citació corresponent), d'altres estudiants, o per qualsevol altra conducta irregular.

La qualificació de suspens (D/0) en les qualificacions finals d'avaluació contínua pot comportar l'obligació de fer l'examen presencial per a superar l'assignatura (si hi ha examen i si superar-lo és suficient per a superar l'assignatura segons indiqui el pla docent).

Quan aquesta mala conducta es produeixi durant la realització de les proves d'avaluació finals presencials, l'estudiant pot ser expulsat de l'aula, i l'examinador farà constar tots els elements i la informació relatius al cas.

D'altra banda, aquesta conducta pot donar lloc a la incoació d'un procediment disciplinari i l'aplicació, si escau, de la sanció que correspongui.

La UOC habilitarà els mecanismes que consideri oportuns per a vetllar per la qualitat de les seves titulacions i garantir l'excel·lència i la qualitat del seu model educatiu.

Amunt

Aquesta assignatura es pot superar únicament mitjançant la realització d'un examen final presencial (EX), la nota del qual es combina amb la nota final de pràctiques obligatòries (Pr). Si nota final de la pràctica és diferent a N (no presentat), la nota de l'assignatura serà diferent a N (no presentat). La nota d'avaluació contínua (AC) complementa la nota combinada de l'examen final (EX) i la part pràctica (Pr). La fórmula d'acreditació de l'assignatura és la següent: (EX + Pr) + AC.

 
 

Amunt