CICLO DE VIDA DEL SOFTWARE El ciclo de vida de un sistema de

Anuncio
1. CICLO DE VIDA DEL SOFTWARE
El ciclo de vida de un sistema de información es un enfoque por fases del análisis
y diseño que sostiene que los sistemas son desarrollados de mejor manera
mediante el uso de un ciclo especifico de actividades del analista y del usuario.
Según James Senn, existen tres estrategias para el desarrollo de sistemas: el
método clásico del ciclo de vida de desarrollo de sistemas, el método de desarrollo
por análisis estructurado y el método de construcción de prototipos de sistemas,
en su momento, claro está, no se habían desarrollado las metodología orientadas
a objetos. Cada una de estas estrategias tiene un uso amplio en cada una de los
diversos tipos de empresas que existen, y resultan efectivas si son aplicadas de
manera adecuada. En resumen, es el conjunto de actividades llevadas a cabo
para desarrollar y poner en marcha un Sistema de Información, existen múltiples
metodologías y las fases son determinadas por la metodología escogida.
1.1 OBJETIVOS DE LAS METOLOGÍAS



Definir actividades a llevarse a cabo en un Proyecto de S.I.
Unificar criterios en la organización para el desarrollo de S.I.
Proporcionar puntos de control y revisión
1.2 TIPOS DE METODOLOGÍAS DE SISTEMAS

Estructurada: Se enfoca en una visión funcional del sistema, estableciendo
técnicas que ayudan a la implementación de las fases que deben ser
cumplidas en un oren establecido y cuya finalización coincide con la entrega de
un producto final que sirve de alimento a la nueva fase. Muchos autores han
escrito sobre esta metodología, encontrando en cada uno modificaciones a las
fases, pero a grandes rasgos coinciden en los fundamentos de la metodología
clásica, cuyas fases son:
o Estudio de factibilidad
o Análisis
o Diseño
o Programación
o Implantación
 Prueba
 Conversión
 Adiestramiento
 Documentación
 Entrega al usuario
o Mantenimiento
o Auditoria
Sus características generales son:
o
o
o
o
o
Se maneja como proyecto
Gran volumen de datos y transacciones
Abarca varias áreas organizativas de la empresa
Tiempo de desarrollo largo
Requiere que se cumplan todas las etapas, para poder cumplir las
siguientes (progresión lineal y secuencial de una fase a la otra)
Fig. 1 Metodología Estructurada

Evolutiva – Incremental: También llamada Ciclo de Vida en Cascada, es una
adaptación de la metodología estructurada que permite seguir secuencias
ascendentes y descendentes en las etapas de desarrollo, permitiendo que
estas se desarrollen en paralelo. Con esto reconoce que en los sistemas reales
es necesaria la retroalimentación de las fases, ya que en muchos casos
problemas encontrados en estadíos posteriores corresponden a omisiones de
fases anteriores.
Algunos problemas heredados de su antecesor son:
o No refleja realmente el proceso de desarrollo del software
o Se tarda mucho tiempo en pasar por todo el ciclo
o Perpetua el fracaso de la industria del software en su comunicación con
el usuario final
o El mantenimiento se realiza en el código fuente
o Las revisiones de proyectos de gran complejidad son muy difíciles
o Impone una estructura de gestión de proyectos
Software y Procesos Contables
Página 2
Fig. 2 Metodología Evolutiva Incremental o de Cascada

Prototipos: El modelo de prototipos que pertenece a los modelos de desarrollo
evolutivo, se inicia con la definición de los objetivos globales para el software,
luego se identifican los requisitos conocidos y las áreas del esquema en donde
es necesaria más definición. Entonces se plantea con rapidez una iteración de
construcción de prototipos y se presenta el modelado (en forma de un diseño
rápido). El diseño rápido se centra en una representación de aquellos aspectos
del software que serán visibles para el cliente o el usuario final (por ejemplo, la
configuración de la interfaz con el usuario y el formato de los despliegues de
salida). El diseño rápido conduce a la construcción de un prototipo, el cual es
evaluado por el cliente o el usuario para una retroalimentación; gracias a ésta
se refinan los requisitos del software que se desarrollará. La iteración ocurre
cuando el prototipo se ajusta para satisfacer las necesidades del cliente. Esto
permite que al mismo tiempo el desarrollador entienda mejor lo que se debe
hacer y el cliente vea resultados a corto plazo.
Etapas para la creación del Sistema de Prototipos:
o Definición de las especificaciones del sistema (pantallas, menú,
reportes, base de datos)
o Creación del sistema prototipo (interfaz, pantallas, reportes, base de
datos, parte código fuente)
o Refinación del sistema prototipo (se expande y refina el sistema de
acuerdo a los requerimientos de los usuarios)
o Desarrollo del sistema operativo (en base al prototipo final, se desarrolla
el sistema operativo y se elimina el sistema prototipo)
Características:
Software y Procesos Contables
Página 3
o
o
o
o
o
o
Desarrolla modelo en escala del sistema propuesto (sistema objetivo)
Se prueba y refina hasta que usuarios los usuarios estén conformes
Identifica necesidades de información
Maneja principales procedimientos orientados a transacciones
Produce informes críticos
Permite consultas rudimentarias
o Complementa especificaciones imprecisas y/o incompletas de los usuarios
Fig. 3 Metodología de Prototipado Evolutivo

Orientada a Objetos: Esta metodología se basa en el Análisis y diseño
orientado a objetos (ADOO) es un enfoque de la ingeniería de software que
modela un sistema como un grupo de objetos que interactúan entre sí. Este
enfoque representa un dominio en términos de conceptos compuestos por
verbos y sustantivos, clasificados de acuerdo a su dependencia funcional.
En éste método de análisis y diseño se crea un conjunto de modelos utilizando
una notación acordada como, por ejemplo, el lenguaje unificado de modelado
(UML). ADOO aplica técnicas de modelado de objetos para analizar los
requerimientos para un contexto - por ejemplo, un sistema de negocio, un
conjunto de módulos de software - y para diseñar una solución para mejorar los
procesos involucrados. No está restringido al diseño de programas de
Software y Procesos Contables
Página 4
computadora, sino que cubre sistemas enteros de distinto tipo. Las
metodologías de análisis y diseño más modernas son casos de uso guiados a
través de requerimientos, diseño, implementación, pruebas, y despliegue.
El lenguaje unificado de modelado se ha vuelto el lenguaje de modelado
estándar usado en análisis y diseño orientado a objetos.
Las etapas de esta metodología coinciden en mucho con las estructuradas
tradicionales, pero las herramientas usadas son diferentes. Estas etapas son:
o
o
o
o
o
o
o
o
o
Requerimientos
Análisis de la estructura de objetos
Análisis del comportamiento de objetos
Diseño de la estructura de objetos
Diseño del comportamiento de objetos
Programación
Prueba
Puesta en producción
Mantenimiento
Fig. 4 Ejemplo de diagrama de clases
1.3 INGENIERIA DEL SOFTWARE ASISTIDA POR COMPUTADOR
Ingeniería del Software Asistida por Computador (CASE) es el nombre que se le
da al software que se utiliza para ayudar a las actividades del proceso del software
como la ingeniería de requerimientos, el diseño, el desarrollo de programas y las
pruebas. Por lo tanto, las herramientas CASE incluyen editores de diseño,
diccionarios de datos, compiladores, depuradores, herramientas de construcción
de sistemas, etcétera.
Software y Procesos Contables
Página 5
La tecnología CASE proporciona ayuda al proceso de software automatizando
algunas de sus actividades, así como proporcionando información acerca del
software en desarrollo. Algunos ejemplos de las actividades que se pueden
automatizar utilizando CASE son:





El desarrollo de modelos gráficos del sistema como parte de la especificación
de requerimientos o del diseño de software.
La comprensión del diseño utilizando un diccionario de datos que tiene
información sobre las entidades y relaciones del diseño.
La generación de interfaces de usuario a partir de la descripción gráfica de la
interfaz que es elaborada de forma interactiva por el usuario.
La depuración de programas por medio de la provisión de la información
proporcionada por los programas en ejecución.
La conversión automática de programas de una versión anterior de un lenguaje
de programación, como COBOL, a una más reciente.
MIEMBROS DE UN PROYECTO DE SISTEMAS






Líder (Gerencia el proyecto)
Analista (Recoge información inicial y define requerimientos)
Diseñador S.I. (Diseña el S.I.)
Diseñador B.D. (Diseña Base de Datos)
Programador (Codifica/Prueba)
Usuario Directo (expresa necesidades)
Software y Procesos Contables
Página 6
Descargar