Identifying Data 2017/18
Subject (*) Advanced Programming Code 614G01030
Study programme
Grao en Enxeñaría Informática
Descriptors Cycle Period Year Type Credits
Graduate 2nd four-month period
Third Optativa 6
Language
Spanish
Teaching method Face-to-face
Prerequisites
Department Computación
Coordinador
Bellas Permuy, Fernando
E-mail
fernando.bellas@udc.es
Lecturers
Álvarez Díaz, Manuel
Bellas Permuy, Fernando
Raposo Santiago, Juan
E-mail
manuel.alvarez@udc.es
fernando.bellas@udc.es
juan.raposo@udc.es
Web http://campusvirtual.udc.es
General description Esta materia céntrase no deseño e implementación de aplicacións Web con tecnoloxías Java POJO, facendo especial énfase no desenrolo de aplicacións Web empresariais. Na materia estúdanse tanto as tecnoloxías como as técnicas de deseño máis relevantes. O enfoque da materia é fundamentalmente práctico.

Study programme competencies
Code Study programme competences
A27 Capacidade de dar solución a problemas de integración en función das estratexias, estándares e tecnoloxías dispoñibles.
A28 Capacidade de identificar e analizar problemas, e deseñar, desenvolver, implementar, verificar e documentar solucións sóftware sobre a base dun coñecemento adecuado das teorías, modelos e técnicas actuais.
B1 Capacidade de resolución de problemas
C3 Utilizar as ferramentas básicas das tecnoloxías da información e as comunicacións (TIC) necesarias para o exercicio da súa profesión e para a aprendizaxe ao longo da súa vida.

Learning aims
Learning outcomes Study programme competences
Capacidade para deseñar e implementar aplicacións (con énfase en aplicacións Web) mediante o uso de tecnoloxías modernas e técnicas de deseño estándar. A27
A28
B1
C3

Contents
Topic Sub-topic
Parte I. Introdución. Tema 1: Introdución ó Desenrolo de Aplicacións Empresariais.
Parte II. Deseño e Implementación da Capa Modelo. Tema 2. Aspectos de Deseño da Capa Modelo. Caso de estudo.
Tema 3. Implementación da Persistencia con Hibernate.
Tema 4. Uso de Spring na Capa Modelo.
Tema 5. Implementación de Probas Automatizadas para a Capa Modelo con Spring TestContext.
Tema 6. Outros Aspectos de Hibernate.
Parte III. Deseño e Implementación da Capa Web. Tema 7. Aspectos de Deseño da Capa Web.
Tema 8. Introdución a un Framework Web.
Tema 9. Caso de Estudo de Implementación da Capa Web con un Framework Web.

Planning
Methodologies / tests Competencies Ordinary class hours Student’s personal work hours Total hours
ICT practicals A27 A28 B1 C3 14 48 62
Multiple-choice questions A27 A28 B1 C3 1 8 9
Supervised projects A27 A28 B1 C3 1 29 30
Guest lecture / keynote speech A27 A28 B1 C3 21 21 42
 
Personalized attention 7 0 7
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies Description
ICT practicals Ó longo do curso desenrólase unha práctica (en grupo) na que se constrúe unha aplicación Web. A aplicación desenrólase en tres iteracións, sendo obrigatoria a entrega de cada unha de elas. Na primeira iteración impleméntase a capa modelo. Na segunda iteración corríxense os erros detectados polo profesor na primeira iteración e impleméntase gran parte da capa Web. Na terceira iteración corríxense os erros detectados polo profesor na segunda iteración, remátase a capa Web e elabórase a memoria da práctica.
Multiple-choice questions Farase un exame tipo test, có obxectivo de comprobar que o alumno asimilou os conceptos correctamente. O exame tipo test componse dun conxunto de preguntas con varias respostas posibles, das que só unha é correcta. As preguntas non contestadas non puntúan, e as contestadas erroneamente puntúan negativamente.
Supervised projects Propóñense traballos tutelados consistentes en aplicar algunhas tecnoloxías ou técnicas de deseño adicionais á práctica. De maneira autónoma, o alumno deberá estudar estas tecnoloxías ou solucións de deseño adicionais e aplicalas á práctica.
Guest lecture / keynote speech Clase impartidas polo profesor mediante a proxección de transparencias. As clases teñen un enfoque totalmente práctico, explicando os conceptos teóricos mediante o uso de exemplos sinxelos e casos de estudo. As transparencias e o código fonte dos exemplos e os casos de estudo están dispoñibles a través da plataforma de docencia da universidade.

Personalized attention
Methodologies
ICT practicals
Description
Faranse varias sesións para axudar ó estudante no desenrolo da práctica.

Assessment
Methodologies Competencies Description Qualification
Multiple-choice questions A27 A28 B1 C3 Farase un exame de tipo test, có obxectivo de comprobar que o alumno asimilou os conceptos correctamente.
40
ICT practicals A27 A28 B1 C3 A entrega de cada iteración é obrigatoria. As dúas primeiras non levan asociada unha nota (pero a súa entrega é obrigatoria) e o seu obxectivo é garantir que o alumno enfoca correctamente o desenrolo da aplicación. O profesor pon a nota da aplicación trala corrección da terceira iteración.
40
Supervised projects A27 A28 B1 C3 A realización dos traballos tutelados é opcional. 20
 
Assessment comments

Para aprobar a materia é preciso obter:

  • Un mínimo de 5 puntos (sobre 10) na avaliación da práctica.
  • Un mínimo 4,5 puntos (sobre 10) no exame tipo test.
  • Un mínimo de 5 puntos (sobre 10) na nota final, que se calcula coma: 0,40*notaPractica + 0,40*notaExame + 0,20*notaTraballosTutelados.

Para os alumnos con matrícula a tempo parcial, tanto na primeira oportunidade coma na segunda, o tamaño da práctica e os traballos tutelados será menor, sen que iso supoña un prexuízo na nota.


Sources of information
Basic
  • C. Bauer, G. King, Java Persistence with Hibernate, Manning, 2007.
  • C. Walls, Spring in Action, 3rd edition, Manning, 2011.
  • D. Shafer, HTML Utopia: Designing Without Tables Using CSS, Sitepoint Pty Ltd, 2003.
  • J. Zeldman, Designing with Web Standards, New Riders, 2003.
  • Sitios Web de los frameworks y herramientas empleados en la asignatura.
Complementary
  • E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addisson-Wesley, 1994.
  • G. Booch, I. Jacobson, J. Rumbaugh, Unified Modeling Language User Guide, 2nd edition, Addison-Wesley, 2005.
  • K. Arnold, J. Gosling, D. Holmes, The Java Programming Language, 4th edition, Addison-Wesley, 2005.
  • J. Crupi, D. Alur, D. Malks, Core J2EE Patterns, 2nd edition, Prentice Hall, 2003.

Recommendations
Subjects that it is recommended to have taken before
Internet and Distributed Systems/614G01023

Subjects that are recommended to be taken simultaneously
Software Architecture/614G01026

Subjects that continue the syllabus
Development Frameworks/614G01052
Development Tools/614G01054

Other comments

É preciso ter soltura na lectura de información en Inglés (toda a bibliografía, recursos Web e libros, está en Inglés).



(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.