Anda di halaman 1dari 39

INGENIERA DE SISTEMAS 2

Texto basado en el original de el Lic.


Hctor Abel Contreras Hernndez,
adaptado y parafraseado por Ing. Mario
Alberto Caballero Vega.

Bloque 3: Desarrollo de aplicaciones

Objetivos del tema:

Explicar las fases del ciclo de desarrollo de


sistemas.
Identificar los roles y funciones de los diferentes
actores en el desarrollo de un sistema
Categorizar los posibles riesgos del proceso de
desarrollo de sistemas

Desarrollo de aplicaciones
Los ciclos de la vida se conocen desde mucho
tiempo atrs. Es as como se comenz a medir el
tiempo, se crearon los calendarios, y se comenz
a planear de acuerdo a las estaciones del ao.
La vida misma de los seres humanos se dividi en
etapas de acuerdo a los ciclos que se van
cumpliendo a lo largo de la misma.
Este mismo concepto se ha aplicado en diferentes
quehaceres del ser humano. La Tecnologa
Informtica no poda ser la excepcin y el
desarrollo de sistemas de informacin en
particular, ha adoptado de manera muy acertada
este concepto.

Desarrollo de aplicaciones
Los pasos que se llevan a cabo para desarrollar un
sistema no pueden considerarse como partes
aisladas. Cada uno de estos pasos procede y
alimenta al siguiente, ayudando a la evolucin de
lo que llegar a ser el sistema de informacin
propiamente dicho.
3.1 Ciclo de vida del desarrollo de sistemas
Toda vez que se tiene en claro que las bases de un
sistema de informacin son las polticas y
procedimientos de la organizacin en general, y
de aquellas reas que interactuarn en el proceso
del sistema en particular.

Desarrollo de aplicaciones

Se requiere de una estrategia para atacar el


problema que se nos plantea.
Ya ests ejerciendo tu nuevo puesto y ahora
posees una visin bastante interesante de la
organizacin en la que laboras, su estructura, sus
polticas y sus procedimientos. Cul es el paso
siguiente?
Muchos desarrolladores, lderes de proyecto y
gerentes de sistemas se enfrentaron a este
problema antes que t y con la experiencia surgi
un modelo de trabajo que se conoce como ciclo
de vida del desarrollo de sistemas (SDLC por sus
siglas en ingls).

Desarrollo de aplicaciones
Kendall y Kendall (2009) consideran siete las
etapas que debiera contener el desarrollo de un
sistema las cuales se mencionan como sigue:
1. Identificacin de problemas, oportunidades y
objetivos.
2. Determinacin de los requerimientos de
informacin.
3. Anlisis de las necesidades del sistema.
4. Diseo del sistema recomendado
5. Desarrollo y documentacin del software
6. Pruebas y mantenimiento del sistema.
7. Implementacin y evaluacin del sistema.

Desarrollo de aplicaciones

1.
2.
3.
4.
5.

Pressman (2008) por otro lado, en Contreras (s/f)


identifican el ciclo de vida como un tipo de desarrollo
lineal que se compone de cinco etapas:
Planeacin
Anlisis
Diseo
Implantacin
Mantenimiento

Desarrollo de aplicaciones

1.
2.
3.
4.

Otros autores, identifican


nicamente cuatro etapas:
Anlisis
Diseo
Implantacin
Mantenimiento
El ciclo de vida es la herramienta
ms antigua con la que se cuenta
para desarrollar sistemas. A lo largo
de este curso se trabajar con los
elementos siguientes del ciclo de
vida del desarrollo de un sistema.

Desarrollo de aplicaciones
Implantacin y
mantenimiento

Planeacin

Recopilacin
de la
informacin
Desarrollo del sistema

Diseo del sistema

Anlisis de
requerimiento
s

Planeacin:es la etapa ms importante de cualquier


proyecto. Es el primer acercamiento al tipo de desarrollo
que se requiere, con qu elementos se contar,

Desarrollo de aplicaciones

cul ser el alcance del proyecto?, Cul ser la


calendarizacin para el resto de las actividades?,
Cules son los recursos financieros y humanos?.
Esto se realiza a nivel directivo.

Recopilacin de informacin: toda vez que la


planeacin ha sido concluida, los procedimientos
que se ven involucrados en este sistema de
informacin deben ser recopilados en papel pero,
ms importante an, a travs de entrevistas y
cuestionarios con los usuarios finales. Esta etapa
es realizada a todos los niveles de la organizacin
que se involucran directa o indirectamente con el
sistema de informacin a desarrollar.

Desarrollo de aplicaciones

Anlisis de requerimientos: mientras que la


planeacin nos brinda el panorama de lo que el nivel
directivo requiere y la recopilacin de datos nos
muestra lo que se realiza da a da en la organizacin,
el anlisis de requerimientos nos permite juntar
ambas percepciones y establecer los requerimientos
reales del sistema de informacin de la organizacin.
Diseo del sistema: cuando los requerimientos han
sido aprobados por los representantes de las reas
interesadas y participantes en el sistema de
informacin, se comienza el diseo de lo que ser el
sistema. Se conceptualiza el funcionamiento que
deber tener, entradas, salidas, mdulos, etc.
Existiendo la posibilidad de realizar una
representacin o modelo de lo que ser el sistema.

Desarrollo de aplicaciones

Desarrollo del sistema: El diseo del sistema


de ser tan explcito que pueda ser programado
sin depender de una plataforma de desarrollo en
especfico. Sin embargo, se espera que ciertas
modificaciones tcnicas tengan que aplicarse
para que la plataforma de programacin cumpla
con los requerimientos planteados en el diseo.
Aqu deben ser contemplados un nmero de
programadores apropiado destinados a este
proyecto.
En esta etapa es muy importante la interaccin
con el usuario final para ir depurando los posibles
fallos en el sistema.

Desarrollo de aplicaciones

Implantacin y mantenimiento: Toda vez que


los representantes de la organizacin en general
han aprobado la versin final del sistema ste se
implantar de manera gradual liberando
mdulos. El mantenimiento deber ser
contemplado en este punto, aunque lo ms
importante en este sentido es tener la
documentacin, tanto en el cdigo como en papel
para garantizar un mantenimiento eficiente y una
duracin adecuada para cada sistema.

Desarrollo de aplicaciones

3.2 Funciones y responsabilidades


Un supuesto importante de la
administracin moderna es que la
autoridad se delega y la
responsabilidad se comparte.
Cada una de las etapas del
desarrollo de sistemas tiene una
serie de actividades que les
corresponden uno o ms
responsables. Los responsables
podrn variar de acuerdo a las
caractersticas de cada organizacin.

Desarrollo de aplicaciones

La tabla siguiente servir como referencia


durante el desarrollo de tu proyecto:
Etapa

Responsabilidades

Planeacin

rea directiva, administracin de


proyectos

Recopilacin de
informacin

Administracin de proyectos, lder de


proyectos, analistas.

Anlisis de
requerimientos

Administracin de proyectos, lder de


proyectos, analistas.

Diseo del sistema

Lder de proyectos, analistas.

Desarrollo del sistema

Lder de proyectos, analistas,


programadores.

Implantacin y
mantenimiento

Lder de proyectos, analistas,


programadores.

Desarrollo de aplicaciones

Es importante tener nombres de personas


responsables y no slo de las reas en esta tabla.
Procura mantener juntas peridicas para informar
al nivel directivo y operativo de los avances del
proyecto.
Cada rea o persona responsable de cada etapa,
debe comprender sus responsabilidades y
funciones de modo claro y especfico.
Es importante recordar que las reuniones a nivel
directivo debern ser concreta y claras.

Desarrollo de aplicaciones

3.3 Riesgos en el desarrollo de sistemas

Cada proyecto de TI conlleva un riesgo inherente.


Una mala planeacin, una defectuosa
recopilacin de datos, un anlisis de
requerimientos mal aplicado o el diseo
defectuoso del sistema de informacin;
representan riesgos que pueden afectar los
tiempos de entrega e incrementar el costo del
sistema de modo considerable.
Cada una de las fases del desarrollo de sistemas,
presenta un riesgo potencial si no es desarrollada
de modo adecuado.

Desarrollo de aplicaciones

Entre los riesgos ms importantes que se pueden


encontrar se tienen:
Factibilidad:el riesgo ms elemental es que el
costo-beneficio del sistema de informacin sea
negativo. Cabe la posibilidad que al presentar el
anlisis del costo de nuestro sistema, el comit
directivo decida no llevar a cabo el proyecto debido
a que los beneficios no sern redituables
comparados con el costo de produccin del sistema.
No terminar a tiempo el proyecto:La planeacin
fue defectuosa y no se puede terminar a tiempo el
proyecto. Se requieren ms recursos humanos,
tecnolgicos, financieros o de los tres tipos para
concluir a tiempo el proyecto.

Desarrollo de aplicaciones

Cambios en los requerimientos: es necesario


conforma a Contreras et al (s/f) delimitar el alcance
del proyecto y las fechas lmite para determinar el
modelo final. Es posible que las reas hagan
solicitudes adicionales por contar con la posibilidad
de un sistema de informacin que solucione sus
problemas, comenzarn a aadir requerimientos al
proyecto original sin contemplar la afectacin que
pueden causar en este sentido.

Desarrollo de aplicaciones

El sistema no cubre los requerimientos reales:


pueden existir errores en el momento de definir los
requerimientos del sistema de informacin o de
identificar los procedimientos que se llevan a cabo.
Sin importar el origen del error, si este problema no
se corrige a tiempo puede generar fallas
importantes dentro del sistema.

Resistencia al cambio: en la mayora de las


empresas, existe personal que tiene resistencia a
nuevas tecnologas o nuevos procesos. Son estos
elementos los que en ocasiones de manera
consciente o inconsciente obstaculizan el desarrollo
e implementacin de un sistema de informacin.

Desarrollo de aplicaciones

Personal ineficiente: ya sea que se trate de un


desarrollo interno o de una consultora, es
necesario elegir al personal adecuado para la
realizacin del proyecto. La eleccin del personal
que no cuente con la capacidad tcnica, cognitiva y
el compromiso adecuado para concluir de manera
exitosa con el proyecto, puede provocar el fracaso.
Falta de apoyo al proyecto: Es importante
mantener el inters de la alta direccin en el
desarrollo del proyecto. Si no se cuenta con este
apoyo explcito por parte de la direccin de la
organizacin, se corre el riesgo de no permear al
resto de la empresa con la importancia del
proyecto.

Desarrollo de aplicaciones

En la tabla siguiente se puede apreciar algunos de los riesgos que


se corren en cada fase del ciclo de vida del desarrollo de sistemas :

Etapa

Riesgo

Planeacin

Factibilidad. No terminar a
tiempo. Resistencia al cambio.
Falta de apoyo al proyecto.

Recopilacin de la informacin

Cambios en los requerimientos

Anlisis de requerimientos

El sistema no cubre los


requerimientos reales

Diseo del sistema

El sistema no cubre los


requerimientos reales.
Personal ineficiente.

Desarrollo del sistema

El sistema no cubre los


requerimientos reales.
Personal ineficiente.

Implantacin y mantenimiento

El sistema no cubre los

Bloque 4 Tcnicas de desarrollo de sistemas

Objetivos:
Utilizar las tcnicas estructuradas del desarrollo
de sistemas.
Utilizar las tcnicas tradicionales del desarrollo de
sistemas.

Bloque 4 Tcnicas de desarrollo de sistemas

La importancia del desarrollo de sistemas en las


organizaciones ha trascendido el mbito
tecnolgico y financiero. Existen algunos que
consideran al desarrollo de sistemas como un
arte. En cualquier caso, el desarrollo de sistemas
tiene un lugar especial en el rea de la Tecnologa
Informtica.
Este proceso requiere de la aplicacin de una
serie de tcnicas que llevan a conseguir el
resultado deseado de forma eficiente. Conocer y
dominar estas tcnicas facilita el xito en el
desarrollo de los sistemas de informacin.

Bloque 4 Tcnicas de desarrollo de sistemas

Para practicar cualquier deporte, las primeras


enseanzas van enfocadas a la tcnica del
mismo. Es decir, lo primero que debemos
aprender es la forma correcta en que se ejecuta
algn movimiento
Que es parte bsica del deporte que
practicaremos. La nica manera de dominar esa
tcnica es repitindola una y otra vez. Lo mismo
ocurre en el desarrollo de sistemas.
Cuando nos involucramos en este tipo de
proyectos en cualquier posicin, es importante el
aprendizaje que obtendremos en cada uno de los
sistemas que pongamos en marcha.

Bloque 4 Tcnicas de desarrollo de sistemas

La experiencia que pongamos en cada proyecto


nos permitir conocer y dominar las tcnicas
necesarias para optimizar los recursos que se nos
ofrezcan al convertirnos en lderes de proyectos.

Bloque 4 Tcnicas de desarrollo de sistemas


4.1 Tcnicas tradicionales

La tcnica de desarrollo de software tradicional o


convencional fue la primera que surgi para
satisfacer la necesidad de desarrollo de sistemas.
En realidad las tcnicas tradicionales carecen de una
metodologa. El analista de sistemas, o su
equivalente, propona lo que mejor le pareca para la
solucin de un problema. Queriendo decir con esto
que dentro de la organizacin surga un problema a
resolver y se solicitaba al ingeniero de sistemas que
propusiera la mejor solucin considerando como
base la tecnologa existente en el mercado, o en su
defecto que generara un sistema de informacin que
apoyara la solucin de esta clase de problemas.

Bloque 4 Tcnicas de desarrollo de sistemas

De esta manera el gur de la informtica, se las


arreglaba para solucionar un problema en el rea
de produccin que, dicho sea de paso,
desconoca totalmente.
Los problemas principales al utilizar tcnicas
tradicionales son:
No existe manera de controlar lo que ocurre
con el proyecto: este proyecto tiene un lder
pero no una metodologa. Los participantes en
este proyecto, llmese programadores o
analistas, dependern del ingenio y proactividad
del lder para sacar aadelante su trabajo. No
existen puntos de medicin.

Bloque 4 Tcnicas de desarrollo de sistemas

El resultado es impredecible: como no existen


anlisis de requerimientos que integren a las
reas participantes, los resultados del sistema no
pueden ser predichos ni medidos. No hay forma
de definir si el sistema cumple o no con las
necesidades identificadas en el problema.

Bloque 4 Tcnicas de desarrollo de sistemas

No hay responsabilidad ni aceptacin: las


reas involucradas en este tipo de proyecto no
tienen responsabilidad alguna sobre este sistema
de informacin ya que no fueron consultadas
para su creacin. En el mejor de los casos, el rea
de sistemas libera un producto que ser
adoptado por algunas reas para su operacin. La
realidad es que en la mayora de los casos, an
con el apoyo de la alta direccin, este tipo de
sistemas terminan por morir ya que no responden
a necesidades reales de la organizacin.

Bloque 4 Tcnicas de desarrollo de sistemas

Cambios en la organizacin: en muchas


ocasiones, estos sistemas han sido impulsados
por la cpula directiva de la organizacin sin
tomar en cuenta a las reas administrativas y
operacionales de la empresa. Esto provoca que,
ante un cambio de direccin dentro de la
organizacin, el sistema termine por desaparecer
o por no salir a la luz, provocando as un gasto
intil de tiempo, dinero y esfuerzo.
Los principales ejemplos en este sentido son las
empresas o entidades gubernamentales a todos
los niveles. Sin embargo, esto aplica en muchas
ocasiones a las organizaciones privadas.

Tcnicas de desarrollo de sistemas


4.2 Tcnicas estructuradas
En la naturaleza todo tiene un orden. Inicio,
desarrollo y fin para decirlo de manera sencilla.
Es decir, la naturaleza se encuentra estructurada
y funciona as de forma adecuada.
Se conocen como tcnicas o metodologas
estructuradas, a aquellas con las caractersticas
siguientes:
1. Tienen reglas predefinidas.
2. Cubren el ciclo de vida del desarrollo de un
sistema.
3. Pueden realizarse verificaciones en puntos
intermedios de un proceso.

Tcnicas de desarrollo de sistemas

Pueden ser jerrquicas o no


Estn orientadas a datos
Estn orientadas a procesos
Son mixtas (datos y procesos).
Estas tcnicas han evolucionado con el tiempo.
La siguiente tabla no brinda un idea cronolgica
de su evolucin.

Tcnicas de desarrollo de sistemas


Ao

Tcnica estructurada

1968

Conceptos de programacin estructurada de DIJKSTRA

1975

Primeros conceptos sobre diseo estructurado MYERS y


YOURDON

1978

Anlisis estructurado: DEMARCO y WEINBERG

1985

Anlisis y Diseo estructurado para sistemas de tiempo


real. HATLEY y PIRHBAY

1989

METRICA

1990

SSADM

1995

METRICA versin 2.1

Tcnicas de desarrollo de sistemas

Las tcnicas estructuradas se basan


principalmente en el concepto de divide y
vencers. Es decir, asla los componentes de un
problema en partes pequeas que puedan
atacarse de un modo ms sencillo y, despus une
las partes ya resueltas como si fuera un
rompecabezas.
Ms sin embargo, cabe sealar que si una pieza
del rompecabezas se pierde o est mal hecha,
afecta el resultado del desarrollo de sistemas.
Son stas tcnicas las que ponen un nfasis muy
especial a la documentacin de los sistemas de
informacin.

Tcnicas de desarrollo de sistemas

Los diagramas de flujo, Los diagramas de entidad


relacin, La documentacin d e la definicin de
requerimientos, etc., son herramientas bsicas
que servirn posteriormente para dar
mantenimiento o corregir el sistema diseado.
La principal caracterstica de una tcnica
estructurada comparndola a una tradicional es
que las primeras son mejores herramientas para
definir los requisitos reales del sistema. Adems
de poner mucho nfasis en la calidad del
proyecto utilizando una metodologa Top-down.

Tcnicas de desarrollo de sistemas


Segn Pressman (s/f), las tcnicas estructuradas
pueden mostrarse como:
1. Anlisis estructurado
2. Diseo estructurado
3. Desarrollo Top-Down
4. Programacin estructurada
5. Revisiones estrucutradas

Anda mungkin juga menyukai