Está en la página 1de 55

UNIVERSIDAD NACIONAL HERMILIO VALDIZAN

FACULTAD DE INGENIERA INDUSTRIAL Y DE


SISTEMAS
EAP INGENIERA DE SISTEMAS

Ciclos de Vida
&
Metodologas de
Desarrollo de
software
SESION 1 y 2

CICLO DE VIDA

Concepto
El software nace, crece y muere
Es su ciclo de vida
Nace con sus requerimientos y diseo
Crece con su desarrollo y mantenimiento
Muere cuando se reemplaza por otro

Software obsoleto

Software Obsoleto
Razones
Crecimiento de la empresa
Cambio de los requerimientos originales
Nmero de usuarios
Nmero de transacciones
Distribucin del software

Cambio de operaciones
Ampliacin
Integracin con otros sistemas

CONCEPTO DE CICLO DE
Una
aproximacin lgica a la adquisicin, el suministro, el
VIDA
desarrollo, la explotacin y el mantenimiento del software
IEEE 1074
Un marco de referencia que contiene los procesos, las
actividades y las tareas involucradas en el desarrollo, la
explotacin y el mantenimiento de un producto de software,
abarcando la vida del sistema desde la definicin de los
requisitos hasta la finalizacin de su uso
ISO 12207-1

Modelo de proceso: ISO


12207

CICLO DE VIDA Vs MODELO DE PROCESO

Son las etapas para el desarrollo


del software
Para que sirve?

Para la organizacin, planificacin y gestin de


personal, correccin de errores, distribucin del
tiempo.
Para saber la documentacin q hay q presentar
a los clientes.
Como base para determinar las herramientas y
metodolgicas en las distintas actividades.
Software de ms calidad.
Permite planificar el trabajo

CICLO DE VIDA DEL


DESARROLLO DE
CURSO: INGENIERA DE REQUERIMIENTOS
SISTEMAS

El Ciclo de Vida del


Desarrollo de Sistemas
El CVDS es un enfoque por fases
para el anlisis y el diseo cuya
premisa principal consiste en que los
sistemas
se
desarrollan
mejor
utilizando un ciclo especfico de
actividades del analista y el usuario

CICLO DE VIDA
1 .identificacin del
problema,
oportunidades y
objetivo.

2.Determinacin de
los requerimientos
de informacin.

3 .Anlisis de las
necesidades
del sistema.

4 .Diseo del
sistema
(recomendado)
.

7.Implantacin
y evaluacin
del sistema.

6.Prueba y
mantenimiento
.

5.Desarrollo y
documentaci
n del software.

IDENTIFICACION DE PROBLEMAS OPORTUNIDADES Y


OBJETIVOS:
Problemas:
Etapa crtica para el xito del resto del proyecto.
Requiere de la observacin honesta del analista s/el
negocio.
Analista y personal hacen resaltar los problemas.
Oportunidades:
Situaciones que el analista cree que pueda ser mejores.
Permite que el negocio gane un avance competitivo que
ponga un estndar de la industria.
Objetivo:
Componente importante de la primera fase.
El ing. debe descubrir lo que est tratando de hacer el
negocio.
El ing. ser capaz de identificar si una aplicacin de sistema
de informacin pude ayudar al sistema, negocio, a que
alcance sus objetivos atacando problemas especficos y
oportunidades.

PRIMERA FASE
IDENTIFICACION DE PROBLEMAS OPORTUNIDADES Y
OBJETIVOS
INVOLUCRADOS
Usuarios.
Analista.
Administradores de
sistemas

1ra. Fase
Identificaci
n de
problemas y
objetivos
GENERA
Estudio de factibilidad.
Definicin del problema.
Sumarizacin de objetivos.

ACTIVIDADES
Entrevista a los
administradores y usuarios.
Sumarizacin de
conocimientos adquiridos.
Estimacin del alcance del
proyecto.
Documentacin de
resultados.
RESULTADOS
Tomar la decisin se contina
el proyecto propuesto. Si la
empresa no cuenta con
dinero.
Se desea atacar problemas
no relacionados. Problemas
no automatizados.
Recomendar una solucin
manual.

SEGUNDA
FASE
DETERMINACION DE LOS REQUERIMIENTOS DE INFORMACION
Herramientas:
Muestra e investigacin de datos relevantes.
Entrevista.
Cuestionario.
Comportamiento de los tomadores de decisin.
Prototipos.
El Analista:
Comprende que informacin necesitan los usuarios para trabajar.
Sirve:
Para formar la imagen que el analista tiene de la organizacin y sus objetivos.
Involucrados:
Analista.
Usuarios.
Administradores de las operaciones.

El analista necesita:
Los detalles de las funciones actuales del sistema.

Quin?
Qu?
Dnde?
Cundo?
Cmo?
desarrollo

Personas
Actividad del negocio
Ambiente
En que momento
De que manera se

Al trmino de la fase:
El analista debe comprender el porque de los funciones
del negocio.
Tener informe sobre personas, objetivos y
procedimientos.
Herramientas:
tcnicas para la recoleccin de datos.

TERCERA FASE
ANALISIS DE LAS NECESIDADES DEL
SISTEMA
DEFINICION
Proceso que sirve para
recopilar e interpretar
los hechos.
Diagnostica problemas
y utiliza estos hechos
para mejorar el
sistema.

3er. Anlisis de
las necesidades
del sistema

QUIEN LO
REALIZA
El analista.

TOMA DE DECISION
Naturaleza de los
programas a construir.
Comprender mbito o
enlace o alcance de la
informacin a manejar.
Funcin y protocolos
requeridos.
Documentar
requisitos.
Revisar con el cliente.
DEFINE
Papel de cada elemento de cada
parte del Sistema de Informacin.
Asignar a la computadora el papel
de desempear y en decir en que
no tendr inherencia.

(Tercera fase)
ANALISIS DE LAS NECESIDADES DEL SISTEMA
ALCANCES
Analizar requisitos.
Determinar
requisitos.
Estimar costos.
Diferentes tareas.
Planificar por
programas.
Actividades.

PREPARA
Una propuesta del sistema
que sumar lo encontrado.
Anlisis costo beneficio de
las alternativas.

Anlisis de las
necesidades
del sistema.

PLANTEAMIENTO
DEL PROBLEMA
FACTIBILIDAD
Econmica.
Operativa.
Tcnica.

HERRAMIENTAS
Diagrama de flujo de datos
(E-PRO-S).
Diccionario de datos.
Anlisis de las decisiones
(condiciones, acciones y
reglas).
Estructurados.
Semiestructurados (rbol de
decisin, tabla de decisin,
Espaol estructurado).
Criterios mltiples.

Cuarta Fase
Diseo Del Sistema (Recomendado).
Usa la informacin recolectada anteriormente para hacer el
diseo lgico de S1 (pseudo cdigo, DF, etc.).
Disea procedimientos precisos para la captura de datos
(diseo de entradas).
Proporciona entrada efectiva para el sistema de informacin
mediante el uso de tcnicas para el diseo de formas y
pantallas
Disea la interfaz del usuario (teclado, men de pantalla
y ratn)
Diseo de salidas
Diseo de base de datos
Diseo de archivo
Diseo de control y respaldo, etc.

Cuarta Fase

OBJETIVO:
Son las metas o fines hacia las cuales se quiere llegar. Es determinar los
resultados deseados Qu es lo que se requiere?
POLITICA:
Son reglas que se establecen para dirigir funciones y seguir qu stas se
desempeen de acuerdo con los objetivos deseados (son guas para las toma
de decisin).
MISION:
Es la funcin o tarea bsica de una organizacin o individuo.
ESTRATEGIA:
Son planes, su funcin consiste en regir la obtencin uso y disposicin, de
los medios necesarios para alcanzar los objetivos.
REGLAS:
Describen con claridad las acciones especificas requeridas o las que no se
deben llevar acabo.
Son aquellos que guan una accin sin especificar un orden de tiempo, de
hecho.
NORMAS:
Todo sealamiento imperativo de algo que ha de realizarse sea genrico o
especfico.

(Quinta Fase)
Desarrollo Y Documentacin Del
Software
Las representaciones del diseo
deben ser traducidas a un lenguaje artificial,
dando como resultado unas instrucciones ejecutadas por la computadora el
paso de la codificacin es el que lleva acabo esa traduccin.
Identificar
Ambiente operativo
Lgica de los programas
Eleccin del lenguaje de programacin
Tipo de documentacin
Manual del usuario
Manual de programacin
Manual del sistema
El analista trabaja
con los programadores para desarrollar cualquier sw original que necesite.

PRUEBA

CARACTERISTICAS
Antes de usar el
software debe
probarse.
Disminuye problemas
antes de la entrega del
software.

6. Fase
Prueba y mantenimiento del
sistema.

TIPOS
Prueba con datos
de ejemplo.
Prueba con datos
reales del sistema.

FORMAS
Programadores solo.
Analistas y
programadores.

Ojo: Muchos procedimientos sistemticos que emplea el


analista ayuda a mantener al mnimo los mantenimientos.

MANTENIMIENTO
Es efectuado a lo largo de
la vida del sistema de
informacin.

CONTROL
Se desarrollan a lo largo del ciclo.
Sirve para asegurar que toda
informacin del software que este disponible.
Documentacin
Confiabilidad a usuarios.
Debe seguir creciendo.

SEGURIDAD
Tomar en cuenta:
Prueba.
Verificacin y validacin.
Certificacin confirmacin que el programa esta bien hecho.
Importancia del mantenimiento. Los programas de computacin deben ser
modificados y mantenidos y actualizados. La cantidad promedio del tiempo y gastado en
mantenimiento en una instalacin del sistema de informacin gerencial (MIS) es de 40% al
60%.

RAZONES
Corregir errores del
SW para mejorar la
capacidad del SW
en respuesta a las
necesidades de la
organizacin.
.

EVALUACION O
REVISION (Despus de
la implantacin)
Determinar si el
sistema cumple con
las expectativas
donde son necesarias
las mejoras.

Sptima fase
Implantacin y
evaluacin del
sistema.

CAPACITACION
Entrenamiento de los
usuarios para manejar el
sistema.
Involucra a los operadores y
usuarios.
Una mala capacitacin puede
producir errores de usuarios.

CONVERSION
Proceso de cambiar un
sistema a una nuevo.
Anticipar los problemas ms
comunes:
Sistema paralelo.
Conversin directa.
Enfoque piloto.
Sistema por etapas.

Y al final del ciclo de


Desarrollo del software.....

El usuario
y
su
Sistema
Definitivo.

?
Su
Suma
siste
s
i
t em
defisn
de itivao
finitiv
o

Sistemas II.

Y al final del ciclo de


Desarrollo del software.....
Esto no es
lo que yo
esperaba.
..
Su
sistema
definitivo

Sistemas II.

Y al final del ciclo de


Desarrollo del software.....
Ser que no
supe
explicarles
mis
requerimiento
s?
Su

Su
ssisistetemma
it a o
ddeefifi
nn
itiviv
o

Sistemas II.

Y al final del ciclo de


Desarrollo del software.....

Tal vez
ellos no
me
entendiero
n...

Sistemas II.

Su

Su
ssisistetemma
it a o
ddeefifi
nn
itiviv
o

Y al final del ciclo de


Desarrollo del software.....

?
Su

Su
ssisistetemma
it a o
ddeefifi
nn
itiviv
o

Sistemas II.

LA EXPERIENCIA DEMUESTRA
QUE
No siempre se definen los
requisitos en forma:
Completa
Correcta y
Consistente

Sistemas II.

s erim
o
L
qu
re on:
s

to
n
e
i

Explicacin complementaria

Anlisis
Entrada
Conocimiento del dominio de la aplicacin,
actividades de los usuarios, mercado, etc.

Actividades
Identificar las necesidades del usuario
Anlisis de viabilidad
Determinar los requerimientos de la aplicacin

Salida
Documento de requerimientos del software

Diseo
Entrada
Documento de requerimientos del software

Actividades
Establecer estrategia de solucin
Anlisis de alternativas. Formalizar la solucin
Descomponer y organizar la aplicacin
Fijar descripciones de cada mdulo

Salida
Documento de diseo del software
UML (Universal Modeling Language)

Codificacin
Entrada
Documento de diseo del software

Actividades
Creacin del cdigo fuente
Pruebas de unidades

Salida
Cdigo de mdulos, probado

Integracin. Validacin
Entrada
Cdigo de mdulos, probado
Documento de requerimientos del software
(validacin)

Actividades
Pruebas de integracin
Pruebas de validacin

Salida
Aplicacin completa, lista para usar

Mantenimiento
Entrada
Software listo para usar

Actividades
Instalacin
Uso en paralelo
Implementacin
Nuevos requerimientos, correcciones y
modificaciones
Soporte de usuarios

Salida
Aplicacin respondiendo a las necesidades
actuales

Primer Modelo de Ciclo de vida


Modelo en Cascada
Inconveniencias
Rgido, difcil de rectificar
Documentacin inicial se vuelve obsoleta

Desarrollo evolutivo
Ciclo de vida en espiral
Uso de prototipos (de diversa fidelidad)
Extreme Programming
RAD (Rappid Application Development)

Cambia el proceso pero no las actividades

Actividades
Modelo en cascada
Anlisis
Diseo
Codificacin
Integracin
Mantenimiento

Modelos de Ciclo de vida que usa


Procesos Unificados
1. Modelo Incremental
Se evitan proyectos largos y se entrega Algo de valor a
los usuarios con cierta frecuencia
El usuario se involucra ms
Difcil de evaluar el coste total
Difcil de aplicar a sistemas transaccionales que tienden
a ser integrados y a operar como un todo
Requiere gestores experimentados
Los errores en los requisitos se detectan tarde.
El resultado puede ser muy positivo

Modelo Incremental

CICLO DE VIDA INCREMENTAL


En cada incremento se entrega una parte
completamente funcional.
Cada nuevo incremento se realiza sobre el anterior.
La prctica de 2 es claramente incremental

2. Modelo Iterativo
Consiste en la iteracin de varios ciclos de vida en
cascada. Al final de cada iteracin se le entrega al cliente
una versin mejorada o con mayores funcionalidades del
producto.
El cliente es quien despus de cada iteracin evala el
producto y lo corrige o propone mejoras.
Estas iteraciones se repetirn hasta obtener un producto
que satisfaga las necesidades del cliente.
Este modelo se suele utilizar en proyectos en los que los requisitos no
estn claros por parte del usuario, por lo que se hace necesaria la
creacin de distintos prototipos para presentarlos y conseguir la
conformidad del cliente.

Ventajas

Una de las principales ventajas que ofrece este modelo es


que no hace falta que los requisitos estn totalmente
definidos al inicio del desarrollo, sino que se pueden ir
refinando en cada una de las iteraciones.

Igual que otros modelos similares tiene las ventajas


propias de realizar el desarrollo en pequeos ciclos, lo
que permite gestionar mejor los riesgos, gestionar mejor
las entregas

Inconvenientes

La primera de las ventajas que ofrece este modelo, el no


ser necesario tener los requisitos definidos desde el
principio, puede verse tambin como un inconveniente ya
que pueden surgir problemas relacionados con la
arquitectura.

2. MODELO DE CICLO DE VIDA ITERATIVO


En el caso del iterativo se mejoran los requisitos (ms genricos
a ms especficos). Puede verse como uno en cascada con una
funcionalidad bsica, agregando funcionalidad en la etapa de
mantenimiento.
Existe unas tareas de anlisis y diseo comunes y
posteriormente Diseo detallado y codificacin para cada
iteracin.

COMPARATIVA CICLO DE VIDA INCREMENTAL E


ITERATIVO

METODOLOGA ORIENTADO A
OBJETOS
Son iterativas e incrementales
Fcil de dividir el sistema en varios
subsistemas independientes
Se fomenta la reutilizacin de
componentes

El proceso unificado de desarrollo


de software
Es un proceso ORIENTADO
A OBJETOS
El

proceso es:
Guiado por casos de uso
Centrado en la arquitectura
Con un ciclo de vida iterativo e incremental
PARTE
DINMICA

CICLO DE
VIDA

Debe ofrecer un
marco de trabajo
genrico
PARTE
ESTTICA

INTERFAZ

El proceso unificado de desarrollo


de software

El Proceso Unificado de
Desarrollo usa UML
UML

Notacin
Herramientas

RATIONAL ROSE
VISIO

Proceso
PROCESO UNIFICADO DE
DESARROLLO DE RATIONAL

Desarrollo Iterativo e Incremental

Esta idea es la base de varios mtodos de


desarrollo de software como RUP
(Rational Unified Proecess), Extreme
Programming y otros mtodos de
desarrollo giles.
La idea bsica es desarrollar el sistema
siguiendo etapas incrementales
caracterizadas por generacin de
sucesivas versiones que van abarcando
requerimientos hasta completar el
sistema.
Cada versin tiene sentido para el cliente.

Principales metodologas en el
tiempo
Definicin de
Requerimientos

Inicialmente se
us el Modelo
Tradicional de
Cascada
1980

Construccin/Pruebas

Anlisis & Diseo

Implementacin y
Test Unitarios

Tiempo

Integracin y
test del sistema
Operacin y
mantencin

Modelo Iterativo
Incremental
1990
Iteracin 1

Iteracin 2

Iteracin 3

R
A&D

R
A&D

A&D
C

C
P

1. Guiado por casos de


uso
Los sistemas se crean para
dar servicio a los usuarios.

Qu REQUISITOS se necesitan
Un CASO de USO es una pieza
de FUNCIONALIDAD de un
sistema que le proporciona a
algn USUARIO un
RESULTADO o VALOR.

Casos de uso
Todos juntos constituyen el
modelo de casos de uso
(MCU)
FUNCIONALIDAD COMPLETA
PARA TODOS LOS USUARIOS

EJEMPLO DE MODELO DE
CASOS DE USO
Consultar Catlogo
<<includes>>
Actualizar Catlogo

Persona

Reservar Libro

EncargadoBiblio
<<extends>>

Tomar Prstamo Copia


Libro
- No disponible

<<extends>>

Tomar Prstamo
Revista

Extender Prstamo
- No reservado

Socio

Devolver Revista
Devolver Copia Libro

TrabajadorBiblio

Desarrollo guiado por casos de uso (CU)

LOS CASOS DE USO:


CAPTURAN REQUISITOS
SE ESPECIFICAN (ANALIZAN)
SE DISEAN
SE IMPLEMENTAN
Y SE PRUEBAN

Tomar Prstamo

Desarrollo
guiado por
CASOS DE USO

1.- CASO DE USO

Persona

2.- ANLISIS DEL


CASO DE USO

: IU-1

: GestorLibro

1: Introducir Signatura y NumeroDeSocio

3: obtenerLibro(signaturaLibro:String)

4: getSignatura()
elLibro
5: getCopias()
6: isCopiaPrestada()

4.- IMPLEMENTACIN DEL CASO DE USO


5.- PRUEBA DEL CASO DE USO

elLibro:Libro

Se repite hasta que se


encuentre un libro
con la signatura que
estamos buscando

2: Aceptar

3.- DISEO DEL


CASO DE USO

: Libro

2. Centrado en la
arquitectura

La arquitectura de un sistema
software es un extracto de los
modelos del sistema
Extracto: VISTA DE CADA
MODELO

que da una idea de qu forma


que tiene el sistema completo

Centrado en la
ARQUITECTURA
1

VISTA DEL MODELO DE CASOS DE USO


VISTA DEL MODELO DEL DOMINIO /
VISTA DEL DIAGRAMA DE CLASES

: IU-1
1:
2:

VISTA DEL MODELO DEL ANLISIS

3:

:
:
G
r 4
o ()

2:

:
1:
3:

:
:
G
r 4
o ()

VISTA DEL MODELO DEL DISEO

+ VISTAS DEL MODELO DE IMPLEMENTACIN Y PRUEBAS

SON VISTAS DE LOS MODELOS (NO MODELOS


COMPLETOS).
SLO APARECEN LOS QUE CORRESPONDEN
A CASOS DE USOS CRTICOS

3. Ciclo de vida iterativo e


incremental

ITERATIVO

Se repiten VARIOS
MINIPROYECTOS

INCREMENTAL
Cada miniproyecto AMPLIA
EL PRODUCTO

También podría gustarte