Ingeniería Técnica en Informática de Sistemas

Ingeniería Técnica en Informática de Gestión

Asignaturas extinguidas. Esta página ya NO se mantiene

Logo DISSI

Ingeniería del software (Segundo curso)

Sistemas: Código 53210- / Gestión: Código 542084 (Plan nuevo)    6 créditos

ÍNDICE

  1. Equipo docente

  2. Objetivos de la asignatura

  3. Contenidos

  4. Bibliografía básica

  5. Bibliografía complementaria

  6. Exámenes tipo test (modalidad antigua)

  7. Soluciones a los exámenes de convocatorias anteriores

  8. Evaluación

  9. Prácticas y material de ejercicio

  10. Ejemplo de aplicación de los contenidos de la asignatura al desarrollo de sistema de gestión web

  11. Horarios de consulta

  12. Programas de radio

 1. EQUIPO DOCENTE

   2. OBJETIVOS DE LA ASIGNATURA

Bajo el epígrafe de ‘Ingeniería del software’ se adscriben una gran cantidad de disciplinas, técnicas y metodologías que hacen referencia a todas las actividades relacionadas con la fabricación del software y su gestión, presentadas desde el punto de vista de la ingeniería. Este concepto abre un abanico muy amplio que es totalmente nuevo para el alumno.

    Esta asignatura es de introducción y presenta, de todas las facetas de la Ingeniería del software, las ideas relacionadas con el producto software en sí: lo que se ha dado en llamar ‘Ingeniería del producto software’.

2.1 Objetivos generales.

-    Situación de la asignatura dentro de la titulación. Como se ha comentado anteriormente en la presentación, esta es una asignatura de introducción y, aunque el planteamiento es totalmente nuevo para el alumno, los contenidos son consecuencia natural de los presentados en las asignaturas Programación I, Programación II, Programación III y Estructuras de datos y algoritmos. Dichos contenidos se complementan, y a ellos les sirve de apoyo, los de otra asignatura que es coetánea: Bases de datos. Además, la asignatura se amplía con otras posteriores como Ingeniería del software de gestión; Configuración, diseño y gestión de sistemas informáticos; Ingeniería de sistemas; Lenguajes de programación; Sistemas de gestión de bases de datos; Programación concurrente o Programación declarativa, entre otras.

-    Objeto de la asignatura. De todos los ámbitos de la Ingeniería del software, esta asignatura se centra en lo en el informe técnico CMU/SEI-99-TR-004 se denomina “Ingeniería del producto software” y define como: “Un conjunto de actividades, bien definidas e integradas, orientadas a la construcción de productos software, correctos y consistentes, de una manera eficaz y eficiente.

-    Que el alumno reflexione sobre el hecho de la ‘fabricación del software’.

-    Modelado de los procesos implicados en la fabricación: Ciclo de vida del software.

-    Análisis y estudio de cada fase del ciclo de vida ‘en cascada’.

2.2 Objetivos particulares.

Los objetivos específicos, agrupados por temas, que se intentan alcanzar en esta asignatura son:

- Tema 1. Que el alumno reflexione sobre la naturaleza del software, asimile y madure este concepto y concluya las repercusiones que tiene en los procesos de fabricación. Ciclo de vida del software: significado y características principales de tres familias de modelos.

-    Tema 2. Fase de definición del producto: el análisis.

-    Temas 3 y 4. Fase de diseño.

-    Tema 5. Codificación, pruebas e integración.

-    Tema 5. El mantenimiento: justificación de las ‘buenas prácticas’ presentadas para el desarrollo del software.

2.3. Niveles mínimos exigidos.

A continuación se presentan los elementos de aprendizaje que se consideran el mínimo que el alumno debe haber adquirido al concluir la asignatura:

-    Reflexión sobre la naturaleza del software y sus implicaciones. Demostrar que esta reflexión ha llevado al alumno a una madurez en sus planteamientos como constructor de software.

-    Conocimiento de las características principales y de cómo se aplican las tres familias de ciclos de vida que se ven en la asignatura.

-    Demostrar el dominio del concepto y el conocimiento del significado de la fase de análisis del ciclo de vida en cascada.

-    Conocer las principales técnicas de análisis estructurado y las notaciones para el modelado más relevantes.

-    Demostrar el dominio del concepto y el conocimiento del significado de la fase de diseño del ciclo de vida en cascada.

-    Conocer las principales técnicas y notaciones empleadas para el diseño, especialmente las del diseño estructurado.

-    Discernir claramente entre el análisis y el diseño. El alumno debe ser capaz de establecer con nitidez los límites y las diferencias.

-    Conocer el significado del resto de las fases del ciclo de vida en cascada, así como las principales técnicas y metodologías que se emplean en cada una de estas fases y que se ven en la asignatura.

   3. CONTENIDOS

Unidad Didáctica I

TEMA 1. INTRODUCCIÓN: Concepto de Ingeniería de Sistemas. Características del software. Concepto de Ingeniería de Software. Formalización del proceso de desarrollo. Uso de prototipos. El modelo en espiral. Combinación de modelos. Mantenimiento del Software. Garantía de calidad de software. 

TEMA 2. ESPECIFICACIÓN DE SOFTWARE: Modelado de sistemas. Análisis de requisitos de software. Notaciones para la especificación. Documento de especificación de requisitos. Ejemplos de especificaciones. 

Unidad Didáctica II

TEMA 3. FUNDAMENTOS DEL DISEÑO DE SOFTWARE Introducción Conceptos de base. Notaciones para el diseño. Documentos ele diseño

TEMA 4. TÉCNICAS GENERALES DEL DISEÑO DE SOFTWARE: Descomposición modular. Técnicas de diseño funcional descendente. Técnicas de diseño basado en abstracciones. Técnicas de diseño orientadas a objetos. Técnicas de diseño de datos. Diseño de bases de datos relacionales. Diseño de bases de datos de objetos. Ejemplos de diseños.

Unidad Didáctica III

TEMA 5. CODIFICACIÓN Y PRUEBAS: Codificación del diseño. Lenguajes de programación. Desarrollo histórico. Prestaciones de los lenguajes. Criterios de selección del Lenguaje. Aspectos metodológicos. Técnicas de prueba de unidades. Estrategias de integración. Pruebas de sistema.

   4. BIBLIOGRAFÍA BÁSICA

JOSÉ A. CERRADA y col.: "Introducción a la Ingeniería del Software". Primera Edición de 2000. Editorial Centro de Estudios Ramón Areces, S.A.

  5. BIBLIOGRAFÍA COMPLEMENTARIA

  Estos libros pueden ser de utilidad para la preparación de la asignatura. No obstante, el texto base se ajusta totalmente al programa. Los temas tratados están recogidos en una gran variedad de libros de ingeniería de software. Algunos abarcan todos los temas y otros están dedicados a temas específicos (análisis, diseño, prueba, etc.). Algunos de los libros con un carácter mas general son:

6. EXÁMENES TIPO TEST (MODALIDAD ANTIGUA)

    En los siguientes enlaces puede adquirir los enunciados de los exámenes anteriores y las soluciones de los tests en formato PDF:

    Obsérvese que en años anteriores la parte teórica se evaluaba con una prueba tipo test, mientras que en este curso, la prueba consistirá en un desarrollo escrito.

7. EXÁMENES DE CONVOCATORIAS ANTERIORES (MODALIDAD VIGENTE)

    Las soluciones que se muestran en estos documentos NO son dogmáticas, únicas ni cerradas. Son sólo propuestas y sugerencias del equipo docente con el ánimo de que sirvan para ilustrar los conceptos de la asignatura.

8. EVALUACIÓN

    La prueba presencial constará de dos partes:

    La nota total (Primera parte + Segunda parte) mínima para aprobar el examen será de 5 puntos.

Si en alguna de las preguntas no se alcanzase la puntuación mínima, la calificación final se calculará con el mínimo entre la suma de las calificaciones de las preguntas que sí se han puntuado y cuatro (4).

9. PRÁCTICAS Y MATERIAL DE EJERCICIO

  Las prácticas son voluntarias y no se tendrán en cuenta para la evaluación final. El objetivo de las prácticas es contrastar con el Tutor y el resto de los compañeros diversas propuestas de análisis/diseño argumentando sus ventajas e inconvenientes. Para la realización de las prácticas, en la parte de ANÁLISIS, modelos gráficos y diagramas de objetos, puede utilizar el entorno gratuito Astah/Community (ahora JUDE se llama Astah).

  1. Enunciado de las prácticas
  2. Herramienta de modelado en UML sin actualización de Java (Astah/Community) o, la misma herramienta, pero con actualización del entorno de Java (ambas requieren alta gratuita en la página de Astah). Para entornos distintos de Windows está este otro paquete de Astah/Community. Se recomienda descargar las últimas versiones —y más adecuadas a su sistema— en la página de Astah. Allí también encontrará versiones de prueba con más funcionalidades o un visualizador para representar sus diagramas en el navegador Web.

  Además de las soluciones de los exámenes, que están publicadas en esta página y que el alumno puede utilizar como material complementario para la comprensión de la asignatura, se pueden encontrar aquí otros materiales como esquemas y resúmenes elaborados por el equipo docente, tutores o terceros; que pueden resultar de ayuda.

  Para la parte de técnicas y metodologías de diseño, hay un esquema-resumen que intenta poner un poco de orden en las denominaciones y procedencias de dichas técnicas de diseño procedimental.

10. EJEMPLO DE APLICACIÓN DE LOS CONTENIDOS DE LA ASIGNATURA AL DESARROLLO DE SISTEMA DE GESTIÓN WEB

El Proyecto Fin de Carrera de Pablo López López (2005-06) consistió en el desarrollo de un "Sistema para la gestión web de los productos de una empresa". Para su realización, se utilizó el Ciclo de Vida en Cascada y el Diseño Estructurado. Creemos que este proyecto ofrece una interesante visión panorámica de los contenidos de la asignatura.

  1. Memoria del proyecto
  2. Código del proyecto

  11. HORARIO DE CONSULTA  

Lunes o jueves lectivos, de 16 a 20 horas.

Lugar: Edificio E.T.S.I. Informática

Departamento de Ingeniería de Software y Sistemas Informáticos.
C/ Juan del Rosal, 16 (Ciudad Universitaria).
28040 MADRID
 

Teléfonos:

91 398 77 92 (Lunes, de 16 a 20 h)

91 398 82 20 (Jueves, de 16 a 20 h)

91 398 64 85 (Jueves, de 16 a 20 h)

 
12. PROGRAMAS DE RADIO

   Consultar la Guía de Medios Audiovisuales de la UNED para la programación de radio de la asignatura.