Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
@startuml
title Ejemplo trazabilidad
!include estilos/draft.iuml
!include clases/Usuario.iuml
note left of Usuario
RI-001 - El
sistema deberá
almacenar la
información
correspondiente
a los usuarios
del sistema. En
concreto: ...
end note
note bottom of Usuario
RF-004 - El
sistema deberá
enviar
automáticamente
un email a los
usuarios cuando ...
end note
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo de clases
!include estilos/draft.iuml
!include clases/Alumno.iuml
!include clases/Asignatura.iuml
!include clases/Matricula.iuml
Alumno -[hidden]> Asignatura
Asignatura -[hidden]> Matrícula
'-[hidden]> es un truco para poner una clase al lado de otra
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo de asociación
!include estilos/draft.iuml
!include clases/Asignatura.iuml
!include clases/Matricula.iuml
Asignatura "0..*" -r- "0..*" Matrícula : apareceEn
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplos de roles I
!include estilos/draft.iuml
Persona "padre\n0..2" -- "0..*\nhijo" Persona : esPadreDe
@enduml
@startuml
title Ejemplos de roles II
!include estilos/draft.iuml
Vuelo "*\nsalidas" --- "origen\n1" Aeropuerto : saleDe
Vuelo "*\nllegadas" --- "destino\n1" Aeropuerto : llegaA
@enduml
'---------------------------------------------------------------------------
@startuml
title Equipos de fútbol. Modelo
!include estilos/draft.iuml
!include clases/Jugador.iuml
!include clases/Equipo.iuml
Jugador "*" -r- "0..1" Equipo :juegaEn
@enduml
'---------------------------------------------------------------------------
@startuml
title Equipos de fútbol. Objetos
!include estilos/draft.iuml
!include objetos/Jugadores.iuml
!include objetos/Equipos.iuml
j1 -- e2: juegaEn
j2 -- e2: juegaEn
j3 -- e1: juegaEn
j4 -- e1: juegaEn
j5 -- e1: juegaEn
j6 -[hidden]> j3
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo de generalización I
!include estilos/draft.iuml
!include clases/Turismo.iuml
!include clases/Camion.iuml
!include clases/Motocicleta.iuml
!include clases/Seguro.iuml
Persona "0..1" -- "*" Turismo : esPropietariaDe
Persona "0..1" -- "*" Motocicleta :esPropietariaDe
Persona "0..1" -- "*" Camión :esPropietariaDe
Turismo "1" -- "0..1" Seguro :tiene
Motocicleta "1" -- "0..1" Seguro :tiene
Camión "1" -- "0..1" Seguro :tiene
Turismo -[hidden]> Camión
Camión -[hidden]> Motocicleta
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo de generalización II
!include estilos/draft.iuml
!include clases/Turismo2.iuml
!include clases/Camion2.iuml
!include clases/Motocicleta2.iuml
!include clases/Seguro.iuml
!include clases/Vehiculo.iuml
Persona "0..1" -- "*" Vehículo :esPropietariaDe
Vehículo "1" -l- "0..1" Seguro :tiene >
Vehículo <|-- Motocicleta : {completa,disjunta}
Vehículo <|-- Camión
Vehículo <|-- Turismo
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo de composición
!include estilos/draft.iuml
Factura *-- "1..*\n{ordered}" LineaDeFactura
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación para clases UML I
!include estilos/draft.iuml
!include clases/NombreClase.iuml
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación para clases UML II
!include estilos/draft.iuml
!include clases/NombreClaseValor.iuml
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación para clases UML III
!include estilos/draft.iuml
"Clase A" "mult A\nrol A" --- "rol B\nmult B" "Clase B" : nombreAsociación
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación para objetos y enlaces UML I
!include estilos/draft.iuml
!include objetos/Objetos.iuml
obj1 -- obj2: __enlace__
obj1 -- obj3: __enlace__
obj1 -- obj4: __enlace__
' __Text__ también se puede usr para subrayar
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación para objetos y enlaces UML II
!include estilos/draft.iuml
!include objetos/Facturas.iuml
!include objetos/Productos.iuml
!include objetos/LineaDeFacturas.iuml
facturas -- c1: __posee__ <
c1 -- f1: __emitidaA__ <
f1 *-- lf1
f1 *-- lf2
f1 *-- lf3
lf1 -- p1: __contiene__
lf2 -- p2: __contiene__
lf3 -- p3: __contiene__
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación para clasificación UML I
!include estilos/draft.iuml
!include clases/Superclase.iuml
!include clases/Subclase1.iuml
!include clases/SubclaseN.iuml
Superclase <|-- Subclase1
Superclase <|-- SubclaseN : {restricciones}
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación para clasificación UML II
!include estilos/draft.iuml
MiembroCU <|-- Alumno
MiembroCU <|-- Empleado : {completa, solapada}
Empleado <|-- PAS
Empleado <|-- PDI : {completa, disjunta}
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación composición
!include estilos/draft.iuml
Compuesto *-- "mult" Componente
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo Factura
!include estilos/draft.iuml
!include clases/Factura.iuml
!include clases/LineaDeFactura.iuml
Cliente "1" -r- "*" Factura: emitidaA <
Factura *-- "1..*\n{ordered}" LineaDeFactura
LineaDeFactura "*" -r- "1" Producto :contiene
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo clase asociación I
!include estilos/draft.iuml
Empleado "*" -r- "*" Proyecto : trabajaEn
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo clase asociación II
!include estilos/draft.iuml
!include clases/Proyecto.iuml
!include clases/Empleado.iuml
!include clases/Esfuerzo.iuml
Empleado "*" -r- "*" Proyecto : trabajaEn
(Empleado, Proyecto) .. Esfuerzo
@enduml
'---------------------------------------------------------------------------
@startuml
title Diagrama de objetos con clases asociación
!include estilos/draft.iuml
!include objetos/Empleados.iuml
!include objetos/Proyectos.iuml
!include objetos/Esfuerzos.iuml
juan -- p1: __trabajaEn__
juan -- p2: __trabajaEn__
ana -- p1: __trabajaEn__
ana -- p2: __trabajaEn__
cristina -- p2: __trabajaEn__
(juan, p1) .. f1
(juan, p2) .. f2
(ana, p1) .. f3
(cristina, p2) .. f4
(ana, p2) .. f5
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo clase asociación con composición
!include estilos/draft.iuml
!include clases/Proyecto.iuml
!include clases/Empleado.iuml
!include clases/Esfuerzo.iuml
Empleado *-r- "*" Esfuerzo
Esfuerzo "*" -- "1" Proyecto
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo de restricción
!include estilos/draft.iuml
!include clases/Factura.iuml
!include clases/LineaDeFactura.iuml
Factura *-- "1..*\n{ordered}" LineaDeFactura
Factura "*" -- "1" Cliente :emitidaA
LineaDeFactura "*" -- "1" Producto :contiene
note as N1
{factura sin duplicados.
Un mismo producto
no debe aparecer dos
veces en la misma
factura.}
end note
Factura .. N1
N1 .. LineaDeFactura
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación enumerados
!include estilos/draft.iuml
!include enumerados/Sexo.iuml
!include enumerados/ViaPublica.iuml
!include enumerados/Categoria.iuml
Sexo -[hidden]> VíaPública
VíaPública -[hidden]> Categoría
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo de agregación
!include estilos/draft.iuml
!include clases/GeneroMusical.iuml
!include clases/Cancion.iuml
GéneroMusical "*" o-- "*" Canción
@enduml
'---------------------------------------------------------------------------
@startuml
title Notación agregación
!include estilos/draft.iuml
Agregado "multA" o-- "multB" Componente
@enduml
'---------------------------------------------------------------------------
@startuml
title Ejemplo fotos
!include estilos/draft.iuml
!include clases/Usuario.iuml
!include clases/Foto.iuml
!include clases/Categoria.iuml
Usuario "1" -- "*" Foto: sube
Foto "*" -l-o "*" Categoría: perteneceA
@enduml