2. CICLO DE VIDA DE LOS SISTEMAS
Proceso por el cual los analistas de sistemas, lngenieros
de Software, programadores y los usuarios finales
elaboran los S. I. y las aplicaciones informáticas
3. Técnica
• Método que aplica herramientas y reglas
específicas para completar una o más fases
del ciclo de vida del desarrollo de Sistemas
• Se aplican a una parte del ciclo de vida total.
4. Metodología
Versión amplia y detallada de un ciclo de vida
completo de desarrollo de sistemas que incluye:
– Reglas procedimientos,métodos, herramientas
– Funciones individuales y en grupo por cada tarea
– Productos resultantes
– Normas de Calidad
5. • Herramientas.- Son los ambientes de apoyo
necesario para automatizar las prácticas de
Ingeniería de Software
• Métodos.- Son las maneras que se efectúan
las tareas de Ingeniería de Software o las
actividades del ciclo de vida.
• Procedimientos.- Son los mecanismos de
gestión que soportan a los métodos: El control
de los proyectos, el control de la calidad
6. Objetivos del Ciclo de Vida de un Proyecto
• Definir las actividades a ser ejecutadas en un
proyecto de Procesamiento Electrónico de Datos
(PED)
• Introducir coherencia en proyecto de PED de la
misma organización
• Establecer punto de control para control de la
gerencia y para tomar la decisión de "continuar o
no".
7. CICLO DE VIDA ESTRUCTURADO PARA
EL DESARROLLO DE LOS SISTEMAS
8. Características 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.
10. Analisis Estructurado
• 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".
11. 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
12. DISEÑO ESTRUCTURADO
Durante el desarrollo se determinan "qué módulos,
interconectados de qué forma, solucionarán
mejor un problema definido
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
13. Técnicas de Documentación
Incluyen herramientas gráficas y de texto
• Herramientas
– Flujos de datos
– Diagramas Hipo
– Diagrama de estructura
– Especificaciones de módulo y D.D.
14. 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
–Cohesión
–Acoplamiento
15. 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:
– Tamaño del módulo
– Fan in Fan out (abanico)
– Alcance efecto y alcance de control
16. Estrategias de Diseño
• 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
– Análisis transformacional
– Análisis transaccional
18. 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.
19. EQUIPOS DE PROGRAMACION
Componentes
• Programador Jefe
• Copiloto
• Administrador
• Abogado de lenguaje de programación
• Instrumentador o experto en utilitarios
• Bibliotecario
20. Algunas Herramientas
• Herramientas CASE (Computer -Aided
Software Engineering Ingenieria de
Software Asistida por Computadora
• Generadores automáticos de Codigo.
• Control de documentos, versiones y grupos
de trabajo
• Control y administración de proyecto.
21. 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.
23. A.-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
24. B.-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.
•
25. C.- 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 los procesadores (HW) y a la
función
26. D.- Implantación (Desarrollo)
• Esta actividad incluye la codificación e
integración de los módulos con técnicas
de programación estructurada
27. E.-Generación del Test de Aceptación
Consiste en preparar un conjunto de casos
para efectuar las pruebas del sistema
30. H.-Conversión de la Base de Datos
Esta actividad sólo se realiza cuando existen
sistemas funcionando
31. I.-Instalación
• Es la actividad final, existen varias
estrategias de instalacion: gradual,
distribuida, completa
• Un aspecto importante de esta actividad
es la capacitacion
32. DESARROLLO DE SISTEMAS
DESDE EL ENFOQUE DE LA
INGENIERIA DE INFORMACION
33. Ingeniería de la Información
• 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 “ .
34. Características de la Ingeniería 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 automatización en los
desarrollos de los Sistemas
• Propone a la tecnología como "soporte" de
los negocios
•
35. LA PIRAMIDE DE LA INGENIERÍA DE LA
INFORMACION
Etapas del Ciclo de Vida del Desarrollo de
Sistemas
• Planeamiento Estratégico de Informaciones
(PEI)
• Análisis del Area de Negocios (AAN)
• Proyecto de Sistemas de Información (PSI)
• Construcción del Sistemas de Información
(CSI)
36. 1.- 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
37. 2.-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.
38. 3.- 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
39. 4.-Construcción del Sistema
• Consiste en la conversión de los modelos de
datos en estructuras físicas (software y
hardware). Aquí se realizan las tareas de
programación (o generación automática de código).
• Productos: El sistema desarrollado, Bases
de Datos generadas, Manuales, etc.
40. El ciclo de vida inicialmente propuesto por Royce en 1970,
fue adaptado para el software a partir de ciclos de vida de
otras ramas de la ingeniería. Es el primero de los
propuestos y el más ampliamente seguido por las
organizaciones (se estima que el 90% de los sistemas han
sido desarrollados así)
41. Propuesto por Alan Davis, tiene las mismas fases que el
anterior pero se considera el nivel de abstracción de
cada una. Una fase además de utilizarse como entrada
para la siguiente, sirve para validar o verificar otras
fases posteriores
42. Ciclo de vida tipo sashimi
Según el modelo en
cascada puro una fase
solo puede empezar cuando
ha terminado la anterior.
En este caso sin embargo,
se permite un solapamiento
entre fases. Por ejemplo, sin
tener terminado del todo el diseño
se comienza a implementar.
43. Ciclo de vida en cascada incremental
En este caso se va creando el sistema
añadiendo pequeñas funcionalidades. Cada
uno de los pequeños incrementos es
parecido a lo que ocurre dentro de la fase de
mantenimiento. La ventaja de este método
es que no es necesario tener todos los
requisitos en un principio. El inconveniente
es que los errores en la detección de
requisitos se encuentran tarde.
Hay dos partes en el ciclo de vida,
similares al anterior. Por un lado está
el análisis y el diseño global. Por otra parte
están los pequeños incrementos, con las
fases de diseño detallado, codificación y
mantenimiento.
44. Modelo de ciclo de vida en espiral
Propuesto inicialmente por Boehm en 1988. Consiste en una serie de
ciclos que se repiten. Cada uno tiene las mismas fases y cuando
termina da un producto ampliado con respecto al ciclo anterior.
En este sentido es
parecido al modelo
incremental, la diferencia
importante es que tiene
en cuenta el concepto de
riesgo. Un riesgo puede
ser muchas cosas:
requisitos no
comprendidos, mal
diseño, errores en la
implementación, etc.
45. Ciclos de vida orientados a objetos
Los tipos de ciclos de vida que se han visto hasta ahora son relativos al
análisis y diseño estructurados, pero los objetos tienen una particularidad, y
es que están basados en componentes que se relacionan entre ellos a través
de interfaces, o lo que es lo mismo, son mas modulares y por lo tanto el
trabajo se puede dividir en un conjunto de mini proyectos. Además, hoy en
día la tendencia es a reducir los riesgos, y en este sentido, el ciclo de vida en
cascada no proporciona muchas facilidades. Debido a todo esto, el ciclo de
vida típico en una metodología de diseño orientado a objetos es iterativo e
incremental.