Vous êtes sur la page 1sur 31

Ingeniera de software

Indice
1. Introduccin
2. Objetivos de la ingeniera de software
3. Competitividad
4. strategias para su desarrollo
!. "#todo del ciclo de vida cl$sico
%. "#todo de desarrollo por an$lisis estructurado
&. 'iccionario de datos.
(. 'iagrama de estructura de datos
). *r$fica de estructura
1+. tapas del m#todo de prototipos
11. Coordinacin , *estin del pro,ecto.
12. "ediciones , estimaciones
13. -eingeniera e ingeniera inversa
1. Introduccin
Este trmino fue introducido a finales de los 60 a raz de la crisis del software.
Esta crisis fue el resultado de la introduccin de la tercera generacin del
hardware.
El hardware dejo de ser un impedimento para el desarrollo de la informtica;
redujo los costos y mejoro la calidad y eficiencia en el software producido
a crisis se caracterizo por los siguientes pro!lemas"
#mprecisin en la planificacin del proyecto y estimacin de los costos.
$aja calidad del software.
%ificultad de mantenimiento de programas con un dise&o poco
estructurado' etc.
(or otra parte se e)ige *ue el software sea eficaz y !arato tanto en el desarrollo
como en la compra.
+am!ien se re*uiere una serie de caractersticas como fia!ilidad' facilidad de
mantenimiento y de uso' eficiencia' etc.
2. Objetivos de la ingeniera de software
En la construccin y desarrollo de proyectos se aplican mtodos y tcnicas para
resol,er los pro!lemas' la informtica aporta herramientas y procedimientos so!re
los *ue se apoya la ingeniera de software.
mejorar la calidad de los productos de software
aumentar la producti,idad y tra!ajo de los ingenieros del software.
-acilitar el control del proceso de desarrollo de software.
.uministrar a los desarrolladores las !ases para construir software de alta
calidad en una forma eficiente.
%efinir una disciplina *ue garantice la produccin y el mantenimiento de los
productos software desarrollados en el plazo fijado y dentro del costo
estimado.
/!jeti,os de los proyectos de sistemas
(ara *ue los o!jeti,os se cumplan las empresas emprenden proyectos por las
siguientes razones" 0as cinco 1 0 1apacidad
as acti,idades de la organizacin estn influenciadas por la capacidad de sta
para procesar transacciones con rapidez y eficiencia.
os sistemas de informacin mejoran esta capacidad en tres formas.
. /umentan la velocidad de procesamiento0
os sistemas !asados en computadora pueden ser de ayuda para eliminar la
necesidad de clculos tediosos y comparaciones repetiti,as.
2n sistema automatizado puede ser de gran utilidad si lo *ue se necesita es un
procesamiento acelerado.
./umento en el volumen0
a incapacidad para mantener el ritmo de procesamiento no significa el a!andono
de los procedimientos e)istentes. 3uiz stos resulten inadecuados para
satisfacer las demandas actuales. En estas situaciones el analista de sistemas
considera el impacto *ue tiene la introduccin de procesamiento computarizado' si
el sistema e)istente es manual. Es poco pro!a!le *ue 4nicamente el aumento de
la ,elocidad sea la respuesta. El tiempo de procesamiento por transaccin
aumenta si se considera la cantidad de acti,idades comerciales de la empresa
junto con su patrn de crecimiento.
. -ecuperacin m$s r$pida de la informacin0
as organizaciones almacenan grandes cantidades de datos' por eso' de!e
tenerse en cuenta donde almacenarlos y como recuperarlos cuando se los
necesita.
1uando un sistema se desarrolla en forma apropiada' se puede recuperar en
forma rpida la informacin.
1osto
. 1igilancia de los costos0
(ara determinar si la compa&a e,oluciona en la forma esperada' de acuerdo con
lo presupuestado' se de!e lle,ar a ca!o el seguimiento de los costos de mano de
o!ra' !ienes y gastos generales.
a creciente competiti,idad del mercado crea la necesidad de mejores mtodos
para seguir los costos y relacionarlos con la producti,idad indi,idual y
organizacional.
. -educcin de costos0
os dise&os de sistemas ayudan a disminuir los costos' ya *ue toman ,entaja de
las capacidades de clculo automtico y de recuperacin de datos *ue estn
incluidos en procedimientos de programas en computadora. 5uchas tareas son
realizadas por programas de cmputo' lo cual deja un n4mero muy reducido de
stas para su ejecucin manual' disminuyendo al personal.
1ontrol
."a,or seguridad de informacin0
6lgunas ,eces el hecho de *ue los datos puedan ser guardados en una forma
adecuada para su lectura por medio de una m*uina' es una seguridad difcil de
alcanzar en un medio am!iente donde no e)isten computadoras.
(ara aumentar la seguridad' generalmente se desarrollan sistemas de informacin
automatizados. El acceso a la informacin puede estar controlado por un complejo
sistemas de contrase&as' limitado a ciertas reas o personal' si est !ien
protegido' es difcil de acceder.
."enor margen de error0 2mejora de la e3actitud , la consistencia4
Esto se puede lograr por medio del uso de procedimientos de control por lotes'
tratando de *ue siempre se siga el mismo procedimiento. 1ada paso se lle,a a
ca!o de la misma manera' consistencia y con e)actitud" por otra parte se efect4an
todos los pasos para cada lote de transacciones. 6 diferencia del ser humano' el
sistema no se distrae con llamadas telefnicas' ni ol,idos e interrupciones *ue
sufre el ser humano. .i no se omiten etapas' es pro!a!le *ue no se produzcan
errores.
1omunicacin
a falta de comunicacin es una fuente com4n de dificultades *ue afectan tanto a
cliente como a empleados. .in em!argo' los sistemas de informacin !ien
desarrollados amplan la comunicacin y facilitan la integracin de funciones
indi,iduales.
. Intercone3in0 2 aumento en la comunicacin4
5uchas empresas aumentan sus ,as de comunicacin por medio del desarrollo
de redes para este fin' dichas ,as a!arcan todo el pas y les permiten acelerar el
flujo de informacin dentro de sus oficinas y otras instalaciones *ue no se
encuentran en la misma localidad.
2na de las caractersticas ms importantes de los sistemas de informacin para
oficinas es la transmisin electrnica de informacin' como por ejemplo' los
mensajes y los documentos.
. Integracin de $reas en las empresas0
1on frecuencia las acti,idades de las empresas a!arcan ,arias reas de la
organizacin' la informacin *ue surge en un rea se necesita en otra rea' por
ejemplo.
os sistemas de informacin ayudan a comunicar los detalles del dise&o a los
diferentes grupos' mantienen las especificaciones esenciales en un sitio de fcil
acceso y calculan factores tales como el estrs y el ni,el de costos a partir de
detalles proporcionados por otros grupos.
3. Competitividad
os sistemas de informacin computacionales son un arma estratgica' capaz de
cam!iar la forma en *ue la compa&a compite en el mercado' en consecuencia
stos sistemas mejoran la organizacin y la ayudan a ganar 0,entaja competiti,a0'
sin em!argo' si los competidores de la compa&a tienen capacidades mas
a,anzadas para el procesamiento de informacin' entonces los sistemas de
informacin pueden con,ertirse en una 0des,entaja competiti,a0.
2na organizacin puede ganar ,entaja competiti,a a tra,s de sus sistemas de
informacin de diferentes formas.
. /segurar clientes0
1omo los clientes son los ms importante para una organizacin' los directi,os
!uscan diferentes formas para conseguir nue,os clientes y mantener los *ue
tienen. (ara eso las empresas proporcionan"
78 5ejores precios
98 .er,icios e)clusi,os.
:8 (roductos diferentes.
a ,entaja en precios se o!ser,a continuamente en la acti,idad comercial ;s el
producto es e)clusi,o o distinto entonces tener el liderazgo en precios !ajos
*uizs no sea el o!jeti,o a alcanzar<.
a estrategia eficaz de precios a menudo se alcanza al desarrollar sistemas de
informacin por razones tales como reduccin de costos y ganancia en la
e)actitud.
=eneralmente cuando una compa&a puede ofrecer ser,icios e)clusi,os y atraer
clientes' es posi!le *ue los competidores no sean capaces de atraer a los clientes
de la compa&a.
. 'ejar fuera a los competidores0
(asar so!re los competidores puede ser un incon,eniente si ellos se encuentran la
forma para duplicar los logros de la compa&a' los sistemas de informacin pueden
ser la !ase para dejar fuera del mercado a la competencia ya sea el disuadir sus
intentos por ingresar al mercado o crendoles o!stculo para su entrada.
."ejores acuerdos con los proveedores0
En los negocios' los pro,eedores tam!in tienen importancia estratgica. 2na
manera de utilizar los sistemas de informacin para fa,orecer arreglos con los
pro,eedores es ofreciendo un mejor precio. %isminuyendo los costos.
.5ormar bases para nuevos productos
os sistemas de informacin tam!in forman la !ase de muchos productos y
ser,icios nue,os.
os ser,icios de !ase de datos e)perimentan un crecimiento com4n en todas las
industrias.
(roductos *ue ,an desde programas personales hasta planes de construccin
pueden hacerse a la medida del cliente gracias al procesamiento de informacin.
2na cosa es clara' es necesario *ue los sistemas entren en operacin y *ue
tra!ajen de manera confia!le.
4. strategias para su desarrollo
os sistemas de informacin !asados en computadoras sir,en para di,ersas
finalidades *ue ,an desde el procesamiento de las transacciones de una empresa
hasta pro,eer de la informacin necesaria para decidir so!re asuntos *ue se
presentan con frecuencia.
En algunos casos los factores *ue de!en considerarse en un proyecto de sistema
de informacin' como el aspecto ms apropiado de la computadora o la tecnologa
de comunicaciones *ue se ,a a utilizar' el impacto del nue,o sistema so!re los
empleados de la empresa y las caractersticas especficas *ue el sistema de!e
tener se pueden determinar de manera secuencial. +odas estas situaciones estn
determinadas por tres mtodos !sicos"
!. "#todo del ciclo de vida cl$sico
El mtodo del ciclo de ,ida para desarrollo de sistemas es el conjunto de
acti,idades *ue los analistas' dise&adores y usuarios realizan para desarrollar e
implantar un sistema de informacin.
El mtodo del ciclo de ,ida para el desarrollo de sistemas consta de las siguientes
acti,idades"
14 Investigacin preliminar
a solicitud para reci!ir ayuda de un sistema de informacin pueden originarse por
una persona' cuando se formula la solicitud comienza la primera acti,idad del
sistema. Esta acti,idad tiene tres partes"
./claracin de la solicitud
6ntes de considerar cual*uier in,estigacin de sistemas' la solicitud de proyecto
de!e e)aminarse para determinar con precisin lo *ue el solicitante desea; ya *ue
muchas solicitudes *ue pro,ienen de empleados y usuarios no estn formuladas
de manera clara.
.studio de factibilidad
En la in,estigacin preliminar un punto importante es determinar *ue el sistema
solicitado sea facti!le. E)isten tres aspectos relacionados con el estudio de
facti!ilidad' *ue son realizados por los general por analistas capacitados o
directi,os"
65actibilidad t#cnica.
Estudia si el tra!ajo para el proyecto' puede desarrollarse con el software y el
personal e)istente' y si en caso de necesitar nue,a tecnologa' cuales son las
posi!ilidades de desarrollarla ;no solo el hardware<.
65actibilidad econmica.
#n,estiga si los costos se justifican con los !eneficios *ue se o!tienen' y si se ha
in,ertido demasiado' como para no crear el sistema si se cree necesario.
65actibilidad operacional0
#n,estiga si ser utilizado el sistema' si los usuarios usaran el sistema' como para
o!tener !eneficios.
. /probacin de la solicitud
6lgunas organizaciones reci!en tantas solicitudes de sus empleados *ue slo es
posi!le atender unas cuantas. .in em!argo' a*uellos proyectos *ue son
desea!les y facti!les de!en incorporarse en los planes. En algunos casos el
desarrollo puede comenzar inmediatamente' aun*ue lo com4n es *ue los
miem!ros del e*uipo de sistemas estn ocupados en otros proyectos. 1uando
esto ocurre' la administracin decide *ue proyectos son los ms importantes y el
orden en *ue se lle,arn aca!o.
%espus de apro!ar la solicitud de un proyecto se estima su costo' el tiempo
necesario para terminarlo y las necesidades de personal
24 'eterminacin de los re7uisitos del sistema.
os analistas' al tra!ajar con los empleados y administradores' de!en estudiar los
procesos de una empresa para dar respuesta a ciertas preguntas cla,es.
(ara contestar estas preguntas' el analista con,ersa con ,arias personas para
reunir detalles relacionados con los procesos de la empresa. 1uando no es
posi!le entre,istar' en forma personal a los miem!ros de grupos grandes dentro
de la organizacin' se emplean cuestionarios para o!tener esta informacin.
as in,estigaciones detalladas re*uieren el estudio de manuales y reportes' la
o!ser,acin en condiciones reales de las acti,idades del tra!ajo y' en algunas
ocasiones' muestras de formas y documentos con el fin de comprender el proceso
en su totalidad.
>eunidos los detalles' los analistas estudian los datos so!re re*uerimientos con la
finalidad de identificar las caractersticas *ue de!e tener el nue,o sistema.
34'ise8o del sistema.2dise8o lgico4
El dise&o de un sistema de informacin responde a la forma en la *ue el sistema
cumplir con los re*uerimientos identificados durante la fase de anlisis.
Es com4n *ue los dise&adores hagan un es*uema del formato o pantalla *ue
esperan *ue aparezca cuando el sistema esta terminado' se realiza en papel o en
la pantalla de una terminal utilizando algunas de las herramientas automatizadas
disponi!les para el desarrollo de sistemas.
+am!in se indican los datos de entrada' los *ue sern calculados y los *ue de!en
ser almacenados. os dise&adores seleccionan las estructuras de archi,o y los
dispositi,os de almacenamiento. os procedimientos *ue se escri!en indican
cmo procesar los datos y producir salidas.
os documentos *ue contienen las especificaciones de dise&o representan a ste
mediante diagramas' ta!las y sm!olos especiales.
a informacin detallada del dise&o se proporciona al e*uipo de programacin
para comenzar la fase de desarrollo de software.
os dise&adores son responsa!les de dar a los programadores las
especificaciones de software completas y claramente delineadas.
44 'esarrollo de software 2dise8o fsico4.
os encargados de desarrollar software pueden instalar software comprado a
terceros o escri!ir programas dise&ados a la medida del solicitante. a eleccin
depende del costo de cada alternati,a' del tiempo disponi!le para escri!ir el
software y de la disponi!ilidad de los programadores.
os programadores son responsa!les de la documentacin de los programas y de
e)plicar su codificacin' esta documentacin es esencial para pro!ar el programa
y hacer el mantenimiento.
!4 9rueba de sistemas.
%urante esta fase' el sistema se emplea de manera e)perimental para asegurarse
*ue el software no tenga fallas' es decir' *ue funciona de acuerdo con las
especificaciones y en la forma en *ue los usuarios esperan *ue lo haga. .e
alimentan como entradas conjuntos de datos de prue!a para su procesamiento y
despus se e)aminan los resultados. En ocasiones se permite *ue ,arios usuarios
utilicen el sistema' para *ue los analistas o!ser,en si tratan de emplearlo en
formas no pre,istas' antes de *ue la organizacin implante el sistema y dependa
de l.
En muchas organizaciones' las prue!as son conducidas por personas ajenas al
grupo *ue escri!i los programas originales; para asegurarse de *ue las prue!as
sean completas e imparciales y' por otra' *ue el software sea ms confia!le.
%4 Implantacin , evaluacin.
a implantacin es el proceso de ,erificar e instalar nue,o e*uipo' entrenar a los
usuarios' instalar la aplicacin y construir todos los archi,os de datos necesarios
para utilizarla.
1ada estrategia de implantacin tiene sus mritos de acuerdo con la situacin *ue
se considere dentro de la empresa. .in importar cul sea la estrategia utilizada'
los encargados de desarrollar el sistema procuran *ue el uso inicial del sistema se
encuentre li!re de pro!lemas.
os sistemas de informacin de!en mantenerse siempre al da' la implantacin es
un proceso de constante e,olucin.
a e,aluacin de un sistema se lle,a a ca!o para identificar puntos d!iles y
fuertes. a e,aluacin ocurre a lo largo de cual*uiera de las siguientes
dimensiones"
valuacin operacional
?aloracin de la forma en *ue funciona el sistema' incluyendo su facilidad de uso'
tiempo de respuesta' lo adecuado de los formatos de informacin' confia!ilidad
glo!al y ni,el de utilizacin.
Impacto organi:acional
#dentificacin y medicin de los !eneficios para la organizacin en reas como
finanzas ;costos' ingresos y ganancias<' eficiencia operacional e impacto
competiti,o.
8 /pinin de los administradores
E,aluacin de las actitudes de directi,os y administradores dentro de la
organizacin as como de los usuarios finales.
'esempe8o del desarrollo
a e,aluacin del proceso de desarrollo de acuerdo con criterios tales como
tiempo y esfuerzo de desarrollo' concuerdan con presupuestos y estndares' y
otros criterios de administracin de proyectos.
1uando la e,aluacin de sistema se conduce en forma adecuada proporciona
mucha informacin *ue puede ayudar a mejorar la efecti,idad de los esfuerzos
cuando la e,aluacin de sistemas se conduce en forma adecuada proporciona
mucha informacin *ue puede ayudar a mejorar la efecti,idad de los esfuerzos de
desarrollo de aplicaciones su!secuentes.
%. "#todo de desarrollo por an$lisis estructurado
5uchos especialistas en sistemas de informacin reconocen la dificultad de
comprender de manera completa sistemas grandes y complejos. El mtodo de
desarrollo del anlisis estructurado tiene como finalidad superar esta dificultad por
medio de"
7. la di,isin del sistema en componentes y
9. la construccin de un modelo del sistema.
El mtodo incorpora elementos tanto de anlisis como de dise&o
El anlisis estructurado se concentra en especificar lo *ue se re*uiere *ue haga el
sistema o la aplicacin. (ermite *ue las personas o!ser,en los elementos lgicos
;lo *ue har el sistema< separados de los componentes fsicos ;computadora'
terminales' sistemas de almacenamiento' etc.<. %espus de esto se puede
desarrollar un dise&o fsico eficiente para la situacin donde ser utilizado.
El anlisis estructurado es un mtodo para el anlisis de sistemas manuales o
automatizados' *ue conduce al desarrollo de especificaciones para sistemas
nue,os o para efectuar modificaciones a los ya e)istentes. @ste anlisis permite al
analista conocer un sistema o proceso en una forma lgica y maneja!le al mismo
tiempo *ue proporciona la !ase para asegurar *ue no se omite ning4n detalle
pertinente.
Componentes
.m!olos grficos" #conos y con,enciones para identificar y descri!ir los
componentes de un sistema junto con las relaciones entre estos componentes.
%iccionario de datos" descripcin de todos los datos usados en el sistema. (uede
ser manual o automatizado.
%escripciones de procesos y procedimientos" declaraciones formales *ue usan
tcnicas y lenguajes *ue permiten a los analistas descri!ir acti,idades importantes
*ue forman parte del sistema.
>eglas" estndares para descri!ir y documentar el sistema en forma correcta y
completa.
'ise8o structurado.
El dise&o Estructurado es otro elemento del 5todo de %esarrollo por 6nlisis
Estructurado *ue emplea la descripcin grfica' se enfoca en el desarrollo de
especificaciones del software.
El o!jeti,o del %ise&o Estructurado es programas formados por mdulos
independientes unos de otros desde el punto de ,ista funcional.
El %ise&o Estructurado es una tcnica especfica para el dise&o de programas.
a herramienta fundamental del %ise&o Estructurado es el diagrama estructurado
*ue es de naturaleza grfica y e,itan cual*uier referencia relacionada con el
hardware o detalles fsicos. .u finalidad no es mostrar la lgica de los programas
;*ue es la tarea de los diagramas de flujo<. os %iagramas Estructurados
descri!en la interaccin entre mdulos independientes junto con los datos *ue un
mdulo pasa a otro cuando interacciona con l.
/n$lisis de flujo de datos.
Estudia el empleo de los datos para lle,ar a ca!o procesos especficos de la
empresa dentro del m!ito de una in,estigacin de sistemas usa los diagrama de
flujos de datos y los diccionarios de datos.
;erramientas
as herramientas muestran todas las caractersticas esenciales del sistema y la
forma en *ue se ajustan entre si' como es muy difcil entender todo un proceso de
la empresa en forma ,er!al' las herramientas ayudan a ilustrar los componentes
esenciales de un sistema' junto con sus acciones.
'iagrama de flujo de datos
Es el modelo del sistema. Es la herramienta mas importante y la !ase so!re la
cual se desarrollan otros componentes.
El modelo original se detalla en diagramas de !ajo ni,el *ue muestran
caractersticas adicionales del sistema. 1ada proceso puede desglosarse en
diagramas de flujos de datos cada ,ez ms detallados. >epitindose esta
secuencia hasta *ue se o!tienen suficientes detalles para *ue el analista
comprenda la parte del sistema *ue se encuentra !ajo in,estigacin.
El diagrama fsico de datos da un panorama del sistema en uso' dependiente de la
implantacin' mostrando cuales tareas se hacen y como son hechas. #ncluyen
nom!res de personas' nom!res o n4meros de formato y documento' nom!res de
departamentos' archi,os maestro y de transacciones' e*uipo y dispositi,os
utilizados' u!icaciones' nom!res de procedimientos.
El diagrama lgico de datos da un panorama del sistema' pero a diferencia del
fsico es independiente de la implantacin' *ue se centra en el flujo de datos entre
los procesos' sin considerar los dispositi,os especficos y la localizacin de los
almacenes de datos o personas en el sistema. .in indicarse las caractersticas
fsicas.
Aotaciones" son cuatro sm!olos' *ue fueron desarrollados y promo,idos la mismo
tiempo por dos organizaciones" Bourdon y =ane y .arson.
-lujo de datos" son mo,imientos de datos en una determinada direccin' desde un
origen hasta un destino. Es un pa*uete de datos.
Bourdon =ane y .arson
(roceso" son personas' procedimientos o dispositi,os *ue utilizan o producen
datos. Ao identifica el componente fsico
-uente o destino de los datos" pueden ser personas' programas' organizaciones u
otras entidades *ue interact4an con el sistema pero *ue se encuentre fuera.
6lmacenamiento de datos" es un lugar donde se guardan los datos. El
almacenamiento de datos puede representar dispositi,os tanto computarizados
como no computarizados.
1ada componente en un diagrama de flujo de datos tiene una eti*ueta con un
nom!re descripti,o. os nom!res de los procesos reci!en un numero para poder
identificarlos' este numero tiene un ,alor adicional cuando se estudian los
componentes *ue integran un proceso especifico
&. 'iccionario de datos.
1ontiene las caractersticas lgicas de los sitios donde se almacenan los datos del
sistema' incluyendo nom!re' descripcin' alias' contenido y organizacin.
#dentifica los procesos donde se emplean los datos y los sitios donde se necesita
el acceso inmediato a la informacin' se desarrolla durante el anlisis de flujo de
datos y au)ilia a los analistas *ue participan en la determinacin de los
re*uerimientos del sistema' su contenido tam!in se emplea durante el dise&o.
>azones para su utilizacin"
7. (ara manejar los detalles en sistemas muy grandes' ya *ue tienen enormes
cantidades de datos' aun en los sistemas mas chicos hay gran cantidad de
datos.
os sistemas al sufrir cam!ios continuos' es muy difcil manejar todos los
detalles. (or eso se registra la informacin' ya sea so!re hoja de papel o
usando procesadores de te)to. os analistas mas organizados usan el
diccionario de datos automatizados dise&ados especficamente para el
anlisis y dise&o de software.
9. (ara asignarle un solo significado a cada uno de los elementos y
acti,idades del sistema.
os diccionarios de datos proporcionan asistencia para asegurar
significados comunes para los elementos y acti,idades del sistema y
registrando detalles adicionales relacionadas con el flujo de datos en el
sistema' de tal manera *ue todo pueda localizarse con rapidez.
:. (ara documentar las caractersticas del sistema' incluyendo partes o
componentes as como los aspectos *ue los distinguen. +am!ien es
necesario sa!er !ajo *ue circunstancias se lle,a a ca!o cada proceso y con
*ue frecuencia ocurren. (roduciendo una comprensin mas completa. 2na
,ez *ue las caractersticas estn articuladas y registradas' todos los
participantes en el proyecto tendrn una fuente com4n de informacin con
respecto al sistema.
C. (ara facilitar el anlisis de los detalles con la finalidad de e,aluar las
caractersticas y determinar donde efectuar cam!ios en el sistema.
%etermina si son necesarias nue,as caractersticas o si estn en orden los
cam!ios de cual*uier tipo.
.e a!ordan las caractersticas"
D Aaturaleza de las transacciones" las acti,idades de la empresa *ue se
lle,an a ca!o mientras se emplea el sistema.
D (reguntas" solicitudes para la recuperacin o procesamiento de
informacin para generar una respuesta especifica.
D 6rchi,os y !ases de datos" detalles de las transacciones y registros
maestros *ue son de inters para la organizacin.
D 1apacidad del sistema" Ea!ilidad del sistema para aceptar' procesar y
almacenar transacciones y datos
F8 ocalizar errores y omisiones en el sistema' detectan dificultades' y las
presentan en un informe. 6un en los manuales' se re,elan errores.
1ontenido de un registro del diccionario
El diccionario tiene dos tipos de descripciones para el flujo de datos del sistema'
son los elementos datos y estructura de datos.
Elemento dato" son los !lo*ues !sicos para todos los dems datos del sistema'
por si mismos no le dan un significado suficiente al usuario. .e agrupan para
formar una estructura de datos.
%escripcin" 1ada entrada en el diccionario consiste de un conjunto de detalles
*ue descri!en los datos utilizados o producidos por el sistema.
1ada uno esta identificado con"
2n nom!re" para distinguir un dato de otro.
%escripcin" indica lo *ue representa en el sistema.
6lias" por*ue un dato puede reci!ir ,arios nom!res' dependiendo de *uien uso
este dato.
ongitud" por*ue es de importancia de sa!er la cantidad de espacio necesario
para cada dato.
?alores de los datos" por*ue en algunos procesos solo son permitidos ,alores muy
especficos para los datos. .i los ,alores de los datos estn restringidos a un
inter,alo especifico' esto de!e estar en la entrada del diccionario.
Estructura de datos" es un grupo de datos *ue estn relacionados con otros y *ue
en conjunto descri!en un componente del sistema.
%escripcin"
.e construyen so!re cuatro relaciones de componentes. .e pueden utilizar las
siguientes com!inaciones ya sea indi,idualmente o en conjuncin con alguna otra.
>elacin secuencial" define los componentes *ue siempre se incluyen en una
estructura de datos.
>elacin de seleccin" ;uno u otro<' define las alternati,as para datos o estructuras
de datos incluidos en una estructura de datos.
>elacin de iteracin" ;repetiti,a<' define la repeticin de un componente.
>elacin opcional" los datos pueden o no estar incluidos' o sea' una o ninguna
iteracin.
<otacin
os analistas usan sm!olos especiales con la finalidad de no usar demasiada
cantidad de te)to para la descripcin de las relaciones entre datos y mostrar con
claridad las relaciones estructurales. En algunos casos se emplean trminos
diferentes para descri!ir la misma entidad ;alias< estos se representan con un
signo igual ;G< *ue ,incula los datos.
(. 'iagrama de estructura de datos
Es una descripcin de la relacin entre entidades ;personas' lugares' e,entos y
o!jetos< de un sistema y el conjunto de informacin relacionado con la entidad.
-inalidades"
7. ?erificar los re*uerimientos de informacin.
9. %escri!ir los datos asociados con las entidades.
:. 5ostrar la relacin entre entidades.
C. 1omunicar los re*uerimientos de datos a un dise&ador de archi,os o
administrador de la !ase de datos.
<otacin
2na com4n se usa al preparar los diagramas de estructura de datos. as
entidades se representan mediante rectngulos' con el nom!re de la entidad en la
parte de arri!a y una lista de atri!utos *ue descri!an la entidad. 1ada entidad se
puede identificar mediante un atri!uto lla,e.
2so en el dise&o de archi,o.
El uso de los diagramas de estructura de datos re*uiere *ue el analista haga
preguntas importantes acerca de la entidad a descri!ir. a lla,e de registro'
identifica de una forma 4nica a la cuenta. os dems detalles son los atri!utos.
6dems de los componentes !sicos e)isten dos elementos adicionales
esenciales"
D 6puntadores atri!utos" enlazan dos entidades mediante la informacin com4n'
usualmente un atri!uto lla,e en uno y un atri!uto ;no lla,e< en el otro.
D 6puntadores lgicos" identifican las relaciones entre las entidades' sir,en para
o!tener acceso inmediato a la informacin en una entidad' definiendo un atri!uto
lla,e en otra entidad.
2sualmente se indican en la parte inferior del diagrama' son los enlaces con las
dems entidades incluidas en el diagrama.
1ompartir datos entre las aplicaciones.
1ada sistema se puede desarrollar por separado' guardando los datos de los
estados de cuenta aparte de los datos del in,entario. 6l desarrollar mas sistemas y
crecer su utilidad' muy seguido e)iste la necesidad de integrar los sistemas para
permitir *ue la informacin sea compartida por mas de un sistema.
-edundancia e integridad0
.i cada sistema se desarrolla en forma independiente' la informacin puede ser
almacenada al menos una ,ez en cada sistema' ste adems de re*uerir espacio
de almacenamiento e)tra' esta duplicacin es llamada redundancia' para reducir la
integridad de la informacin; cuando se duplica informacin es muy pro!a!le de
*ue los detalles no coincidan o *ue no todos sean actualizados. >esultando la
perdida de integridad en los datos' pudiendo ser corregido mejorando los
procedimientos.
.e puede e,itar del todo disminuyendo la redundancia de datos en los archi,os.
). *r$fica de estructura
5uestra con sm!olos la relacin entre los mdulos de procesamiento y el
software de la computadora. %escri!en la jerar*ua de los mdulos componentes y
los datos *ue sern transmitidos entre ellos. #ncluye el anlisis de las
transformaciones entrada8salida y el anlisis de transaccin.
as flechas con una circunferencia indican datos' mientras *ue las *ue tienen un
circulo representa informacin de control de programa' tales como notas o
condiciones de error.
'iagrama de conte3to
.e pueden usar diagramas de flujos de datos para representar el sistema a
cual*uier ni,el de a!straccin. El diagrama de flujo de dato de ni,el 0 se llama
diagrama de conte)to y en l el sistema esta representado por un solo proceso'
*ue identifica cual es la funcin principal del sistema' mostrando adems' los flujos
de informacin *ue lo relacionan con otros sistemas" las entidades e)ternas. El
diagrama de conte)to tiene una gran importancia puesto *ue resume el re*uisito
principal del sistema de reci!ir ciertas entradas' procesarlas de acuerdo con
determinada funcin y generar ciertas salidas. 6 partir del diagrama de conte)to se
puede ir construyendo nue,os diagramas *ue ,ayan definiendo con mayor ni,el de
detalle lo flujos de datos y procesos de transformacin *ue ocurren en el sistema'
de forma *ue al final o!tenemos una jerar*ua de diagramas.
"#todo del desarrollo por prototipos
os sistemas pueden desarrollarse con mtodos y lenguajes de programacin
con,encionales' aun*ue no tengan todas las caractersticas y to*ues finales de un
sistema terminado. 3uizs los informes no tengan enca!ezados' logos' etc.' falten
controles de entradas y procesamiento. o importante es el ensayo' y hallar los
re*uerimientos.
os generadores de aplicaciones' son programas *ue sir,en para hacer otros
programas' son un apoyo en la construccin de prototipos' permitiendo definir la
estructura ,isual de las pantallas' los registros de entrada y el formato de los
informes.
En algunos casos donde el sistema no ser utilizado frecuentemente' puede
con,ertirse el prototipo en el sistema terminado' o !ien' cuando no son muchos los
!eneficios *ue se o!tienen.
-a:ones para desarrollar prototipos de sistemas
os re*uerimientos de informacin no siempre estn !ien definidos' pueden ser
demasiados ,agos a4n al formular el dise&o. En otros casos' es pro!a!le *ue una
in,estigacin de sistemas !ien lle,ada' de como resultado un conjunto muy amplio
de re*uerimientos de sistemas' pero construir un sistema *ue satisfaga a todos
ellos *uizs necesite del desarrollo de nue,a tecnologa.
os prototipos permiten e,aluar situaciones e)traordinarias donde los encargados
de dise&ar e implantar sistemas no tienen informacin ni e)periencia' o tam!in
donde e)isten situaciones de riesgo y costos ele,ados' y a*uellas donde el dise&o
propuesto es no,edoso y a4n no ha sido pro!ada.
a informacin o!tenida con su uso se aplica en un nue,o dise&o *ue se emplea'
otra ,ez' como prototipo y *ue re,ela ms informacin ,aliosa so!re dise&o. El
proceso se repite las ,eces *ue sea necesario para re,elar los re*uerimientos
esenciales del dise&o.
"a7uetas
1uando se comienza el desarrollo' tiene por o!jeti,o presentar a los usuarios yHo
clientes la apariencia del sistema final. os usuarios pueden manifestar su opinin.
6m!os mtodos son muy 4tiles para esta!lecer la ,ia!ilidad del proyecto y definir
acuerdos so!re los o!jeti,os y resultados esperados.
1+. tapas del m#todo de prototipos
1- Identificacin de requerimientos conocido.
2-
a determinacin de los re*uerimientos de una aplicacin es tan importante para
el mtodo de desarrollo de prototipo como lo es para los mtodos del ciclo clsico
de desarrollo de sistemas o anlisis estructurado ;aun*ue las tcticas son
diferentes<. (or consiguiente' antes de crear el prototipo' los analistas y usuarios
de!en tra!ajar juntos para identificar los re*uerimientos conocidos *ue tiene *ue
satisfacerse. (ara hacerlo determinan los fines para lo *ue ser,ir el sistema y el
alcance de sus capacidades.
2- Desarrollo de un modelo de trabajo
Es 4til comenzar el proceso de construccin del prototipo con el desarrollo de un
plan general *ue permita a las personas conocer lo *ue se espera de ellas y del
proceso de desarrollo. Es difcil' y en ocasiones imposi!les' fijar una fecha
tentati,a de terminacin. a e)periencia con el sistema es la *ue determina
e,entualmente cuando en sistema esta terminado.
(ara comenzar la primera iteracin' usuarios y analistas identifican de manera
conjunta los datos *ue son necesarios para el sistema y especifican la salida *ue
de!e producir la aplicacin.
as decisiones de dise&o necesarias para desarrollar la salida del sistema
cam!ian muy poco en relacin con las tomadas en otros mtodos de desarrollo.
.in em!argo' con un prototipo' se espera *ue las especificaciones iniciales estn
incompletas.
En el desarrollo de un prototipo se preparan los siguientes componentes"
DEl lenguaje para el dilogo o con,ersacin entre el usuario y el sistema
D(antallas y formato para la entrada de datos
Dmdulos esenciales de procesamiento
D.alida del sistema
6l construir el prototipo se de!en seguir los estndares para datos *ue emplea la
organizacin.
En esta etapa es ms importante la rapidez con *ue se construye el prototipo *ue
la eficiencia de operacin. Es por esto *ue el analista no intenta optimizar la
,elocidad de operacin del sistema
%urante la e,aluacin los analistas de sistemas desean capturar
3) El prototipo y el usuario
Es responsa!ilidad del usuario tra!ajar con prototipo y e,aluar su caracterstica y
operacin. a e)periencia con el sistema !ajo condiciones permite o!tener la
familiaridad indispensa!le para determinar los cam!ios o mejoras *ue sean
necesarios as como la eliminacin de caractersticas inadecuadas o innecesarias.
4) e!isin del prototipo
informacin so!re los *ue les gusta y los *ue les desagrada a los usuarios. a
informacin o!tenida tendr influencia so!re las caractersticas de la siguiente
,ersin de la aplicacin.
os cam!ios al prototipo son planificados con los usuarios antes de lle,arlos a
ca!o. El analista es el responsa!le de realizar las modificaciones.
F< >epeticin del proceso las ,eces *ue sea necesario.
El proceso finaliza cuando los usuarios y analistas estn de acuerdo en *ue el
sistema ha e,olucionado lo suficiente como para incluir todas las caractersticas
necesarias o cuando ya es e,idente *ue no se o!tendr mayor !eneficio.
6< El a!andono o dejarlo como esta"
1uando se ,erifica de *ue no es posi!le desarrollar el sistema para satisfacer los
o!jeti,os deseados' ya sea por la tecnologa e)istente o por el factor economico.
11. Coordinacin , *estin del pro,ecto.
a gestin del proyecto presupone esta!lecer condiciones para el desarrollo del
mismo. #n,olucra acti,idades de" planificacin' estimacin de recursos'
seguimiento y control y e,aluacin del proyecto.
a planificacin de proyectos se define como la prediccin de la duracin de
las acti,idades y tareas a ni,el indi,idual.
a estimacin se define como la prediccin de personal' esfuerzo y costo
*ue se re*uerir para terminar todas las acti,idades y productos conocidos
asociados con el proyecto. El tama&o del producto a desarrollar es una de
las primeras tareas en la gestin del proyecto. El tama&o se define como la
cantidad de cdigo fuente' especificaciones' casos de prue!a'
documentacin del usuario y otros productos tangi!les *ue son salida del
proyecto' ste se !asa principalmente en la e)periencia de proyecto
anteriores.
El seguimiento de proyectos es la recoleccin de datos y su acumulacin
so!re recursos consumidos' costos generados asociados con un proyecto.
a medicin en los proyectos de desarrollo de software es una acti,idad
fundamental para la mejora de la producti,idad' el costo y la calidad del
producto final.
"roceso de Iniciacin del "royecto.
6!arca a*uellas acti,idades de creacin de la estructura del proyecto. %urante
este ciclo se define el ciclo de ,ida del software para este proyecto y se esta!lecen
en los planes para su gestin. .e estiman y asignan los recursos necesarios a fin
de ejecutar las distintas tareas *ue demanda el proyecto. .e identifican y
seleccionan estndares' metodologas y herramientas para la gestin y ejecucin
del mismo y' por 4ltimo' se prepara y esta!lece un plan para su implementacin
adecuada y oportuna. El plan de =estin del (royecto .oftware *ue conducir el
desarrollo se produce como culminacin de este proceso.
12. "ediciones , estimaciones
El software al ser intangi!le' no tener peso' ni ,olumen' ni superficie' etc. se mide
a tra,s de di,ersos aspectos cla,e en el desarrollo. a medicin determina cuales
son los aspectos y proporcionan mtodos para medirlos.
a medicin y estimacin atacan los tres pro!lemas cla,es de la ingeniera del
software"
7. Estimar costos y recursos en un proyecto software
9. =arantizar la calidad del producto final
:. 5ejorar la producti,idad del ingeniero de software durante el desarrollo.
+eniendo en cuenta estos o!jeti,os' las mtricas se centran en cuatro aspectos"
(ara estimar los recursos es necesario tener en cuenta una serie de factores de
riesgo *ue influyen sustancialmente en la precisin de las estimaciones de los
recursos humanos necesarios para la realizacin del proyecto. os mas
importantes son"
D1omplejidad de la tarea.
D5odificaciones permitidas a lo largo del desarrollo
DE)periencia pre,ia de los desarrolladores
D%uracin fijada del proyecto.
DEstructuracin del pro!lema y de las tareas.
D%isponi!ilidad de datos e informacin suministrada por el usuario.
D%isponi!ilidad y facilidad de comunicacin con el usuario.
6dems de las fases estndar del desarrollo' hay *ue tener en cuenta la
coordinacin y seguimiento del proyecto *ue suponen una importante carga de
tra!ajo y *ue son ol,idadas durante la planificacin o no se le dedica mucho.
El costo glo!al se compone de las partidas de ,iajes' hardware ;nue,o o
actualizacin<' software ;en caso de comprar alg4n pa*uete para el desarrollo<'
gastos comunes' y personal *ue es el mas influyente' ya *ue el costo de un
proyecto es directamente proporcional a los recursos humanos.
El proceso englo!a todas las acti,idades y fases *ue se lle,an a ca!o durante la
realizacin del proyecto. .e persigue determinar si en cada fase los resultados
producidos se corresponden con los esperados y en esta!lecer un control so!re
los recursos estimados para cada una de las fases.
El producto incluye cual*uier documento o software desarrollado *ue se genere
durante el proceso completo. En las medidas de productos software e)isten
medidas directas ;costo del proyecto' esfuerzo empleado' lneas de cdigo
implementadas' etc.< y medidas indirectas
; funcionalidad' fia!ilidad' eficiencia' facilidad de mantenimiento' etc.<.
Eerramientas para el desarrollo de sistemas
as herramientas son cual*uier dispositi,o *ue' emplendose adecuadamente'
mejora el desempe&o del desarrollo de sistemas de informacin.
.e agrupan en las tres siguientes herramientas automatizadas"
Eerramientas de tipo -ront8end
6utomatizan las primeras acti,idades del proceso de desarrollo de sistemas.
Esta herramienta proporciona soporte para el desarrollo de modelos grficos de
sistemas y procesos
os diagramas de flujo son representati,os de este tipo de herramientas.
#erramientas para an$lisis
@stas herramientas ayudan a los especialistas en sistemas a documentar un
sistema e)istente' ya sea manual o automatizado. +am!in sir,e para determinar
los re*uerimientos de una nue,a aplicacin. #ncluye"
8 Eerramientas para recoleccin de datos" capturan detalles *ue descri!en
sistemas y procedimientos en uso. %ocumentan procesos y acti,idades de
decisin' se utilizan para apoyar la tarea de identificar re*uerimientos.
8 Eerramientas para diagramacin" crean representaciones grficas de sistemas y
acti,idades. 6poyan el di!ujo y re,isin de diagramas de flujos de datos e iconos
asociados con el anlisis estructurado. #ncluyen programas para representacin en
diagramas de flujo.
8 Eerramientas para el diccionario" registran y mantienen descripciones de los
elementos del sistema' como grupo de datos' procesos' alimentos de datos' etc.
-recuentemente proporcionan la capacidad de e)aminar las descripciones del
sistema' para decidir si son incompletas o inconsistentes.
#erramientas para dise%o
6poyan el proceso de formular las caractersticas *ue el sistema de!e tener para
satisfacer los re*uerimientos deseados durante las acti,idades de anlisis.
#ncluye"
6 ;erramienta de especificacin0 apoyan el proceso de formular las
caractersticas' como por ejemplo de!en tener una aplicacin como entradas'
salidas' procesamientos especficos de control.
6 ;erramienta para presentacin0 se utilizan para descri!ir la posicin de datos'
mensajes' y enca!ezados so!re las pantallas de las terminales' informes y otros
medios de entradas y salidas.
os analistas utilizan las herramientas para el dise&o de sistemas desde el inicio
de la era de las computadoras. 6hora a las herramientas se le estn dando un
nue,o significado en el dise&o de software.
#erramientas de tipo bac&-end
.u finalidad es ayudar al analista a formular la lgica del programa' los algoritmos
de procesamiento y la descripcin fsica de datos.
+am!in ayudan a la interseccin con los dispositi,os ;para entrada y salida<.
Estas acti,idades con,ierten los dise&os lgicos del software en un cdigo de
programacin; este es *ue da e)istencia a la aplicacin.
#erramientas para el desarrollo
6yudan al analista a trasladar los dise&os en aplicaciones funcionales. #ncluye"
8 Eerramientas para ingeniera .oftware" apoyan el proceso de formular dise&os
de software' incluyendo procesamientos y controles.
8 =eneradores de cdigos" producen el cdigo fuente y las aplicaciones a partir de
especificaciones funcionales !ien articuladas
8 Eerramientas para prue!as" apoyan la fase e,aluacin de un sistema. #ncluyen
facilidades para e)aminar la correcta operacin del sistema.
#erramientas inte'rales
(roporcionan un am!iente *ue automatiza tareas cla,es a lo largo del proceso de
desarrollo. Estas herramientas facilitan el dise&o' administracin y mantenimiento
del cdigo. $rinda un am!iente eficiente para crear' almacenar' manipular y
documentar sistemas.
13. -eingeniera e ingeniera inversa
os conceptos de reingeniera e ingeniera in,ersa estn ligados al desarrollo de
software a gran escala' donde una mejora en proceso de este desarrollo supone
un aumento en la competiti,idad de la empresa.
6un*ue hay *ue tener en cuenta *ue esta mejora es' en general a largo plazo
;normalmente de uno a dos a&os< am!as acti,idades' estn orientadas a
automatizar el mantenimiento de aplicaciones. Esta es una tarea *ue consume
gran cantidad de recursos' por lo *ue cual*uier reduccin en el tiempo y recursos
empleados en ella supone una importante mejora en la producti,idad del proceso.
Este es el principal o!jeti,o de la reingeniera. .e trata' de analizar el cdigo o el
dise&o actual y modificarlo con la ayuda de herramientas automticas para
traducirlos a cdigos mas estructurados' y ms eficientes.
%entro de la reingeniera' el proceso de pasar del cdigo a una descripcin de
mas alto ni,el es lo *ue se denomina"
In'enier(a in!ersa.
a reingeniera e ingeniera in,ersa prolongan la ,ida del software.
%ado *ue es una la!or estratgica' es con,eniente conocer cuando con,iene
realizar la tarea de reingeniera para una aplicacin y cundo es ms renta!le
sustituirla e implementar una nue,a. as aplicaciones para el primer paso' son
a*uellas en la *ue se produce las siguientes situaciones"
-allos frecuentes' *ue son difciles de localizar
.on poco eficientes' pero realizan la funcin esperada
%ificultades en la integracin con otros sistemas
1alidad po!re del software final
>esistencia a introducir cam!ios
(ocas personas capacitadas para realizar modificaciones
%ificultades para realizar prue!as
El mantenimiento consume muchos recursos
Es necesario incluir nue,os re*uisitos' pero los !sicos se mantienen.
Desarrollo de soft)are con y para reuso
El desarrollo de software con re4so consiste en desarrollar una aplicacin usando
software ya e)istente. 1ual*uier profesional lo utiliza
El desarrollo de software para reuso consiste en la construccin de un sistema con
la intencin de reutilizar partes de l en futuros desarrollos. 1on software a gran
escala' un !uen profesional con e)periencia puede desarrollarlo.
Estudios realizados determinan *ue la prctica de reutilizacin del software en un
proyecto aumenta la producti,idad durante el desarrollo de dicho proyecto.
.in em!argo' la reutilizacin del software no cu!re solo el reuso de cdigos'
a!arca todo un amplio de posi!ilidades en los diferentes ni,eles' metodologa'
ciclos de ,ida' planes del proyecto' especificaciones de re*uisitos' dise&os'
ar*uitectura software' planes de ,alidacin' juegos de prue!a y documentacin.

Vous aimerez peut-être aussi