Anar al contingut (clic a Intro)
UdG Home UdG Home
Tancar
Menú

Estudia

Dades generals

Curs acadèmic:
2020
Descripció:
Disseny modular. Programació orientada a objectes. Casos pràctics. Desenvolupament d'un projecte de programació.
Crèdits ECTS:
5

Grups

Grup A

Durada:
Semestral, 2n semestre
Professorat:
Miquel Bofill Arasa  / Francisco Castro Villegas
Idioma de les classes:
Català (100%)

Competències

  • CT01 Analitzar situacions complexes i dissenyar estratègies per a resoldre-les
  • CT04 Treballar en equip
  • CB05 Prendre decisions per a la resolució de situacions diverses
  • CT09 Aplicar cirteris de qualitat a les propostes i/o projectes
  • CT02 Treballar en equip
  • CT14 Proposa noves iniciatives en la planificació i desenvolupament de projectes
  • CES2 Analitzar problemes computacionals i desenvolupar solucions algorísmiques acord
  • CES10 Especificar, dissenyar i avaluar solucions informàtiques integrades per a la gestió dels processos de salut
  • CES11 Dirigir de manera integrada projectes, incloent els processos de desenvolupament i Innovació, en el camp biomèdic
  • CES14 Treballar de forma autònoma en la realització d'un projecte i presentar i defensar els resultats aconseguits davant d'un jurat o col·lectiu expert
  • CC3 Capacitat per avaluar la complexitat computacional d'un problema, conèixer estratègies algorítmiques que poguin conduir a la seva resolució i recomenar, desenvolupar i implementar aquella que garanteixi el millor rendiment d'acord amb els requisits establerts.
  • CIS3 Capacitat de donar solució a problemes d'integració en funció de les estratègies, estàndards i tecnologies disponibles.

Continguts

1. Conceptes bàsics en el disseny de programes

          1.1. Modularització

          1.2. Abstracció i descomposició

          1.3. Disseny descendent vs disseny ascendent

2. Programació orientada a objectes

          2.1. Herència vs subtipatge

          2.2. Utilització vs refinament

          2.3. Polimorfisme vs genericitat

          2.4. El principi de substitució de Liskov

3. Casos pràctics

4. Documentació, verificació i proves

          4.1. Documentació vs especificació formal

          4.2. Ajuts per entendre les implementacions: funció d'abstracció i invariant de la representació

          4.3. Eines de suport

Activitats

Tipus d’activitat Hores amb professor Hores sense professor Hores virtuals amb professor Total
Anàlisi / estudi de casos 4,00 15,00 3,00 22,00
Prova d'avaluació 4,00 0 0 4,00
Resolució d'exercicis 0 15,00 0 15,00
Sessió expositiva 10,00 0 5,00 15,00
Sessió pràctica 0 0 8,00 8,00
Treball en equip 0 45,00 16,00 61,00
Total 18,00 75,00 32,00 125

Bibliografia

  • Liskov, Barbara (2000 ). Program Development in Java : Abstraction, Specification,and Object-Oriented Design . Boston: Addison-Wesley. Catàleg
  • Coad, Peter (1999 ). Java design : building better apps and applets (2nd ed.). Upper Saddle River, N.J.: Yourdon Press. Catàleg
  • Preiss, Bruno R (2000 ). Data structures and algorithms with object-oriented designpatterns in Java . New York: John Wiley and Sons. Catàleg

Avaluació i qualificació

Activitats d'avaluació:

Descripció de l'activitat Avaluació de l'activitat % Recuperable
Petits exercicis de programació Es valorarà l'adequat ús de les tècniques i de les eines a l'abast. Cada exercici s'haurà de lliurar en el termini d'una setmana a partir de la data que es proposi. Un cop passat aquest termini no s'acceptarà cap lliurament. 15 No
Projecte de programació (lliurament inicial) Es valorarà l'abast i la proposta inicial de mòduls que integraran la solució d'un projecte elaborat en equip. 5 No
Projecte de programació (seguiment) El professor monitoritzarà un cop per setmana el projecte. Cada equip haurà de discutir setmanalment amb el professor aspectes com ara les delimitacions del projecte i la proposta de solució. El seguiment i monitorització es farà virtualment via GitHub Classroom i Google Meet, un cop per setmana, en l'horari que es pacti entre cada equip i el professor. La no participació en la monitorització setmanal implicarà la interrupció del projecte (no s'acceptaran lliuraments de projectes dels quals no se n'hagi pogut fer un seguiment satisfactori). Es recorda que existeix l'opció d'acollir-se a l'opció d'avaluació única en el cas que sigui impossible sotmetre's a l'avaluació continuada. 15 No
Projecte de programació (lliurament intermig) Es valorarà la correcció de la solució proposada, amb especial èmfasi en el disseny modular de l'aplicació. 10 No
Projecte de programació (lliurament final) La qualificació estarà determinada pel grau d'assoliment dels objectius pactats amb el professor durant les sessions de monitorització, i de les competències relacionades. 30 No
Examen Les respostes es puntuaran en funció del grau d'assoliment de les competències corresponents. L'examen pot cobrir tant aspectes teòrics com pràctics. 25

Qualificació

El projecte es desenvoluparà en equips de dos o tres alumnes (la càrrega de treball d'ajustarà al nombre de membres de l'equip).

La interacció amb el "client" (el professor) a l'hora de definir l'especificació de les funcionalitats i usos del programa, i la discussió de la implementació del programa amb un programador "expert" (el professor), influiran en la qualificació del projecte.

L'avaluació del projecte podrà tenir en compte tant l'aportació individual de l'alumne com els resultats del seu equip. Això implica que no tots els components d'un equip tindran necessàriament la mateixa nota.

No s'acceptaran lliuraments de projectes dels quals no se n'hagi pogut fer un seguiment satisfactori (veure apartat "Activitats d'avaluació"). Si un estudiant preveu que no podrà sotmetre's a l'avaluació continuada, haurà de demanar avaluació única tan aviat com sigui possible per tal de perjudicar el mínim els altres membres del seu equip.

Criteris específics de la nota «No Presentat»:
L'alumne obrindrà la nota de "No Presentat" només si no ha fet (o no se li ha acceptat) el darrer lliurament del projecte i no s'ha presentat a examen.

Avaluació única:
L'avaluació única consistirà solament d'un examen final (recuperable) amb un valor del 100% en lloc del 25%.

Requisits mínims per aprovar:
Per considerar superada l’assignatura, caldrà obtenir una qualificació més gran o igual que 5 de la mitjana ponderada de les diferents activitats d'avaluació.

Tutoria

Les tutories es faran preferentment via Google Meet, Skype o similar, amb sol·licitud prèvia de l'estudiant i confirmació del professor mitjançant correu electrònic. Si les circumstàncies ho permeten, i d'acord entre l'estudiant i el professor, les tutories es podran fer presencialment al despatx del professor o en algun altre espai habilitat de l'EPS.

Comunicacio i interacció amb l'estudiantat

Les comunicacions de l'assignatura es faran per escrit mitjançant el "Fòrum d'Avisos i Notícies" de la Meva-UdG de l'assignatura.

La interacció escrita amb els estudiants tindrà lloc també preferentment via fòrums del Moodle, reservant el correu electrònic només per a qüestions privades. Qualsevol consulta que es realitzi per correu electrònic que sigui d'interès general serà redirigida al fòrum corresponent del Moodle.

Les comunicacions privades relacionades amb el desenvolupament del projecte es realitzaran via GitHub Classroom.

Les classes online es realitzaran via Google Meet i es gravaran per a posterior visualització. Per tal d'evitar interrupcions (peticions d'accés) durant les classes, només es permetrà l'accés a aquestes via el compte de Google associat a la UdG, amb el qual no és necessari demanar permís per connectar-s'hi.

Observacions

Està previst que les classes de teoria/problemes siguin parcialment online (1h quinzenal) i presencials (2h quinzenals). Les classes de pràctiques (laboratori) es preveuen online.

L'objectiu principal d'aquesta assignatura és el de practicar la programació d'aplicacions de mitjana escala, incloent el disseny, la documentació, la implementació i les proves. Es treballaran tant els aspectes lligats a la qualitat del producte final (eficiència, correcció, reusabilitat de components, etc.) com al propi procés per arribar-hi (organització de l'equip de treball, documentació, proves, prototipatge, etc.)

Assignatures recomanades

  • Estructures de dades i algorítmica
  • Metodologia i tecnologia de la programació I
  • Metodologia i tecnologia de la programació II

Modificació del disseny

Modificació de les activitats:
En el cas que les circumstàncies permetin un 100% de presencialitat, totes les classes passaran a ser presencials i no es gravaran per a posterior visualització. En tal cas, l'assistència a classes de pràctiques (laboratori) serà obligatòria durant la fase de seguiment del projecte. Serà durant les classes de pràctiques que es farà el seguiment i monitorització del projecte, i hauran d'assistir-hi tots els alumnes. En cas de no poder-hi assistir, l'alumne haurà de concertar una cita alternativa amb el professor. Altrament es considerarà el projecte com a interromput.

Modificació de l'avaluació:
En el cas que les circumstàncies permetin un 100% de presencialitat la forma d'avaluació es mantindrà igual, amb l'afegit de l'obligatorietat de l'assistència a classes de pràctiques (laboratori) durant la fase de seguiment del projecte. La no participació en les sessions de seguiment i monitorització implicarà la interrupció del projecte (no s'acceptaran lliuraments de projectes dels quals no se n'hagi pogut fer un seguiment satisfactori).

Tutoria i comunicació:
En el cas que les circumstàncies permetin un 100% de presencialitat, les tutories seran preferentment presencials.

Escull quins tipus de galetes acceptes que el web de la Universitat de Girona pugui guardar en el teu navegador.

Les imprescindibles per facilitar la vostra connexió. No hi ha opció d'inhabilitar-les, atès que són les necessàries pel funcionament del lloc web.

Permeten recordar les vostres opcions (per exemple llengua o regió des de la qual accediu), per tal de proporcionar-vos serveis avançats.

Proporcionen informació estadística i permeten millorar els serveis. Utilitzem cookies de Google Analytics que podeu desactivar instal·lant-vos aquest plugin.

Per a oferir continguts publicitaris relacionats amb els interessos de l'usuari, bé directament, bé per mitjà de tercers (“adservers”). Cal activar-les si vols veure els vídeos de Youtube incrustats en el web de la Universitat de Girona.