sábado, 2 de octubre de 2010

"Todo sobre UML" por: Oscar Daniel Peraza Castañeda...

1.-¿Que es UML?
El Lenguaje Unificado de Modelado preescribe un conjunto de notaciones y diagramas estándar para
Modelar sistemas orientados a objetos, y describe la semántica esencial de lo que estos diagramas y
Símbolos significan. Mientras que ha habido muchas notaciones y métodos usados para el diseño
Orientado a objetos, ahora los modeladores sólo tienen que aprender una única notación.
2.-¿Tipos de diagramas utilizados en UML?
UML se puede usar para modelar distintos tipos de sistemas: sistemas de software, sistemas de hardware,
y organizaciones del mundo real. UML ofrece nueve diagramas en los cuales modelar sistemas.
• Diagramas de Casos de Uso para modelar los procesos ’business’.
• Diagramas de Secuencia para modelar el paso de mensajes entre objetos.
• Diagramas de Colaboración para modelar interacciones entre objetos.
• Diagramas de Estado para modelar el comportamiento de los objetos en el sistema.
• Diagramas de Actividad para modelar el comportamiento de los Casos de Uso, objetos u operaciones.
• Diagramas de Clases para modelar la estructura estática de las clases en el sistema.
• Diagramas de Objetos para modelar la estructura estática de los objetos en el sistema.
• Diagramas de Componentes para modelar componentes.
• Diagramas de Implementación para modelar la distribución del sistema.
3.-¿Menciona las metodologias mas populares para UML?
UML no preescribe un proceso o método estándar para desarrollar un sistema. Hay varias
metodologías existentes; entre las más populares se incluyen las siguientes:
Catalysis: Un método orientado a objetos que fusiona mucho del trabajo reciente en métodos
orientados a objetos, y además ofrece técnicas específicas para modelar componentes distribuidos.
Objetory: Un método de Caso de Uso guiado para el desarrollo, creado por Ivar Jacobson.
Shlaer/Mellor: El método para diseñar sistemas de tiempo real, puesto en marcha por Sally Shlaer y
Steven Mellor en dos libros de 1991, Ciclos de vida de Objetos, modelando el Mundo en Estados y
Ciclos de vida de Objetos, Modelando el mundo en Datos (Prentice Hall). Shlaer/Mellor countinúan
actualizando su método continuamente (la actualización más reciente es el OOA96 report), y
recientemente publicaron una guía sobre cómo usar la notación UML con Shlaer/Mellor.
Fusion: Desarrollado en Hewlett Packard a mediados de los noventa como primer intento de un
método de diseño orientado a objetos estándar. Combina OMT y Booch con tarjetas CRC y métodos
formales. (www.hpl.hp.com/fusion/file/teameps.pdf)
OMT: La Técnica de Modelado de Objetos fue desarrollada por James Rumbaugh y otros, y publicada
en el libro de gran influencia "Diseño y Modelado Orientado a Objetos" (Prentice Hall, 1991). Un
método que propone análisis y diseño ’iterative’, más centrado en el lado del análisis.
Booch: Parecido al OMT, y también muy popular, la primera y segunda edición de "Diseño Orientado
a Objetos, con Aplicaciones" (Benjamin Cummings, 1991 y 1994), (Object-Oriented Design, With
Applications), detallan un método ofreciendo también diseño y análisis ’iterative’, centrándoso en el
lado del diseño.
4.-¿Que es un estereotipo en UML?
Los estereotipos son el mecanismo de extensibilidad incorporado más utilizado dentro de UML. Un
estereotipo respresenta una distinción de uso. Puede ser aplicado a cualquier elemento de modelado,
incluyendo clases, paquetes, relaciones de herencia, etc. Por ejemplo, una clase con estereotipo ’actor’ es
una clase usada como un agente externo en el modelado de negocio. Una clase patrón es modelada como
una clase con estereotipo parametrizado, lo que significa que puede contener parámetros.





5.-¿Que es OCL?
OCL es un lenguaje formal diseñado para ser fácil de leer y de escribir. OCL es más funcional que el lenguaje
natural, pero no tan preciso como un lenguaje de programación - no puede ser usado para escribir lógicas
de lógica de programación o control de flujo. Puesto que OCL es un lenguaje para la expresión pura, sus
declaraciones están garantizadas de no tener efectos laterales - simplemente transportan un valor y nunca
pueden cambiar el estado del sistema.

6.-¿Que es un caso de uso?
Una vez más, UML es una notación, no un método. No preescribe un proceso para modelar un sistema.
No obstante, como UML incluye los diagramas de casos de uso, se le considera estar dotado de una
aproximación al diseño centrada en el problema con los casos de uso. El Diagrama de Caso de Uso nos
da el punto de entrada para analizar los requisitos del sistema, y el problema que necesitamos solucionar.
La Figura 1 muestra un flujo general de cómo los diagramas de UML, con extensiones, interactuan en
una aproximación al diseño con los casos de uso.
7.-¿Menciona dos software para UML?
Microsoft Visio 2007 y el SmartDraw
8.-¿Que son las herramientas CASE?
Las herramientas CASE (Computer Aided Software Engineering, Ingeniería de Software Asistida por Computadora) son diversas aplicaciones informáticas destinadas a aumentar la productividad en el desarrollo de software reduciendo el costos de las mismas en términos de tiempo y de dinero. Estas herramientas nos pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del software en tareas como el proceso de realizar un diseño del proyecto, calculo de costes, implementación de parte del código automáticamente con el diseño dado, compilación automática, documentación o detección de errores entre otras.



9.-¿Componentes de una herramienta CASE?
·         Repositorio (diccionario) donde se almacenan los elementos definidos o creados por la herramienta, y cuya gestión se realiza mediante el apoyo de un Sistema de Gestión de Base de Datos (SGBD) o de un sistema de gestión de ficheros.
·         Carga o descarga de datos, son facilidades que permiten cargar el repertorio de la herramienta CASE con datos provenientes de otros sistemas, o bien generar a partir de la propia herramienta esquemas de base de datos, programas, etc. que pueden, a su vez, alimentar otros sistemas. Este elemento proporciona así un medio de comunicación con otras herramientas.
·         Comprobación de errores, facilidades que permiten llevar a cabo un análisis de la exactitud, integridad y consistencia de los esquemas generados por la herramienta.
·         Interfaz de usuario, que constará de editores de texto y herramientas de diseño gráfico que permitan, mediante la utilización de un sistema de ventanas, iconos y menús, con la ayuda del ratón, definir los diagramas, matrices, etc. que incluyen las distintas metodologías.

10.-¿Estructura general de una herramienta CASE?
La estructura CASE se basa en la siguiente terminología:
·         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 planificación de sistemas, el análisis de sistemas y el diseño de sistemas.
·         CASE de bajo nivel son aquellas herramientas que automatizan o apoyan las fases finales o inferiores del ciclo de vida como el diseño detallado de sistemas, la implantación 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 gestión de proyectos y la estimación.



11.-Defina las siguientes clasificaciones del CASE:
TOOLKIT: es una colección de herramientas integradas que permiten automatizar un conjunto de tareas de algunas de las fases del ciclo de vida del sistema informático: Planificación estratégica, Análisis, Diseño, Generación de programas.
WORKBENCH: Son conjuntosintegrados de herramientas que dan soporte a la automatización del proceso completo de desarrollo del sistema informático. Permiten cubrir el ciclo de vida completo. El producto final aportado por ellas es un sistema en código ejecutable y su documentación.
Una segunda clasificación es teniendo en cuenta las fases (y/o tareas) del ciclo de vida que automatizan:
UPPER CASE: Planificación estratégica, Requerimientos de Desarrollo Funcional de Planes Corporativos.
MIDDLE CASE: Análisis y Diseño.
LOWER CASE: Generación de código, test e implantación

No hay comentarios:

Publicar un comentario