Documentos de Académico
Documentos de Profesional
Documentos de Cultura
➢
Introducción: El Modelo del Análisis.
➢
El modelo conceptual.
➢
Diagrama de clases de UML.
●
Las clases y las interfaces.
●
Las relaciones.
●
Notas y mecanismos de extensibilidad.
➢
Directrices para elaborar el modelo conceptual.
➢
Modelo de los requisitos funcionales.
➢
Diagrama de secuencia del sistema.
➢
Contrato de las operaciones.
➢
Comprender la fase de análisis como una etapa de
modelización del sistema
➢
Estudiar las herramientas que aporta UML para esta
etapa de desarrollo.
➢
Descubrir los procesos de desarrollo a seguir durante
el análisis.
Descripción
Descripcióntextual
textualdel
delproblema
problema
Diagrama
Diagrama Contrato
Contratode
de
de
deSecuencia
Secuencia las
lasoperaciones
operaciones
Modelo
ModeloConceptual
Conceptual del
oo delsistema
sistema principales
principales
Modelo
Modelode
deDominio
Dominio Modelo
Modelode delos
los
requisitos
requisitosfuncionales
funcionales
Modelo
Modelodel
delAnálisis
Análisis
Modelo
ModeloConceptual
Conceptual
oo
Diagrama de
Modelo
Modelode
deDominio
Dominio clases de UML
Diagrama
Diagrama
de
deSecuencia
Secuencia Diagrama de
del
delsistema
sistema Secuencia de
UML
No m bre . e le g irPro y e cto (DniAlum no , idPro ye cto )
Re s po n s a bilidaBusca
d r e l a lu m no y a l proye cto, ca lcula r e l ba re m o pa ra e se p
Contrato
Contratode
de
a lum no e incluir e se proye cto a los e le gidos de l a lum no
Exce p cio n e s El a lum nos de be e xistir y e sta r m a tricu la do e n la a signa tura
las
lasoperaciones
operaciones
Sa lid a s
Pre co nd icio n e s
principales Contratos de
principales C. Larman
Po s co n dicio n e sPara ca da pro ye cto e le g ido :
- Fue cre a do e nlace Alum no Pro y e cto (Elig e n).
- Fue ro n m o dificado s lo s atributo s Ba re m o y prio ridad
➢
Modelo del diseño:Diagrama de clases del diseño.
Un Diagrama de clases de UML puede contener lo siguiente:
➢
Elementos estructurales: clases e interfaces.
➢
Relaciones entre esos elementos: dependencia,
generalización, asociación y realización.
➢
Notas y estereotipos.
➢
Una clase es una descripción de un conjunto de objetos que comparten:
atributos, operaciones, relaciones y semántica”.
➢
Una clase define los conceptos que forman parte del dominio del
problema o de la solución.
Dominio de la solución:
Clases
Nombre: Expresión nominal extraída del vocabulario del problema a modelar. Debe
comenzar con mayúscula.
Atributo: Propiedad del elemento que se está modelando.
[visibilidad] nombre [multiplicidad] [:tipo] [=valor inicial]
Operación: Es la abstracción de un servicio que puede prestar ese objeto
[visibilidad] nombre [(lista parámetros)] [:tipo retorno]
Responsabilidades: Obligación de esa clase con las demás clases.
➢
Visibilidad de los atributos y operaciones.
➢
Publica: Cualquier clase puede usar ese atributo u operación. (+)
➢
Paquete: Sólo el paquete en el que está definida la clase puede usar
ese atributo u operación. (~) (valor por defecto)
➢
Protegida: Cualquier clase hija puede usar ese atributo u operación.
(#)
➢
Privada: Sólo la propia clase puede usar ese atributo u operación. (-).
➢
Alcance de los atributos y operaciones
➢
De instancia: Cada instancia posee su propio atributo u operación.
(valor por defecto)
➢
De clase: Existe un único valor para todas las instancias de la clase. Se
representa subrayando el nombre.
➢
Multiplicidad
➢
De clase: Número de instancias que puede tener una clase.
➢
De atributo: Número de instancias de un atributo.
Multiplicidad de clase
ControladorDeRed 1
PuertoConsola[2..*]:Puerto
Multiplicidad de atributo
Item
Valor
Correspondencia
<<bind>>(cliente,pedido)
Correspondencia<cliente,pedido>
Correspondencia
➢
Una Interfaz sirve para especificar el servicio de las clases. Está
compuesta por un nombre y definición de un conjunto de operaciones.
➢
Hay dos representaciones distintas para una interfaz:
<<interface>>
GestorFlujoURL
abrirConexion() Gestores::GestorFlujoURL
analizarURL()
establecerURL()
➢
Las Relaciones modelan la forma en la que los elementos
estructurales se conectan entre sí.
➢
Tipo de relaciones:
➢
Dependencia.
➢
Generalización.
➢
Asociación.
➢
Realización.
➢
Una Dependencia modela una relación de uso.
➢
En una dependencia no es necesario especificar un nombre.
B Dependencia
AA
bb1(a1:A)
Asociación
➢
Un rol es la cara que la clase de un extremo de la asociación presenta a
la clase del otro extremo
Navegabilidad
Persona Empresa
.empleado .patron
Nombre de rol
Multiplicidad
1..* 0..1
Persona .empleado
Empresa
.patron
1 1..*
Puzle Pieza
➢
Una Composición es una forma de agregación con una fuerte relación de
pertenencia y vida de las partes con el todo.
1 1..* Cuenta
Banco
Composición
1
GrupoUsuarios Usuario Clave
-Clave
Visibilidad
➢
Un cualificador es un atributo de algunas de las clases de la asociación
que pasa a ser un atributo asociado a la clase del otro extremo.
0..1
Directorio nomArchivo Archivo
Cualificador
1..* 0..1
Persona Empresa
.empleado .patron
Clase asociación
TrabajaPara
descripción
fechaContrato
salario
Dependencia
<<Interface>>
Collection
.add() Collections
addAll()
...
Realización
LinkedList
<<contenedor>>
ColaAcciones
{versión =3.2}
{persistente} Valor etiquetado
añadir(a:Accion)
Estereotipo eliminar(n:Integer)
<<consulta>>
longitud():Integer
<<ayuda>>
reordenar()
Bono
CuentaCorriente .Propiedad
tasa.de Interes .tasacion
.valorActua()
.valorActual()
.valorActual()
Restricción simple
Empresa
{segura}
Restricción múltiple
Cuenta {or}
Persona
0..1 esposa
sexo:{hombre,mujer}
0..1 marido
Restricción simple y
formal {self.esposa.sexo = mujer and
self.marido.sexo = hombre}
Pasos a seguir:
Pasos a seguir:
• Es ta b le c im ie n t o
• Ofic in a d e a t e n c ió n a l p ú b lic o
Ejemplos
Lu g a re s • De s p a c h o d e l p ro fe s o r
• Alm a c é n d e a rtíc u lo s
• Ce n tro a c a d é m ic o
• Co m p a ñ ía a é re a
• Un iv e rs id a d
Org a n iz a c io n e s • En tid a d Ba n c a ria
• De p a rt a m e n t o
• Ca jó n d e m á q u in a re g is t ra d o ra
Co s a s t a n g ib le s • Ca je ro a u t o m á t ic o
• Pro d u c t o
• Te rm in a l Pu n to d e Ve n t a
• Ca t á lo g o d e a rt íc u lo s
• Lis t a d e a lu m n o s
Ejemplos
D o c u m e n t o s fís ic o s o v irt u a le s• Cu e n t a c o rrie n t e
• Re c ib o
• Co n t ra t o la b o ra l
• Es p e c ific a c ió n d e u n p ro d u c t o
Es p e c ific a c io n e s , re g la s , d is e ñ•o Re
o g la d e n e g o c io (De v o lu c io n e s /Ca n c e la c io n e s )
D e s c rip c io n e s • Re g la s d e c re a c ió n d e p ro d u c to /s e rv ic io s .
• Ma n u a l d e p ro c e d im ie n t o s y s e g u rid a d
• Ve n t a
Tra n s a c c io n e s • Ma t ríc u la
• Re s e rv a
• Pr e s ta m o
Ev e n t o s • Ma t ríc u la
• Ce rt ific a c ió n a c a d é m ic a
Ejemplos
• Au t o riza c ió n d e p a g o
• Ca n c e la c ió n d e re s e rv a
• In g re s o h o s p ita la rio l
• Re c ip ie n t e
Co n t e n e d o re s d e c o s a s • Au t o c a r
• Un id a d d e Urg e n c ia .
• Pla n d e e s t u d io s
• Ele m e n to s d e l re c ip ie n t e
It e m s d e l c o n t e n e d o r • Pa s a je ro
• Bo x d e Urg e n c ia s
• As ig n a t u ra s
• Tip o d e im p u e s to a p lic a b le
• Tip o d e c o n s e rv a c ió n d e l p ro du c to
Tipo de categorías
Ejemplos
• Tip o d e p ro c e d im ie n to te ra p é u tic o
• Tip o d e c o n tra to d e tra b a jo
• Sis te m a d e p a g o a c ré d ito
• Sis te m a d e Exp e die n te s
Ot ro s s is t e m a s e x t e rn o s a l S u •D Sis te m a d e a u to riza c ió n d e p a g o c o n ta rje ta
• Sis te m a d e c o n tro l d e te m p e ra tu ra
• Sis te m a d e e n v ío d e p e d id o s .
Pasos a seguir:
1) Identificar posible asociaciones.
2) Representarlas en el MC y Seleccionar asociaciones
válidas.
3) Nombrar las asociaciones seleccionadas.
4) Identificar multiplicidad.
6 5 2 7 10
3
Proyecto Asignaturas
9
1
4
6 5y2 7 10
3
Proyecto Asignaturas
9
1
4
Alumno Expediente
Poseen
Asignados
FormadoPor
Eligen
Recomienda
Proyecto Asignaturas
FormadoPor
Define
0..3
0..*
0..*
FormadoPor
Asignados
Eligen
1..10
1..*
Recomienda
Proyecto 0..* 0..*
Asignaturas
1..*
1..*
FormadoPor
Define
Asignatura
Alumno
Expediente Proyecto
fechaNacimiento
.asignatura .codAsignaturas
Fecha
FormadoPor
0..*
NOTA
0..*
0..3
Eligen
prioridad
Asignados
Baremo
1..10
1..*
Proyecto Recomienda Asignaturas
titulo codAsignatura
0..* nombre
descripción 0..*
créditos
1..*
Define
1..*
FormadoPor
Profesor
nombre
DNI Plan Estudios
Ingeniería del software I (2ºITG) 60 Unidad 2: Te
Seguimos con...
➢
Introducción: El Modelo del Análisis.
➢
El modelo conceptual.
➢
Diagrama de clases de UML.
●
Las clases y las interfaces.
●
Las relaciones.
●
Notas y mecanismos de extensibilidad.
➢
Directrices para elaborar el modelo conceptual.
➢
Modelo de los requisitos funcionales.
➢
Diagrama de secuencia del sistema.
➢
Contrato de las operaciones.
Descripción
Descripcióntextual
textualdel
delproblema
problema
Diagrama
Diagrama Contrato
Contratode
de
Modelo
ModeloConceptual
Conceptual de
deSecuencia
Secuencia las
lasoperaciones
operaciones
oo
del
delsistema
sistema principales
principales
Modelo
Modelode
deDominio
Dominio
Modelo
Modelode delos
los
requisitos
requisitosfuncionales
funcionales
Modelo
Modelodel
delAnálisis
Análisis
SISTEMA
SISTEMA
➢
Elementos estructurales: Objetos y Actores
➢
Relaciones entre estos: Mensajes entre
Actores/Objetos y Objetos/Objetos.
Objetos
Mensajes
miCliente
miCliente:Cliente
Actor
:Cliente :Cliente
Construcción del
objeto :Cliente
Línea de vida
Foco de control:
objeto activado
.aa:A .bb:B
[n][var1:=]nombreMens([var2][:Tipo],..)[:Tipo]
aa:A bb:B
.mens1()
mens2()
mens3()
a a :A b b :B
[ c o n d ic ió n ] m e n s 1 ()
[ ! c o n d ic ió n ] m e n s 2 ()
[ c o n d ic ió n ] m e n s 1 ()
[ ! c o n d ic ió n ] m e n s 2 ()
a a :A b b :B c c :C :D
.mens0()
*[ c o n d ic ió n ] m e n s 1 ( m e n s 2 ()
)
m e n s 3 ()
m e n s 4 ()
*[i= 1 . . N ]
*m e n s 5 ()
:Ce n t ra lit a
e :In t e rlo c u t o
1 :d e s c o lg a r:In t e rlo c u t o
r
r r
2 :d a rTo n o (
)
3 :*[ i= 1 . . 9 ] m a rD ig (
d) 3 . 1 :e n ru t a rLla m a d a ( e , r
)
3 . 2 :lla m a r( )
3 . 2 . 1 :d e s c o lg a r
3 . 3 :< < c re a t e > :Co n e x ió n
>
4 :c o lg a r
4 . 1 :d e s Co n e c t a r( e ,
r)
< < d e s t ro y > >
:Sistema
.op1()
op2()
op3()
Pasos a seguir:
1. Identificar las operaciones principales del sistema de la
descripción del problema.
2. Hacer una descripción de la funcionalidad que proporciona la
operación (recurrir a escenarios).
3. Identificar los actores que inician dichas operaciones.
4. Asignarles un nombre y tratar de Identificar los parámetros de
dichas operaciones.
5. Asignar un nombre a todo el sistema.
6. Representar las operaciones, los actores y el sistema en un
Diagrama de Secuencia del Sistema.
.definirProyecto( ¿?,¿?,¿?,¿?)
.elegirProyecto(idAlu,idPro,prio)
.asignarProyecto()
:SAP
:Responsable
matricularAlumnos(idAlu, listIdAsig)
definirProyecto(¿?,¿?,¿?,¿?)
elegirProyecto(idAlu,idPro,prio)
.asignarProyecto()
Elementos de un contrato
N o m b re N o m b re d e la o p e ra c ió n y s u s p a rá m e t ro s
Re s p o n s a b ilid a d D e s c rip c ió n in f o rm a l d e la s re s p o n s a b ilid a d e s
q u e d e b e c u m p lir la o p e ra c ió n .
Tip o Co n c e p t o , c la s e o in t e rfa z re s p o n s a b le d e la o p e ra c ió n .
No t a s No t a s p a ra e l d is e ñ o , a lg o rit m o , ..
Exc e p c io n e s Ca s o s e xc e p c io n a le s .
S a lid a s Me n s a je s o d a t o s e n via d o s fu e ra .
Pre c o n d ic io n e s S u p o s ic ió n a c e rc a d e l e s t a d o d e l s is t e m a o d e lo s o b je t o s
.d e l Mo d e lo Co n c e p t u a l a n t e s d e e je c u t a r la o p e ra c ió n .
P o s c o n d ic io n e s Es t a d o d e l s is t e m a o d e lo s o b je t o s d e l Mo d e lo
. Co n c e p t u a l d e s p u é s d e la e je c u c ió n d e la o p e ra c ió n
➢
Las poscondiciones pueden provocar cambios en el Modelo
Conceptual.
➢
Las poscondiciones deben expresarse mediante una frase verbal en
pretérito.
:Responsable :SAP
.matricularAlumnos( ..)
.definirProyecto(.. )
.elegirProyecto(..)
.asignarProyecto()
0..*
estado
1..*
PlanEstudios Asignaturas
➢
objetos: PlanEstudios, Alumno, Asignatura y Expediente.
Expediente
1..*
0..*
estado
AsigDeExpe
estado
1..*
0..*
Asignaturas
Asignaturas
Asignatura
➢
objetos: Profesor, Asignatura y Proyecto.
.
baremo
prioridad
Asignatura Expediente
➢
objetos: PlanEstudios, Alumno, Expediente,Asignatura y Proyecto.
0..*
1..10 Alumno
Proyecto
.
baremo
prioridad