miércoles, 6 de octubre de 2010

Unidad 2: Caso de estudio 1

UD02.- CICLO DE VIDA Y METODOLOGIAS DE DESARROLLO DEL SW.
Ejercicios Caso 1


ACTIVIDAD 3

Fundamentos de la ingenieria de software

Métodos
  • Planificación y estimación de proyectos
  • Análisis de requisitos
  • Diseño
  • Codificación
  • Pruebas
  • Mantenimiento
Herramientas
  • Herramientas CASE
  • Herramientas CAD
Procedimientos
  • Secuencia de aplicación de los métodos
  • Uso de las herramientas,
  • Las entregas requeridas
  • Controles de seguimiento y calidad,
  • Guías para facilitar la labor de gestores y desarrolladores
  • etc.
Técnicas de apoyo
  • Abstracciones
  • Representaciones
  • Evaluaciones 

ACTIVIDAD 5

El trabajo de Desarrollo de software se compone de las siguientes fases:

ANÁLISIS: Estudio de viabilidad. Deducción de requisitos. Análisis de requisitos. Modelado del sistema. Prototipado.

DISEÑO: Arquitectura del sistema. Detallado. Interfaz de usuario. Datos.

CONSTRUCCIÓN:
CODIFICACIÓN:
  • Documentación.
  • Codificación.
  • Debug (Depuración).
  • PRUEBAS: Probar el producto.
INSTALACIÓN: Usar el producto obtenido.

MANTENIMIENTO: Seguimiento del producto durante su funcionamiento real.

Y durante todas estas fases:
  • Aceptación del producto
  • Validación y verificación.
  • Inspecciones y revisiones.
  • Planificación de prueba.
  • Pruebas de unidad.
  • Pruebas de integración.
  • Pruebas de regresión.
  • Pruebas del sistema. Pruebas de aceptación.

 ACTIVIDAD 6

Ciclo de vida del software

Planificación:
  • Planificación preliminar,
  • estudio de viabilidad,
  • análisis de riesgos y planificación temporal.
Análisis (¿Qué hacer?):
  • Análisis y Especificación de requisitos
  • Modelado de software y Modelado conceptual de base de datos
Elección del SGBD: Solo si se trata de un sistema de base de datos
Diseño (¿Cómo hacerlo?):
  • Diseño lógico y físico de base de datos
  • Diseño de programas de aplicaciones
Implementación y ajuste del sistema:
  • Se crea y carga la base de datos y se implementan las aplicaciones.
Validación y pruebas:
  • De información, rendimiento y comportamiento.
Despliegue:
  • Operación, Mantenimiento y Actualizaciones del sistema. 

ACTIVIDAD 7


Consta de 4 modelos

Modelo en Cascada

Características:
  • Es el más utilizado.
  • Es una visión del proceso de desarrollo de software como una sucesión de etapas que producen productos intermedios.
  • Para que el proyecto tenga éxito deben desarrollarse todas las fases.
  • Las fases continúan hasta que los objetivos se han cumplido.
  • Si se cambia el orden de las fases, el producto final será de inferior calidad,

CRITICAS:
  • No refleja realmente el proceso de desarrollo del software
  • Se tarda mucho tiempo en pasar por todo el ciclo
  • Perpetua el fracaso de la industria del software en su
  • comunicación con el usuario final
  • El mantenimiento se realiza en el código fuente
  • Las revisiones de proyectos de gran complejidad son muy difíciles
  • Impone una estructura de gestión de proyectos

Limitaciones:
  • No se permiten las iteraciones.
  • Los requisitos se congelan al principio del proyecto.
  • No existe un proyecto “enseñable” hasta el final del proyecto.


Modelo: Construcción de prototipos


  • No modifica el flujo del ciclo de vida
  • Reduce el riesgo de construir productos que no satisfagan las necesidades de los usuarios
  • Reduce costos y aumenta la probabilidad de éxito
  • Exige disponer de las herramientas adecuadas
  • No presenta calidad ni robustez
  • Una vez identificados todos los requisitos mediante el prototipo, se construye el producto de ingeniería.

EL PROTOTIPADO PARA QUE SEA EFECTIVO:
  • Debe ser un sistema con el que se pueda experimentar
  • Debe ser comparativamente barato (< 10%)
  • Debe desarrollarse rápidamente
  • Énfasis en la interfaz de usuario
  • Equipo de desarrollo reducido
  • Herramientas y lenguajes adecuados
  • “ El prototipado es un medio excelente para recoger el ‘feedback’ (realimentación) del usuario final”

PELIGROS DEL PROTOTIPO
  • El cliente ve funcionando lo que para el es la primera versión del prototipo que ha sido construido con “plastilina y alambres”, y puede desilusionarse al decirle que el sistema aun no ha sido construido.
  • El desarrollador puede caer en la tentación de ampliar el prototipo para construir el sistema final sin tener en cuenta los compromisos de calidad y de mantenimiento que tiene con el cliente.



Modelo Incremental


  • Es una repetición de varios ciclos de vida en cascada.
  • Al final de cada ciclo se entrega una versión parcial del software incrementada con cierta funcionalidad nueva respecto a las entregas anteriores.
  • Los ciclos se repiten hasta obtener un producto completo.
  • Los usuarios disponen antes del software, aunque no sea completo, por lo que pueden sugerir mejoras.
  • Se suele aplicar a desarrollos de gran tamaño.
  • Se evitan proyectos largos y se entrega “ Algo de valor ” a los usuarios con cierta frecuencia
  • El usuario se involucra más
  • Difícil de evaluar el coste total
  • Requiere gestores experimentados
  • Los errores en los requisitos se detectan tarde.
  • El resultado es ser muy positivo



Modelo en Espiral


  • Trata de mejorar los ciclos de vida clásicos y prototipos.
  • Permite acomodar otros modelos
  • Incorpora objetivos de calidad y gestión de riesgos
  • Elimina errores y alternativas no atractivas al comienzo
  • Permite iteraciones, vuelta atrás y finalizaciones rápidas

Cada ciclo empieza identificando:
  • Los objetivos de la porción correspondiente
  • Las alternativas

Restricciones
  • Cada ciclo se completa con una revisión que incluye todo el ciclo anterior y el plan para el siguiente
  • Se usa en proyectos en los que se prevén riesgos.
  • Representa un enfoque dirigido por el riesgo para el análisis y estructuración del proceso software.

Ventajas:
  • Utiliza las fases de modelos tradicionales. Se centra en la eliminación de errores y alternativas poco atractivas.
  • Su orientación a detectar y prevenir el riesgo evita muchas dificultades.

Desventajas:
  • Complicado: Consume muchos recursos.
  • Las etapas y sus E/S no están claramente definidas.



No hay comentarios:

Publicar un comentario