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

Top Related