Usted está aquí: Inicio web asignaturas

Fichas de asignaturas 2007-08


  CÓDIGO NOMBRE
Asignatura 1710017 INGENIERÍA DEL SOFTWARE I
Titulación 1710 INGENIERÍA TÉCNICA EN INFORMÁTICA DE GESTIÓN
Departamento C137 LENGUAJES Y SISTEMAS INFORMATICOS
Curso 3  
Duración (A: Anual, 1Q/2Q) 1Q  
Créditos ECTS 4,5  

Créditos Teóricos 3 Créditos Prácticos 3 Tipo Troncal

 

Profesorado
Elena Orta Cuevas (coordinadora)
Nuria Hurtado Rodríguez
Situación
Contexto dentro de la titulación
Asignatura correspondiente a la materia troncal de Ingeniería del Software.
Recomendaciones
Se recomienda a los alumnos haber cursado las asignaturas:

- Introducción a la Programación.
- Metodología de la Programación.

Asimismo se recomienda a los alumnos que cursen simultaneamente esta
asignatura y la asignatura Bases de Datos I o que hayan cursado la asignatura
Bases de Datos I con anterioridad.
Competencias
Competencias transversales/genéricas
INSTRUMENTALES

- Capacidad de organización y planificación.
- Capacidad de análisis y síntesis.
- Capacidad para resolver problemas.
- Comunicación oral y escrita.
- Toma de decisiones.

PERSONALES

- Trabajo en equipo.
- Habilidades en las relaciones interpersonales.
Competencias específicas
  • Cognitivas(Saber):

    - Conocer las propiedades del software y su importancia en la
    sociedad.
    - Conocer los aspectos relacionados con el proceso de producción del
    software.
    - Conocer el estándar ISO/IEC 12207-1 de procesos del ciclo de vida
    del software.
    - Conocer el código de ética y profesional del ingeniero software
    (código de la ética de la ACM/IEEE).
    - Conocer el estándar IEEE 830-1998 de especificación de requisitos
    del software.
    - Aprender las principales diferencias de los distintos enfoques
    metodológicos en ingeniería del software.
    - Conocer los fundamentos de la metodología de la Administración
    Pública española Métrica V.3.
    - Aprender los conocimientos teóricos y prácticos fundamentales del
    análisis y diseño estructurado.
  • Procedimentales/Instrumentales(Saber hacer):

    - Utilizar una metodología de desarrollo de sistemas software.
    - Realizar la especificación de requisitos de un sistema.
    - Realizar el análisis estructurado de un sistema software.
    - Evaluar la consistencia de los diferentes modelos de análisis.
    - Realizar el diseño estructurado de un sistema software.
    - Evaluar la calidad del diseño modular de un sistema software.
  • Actitudinales:

    - Razonamiento crítico.
    - Compromiso ético.
    - Aprendizaje autónomo.
    - Creatividad.
    - Motivación por la calidad.
    - Planificación de las actividades a desarrollar.
Objetivos
- Tomar conciencia de la necesidad de considerar la producción del software
como un proceso de ingeniería.
- Conocer y utilizar el estándar IEEE 830-1998 de especificación de requisitos
del software.
- Conocer y aplicar las distintas técnicas del análisis estructurado de
sistemas.
- Conocer y aplicar las reglas de consistencia de los modelos del análisis
estructurado.
- Conocer y poner en práctica las técnicas del diseño estructurado.
- Conocer y aplicar las métricas de calidad del diseño estructurado.
- Aprender a utilizar la metodología Métrica V.3.
- Conocer las técnicas de pruebas del software.
- Ser capaz de analizar y diseñar software aplicando un enfoque de ingeniería.
Programa
CONTENIDO TEÓRICO

PARTE I.- El proceso de desarrollo del software.

Tema 1. Análisis de necesidades y estudio de viabilidad. (1 hora)

1.1. Cómo comienza un proyecto.
1.2. Estudios de viabilidad.
1.3. Técnicas de recolección de información.

Tema 2. Análisis de sistemas. (2 horas)

2.1. Funciones del análisis.
2.2. Principios fundamentales del análisis.
2.3. Especificación de los requisitos del software.
2.4. Visión general de las técnicas de especificación.

Tema 3. Análisis estructurado de sistemas. (11 horas)

3.1. Modelo funcional.
3.1.1. Diagramas de flujos de datos.
3.1.2. Diccionario de datos.
3.1.3. Especificación de procesos.
3.1.4. Comprobaciones de una especificación estructurada.
3.2. Modelo de datos.
3.2.1. Modelo E/R.
3.3. Modelo dinámico.
3.3.1. Diagramas de transición de estados.
3.4. Técnicas matriciales.

Tema 4. Diseño estructurado de sistemas. (6 horas)

4.1. Funciones del diseño.
4.2. Princios fundamentales del diseño.
4.3. Características del diseño estructurado.
4.4. Técnicas del diseño estructurado.
4.4.1. Técnicas de especificación de la estructura modular.
4.4.2. Técnicas de especificación de módulos.
4.5. Diseño de la arquitectura modular del sistema.
4.5.1. Estrategias de diseño.
4.5.2. Evaluación de la calidad del diseño.
4.6. Diseño de datos.
4.7. Diseño de la interfaz.
4.7.1. Diseño de la interfaz intermodular.
4.7.2. Diseño de la interfaz externa.
4.7.3. Diseño de la interfaz de usuario.
4.8. Diseño procedimental.
4.8.1. Definición de programas.
4.8.2. Documentación de programas.
4.9. Otros aspectos del diseño.

Tema 5. Pruebas del software. (4 horas)

5.1.  Filosofía de las pruebas del software.
5.2.  El proceso de prueba.
5.3.  Pruebas estructurales.
5.4.  Pruebas aleatorias.
5.5.  Enfoque práctico recomendado para el diseño de casos.
5.6.  Documentación del diseño de las pruebas.
5.7.  Ejecución de las pruebas.
5.8.  Estrategia de aplicación de las pruebas.

PARTE II.- La Ingeniería del Software.

Tema 6. Introducción a la Ingeniería del Software. (2 horas)

6.1. Relación entre informática e ingeniería del software.
6.2. Definición de ingeniería del software.
6.3. Una visión general de la ingeniería del software.
6.3.1. Responsabilidad ética y profesional del ingeniero software
(código de ética de ACM/IEEE).
6.3.2. Descripción de los procesos del ciclo de vida del software
(estándar ISO/IEC 12207-1).
6.3.3. Evaluación del proceso software y Modelo de Madurez de la Calidad
(CMM).

Tema 7. Ciclo de vida del software. (2 horas)

7.1. Introducción al ciclo de vida del software.
7.2. Ciclos de vida.
7.2.1. Modelo lineal secuencial.
7.2.2. Modelo de construcción de prototipos.
7.2.3. Modelo incremental.
7.2.4. Modelo en espiral.

Tema 8. Metodologías de desarrollo de software. (1 hora)

8.1. Definición y conceptos generales.
8.2. Visión histórica del desarrollo de metodologías de desarrollo.
8.3. Características principales de las metodologías.
8.4. Clasificación de las metodologías.
8.5. Metodología Métrica Versión 3.

CONTENIDO PRÁCTICO

Tema 1. Supuestos prácticos de análisis estructurado de sistemas. (24 horas)

Tema 2. Supuestos prácticos de diseño estructurado de sistemas. (6 horas)
Actividades
Para la consecución de las competencias específicas y desarrollar las
competencias genéricas especificadas anteriormente, se realizarán los
siguientes tipos de actividades:

* Búsqueda de información.
* Resolución de problemas.
* Realización de trabajos.
* Trabajo en equipo.
* Exposiciones.
* Debate.
Metodología
Se promoverá una metodología activa que fomente la participación activa del
alumno en el desarrollo de las clases y el autoaprendizaje del alumno. Para
ello se utilizarán los siguientes métodos docentes:

* Clases de teoría

Estas clases se utilizarán para la exposición de los contenidos teóricos de la
asignatura. Las exposiciones de los temas deben seguir un esquema básico en su
presentación que incluirá una síntesis de los conceptos estudiados en las
lecciones anteriores, los objetivos y puntos del tema a desarrollar, y, por
último, un resumen y conclusiones sobre los conceptos introducidos.

En el desarrollo de estas clases, los alumnos realizarán las siguientes
actividades:

- Análisis, debate y discusión de casos prácticos.
- Trabajo en equipo.
- Realización de trabajos.
- Exposiciones de los trabajos.

* Clases de problemas

Son un medio complementario muy importante a las clases de teoría y son
fundamentales para una buena comprensión de la asignatura. En estas clases el
profesor planteará problemas y supuestos prácticos que los alumnos deben
resolver en grupo antes de que el profesor explique la solución. En el
desarrollo de estas clases, los alumnos realizarán las siguientes actividades:

- Análisis, debate y discusión de soluciones de los problemas.
- Trabajo en equipo.
- Realización de trabajos.
- Resolución de problemas.
- Exposiciones de los trabajos.

* Aprendizaje tutorado

Algunos contenidos teóricos y prácticos de la asignatura se trabajarán
utilizando esta técnica de manera que se promueva el aprendizaje autónomo de
los alumnos. El profesor diseñará las actividades que considere necesarias
para que el alumno adquiera los conocimientos indicados en los objetivos de
la asignatura y promoverá la utilización activa de fuentes de información.

Se utilizará el campus virtual como herramienta de apoyo para la docencia.
Estarán disponibles herramientas de comunicación, foros especializados,
tutorías electrónicas privadas, correo electrónico y material docente en
formato digital.
Técnicas Docentes
Sesiones académicas teóricas:Si   Exposición y debate:Si   Tutorías especializadas:Si  
Sesiones académicas Prácticas:Si   Visitas y excursiones:No   Controles de lecturas obligatorias:No  
Criterios y Sistemas de Evaluación
CRITERIOS DE EVALUACIÓN

- Precisión y rigurosidad en el conocimiento de los temas tratados.
- Corrección técnica y formal de los trabajos realizados.
- Calidad de las exposiciones.
- Conocimiento y utilización de las técnicas estudiadas.
- Interés y grado de compromiso en su proceso de aprendizaje.
- Participación en las clases y en las actividades propuestas.
- Participación y calidad de las intervenciones en los debates y en los foros
del campus virtual.

TÉCNICAS DE EVALUACIÓN

- Realización de trabajos en grupo.
- Resolución de problemas (individual y en grupo).
- Exposición de trabajos y soluciones de problemas.
- Examen.

SISTEMA DE EVALUACIÓN

La calificación final de la asignatura en la convocatoria de enero podrá
obtenerse de una de las siguientes manera:

1. Evaluación continua

Calificación final = 0.10 x Adquisición de competencias genéricas +
0.45 x Nota Control Problemas Análisis +
0.25 x Nota Examen Final Teoría +
0.20 x Nota Examen Final Problemas Diseño

A los alumnos que no asistan a clase o que no superen el Control de Problemas
de Análisis, se les evaluará de acuerdo a la Fórmula 2. Evaluación Examen
Final.

2. Evaluación Examen Final

Calificación final = 0.25 x Nota Examen Final de Teoría +
0.50 x Nota Examen Final Problemas Análisis +
0.25 x Nota Examen Final Problemas Diseño

Para poder aplicar estas fórmulas, es indispensable haber obtenido una
calificación final en el examen de la asignatura >= 5 puntos, y haber obtenido
un mínimo de 4 puntos (sobre 10 puntos) tanto en el examen de teoría como los
exámenes de problemas.

En el resto de convocatorias oficiales del curso académico, la calificación
final del alumno se obtendrá de acuerdo a la Fórmula 2. Evaluación Examen
Final.
Recursos Bibliográficos
BIBLIOGRAFÍA BÁSICA

[MAP 00] Ministerio de Administraciones Públicas (MAP)
Página de Servicios y Productos del Consejo Superior de Informática.
[En línea]
URL: < http:/www.map.es/csi/metrica3>

[Piattini 02] Piattini, M.; “Análisis y diseño de aplicaciones informáticas de
gestión”, Ra-ma, 2002.

[Pressman 02] Pressman, R.; “Ingeniería del software. Un enfoque práctico”, 5ª
ed., McGraw Hill, 2002.

[Sommerville 02] Sommerville, I.; “Ingeniería del software”, 6ª ed., Addison
Wesley, 2002.


BIBLIOGRAFÍA COMPLEMENTARIA

[Page-Jones 88] Page-Jones, M.; “The Practical Guide to Structured System
Design”, Prentice Hall, 1988.

[Yourdon 93] Yourdon, E.; “Análisis estructurado moderno”, Prentice Hall,
1993.

[Yourdon Constantine 90] Yourdon, E.; Constantine, L.; “Structured Design”,
Prentice Hall, 1990.

El presente documento es propiedad de la Universidad de Cádiz y forma parte de su Sistema de Gestión de Calidad Docente.