Documentos de Académico
Documentos de Profesional
Documentos de Cultura
16-5-23 - Módulo IV - POO - Paradigma y UML-21-38
16-5-23 - Módulo IV - POO - Paradigma y UML-21-38
Conceptos Principios o ideas no tangibles, utilizados para organizar o llevar cuenta de actividades de negocios
y/o comunicaciones. Ejemplo: Materia, Carrera, Tratamiento Médico.
Eventos Cosas que suceden, que habitualmente vinculan a clases de alguna de las otras categorías, en una
fecha y/u horas concretas, o como pasos dentro de una secuencia ordenada. Ejemplo: Aterrizaje,
Inscripción, Venta, Reserva, Donación.
Modelos y la importancia de modelar
22
¿Qué es un Modelo?
23
¿ Por qué Modelamos?
Nos dan una plantilla que nos guía en la construcción del sistema.
24
¿Qué es un UML?
25
Contribuciones al UML
Meyer Harel
Gamma, et al
Statecharts
Before and after Frameworks and patterns,
conditions
HP Fusion
Booch
Operation descriptions and
Booch method message numbering
Rumbaugh Embley
OMT Singleton classes and
high-level view
Jacobson Wirfs-Brock
OOSE Responsibilities
Shlaer - Mellor Odell
Object lifecycles Classification
26
¿ Por qué UML es un lenguaje?
27
Estructura de UML
28
Ministerio de Educación y Deportes
Diagrama de Clases
Diagrama de Clases
Clase Clase Activa
Alumno
ManejadorNotas
Alumno
nombre de la clase
atributos
operaciones
Ministerio de Educación y Deportes
Relaciones: Asociación
Es una relación estructural que especifica que los objetos de un elemento se conectan a los
objetos de otro.
asociación multiplicidad
Gasto 1 TipoDeGasto
.
navegabilidad
Ministerio de Educación y Deportes
1..*
Factura DetalleFactura
agregación
Es una variación de la agregación simple, con una fuerte relación de pertenencia y vidas coincidentes
de la parte con el todo.
todo parte
Estantería Estante
composición
Ministerio de Educación y Deportes
Relaciones: Generalización
Es una relación entre un elemento general (superclase o padre) y un tipo más específico de ese
elemento (subclase o hijo). El hijo puede añadir nueva estructura y comportamiento, o modificar el
comportamiento del padre.
ElementoConInterés ElementoAsegurable
herencia
herencia múltiple
CuentaBancaria
simple
CuentaCorriente CuentaDeAhorro
Ministerio de Educación y Deportes
Relaciones: Dependencia
Es una asociación de uso, la cual especifica que un cambio en la especificación de un elemento puede
afectar a otro elemento que lo utiliza, pero no necesariamente a la inversa.
dependencia
Ministerio de Educación y Deportes
Relaciones: Contención
Es una relación que especifica que una clase esta contenida dentro de otra.
Contención
cd Logical Model
VentanaInicio ControladorMouse
Ministerio de Educación y Deportes
Instancias de la clase
Privada -
1
1
1 1 Rubro
Ejemplar Pelicula
0..* 1
0..*
1 1 Categoria
Reserva 1..*
0..* Actor
Director
Ministerio de Educación y Deportes
class Domain Objects 111 mil
«entity»
«entity»
«entity» Genero
PaisDeOrigen
Pelicula descripcion
idioma 1..* paisDeOrigen género
añoEstreno nombre
nombre 1
disponible
duracion
fechaIngreso
nombre
Ejemplo «entity»
personaje
«entity»
Elenco
nombreEnPelicula 1..*
elenco
tituloOriginal
estaDisponible()
estaEnCartel()
calificacion
1
«entity»
Calificacion
mostrarFuncHabilitadas() descripcion
Personaje nombre
animado 1
apellido «entity»
nombre funcion 1 Sala
sexo pelicula
rol 0..* sala capacidad
numero
«entity» 1..*
«entity» estaDisponible()
Rol
Funcion 1
descripcion sala
diaSemana 1..*
nombre
duracion
fechaHabilitacion
horaInicio
«entity»
numero
Cine
calcularDisponibilidad()
capacidadSala() direccion
controlarHoraFuncion() fechaInauguracion
estaEnLaFuncion() nombre
estasIniciada() buscarDisponibilidadSalasParaPeriodo()
hayLugar() buscarPreciosEntrada()
mostrarDiaHoraPel() mostrarCine()
permiteVenta() obtenerInfoHorariosFuncion()
1 funcion
1..*
«entity»
Entrada 0..* programacion
horarioFunción
fechaFuncion 0..*
«entity»
fechaVenta
Programacion «entity»
horaFuncion
horaVenta estado HorarioFuncion
pelicula fechaFinProgramacion diaDeSemana
precioCobrado fechaInicioProgramacion duracionIntervaloFunc
sala fechaProgramacion duracionPublicidad
ticketNro horaProgramacion esTrasnoche
estaAnulada() estáCompleta() horaPrimeraFuncion
estaEnPeriodoVigencia() horaUltimaFuncion
estaIniciadaFuncion() mostrarHorarioFuncion()
estaVigente()
mostrarProgramacion()