TEMA 1

EL CICLO DE VIDA DE UN SISTEMA

 

1. 1.- METODOLOGÍA DE DESARROLLO DE SISTEMAS DE INFORMACIÓN

Por metodología se entiende "un conjunto integrado de técnicas y método que permite abordar de forma homogénea y abierta cada una de las actividades del ciclo de vida de un proyecto de desarrollo de un sistema de información"

La utilización de técnicas de diagramas favorece la comunicación entre el personal de desarrollo y los usuarios para los que se realiza el sistema. La documentación esquemática que se establece facilita el mantenimiento del sistema, lo que hace que se consiga mayor calidad del mismo. Para que todas estas ventajas sean efectivas, es preciso introducir la metodología gradualmente, diseñando previamente:

El que un sistema deba o no ser informatizado es algo que discutiremos a lo largo del curso. Como analistas de sistemas supondremos que todo sistema con el que nos encontremos deberá ser informatizado y, el usuario con quien actuaremos generalmente supondrá tal predisposición. La labor primaria como analista, será analizar o estudiar el sistema para determinar su esencia: su comportamiento requerido, independientemente de la tecnología utilizada para implantar el sistema.

La incapacidad de estimar el tiempo, coste y esfuerzo necesario para el desarrollo de un producto software y, la falta de calidad del software producido son la causa de la aparición de la Ingeniería del software como una disciplina científica.

Para clasificar el software se parte de la definición de Pressman: "El software se compone de los siguientes elementos:

La Calidad del software se mide en base a los conceptos de:

 

1. 2.- CICLO DE VIDA

Es el conjunto de fases por las que debe pasar un proyecto desde su concepción inicial, hasta que el sistema deja de utilizarse o se transforma en otro.

Existen diferentes modelos de ciclo de vida, que pueden aplicarse en función del tipo de sistema a desarrollar.

CICLO DE VIDA CLÁSICO O EN CASCADA

Este ciclo establece una serie de fases, al finalizar las cuales se obtiene una serie de productos (documentos, diagramas, programas) que permite evaluar lo realizado hasta ese momento y continuar con la fase siguiente o modificar algunos aspectos de las fases anteriores.

INCONVENIENTES:

  1. Desarrollo manual.
  2. Las herramientas utilizadas no están integradas ni relacionadas entre sí.
  3. Los errores de análisis y diseño son muy caros de eliminar, ya que se encuentran muy tarde.
  4. Se produce efecto bola de nieve: los errores se arrastran a las fases siguientes..

 

CICLO DE VIDA DE PROTOTIPOS

Clases de prototipos:

Este ciclo casi siempre supone que el modelo será operante, es decir, una colección de programas que simularán alguna o todas las funciones que el usuario desea. Pero dado que se pretende que dichos programas sean solo de modelo, también se supone que al concluirse el modelado, los programas se descartarán y se reemplazarán con programas reales. Normalmente se utilizan las siguientes herramientas:

VENTAJAS:

  1. Se incrementa la productividad del equipo de desarrollo. Se incrementa la calidad del producto final, ya que el prototipo permite trabajar, ensayar,...
  2. disminuyen los costes de mantenimiento del producto final. Los tiempos de desarrollo son inferiores.
  3. El tamaño del sistema es menor.
  4. La especificación actúa como interface entre cliente y equipo de desarrollo.
  5. El propio prototipo sirve de contrato con el cliente y cualquier cambio en el prototipo debe estar consolidado por ambas partes.
  6. El prototipo es un documento vivo de buen funcionamiento del producto final.
  7. Ayuda para determinar requerimientos expresados en el prototipo. Experimenta sobre los aspectos del sistema que representan mayor complejidad. Demuestran la viabilidad del sistema.
  8. El cliente reacciona mucho mejor ante el prototipo, sobre el que puede experimentar, que no sobre una especificación escrita.

INCONVENIENTES:

  1. Fuerte inversión en un producto que se desechable: Los prototipos se descartan.
  2. Tendencia a tratar de convertir el prototipo mismo en el sistema de producción.
  3. Aumento del coste.
  4. Se arrastran decisiones del diseño de prototipos al producto final.

 

CICLO DE VIDA DE PROGRAMACIÓN AUTOMÁTICA

El punto de partida es la utilización de un lenguaje formal de especificación, en el que las especificaciones son directamente ejecutables, o lo que es lo mismo, la especificación es el prototipo. El programa se obtiene de forma automática a partir de la especificación.

INCONVENIENTES:

  1. No se dispone de la tecnología necesaria para aplicarla en su totalidad.

 

 

DIFERENCIAS ENTRE PROGRAMACIÓN AUTOMÁTICA Y PROTOTIPADO

PARADIGMA AUTOMÁTICO

P. CLÁSICO CON PROTOTIPADO

1.- Especificación Formal.

1.- Especificación Informal.

2.- La especificación es el prototipo (se deriva directamente de ella)

2.- Prototipo manual.

3.- Prototipo validado contra requerimientos.

3.- Se valida comportamiento final contra código.

4.- El prototipo evoluciona hasta implementación.

4.- el prototipo se desecha para pasar al producto final.

5.- Implementación automática o fuertemente asistida.

5.- Implementación manual.

6.- Mantenimiento por reemplazos de la especificación.

6.- Mantenimiento por remiendos del código.