Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

Saludos de nuevo estimados Ingenieros: ya estamos

terminando este segundo parcial y por lo tanto


estamos prximos a los exmenes de mitad de clase.
Para esta leccin vamos a platicar sobre algunos
modelos que han sido creados con la finalidad de
describir el proceso que conlleva crear e implementar una solucin de software.
Estos tipos de modelos han sido creados con la finalidad de poder tomar un camino a la
hora de embarcarse en un proyecto como lo es un software que va a resolver uno o varios
problemas, estos han sido probados y elaborados por expertos en el tema por lo tanto no
hay que poner en duda a los mismos; pero si encontraremos ventajas y desventajas en
ellos.

Modelo Secuencial Lineal


Tambin conocido como modelo de
etapas,

modelo

clsico,

modelo

tradicional en cascada y mundialmente


conocido como el ciclo de vida del
desarrollo de sistemas (SDLC, System
Development Life Cycle).
Es el ms utilizado en Honduras debido a que es muy simple de entender, describe al
desarrollo de software como una secuencia de siete fases. Cada fase tiene una serie de
metas claramente definidas. Cada fase sirve de retroalimentacin a las otras en vista que al
ser un ciclo cuando llegamos a la fase nmero siete entonces volvemos a la primera fase
volviendo a recorrer todo el ciclo pero con el nuevo aprendizaje obtenido.
Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Los dems modelos que estudiaremos toman como base al SDLC por
lo tanto es importante su comprensin

A continuacin se explica cada una de las siete fases:


Fase 1.

Investigacin previa: es cuando la organizacin se da cuenta que necesita una

solucin de software para determinado problema, esta fase tiene 3 pasos importantes:
a. Solicitud: viene del resultado de entrevistas con las personas relacionadas con el
problema
b. Estudio de Factibilidad: determinar que el sistema solicitado sea rentable con
relacin al costo/beneficio que el problema conlleva, hay 3 estudios que deben
realizarse en este paso:
i. Factibilidad Tcnica: Determina si
el problema puede resolverse con
el software y el personal existente,
y si en caso de necesitar nueva
tecnologa,

cuales

son

las

posibilidades de desarrollarla (no


solo el hardware).
ii. Factibilidad Econmica: justificacin de los costos versus los beneficios que
se obtienen, en esta parte se puede saber si crear la solucin de software es
necesaria.
iii. Factibilidad Operacional: Investiga si ser utilizado el sistema, si los
usuarios usaran el sistema. (a mi criterio una parte muy esencial)
c. Aprobacin: En base a lo documentado en la solicitud y estudio de factibilidad la
administracin o la alta gerencia de la organizacin definen si el proyecto se va a
desarrollar o no.
Muchos proyectos difcilmente llegan a tener xito si no se considera
esta etapa preliminar, esto, debido a que las personas relacionadas en
ocasiones se rehsan a usar el software o el costo del mismo se vuelve
inmanejable o mayor al ahorro que se debera haber tenido
implementado el software.
Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Fase 2.

Determinar los requisitos de informacin: Aqu ya sabemos cul es el

problema. En esta fase se hace estudio de todos los documentos relacionados con el
problema:
a. Estudio de manuales de procesos
b. Estudio de reportes y documentos relacionados
c. Observacin del proceso
d. Tomar muestras de formas y documentos
Fase 3.

Analizar las necesidades del sistema: A diferencia de la fase anterior aqu se

analizar las necesidades del propio software como tal: servidores, infraestructura de red,
anchos de banda, disposicin de equipos, hardware adicional, etc.
Un desarrollador de software no solo debe saber programar, debe
tambin conocer toda la arquitectura e infraestructura que conlleva el
tener que desarrollar un sistema para usar de forma eficiente los
servidores, hardware y canales de comunicacin.
Fase 4.

Diseo del sistema: tambin lo conocemos como diseo lgico, en esta fase se

realiza los diagramas, las tablas, seleccionar las estructuras de almacenamiento, el


diccionario de datos as como describir las entradas y salidas.

Los diagramas de flujo de datos como por ejemplo el diagrama de contexto y el de nivel 1 son
algunos de los que se redactan durante esta etapa.
Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Fase 5.

Desarrollo del software: a este se le conoce como diseo fsico y es aqu donde

los programadores realizan la codificacin del software. En esta fase aparte de programar,
los desarrolladores tambin documentarn el cdigo fuente del mismo.

Un software que carece de documentacin en su cdigo fuente rara vez podr trascender y crecer

Fase 6.

Prueba del software: en esta fase se hace pruebas piloto con datos de

muestra, se analizan todas las posibilidades y los desarrolladores corrigen los detalles
encontrados.

En la industria del software, especialmente en la de los videojuegos la etapa de pruebas es crucial para
entregar piezas de ingeniera con calidad; pero aun los diseadores de programas ms experimentados dejan
pasar muchos detalles, los ejemplos ms famosos son los bug presentados por los juegos de Super Mario
Bros. Para el Nintendo Entertaiment System (NES) donde podras atravesar la pared y entrar a un error de
programacin conocido como mundo 0 -1, o en el juego Pokmon de Gameboy en el cual al hacer una serie
de pasos ocurran glitches grficos conocidos como el bug: Missingno.
Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Fase 7.

Implementacin, evaluacin y mantenimiento: esta es la fase crtica, es donde

el software entra a produccin, aqu se toman en cuenta muchas cosas, principalmente:


a. Verificar e instalar nuevo equipo
b. Entrenar a los usuarios
c. Instalar la aplicacin
d. Construir todos los archivos de datos necesarios para utilizarla (bases de datos en
blanco, formatos adicionales, etc.)

La capacitacin de los usuarios es parte fundamental en el proceso de implementacin

Para evaluar el avance de la implementacin se debe usar instrumentos de medicin, tres


de ellos son:
Evaluacin operacional: los usuarios y expertos del procesa valoran aspectos del
software tales como:
o Facilidad de uso
o Tiempo de respuesta
o Confiabilidad
Impacto organizacional: identificar los beneficios que el software ha trado a la
organizacin en materia de:
o Finanzas
o Eficiencia operacional
o Impacto competitivo
Desempeo del desarrollo: evaluar el tiempo de respuesta de los desarrolladores y
analistas a la hora de realizar algn cambio o personalizacin significativa, y en caso
de haberlo, si el costo de las mismas no excede al presupuesto del proyecto mismo.

Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Al final en esta etapa se estar haciendo los mantenimientos respectivos al sistema, estos,
de forma peridica:
Optimizar bases de datos
Optimizacin de rutinas de cdigo fuente
Adicin de procesos
Eliminacin de procesos

Caractersticas
Planear un proyecto antes de comenzarlo
Documenta cada actividad
Disear el sistema antes de comenzar a codificar
Realizar pruebas al software

Ventajas
Permite avanzar en el desarrollo siguiendo pasos sencillos

Desventajas
Si se producen cambios a etapas bsicas cuando se ha llegado a etapas avanzadas
(desarrollo, pruebas, implementacin) puede ser catastrfico para un proyecto
grande.
No es frecuente que el usuario final sepa explicar de forma clara los requisitos, es
comn encontrar incertidumbre en las primeras etapas del proyecto que luego es
difcil de acomodar.
El cliente debe ser paciente ya que el software no va a estar disponible hasta que el
proyecto est en una etapa demasiado avanzada.
Investigacin Previa
Requirimientos de Informacin

Vuelve a comenzar

Analisis de Necesidades
Diseo del Sistema
Desarrollo del Software
Prueba del Software
Implementacin

Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Modelo basado en Prototipos


Este es otro modelo muy utilizado en Honduras y consiste en la creacin de una
implementacin parcial de un sistema con la finalidad de comprender los requerimientos
del usuario final.

Escuchar al
Cliente

Validar el
prototipo

Construir el
Prototipo

Este modelo consiste en tres fases:


Fase 1.

Entrevistar a los usuarios para entender lo que necesitan

Fase 2.

Construir un prototipo de forma rpida basado en lo que los usuarios necesitan

Fase 3.

Los

usuarios

experimentan

con

el

prototipo

estos

proveen

la

retroalimentacin sobre lo que a ellos les gust y no les gust acerca del prototipo
proporcionado.
Toda La informacin obtenida la documentamos y la utilizamos para el
desarrollo del sistema real, un prototipo nunca debe considerarse
como un sistema real sino como un ambiente de pruebas para
entender a la organizacin.

Ventajas
Hace ms rpido el diseo de soluciones de software pequeas

Desventajas
El cliente puede llegar a creer que as va a ser el software terminado
Suele prestarse a hacer soluciones de software que crecen de forma desordenada
(quick and dirty)

Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Modelo Incremental
Es un modelo evolutivo que est basado en el modelo secuencial lineal y es una de las
variaciones ms fieles al mismo con la diferencia que reduce los riesgos que conlleva el
mismo.
Consiste en ir recorriendo todas las etapas del desarrollo a medida se va avanzando en cada
una de las etapas del modelo secuencial lineal de siete fases, o sea a cada fase le aplicamos
las otras fases, el siguiente dibujo describe mejor este modelo:
Investiga
cion

Arranca el
Incremento 1

Arranca el
Incremento 2

Requerim
ientos

Investiga
cion

Analisis

Requerim
ientos

Investiga
cion

Arranca el
Incremento 3

Arranca el
Incremento N

Fecha 1

Fecha 2

Fecha 3

Diseo

Analisis

Requerim
ientos

Investiga
cion

Desarroll
o

Diseo

Analisis

Requerim
ientos

Pruebas

Desarroll
o

Diseo

Analisis

Implemen
tacion

Pruebas

Desarroll
o

Diseo

Entrega del
Incremento 1

Implemen
tacion

Pruebas

Desarroll
o

Tiempo

Fecha 4

Entrega del
Incremento 2

Implemen
tacion

Pruebas

Fecha 5

Entrega del
Incremento 3

Implemen
tacion

Fecha 6

Entrega del
Incremento N

Fecha 7

Fecha 8

Observe como cada incremento (entrega de una parte del sistema) comienza en una fecha y termina
en otra a travs del tiempo de desarrollo del proyecto, el modelo incremental permite dividir el
proyecto en partes que se van ejecutando simultneamente y a cada una de est as partes se le aplica
el modelo secuencial lineal (SDLC), puede haber la cantidad incrementos que desee (N).

Ventajas
Reduce las desventajas del modelo lineal secuencial ya que en cada incremento
puede retroalimentarse el anterior
Al ir desarrollando el sistema es ms fcil detectar si los requerimientos planeados
para los siguientes incrementos son correctos
Si ocurre un error importante entonces se descarta solamente el ltimo incremento
lo que se traduce en reduccin de riesgos y del tiempo de desarrollo del software

Desventajas
No es recomendado cuando el sistema requiere un alto nivel de seguridad ya que es
probable que se pasen por alto muchos controles y algunas personas descubran
dichas puertas abiertas y las utilicen para cometer fraudes.

Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Modelo en Espiral
Es otro modelo evolutivo creado por el Ing. Informtico Barry Boehm, el cual une al modelo
basado en prototipos con el modelo secuencial lineal (SDLC).
El modelo en espiral est basado en 4 fases, las cuales van repitindose de forma cclica,
pero en cada ciclo van aumentando las actividades a realizar hasta obtener un sistema de
calidad.
Este modelo es recomendado para grandes proyectos de software y
est orientado al riesgo (costo vs tiempo)

A continuacin explico cada una de sus cuatro fases:


Fase 1.

Determinar objetivos: identificar las necesidades del usuario que deben ser

resueltas por el sistema


Fase 2.

Anlisis del Riesgo: analizar la experiencia de los usuarios y las exigencias de

los mismos, como estos realizan las operaciones y las diferentes alternativas que hay para
realizar cada una de ellas, debe tomarse la que represente menos riesgos para la
organizacin.
Fase 3.

Desarrollar y Probar: Hacer la programacin de las funciones del software y al

mismo tiempo irlas probando con los usuarios, evaluar todas las posibilidades.
Fase 4.

Planificacin: con los hallazgos obtenidos en las tres etapas anteriores se

procede a hacer un plan de trabajo para el siguiente ciclo en la espiral.


El siguiente diagrama describe mejor a este modelo:
Determinar Objetivos

Anlisis del Riesgo

Desarrollar y Probar

Planificacin

A cada vuelta en la espiral la conocemos cono ciclo o iteracin, la espiral arranca desde el
centro y se va expandiendo hacia afuera (como un caracol). Mientras ms ancho se hace el
caracol significa que el proyecto se va haciendo ms caro, esto, porque se ha invertido ms
trabajo en el proyecto con cada vuelta.
Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Ventajas
Une los enfoques lineal y el basado en prototipos, permite apreciar que a medida nos
extendemos en el proyecto estamos gastando ms recursos en el mismo.

Desventajas
Necesita de mucha habilidad y experiencia al momento de hacer el anlisis de riesgos
No le gusta a la mayora de clientes porque lo consideran complicado

Conclusin
En Honduras se suele utilizar en su mayora enfoques sencillos de entender como el basado
en prototipos y el lineal, debemos ponernos a pensar que hay ms mtodos, incluso ms
que los expuestos en este material. Les recomiendo que siempre que puedan investiguen
sobre otros; ningn proyecto de software es igual. Por experiencia personal les puedo decir
que utilizo el modelo en espiral, ya que me permite controlar el costo del proyecto ya que
muchos de mis clientes a veces se ponen a meterle ms y ms a cada proyecto sin
considerar que como profesionales debemos cobrar esas horas adicionales que se
consumen por cada nueva caracterstica que va a tener el sistema de software.

Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

Humor
Resumiendo el modelo secuencial lineal

Cuando se termina el ciclo de desarrollo de un software

Material facilitado por Ing. Gerardo Josu Portillo ([email protected])

También podría gustarte