CICLO DE VIDA DE UN PROYECTO
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. Cada una de estas
estrategias tienen un uso amplio en cada una de los diversos tipos de empresas
que existen, y resultan efectivas si son aplicadas de manera adecuada.
CICLO DE VIDA CLÁSICO DEL DESARROLLO DE SISTEMAS
El método de
ciclo de vida para el desarrollo de sistemas es el conjunto de actividades que
los analistas, diseñadores y usuarios realizan para desarrollar e implantar un
sistema de información.
Concepto de Ciclo de Vida de un Proyecto.
Cada
vez son más las organizaciones grandes y pequeñas que están adoptando un ciclo
de vida uniforme y único para sus proyectos. Esto muchas veces se conoce como
el plan del proyecto o metodología del desarrollo del sistema. El manual del
ciclo de vida del proyecto suele ser un libro tan voluminoso como el compendio
de normas. Este manual ofrece un procedimiento común a seguir para desarrollar
un sistema que puede orientar a cualquier miembro de la organización de
desarrollo de sistemas.
El
enfoque puede ser casero o también la organización para el desarrollo de
sistemas puede comprar un paquete de administración de proyectos y ajustarlo a
las necesidades de la compañía. Además de dar empleo a personas que crean
manuales de ciclo de vida de proyectos, es conveniente la metodología del proyecto.
¿De qué sirve entonces tener un ciclo de vida de un proyecto? Existen tres
objetivos principales:
1. Definir las actividades a llevarse a
cabo en un proyecto de desarrollo de sistemas.
2. Lograr congruencia entre la multitud
de proyectos de desarrollo de sistemas en una misma organización.
3. Proporcionar puntos de control y
revisión administrativos de las decisiones sobre continuar o no con un
proyecto.
La
ayuda que proporciona el ciclo de vida del proyecto es que puede organizar las actividades del administrador,
aumentando la probabilidad de que se traten los problemas pertinentes en el
momento adecuado.
Este ciclo surge en los
años 80 y consiste en: actividades secuenciales donde cada actividad se corresponde
con la anterior.
Sigue una tendencia
llamada Boton-up, este proceso consiste en llevar a cabo totalmente las pruebas
de modulo (pruebas de las partes de un sistema, luego de los subsistemas y
finalmente del sistema. Se debe analizar:
o
Si existen errores durante la etapa de
implementación, no se puede hacer una muestra al usuario.
o
Las pruebas de los distintos niveles, no
garantiza que se produzca errores, solo se podrán detectar después de
una cantidad de pruebas.
o
El seguimiento de los errores en la etapa
final se vuelve muy engorroso. Resulta muy difícil encontrar el módulo (parte)
a donde ocurrió el error.
o
Los tiempos requeridos para prueba se incrementa durante la etapa final,
involucrando gran cantidad de tiempo en la maquina.
Cada
proyecto atraviesa por algún tipo de análisis, diseño e implantación. El ciclo
de vida de proyecto utilizado puede diferir del que muestra la ilustración en
una, varias o todas las siguientes maneras:
Las
fases de exploración y análisis pueden juntarse en una sola (sobre todo sí se
considera factible desde el inicio cualquier cosa que quiera el usuario).
Puede
o no haber fase de estudio de hardware si se cree que cualquier sistema nuevo
puede instalarse con las computadoras existentes.
Las
fases de diseño preliminar y de diseño de detalles podrían juntarse en una sola
llamada simplemente diseño.
Diversas
fases de pruebas podrían juntarse en una sola de hecho podrían incluirse con la
codificación.
El Ciclo de Vida del Proyecto Clásico.
El
uso de la implantación ascendente es una de las grandes debilidades de los
ciclos de vida de los proyectos clásicos. Se espera que los programadores
lleven a cabo primero sus pruebas modulares, luego las pruebas de subsistemas y
finalmente las pruebas del sistema mismo, conocido como ciclo de vida en
cascada. Una de las dificultades de esta implantación es que la eliminación de
fallas suele ser extremadamente difícil durante las ultimas etapas de prueba
del sistema.
La
segunda debilidad del ciclo de vida de un proyecto clásico es su insistencia en
que sus fases se sucedan secuencialmente. Esto es una tendencia natural, el
problema que trae consigo este progreso ordenado es que no permite el
tratamiento de fenómenos reales como los relacionados con el personal, la
política de la economía o la economía.
El Modelo de Cascada de Desarrollo de Sistema.
Desde
fines de los 70 crece la tendencia a reconocer el diseño estructurado, la
programación estructurada y la implantación descendente como parte del ciclo de
vida del proyecto.
Se
muestran dos detalles no presentes en el enfoque clásico:
La
secuencia ascendente de codificación, la prueba de módulos y del sistema se
reemplazan por una implantación de arriba hacia abajo, que es un enfoque en el
cual los módulos de alto nivel se codifican y prueban primero, seguidos por los
de bajo nivel más detallados.
El
diseño clásico se reemplaza por el diseño estructurado, que es un es un enfoque
de diseño formal de sistemas.
La
implantación descendente ofrece retroalimentación entre el proceso de
implementación y el de análisis.
Gran
parte del trabajo que se realiza bajo el nombre de 'diseño estructurado' es un
esfuerzo manual para enmendar especificaciones erróneas.
Para
quienes realizan el diseño estructurado como primer tarea es transformar la
especificación en un paquete de diagramas de flujo de datos, diccionario de
datos, diagramas de entidad - relación y las especificaciones del proceso.
La
diferencia en este ciclo con respecto al clásico son: las secuenciales
botton-up de codificación, prueba de módulo y prueba del sistema, son
reemplazados por la tendencia top-down. Esto es un fuerte indicio basado en la
programación estructurada y es el método actual del desarrollo de sistemas.
El Ciclo de Vida del Proyecto Semiestructurado.
Examinaremos
aquí las nueve actividades y los tres terminadores de este ciclo de proyecto.
Los
terminadores (usuarios, administradores y personal de operaciones) representan
a individuos o grupos que proporcionan las entradas al equipo de trabajo y son
los beneficiarios finales del sistema, ellos interactúan con las nueve
actividades.
En
esta etapa visualizamos el ciclo de vida del sistema y se encuentra relacionado
con tres entes externos .
Primer
ente: usuario, es el o los encargados de definir los requerimientos del sistema
y las políticas a tener en cuenta durante el dearrollo.
Ciclo de Vida del Proyecto Estructurado.
CICLO DE VIDA ESTRUCTURADO PARA EL DESARROLLO DE LOS SISTEMAS
CARACTERISTICAS DE LOS PROYECTOS ESTRUCTURADOS
Las técnicas estructuradas
utilizadas en el desarrollo de los Proyectos de Sistemas, buscaron superar el
fracaso en muchos desarrollos convencionales.
Los proyectos estructurados se caracterizan por mejores herramientas
para expresar los requisitos del usuario, énfasis en el proyecto de calidad,
sistemas de desarrollo top-down.
TECNICAS ESTRUCTURADAS
·
Análisis estructurado
·
Diseño estructurado
·
Programación estructurada
·
Desarrollo TOP-DOWN
·
Equipos de programación
·
Revisiones estructuradas
·
·
ANALISIS
ESTRUCTURADO
·
El Análisis se
refiere al "extremo inicial" de un proyecto de desarrollo de
sistemas, durante el tiempo en
que los requisitos del usuario son definidos y documentados.
·
El Análisis estructurado introduce el
uso de las herramientas de documentación gráficas para
producir un tipo diferente de especificación funcional: "la
especificación estructurada".
Herramientas de documentación del Análisis Estructurado
·
·
Diagramas de flujo de datos (DFDs)
·
Diccionario de Datos (DD)
·
Diagramas de Entidad-Relación (ER)
·
Diagramas de Transición de Estado (DTEs)
·
Especificaciones de procesos
·
·
DISEÑO
ESTRUCTURADO
o Durante el desarrollo se determinan "qué módulos, interconectados de
qué forma, solucionarán mejor un problema definido
o ¿Como se reconoce un buen diseño?
o ¿Existe una sola manera de realizar un buen diseño?
Elementos del Diseño Estructurado:
·
Técnicas de documentación
·
Criterios de evaluación del
Diseño
·
Heurísticas del diseño
·
Estrategias del Diseño
Técnicas de Documentación:
·
Incluyen herramientas gráficas y de
texto
·
Herramientas
·
o Flujos de datos
o Diagramas Hipo
o Diagrama de estructura
o Especificaciones de módulo y D.D.
Criterios de evaluación de diseño:
·
Tiene como objetivo evaluar
los defectos del diseño conforme a la documentación del diagrama Hipo
y el diagrama estructural Criterios
·
o Acoplamiento
o Cohesión
Heurísticas del diseño:
·
Siguen reglas prácticas que generalmente
son útiles aunque no funcionan en todos los casos. Se refieren al tamaño del
módulo y al control del módulo.
·
Son
·
o Tamaño del módulo
o
Fan in Fan out
(abanico)
o Alcance efecto y alcance de control
Estrategias de diseño:
·
Las estrategias requieren
un buen nivel de experiencia, sentido común y decisión
·
Existe una basada en el flujo de datos y
otra basada en la estructura de
datos
·
o Análisis transformacional
o Análisis transaccional
·
Programación estructurada
·
·
DESARROLLO
TOP-DOWN
·
Es una estrategia de
proyecto que divide sucesivamente los problemas grandes
y complejos en problemas menores y menos complejos, hasta que el problema
original pueda ser expresado como una combinación de problemas pequeños y
fácilmente solucionables.
·
·
REVISIONES
ESTRUCTURADAS
·
Se trata de un procedimiento organizado
para que un grupo de examinadores (Analistas de Sistemas, programadores)
revisen el producto técnico
para fines de corrección y garantía de calidad.
·
La revisión estructurada (walktrough),
es conducida por los miembros de un equipo que trabajan juntos en una base
diaria, y su realización puede ser fijada en cualquier momento.
·
·
EQUIPOS DE
PROGRAMACION
·
Componentes :
·
Superprogramador o Programador jefe
·
Copiloto
·
Administrador
·
Abogado de lenguaje de
programación
·
Instrumentador o experto en utilitarios
·
Bibliotecario
·
·
4 razones por la que no es posible
implementar
·
Costo del superprogramador
·
Conseguir que trabaje para uno un
superprogramador
·
¿qué hacer con el personal que
se tiene?
·
Si codifica con rapidez o no documenta o
no se comunica con el usuario
Algunas herramientas:
·
Herramientas CASE (Computer -Aided
Software Engineering:Ingeniería de Software auxiliada por computadora)
·
Generadores automáticos de Código.
·
Control de documentos,
versiones y grupos de
trabajo
·
Control y administración de
proyecto.
CICLO DE VIDA ESTRUCTURADO
ESTUDIO
·
La etapa de Estudio de viabilidad o
estudio inicial.
·
Su principal objetivo es el estudio e identificación de las deficiencias
actuales en el ambiente del
usuario (a través de relevamientos, en cuentas),
establecer nuevos objetivos,
y proponer "escenarios" viables
ANALISIS
·
Conforme a las alternativas generadas
por el estudio, en esta etapa se "Modelan" las necesidades del
usuario a través de DIAGRAMAS especiales
(DFD, ER),dando como resultado las Especificaciones estructuradas.
DISEÑO
·
En esta etapa se "diseña"
el sistema,
determinando los módulos componentes del Sistema, de acuerdo a una jerarquía
apropiada, a losprocesadores (hardware) y a la
función
IMPLANTACION (DESARROLLO)
·
Esta actividad incluye la codificación e integración de
los módulos con técnicas de programación estructurada
GENERACIÓN DEL TEST DE
ACEPTACIÓN
·
Consiste en preparar un conjunto de
casos para efectuar las pruebas del
sistema
GARANTIA DE CALIDAD
·
En esta etapa se efectúa el TEST final
de aceptación del Sistema
DESCRIPCION DE PROCEDIMIENTO
·
Consiste en la elaboración de la "descripción formal" del nuevo
sistema: Manuales del
Usuario, Manuales del Sistema, Manuales de procedimiento
CONVERSIÓN DE LA BASE DE DATOS
·
Esta actividad sólo se realiza cuando
existen sistemas funcionando
INSTALACION
·
Es la actividad FINAL.
·
Existen varias estrategias de
INSTALACION: Gradual, distribuida, completa
·
Un aspecto importante de esta actividad
es la CAPACITACION
Implementación
Radical VS. Conservadora
Radical VS. Conservadora
¿Iniciar una actividad
después de concluir la otra?
¿Cuándo utilizar una u
otra? Depende:
·
De la presión por
dar resultados
·
Exactitud en la estimación de recursos
·
Conocimiento del : software a utilizar,
de la aplicación,
del hardware
·
Inconstancia del usuario
Ciclo de vida por prototipos
Ejemplo : Analogía lanzamiento del nuevo modelo de
auto
Se realiza un sistema
provisorio con el conjunto inicial de necesidades e implantarlas rápidamente
con la intención de ir expandiéndolas y refinándolas iterativamente al ir
comprendiendo el sistema el usuario y quien lo desarrolla
·
Es radical, pero se asume que
posteriormente existirá un juego completo
de documentación.
·
·
Herramientas requeridas:
·
D.D. Integrado y medios poderosos
de administración de
B.D.
·
Generadores de:
·
o pantallas,
o reportes no guiado por procedimientos (un mandato una función)
o consultas y recuperación no guiado por procedimientos
o generadores de aplicaciones
·
Lenguaje de 4ta. Generación (lo que debe
más que cómo)
·
Finalidad
·
El usuario dice que le gusta y que no
mientras testea el sistema.
·
El usuario verifica la factibilidad del
diseño de un sistema
·
o Método de interacción (menúes,
teclas especiales)
o Formatos de presentación
·
Características
·
Es una aplicación que funciona
·
Identifica y aclara los requerimientos
evitando suposiciones del analistas y los usuarios con respecto a los requisitos
del sistema.
·
Se crea rápidamente.
·
Evoluciona a través de un sistema
iterativo.
·
¿ Costo de
desarrollo bajo?
·
Se puede usar el mismo sistema cómo
prototipo
·
Se debe documentar los requisitos y no
dejar funcionando el prototipo sin documentación.
·
Razones por las cuales se utilizan los
prototipos
·
¿Aumento de productividad?
·
Entusiasmo de usuarios con prototipos
(recordar analogía)
·
Son candidatos las aplicaciones que :
·
El usuario no quiere examinar DFD.
·
Se determinan los requerimientos por
tanteo
·
El sistema será interactivo
·
No existe cantidad de detalles de
algoritmo
·
Existe un alto costo y un alto riesgo de
fracaso
·
La tecnología es
nueva.
·
Recomendación
·
El ciclo de vida del prototipo involucra
el desarrollo de un modelo funcional. Debe realizarse la documentación de los
requerimientos del usuario
·
Escenarios para la construcción de
prototipos
·
Evaluar la petición del software y
determinar si es o no un buen candidato a prototipo
·
Dado un proyecto candidato aceptable, el
analista desarrolla una representación abreviada de los requerimientos
·
Después de revisar la r`presentación de
requerimientos se crea unas especificaciones de diseño abreviadas
·
El software del prototipo se crea prueba
y refina
·
Una vez que el prototipo ha sido
probado, se presenta al cliente,
el cuál conduce la prueba de la aplicación y sugiere modificaciones
·
Los pasos 4 y 5 se repiten
iterativamente hasta que todos los requerimientos estén formalizados o hasta
que el prototipo haya sido reemplazado por un sistema de producción
Desarrollo de Actividades
en espiral
DESARROLLO DE SISTEMAS DESDE EL ENFOQUE DE LA
INGENIERIA DE INFORMACION
INGENIERIA DE INFORMACION
INGENIERIA DE INFORMACION
·
Ingeniería es una Ciencia aplicada,
o sea un área de conocimiento humano
que utiliza principios matemáticos y
físicos para resolver problemas ligados a la construcción de INGENIOS. Un
Ingenio es todo aquello que produce la capacidad creativa del hombre para
atender a un fin determinado
·
La Ingeniería de la Información se puede
definir como una disciplina,
o sea un "conjunto de conocimientos" ligados al tratamiento de la Información
y la construcción de mecanismos formales para la construcción de los
"Sistemas de Información".
CARACTERISTICAS DE LA INGENIERIA DE LA
INFORMACIÓN
·
Centrada en los negocios
·
Participación intensa de los usuarios
·
Implementación de Técnicas de Modelaje
eficaces
·
Se orienta a la AUTOMATIZACION en los
desarrollos de los Sistemas
·
Propone a la Tecnología como
"soporte" de los negocios
LA PIRAMIDE DE LA INGENIERÍA DE LA INFORMACION
Etapas del Ciclo de Vida del Desarrollo de SIs
·
Planeamiento Estratégico de Informaciones
(PEI)
·
Análisis del Area de Negocios (AAN)
·
Proyecto de Sistemas de
Información (PSI)
·
Construcción del Sistema de Información
(CSI)
Planeamiento Estratégico de Informaciones (PEI)
·
Es la primera etapa . Consiste en el
estudio y definición de las necesidades de Información que requiere la Organización para
alcanzar sus objetivos.
·
PRODUCTOS: El Modelo Empresarial, los
Factores Claves del Exito y
los problemas para alcanzarlos, el Modelo de Datos Corporativo y el Modelo
Funcional Corporativo
Análisis del Area de Negocio (AAN)
·
En esta etapa se realizan los estudios
de las "Areas de Negocio" que debe soportar el SI (tratando de obviar
aspectos tecnológicos)
·
Se vale de técnicas de relevamiento y modelaje
de las necesidades de la Organización
·
PRODUCTOS:"Modelo de Datos",
"Diagrama de Descomposición Funcional", DFD.
Proyecto de Sistemas de Información (PSI)
·
En esta etapa se definen las
características técnicas requeridas para soportar las necesidades del Proyecto
(Diseño del Sistema, requerimientos de hardware)
·
PRODUCTOS: Propuesta del Ambiente
Computacional, Diagramas de estructuras de
módulos, Proyecto de la Base de Datos
Comentarios
Publicar un comentario