lunes, 25 de marzo de 2013

#software-ciclos

Ciclo de vida del Software

El ciclo de vida de software es la descripción de las distintas formas de
desarrollo de un proyecto informático. Es la orientación que se sigue para que a
partir de los requerimientos del cliente se obtengan sistemas que puedan ser
utilizados por los usuarios. Otra de las definiciones más técnicas, dice que un ciclo
de vida es un conjunto de fases o etapas, procesos y actividades requeridas para
el desarrollo y la explotación de un producto software.

Ciclo de vida clásico o en cascada

Este modelo fue presentado por primera vez por Royce en 1970. Se
representa frecuentemente como un simple modelo con forma de cascada de las
etapas del software, como lo muestra la siguiente figura:


En este modelo la evolución del producto software procede a través de una secuencia ordenada de transiciones de una fase a la siguiente según el orden lineal. Este modelo semeja una máquina de estados finitos para la descripción de la evolución del producto software. El modelo en cascada ha sido útil para ayudara estructurar y gestionar grandes proyectos de desarrollo de software dentro de las organizaciones. Este modelo permite iteraciones durante el desarrollo, dentro de un mismo estado o de un estado a otro anterior. La mayor iteración se produce cuando una vez terminado el desarrollo y cuando se ha visto el software producido, se decide comenzar de nuevo y redefinir los requerimientos del usuario.

Etapas del Ciclo De Vida del Software

El ciclo de vida clásico del software siendo uno de los más utilizados tal como lo plantean diferentes autores, está conformado en su versión ampliada por siete etapas que se pueden representar mediante un modelo en cascada así:

- INGENIERÍA DE SISTEMAS: En esta etapa el analista luego de unminucioso y detallado estudio de los sistemas de una organización, detecta un problema o una necesidad que para su solución y/o satisfacción es necesario realizar un desarrollo de software.

- ANÁLISIS: En esta etapa se debe entender y comprender de forma detallada cual es la problemática a resolver, verificando el entorno en el cual se encuentra dicho problema, de tal manera que se obtenga la información necesaria y suficiente para afrontar su respectiva solución. Esta etapa es conocida como la del QUÉ se va a solucionar.

- DISEÑO: Una vez que se tiene la suficiente información del problema a solucionar, es importante determinar la estrategia que se va a utilizar para resolver el problema. Esta etapa es conocida bajo el CÓMO se va a solucionar.

- IMPLEMENTACIÓN: partiendo del análisis y diseño de la solución, en esta etapa se procede a desarrollar el correspondiente programa que solucione el problema mediante el uso de una herramienta computacional determinada.

- PRUEBAS: Los errores humanos dentro de la programación de los computadores son muchos y aumentan considerablemente con la complejidad del problema. Cuando se termina de escribir un programa de computador, es necesario realizar las debidas pruebas que garanticen el correcto funcionamiento de dicho programa bajo el mayor número de situaciones posibles a las que se pueda enfrentar.

- DOCUMENTACIÓN: Es la guía o comunicación escrita en sus diferentes formas, ya sea en enunciados, procedimientos, dibujos o diagramas que se hace sobre el desarrollo de un programa. La importancia de la documentación radica en que a menudo un programa escrito por una persona, es modificado por otra. Por ello la documentación sirve para ayudar a comprender o usar un programa o para facilitar futuras modificaciones (mantenimiento).

La documentación se compone de tres partes:

a. Documentación Interna: Son los comentarios o mensajes que se añaden al código fuente para hacer más claro el entendimiento de los procesos que lo conforman, incluyendo las precondiciones y las poscondiciones de cada función.

b. Documentación Externa: Se define en un documento escrito con los siguientes puntos:

Descripción del Problema

Datos del Autor

Algoritmo (diagrama de flujo o Pseudocódigo)

Diccionario de Datos

Código Fuente (programa)

c. Manual de Usuario: Describe paso a paso la manera como funciona el programa, con el fin de que el usuario lo pueda manejar para que obtenga el resultado deseado.

- MANTENIMIENTO: una vez instalado un programa y puesto en marcha para realizar la solución del problema previamente planteado o satisfacer una determinada necesidad, es importante mantener una estructura de actualización, verificación y validación que permitan a dicho programa ser útil y mantenerse actualizado según las necesidades o requerimientos planteados durante su vida útil. Para realizar un adecuado mantenimiento, es necesario contar con una buena documentación del mismo.

Para terminar de entender la problemática en la cual se desarrolla este libro es importante tener unos conceptos claros y precisos de lo que es el Análisis y el Diseño de Algoritmos.

Modelo del proceso de produccion de Software

Modelo en espiral: El modelo en espiral representa un enfoque dirigido al
análisis de riesgos y estructuración de procesos de software. El enfoque incorpora
métodos de proceso dirigidos por las especificaciones y por los prototipos. Esto se
lleva a cabo representando ciclos de desarrollo iterativos en forma de espiral,
denotando los ciclos internos del ciclo de vida análisis y prototipado temprano, y
los externos el modelo clásico. La dimensión radial indica los costos de desarrollo acumulativos.



Vídeo sobre el modelo en espiral.



Fuentes:

  • Modelo en espiral
    http://scruz334.blogspot.es/1193169600/
  • Video modelo en espiral
    http://www.youtube.com/watch?v=C8NYTfvU3v0

  • Modulo Evaluacion de Software - UNAD