En ocasiones una clase consta de otras clases. Este tipo
especial de relacin conocida como agregacin o acumulacin. Los componentes y la clase que constituyen son una asociacin que conforma un todo. Restriccin en las agregaciones En ocasiones el conjunto de componentes posibles en una agregacin se establece dentro de una relacin O. En ciertos restaurantes, una comida consta de sopa o ensalada, el plato fuerte y el postre. Para modelar esto, utilizara una restriccin: la palabra O dentro de llaves con una lnea discontinua que conecte las dos lneas que conforman al todo. todo. Sopa Composiciones Una composicin es un tipo muy representativo de una agregacin. Cada componente dentro de una composicin puede pertenecer tan solo a un todo. Los componentes de una mesa caf (la superficie de la mesa y las patas) establecen una composicin. El smbolo de una composicin es el mismo de una agregacin, excepto que el composicin es el mismo de una agregacin, excepto que el rombo esta relleno. Contextos Cuando modele un sistema podra producirse, con frecuencia, agrupamiento de clases, como agregaciones o composiciones. Un diagrama de contexto es como un mapa detallado de alguna seccin de mapa de mayores dimensiones. Pueden ser necesarias varias secciones para capturar toda la informacin necesaria. necesaria. Ejemplo: suponga que esta creando un modelo de una camisa y la forma que se podria combinar algun atuendo y un guardarropa. Contextos Un diagrama de contexto de composicin le muestra los componentes de una clase como un diagrama anidado dentro de un enorme rectngulo de clase. Interfaces y realizaciones Una interfaz es un conjunto de operaciones que especifica cierto aspecto de la funcionalidad de una clase, y es un conjunto de operaciones que una clase presenta a otras. Puede modelar una interfaz del mismo modo que modelara una clase, con un smbolo rectangular. La diferencia ser que, como un conjunto de operaciones, una interfaz no tiene como un conjunto de operaciones, una interfaz no tiene atributos. La relacin entre una clase y una interfaz se conoce como realizacin. Esta relacin esta modelada como una linea discontinua con una punta de flecha en forma de triangulo sin rellenar que adjunte y apunte a la interfaz. Interfaces y realizaciones Una interfaz en un conjunto de operaciones que realiza una clase. Esta ultima se relaciona con una interfaz mediante una realizacin, misma que se indica por una lnea discontinua con una punta de flecha en forma de triangulo sin rellenar que apunte a la interfaz Interfaces y realizaciones Otra forma (omitida) de presentar una clase, y su interfaz es con un pequeo circulo que se conecte mediante una lnea a la clase. Una clase puede realizar ms de una interfaz, y una interfaz puede ser realizada por ms de una clase. Visibilidad El concepto de visibilidad esta muy relacionado con las interfaces y la realizacin. La visibilidad se aplica a atributos u operaciones, y establece la proporcin en que otras clases podrn utilizar los atributos u operaciones de una clase dada (o en operaciones de una interfaz). Existen tres niveles de visibilidad: Existen tres niveles de visibilidad: Nivel Pblico (todas) Nivel Protegido (subclases) Nivel Privado (clase principal) Para indicar el nivel publico, anteceda el atributo u operacin con un signo de suma (+), para revelar un nivel protegido, antecdalo con un smbolo de numero (#), y para indicar el nivel privado, antecdalo con un guin (-). Visibilidad Los atributos y operaciones pblicos y privados, tanto de una televisin como de un automvil. Resumen Una agregacin establece una asociacin para conformar un todo. Una composicin es una conformacin muy ntimamente ligada con la agregacin en el sentido de que un componente de una composicin puede ser solamente parte de un todo. Un diagrama de contexto enfoca la atencin en una clase Un diagrama de contexto enfoca la atencin en una clase especfica dentro de un sistema. Un diagrama de contexto de composicin es como un mapa detallado de un mapa mayor. Un diagrama de contexto de un sistema muestra la forma en que el diagrama de clases compuestas se relaciona con otros objetos del sistema. Resumen Una realizacin es una asociacin entre una clase y una interfaz, una coleccin de operaciones que cierta cantidad de clases podr utilizar. Una interfaz se representa como una clase sin atributos. En trminos de visibilidad, todas las operaciones en una En trminos de visibilidad, todas las operaciones en una interfaz son pblicas +. Los otros niveles de visibilidad son protegido # (la funcionalidad se extiende a las clases secundarias) y privado - (atributos y operaciones que se pueden utilizar slo dentro de la clase que los contiene). Ejercicio Realizar un diagrama de clases en donde se considere una agregacin (por ejemplo, Universidad, estudiantes, sus materias y salones), una composicin (por ejemplo, un silla de clases, pizarrn, etc.) dentro del contexto Educacin superior. Se debe mostrar al menos una interfaz y los tres niveles de visibilidad para clases o interfaz y los tres niveles de visibilidad para clases o interfaces. Tomar un ejemplo de Java RMI del semestre pasado en donde se consideren las clases y su interfaz, y realizar su diagrama de clases. TAREA Realizar un diagrama de clases del caso de la empresa de autobuses. La encomienda es tratar de usar toda la simbologa vista a la fecha. El diagrama debe ser elaborado en Visio 2007 y entregado impreso. La fecha mxima de entrega entregado impreso. La fecha mxima de entrega es una semana despus del da de asignacin. El trabajo es individual.