Está en la página 1de 16

Syswork Documento de arquitecturas software

Proyecto: Red Social (Ingeniería de Software II) Revisión [1.0]

Syswork Documento de arquitecturas software Proyecto: Red Social (Ingeniería de Software II) Revisión [1.0] [Mayo 2013]

[Mayo 2013]

Ficha del documento

Fecha

Revisión

Autores

Calificación

15/05/2013

1.0

Abril Medina Cesar Albarracín Beltrán Maryory Hurtado Hurtado Dairo Molano Garay Lubin

 

Documento validado por las partes en fecha: 15/05/2013

Por el cliente

Por la empresa suministradora

Firma.

Firma.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 3

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 3

Contenido

1

INTRODUCCIÓN

5

1.1

Propósito

5

1.2

Alcance

5

1.3

Definiciones, acrónimos y abreviaturas

5

1.3.1 Definiciones

5

1.3.2 Acrónimos

6

1.4

Referencias

6

1.5

Visión general del documento

6

2

REPRESENTACIÓN DE LA ARQUITECTURA

6

3

METAS Y RESTRICCIONES

6

3.1

Metas

7

3.2

Restricciones

7

4

VISTA LÓGICA

7

4.1

Características del diagrama

8

4.1.1 Interfaz de Usuario

8

4.1.2 Lógica del Negocio

8

4.1.3 Entidades del Negocio

9

4.1.4 Acceso a datos

9

5

VISTA DE PROCESOS

9

5.1

Descripción

9

6

VISTA DE DESARROLLO

10

6.1

Ingreso

10

6.2

Perfil

10

6.3

Empleo

10

6.4

Publicación

10

6.5

Foro

11

6.6

Mensaje

11

6.7

Búsquedas

11

6.8

TAGS

11

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 4

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 4

6.9

Notificaciones

11

7

VISTA FÍSICA

11

7.1

Cliente

12

7.2

Servidor

12

7.3

Base de Datos

12

8

ESCENARIOS

12

8.1

Realización de Casos de uso Significativos

15

8.1.1 Asignar código de verificación

15

8.1.2 Modificar perfil

15

8.1.3 Gestionar publicaciones propias

15

8.1.4 Interactuar con publicaciones ajenas

15

8.1.5 Gestionar foro

15

8.1.6 Gestionar mensaje

15

8.1.7 Gestionar bolsa de empleo

16

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 5

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 5

1 Introducción

Uno de los desarrollos más importantes dentro de la construcción del software es el desarrollo de su arquitectura, pues esta permite representar la estructura del sistema, sirviendo de comunicación entre las personas involucradas en el desarrollo y ayudando a realizar diversos análisis que orienten el proceso de toma de decisiones.

En el presente documento se muestra la arquitectura de SYSWORK, la cual se basará en el modelo ‘4+1’, es decir que contendrá las vistas lógica, procesos, desarrollo y física, con la vista central de escenarios (caso de uso).

1.1 Propósito

Este documento proporciona una descripción de la arquitectura del sistema, haciendo uso de algunas visiones arquitectónicas para representar diversos aspectos del sistema. Se realiza con el fin de documentar las decisiones de arquitectura significativas que se han tomado en el sistema.

1.2 Alcance

Este documento presenta la arquitectura en la cual estará basado el Sistema, definiendo de manera detallada la distribución de los paquetes del sistema en las diversas capas que éste presenta, así como una descripción de las capas a utilizar.

1.3 Definiciones, acrónimos y abreviaturas

Se brindan definiciones y acrónimos de términos usados en el presente documento que necesiten de alguna explicación para su correcta interpretación.

1.3.1 Definiciones

PAQUETES: Agrupaciones de casos de uso y actores por funcionalidad que proveen.

ACTOR: Alguien o algo externo al sistema que interactúa con él.

CASO DE USO: Secuencia de acciones que el sistema realiza, la cual proporciona un resultado de valor observable.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 6

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 6

1.3.2 Acrónimos

ERS: Especificación de Requisitos de Software.

RUP: Rational Unified Process.

UML: Unified Modeling Language.

1.4 Referencias

IEEE Std 1471 2000, IEEE Recommended Practice for Architectural Description of Software-Intensive Systems.

Pressman, Roger S, Ingeniería de software un enfoque práctico, Mc Graw Hill, 2002.

Documento

de

SYSWORK.

Especificación

de

Requisitos

de

Software,

1.5 Visión general del documento

En este documento se detalla la arquitectura del software a desarrollar. Empleando un lenguaje sencillo y directo, así como gráficos y vistas de acuerdo a la metodología utilizada.

2 Representación de la arquitectura

Se desarrollará una aplicación, a la que solo se permitirá el acceso a los usuarios registrados en el sistema y a las áreas a las cuales tengan acceso autorizado.

La arquitectura se basará en el modelo ‘4+1’, que contendrá las vistas Lógica, Procesos, Desarrollo y física, con la vista central de Escenarios (caso de uso).

3 Metas y Restricciones

La meta principal de la arquitectura del sistema es mostrar los aspectos principales que influirán en la etapa de desarrollo.

Se tomarán en cuenta las siguientes metas y restricciones para el diseño de la arquitectura del sistema:

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 7

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 7

3.1 Metas

1. SYSWORK permitirá a los usuarios acceder al sistema desde cualquier

equipo siempre y cuando cuente con una conexión a internet.

2. Para poder acceder a SYSWOK, se requiere de un código de usuario

verificación (proporcionado por el administrador), así como de una contraseña. Además, dependiendo del rol (administrador, usuario) se deshabilitarán opciones de manejo del Sistema para proteger información confidencial.

3. Los requerimientos de rendimiento estipulados en el Documento de

Requisitos de Software, deben de ser considerados como parte de la

arquitectura del sistema a implementar

3.2 Restricciones

1. El uso del sistema se limita a quienes tengan relación directa con la

Escuela de Ingeniería de Sistemas y Computación UPTC, es decir

docentes, estudiantes y egresados de la misma.

2. Al software se podrá acceder únicamente vía internet.

4 Vista Lógica

Dentro de la vista lógica encontramos los diagramas de Clases de Análisis de la red social SYSWORK.

Dentro del Diagrama sólo se encuentran las clases que se implementarán en el prototipo de arquitectura, pues estas son las que mostrarán los aspectos dinámicos de la arquitectura que se utilizará.

aspectos dinámicos de la arquitectura que se utilizará. Figura 1. Diagrama de clases. Descripción de arquitecturas

Figura 1. Diagrama de clases.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 8

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 8

de arquitecturas software Rev. [1.0] Pág. 8 Figura 2. Diagrama de Capas y Paquetes. 4.1 Características

Figura 2. Diagrama de Capas y Paquetes.

4.1 Características del diagrama

En esta sección del documento se especifican las características de los paquetes más importantes de la vista lógica.

4.1.1 Interfaz de Usuario

Este paquete, contiene las clases visuales de la aplicación, las cuales crean las ventanas que utiliza el usuario para comunicarse con el sistema.

4.1.2 Lógica del Negocio

El paquete Lógica del Negocio contiene las clases que permiten llevar a cabo los servicios del negocio, como son: Controlar la interacción de los usuarios con el sistema y sus respectivas notificaciones.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 9

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 9

4.1.3 Entidades del Negocio

El paquete Entidades del Negocio contiene las principales clases que utiliza el sistema, es decir las clases fundamentales sin las cuales no podría funcionar.

4.1.4 Acceso a datos

El paquete de Objetos de Acceso de Datos contiene las clases que el sistema utiliza para manejar la persistencia de los objetos con la Base de Datos.

5 Vista de Procesos

El diagrama que se muestra a continuación describe el proceso que sigue la aplicación desde el inicio de sesión, hasta el cierre de la misma, pasando por las capas a través de las cuales el usuario puede interactuar con la aplicación.

las cuales el usuario puede interactuar con la aplicación. Figura 3. Diagrama de procesos. 5.1 Descripción

Figura 3. Diagrama de procesos.

5.1

Descripción

Se puede acceder a la aplicación abriendo una sesión, en esta parte del proceso se validarán tanto el nombre de usuario como la contraseña; una vez se hayan validado los datos correspondientes, el usuario empezará a interactuar con la lógica del negocio a través de la interfaz gráfica, aunque la interacción a nivel de programa se hará con el servidor que enviará y recibirá información de la base datos, y de ser necesario la devolverá al mismo.

Al cerrar la sesión o al no validarse los datos necesarios para acceder a la aplicación, el proceso terminará.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 10

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 10

6 Vista de Desarrollo

El siguiente diagrama muestra la aplicación divida en módulos y su interacción entre sí.

aplicación divida en módulos y su interacción entre sí. Figura 4. Diagrama de Desarrollo. 6.1 Ingreso

Figura 4. Diagrama de Desarrollo.

6.1 Ingreso

El módulo de ingreso verifica la contraseña y nombre de usuario con el fin de darle acceso a su perfil únicamente a su propietario.

6.2 Perfil

Este módulo engloba los datos alojados en el perfil de usuario, dichos datos pueden ser modificados por el propietario del mismo.

6.3 Empleo

El módulo de empleo permite al usuario gestionar un empleo y publicarlo en la bolsa, a dicha bolsa tendrán acceso todos los miembros de la red.

6.4 Publicación

El módulo de publicaciones admite que el usuario gestione una publicación propia y a su vez pueda interactuar con una publicación de cualquier otro usuario.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 11

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 11

6.5 Foro

Este módulo permite al usuario gestionar un foro si él mismo lo creó y participar en foros creados por otros usuarios.

6.6 Mensaje

El módulo de mensajes le brinda la posibilidad al usuario de comunicarse con otro miembro de la red de forma privada, pues el contenido del mismo solo podrá ser visto por quien envía y quién recibe.

6.7 Búsquedas

Este módulo permite al usuario hacer búsquedas dentro del contenido de la red social haciendo uso de ‘palabras clave.’

6.8 TAGS

En este módulo se da la posibilidad al usuario de definir las palabras clave por las que quiere que sean encontradas sus publicaciones.

6.9 Notificaciones

El módulo de notificaciones es el encargado de informar al usuario de las interacciones que han tenido otros miembros de la red con sus publicaciones.

7 Vista Física

El presente Diagrama muestra de manera gráfica los nodos que conforman el sistema, además los describe indicando la localización de las tareas en los nodos físicos. Cada nodo representa un recurso de ejecución como un cliente, un servidor y una base de datos; además de mostrar cómo se encuentran conectados mediante un enlace de comunicación.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 12

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 12

de arquitecturas software Rev. [1.0] Pág. 12 Figura 5. Diagrama Físico 7.1 Cliente Son los equipos

Figura 5. Diagrama Físico

7.1 Cliente

Son los equipos que son utilizados por cada uno de los usuarios para acceder al sistema. Están conectados a la red por el puerto 80, usando el protocolo HTTP.

7.2 Servidor

El servidor principal es aquel en el que interactúan la base de datos y el usuario. Está conectado con la base de datos por el puerto 80, usando el protocolo de TCP/IP.

7.3 Base de Datos

La base de datos es la localización en la que se encuentran ubicados los datos que le permiten funcionar al sistema y con los que interactúan los usuarios.

8 Escenarios

El diagrama de escenarios representa la forma de cómo el usuario interactúa con el sistema, además de la forma en que lo hará.

Cada caso de uso tiene una descripción que especifica la funcionalidad del mismo, en esta sección se mostraran los casos de uso más significativos del Sistema.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 13

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 13

SYSWORK Asignar código de v erificación Administrador
SYSWORK
Asignar código de
v erificación
Administrador

Figura 6. El administrador asigna un código de verificación para asegurarse que solo tendrán acceso al sistema quienes tengan relación directa con la escuela de Ingeniería de Sistemas y Computación UPTC.

Usuario CU_Modificar_perfil Modificar perfil

Usuario

CU_Modificar_perfil Modificar perfil
CU_Modificar_perfil
Modificar perfil

Figura 7. El usuario podrá modificar los datos de su propio perfil.

DCU_Gestionar Publicación propia

Eliminar

Publicación

Crear Publicación
Crear
Publicación
DCU_Gestionar Publicación propia Eliminar Publicación Crear Publicación Usuario

Usuario

DCU_Gestionar Publicación propia Eliminar Publicación Crear Publicación Usuario

Figura 8. El usuario podrá Crear y/o Eliminar sus propias publicaciones.

DCU_Interactuar con publicación ajena Comentar Publicación Usuario Calificar Publicación
DCU_Interactuar con publicación ajena
Comentar
Publicación
Usuario
Calificar
Publicación

Figura 9. El usuario podrá Comentar y/o Calificar una publicación de otro usuario.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 14

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 14

DCU_Gestionar Foro

Crear Foro Modificar Foro
Crear Foro
Modificar Foro
DCU_Gestionar Foro Crear Foro Modificar Foro Usuario Actualizar Foro Eliminar Foro

Usuario

Actualizar Foro Eliminar Foro
Actualizar Foro
Eliminar Foro

Figura 10. El usuario podrá Crear, Modificar, Actualizar y Eliminar un foro (siempre y cuando haya sido creado por él mismo).

DCU_Gestionar Mensaje Crear Mensaje Usuario Eliminar Mensaje
DCU_Gestionar Mensaje
Crear Mensaje
Usuario
Eliminar Mensaje

Figura 11. El usuario podrá Crear un mensaje para un usuario o eliminar un mensaje propio.

un mensaje para un usuario o eliminar un mensaje propio. Figura 12. El usuario podrá Crear,

Figura 12. El usuario podrá Crear, Modificar, Actualizar y Eliminar un foro (siempre y cuando haya sido creado por él mismo).

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 15

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 15

8.1 Realización de Casos de uso Significativos

A continuación

anteriormente expuestos.

se

describe

la

importancia

de

los

casos

de

uso

8.1.1 Asignar código de verificación

Este caso de uso verifica que se cumpla la restricción que dice que al software solo podrán acceder las personas que tengan relación directa con la escuela de Ingeniería de Sistemas y Computación UPTC; dicha

verificación se hace a través de la asignación de un código que hace el administrador al usuario y que será un campo obligatorio en el formulario

de registro.

8.1.2 Modificar perfil

Este caso de uso especifica que los usuarios pueden modificar los datos de su propio perfil, Nombre, Foto, Descripción y fondo esto con el propósito de personalizarlo acorde a sus intereses, estudios, entre otros.

8.1.3 Gestionar publicaciones propias

Este caso de uso permite que los usuarios puedan crear y/o eliminar sus propias publicaciones, estas publicaciones aparecerán en la pantalla de inicio de otros usuarios.

8.1.4 Interactuar con publicaciones ajenas

En este caso de uso se especifica que los usuarios podrán comentar y/o

calificar las publicaciones de otros usuarios, esto permitirá hacerse una idea de la calidad de las publicaciones en un perfil determinado.

8.1.5 Gestionar foro

Este caso de uso permite al usuario crear, modificar, actualizar y eliminar un foro propio y actualizar (entendido como participar mediante comentarios) un foro creado por otro usuario.

8.1.6 Gestionar mensaje

Este caso de uso especifica que un usuario puede crear un mensaje para enviárselo a otro usuario, o eliminar un mensaje que tenga en su bandeja de entrada.

SYSWORK Especificación de arquitecturas software Rev. [1.0] Pág. 16

SYSWORK Especificación de arquitecturas software

Rev. [1.0]

Pág. 16

8.1.7 Gestionar bolsa de empleo

Este caso de uso permite al usuario crear, modificar, actualizar y eliminar un empleo que haya creado él mismo.