Ingeniería del software javier Martín Centro Asociado de Móstoles / Tres Cantos uned introducción



Descargar 2,39 Mb.
Página1/11
Fecha de conversión20.02.2017
Tamaño2,39 Mb.
  1   2   3   4   5   6   7   8   9   10   11

INGENIERÍA DEL SOFTWARE

  • Javier Martín
  • Centro Asociado de Móstoles / Tres Cantos
  • UNED

Introducción

  • JAVIER MARTIN (jmartin@escet.urjc.es)
    • TUTORIAS: JUEVES/VIERNES de 7 a 9
  • PLAN DE TRABAJO
    • Exposición de los temas y mediante transparencia, abundando en los puntos más importantes.
    • Resolución de dudas
    • Propuesta y resolución de ejercicios y problemas

Temas

  • INTRODUCCIÓN
  • ESPECIFICACIÓN DEL SOFTWARE
  • FUNDAMENTOS DEL DISEÑO SOFTAWARE
  • TÉCNICAS GENERALES DE DISEÑO SOFTWARE
  • CODIFICACIÓN Y PRUEBAS
  • AUTOMATIZACIÓN Y PROCESO DE DESARROLLO

Tema 1: INTRODUCCIÓN

Concepto de Ingeniería de Sistemas

  • Concepto de sistema, conjunto de cosas que ordenadamente relacionadas entre sí contribuyen a un determinado objeto. De forma recursiva, las partes de un sistema pueden ser consideradas como nuevos sistemas (subsistemas).
  • Los sistemas informáticos están compuestos por ordenadores y sus periféricos. Entre ellos podemos distinguir dos tipos de subsistemas:
    • Sistemas Hardware, son los elementos materiales, los que se pueden tocar.
    • Sistemas Software, los programas que gobiernan el funcionamiento del computador.
  • El objetivo de los sistemas informáticos es el tratamiento de la información: almacenamiento, elaboración y presentación de datos. De esta forma se automatizan determinadas acciones.
  • En la concepción del sistema informático no solo se decide el trabajo a realizar, sino también cómo ha de ser utilizado por los usuarios.

Concepto de Ingeniería del Software

  • Características del software (lo contrario para el hardware):
    • No se desgasta ni envejece, y por este motivo no requiere reparaciones ocasionales
    • Su duplicación es poco costosa, lo caro es el desarrollo
    • Puede ser modificado fácilmente, tanto que es necesario un control de versiones
  • La Ingeniería del Software comprende las técnicas y procedimientos ingenieriles para el desarrollo del software.
  • La IS no se plantea solo una actividad de programación, previamente son necesarias las fases de análisis y diseño y posteriormente la integración y la verificación, incluso el manteniendo cuando el producto ya está en explotación. (CICLO DE VIDA).
  • Inicialmente la tarea de desarrollo era realizada individualmente por hábiles creativos, de forma poco disciplinada. El trabajo en equipo supone la división y organización del trabajo utilizando metodologías de desarrollo.
  • En los 70 y los 80 empiezan a usarse herramientas CASE (Computer Aided Software Engineering). En los 90 IPSE e ICASE.

La crisis del Software

  • Se produce cuando surge la necesidad de desarrollar aplicaciones software demasiado complejas, a mediados de los 60.
  • Para superar la crisis:
    • Aparición de metodologías concretas de desarrollo
    • Concepción de la Ingeniería del Software como disciplina
    • Trabajo en equipo y especialización (analistas, programadores, ...)
  • No se ha llegado a una situación estable, sino a una evolución permanente con avances continuos en la IS, forzados por el rápido abaratamiento y aumento de capacidad del hardware.

Mitos del Software

  • El hardware es mucho más importante que el software
  • El software es fácil de desarrollar
  • El software consiste exclusivamente en programas ejecutables
  • El desarrollo del software es sólo una labor de programación
  • Es natural que el software contenga errores

Formalización del proceso de desarrollo

  • La ingeniería supone la existencia de procesos bien establecidos para la realización de actividades de desarrollo, construcción, fabricación, etc.
  • El ciclo de vida es el proceso de desarrollo y mantenimiento del software. Según el modelo elegido se describen un conjunto de actividades para llevar a cabo el ciclo de vida,
  • Los modelos clásicos:
  • Prácticamente identifican actividades similares y sólo se diferencian en la forma de presentación.

MODELO EN CASCADA

MODELO EN CASCADA

  • ANÁLISIS, determinar qué debe hacer el software -> especificación
  • DISEÑO, descomponer y organizar el sistema para que los módulos puedan ser desarrollados por separado
  • CODIFICACIÓN, escribir el código fuente de cada módulo y realizar sobre ellos las pruebas necesarias
  • INTEGRACIÓN, combinar todos los módulos y probar el sistema completo antes de pasar a su explotación
  • MANTENIMIENTO, durante la explotación es necesario realizar cambios ocasionales bien para corregir errores o para introducir mejoras,
  • Se trata de aislar cada fase de las otras, lo que facilita la especialización de los desarrolladores. Al final de cada fase se requiere un proceso de revisión`para evitar que los errores se propaguen a fases posteriores provocando la vuelta atrás.

MODELO EN CASCADA AMPLIADO

MODELO EN CASCADA

  • Cada fase debe generar una información de salida precisa y suficiente:
    • DOCUMENTOS DE REQUISITOS DEL SOFTWARE (SRD), es una especificación precisa y completa a partir de los requisitos establecidos por el cliente.
    • DOCUMENTO DE DISEÑO DEL SOFTWARE (SDD),descripción de la estructura global del sistema, especificación de qué debe hacer cada uno de los módulos y de cómo se combinan.
    • CÓDIGO FUENTE, el programa debidamente comentado (documentación interna).
    • SISTEMA SOFTWARE, el ejecutable producto dela fase de integración y la documentación de las pruebas realizadas.
    • DOCUMENTOS DE CAMBIOS, después de cada modificación realizada en la fase de mantenimiento: problema detectado y solución adoptada


Compartir con tus amigos:
  1   2   3   4   5   6   7   8   9   10   11


La base de datos está protegida por derechos de autor ©absta.info 2019
enviar mensaje

    Página principal