documento arquitectura de software rup

29
PUCP – Desarrollo de Programas 1 Sistema Antiplagium Documento de Arquitectura de SW Versión 3.0 Pág. 1 de 29

description

documento de ejemplo para rup arquitectura de software

Transcript of documento arquitectura de software rup

Documento de Arquitectura de Software

Sistema Antiplagium

Documento de Arquitectura de SoftwareVersin : 1.2

Entrega : 25 de Septiembre 2009

Sistema Antiplagium

Documento de Arquitectura de SW

Versin 3.0

Historia de RevisinFechaVersinDescripcinAutor

30/03/101.0Versin inicialKim Alvarado / Patricia Natividad

08/04/102.0Versin corregidaKim Alvarado

Tabla de Contenido

1.Introduccin51.1.Propsito51.2.Alcance51.3.Definiciones, acrnimos y abreviaturas51.3.1.Definiciones51.3.2.Acrnimos51.4.Referencias61.5.Visin General del documento62.Representacin de la arquitectura73.Metas y Restricciones de la arquitectura73.1.Metas73.2.Restricciones del Sistema74.Vista y Realizaciones de Casos de Uso85.Vista Lgica135.1Descripcin135.2Diseo en Capas155.2.1Capa Interfaz de Usuario165.2.2Capa Lgica del Negocio165.2.3Capa Persistencia166.Vista de Proceso166.1Diagrama de clases167.Vista de Despliegue187.1Servidor197.2PC Cliente198.Vista de Implementacin208.1Descripcin208.2Niveles o Capas208.2.1Capa GUI208.2.2Capa Lgica del Negocio208.2.3Capa Base de Datos209.Diagramas de Secuencia219.1Paquete de Administracin219.1.1Registrar Usuario219.2Buscar Usuario219.2.1Eliminar Usuario229.2.2Reporte de Acciones229.2.3Registrar Cuenta239.3Paquete de Gestin de Pagos249.3.1Registrar Documento de Pago249.3.2Anular Documento de Pago249.3.3Emitir Documentos de Pago en Lote259.3.4Buscar Documento de Pago259.3.5Registrar Pago269.3.6Registrar Descuento269.3.7Generar Reporte de Historial de Pago de Cliente279.3.8Generar Reporte de Historial de Pago por Periodo279.5Paquete de Cliente319.5.1Registrar Cliente319.5.2Modificar Cliente319.5.3Buscar Cliente329.5.4Registrar Contrato329.5.5Modificar Contrato339.5.6Buscar Contrato3310.Tamao y performance3611.Calidad3711.1Usabilidad3711.2Eficiencia3711.3Seguridad3711.4Confiabilidad3711.5Mantenimiento3711.6Estndares:37

Documento de Arquitectura de Software

Introduccin

Uno de los desarrollos ms importantes dentro de la construccin del software es el desarrollo de la arquitectura de software, que permite representar la estructura del sistema, sirviendo de comunicacin entre las personas involucradas en el desarrollo, adems de ayudar a realizar el anlisis para la toma de decisiones.

Este documento provee al usuario especializado una vista de la arquitectura del Sistema Antiplagium.

La plantilla de este documento se bas en las especificaciones de RUP (Rational Unified Process) para el documento de arquitectura de software.

Propsito

Este documento proporciona una descripcin de la arquitectura del sistema, haciendo uso de diversas visiones arquitectnicas 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.

Alcance

Este documento presenta la arquitectura en la cual estar basado el Sistema para deteccin de plago Antiplagium, definiendo de manera detallada la distribucin de los paquetes del sistema en las diversas capas que ste presenta, as como una descripcin de las capas a utilizar.

Definiciones, acrnimos y abreviaturas

Se brindan definiciones y acrnimos de trminos usados en el presente documento que necesiten de alguna explicacin para su correcta interpretacin.

Definiciones

PaquetesAgrupaciones de casos de uso y actores por funcionalidad que proveen.

ActorAlguien o algo externo al sistema que interacta con l.

Caso de UsoSecuencia de acciones que el sistema realiza, la cual proporciona un resultado de valor observable.

Star UMLSe refiere a las herramientas que permiten realizar el modelado de los diagramas presentados en este documento.

Acrnimos

ERSEspecificacin de Requisitos de Software

RUPRational Unified Process

UMLUnified Modeling Language

Referencias

Las referencias aplicables son:

1. Documento de Especificacin de Requisitos del Sistema Antiplagium.2. Documento de Visin del Sistema Antiplagium.3. Plan de Proyecto del Sistema Antiplagium.

Visin General del documento

En las diez secciones de este documento se detalla la arquitectura del software a desarrollar. Para ello se presenta de manera clara el caso de uso que mas representa la arquitectura del sistema, empleando un lenguaje sencillo y directo, as como grficos y vistas de acuerdo a la metodologa utilizada.

Representacin de la arquitectura

La Arquitectura a utilizar ser Cliente-Servidor. Se desarrollar una sola aplicacin integrada, en la que solo se permitir el acceso a los usuarios registrados en el sistema y a las tareas a las cuales tengan acceso autorizado. Se emplear un solo servidor centralizado.

La arquitectura se muestra como una serie de vistas, utilizando la aplicacin Star UML.

La arquitectura se basar en el modelo 4+1, que contendr las vistas de Lgica, Implementacin, Procesos e Implantacin, con la vista central de caso de uso.

Metas y Restricciones de la arquitectura

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

Se tomarn en cuenta las siguientes metas y restricciones para el diseo de la arquitectura del sistema:

Metas

1. El Sistema Antiplagium permitir a los usuarios acceder al sistema desde cualquier Terminal.2. Para poder acceder al Sistema Antiplagium, se requiere de un cdigo de usuario vlido as como de una contrasea. Adems, dependiendo del perfil del usuario se deshabilitarn opciones de manejo del Sistema para proteger informacin confidencial.3. Los requerimientos estipulados en el Documento de Visin, deben de ser considerados como parte de la arquitectura del sistema a implementar.4. El uso del sistema para los trabajadores de la Institucin Educativa se limita a dentro de la organizacin. Fuera de ella no se podr acceder al sistema.

Restricciones del Sistema

1. El sistema usar PostgreSql como motor de Base de Datos necesariamente. Debe considerarse obligatorio la elaboracin de una copia de rescate de las tablas para no afectar la informacin almacenada antes de poner en total funcionamiento al sistema.2. Las caractersticas tcnicas de las computadoras que sern utilizadas no debern presentar potencias menores a las brindadas por una Pentium 4, con al menos 1 GB de RAM y 500 MB de espacio libre en el disco, con Sistema Operativo Linux.3. Las computadoras que utilicen el sistema debern de tener instalado el JRE 1.6 o superior ya que el mismo ser desarrollado en java.

Vista y Realizaciones de Casos de Uso

El diagrama de casos de uso representa la forma de cmo el usuario interacta con el sistema a desarrollar, as podremos obtener el conjunto de escenarios que contendr cada iteracin.

Cada caso de uso tiene una descripcin que especifica la funcionalidad que se incorporar al sistema propuesto.

En este apartado se mostraran los casos de uso del Sistema.

4.1 Paquete de Usuarios

Diagrama 1. Paquete de Usuarios

CU_PU001.

4.2 Paquete de Documentos

Diagrama 2. Paquete de Documentos

CU_PDOC001 Buscar DocumentosEste caso de uso sirve para consultar por los documentos ingresados en la base de datos.CU_PDOC002 Gestionar DocumentosEste caso de uso permite subir y eliminar documentos de la base de datos.CU_PDOC003 Buscar categora de DocumentosEste caso de uso permite consultar las categoras existentes para clasificar los documentos.CU_PDOC004 Gestionar categoras de documentosEste caso de uso permite registrar, modificar y eliminar categoras de clasificacin de documentos.

4.3 Paquete de Deteccin

Diagrama 3. Paquete de DeteccinCU_PDET001 Comparar DocumentosEste caso de uso permite realizar la comparacin para deteccin de plagio entre documentos (esto implica la implementacin de un algoritmo adecuado).

CU_PDET002 Mostrar resultados de comparacinEste caso de uso permite mostrar los resultados de comparaciones pasadas que se hayan realizado entre archivos y en un determinado rango de fechas.

5. Vista Lgica

5.1 Descripcin

La vista lgica del sistema Antiplagium est compuesta de cuatro paquetes principales: Interfaz de usuario (GUI), servicios del Lgica (Logic), objetos de procesamiento (Entity) y los objetos de persistencia (Data Access Objects).

El primer paquete, Interfaz de usuario, contiene las clases visuales de la aplicacin, las cuales crean las ventanas que utiliza el usuario para comunicarse con el sistema para una adecuada y fcil utilizacin de los paquetes que se encuentran en las siguientes capas.

El paquete Lgica contiene las clases que permiten llevar a cabo los servicios de procesamiento, como son: Controlar el mantenimiento de usuarios, Mostrar resultados de comparaciones, etc.

El paquete Entidades contiene las clases que utilizar el sistema Antiplagium, entre las principales clases se tiene: Usuario, Documento, Detector, Provilegio, etc.

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.2 Diseo en Capas

En la siguiente figura podemos observar la distribucin de los paquetes en cada una de las capas del sistema.

Figura .5.1: Diagrama de Distribucin de Capas del Sistema

5.2.1 Capa Interfaz de UsuarioEsta capa contiene el paquete Interfaz de Usuario, el cual almacena todas las clases con las cuales el usuario puede interactuar como lo son las ventanas.

5.2.2 Capa Lgica del NegocioEsta capa contiene los paquetes de Servicios de Negocio y Entidades de Negocio. Contiene la lgica para el manejo de las operaciones del negocio.

5.2.3 Capa PersistenciaEsta capa contiene el paquete de Objetos de Acceso de Datos, que brinda una interfaz transparente para la interaccin con la Base de Datos.

6. Vista de Proceso

6.1 Diagrama de clases

Es el diagrama principal para el anlisis y diseo. En este diagrama se presentan las clases del sistema con sus relaciones estructurales y de herencia. Para establecer las clases, objetos atributos y operaciones entre clases se tom como base a los diagramas de casos de uso.

PUCP Desarrollo de Programas 1

Sistema AntiplagiumVersin 2.0

Documento de Arquitectura de SW

Pg. 1 de 23Pg. 23 de 23

Figura 6.1: Vista del Diagrama de Clases

7. Vista de Despliegue

El presente Diagrama de Despliegue muestra de manera grfica los nodos que conforman el sistema, adems los describe indicando la localizacin de las tareas en los nodos fsicos. Cada nodo representa un recurso de ejecucin como una computadora o servidor y se encuentra conectado con otros mediante un enlace de comunicacin. En este caso, la red ser de tipo LAN.

Figura 7.1: Diagrama de Despliegue del Sistema. Servidor (Base de Datos) y Cliente (Computadora usuario).

Figura 7.2: Diagrama Componentes del Sistema.

7.1 Servidor

El servidor principal donde se encuentra la Base de Datos. Los diferentes usuarios tendrn acceso al servidor va LAN.

7.2 PC Cliente

Son las computadoras que son utilizadas por cada uno de los usuarios de la empresa para acceder al sistema. Estn conectadas directamente al servidor principal va LAN.

8. Vista de Implementacin

8.1 Descripcin

La vista de implementacin seguir el patrn de diseo MVC (Model View Controller). Este patrn plantea la separacin del problema en tres capas: la capa model, la capa controller y la capa view.

8.2 Niveles o Capas

8.2.1 Capa GUI

El componente GUI maneja las clases que permiten la interaccin del usuario con el sistema.

8.2.2 Capa Lgica

Este componente permite manejar la lgica del negocio de todas las reas involucradas.

Administracin del SistemaUsuariosPrivilegiosComparacionesRegistro de documentos

8.2.3 Capa Base de DatosEste componente contiene toda la informacin que maneja el Sistema.

Figura 8.1: Diagrama de Implementacin del Sistema.

9. Diagramas de Secuencia

9.1 Paquete de Usuarios

//Meter diagramas9.2 Paquete de Documentos

Gestionar Categora

Gestionar Documentos

9.3 Paquete de DeteccinComparar Documentos

Mostrar resultados comparacin

10. Tamao y performance

La arquitectura de software elegida apoya los requisitos dominantes de capacidad en disco y latencia, segn lo estipulado en el Documento de Especificacin de Requisitos de Software de Antiplagium y el Documento de Visin del Proyecto del Sistema Antiplagium.

1. Tiempo de respuesta en el acceso a la Base de DatosEl sistema proveer accesos a la base de datos con un tiempo de respuesta no mayor a los 5 segundos.

2. Tiempo de respuesta de transaccionesEl programa no demorar ms de 15 minutos en generar reporte de comparacin de documentos haciendo uso del algoritmo elegido y guardndolo en base de datos.

3. Espacio en disco para el clienteEl espacio en disco necesario para la parte del cliente deber tener como mnimo 500 MB de espacio libre para su correcto funcionamiento, esto incluye tanto el tamao del software como el JRE 1.6.

4. Espacio en disco para el servidor de Base de datosEl espacio en disco necesario para la parte del Servidor de Base de datos deber tener como mnimo 1 GB libres en disco para su correcto funcionamiento.

La arquitectura seleccionada apoya los requisitos de latencia y capacidad en disco en la puesta en prctica de una arquitectura cliente servidor. La porcin del cliente solo se pone en ejecucin en las PC locales de los distintos ambientes dentro de la empresa. Los componentes se han diseado para asegurarse de obtener requisitos mnimos de disco y memoria en el lado de las PC del cliente.

11. Calidad

Para un mejor aprovechamiento de la arquitectura de software se dan los siguientes requerimientos de calidad:

11.1 Usabilidad El sistema permitir un manejo intuitivo por parte de los usuarios.

11.2 Eficiencia El programa no demorar ms de 15 minutos en generar un reporte de comparacin de documentos.

11.3 Seguridad El sistema permitir el acceso a funcionalidades dependiendo del perfil del usuario que ingresa al sistema, validando su ingreso a travs de una clave.

11.4 Confiabilidad El sistema tendr en cuenta que la informacin ingresada en l sea vlida, para lo cual mostrar mensajes que expliquen al usuario acerca de los errores que ste pudiera cometer y de aquellos que pueda cometer el mismo sistema.

11.5 Mantenimiento El sistema ser flexible, facilitando su mantenimiento futuro.

11.6 Estndares: Se usar un estndar para todas las ventanas e interfaces con el usuario que tenga el Sistema Antiplagium, as como los nombres, cdigos, etc.

Pontificia Universidad Catlica del Per 2009Pgina 14 de 23