You are on page 1of 5

3.

2 IDENTIFICACION DE CLASES SEGUN ESTEREOTIPOS

Para llevar a cabo la transicion del modelo de requisitos al modelo de analisis se deben identificar los objetos necesarios para implementar todos los casos de uso. La arquitectura de objetos debe considerar los tres tipos de estereotipos de objetos. Para ello se deben identificar primero las clases borde, las clases entidad y finalmente las de Control. En general, los cambios mas comunes a un sistema son los de funcionalidad y bordes. Los cambios de las interfaces deben afectar solo a los objetos borde. Los cambios a la funcionalidad son más dificiles de administrar, ya que ésta puede abarcar todos los tipos de objetos. bordes Toda la funcionalidad especificada en las descripciones de los casos de uso que depende directamente de los aspectos externos del sistema, se ubica en los objetos borde, pues a traves de ellso se comunican los actores con el sistema. La tarea de una clase borde es traducir los eventos generados por un actor en eventos comprendidos por el sistema, y traducir los eventos del sistema en una presentacion comperensible para el actor. Las clases borde en otras palabras , describen la comunicación bidireccional entre el sistema y los actores. Las clases borde son bastante fáciles de identificar, donde se cuenta con al menos tres estrategias: 1. Se pueden identificar con base a los actores.

2. Se pueden identificar con base en las descripciones de las interfaces del sistema que acompañan al modelo de requisitos. 3. Se pueden identificar con base en las descripciones de los casos de uso y extraer la funcionalidad específica a los objetos bordes.

·

Estrategia correspondiente a los actores.

Cada actor necesita su propia clase borde para comunicarse con el sistema. En muchos casos un actor puede necesitar de varios objetos borde. Es evidente que los objetos borde no son totalmente independientes de cada uno, ya que, en ciertos casos deben saber la existencia de los demás. Entidad Se utilizan objetos entidad para modelar la información que el sistema debe manejar a corto y largo plazo. La información a corto plazo existe durante la ejecución de un caso de uso, mientras que la información a largo plazo trasciende los caso de uso, por lo que es necesario guardarla en alguna base de datos o archivos.

lo que se hace en la clase entidad RegistroUsuario. sino más bien especificar cualquier clase adicional. Control En la mayoría de los casos de uso. lo que se hace en la clase entidad RegistroUsuario. Es difícil lograr un buen balance en la distribución del comportamiento del caso de uso entre los objetos entidad. dificultando su modificación. Se puede tomar las clases del dominio del problema y quitar aquellas relacionadas con registros y reservaciones. se encontrara que objetos que objetos similares aparecen en varios casos de uso. Registrar Usuario: Este caso de uso requiere guardar información exclusivamente acerca del usuario. existe un comportamiento que no se puede asignar de forma natural a ninguno de los otros dos tipos de objetos ya vistos. Se pueden tomar las clases del dominio del problema y quitar aquellas relacionadas con registros. Consultar Información: Este casi de uso requiere de toda la información relacionada con consultas. Ofrecer Servicios: Este caso de uso administra las opciones de servicio y no requiere de ninguna clase entidad. Clases entidad: Validar Usuario: Este casi de uso requiere validar información exclusivamente guardada en el registro de usuario. tal comportamiento se asigna a objetos control. no es necesario volver a repetir todas las clases entidad.Durante la identificación de objeto entidad. utiliza también por el caso de uso RegistroUsuario. Pagar Reservación: Este caso de uso requiere de la información relacionada con reservaciones. Registrar Tarjeta: Este caso de uso requiere guardar información exclusivamente acerca de la tarjeta del usuario lo que hace en la clase entidad RegistroTarjeta. Hacer reservación: Este caso de uso requiere de la información relacionada con reservaciones. Un cambio en el comportamiento podría afectar varios objetos. Una posibilidad es repartir el comportamiento entre los dos tipos de objetos. Los objetos de control normalmente proveen a administración de los demás tipos de objetos. Para evitar estos problemas. Dado que es una extensión al caso de uso Hacer Reservación. . borde y control. pero la solución no es buena si se considera el aspecto de extensibilidad.

pero los atributos de cada automóvil tendrán diferentes valores. Los métodos también se llaman operaciones. es la técnica de poner todos los atributos y métodos de un objeto en una estructura independiente.1 la clase se llama RentaAuto. Un atributo describe alguna propiedad de todos los objetos de la clase. Al especificar atributos. los registros de los estudiantes en la sección de un curso almacenan información similar para cada estudiante. pero el tipo de información es el mismo. Losmétodos son los procesos que una clase sabe cómo realizar. Se podría decir que los estudiantes constituyen una clase. los objetos se pueden crear a partir de la clase establecida. En la figura 18. El rectángulo contiene otras dos características importantes: una lista de atributos y una serie de métodos. la propia clase. un paquete con harina para pastel empacado es similar a una clase ya que contiene los ingredientes y las instrucciones para mezclar y hornear el pastel.3 CLASES Los objetos se representan y agrupan en clases que son óptimas para reutilizarse y darles mantenimiento. diferente de la programación clásica. Los nombres declase normalmente son sustantivos o frases cortas y empiezan con una letra mayúscula. Un método es una acción que se puede solicitar a cualquier objeto de la clase. Más adelante demostraremos que es posible serrnás específico acerca del rango de valores para estas propiedades. blanco o de algún otro color. color. En el UML. El término instanciar se usa cuando un objeto se crea a partir de una clase. una clase se representa como un rectángulo. Cuando el programa corre. normalmente la primera letra es minúscula. y por consiguiente al análisis y diseño orientado a objetos. Los programadores deben definir las diversas clases en el programa que escriben. Estos elementos describen una clase. Por ejemplo. Por ejemplo. Ésta es una situación común en el mundo físico. Observe que la clase RentaAuto posee los atributos tamaño. Los valores podrían ser diferentes para cada estudiante. Una clase define el conjunto de atributos y comportamientos compartidos por cada objeto de la clase. La clase . marca y modelo. Por ejemplo. Un suéter de lana es similar a una clase porque incluye una etiqueta con instrucciones del cuidado que advierten que se debe lavarlo a mano y ponerlo a secar extendido. Cada clase debe tener un nombre que la distinga de todas las demás.3. la unidad de análisis que es una parte principal de lo que llamamos análisis y diseño orientado a objetos. Por ejemplo. Todos los automóviles poseen estos atributos. un programa podría instanciar a un estudiante llamado Peter Wellington como un objeto de la clase denominada estudiante. un automóvil puede ser azul. Lo que hace a la programación orientada a objetos.

Un diagrama de secuencia muestra los objetos que intervienen en el escenario con líneas discontinuas verticales. el diagrama de secuencia contiene detalles de implementación del escenario. la distribución horizontal de los objetos es arbitraria. normalmente la primera letra es minúscula. Al especificar métodos.4 DIAGRAMAS DE SECUENCIAS El Diagrama de Secuencia es uno de los diagramas más efectivos para modelar interacción entre objetos en un sistema. y mensajes pasados entre los objetos. Si tienes modelada la descripción de cada caso de uso como una secuencia de varios pasos. Mientras que el diagrama de caso de uso permite el modelado de una vista 'business' del escenario. Típicamente uno examina la descripción de un caso de uso para determinar qué objetos son necesarios para la implementación del escenario. incluyendo los objetos y clases que se usan para implementar el escenario. y los mensajes pasados entre los objetos como vectores horizontales. entregaAutof ) y servicio( ). entonces puedes "caminar sobre" esos pasos para descubrir qué objetos son necesarios para que se puedan seguir los pasos. Los mensajes se dibujan cronológicamente desde la parte superior del diagrama a la parte inferior. Un diagrama de secuencia se modela para cada caso de uso. Figura 5:: Diagrama de Secuencia para un escenario .RentaAuto podría tener los siguientes métodos: inicioRenta( ). 3.

Los dos son términos comunes en el mundo de los negocios y muchas personas conocen su significado.Durante el análisis inicial. es probable que se tengan pocas dificultades para comprender qué datos representan a la factura y al cheque. en esta etapa se actualiza el diccionario de clases segun modulos. El método llamado. Si se examina una muestra de diagramas de flujo de datos para el procesamiento de pedidos. estos ayudan a analisar de una mejor manera. o invocado. aunque no es necesario ordenarlos por relevancia. originalmente descrito en el dominio del problema. 3. a cada clase y caso de uso se le pueden asignar modulos adicionales.5 DICCIONARIO DE CLASES SEGUN MODULOS Esta es la ultima estapa del modelo de analisis. Los diccionarios de datos registran detalles adicionales relacionados con el flujo de datos en el sistema de tal forma que todas las personas participantes puedan localizar con rapidez la descripción de flujos de datos. Más tarde. el modelador típicamente coloca el nombre 'business' de un mensaje en la línea del mensaje. almacenes de datos o procesos. pertenece a la definición de la case instanciada por el objeto en la recepción final del mensaje. . el nombre 'business' es reemplazado con el nombre del método que está siendo llamado por un objeto en el otro. que estos a su vez pueden tener otros modulos o paquetes principales de importancia. Los diccionarios de datos proporcionan asistencia para asegurar significados comunes para los elementos y actividades del sistema. durante el diseño.