TEDiagrama de Clases

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 18

GUÍA DEL ESTUDIANTE

Práctica 3 - Elementos de un diagrama de Clases.

C. Hinojosa, C. Rojas, D. Armijos

Área de Conocimiento Relacionada: Ingeniería de Software


Tiempo horas clase: 1 hora Modalidad: Grupal (2 alumnos)

Competencia a desarrollar por el estudiante:


Identifica y aplica los elementos de un diagrama de clases para representar la
parte estática de un sistema, utilizando la herramienta CASE asignada y la
notación UML.

Hardware y

Requerimientos
Software: mínimos PC de laboratorio
Procesador Pentium 233 MHz o superior
Windows 2000, WindowsMetodología
XP de Desarrollo de Sistemas -Talleres de UML 1
128 MB RAM (256MB recomendado)
110 MB espacio en disco duro (150MB recomendado)
Herramienta CASE - StarUML Versión 5.0.2

Marco Conceptual:
Un diagrama de clases es un diagrama estático que describe la estructura de un
sistema mostrando sus clases, atributos y las relaciones entre ellos.
Clase: Es una descripción de un conjunto de objetos que comparten las mismas
operaciones, relaciones, atributos y semántica. Una clase define
uno o más objetos, donde los objetos pertenecen a la clase,
teniendo características comunes.
Clase Abstracta: Una clase es abstracta cuando posee una operación abstracta,
es decir una operación de la cual se ofrece su signatura en la clase abstracta pero
no su implementación. Ésta debe ser dada en las subclases.
Atributos: Los atributos definen la estructura de una clase y de sus
correspondientes objetos. El atributo define el valor de un dato para todos los
objetos pertenecientes a una clase.
Operaciones:
C. Hinojosa, C.Las operaciones
Rojas, D. Armijos son funciones o transformaciones que se aplican a
todos los objetos de una clase particular. La operación puede ser una acción
ejecutada por el objeto o sobre el objeto.
Visibilidad: Indica el grado en que los atributos y operaciones de una clase son
accesibles a otras clases, la visibilidad puede ser:
- Public: Indica que serán visibles tanto dentro como fuera de la clase, es
decir son accesibles desde otras clases. Utilizan el símbolo “+”.
- Private: Indica que sólo serán accesible dentro de su clase, es decir que
solo otros métodos de su clase pueden acceder. Utilizan el símbolo “-”.
- Protected: Indica que no serán accesibles desde fuera de su clase, pero si
podrán ser accedidas por métodos y subclases (herencia) que se deriven
de su clase. Utilizan el símbolo “#”.
Multiplicidad: Utilizada para especificar el número de objetos instanciados en una
Metodología de Desarrollo de Sistemas -Talleres de UML 2
relación. La multiplicidad se la escribe en los extremos de cada relación utilizando
números, rangos de números o con el símbolo “*” que significa múltiples.
Relaciones:
Asociación: Utilizadas para relacionar una clase con otra,
a través de estas asociaciones, un objeto envía y recibe eventos. Especifica
que los objetos de una clase conocen permanentemente las instancias de
otra.
Ejemplo:

Figura A.1: (Ejemplo de una asociación)

Donde cada instancia de A conoce a una instancia de B y cada instancia de


B conoce a una instancia de A
Asociación Directa: Utilizadas para relacionar una clase con otra.
Especifica que los objetos de una clase conocen o no las instancias de otra.
Ejemplo:

Figura
C. Hinojosa, C. Rojas, D. A.2: (Ejemplo de una asociación directa)
Armijos

Donde cada instancia de C conoce a una instancia de D y las instancias de


D no conocen ninguna instancia de C.

Agregación: Indican que una agregación es de tipo


“todo/parte”. Es decir que puede incluirse en diferentes clases y puede
existir independientemente de la clase que la incluye.
Ejemplo:

Figura A.3: (Ejemplo de una agregación)

Metodología
Donde los objetos de Carrera puedendeexistir
Desarrollo de Sistemas -Talleres
independientemente de UML
de los 3
objetos de Universidad.
Composición: Son agregaciones especiales en las
que un objeto sólo puede formar parte de una parte compuesta a la vez.
Ejemplo:

Figura A.4: (Ejemplo de una composición)

Donde los objetos de una Carrocería están compuestos por 1 objeto de la


clase Chasis, 1 de la clase Cofre, por varios objetos de la clase puerta y 1
objeto de la clase cajuela.
Generalización (Herencia): Una relación entre una
clase general y una clase más específica, que hereda y añade propiedades
a la clase general.
Ejemplo:
C. Hinojosa, C. Rojas, D. Armijos

Figura A.5: (Ejemplo de una generalización)

Caso de estudio:
Lea y resuelva cada uno de los ejercicios planteados a continuación:
1. Modele una clase basada en el escenario de una tienda de películas, que
necesita almacenar los datos de las películas en bodega, para poder
Metodología de Desarrollo de Sistemas -Talleres de UML 4
clasificarlas y conocer su ubicación física. Los datos relevantes de las
películas son: título, director, género, duración y ubicación. Se debe permitir
administrar las películas, es decir ingresar, buscar, actualizar y eliminar.
2. Modele las clases que representen a un arquitecto y todos sus diseños de
planos, incluya datos como: área de terreno, área de construcción, escala y
ubicación geográfica para el plano; y el nombre, dirección y teléfono para el
arquitecto.
3. Modele las clases que representen la administración de proyectos y
edificaciones para una constructora. Tome en cuenta que las edificaciones
son parte de un proyecto y que se puede ingresar, buscar, actualizar y
eliminar tanto proyectos como edificaciones.
Almacene al menos los siguientes datos:
 Nombre, localización y área de la edificación.
 Nombre, duración y costo del proyecto.
4. Modele las clases que permitan a un taller de bicicletas que importa
cámaras de aire y válvulas para sus llantas almacenar la información de
cada llanta y sus mencionadas partes. Tome en cuenta la marca y número
de llanta,
C. Hinojosa, la capacidad
C. Rojas, D. Armijos máxima de la cámara de aire y el material de la
válvula.
5. Un Cybernet utiliza en su local impresoras láser e inyección de tinta,
modele las clases que permitan identificar el tipo de impresora según la
serie del tonner o el número de cartucho que utiliza. Tome en cuenta que se
debe administrar las impresoras, ingresando, buscando, actualizando y
eliminado sus características.
De todas las impresoras se requiere saber la marca, modelo y si imprime a
color.

Desarrollo de la práctica:

RECUERDE: Utilice la “Guía de uso de la herramienta” como


Metodología de Desarrollo de Sistemas -Talleres de UML 5
material de apoyo.

Prepare la herramienta:
 Cree un proyecto vacío en StarUML de nombre Práctica 3.
 Añada un modelo con el nombre “Caso de Estudio 3”.
 Agregue al modelo cinco diagramas de clases de acuerdo a cada ejercicio.
Utilice nombres relacionados a cada uno.
Modele el caso de estudio:
 Lea y comprenda los ejercicios presentados en el caso de estudio.
 Identifique los elementos que se deben utilizar para cada ejercicio
planteado.
 Debata con su compañero soluciones.
 Escoja la mejor solución y si es necesario solicite ayuda al instructor.
 Modele la solución escogida, utilizando la herramienta.
AYUDAS PARA VERIFICAR SU DIAGRAMA:

C. Hinojosa,
 TodasC. Rojas,
lasD. Armijos
clases tienen su nombre en singular.

 Todos los atributos tienen tipo y visibilidad.

 Una clase padre debe ser identificada como abstracta

utilizando letra cursiva en su nombre.

 Se utilizan palabras y multiplicidad en las asociaciones entre

clases.

 Las relaciones de generalización cumplen con la regla “es un”

Metodología de Desarrollo de Sistemas -Talleres de UML 6


Evaluación:
Copie y resuelva la evaluación en un documento de Word.
Identifique si Rojas,
C. Hinojosa, C. los diagramas
D. Armijos presentados a continuación tienen errores, si
existe error explique el por qué y corrija el diagrama:
1. El siguiente diagrama representa los exámenes realizados por un
estudiante en donde se requiere conocer la calificación y la fecha en la que
se rindió el examen, así como el nombre y nivel del estudiante.
Es preciso calcular el promedio del estudiante para definir si ha aprobado
un nivel.

Figura A.6: (Diagrama de evaluación ejercicio 1 – Práctica 3)


Metodología de Desarrollo de Sistemas -Talleres de UML 7

Respuesta:
Explicación:

2. Para representar que el cuadrado y el rectángulo son figuras geométricas


con características especiales. ¿Se utilizaría el siguiente diagrama?

Figura A.7: (Diagrama de evaluación ejercicio 2 – Práctica 3)


Respuesta:
Explicación:

C. 3. El siguiente
Hinojosa, C. Rojas, D.diagrama
Armijos representa que un automóvil se compone
esencialmente de un motor y una carrocería.

Figura A.8: (Diagrama de evaluación ejercicio 3 – Práctica 3)

Respuesta:
Explicación:
4. El diagrama especifica: ¿qué muchas salas son parte de un cine y qué una
Metodología de Desarrollo de Sistemas -Talleres de UML 8
sala proyecta varias películas?

Figura A.9: (Diagrama de evaluación ejercicio 4 – Práctica 3)

Respuesta:
Explicación:
IMPORTANTE: Al finalizar entregue el archivo de la práctica y el

de evaluación según las indicaciones de su instructor.


C. Hinojosa, C. Rojas, D. Armijos

Bibliografía:

Ñ:
Manual de Usuario de StarUML para modelar clases:
 http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html
Conceptos
 El Lenguaje Unificado de Modelado. Manual de referencia
(J. Rumbaugh, I. Jacobson, G.Booch)
 http://www.scribd.com/doc/2568061/Diagrama-de-Clases-Entidad
 virtual.usalesiana.edu.bo/web/practica/archiv/clases_2.doc

Metodología de Desarrollo de Sistemas -Talleres de UML 9


A.1.9- Práctica 4 – Diagrama de Clases – Guía del Estudiante

GUÍA DEL ESTUDIANTE

Práctica 4 - Diagrama de Clases.


C. Hinojosa, C. Rojas, D. Armijos

Área de Conocimiento Relacionada: Ingeniería de Software


Tiempo horas clase: 2 horas Modalidad: Grupal (2 alumnos)
Competencia a desarrollar por el estudiante:
Representa clases y relaciones de un sistema utilizando diagramas de clases y la
herramienta CASE asignada, bajo la modalidad de trabajo en pareja.
Hardware y
Requerimientos mínimos PC de laboratorio
Software:
Procesador Pentium 233 MHz o superior
Windows 2000, Windows XP
128 MB RAM (256MB recomendado)
110 MB espacio en disco duro (150MB recomendado)
Metodología de Desarrollo de Sistemas -Talleres de UML 10
Herramienta CASE - StarUML Versión 5.0.2
Herramienta para crear mapas mentales - CmapTools (Opcional)
Sitio de descarga de CmapTools
 http://cmapdownload.ihmc.us/installs/CmapTools/Win/

Marco Conceptual:

Un diagrama de clases es un diagrama estático que describe la estructura de un


sistema mostrando sus clases, atributos y las relaciones entre ellos.
Clase: Es una descripción de un conjunto de objetos que comparten
las mismas operaciones, relaciones, atributos y semántica. Una
clase define uno o más objetos, donde los objetos pertenecen a la
clase, teniendo características comunes.
Clase Abstracta: Una clase es abstracta cuando posee una operación abstracta,
es decir una operación de la cual se ofrece su signatura en la clase abstracta pero
no su implementación. Ésta debe ser dada en las subclases.
Atributos: Los atributos definen la estructura de una clase y de sus
correspondientes objetos. El atributo define el valor de un dato para todos los
objetos pertenecientes a una clase.
Operaciones:
C. Hinojosa, C.Las operaciones
Rojas, D. Armijos son funciones o transformaciones que se aplican a
todos los objetos de una clase particular. La operación puede ser una acción
ejecutada por el objeto o sobre el objeto.
Visibilidad: Indica el grado en que los atributos y operaciones de una clase son
accesibles a otras clases, pueden ser:
- Public: Indica que serán visibles tanto dentro como fuera de la clase, es
decir son accesibles desde otras clases. Utilizan el símbolo “+”.
- Private: Indica que sólo serán accesible dentro de su clase, es decir que
solo otros métodos de su clase pueden acceder. Utilizan el símbolo “-”.
- Protected: Indica que no serán accesibles desde fuera de su clase, pero si
podrán ser accedidas por métodos y subclases (herencia) que se deriven
de su clase. Utilizan el símbolo “#”.
Multiplicidad: Utilizada para especificar el número de objetos instanciados en una
Metodología de Desarrollo de Sistemas -Talleres de UML 11
relación. La multiplicidad se la escribe en los extremos de cada relación utilizando
números, rangos de números o con el símbolo “*” que significa múltiples.
Relaciones:
Asociación: Utilizadas para relacionar una clase con otra, a través de
estas asociaciones, un objeto envía y recibe eventos. Especifica que los objetos
de una clase conocen permanentemente las instancias de otra.
Ejemplo:

Figura A.10: (Ejemplo de una asociación)

Donde cada instancia de A conoce a una instancia de B y cada instancia de


B conoce a una instancia de A
Asociación Directa: Utilizadas para relacionar una clase con otra.
Especifica que los objetos de una clase conocen o no las instancias de otra.
Ejemplo:
Figura A.11: (Ejemplo de una asociación directa)

C. Hinojosa, C. Rojas, D. Armijos


Donde cada instancia de C conoce a una instancia de D y las instancias de
D no conocen ninguna instancia de C
Agregación: Indican que una agregación es de tipo “todo/parte”. Es
decir que puede incluirse en diferentes clases y puede existir independientemente
de la clase que la incluye.
Ejemplo:

Figura A.12: (Ejemplo de una agregación)

Donde los objetos de Carrera pueden existir independientemente de los


objetos de Universidad.
Metodología
Composición: Son de Desarrollo
agregaciones de Sistemas
especiales en las-Talleres
que un de UML
objeto 12
sólo puede formar parte de una parte compuesta a la vez.
Ejemplo:

Figura A.13: (Ejemplo de una composición)

Donde los objetos de una Carrocería están compuestos por 1 objeto de la


clase Chasis, 1 de la clase Cofre, por varios objetos de la clase puerta y 1
objeto de la clase cajuela.
Generalización (Herencia): Una relación entre una clase general y
una clase más específica, que hereda y añade propiedades a la clase general.
Ejemplo:
C. Hinojosa, C. Rojas, D. Armijos

Figura A.14: (Ejemplo de una generalización)

Caso de estudio:
Lea el ejercicio planteado a continuación, y con la información dada dibuje tres
diagramas de clases: el primero para representar equipos, el segundo para
representar las órdenes de asignación y sus relaciones con empleados y equipos;
y el tercero para representar las estaciones de trabajo y su relación con los
Metodología de Desarrollo de Sistemas -Talleres de UML 13
equipos.
ADMINISTRACIÓN DE EQUIPOS COMPUTACIONALES
ADMINISTRAR DISPOSITIVOS
El asistente de Activos Fijos registra todos los equipos de computación existentes
en la empresa, además él es el encargado de la actualización y eliminación de los
registros.
Cada equipo tiene registrado características generales y específicas, así como un
código de barras, el mismo que se imprime y coloca en cada equipo al registrarse.
Este código se utiliza para facilitar la búsqueda de un equipo en el caso de
requerir hacer algún cambio o eliminar su registro.
Particularidades:
 El registro de dispositivos deberá almacenar las características generales
como nombre, código, marca, modelo y costo. Y las características
específicas de los equipos siendo así para un monitor sus pulgadas y
resolución, para el CPU la capacidad de disco duro, de la memoria RAM y
velocidad de un procesador; para una impresora su medio de impresión
(cartucho, cinta o tonner), velocidad de impresión e interfaz de conexión.
 Para la búsqueda de un dispositivo se utilizará el código del mismo.
C. Hinojosa, C. Rojas, D. Armijos
ASIGNACIONES
Cada equipo registrado debe formar parte de una estación de trabajo, para ello se
utilizan órdenes de asignación, las cuales son creadas por cada Jefe de Unidad e
incluyen el total de equipos que serán parte de la estación de trabajo y el
empleado que se hará responsable.
Para que el Supervisor de activos apruebe o rechace una orden debe buscar las
órdenes creadas.
El asistente de activos es quien crea el registro de cada estación de trabajo para
ello busca todas las ordenes aprobadas.
Particularidades:
 Las órdenes de asignación deberán ser llenadas con los códigos de barras
de los equipos, el nombre del empleado y la fecha.
 Varios equipos son parte de una estación
Metodología de trabajo
de Desarrollo pudiendo
de Sistemas asídetener
-Talleres UML 14
estaciones de trabajo con más o menos dispositivos asignados a cada
empleado.
 También se almacenará el código de cada estación de trabajo, mientras
que del empleado se deberá almacenar el nombre, la dirección, el teléfono
y el cargo.

Desarrollo de la práctica:

RECUERDE: Utilice la “Guía de uso de la herramienta” como material de


apoyo.

Prepare la herramienta:
 Abra el proyecto de nombre “Equipo Computacional”.
 Añada un modelo adicional con el nombre “Clases”.
 Agregue al modelo tres diagramas de clases, uno para cada requerimiento
del caso de estudio.
Modele el caso de estudio:
 Lea y comprenda el caso de estudio.
 Prepare una lista de todas las posibles clases y relaciones para cada
diagrama.
C. Hinojosa,
InfieraC.del
Rojas,
casoD. de
Armijos
estudio los atributos y operaciones necesarios para cada
una de las clases a utilizar.
 Debata con su compañero soluciones alternativas.
 Escoja la mejor solución y si es necesario solicite ayuda al instructor.
 Modele la solución escogida utilizando la herramienta.

AYUDAS PARA VERIFICAR SU DIAGRAMA:

 Todas las clases tienen su nombre en singular.

 Todos los atributos tienen tipo y visibilidad.

 Una clase padre debe ser identificada como abstracta

utilizando letra cursiva en su nombre.


Metodología de Desarrollo de Sistemas -Talleres de UML 15
 Se utiliza palabras y multiplicidad en las asociaciones entre

clases.

 Las relaciones de generalización cumplen con la regla “es un”

Evaluación:

Parte 1
Utilizando un diagrama de clases represente el siguiente escenario:
 Una tienda de ropa necesita generar un reporte en base a la información de
las cuentas de sus clientes.
 Existen cuentas de clientes con tarjeta y cuentas sin tarjeta de afiliación.
 Hay 2 tipos de tarjetas de afiliación, las personales y las corporativas, la
diferencia es el porcentaje de descuento, siendo 8% y 12%
respectivamente
 La información que se requiere en el reporte con respecto al cliente es el
nombre, apellido, dirección y teléfono.
 Los datos que deben aparecer de la cuenta es: el número de cuenta y la
C. Hinojosa,
fecha C.
deRojas, D. Armijos
creación, mientras que de la tarjeta se necesita obtener el número
de tarjeta, la fecha de caducidad, y el tipo de tarjeta.
Cree un nuevo proyecto de nombre “Evaluación” que contenga un modelo de
nombre “Práctica 4” y dentro de él el diagrama de clases resultado del caso
propuesto en la evaluación.
Parte 2
Complete el siguiente mapa mental. Utilice cualquier herramienta gráfica. (Se
recomienda utilizar la herramienta CmapTools)

Metodología de Desarrollo de Sistemas -Talleres de UML 16

Figura A.15: (Mapa mental incompleto de evaluación – Práctica 4)


Parte 3 (Opcional)
Copie y resuelva el siguiente cuestionario en un documento de Word.
1.- ¿Qué es un diagrama de clases?

2.- ¿Qué es una clase?


3.- Liste los elementos básicos de una clase

C. Hinojosa,
 C. Rojas, D. Armijos

4.- ¿Liste los tipos de comunicación y visibilidad que utilizan los atributos y las
operaciones?



5.- ¿Qué tipos de relaciones pueden existir entre clases?




6. - Un nombre para una clase podría ser:
Metodología de Desarrollo de Sistemas -Talleres de UML 17
Retirar dinero ( )
Consultar saldo ( )
Tarjeta ( )
Nombre ( )
7. - La agregación es una relación utilizada entre clases padre e hijas.
Verdadero ( )
Falso ( )
8. - La generalización se dibuja con una línea sólida terminada en un triángulo
que se extiende desde la clase hija hacia la clase padre
Verdadero ( )
Falso ( )
9. - ¿Cómo se representa la relación de composición?
a)
b)
c)
Respuesta: b

10. - ¿Qué se infiere de la siguiente relación?


C. Hinojosa, C. Rojas, D. Armijos
Empleado 1..* trabaja en 1 Empresa

a) uno o varios empleados trabajan en una empresa


b) varios empleados trabajan en una empresa
c) uno o varios empleados trabajan en más de una empresa
Respuesta:

IMPORTANTE: Al finalizar entregue el archivo de la práctica y los de


evaluación según las indicaciones de su instructor.

Bibliografía:

Ñ:
Manual de Usuario de StarUML para modelar clases:
 Metodología de Desarrollo de Sistemas -Talleres de UML
http://staruml.sourceforge.net/docs/user-guide(en)/ch05_2.html 18
Conceptos:
 El Lenguaje Unificado de Modelado. Manual de referencia
(J. Rumbaugh, I. Jacobson, G.Booch)
 http://www.scribd.com/doc/2568061/Diagrama-de-Clases-Entidad
 virtual.usalesiana.edu.bo/web/practica/archiv/clases_2.doc

También podría gustarte