aesm - practica 6 - documentacion
TRANSCRIPT
-
7/31/2019 AESM - Practica 6 - Documentacion
1/28
Ingeniera multimedia
ANALISIS Y ESPECIFICACION DE SISTEMAS MULTIMEDIA
PRCTICA 6
Modelado con UML
Carlos Javier Lpez Lpez
Rubn Martnez Vilar
Cristina Palomares Crespo
Vctor Puche Leal
Grupo: Mircoles 17:00 19:00
-
7/31/2019 AESM - Practica 6 - Documentacion
2/28
Prctica 6: Modelado con UML 2
INDICE DE CONTENIDOS
INTRODUCCIN ....................................................................................................................................... 3
HERRAMIENTA CASE: MICROSOFT VISIO 2010 ....................................................................................... 3
DIAGRAMAS DE CASOS DE USO .............................................................................................................. 4
ESQUEMA DE CASOS DE USO .................................................................................................................. 6
DIAGRAMA DE CLASES ............................................................................................................................ 7
DIAGRAMAS DE INTERACCIN: SECUENCIA ......................................................................................... 10
DIAGRAMAS DE INTERACCIN: COLABORACIN ................................................................................. 16
DIAGRAMA DE ESTADO ......................................................................................................................... 20
DIAGRAMAS DE ACTIVIDAD .................................................................................................................. 21
-
7/31/2019 AESM - Practica 6 - Documentacion
3/28
Prctica 6: Modelado con UML 3
INTRODUCCIN
En este documento se incluyen los diagramas UML tal y como se indican en el ndice de contenidos
acompaados cada uno con una descripcin y notas aclaratorias.
Debido al poco espacio horizontal en el documento, cada diagrama enlaza a la imagen de tamao
real de este, siempre que el documento se abra en el mismo directorio donde se encuentra la
carpeta Diagramas.
Adems, acompaando a los diagramas de casos de uso y de clases, se incluye un esquema con
distintos enlaces a sus respectivos diagramas de interaccin y actividad.
HERRAMIENTA CASE: MICROSOFT VISIO 2010
Para la realizacin de los diagramas hemos empleado la herramienta CASE Microsoft Visio 2010 yaque es una herramienta sencilla de utilizar, que incluye todos los diagramas UML necesarios para la
realizacin de esta prctica y que podemos obtener gratuitamente gracias al acuerdo entre la
Universidad de Alicante y Microsoft.
Microsoft Visio 2010 incluye la especificacin UML 2.2, que a pesar de no ser la ltima hay que decir
que no tiene ms de 3 aos y solo ha habido 2 versiones posteriores, por lo que sigue siendo
relativamente actual.
-
7/31/2019 AESM - Practica 6 - Documentacion
4/28
Prctica 6: Modelado con UML 4
DIAGRAMAS DE CASOS DE USO
Esta red social presenta tres roles distintos:
ADMINISTRADORSer el que gestione la red social en su totalidad. Podr eliminar comentarios del muro, eliminar a
usuarios que no presenten un comportamiento adecuado y no cumpla las condiciones de uso,
gestionar los grupos, y editar el calendario.
USUARIO NO REGISTRADOTendr un caso de uso: Registro. El registro de un nuevo usuario conlleva que el sistema realice una
validacin de su nombre de usuario, de la contrasea y que adems enve a dicho usuario un email
de confirmacin.
http://diagramas/Casos%20de%20uso/CasosUso_NoRegistrado.pnghttp://diagramas/Casos%20de%20uso/CasosUso_Administrador.png -
7/31/2019 AESM - Practica 6 - Documentacion
5/28
Prctica 6: Modelado con UML 5
USUARIO REGISTRADOEl Login incluye una validacin de usuario (comprobando que existe en la base de datos).Tras iniciar
sesin en la red social, podr hacer uso de cualquiera de los recursos. En caso de olvidar contrasea
el sistema enviar un email de confirmacin para que el usuario demuestre que el perfil es suyo y
tras el cambio de contrasea el sistema la validar o no. El usuario registrado puede recibir
peticiones de amistad, que aceptar o rechazar. Buscar amigos y los aadir, comentar en sus
muros y visitar sus perfiles. La informacin personal que proporciona al registrarse la podr
modificar en cualquier momento. El usuario editar el calendario de conciertos, aadiendo, votando
y apuntndose a ellos. Tambin est la posibilidad de compartirlo con otras redes sociales, esto
incluye una comprobacin de la conexin con la red social (el usuario tendr que iniciar sesin en la
otra red). Crear grupos o se unir a los ya creados, aadir amigos y escribir comentarios y podr
compartir fotografas y vdeos del momento. Existe una pestaa Tweets en la que el usuario leer los
tweets enviados de la red social y sobre ella. Por ltimo el usuario registrado publicar comentarios,
pginas, fotos y vdeos.
http://diagramas/Casos%20de%20uso/CasosUso_Registrado.png -
7/31/2019 AESM - Practica 6 - Documentacion
6/28
Prctica 6: Modelado con UML 6
ESQUEMA DE CASOS DE USO
A continuacin se presenta el esquema de casos de uso junto con sus respectivos enlaces a los
diagramas de interaccin.
No registradoo Registro (Secuencia,ColaboracinyActividad)
Usuario registrado
o Login (Secuencia,ColaboracinyActividad)
Olvidar contrasea
o Ver tweets
o Ver perfil personal
Modificar perfil (Secuencia,ColaboracinyActividad)
o Ir a amigos
Comentar en muro(Secuencia,ColaboracinyActividad)
Ver perfil de amigo (Actividad)
Buscar amigos
Aadir (Secuencia,ColaboracinyActividad)
Recibir peticin de amistad (Actividad)
o Editar calendario
Aadir evento y compartir (Secuencia,ColaboracinyActividad)
Editar evento (SecuenciayColaboracin)
Votar evento (Actividad)
Apuntarse a evento y compartir (EstadoyActividad)
o Grupo Crear grupo y aadir amigos (Secuencia,ColaboracinyActividad)
Editar grupo(SecuenciayColaboracin)
Unirse a grupo
Compartir grupo
o Publicar (Secuencia,ColaboracinyActividad)
Administrador
o Editar muro
o Banear usuarios (SecuenciayColaboracin)
o Gestionar grupos
o Editar calendario
-
7/31/2019 AESM - Practica 6 - Documentacion
7/28
Prctica 6: Modelado con UML 7
DIAGRAMA DE CLASES
La mayor parte de los contenidos de una red social son creados y manipulados por los usuarios.
Como bien se puede observar en el diagrama de clases de nuestra red social la clase principal
corresponde a los usuarios (USUARIO) y todas las dems se encuentran asociada a ella. Tambin hay
que destacar que esta clase es la que realiza la mayora de las operaciones, a parte claro, de las
funciones de los administradores. De las dems acciones se encarga el sistema.
http://diagramas/Clases/Clases.png -
7/31/2019 AESM - Practica 6 - Documentacion
8/28
Prctica 6: Modelado con UML 8
TABLA RESUMEN
De Hacia Asociacin Multiplicidad Observaciones
USUARIO MURO tiene 1 | 1
PAGINA MURO tiene 1 | 1
EVENTO MURO tiene 1 | 1
GRUPO MURO tiene 1 | 1
MURO COMENTARIO tiene 1 | 0..*
USUARIO PAGINA seguir 1..* | 0..*
USUARIO EVENTO seguir 1..* | 0..*
USUARIO GRUPO seguir 1..* | 0..*
USUARIO PAGINA administrar 1..* | 0..*
USUARIO EVENTO administrar 1..* | 0..*
USUARIO GRUPO administrar 1..* | 0..*
ALBUM PAGINA pertenece 0..* | 1
ALBUM EVENTO pertenece 0..* | 1
ALBUM GRUPO pertenece 0..* | 1
ALBUM USUARIO pertenece 0..* | 1
ALBUM IMAGEN_FOTO 1 | * composicin
USUARIO COMENTARIO administrar 1 | 0..*
USUARIO USUARIO amigo_de 1 | 1 reflexiva
ACLARACIONES
Tal y como se indica en el diagrama de casos de uso, la operacin/asociacin administrar
engloba a las funciones crear, editar y eliminar. Se ha plasmado as en el diagrama
para ahorrar espacio.
Internamente hay un LBUM genrico, invisible para los usuarios, en cada una de las clasesUSUARIO, PGINA, EVENTO y GRUPO. El sistema lo crea con la primera imagen que se sube
sin un lbum especfico.
La clase ADMINISTRADOR no est asociado con ninguna otra por cuestiones de espacio. Esta
clase puede administrar (descrito en este apartado) a cualquier otra de las presentes clases
en el diagrama as como a otros administradores.
La clase PETICION_AMIS (peticin de amistad) surge de la asociacin entre dos usuarios
(clase USUARIO, asociacin reflexiva). Sera un registro en la base de datos que se crea
cuando un usuario manda a otro una peticin de amistad. El sistema se encarga de la
gestin. Hay que decir que las peticiones de amistad son revisables y puede cambiar suestado en cualquier momento.
-
7/31/2019 AESM - Practica 6 - Documentacion
9/28
Prctica 6: Modelado con UML 9
Puede que la terminologa usada en el diagrama no se corresponda con otros diagramas del
documento. No obstante se mantiene su significado. Por ejemplo en el diagrama de casos de
uso aparece concierto su equivalente en este diagrama (diagrama de clases) sera
evento.
ESQUEMA DE CLASES
A continuacin se presentan algunas clases enlazadas con sus respectivos diagramas de casos de
uso, colaboracin y estado.
ADMINISTRADOR
o Diagrama de casos de uso de administrador
o Diagrama de colaboracin(Banear usuario)
USUARIO
o Diagrama de casos de uso de usuario registradoo Diagramas de colaboracin
Registro
Login
Editar perfil
Crear evento
Crea grupo
Editar evento/grupo
Agregar amigo
Publicacin
Banear usuario
EVENTO
o Diagrama de estado
COMENTARIO
o Diagrama de colaboracin(Publicacin)
-
7/31/2019 AESM - Practica 6 - Documentacion
10/28
Prctica 6: Modelado con UML 10
DIAGRAMAS DE INTERACCIN: SECUENCIA
Para los diagramas de secuencia nos hemos centrado en los casos de usos ms importantes y que
requieren ms interacciones.Son los siguientes:
- Registro.
- Login.
- Edicin de perfil.
- Creacin de eventos.
- Modificacin/Eliminacin de eventos/grupos.
- Agregar amigos.
- Creacin de grupos.
- Publicar comentarios.
- Banear usuarios.
El resto de casos no se han realizado ya que apenas requieres interaccin, como pueden ser Vertweets o Votar concierto, el primero solo requiere visitar el perfil del usuario y el segundo es
simplemente una accin de clic.
Las clases que intervienen en las acciones son:
- USUARIO: el que solicita las acciones, y espera respuesta, usando el interfaz web.
- ADMINISTRADOR
- INTERFAZ/CONTROLADOR: con esto nos referimos a la interfaz web, lo que ve el usuario, as
como a la tecnologa que realiza las peticiones al SGBD y otras acciones. Esto puede referirse
a PHP, javascript, etc.
o Esta clase engloba las que aparecen el diagrama de clases como MURO, EVENTO oGRUPO.
- SGBD: el sistema gestor de bases de datos, aunque no aparezca, evidentemente realiza las
operaciones en la base de datos.
Segn la simbologa de Microsoft Visio y mi adaptacin a lo visto en teora, tenemos lo siguiente:
OBJETOS
Muestra la instancia y/o la clase delobjeto.La lnea discontinua indica la lnea
de vida del objeto.Sobre esta lnea se muestran losrectngulos de activacin, tiempodurante el cual ese objeto realizaacciones.
MENSAJES SNCRONOSSe enva un mensaje y se esperarespuesta antes de seguir.
MENSAJES ASNCRONOSSe enva un mensaje pero no esnecesario esperar respuesta paraseguir trabajando.
RETORNO Devuelve un valor como respuesta aun mensaje.
-
7/31/2019 AESM - Practica 6 - Documentacion
11/28
Prctica 6: Modelado con UML 11
CREACIN
Una accin que tiene comoresultado la creacin de una nuevaclase o una instancia de clase.
DESTRUCCIN
Una accin que tiene comoresultado la eliminacin de una
clase o una instancia de clase.
Otras cosas a tener en cuenta sobre los diagramas de secuencia realizados:
- Cada vez que se enva un mensaje, se debe devolver una respuesta, pero para mayor
claridad en los diagramas hay algunos casos en los que no se ha puesto, como puede ser
despus de alguna accin del sistema gestor de bases de datos (SGBD).
- En relacin a lo anterior, cuando un objeto enva un mensaje sncrono, su cuadro de
activacin debera aparecer hasta que recibe respuesta pero, para mayor claridad, en
algunas ocasiones no es as, como cuando se divide la lnea de tiempo para representar el
mejor y peor caso.
- Han sido marcadas en rojo las activaciones finales.
A continuacin explico un poco que es lo que podemos encontrar en cada diagrama:
REGISTROEs el proceso de registro de una persona que no es miembro de la red social, por lo que no tiene una
clase asociada. Esta persona realiza el proceso de registro mediante un formulario web y si todo ha
salido bien se crea una instancia de la clase USUARIO.
http://diagramas/Secuencia/Secuencia_Registro.png -
7/31/2019 AESM - Practica 6 - Documentacion
12/28
Prctica 6: Modelado con UML 12
LOGINProceso de identificacin de un usuario ya registrado para acceder a la red. Tambin se incluye el
caso en el que si el usuario no recuerda la contrasea, pueda solicitar una nueva mediante el email
con el que se registr.
EDITAR PERFILLos usuarios pueden modificar las preferencias de su propia cuenta/perfil, aqu se describe el
proceso que comienza una vez que el usuario ha accedido a la pgina de edicin desde el acceso de
su propio perfil. Una vez que ha realizado los cambios, pulsa el botn de guardar cambios y el
controlador verifica los campos y opciones modificadas y enva las operaciones de modificacin al
SGBD o avisa al usuario de algn error.
http://diagramas/Secuencia/Secuencia_EditarPerfil.pnghttp://diagramas/Secuencia/Secuencia_Login.png -
7/31/2019 AESM - Practica 6 - Documentacion
13/28
Prctica 6: Modelado con UML 13
CREAR EVENTOProceso de creacin de un evento, es el mismo usuario que lo crea el que administra el evento.
CREAR GRUPOProceso de creacin de un grupo. Adems se incluye un paso final en el que se le pregunta al usuario
si desea invitar a amigos. Podemos observar cmo se introduce un mensaje asncrono, ya que
cuando el usuario selecciona los amigos no tiene que esperar a que estos contesten a la peticin
para seguir realizando acciones en la red.
http://diagramas/Secuencia/Secuencia_CrearGrupo.pnghttp://diagramas/Secuencia/Secuencia_CrearEvento.png -
7/31/2019 AESM - Practica 6 - Documentacion
14/28
Prctica 6: Modelado con UML 14
EDITAR EVENTO/GRUPOEl usuario creador del evento o grupo puede realizar modificaciones en este. Tambin se introduce
la opcin de eliminar.
AGREGAR AMIGOProceso de agregacin de amigo. Como se puede ver, en su mayor parte es asncrono, ya que tanto
el usuario como el controlador pueden seguir realizando acciones una vez enviados sus respectivos
mensajes.
http://diagramas/Secuencia/Secuencia_AgregarAmigo.pnghttp://diagramas/Secuencia/Secuencia_EditarEventoGrupo.png -
7/31/2019 AESM - Practica 6 - Documentacion
15/28
Prctica 6: Modelado con UML 15
PUBLICACINProceso de publicacin de algn contenido (como comentario) en el muro de un evento, amigo,
grupo o perfil propio. Estas publicaciones o comentarios pueden incluir algn enlace a contenido
multimedia, o alguna foto que se guardar en su respectivo lbum.
BANEAR USUARIOProceso de baneo de usuario por parte de algn administrador despus de recibir la denuncia o
aviso de otros usuarios. El administrador evala las denuncias y decide si marcar como inactivo a
este usuario.
http://diagramas/Secuencia/Secuencia_BanearUsuario.pnghttp://diagramas/Secuencia/Secuencia_Publicacion.png -
7/31/2019 AESM - Practica 6 - Documentacion
16/28
Prctica 6: Modelado con UML 16
DIAGRAMAS DE INTERACCIN: COLABORACIN
Utilizando como referencia los diagramas de secuencia, hemos realizado estos diagramas de
colaboracin utilizando los mejores casos, ya que son suficientes para indicar las relaciones de
interaccin entre los distintos objetos.
REGISTROProceso simple mediante el cual una persona interacta con el formulario de registro y el motor
web lo verifica y enva las operaciones al SGBD.
LOGINAl igual que el anterior, pero esta vez es un formulario de identificacin.
http://diagramas/Colaboracion/Colaboracion_Login.pnghttp://diagramas/Colaboracion/Colaboracion_Registro.png -
7/31/2019 AESM - Practica 6 - Documentacion
17/28
Prctica 6: Modelado con UML 17
EDITAR PERFILEn este el usuario realiza los cambios necesarios desde su propio perfil (en modo edicin), ya sean
cambio de avatar, campos de formulario, checkboxes, etc. Cuando termina y hace clic en guardar
cambios el sistema verifica los campos modificados.
CREAR EVENTODespus de hacer clic en agregar eventos desde la interfaz de calendario de eventos, al usuario se le
presenta con un formulario que rellena y los enva al sistema mediante la opcin Crear evento.
http://diagramas/Colaboracion/Colaboracion_CrearEvento.pnghttp://diagramas/Colaboracion/Colaboracion_EditarPerfil.png -
7/31/2019 AESM - Practica 6 - Documentacion
18/28
Prctica 6: Modelado con UML 18
CREAR GRUPOEl usuario introduce los datos del nuevo grupo, el sistema los verifica y lo crea sobre la base de datos
y a continuacin el usuario invita a varios amigos (multiobjeto USUARIO) al grupo.
EDITAR EVENTO/GRUPOSigue el mismo proceso que para editar un perfil. Hay que tener en cuenta que solo un usuario
creador del evento o grupo puede realizar cambios.
AGREGAR AMIGOAqu podemos ver la interaccin entre dos usuarios por medio de la interfaz/controlador, en este
caso sern los perfiles de usuario.
http://diagramas/Colaboracion/Colaboracion_AgregarAmigo.pnghttp://diagramas/Colaboracion/Colaboracion_EditarEventoGrupo.pnghttp://diagramas/Colaboracion/Colaboracion_CrearGrupo.png -
7/31/2019 AESM - Practica 6 - Documentacion
19/28
Prctica 6: Modelado con UML 19
PUBLICACINInteraccin entre el usuario y el muro de publicacin, que puedes ser el suyo propio, el de un amigo
o el de un grupo. El usuario escribe/enva el contenido a publicar a la interfaz de muro, y el
controlador la enva al SGBD para guardarla en la BD, finalmente confirma al usuario (mostrando la
publicacin) que todo ha ido bien.
BANEAR USUARIOAqu interviene cuatro tipos de objetos. Un conjunto de usuarios denuncian a otro usuario desde el
perfil de este, el cul avisa al administrador que se encarga de evaluar las denuncias y desactivar al
usuario denunciado en la base de datos, notificndole posteriormente.
http://diagramas/Colaboracion/Colaboracion_BanearUsuario.pnghttp://diagramas/Colaboracion/Colaboracion_Publicacion.png -
7/31/2019 AESM - Practica 6 - Documentacion
20/28
Prctica 6: Modelado con UML 20
DIAGRAMA DE ESTADO
EVENTOUn evento se mantendr en estado de Espera mientras se comprueba la fecha en que comienza. En
esta red social un evento ser un concierto o festival. En el momento en que se cumpla la fecha deinicio, el evento pasar a estado Activo. Durante este estado se comprueba la fecha de finalizacin,
pues es posible que un evento dure varios das. El ltimo estado ser el de Archivado, al que llegar
el evento cuando se alcance la fecha fin.
http://diagramas/Estado/Estado.png -
7/31/2019 AESM - Practica 6 - Documentacion
21/28
Prctica 6: Modelado con UML 21
DIAGRAMAS DE ACTIVIDAD
LOGIN/REGISTROCuando un usuario accede a la pgina debe registrarse y rellenar los datos o, en el caso de estar
registrado, proceder a identificarse para acceder a la web. Ambos caminos finalizan en la pgina
principal.
http://diagramas/Actividad/Login-Registro.png -
7/31/2019 AESM - Practica 6 - Documentacion
22/28
Prctica 6: Modelado con UML 22
ACTUALIZAR PERFILCuando un usuario entra a su perfil tiene la opcin de editar su informacin personal. Una vez
editada se valida la informacin. Si es incorrecto el usuario debe volver a editar la informacin, y si
se produce un error se vuelve a validar. Seguidamente el usuario vuelve a su perfil con la
informacin actualizada.
http://diagramas/Actividad/Actualizar%20Perfil.png -
7/31/2019 AESM - Practica 6 - Documentacion
23/28
Prctica 6: Modelado con UML 23
AMIGOSCuando el usuario procede a la bsqueda de un amigo tiene la posibilidad de llegar hasta su perfil y,
adems de poder visualizarlo, puede comentar en su muro. Si se produce un error el usuario debe
volver a escribir el comentario.
http://diagramas/Actividad/Comentar%20Amigo.png -
7/31/2019 AESM - Practica 6 - Documentacion
24/28
Prctica 6: Modelado con UML 24
PETICIN DE AMISTADEl usuario emisor busca al amigo que desea agregar y una vez encontrado le enva la peticin de
amistad, que es recibida por el usuario receptor, pudiendo aceptarla o rechazarla.
http://diagramas/Actividad/Petici%C3%B3n%20de%20amistad.png -
7/31/2019 AESM - Practica 6 - Documentacion
25/28
Prctica 6: Modelado con UML 25
EVENTOPara la difusin de un evento, el usuario emisor debe crearlo y seguidamente procede a su
comparticin sealando a los amigos con los que desea compartirlos. As, el usuario receptor recibe
el evento y decide aceptarlo o rechazarlo.
http://diagramas/Actividad/Evento.png -
7/31/2019 AESM - Practica 6 - Documentacion
26/28
Prctica 6: Modelado con UML 26
PUBLICARUn usuario puede realizar diferentes publicaciones, como escribir en su muro y compartir videos y
fotos. Si se produce un error automticamente se vuelve a compartir.
http://diagramas/Actividad/Publicar.png -
7/31/2019 AESM - Practica 6 - Documentacion
27/28
Prctica 6: Modelado con UML 27
CALENDARIOCuando un usuario desea editar un calendario puede votar un concierto y aadir o apuntarse a un
concierto. En estas dos ltimas acciones el usuario tiene la posibilidad de finalizar la accin o
compartirla a travs de diferentes redes sociales.
http://diagramas/Actividad/Calendario.png -
7/31/2019 AESM - Practica 6 - Documentacion
28/28
GRUPOCuando un usuario crea un grupo tiene la posibilidad de aadir amigos al grupo, compartir fotos o
videos en el grupo, o escribir en el muro del grupo.
http://diagramas/Actividad/Grupo.png