Analisis de sistemas (Abigail y Meudis Silva)
-
Upload
abigail-silva -
Category
Documents
-
view
212 -
download
0
description
Transcript of Analisis de sistemas (Abigail y Meudis Silva)
Instituto Universitario de Tecnología de Administración Industrial
Región Capital-Ampliación Guarenas
Carrera: Informática Sección: 203ª3
Cátedra: Arquitectura del Computador
Profesora: Integrantes:
Naydrubys Trejo Meudis Silva C.I. 22.380.101
Abigail Silva C.I. 25.235.665
Guarenas, 18 de febrero de 2014
Nuevas Tendencias en el Análisis de Sistema
Actualmente el paradigma orientado a objetos está siendo en los últimos años
objeto de estudio de muchos equipos de investigación. Con el propósito de
desarrollar Sistemas de Información más cercanos al entorno real como alternativa
fiable a las técnicas tradicionales, el modelo orientado a objetos se ha convertido
en un método de análisis, diseño e implementación que cada vez está cobrando
más importancia en lo que respecta a la Ingeniería del Software, Lenguajes de
Programación, Bases de Datos y Lenguajes de Especificación. Las ventajas que
aporta este modelo impulsan a informatizar los Sistemas siguiendo esta nueva
metodología, todavía en fase de crecimiento.
El proceso es el siguiente:
La fase de Análisis: consiste en estudiar el problema planteado para obtener
una idea clara y concisa sobre los datos de entrada, incluyendo la forma en que
estos datos iniciales son obtenidos, así como la información que se desea
obtener como resultado de que manera debe presentarse.
Fase de Diseño: una vez analizado el problema, se precisa diseñar un algoritmo
que indique claramente los pasos a seguir para resolverlo. Es decir, es escribir
un pseudocódigo de las instrucciones a seguir para llevar a cabo los
requerimientos solicitados por el Sistema.
La última fase es la Codificación o Implementación: para que el algoritmo
diseñado en la fase anterior pueda ser introducido en el ordenador, debe ser
escrito (codificado) en un lenguaje de programación, siguiendo las reglas de
sintaxis del lenguaje escogido.
En definitiva, se va siguiendo un proceso lineal desde que se plantea el
problema hasta que se automatiza en una máquina.
La Ingeniería del Software ha evolucionado rápidamente en las últimas décadas.
Este avance ha supuesto una auténtica revolución en el mundo del software, ya que
se ha pasado de la programación manual al desarrollo sistemático de programas.
A continuación se presentan los principales métodos que han marcado las diversas
facetas del desarrollo de la programación fundamentalmente relacionadas con el
diseño y la programación.
La Programación Estructurada: Hasta entonces los programadores se
habían preocupado por la eficiencia de los programas en términos de
velocidad y la memoria que de su legibilidad o mantenimiento, debido a la
baja calidad del hardware, pero a medida que este fue mejorando y los
programas aumentaban en complejidad, se empezó a ver la importancia del
mantenimiento del software y así este estilo de programación que dio lugar
a la metodología estructurada.
La programación extrema: como la adopción de las mejores metodologías
de desarrollo de acuerdo a lo que se pretende llevar a cabo con el proyecto,
y aplicarlo de manera dinámica durante el ciclo de vida del software.
Las Metodologías de Diseño: Surgen a mediados de los 70, debido a que
compañías de desarrollo de software se dieron cuenta que eran poco eficaces
y se necesitaba de una especificación y un diseño del sistema previo a su
implementación.
Las Metodologías de Análisis: Fuertemente relacionadas con las ideas de
la Programación Estructurada y las Metodologías de Diseño Estructurado,
surgen a finales de los 70.
La Automatización de los Métodos de la Ingeniería del Software: Dado que las
actividades de desarrollo de software muchas veces consisten en procesos
repetitivos, la Ingeniería del Software siempre ha sido una buena candidata al
realizar la automatización. Es por ello que surge a principios de los 80. Inicialmente
en llevar a una máquina las herramientas gráficas asociadas a determinadas
metodologías de análisis o diseño. Posteriormente se han ido perfeccionando,
dando lugar a completas herramientas CASE (Computer-Aided Software
Engineering).
La Introducción de la Programación Orientada a Objetos
Surge a mediados de los 80 y continúa siendo la tendencia de los 90. Su influencia
se compara a la de la programación estructurada de los años 70.
En cuanto a las perspectivas de futuro podemos señalar 4 puntos principales:
1. La programación orientada a objetos que acabamos de mencionar.
2. El refinamiento de requerimientos y prototipos rápidos que ayuda
enormemente a identificar correctamente los requisitos de los sistemas.
3. Los avances en la tecnología CASE.
4. La reusabilidad como solución alternativa al desarrollo constante, es decir,
poder disponer de librerías de componentes software fácilmente
ensamblables puede ahorrar mucho trabajo a los equipos de desarrollo.
El caso de uso que es una descripción de los pasos o las actividades que
deberán realizarse para llevar a cabo algún proceso. Y los personajes o entidades
que participarán en un caso de uso se denominan actores. En el contexto
de ingeniería del software, un caso de uso es una secuencia de interacciones que
se desarrollarán entre un sistema y sus actores en respuesta a un evento que inicia
un actor principal sobre el propio sistema. Los diagramas de casos de uso sirven
para especificar la comunicación y el comportamiento de un sistema mediante su
interacción con los usuarios y/u otros sistemas.
O lo que es igual, un diagrama que muestra la relación entre los actores y los
casos de uso en un sistema. Una relación es una conexión entre los elementos del
modelo, por ejemplo la especialización y la generalización son relaciones.
Los diagramas de casos de uso se utilizan para ilustrar los requerimientos del
sistema al mostrar cómo reacciona a eventos que se producen en su ámbito o en
él mismo.
Los más comunes para la captura de requisitos funcionales, especialmente con el
desarrollo del paradigma de la programación orientada a objetos, donde se
originaron, si bien puede utilizarse con resultados igualmente satisfactorios con
otros paradigmas de programación.
El desarrollo Orientado a Objetos está jugando un papel cada vez más importante
en el diseño e implementación de Sistemas Software hasta el punto de que su
influencia está siendo comparada a la de la programación estructurada en los años
70. Se considera como pionero de la aproximación Orientada a Objetos el lenguaje
Smalltalk. Lo que en sus inicios fue tan solo un lenguaje de programación dio lugar
posteriormente a toda una corriente en el mundo del desarrollo del Software, a
cuyo amparo se han desarrollado metodologías de diseño de lenguajes de
programación.
El Diseño Orientado a Objetos es una aproximación diferente a las tradicionales
metodologías estructuradas. Estas se basan en la descomposición de un sistema
en módulos atendiendo a consideraciones sedimentables y/o de datos.
La idea básica, es definir nuevos elementos Software (es decir, nuevos Objetos) a
partir de otros ya existentes, refinando la definición de estos a base de añadir y/o
redefinir nuevos atributos o métodos, con la ventaja de heredar características de
la Clase madre, cabe la posibilidad de adaptarse a los cambios del sistema, refinar
los objetivos si así lo requiere la organización y mejorar constantemente el diseño
durante la implementación.
Tres son las líneas en las que ese desarrollo se ha llevado a cabo:
1. Creación de lenguajes Orientados a objetos: Es la aproximación más
pura, y consiste en diseñar nuevos lenguajes que recojan toda la
terminología y características de la aproximación Orientada a Objetos.
Ejemplos de este tipo de lenguajes son Smalltalk y Eiffel.
2. Desarrollo de extensiones Orientadas a Objetos de lenguajes
clásicos: Consiste en el enriquecimiento de lenguajes ya existentes con
nuevas estructuras que den cabida al paradigma objetual. Destacan C++
como la extensión más aceptada del lenguaje C, y algunas de las
extensiones del lenguaje LISP, como CLOS.
3. Uso de lenguajes no orientados a Objetos: existen autores que
defienden el uso de las capacidades en cuanto a modularidad,
abstracción, etc., para realizar implementaciones de sistemas diseñados
con la metodología orientada a objetos.
Desarrollo de un Prototipo
Cuando haya que decidir si hay que incluir la elaboración de prototipos como parte
del ciclo de vida de desarrollo de sistemas, el analista necesita considerar cuál tipo
de problema está siendo resuelto y en qué forma el sistema presenta la solución.
Lineamientos para el Desarrollo de un Prototipo:
1. Trabajar en Módulos Manejables: Es bueno que el analista en modelos
manejables cuando se realiza el prototipo de algunas de las características
de un sistema para obtener un modelo funcional.
Un modelo manejable es aquel que permite la interacción con sus características
principales, pero todavía puede ser construido por separado de otros módulos del
sistema. Las características del módulo que se consideran menos importantes son
intencionalmente dejadas fuera del prototipo inicial.
2. Construcción Rápido del Prototipo: La velocidad es esencial para la
elaboración satisfactoria de un prototipo en un sistema. El prototipo ayuda
a acortar el tiempo de la interacción del sistema con el usuario para que
pueda empezar a experimentar con él.
Se usan técnicas de recolección de información tradicional tales como: entrevistas,
las observaciones e investigaciones de datos de archivo.
La elaboración de un prototipo debe llevarse a cabo en una semana, para construir
un prototipo tan rápidamente se deben de usar herramientas especiales tales como:
Los sistemas de administración de las base de datos y software, existente que
permitan la entrada y salida generalizada.
En esta etapa del ciclo de vida el analista sigue recopilando información acerca de
lo que se necesita y quieren los usuarios del sistema.
El poner un prototipo operacional rápidamente junto a las primeras etapas del ciclo
de vida de desarrollo de sistemas, permite obtener observaciones valiosas sobre la
manera en que se debe realizar el resto del proyecto. De este modo se le va
mostrando al usuario como actúan las partes del sistema.
3. Modificaciones del Prototipo: Un tercer lineamiento para el desarrollo del
prototipo es que debe ser flexible para futura modificaciones. Esto significa
crearlo en módulos que no sean muy interdependientes.
Por lo general el prototipo es modificado varias veces pasando a través de varias
interacciones. Los cambios al prototipo deben mover al sistema más cerca a lo que
los usuarios dicen que es importante.
Cada modificación necesita otras evaluaciones de los usuarios, estas
modificaciones se deben realizar velozmente en uno o dos días, esto depende
también del usuario y que tan rápido sea su evaluación.
4. Enfatizar la Interfaz de Usuarios: La interfaz del usuario con el prototipo
(y eventualmente con el sistema) es muy importante debido que lo que se
está tratando realmente de lograr con el prototipo es hacer que los usuarios
muestren cada vez más sus requerimientos de información, debe ser capaz
de interactuar fácilmente con el prototipo del sistema.
Objetivo del analista: Diseñar una interfaz que permita al usuario interactuar con
el sistema con un mínimo de entrenamiento y que permita el máximo de control del
usuario sobre las funciones representadas.
Desventajas de los prototipos
1. Puede ser bastante difícil el manejar el prototipo como un proyecto dentro
de un esfuerzo para un sistema más grande.
2. Es que si un sistema es muy necesario y es bienvenido rápidamente, puede
ser aceptado el prototipo en sus estado sin terminar y presionando para que
sea puesto en servicio sin los refinamientos necesarios. En este caso el
prototipo no tendrá las funciones necesarias y eventualmente cuando se dé
cuenta de las deficiencias se puede desarrollar un rechazo del usuario.
Ventajas de los prototipos
1. Cambio de un Sistema en Etapas Tempranas de sus Desarrollo: La
elaboración de prototipos satisfactoria depende de la retroalimentación
temprana y frecuente de los usuarios para que ayuden a modificar el sistema
y hagan que tenga una respuesta más ágil a las necesidades actuales. Los
cambios tempranos son menos caros que los cambios hechos
posteriormente en el desarrollo del proyecto.
2. Desechado de Sistemas Indeseables: Una segunda ventaja del uso de
prototipos como una técnica para la recopilación de información es la
posibilidad de desechar un sistema que no es lo que los usuarios y analistas
esperaban.
3. Diseño de un Sistema para las Necesidades y Expectativas de los
Usuarios: Una tercera ventaja de la elaboración de prototipos es que el
sistema que está siendo desarrollado debe ajustarse mejor a las
necesidades y expectativas de los usuarios. Esto quiere decir que se
pueden atacar las necesidades de usuarios y expectativas más de cerca.
Desventajas de la elaboración de
Prototipos
Ventajas de la elaboración de
prototipos
· Es difícil manejar la elaboración de
prototipos como un proyecto dentro de
un esfuerzo de sistemas más grande.
· Existe el potencial para hacer cambios
en el sistema en las primeras etapas de
su desarrollo.
· Los usuarios y analista pueden
adoptar a un prototipo como un sistema
terminado cuando es inadecuado.
· Existen oportunidades para detener el
desarrollo de un sistema que no es
funcional.
· Puede atacar necesidades de usuario
y expectativas más cercanas.
Papel del usuario en los prototipos:
Hay tres formas principales en que un usuario puede ser de ayuda en la elaboración
del Prototipo.
1. Experimentando con el Prototipo.
2. Reaccionar abiertamente ante el Prototipo.
3. Sugiriendo adiciones y/o eliminaciones del prototipo.
Experimentando con el Prototipo: Los usuarios deben tener libertad para
experimentar con el prototipo, y no una simple lista de características del sistema,
el prototipo permite a los usuarios la realidad de la interacción real.
Los analista deben estar presente la mayor parte del tiempo en que se esté
experimentando con el prototipo.
Reaccionar Abiertamente ante el Prototipo: Si los usuarios se siente temerosos de
hacer comentarios, o criticar lo que puede ser un proyecto consentido de superiores
o iguales dentro de la organización, es poco probable que se de reacciones abiertas
ante el prototipo. Una forma para aislarlos de influencias organizacionales no
deseada es proporcionar un periodo privado, para que los usuarios interactúen con
y respondan al prototipo.
El hacer que los usuarios se sienta lo suficientemente seguros para dar una
reacción abierta es parte de la realización entre los analista y usuarios que el equipo
tiene que construir.
Sugerencias de Cambios al Prototipo: Un tercer aspecto del papel de los usuarios
en la elaboración de los prototipos es sugerir adiciones y/o eliminaciones a las
características que se están probando. El papel del analista es deducir tales
sugerencias, asegurando a los usuarios que tal retroalimentación que proporciona
es tomada en serio, observando a los usuarios mientras interactúan y realizando
entrevistas cortas y específicas en relación con su experiencia con el prototipo.
Conclusión
El análisis de modelos complejos tiene unas aplicaciones claras. Es posible y
aconsejable la utilización de estos sistemas si se sabe aprovechar la
interacción de los agentes y si hay una capacidad real de adaptación a estos
sistemas.
Los estudios electrónicos permiten saber la respuesta del agente
comprador respecto a nuestros comportamientos y sus cambios
(cambios de precio, de producto, etc.) Los estudios electrónicos, en
función de los resultados que nos ofrecen, nos ayudan a tomar
decisiones en función de la tendencia de ventas y de la oferta que
productos (escasez o abundancia excesiva) en el mercado.
Hay otros procedimientos más sofisticados que el hecho de estudiar el
comportamiento del mercado y el nuestro propio. Para ello, la
inteligencia artificial nos ayuda a crear esquemas de comportamiento
lógico, simulando el comportamiento de nuestro sistema nervioso. Hoy
en día, muchos cálculos de gestión de stocks se realizan utilizando
ordenadores que funcionan imitando un sistema nervioso. Esto es
ciencia actual concreta y no ciencia ficción.
Es posible la simulación del comportamiento de los
agentes para desarrollarlo cara al futuro, a pesar de la dificultad de
poder definir el comportamiento del consumidor. Simulaciones
estadísticas permiten definir los cambios futuros de un sector.
Referencias
http://es.wikipedia.org/wiki/An%C3%A1lisis_de_sistemas
http://www.elprofesionaldelainformacion.com/contenidos/1999/noviembre/eval
uacion_de_sistemas_de_recuperacion_de_informacion_aproximaciones_y_n
uevas_tendencias.html
http://www.anmape.es/ponencia58-nuevas-tendencias-en-mercados-
electronicos-desarrollos-derivados-del-analisis-de-sistemas-complejos-
socialmente-inteligentes_ficha-de-asociacion_2-mercacongreso-
18823019372592049.htm
http://sistemasdeinformacion2.wikispaces.com/LENGUAJE+UNIFICADO+DE
+MODELADO%C2%A0%C2%A0(UML)