Competencias do título |
Código
|
Competencias da titulación
|
A7 |
Capacidade para deseñar, desenvolver, seleccionar e avaliar aplicacións e sistemas informáticos que aseguren a súa fiabilidade, seguranza e calidade, conforme a principios éticos e á lexislación e normativa vixente. |
A13 |
Coñecemento, deseño e utilización de forma eficiente dos tipos e estruturas de datos máis adecuados á resolución dun problema. |
A14 |
Capacidade para analizar, deseñar, construír e manter aplicacións de forma robusta, segura e eficiente, elixindo o paradigma e as linguaxes de programación máis adecuados. |
B1 |
Capacidade de resolución de problemas |
B2 |
Traballo en equipo |
B3 |
Capacidade de análise e síntese |
B4 |
Capacidade para organizar e planificar |
C2 |
Dominar a expresión e a comprensión de forma oral e escrita dun idioma estranxeiro. |
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. |
C4 |
Desenvolverse para o exercicio dunha cidadanía aberta, culta, crítica, comprometida, democrática e solidaria, capaz de analizar a realidade, diagnosticar problemas, formular e implantar solucións baseadas no coñecemento e orientadas ao ben común. |
C6 |
Valorar criticamente o coñecemento, a tecnoloxía e a información dispoñible para resolver os problemas cos que deben enfrontarse. |
C7 |
Asumir como profesional e cidadán a importancia da aprendizaxe ao longo da vida. |
C8 |
Valorar a importancia que ten a investigación, a innovación e o desenvolvemento tecnolóxico no avance socioeconómico e cultural da sociedade. |
Resultados de aprendizaxe |
Competencias de materia (Resultados de aprendizaxe) |
Competencias da titulación |
Identificar o deseño software como unha das fases do ciclo de vida do software |
A7 A13 A14
|
B3 B4
|
C3 C7
|
Coñecer os principios e propiedades básicas da orientación a obxectos |
A7 A13 A14
|
B1 B2 B3 B4
|
C2 C3 C4 C6 C7 C8
|
Plasmar un deseño software utilizando os artefactos propios dunha linguaxe de modelado coma UML |
A7 A13 A14
|
B1 B2 B3 B4
|
C2 C3 C4 C6 C7 C8
|
Coñecer os principios básicos que representan un bo deseño software |
A7 A13 A14
|
B1 B2 B3 B4
|
C2 C3 C4 C6 C7 C8
|
Identificar problemas típicos de deseño e as suas solucións máis comúns |
A7 A13 A14
|
B1 B2 B3 B4
|
C2 C3 C4 C6 C7 C8
|
Usar un deseño como guía para a implementación do software |
A7 A13 A14
|
B1 B2 B3 B4
|
C2 C3 C4 C6 C7 C8
|
Contidos |
Temas |
Subtemas |
1. Introducción |
• Deseño software
• Deseño orientado a obxectos |
2. Elementos Básicos da Orientación a Obxectos |
• Clases e obxectos
• Identidade de obxectos
• Estado de obxectos
• Comportamento de obxectos |
3. Características Básicas da Orientación a Obxectos |
• Abstracción e encapsulamento
• Modularidade
• Xerarquía
• Polimorfismo
• Tipificación
• Ligadura Dinámica |
4. Linguaxe Unificada de Modelado (UML) |
• Introducción
• Bloques básicos do UML
• Deseño estático: Diagramas de clases
• Deseño dinámico: Diagramas de interacción
• Outros diagramas |
5. Principios de Deseño |
• Calidade no deseño
• Principios SOLID
• Tipos de herdanza |
6. Patróns de Deseño |
• Introducción aos patróns de deseño
• Patróns elementales
• Deseños adaptables aos cambios
• Patróns e coleccións de obxectos
• Deseños débilmente acoplados
• Outros patróns e principios |
Planificación |
Metodoloxías / probas |
Horas presenciais |
Horas non presenciais / traballo autónomo |
Horas totais |
Sesión maxistral |
30 |
45 |
75 |
Prácticas de laboratorio |
20 |
30 |
50 |
Seminario |
10 |
10 |
20 |
Proba obxectiva |
3 |
0 |
3 |
|
Atención personalizada |
2 |
0 |
2 |
|
*Os datos que aparecen na táboa de planificación son de carácter orientativo, considerando a heteroxeneidade do alumnado |
Metodoloxías |
Metodoloxías |
Descrición |
Sesión maxistral |
Clases expositivas de presentación dos coñecementos teóricos empregando diferentes recursos: pizarra, proxección de material en formato electrónico, apuntes en formato electrónico e os recursos facilitados pola equipa docente da asignatura na facultade virtual. |
Prácticas de laboratorio |
Prácticas deseñadas pola equipa docente da asignatura baseadas nos coñecementos que cada estudante vai adquirindo. Estes traballos serán desenvolvidos preferiblemente en grupo (que serán como máximo de duas personas). Empregarase unha ferramenta de modelado para construir os artefactos de deseño e aplicarase unha linguaxe orientada a obxectos (Java) para realizar a implementación dos mesmos. |
Seminario |
Titorías de grupos reducidos (TGRs) nos que se proporán actividades relacionadas cos coñecementos adquiridos en teoría ou práctica |
Proba obxectiva |
Proba escrita mediante a que se valoran os coñecementos adquiridos polo estudantado. Cada estudante deberá aplicar tanto os seus coñecementos tanto a nivel teórico coma a nivel práctico. |
Atención personalizada |
Metodoloxías
|
Prácticas de laboratorio |
Seminario |
|
Descrición |
A atención personalizada ao estudantado comprende non só as titorías, presenciais ou virtuais, para a discusión de dúbidas, senón tamén as seguintes actuacións:
- Seguemento do labor realizado nas prácticas de laboratorio propostas pola equipa docente.
- Avaliación dos resultados obtidos nas prácticas, participación en seminarios realizados por cada estudante.
- Encontros personalizados para resolver dúbidas sobre os contidos da asignatura.
|
|
Avaliación |
Metodoloxías
|
Descrición
|
Cualificación
|
Prácticas de laboratorio |
Dous boletíns de exercicios baseados na programación en Java, na orientación a obxectos e o deseño de probas.
Unha práctica de deseño centrada no uso de principios e patróns de deseño. |
35 |
Seminario |
Evaluación continua de actividades propostas ao longo do curso.
Para poder ser valorados esíxese asistencia aos mesmos e entrega en tempo e forma dos traballos propostos |
5 |
Proba obxectiva |
Proba escrita realizada ao final do curso sobre contidos teórico-prácticos.
A proba obxectiva é obrigatoria para aprobar a materia e tamén é obrigatorio obter unha nota mínima de 4 sobre 10 para poder facer media cos outros elementos avaliables. |
60 |
|
Observacións avaliación |
En caso de non chegar á nota mínima na proba obxectiva, en calqueira das oportunidades, implicará que non se poida obter máis dun 4,5 na nota final da materia. Aspectos a ter en conta para a avaliación de segunda oportunidade (Xullo): - A nota dos seminarios (TGRs) e das prácticas de laboratorio serán as obtidas na primeira oportunidade (non haberá entrega de prácticas ou realización de TGRs na segunda oportunidade).
Aspecto a ter en conta en caso de matrícula a tempo parcial: - Elimínase a obrigatoriedade de asistir as actividades nas que se esixe presencialidade, como son os TGRs.
|
Fontes de información |
Bibliografía básica
|
Gamma, E.; Helm, R.; Johnson, R. y Vlissides J. (1996). Design Patterns: Elements of Reusable Object-oriented Software.. Addison Wesley
Booch J.; Rumbaugh J. y Jacobson I. (2006). El Lenguaje Unificado de Modelado (2ª ed.). Addison Wesley
Eckel, B. (2007). Piensa en Java (4ª ed.). Prentice-Hall
Arnold K., Gosling J. y Holmes D. (2005). The Java Programming Language. Prentice Hall
Martin, R.C. (2004). UML para programadores Java. Pearson |
|
Bibliografía complementaria
|
Freeman, E., Freeman, E., Bates, B. (2004). Head First Design Patterns. O'Reilly
Sierra, K., Bates, B. (2005). Head First Java. O’Reilly
Grand M. (2002). Patterns in Java. John Wiley & Sons
Rumbaugh, J.; Jacobson, I. y Booch, J. (2004). The Unified Modeling Language Reference Manual. Addison Wesley
Stevens, P. y Pooley, R. (2006). Using UML. Software Engineering with Objects and Components. Addison Wesley |
|
Recomendacións |
Materias que se recomenda ter cursado previamente |
Proceso Software/614G01019 | Interfaces Home Máquina/614G01022 | Internet e sistemas distribuidos/614G01023 | Enxeñaría de Requisitos/614G01027 |
|
Materias que se recomenda cursar simultaneamente |
Paradigmas de Programación/614G01014 |
|
Materias que continúan o temario |
Programación I/614G01001 | Programación II/614G01006 |
|
Observacións |
A materia asume que os estudantes saben programar e coñecen as estruturas de datos (Programación II) aínda que nunca utilizaron unha linguaxe orientada a obxectos. Ao principio do curso, e segundo vanse introducindo os conceptos propios da orientación a obxectos, os alumnos familiarízanse cos aspectos básicos da linguaxe de programación Java. |
|