Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Indice
1. Introduccin
2. Definicin de herramientas case
3. Historia
4. Qu es la tecnologa case?
5. Componentes de una herramienta case
6. Estructura general de una herramienta case
7. Estado actual
8. Integracin de las herramientas case en el futuro
9. Clasificacin de las herramientas case
10. Caractersticas deseables de una herramienta case
11. Implantacin de las herramientas case
12. Conclusin
13. Bibliografa
1. Introduccin
Hoy en da, muchas empresas se han extendido a la adquisicin de herramientas CASE
(Ingeniera Asistida por Computadora), con el fin de automatizar los aspectos clave de todo el
proceso de desarrollo de un sistema, desde el principio hasta el final e incrementar su posicin
en el mercado competitivo, pero obteniendo algunas veces elevados costos en la adquisicin
de la herramienta y costos de entrenamiento de personal as como la falta de adaptacin de la
herramienta a la arquitectura de la informacin y a las metodologas de desarrollo utilizadas por
la organizacin. Por otra parte, algunas herramientas CASE no ofrecen o evalan soluciones
potenciales para los problemas relacionados con sistemas o virtualmente no llevan a cabo
ningn anlisis de los requerimientos de la aplicacin.
Sin embargo, CASE proporciona un conjunto de herramientas semiautomatizadas y
automatizadas que estn desarrollando una cultura de ingeniera nueva para muchas
empresas. Uno de los objetivos ms importante del CASE (a largo plazo) es conseguir la
generacin automtica de programas desde una especificacin a nivel de diseo.
Ahora bien, con la aparicin de las redes de ordenadores en empresas y universidades ha
surgido en el mundo de la informtica la tecnologa cliente / servidor. Son muchas de las
organizaciones que ya cuentan con un nmero considerable de aplicaciones cliente / servidor
en operacin: Servidores de Bases de Datos y Manejadores de Objetos Distribuidos. Cliente /
servidor es una tecnologa de bajo costo que proporciona recursos compartidos, escalabilidad,
integridad, encapsulamiento de servicios, etc. Pero al igual que toda tecnologa, el desarrollo
de aplicaciones cliente / servidor requiere que la persona tenga conocimientos, experiencia y
habilidades en procesamiento de transacciones, diseo de base de datos, redes de
ordenadores y diseo grfica de interfase.
El objeto de estudio est centrado en determinar cules son las influencias de las
herramientas CASE en las empresas desarrolladoras de sistemas de informacin cliente /
servidor? Y cules son las tendencias actuales de las empresas fabricantes de sistemas
cliente
/
servidor?.
A continuacin, en el siguiente artculo ahondaremos ms en el propsito general de las
Herramientas CASE y el impacto que puede ocasionar el uso de las mismas en una empresa.
2. Herramientas Case
De acuerdo con Kendall y Kendall la ingeniera de sistemas asistida por ordenador es la
aplicacin de tecnologa informtica a las actividades, las tcnicas y las metodologas propias
de desarrollo, su objetivo es acelerar el proceso para el que han sido diseadas, en el caso de
CASE para automatizar o apoyar una o mas fases del ciclo de vida del desarrollo de sistemas.
Cuando se hace la planificacin de la base de datos, la primera etapa del ciclo de vida de las
aplicaciones de bases de datos, tambin se puede escoger una herramienta CASE (ComputerAided Software Engineering) que permita llevar a cabo el resto de tareas del modo ms
eficiente y efectivo posible. Una herramienta CASE suele incluir:
Automatizar:
CASE de alto nivel son aquellas herramientas que automatizan o apoyan las fases
finales o superiores del ciclo de vida del desarrollo de sistemas como la planificacin de
sistemas, el anlisis de sistemas y el diseo de sistemas.
CASE de bajo nivel son aquellas herramientas que automatizan o apoyan las fases
finales o inferiores del ciclo de vida como el diseo detallado de sistemas, la implantacin de
sistemas y el soporte de sistemas.
CASE cruzado de ciclo de vida se aplica a aquellas herramientas que apoyan
actividades que tienen lugar a lo largo de todo el ciclo de vida, se incluyen actividades como la
gestin de proyectos y la estimacin.
7. Estado Actual
En las ltimas dcadas se ha trabajado en el rea de desarrollo de sistemas para encontrar
tcnicas que permitan incrementar la productividad y el control de calidad en cualquier proceso
de elaboracin de software, y hoy en da la tecnologa CASE (Computer Aided Software
Engineering) reemplaza al papel y al lpiz por el ordenador para transformar la actividad de
desarrollar software en un proceso automatizado.
La tecnologa CASE supone la informatizacin de la informticaes decir la automatizacin
del desarrollo del software--, contribuyendo as a elevar la productividad y la calidad de en el
desarrollo de los sistemas de informacin de forma anloga a lo que suponen las tcnicas
CAD/CAM
en
el
rea
de
fabricacin.
En este nuevo enfoque que persigue mejorar la calidad del software e incrementar la
productividad en el proceso de desarrollo del mismo, se plantean los siguientes objetivos:
Permitir la aplicacin prctica de metodologas, lo que resulta muy difcil sin emplear
herramientas.
Facilitar la realizacin de prototipos y el desarrollo conjunto de aplicaciones.
Simplificar el mantenimiento del software.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Resumen
Introduccin
La Ingeniera de Software
La complejidad del Software
Principios de Modelado
El Lenguaje de Modelado Unificado UML
El proceso Unificado de Modelado (RUP)
Diagramas de UML
Conclusiones
Bibliografa
Resumen.
El presente artculo describe la evolucin de las notaciones que dieron lugar a UML (Lenguaje
de Modelado Unificado), detalla ampliamente sobre el surgimiento de la Ingeniera del
Software, expone los principios de modelado en que se fundamenta la notacin de UML,
asimismo muestra y explica como el UML adopta el RUP(Proceso Unificado de Desarrollo) para
modelar las actividades de un proyecto. Finalmente se propone la organizacin de los
diagramas a utilizar en las diferentes etapas del desarrollo de los sistemas de informacin.
1. Introduccin.
A lo largo de los aos, el desarrollo de los proyectos de software causan bastantes confusiones
y malas interpretaciones en los requerimientos de los clientes y usuarios, en parte debido a la
abundancia de notaciones, metodologas y conceptos que hace que los desarrolladores de
sistemas no se pongan de acuerdo en que es lo que realmente estn elaborando. En un
esfuerzo para estndarizar las notaciones y procesos a utilizar, se conform un consorcio
liderado por la empresa Rational y por las principales empresas del mundo de la industria de la
informtica, entre ellas, Microsoft, Oracle, Sun Microsystems, Intellicorp, IBM, AMD y otras,
quienes desarrollaron una notacin llamada UML y el proceso de desarrollo RUP.
2. La Ingeniera de Software.
La ingeniera del Software nace como una disciplina para aplicar los principios tcnicas y
herramientas de desarrollo de software, surgi porque todos los desarrolladores en la dcada
de los 80s, realizaban el software de forma artstica, es decir utilizando mtodos y tcnicas
adhoc donde la experiencia (el ensayo-error) era el camino a seguir. Este enfoque produjo
grandes y exitosos productos de programacin pero conforme los proyectos se volvieron ms
complejos debido al avance del hardware y software y la penetracin cada vez mayor de la
informtica en todos los mbitos de la sociedad, llev a que se produjera software sin calidad,
se incumplieran los presupuestos y se incrementara dramticamente los costos de
mantenimiento.
La solucin propuesta fue aplicar mtodos y principios que han sido utilizados y probados en la
experiencia de desarrollo de software para producir de forma inequvoca productos que corran
eficientemente y se ejecuten sobre mquinas reales. En la dcada de los 70 surgieron una gran
variedad de metologistas y metodologas entre ellos se destacan Yourdon y Demarco cuyas
investigaciones se basaban en los principios de la programacin estructurada. En los 80s y
90s el paradigma estructurado evolucion hacia el paradigma orientado a objetos, en el
perodo de 1989 y 1994 se cre la llamada guerra de mtodos dentro de la comunidad
orientada a objetos existiendo un incremento de menos de diez a ms de cincuenta
metodologas, es as que los desarrolladores de software quedaron muy confundidos sin saber
cual era la metodologa ms adecuada para elaborar sus proyectos.
Ante lo enunciado, el UML oficialmente se present cuando Rumbaugh, Booch y Jacobson
unifican sus estudios con una semntica y notacin, para lograr compatibilidad en el anlisis y
diseo orientado a objetos, permitiendo que los proyectos se asentaran en un lenguaje de
modelado maduro, permitiendo a los constructores de herramientas enfocarse en producir
caractersticas ms tiles.
Esta es la razn de la existencia de varios diagramas en UML que modelan diferentes aspectos
del sistema, desde las vistas lgicas y fsicas del sistema hasta los aspectos dinmicos,
estticos y funcionales del mismo.
c) Cualquier modelo puede ser representado con diferentes grados de precisin.
La precisin se puede ver desde dos pticas: La primera es el grado de detalle con que se
representa un modelo; por ejemplo, si lo que se desea es razonar acerca de los requerimientos
del sistema con un cliente o usuario final, se puede elaborar un diagrama de clases que
muestra las clases, sus atributos y operaciones as como varios adornos(multiplicidad) en las
relaciones; por otro lado, si lo que se desea es transmitir el diagrama de clases para que sea
implementado en un DBMS (Data Base Management System, Sistema Administrador de Bases
de Datos) por un programador, el diagrama con toda seguridad contendr la visibilidad de las
caractersticas (atributos y operaciones) de las clases, los tipos de datos de los atributos y las
signaturas de las mtodos de las clases.
La segunda forma de ver la precisin de un modelo se refiere al nivel de abstraccin, ese decir,
a los detalles y la vista (porcin del sistema o realidad) que presenta un modelo al lector; por
ejemplo, en un sistema Bancario que maneja los retiros que hacen los clientes ya sea en un
cajero automtico o humano, el diagrama de clases contiene decenas de stas; sin embargo
las personas encargadas de desarrollar la interfaz de un cajero electrnico estaran interesadas
en las clases necesarias para realizar el comportamiento del cajero y omiten el resto de clases
del sistema.
d) Los mejores Modelos estn ligados a la realidad.
El smbolo de un actor en un diagrama de casos de uso representa, de hecho, un actor en el
sistema real; as como un componente en un diagrama de componentes representa un
componente fsico del software. Cada elemento de UML como una clase, objeto, estado,
componente o nodo tiene su correspondencia con algn elemento conceptual o fsico del
mundo real.
5. El Lenguaje de Modelado Unificado UML.
"El Lenguaje de Modelado Unificado UML es un lenguaje estndar para escribir planos de
software. UML puede utilizarse para visualizar, especificar, construir y documentar los
artefactos de un sistema que involucra gran cantidad de software"
El UML es el Lenguaje de Modelado Unificado Orientado a Objetos, UML no es un mtodo
porque no tiene nocin de proceso el cual es una parte importante de un mtodo. Ahora
bien si UML no es mtodo; entonces Cules son las etapas a seguir en el desarrollo de
sistemas con UML?, varios especialistas en desarrollo de sistemas de informacin arguyen de
que existe la necesidad de adoptar un Proceso de Desarrollo de sistemas para enmarcar las
fases importantes que sigue el UML, por ello los desarrolladores de proyectos de sistemas de
informacin emplean el Procesos Unificado para dar soluciones adecuadas a las necesidades
de los clientes.
El desarrollo de sistemas con UML siguiendo el proceso unificado incluye actividades
especficas, cada una de ellas a su vez contienen otras subactividades las cuales sirven como
una gua de cmo deben ser las actividades desarrolladas y secuenciadas con el fin de obtener
sistemas exitosos; consecuentemente el desarrollo de los sistemas puede variar de
desarrollador en desarrollador, de proyecto en proyecto, de empresa en empresa adoptando
siempre un Proceso de Desarrollo.
6. El proceso Unificado de Modelado (RUP).
A travs de la historia se han desarrollado varios modelos de proceso de software (paradigmas
de desarrollo) cada uno con sus ventajas, desventajas y utilidad en algunos tipos de proyectos
y problemas. Al igual que cualquier notacin, el proceso unificado acta como un modelo que
puede adaptarse a cualquier tipo de proyecto y empresa (grandes y pequeas). Las
caractersticas del proceso unificado de modelado son:
Dado un sistema a desarrollar no es necesario emplear todos los diagramas; para sistemas
sencillos un diagrama de clases junto con un par de diagramas de actividades e interaccin
sera suficiente, asimismo si los sistemas son complejos requieren de la utilizacin de ms
diagramas, debido a que requieren de etapas incrementales e iterativas(ciclos de desarrollo) en
el anlisis, diseo e implementacin, por ello es que el conjunto actividades deber especificar
la etapa de desarrollo y los diagramas recomendados como muestra la siguiente figura:
9. Conclusiones.
El lenguaje Unificado de modelado UML es una notacin que es el resultado de la evolucin de
las notaciones previas en ingeniera de software, toma los aspectos fuertes de tres
metodologas anteriores: OMT, Booch y OOSE.
La notacin UML se fundamenta en principios de modelado, lo cual es importante para toda
implementacin de un sistema de informacin.
El UML debe adoptar el Proceso Unificado de Desarrollo para modelar las actividades de un
proyecto.
Los diagramas a utilizar en las diferentes etapas del desarrollo de los sistemas de informacin,
pueden variar dependiendo del tamao y tipo de sistema, por lo que es necesario organizarlos
segn las fases del Proceso Unificado.