Siginfocentro - Arquitectura del Sistema.pdf (2012-09-03 10:07) 347KB

Anuncio
Sistema de Información Geográfica
siginfocentros
Arquitectura del Sistema
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
Índice de contenido
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
Sobre este Documento
El presente documento contiene el diseño elaborado para el proyecto Sistema de
Información Geográfica Infocentros, el cual es producto de un análisis minucioso
de los requisitos del sistema, según estos pueden ser satisfechos con las
tecnologías y características discutidas con los clientes y usuarios.
El documento esta organizado alrededor de tres ideas principales:
1. Las características generales del diseño
2. Los requisitos atendidos por el diseño
3. Los modelos y vistas que lo detallan
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
1. Arquitectura del Sistema
El Sistema de Información Geográfica Infocentros ha sido concebido como un
componente web bajo la especificación PHP5, con una arquitectura N-capas,
usando el framework Symfony. La versión actual del sistema esta compuesta
bajo patrón de diseño Modelo-Vista-Controlador:
Vistas: La vista es principalmente una combinación de plantillas PHP que son
guardadas en varios directorios templates y formularios de usuario que se
almacenan en la carpeta lib/forms. Adicionalmente se usa la librería de JQuery
para completar la funcionalidades del lado del cliente.
Se utilizó el patrón de diseño decorador para lograr una plantilla decorada
después de que el contenido es mostrado por una plantilla global, llamada layout
en Symfony .
Controladores: Los Controladores de Symfony son aquellos que reciben y
procesan todas las solicitudes del usuario bajo el patrón MVC. Todas las
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
solicitudes son gestionadas por un controlador frontal ubicado en web/index.php.
Modelos: En esta capa se define la lógica de negocio (la base de datos pertenece
a esta capa). Symfony guarda todas las clases y archivos relacionados con el
modelo en el directorio lib/model. Para la implementación de acceso a los datos
se utiliza el ORM Propel.
2. Vista Lógica
En esta vista se detallan las partes del modelo de diseño que son significativas
arquitectónicamente representando los diagramas que permiten tener una visión
de los elementos que conforman el sistema y de la interacción entre ellos.
2.1 Diagrama de Paquetes
2.2 Paquetes de Diseño significativos
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
En esta sección se muestra para cada uno de los paquetes representados
anteriormente una breve descripción y el nombre de las clases que contiene.
P01- nodeide
Descripción
Este paquete contiene la aplicación
publica la cual utiliza open layer para
mostrar los datos geográficos
Clases Disponibles:
N/A
P02- registro
Descripción
Este paquete contiene la aplicación de
registro de infocentros
Clases Disponibles:
Archivos
EventoComunitario
Infocentro
P03- wms
Descripción
Este paquete contiene los servicios wms
publicos disponibles.
Clases Disponibles:
N/A
P04- intranet
Descripción
Este paquete contiene la aplicación
principal para acceder a todos los
componentes del sistema
Clases Disponibles:
N/A
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
P05- pmapper
Descripción
Este paquete contiene el servidor de
mapas mapserver.
Clases Disponibles:
N/A
2.3 Diagrama de clases
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
2.4 Casos de usos
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
3. Vista de Implementación
La vista de implementación muestra el empaquetado físico de las partes
reutilizables del sistema en unidades sustituibles, llamadas componentes. Una
vista de implementación muestra los elementos físicos del sistema mediante
componentes, así como sus interfaces y dependencias entre componentes. Los
componentes son piezas reutilizables de alto nivel a partir de las cuales se
pueden construir los sistemas.
3.1 Diagrama de Componentes del Sistema
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
4. Vista de Despliegue
La vista de despliegue muestra la disposición física de los recursos de
ejecución computacionales, tales como computadores y sus interconexiones.
La vista de despliegue puede mostrar cuellos de botella para el rendimiento si las
instancias de los componentes con dependencia se ponen en distintos nodos.
4.1 Diagrama de Despliegue del Sistema
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
5. Modelo de Datos
El Modelo de datos es aquel que describe de forma abstracta cómo se
representan los datos de un sistema. Un modelo de datos consiste en: entidades,
atributos y sus relaciones.
5.1 Modelo Entidad-Relación de las Bases de Datos
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Sistema de Información Geográfica
siginfocentros
6. Detalles de Implementación
El código fuente del sistema esta disponible en la forja, los manuales de
instalación e implementación están disponibles en el siguiente enlace.
http://forja.softwarelibre.gob.ve/projects/siginfocentro/
7. Plataformas y Lenguajes
PHP5: PHP es un acrónimo recursivo que significa PHP Hypertext Pre-processor
(inicialmente PHP Tools, o, Personal Home Page Tools). Publicado bajo la PHP
License, la Free Software Foundation considera esta licencia como software libre.
Symfony: Es un completo framework diseñado para optimizar el desarrollo de las
aplicaciones web mediante algunas de sus principales características. Para
empezar, separa la lógica de negocio, la lógica de servidor y la presentación de la
aplicación web.
Postgresql: PostgreSQL es un sistema de gestión de base de datos relacional
orientada a objetos y libre, publicado bajo la licencia BSD.
PostGIS: PostGIS es un módulo que añade soporte de objetos geográficos a la
base de datos objeto-relacional PostgreSQL, convirtiéndola en una base de datos
espacial para su utilización en Sistema de Información Geográfica. Se publica bajo
la Licencia pública general de GNU.
Mapserver: MapServer es un entorno de desarrollo en código abierto (Open
Source Initiative) para la creación de aplicaciones SIG en Internet/Intranet con el
fin de visualizar, consultar y analizar información geográfica a través de la red
mediante la tecnología Internet Map Server (IMS). MapServer no es un SIG
completo, pero tampoco aspira a serlo.
OpenLayer: OpenLayers hace fácil poner un mapa dinámico en cualquier página
web. Puede mostrar fragmentos del mapa y marcadores cargados de cualquier
fuente. OpenLayers se ha desarrollado para promover el uso de la información
geográfica de todo tipo. OpenLayers es completamente libre, de código abierto de
JavaScript, publicado bajo la licencia BSD (también conocido como el FreeBSD).
Fundación para la investigación y desarrollo de software libre en Venezuela
Este documento se encuentra bajo una Licencia Creative Commons Atribución-NoComercial-Compartir Igual 3.0 Unported.
Descargar