Sei sulla pagina 1di 40

LSI ES:E

Departament de Llenguatges i Sistemes Informtics


Laboratori Enginyeria del Software : Especificaci

LESE-3 Tutorial con Rational Rose


Elaboracin de un Diagrama de Clases
Sergio Prez Tobalina
Rubn Gonzlez Blanco
1

Objetivos
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Toma de contacto con Rational Rose


Conocer funciones generales de
sealadas
Rational Rose para modelar con icono
Realizar un Diagrama de Clases con
Rational Rose
1 parte: guiada
2 parte: alumno

Objetivo del Laboratorio: Graphic Model


LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose


Especificar el Diagrama de Clases de Graphics:
Panel
Graphic

Line

-selection

#graphics

DrawPoint(p : Point)
DrawLine(p1 : Point, p2 : Point)
DrawCircle(c : Point, r : Float)
OnPaint(e : PaintEvent)

0..n

Rectangle

Draw(aPanel : Panel) : void


Move(to : Point) : void

1..n

Circle

start : Point
end : Point

anchor : Point
size : Point

origin : Point
radius : Float

Draw(aPanel : Panel) : void


Move(to : Point) : void

Draw(aPanel : Panel) : void


Move(to : Point) : void

Draw(aPanel : Panel) : void


Move(to : Point) : void

GraphicSelection
Draw(aPanel : Panel) : void
Move(to : Point) : void
Add(g : Graphics) : void
Remove(g : Graphics) : Graphic
GetChildren(name : String) : Graphic

Graphic Objects
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Circle

SelectionGraphic
Panel

Graphic Model: Elementos UML


LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose


Clase Abstracta

Asociacin

Asociacin Agregacin

navegabilidad

Panel

rol
Graphic

-selection

#graphics

DrawPoint(p : Point)
DrawLine(p1 : Point, p2 : Point)
DrawCircle(c : Point, r : Float)
OnPaint(e : PaintEvent)

0..n

Draw(aPanel : Panel) : void


Move(to : Point) : void

1..n

multiplicidad

Dependencia

operacin abstracta
Generalizacin

atributo
Clase Concreta
Line

Rectangle

Circle

start : Point
end : Point

anchor : Point
size : Point

origin : Point
radius : Float

Draw(aPanel : Panel) : void


Move(to : Point) : void

Draw(aPanel : Panel) : void


Move(to : Point) : void

Draw(aPanel : Panel) : void


Move(to : Point) : void

operacin concreta

GraphicSelection
Draw(aPanel : Panel) : void
Move(to : Point) : void
Add(g : Graphics) : void
Remove(g : Graphics) : Graphic
GetChildren(name : String) : Graphic

Iniciar Rose
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Iniciar Rose

Start Programs Rational Rose


Rational Rose

Crear un Nuevo Modelo


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Al iniciar Rose
Una vez en Rose: File New

Crear un Nuevo Modelo


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

De la nada (from scratch)

Cancel

Utilizando uno Plantilla o Framework

Select <modelo>
OK

Desde sistema ficheros

Existing
OR

Recent

Guardar Modelo
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

File Save o Save As

Crear un Diagrama de Clases


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Browser: Logical View Men Botn Derecho New Class


Diagram
Men : Browse Class Diagram

10

Creacin de Diagramas
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Seleccionar <View> en Browser

Men Botn Derecho New <diagrama>

Men Browse <diagrama>

11

Toolbar Diagrama de Clases


LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Cualquier elemento del diagrama se puede crear

cargando el puntero del ratn con una Tool de la Toolbar


Drag&Drop sobre el diagrama

texto
interfaz

Nota
clase
Puntero

Ancla Nota

asociacin

generalizacin
paquete
dependencia o instanciacin

clase asociacin

realizacin

12

Crear una Clase


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Carga Puntero de Ratn con Class Tool

Toolbar : Click Class button Icon


Men: Tools Create Class

Click en Diagram Window


OR
Browser : Sel. Logic View men botn derecho New Class
(Sel. Clase Drag &Drop en Diagram Window)

13

Creacin Elementos Diagrama


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Cargar Puntero Ratn

Click en botn Toolbar


Sel. Diagrama en Browser botn derecho
New <elemento>
Men Tools Create

Click en diagrama

14

Especificar nombre de la clase


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Directamente en el diagrama
Doble click en la clase Class Specification for
NewClass

15

Especificar Elementos Diagrama


LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Specification Window

Permite especificar un
elemento del modelo
(diagramas, classes,
paquetes, relaciones...)
Los atributos o sub-

elementos a especificar
dependen del propio
elemento seleccionado

En cada TabWindow se especifican atributos o subelementos

16

Especificar Elementos Diagrama


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Open Specification Window

Doble Click en elemento a traves del Browser o Diagram Window


Sel. elemento (Browser,Diagram Window) Men Boton derecho
raton Open Sepecification
Sel. elemento Men Browse Open Specfication

Shorcuts a TabWindows, Propiedades, Mens de Specification


Window

Sel. Elemento (Browser,Diagram Window) menu boton derecho


new <subelement> (atributo, operacin...) OR <Propiedad> OR
<TabWindow>

17

Clase Graphic
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Un elemento
Puede estar en mltiples diagramas
Solo una instancia en el Browser

Sincronizados

18

Borrar un elemento
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Shallow Delete

Edit Delete
Seleccionar elemento en diagrama tecla DEL
NO SE BORRA DEL MODELO!! (solo del diagrama,no del Browser)

Deep Delete

Seleccionar elemento en Browser click boton


derecho Delete
Seleccionar elemento en diagrama Click
CTRL+D
SE BORRA DEL MODELO!! (desaparece del diagrama y del Browser)

19

Crear una Operacin


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Diagrama: Selecc clase Men botn derecho ratn


New Operation
Browser: Selecc clase Men botn derecho ratn
New Operation

20

Especificar Operacin
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Directamente: escribir la signatura del mtodo

<< estereotipo>> nombreOperacion( param: Tipo,...) : Tipo Retorno

Indirectamente: Class Specifcation tab Operations men botn


derecho Insert (operation)

Doble click sobre mtodo Operation Specification Name Details men


botn derecho Insert (parametro)

21

Especificar Operacin
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Nombre
Parmetros

Nombre,Tipo

Tipo de retorno
Accesibilidad

Public, Protected, Private

MyClassObject
GetIsPublic()
GetIsProtected()
GetIsPrivate()

Abstracta o Concreta

(checkbox Abstract in Details TabWindow)


22

Crear un Atributo
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Diagrama: Selecc clase Men botn derecho ratn


New Attribute
Browser: Selecc clase Men botn derecho ratn
New Attribute

Browser: se actualiza con los cambios en Diagram Window

23

Especificar Atributo
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Directamente: escribir la signatura del attributo

<< estereotipo>> nombreAtributo : Tipo

Indirectamente: Class Specifcation tab Attributes men botn


derecho Insert ( attributo)

Doble click sobre atributo Attribute Specification Name Type

24

Especificar un Atributo
LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Nombre
Tipo
Accesibilidad

Public, Protected,Private

MyClass
isPublic
isProtected
isPrivate

Clase Abstracta o Concreta

(checkbox Abstract in Details TabWindow)

25

Relacionar Clases
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Relaciones UML en Rose

Generalizacin
Asociacin
Agregacin

Composicin

Dependencia

26

Relaciones UML en Rose


LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Generalizacin (herencia)
B

Asociacin

roleB

roleA
1..n

A
multiplicidad

A
Navegabilidad de B a A

27

Relaciones UML en Rose


LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Asociacin de Agregacin
B

Asociacin de Composicin

Dependencia o Instanciacin

28

Crear una Generalizacin


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Cargar Puntero de Ratn con Tool

Click en boton Toolbar


Men Tools Create Generalization

Click en Diagram Window Unir elemento B con A

29

Especificar Generalizacin
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Como el resto de elementos:

Doble click en elemento


Sel. elemento Men botn derecho Open
Specification o Shortcut a TabWindow/Propiedad
Sel. Sel elemento Men Browse
Specification
(nota: no aparece en Browser)

30

Crear una Asociacin


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Cargar Puntero de Ratn con Tool

Click en botn Toolbar


Men Tools Create Generalization

Click en Diagram Window Unir elemento B con A

31

Especificar Asociacin
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Como el resto de elementos:

Doble click, Sel (Browser Diagram Window) + Men botn derecho, Men Browse)

Aparece como un elemento


ms en el Browser
32

Especificar Asociacin
LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Especificar

Navegabilidad
Accesibilidad
public (+), protected (#), private (-)

Multiplicidad (1..n, 0..n, etc...)


-roleB
B
Agregacin
1
Nombre de roles
Nombre asociacin
Tipo de Contenido:

agregationName

-roleA

0..n

Referencia, Valor, no especificado

33

Organizacin del Modelo


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Se puede organizar el modelo mediante


Paquetes
(agrupa, contiene elementos del modelo)
Graphic Model

Estructura de Carpetas

34

Mover Elementos entre Paquetes


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Drag&Drop en el Browser de un
paquete a otro

Uno a Uno
Ojo: moviendo las clases no se mueven
las asociaciones!! (Rational Rose 2000>)
Son elementos con entidad

35

Copy Cut Paste de elementos entre diagramas


LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Dentro de un mismo modelo Rational


Rose se refiere a las figuras de los
diagramas

Los elementos que aparecen en el


Browser son nicos en todo el modelo.
Un elemento puede aparecer en mltiples

diagramas

Si es distinto paquete, indica de donde proviene


from <Paquete>
Graphic
(from Graphic Model)

Draw(aPanel : Panel) : void

36

Copy Cut Paste de elementos entre diagramas


LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Entre dos instancias de Rational Rose


Copy, Paste

crea los nuevos elementos


si no existen en el modelo destino
Si existen en el modelo destino pero el paste

es en distinto paquete.

Mantiene los existentes si existen en el


modelo destino y el paste es en el mismo
paquete
37

Ejercicio 1
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Finalizar Diagrama de Graphics Model

38

Ejercicio 2
LSI Laboratori ES:E

LESE-3 Tutorial con Rational Rose

Modelado de un Plan de Trabajo (Proyecto):


Project
GanttView
ID

Task Name

Resource
Duration

Start

Finish
Sep 21, '03
F

Sep 28, '03


S S M T W T

Oct 5, '03
S S M T W T

1
2
3
4

Preparacin Fiesta

4 days

Wed 10/1/03

Mon 10/6/03

1 day

Wed 10/1/03

Wed 10/1/03

Amigos Invitados

0 days

Wed 10/1/03

Wed 10/1/03

Comprar

3 days

Wed 10/1/03

Fri 10/3/03
Thu 10/2/03

Invitar Amigos

6
7
8

Comprar Comida

2 days

Wed 10/1/03

Comprar Bebida

3 days

Wed 10/1/03

Fri 10/3/03

1 day

Mon 10/6/03

Mon 10/6/03

0 days

Mon 10/6/03

Mon 10/6/03

10

Limpiar Casa

11

Todo Preparado

TaskGroup

RG
10/1

Dependency
10/6

Task
Milestone

39

Ejercicio 1.2
LESE-3 Tutorial con Rational Rose

LSI Laboratori ES:E

Pensar en el modelo de clases que


describe/representa un plan de trabajo
de un proyecto
Dibujarlo con Rational Rose

40

Potrebbero piacerti anche