You are on page 1of 25

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Anexo 2-B
Documento de anlisis del sistema

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Proyecto Collaborative - LEFT Case: Servicios

Documento de Anlisis del


Sistema
Versin 1.0
Fecha Septiembre de 2004
Realizado por
Angel Costa Alba

Tutores
Francisco Jos Garca Pealvo
Ivn lvarez Navia

Para
Departamento de Informtica y Automtica
Universidad de Salamanca

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Lista de cambios
Versin
Fecha
Descripcin
1.0
11/02/2004 Versin 1.0
1.1
24/03/2004 Portada y pgina 2 aadidas. Se aade la lista de cambios, tabla
de contenidos y tabla de figuras as como el formateo del
documento.
1.2
30/04/2004 Cambios realizados tras la reunin del da 29/04/2004. Se aade
el concepto de pizarra virtual
1.3
11/06/2004 Se rectifica el concepto de escenario de consenso. Correcciones
de expresin. Se aaden los casos de uso referentes a los
diversos mdulos.
1.4
17/06/2004 Rectificaciones de los diagramas principales. Se aaden los
casos de usos relativos al cliente, la gestin de repositorio y
comunicaciones

-I-

Autor/es
Angel Costa
Angel Costa
Angel Costa
Angel Costa
Angel Costa

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

ndice
1.
2.

Introduccin.......................................................................................................... 202
Diagramas de secuencia........................................................................................ 202
2.1. Gestin de componentes (UC 1)................................................................ 203
2.2. Gestin de usuarios (UC 2) ....................................................................... 204
2.3. Creacin del proyecto (UC 3).................................................................... 205
2.4.
Establecimiento del jefe de proyecto (UC 4)............................................. 205
2.5.
Planteamiento de un sistema inicial (UC 5) y Asignacin de
responsabilidades (UC 6) ...................................................................................... 206
2.6. Modificar datos del proyecto (UC 7)......................................................... 206
2.7.
Gestin de permisos (UC 12) .................................................................... 207
2.8. Registro de servicios (UC 15) ................................................................... 208
2.9. Uso de servicios (UC 16) .......................................................................... 208
2.10.
Comunicacin entre usuarios (UC 17) .................................................. 209
2.11.
Creacin de la pizarra virtual (UC 20) .................................................. 209
2.12.
Ingreso en sesin (UC 22) ..................................................................... 210
2.13.
Asignacin de turno (UC 23) ................................................................ 210
2.14.
Modificacin de pizarra (UC 24)........................................................... 211
2.15.
Mostrar proyectos (UC 26).................................................................... 212
2.16.
Abrir proyecto (UC 29) ......................................................................... 212
2.17.
Cerrar proyecto (UC 30)........................................................................ 213
2.18.
Modificar elementos (UC 32)................................................................ 213
2.19.
Eliminar elementos (UC 33).................................................................. 214
2.20.
Crear elemento (UC 34) ........................................................................ 215
2.21.
Exportar diagrama (UC 37) ................................................................... 216
2.22.
Imprimir (UC 38) .................................................................................. 216
2.23.
Guardar seccin (UC 39)....................................................................... 217
2.24.
Inicio de la aplicacin............................................................................... 217
3. Diagrama de clases preeliminar............................................................................ 218

- II -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Lista de figuras
Fig. 1 - Alta de un componente ................................................................................... 203
Fig. 2 - Eliminacin de un componente....................................................................... 203
Fig. 3 - Modificacin de un componente..................................................................... 203
Fig. 4 - Alta de un usuario ........................................................................................... 204
Fig. 5 - Baja de un usuario........................................................................................... 204
Fig. 6 - Modificacin de los datos de un usuario ........................................................ 204
Fig. 7 - Escenario de creacin de un proyecto............................................................. 205
Fig. 8 - Escenario de establecimiento del jefe de un proyecto .................................... 205
Fig. 9 - Escenario de creacin de un sistema inicial................................................... 206
Fig. 10 - Escenario de modificacin de los datos de un proyecto ............................... 206
Fig. 11 - Asignar permiso sobre un elemento.............................................................. 207
Fig. 12 - Revocar el permiso sobre un elemento ......................................................... 207
Fig. 13 - Escenario de registro de un servicio en el broker ......................................... 208
Fig. 14 - Escenario de ejemplo del uso de un servicio ................................................ 208
Fig. 15 - Escenario de comunicacin entre usuarios ................................................... 209
Fig. 16 - Escenario de creacin de una pizarra virtual ............................................... 209
Fig. 17 - Escenario de unin de sesin de una pizarra ................................................ 210
Fig. 18 - Escenario de asignacin de turno.................................................................. 210
Fig. 19 - Protocolo de modificacin por notificacin explcita................................... 211
Fig. 20 - Protocolo de modificacin por notificacin automtica ............................... 211
Fig. 21 - Escenario de mostrar proyectos .................................................................... 212
Fig. 22 Escenario para abrir un proyecto.................................................................. 212
Fig. 23 - Escenario de cierre de un proyecto ............................................................... 213
Fig. 24 - Modificar elementos visuales ....................................................................... 213
Fig. 25 - Modificar elementos no visuales .................................................................. 214
Fig. 26 - Eliminar elemento visual .............................................................................. 214
Fig. 27 - Eliminar elemento no visual ......................................................................... 215
Fig. 28 - Escenario de creacin de un elemento .......................................................... 215
Fig. 29 - Escenario de exportacin de un diagrama .................................................... 216
Fig. 30 - Escenario de impresin ................................................................................. 216
Fig. 31 - Escenario de almacenamiento de seccin ..................................................... 217
Fig. 32 - Inicio de aplicacin ....................................................................................... 217
Fig. 33 - Diagrama de clases preeliminar .................................................................... 218
Fig. 34 - Diagrama de clases de los servidores............................................................ 219
Fig. 35 - Diagrama de clases del cliente...................................................................... 219
Fig. 36 - Arquitectura de componentes ....................................................................... 219

- III -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Lista de Tablas

- IV -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

1. Introduccin
Una vez expuesto el documento de requisitos del sistema cuyo cometido consista en ser
un elemento contractual entre la parte cliente y la parte de ingenieros del software, se
pasa a realizar un pequeo anlisis ms exhaustivo de lo desarrollado en dicho
documento y que se plasma en este anexo.
La principal funcin de este anexo consiste en descubrir una serie de objetos que
colaborarn con un fin comn, representar el sistema que se est modelando y que por
tanto es el que se desea obtener.
Para conseguir el descubrimiento de estos objetos a partir de los requisitos del mundo
real se utilizan los llamados diagramas de interaccin, de dos tipos. Un tipo son los
diagramas de secuencia [Booch et al., 2000], que muestran el funcionamiento de todos
los objetos que actan dentro de un escenario especificando los mensajes que
intercambian.
Otro tipo son los diagramas de colaboracin [Booch et al., 2000], que muestran el
comportamiento de una serie de objetos, especificando el conjunto de mensajes que
intercambian, aunque en este tipo de diagrama no interviene el instante en que los
mensajes son emitidos.
Debido a que los diagramas de secuencia tambin ayudarn a representar el conjunto de
informacin que tendr que intercambiar el usuario con el sistema se ha decidido usar
stos para representar el paso al mundo de los objetos.
Este documento se completar con un diagrama de clases preliminar que sea coherente
con los diagramas obtenidos y que muestre el tipo de relaciones ms intuitivas
descubiertas durante la fase de anlisis y que posteriormente servirn como gua durante
la fase de diseo.

2. Diagramas de secuencia
A continuacin se detallar la secuencia de trabajo de la aplicacin a travs de un
conjunto de diagramas que reflejarn los escenarios que plantea cada caso de uso
expuesto en el anexo anterior.

- 202 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

2.1. Gestin de componentes (UC 1)


El caso de uso Gestin de componentes (UC 1) presenta tres posibles escenarios:

Fig. 1 - Alta de un componente

Fig. 2 - Eliminacin de un componente

Fig. 3 - Modificacin de un componente

- 203 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

2.2. Gestin de usuarios (UC 2)


El caso de uso Gestin de usuarios (UC 2) presenta los siguientes escenarios:

Fig. 4 - Alta de un usuario

Fig. 5 - Baja de un usuario

Fig. 6 - Modificacin de los datos de un usuario

- 204 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

2.3. Creacin del proyecto (UC 3)

Fig. 7 - Escenario de creacin de un proyecto

2.4. Establecimiento del jefe de proyecto (UC 4)


Este caso de uso incluye el caso de uso Obtener proyecto (UC 11).

Fig. 8 - Escenario de establecimiento del jefe de un proyecto

- 205 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

2.5. Planteamiento de un sistema inicial (UC 5) y Asignacin de


responsabilidades (UC 6)

Fig. 9 - Escenario de creacin de un sistema inicial

2.6. Modificar datos del proyecto (UC 7)


Este caso de uso incluye el caso de uso Obtener datos del proyecto (UC 10).

Fig. 10 - Escenario de modificacin de los datos de un proyecto

- 206 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

2.7. Gestin de permisos (UC 12)


El caso de uso Gestin de permiso (UC 12) presenta los siguientes escenarios:

Fig. 11 - Asignar permiso sobre un elemento

Fig. 12 - Revocar el permiso sobre un elemento

- 207 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

2.8. Registro de servicios (UC 15)

Fig. 13 - Escenario de registro de un servicio en el broker

2.9. Uso de servicios (UC 16)

Fig. 14 - Escenario de ejemplo del uso de un servicio

- 208 -

Collaborative-LEFT-Case: Servicios

2.10.

Anexo 2B Anlisis del sistema

Comunicacin entre usuarios (UC 17)

Fig. 15 - Escenario de comunicacin entre usuarios

2.11.

Creacin de la pizarra virtual (UC 20)

Este caso de uso incluye el caso de uso Inicio de consenso (UC 21).

Fig. 16 - Escenario de creacin de una pizarra virtual

- 209 -

Collaborative-LEFT-Case: Servicios

2.12.

Anexo 2B Anlisis del sistema

Ingreso en sesin (UC 22)

Fig. 17 - Escenario de unin de sesin de una pizarra

2.13.

Asignacin de turno (UC 23)

Fig. 18 - Escenario de asignacin de turno

- 210 -

Collaborative-LEFT-Case: Servicios

2.14.

Anexo 2B Anlisis del sistema

Modificacin de pizarra (UC 24)

Este escenario incluye el caso de uso Visualizacin de los cambios (UC 25).
Para este caso de uso se han propuesto dos protocolos de trabajo posibles. El primero de
ellos se describe la posibilidad de que el cliente que realiza un cambio es el encargado
de notificar los cambios. Este comportamiento se describe en la figura Fig. 19.

Fig. 19 - Protocolo de modificacin por notificacin explcita

En el segundo protocolo, se ha estimado oportuno que sean un conjunto de acciones las


responsables de generar la actualizacin de todos los usuarios. Este comportamiento se
recoge en la figura Fig. 20.

Fig. 20 - Protocolo de modificacin por notificacin automtica

El conjunto de eventos que generarn la llamada de actualizacin de la pizarra sern:


Creacin de un elemento
Eliminacin de un elemento
Modificacin de un atributo especfico de un elemento
Modificacin de un elemento completo

- 211 -

Collaborative-LEFT-Case: Servicios

2.15.

Anexo 2B Anlisis del sistema

Mostrar proyectos (UC 26)

Este escenario incluye el caso de uso Obtener proyecto (UC 11).

Fig. 21 - Escenario de mostrar proyectos

2.16.

Abrir proyecto (UC 29)

Este escenario incluye el caso de uso Seleccionar proyecto (UC 27).

Fig. 22 Escenario para abrir un proyecto

- 212 -

Collaborative-LEFT-Case: Servicios

2.17.

Anexo 2B Anlisis del sistema

Cerrar proyecto (UC 30)

Fig. 23 - Escenario de cierre de un proyecto

2.18.

Modificar elementos (UC 32)

Este caso de uso presenta los siguientes escenarios:

Fig. 24 - Modificar elementos visuales

- 213 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Fig. 25 - Modificar elementos no visuales

2.19.

Eliminar elementos (UC 33)

Este caso de uso presenta los siguientes escenarios:

Fig. 26 - Eliminar elemento visual

- 214 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Fig. 27 - Eliminar elemento no visual

2.20.

Crear elemento (UC 34)

Fig. 28 - Escenario de creacin de un elemento

- 215 -

Collaborative-LEFT-Case: Servicios

2.21.

Anexo 2B Anlisis del sistema

Exportar diagrama (UC 37)

Fig. 29 - Escenario de exportacin de un diagrama

2.22.

Imprimir (UC 38)

Fig. 30 - Escenario de impresin

- 216 -

Collaborative-LEFT-Case: Servicios

2.23.

Anexo 2B Anlisis del sistema

Guardar seccin (UC 39)

Fig. 31 - Escenario de almacenamiento de seccin

2.24.

Inicio de la aplicacin

Aunque no se ha considerado como caso de uso, se estima importante la exposicin de


este escenario.

Fig. 32 - Inicio de aplicacin

- 217 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

3. Diagrama de clases preeliminar


Una vez generados los escenarios de la aplicacin, se pueden apreciar un conjunto de
elementos comunes que aparecen durante todo el desarrollo de estos diagramas. Estos
elementos comunes son las clases preliminares. Al elegirse una arquitectura inicial
distribuida, se puede apreciar como existen dos zonas claramente diferenciadas, una
perteneciente al cliente y otra al conjunto de servicios que utilizar. Cada servicio ser
implementado como un componente separado, de forma que la arquitectura inicial
vendr dada por el siguiente diagrama:

Fig. 33 - Diagrama de clases preeliminar

Detallando un poco ms en el funcionamiento de la herramienta, se pueden separar las


clases que formarn parte del cliente de las clases que representan los servicios. De esta
forma se tendr el siguiente diagrama de clases bsicas para los servidores:

- 218 -

Collaborative-LEFT-Case: Servicios

Anexo 2B Anlisis del sistema

Fig. 34 - Diagrama de clases de los servidores

E igualmente para las clases que formarn el cliente:

Fig. 35 - Diagrama de clases del cliente

Una vez que se ha realizado un anlisis de las clases fundamentales que trabajarn en
conjunto en la herramienta, se puede extrapolar la arquitectura basada en componentes
para agrupar estas clases y dotarlas de una mayor complejidad. De esta forma se
obtendr un diagrama de componentes que refleja la arquitectura que seguir este
proyecto.

Fig. 36 - Arquitectura de componentes

- 219 -

You might also like