Datos Identificativos 2015/16
Asignatura (*) Tecnología de la Programación Código 614111202
Titulación
Enxeñeiro en Informática
Descriptores Ciclo Periodo Curso Tipo Créditos
1º y 2º Ciclo 2º cuatrimestre
Segundo Troncal 6
Idioma
Castellano
Gallego
Modalidad docente Presencial
Prerrequisitos
Departamento Computación
Coordinador/a
Correo electrónico
Profesorado
Correo electrónico
Web http://http://campusvirtual.udc.es/moodle
Descripción general A materia de Tecnoloxía da Programación atópase vinculada principalmente ás materias de Programación e Estrutura de Datos e da Información, de primeiro curso, e á materia de Metodoloxía da Programación de segundo curso. Tendo o anterior en conta, presuponse que o alumno adquiriu os seguintes coñecementos: - Coñecementos básicos da estrutura dun programa, tanto no seu deseño algorítmico, como na sua codificación. Isto inclúe conceptos como variables, tipos de datos, operador, estruturas de control, etc. - Modulación e estructuración, tocando aspectos como procedementos e funcións, variables globais e locais, paso de parámetros por valor e por referencia, módulos e compilación separada, etc. - Estruturas de datos estáticas e dinámicas, incluíndo arrays, rexistros, conxuntos e punteiros. - Algoritmos básicos de clasificación e procura. - Ficheiros: tipos, organización, métodos de acceso e operacións. - Aproximación ao concepto de recursividad no seo dun algoritmo. - Comprender o concepto de tipo abstracto de dato. - Coñecer unha colección de tipos abstractos de datos paradigmáticos. O alumno disporá da capacidade para elixir e manipular distintas estruturas de datos. - Adquirir a habilidade para identificar, deseñar e implementar os tipos abstractos de datos adecuados a unha aplicación concreta. Coa vista posta no futuro profesional, os coñecementos adquiridos nesta materia xogarán un papel relevante no desenvolvemento de aplicacións. O alumno será capaz de desenvolver unha aproximación disciplinada á especificación, implementación, verificación e proba de programas.

Competencias del título
Código Competencias / Resultados del título
A3 Concebir y planificar el desarrollo de aplicaciones informáticas complejas o con requisitos especiales.
B1 Aprender a aprender.
B2 Resolver problemas de forma efectiva.
B3 Aplicar un pensamiento crítico, lógico y creativo.
B4 Aprendizaje autónomo.
B5 Trabajar de forma colaborativa.
B7 Comunicarse de manera efectiva en cualquier entorno de trabajo.
B8 Trabajar en equipos de carácter interdisciplinar.
B11 Razonamiento crítico.
B12 Capacidad para el análisis y la síntesis.
B13 Capacidad de comunicación.

Resultados de aprendizaje
Resultados de aprendizaje Competencias / Resultados del título
1. Capacitar ao alumno para a resolución de problemas de forma eficiente A3
B2
B11
B12
2. Adquisición de bos hábitos á hora de programar A3
B2
B4
3. Capacidade de aplicar os coñecementos adquiridos á práctica B1
B2
B4
4. Capacidade de adaptarse a novas situacións B1
B3
B11
B12
5. Traballo en equipo B5
B7
B8
B13

Contenidos
Tema Subtema
1. Cálculo proposicional 1.1. Evaluación de proposicións
1.2. Proposicións como conxuntos de estados
1.3. Leis de equivalencia
2. Predicados 2.1. Extensión do rango de estado
2.2. Cuantificadores
2.3. Identificadores libres e ligados
2.4. Substitución textual
3. Arrays, notacion e simplificación de expresións 3.1. Arrays dunha dimensión
3.2. Simplificación de expresións
3.3. Arrays multidimensionales
4. Uso de aserciones na documentación de programas 4.1. Especificación de programas
4.2. Representación de valores iniciais e finais de variables
4.3. Esquemas de proba
5. O transformador de predicados wp 5.1. Definición do transformador de predicados
5.2. Propiedades do wp
5.3. Estratexia de demostración de corrección
6. Corrección parcial 6.1. Asignacións
6.2. Arrays
6.3. If
6.4. While
7. Corrección total 7.1. While
8. Alternativas 8.1. Postcondición máis forte (sp)
9. Ferramentas e técnicas de proba na práctica 9.1 Sistemas de control de versións. Subversión
9.2 Sistemas de compilación Ant
9.3 Ferramentas de probas de unidade JUnit
9.4 Calculo automático de metricas de covertura
9.5 Técnicas de probas no Desenvolvemento Software

Planificación
Metodologías / pruebas Competencias / Resultados Horas lectivas (presenciales y virtuales) Horas trabajo autónomo Horas totales
Prueba objetiva 3 0 3
Actividades iniciales 146 0 146
 
Atención personalizada 1 0 1
 
(*)Los datos que aparecen en la tabla de planificación són de carácter orientativo, considerando la heterogeneidad de los alumnos

Metodologías
Metodologías Descripción
Prueba objetiva Proba escrita
Actividades iniciales Temario e máis exercicios vistos no curso 2010/2011

Atención personalizada
Metodologías
Prueba objetiva
Descripción
Aclaración de dúbidas

Evaluación
Metodologías Competencias / Resultados Descripción Calificación
Prueba objetiva Teoría:
- Proba escrita da parte de teoría.
- Cualificación mínima: 4 de 10.
- 70% da cualificación global.
- A cualificación da proba escrita se garda entre convocatorias se é un 5 ou máis. Existe tamén a posibilidade de facer de novo o exame para mellorar a cualificación (con isto, o alumno renunciaría á anterior cualificación).

Práctica:
- Proba escrita da parte de práctica.
- Cualificación mínima: 4 de 10.
- 30% da cualificación global.
- A cualificación da proba escrita se garda entre convocatorias se é un 5 ou máis. Existe tamén a posibilidade de facer de novo o exame para mellorar a cualificación (con isto, o alumno renunciaría á anterior cualificación).
100
 
Observaciones evaluación

Cualificación global mínima: 5 de 10.

No caso de non superar a teoría ou a práctica, a nota publicada será como máximo 4,5


Fuentes de información
Básica Daniel Bolaños et al. (). Pruebas de Software y JUnit. Un análisis en profundidad y ejemplos prácticos.
Gries, David (). The Science of Programming.

Complementária (). http://junit.sourceforge.net/.
(). http://svnbook.red-bean.com/.
Winskel, Glynn (). The Formal Semantics of Programming Languages.


Recomendaciones
Asignaturas que se recomienda haber cursado previamente

Asignaturas que se recomienda cursar simultáneamente

Asignaturas que continúan el temario
Estructura de Datos y de la Información/614111102
Matemática Discreta I/614111107
Programación/614111109
Metodología de la Programación/614111205
Programación Orientada a Objectos/614111636

Otros comentarios


(*) La Guía Docente es el documento donde se visualiza la propuesta académica de la UDC. Este documento es público y no se puede modificar, salvo cosas excepcionales bajo la revisión del órgano competente de acuerdo a la normativa vigente que establece el proceso de elaboración de guías