- Info
Fichas de asignaturas 2011-12
|
Código |
Nombre |
|
|
Asignatura |
1713022 |
DISEÑO DE SISTEMAS SOFTWARE |
Créditos Teóricos |
3 |
Descriptor |
|
SOFTWARE SYSTEM DESIGN |
Créditos Prácticos |
3 |
Titulación |
1713 |
INGENIERÍA EN INFORMÁTICA |
Tipo |
Troncal |
Departamento |
C137 |
LENGUAJES Y SISTEMAS INFORMATICOS |
|
|
Curso |
4 |
|
|
|
Duración (A: Anual, 1Q/2Q) |
2Q |
|
|
|
Créditos ECTS |
5 |
|
|
|
Para el curso |
Créditos superados frente a presentados |
Créditos superados frente a matriculados |
2007-08 |
95.8% |
76.7%
|
Pulse aquí
si desea visionar el fichero referente al cronograma sobre el número de horas de los estudiantes.
Profesorado
Daniel Molina Cabrera (Coordinador)
Situación
Prerrequisitos
El Plan de Estudios no establece ningún prerrequisito para poder cursar esta
asignatura que no esté contemplada en los títulos de Ingeniería Técnica de
Informática.
Contexto dentro de la titulación
En Ingeniería del Software I se les plantea al alumnado una visión global del
proceso de desarrollo del software.
Durante el segundo ciclo, el proceso de desarrollo del software es estudiado más
en detalle mediante dos asignaturas troncales: Ingeniería de Requisitos (proceso
de análisis) y Diseño de Sistemas Software (Diseño y en menor medida
implementación).
Recomendaciones
Se recomienda encarecidamente al alumnado asistir tanto a las clases teóricas,
en donde se plantearán principios de diseño Orientado a Objetos y distintos
esquemas de diseño (patrones) como a las clases prácticas (en donde se aplicarán
dichos esquemas en casos concretos).
El trabajo continuo del alumno para un adecuado seguimiento de la asignatura, y
la realización de las distintas prácticas.
Se recomienda asímismo ir leyendo la bibliografía recomendada de la asignatura,
y lecturas adicionadas recomendadas.
Competencias
Competencias transversales/genéricas
INSTRUMENTALES
- Capacidad de análisis y Síntexis.
- Capacidad de organización y planificación.
- Resolución de problemas.
- Toma de decisiones.
PERSONALES
- Trabajo en equipo.
SISTÉMICAS
- Razonamiento crítico.
- Compromiso ético.
- Aprendizaje autónomo.
- Creatividad.
- Motivación por la calidad.
Competencias específicas
Cognitivas(Saber): - Plantearse los problemas de diseño: exceso de acoplamiento.
- Conocer distintas soluciones de diseño (patrones) ante determinadas
necesidades de diseño.
- Conocer desde un punto de vista crítico distintos enfoques
metodológicos de desarrollo.
- Conocer el uso de distintas herramientas de desarrollo.
Procedimentales/Instrumentales(Saber hacer): - Partiendo del análisis de un sistema software plantear un diseño
orientado hacia las necesidades de dicho sistema.
- Identificar y aplicar posibles patrones de diseño en problemas
concretos.
- Capacidad para aplicar distintas herramientas (sistema de control de
versiones, sistemas de prueba, ...) para mejorar el proceso.
Actitudinales: - Plantearse el diseño como un proceso contínuo.
- Búsqueda de la calidad en el desarrollo por medio de un diseño adecuado.
- Ponderar las ventajas e inconvenientes de distintas opciones de
diseño para la toma de la decisión.
- Uso de un enfoque crítico para valorar herramientas/modelos que
permitan mejorar la calidad del proceso de desarrollo (y del producto
obtenido).
Objetivos
- Introducir al alumno en el diseño orientado a objetos de la arquitectura y de
los diferentes subsistemas a partir de las especificaciones del sistema
software.
- Clasificar y diseñar sistemas software con alguna propiedad predominante:
interactividad, distribución, etc.
- Utilización de recursos tecnológicos para la implementación y las pruebas de
los sistemas diseñados.
Programa
Temario de Teoría
-----------------
Tema 1. Diseño Software:
1.1- Concepto de Diseño Software
1.2- Proceso de Diseño Orientado a Objeto
Tema 2. Principios de Diseño Orientado a Objeto
2.1- Conceptos y Principios de DOO
2.2- Ejemplos de los principios de diseño
Tema 3. Metodologías y Herramientas de implementación y pruebas.
3.1- Proceso de Desarrollo: Metodologías ágiles y refactorización.
3.2- Pruebas automáticas.
Tema 4. Patrones de Diseño
4.1- Introducción a los Patrones
4.2- Patrones Estrategia, Decorador y Observador
4.3- Patrones de Creación.
4.4- Patrones de Delegación: Fachada, Adaptador, Command
4.5- Otros Patrones: MVC, Iterador, ...
4.6- Aplicando Patrones
Tema 5. Equipo: Factores personales en el proceso de desarrollo.
Tema 6. Programación Defensiva.
PRACTICAS
----------
Como prácticas de la asignatura, se le solicitará al alumnado
el desarrollo de una aplicación sencilla, pasando por distintas fases (cada uno
con una entrega):
1- Diseño Conceptual de la aplicación.
2- Implementación de la aplicación, en Java.
3- Realización de test automáticos.
4- Mejora de la implementación usando las técnicas aprendidas en clase.
Adicionalmente, antes de introducir el problema se realizarán prácticas
de introducción de las herramientas recomendadas: Sistema de Control de
Versiones, IDE, JUnit, ...
Actividades
-Clases de teoría, utilizando transparencias.
- Realización de una serie de prácticas en la que se aplicarán algunos de los
principales patrones.
- Discusión en clase de distintas opciones de cara a implementar un sistema.
Metodología
Se aplicará una metodología dirigida por proyecto, en el que sobre una
especificación se realizan las distintas fases de diseño y de implementación.
Dicha práctica consta de varias entregas, en las que el profesor evaluará y
propondrá cambios para la próxima entrega. Se valorará principalmente el
cumplimiento de los principios de diseño aunque también ciertos aspectos de
implementación descritos en clase.
La idea de las distintas entregas es que no se vayan acumulando errores, y
mostrarle al alumno/a sus errores, para que pueda no cometerlos en fases
posteriores.
Una vez cubierto el ciclo guiado de diseño y de implementación, se deberá de
realizar una serie de cambios, aplicando las técnicas y patrones vistos en clase.
Por tanto, el proceso de trabajo se centra en la puesta en práctica de los
conceptos impartidos en las clases magistrales necesarias para la exposición de
los contenidos teóricos.
Distribución de horas de trabajo del alumno/a
Nº de Horas (indicar total): 125
- Clases Teóricas: 20
- Clases Prácticas: 26
- Exposiciones y Seminarios: 5
- Tutorías Especializadas (presenciales o virtuales):
- Colectivas: 8
- Individules:
- Realización de Actividades Académicas Dirigidas:
- Con presencia del profesorado:
- Sin presencia del profesorado: 12 (pr�icas)
- Otro Trabajo Personal Autónomo:
- Horas de estudio: 30 (repaso de conceptos impartidos en clase)
- Preparación de Trabajo Personal: 13
- ...
- Realización de Exámenes:
- Examen escrito:
- Exámenes orales (control del Trabajo Personal):
Técnicas Docentes
Sesiones académicas teóricas:Si |
Exposición y debate:Si |
Tutorías especializadas:No |
Sesiones académicas Prácticas:Si |
Visitas y excursiones:No |
Controles de lecturas obligatorias:No |
|
Criterios y Sistemas de Evaluación
La evaluación se realizará mediante:
- Realización de las prácticas planteadas a lo largo del curso. El criterio de
evaluación de las prácticas se hará público para que pueda servir como modelo de
auto-evaluación.
- Examen en el que se plantean la aplicación de los conocimientos adquiridos para
mejorar sistemas, de forma semejante a las prácticas.
- Presentación por parte de los alumnos de trabajo a exponer (la preparación de
ciertos patrones de diseño, o sobre alguna metodología).
Recursos Bibliográficos
* Gamma, E., et.al. Patrones de diseño. Addison-Wesley, 2003.
* Larman, C., UML y Patrones. Una introducción al análisis y diseño orientado a
objetos y al proceso unificado, 2ª ed., Prentice Hall, 2003.
* Eric Freeman & Elisabeth Freeman. Head First Design Patterns, O'Reilly, 2004.
* Brett D. McLaughlin, Gary Pollice, Dave West, Head First Object-Oriented
Analysis and Design, O'Reilly, 2006.
* Booch, G., Rumbaugh, J., Jacobson, I. El proceso unificado de desarrollo de
software. Addison-Wesley, 1999.
* Pressman, R. S. Ingeniería del software: un enfoque práctico, 5ª ed.
MacGraw-Hill, 2001.
* Booch, G., Rumbaugh, J., Jacobson, I. El lenguaje unificado de modelado:
manual de referencia. Addison-Wesley, 1999.
* Buschmann, F.et.al. Pattern-Oriented Software Architecture. A System of
Patterns. Wiley & Sons, 1996.
* The Pragmatic Programmer: From Journeyman to Master. Andrew Hunt and David
Thomas. Addison-Wesley.
El presente documento es propiedad de la Universidad de Cádiz y forma parte de su Sistema de Gestión de Calidad Docente. En aplicación de la Ley 3/2007, de 22 de marzo, para la igualdad efectiva de mujeres y hombres, así como la Ley 12/2007, de 26 de noviembre, para la promoción de la igualdad de género en Andalucía, toda alusión a personas o colectivos incluida en este documento estará haciendo referencia al género gramatical neutro, incluyendo por lo tanto la posibilidad de referirse tanto a mujeres como a hombres.
|