El subsistema de arquitectura recoge la propuesta de modelo de arquitectura software a utilizar en las aplicaciones, inicialmente en JEE; además se documentan las distintas tecnologías disponibles para facilitar el desarrollo de aplicaciones. Se incluye también un área sobre la arquitectura de sistemas de información de la Junta de Andalucía, estableciendo las recomendaciones de uso de los sistemas de información horizontales, las herramientas horizontales y las infraestructuras software. Por último, el subsistema contempla directrices y recomendaciones sobre integración de sistemas de información, utilizando los conceptos de arquitectura basada en servicios apoyándose en el bus de interoperabilidad de la Junta de Andalucía.
En cuanto a las tecnologías disponibles, MADEJA propondrá una selección de las mismas que serán las recomendadas, aunque también se documentarán otras que, no siendo las recomendadas, son utilizadas en proyectos preexistentes y sobre las cuales habrá que establecer unas condiciones de uso.
- Homogeneizar la arquitectura de aplicaciones.
- Uso y reutilización de los sistemas de información de la Junta de Andalucía.
- Proporcionar un modelo de interoperabilidad de las aplicaciones y los sistemas de información.
- Documentar y seleccionar las distintas tecnologías que dan soporte a la arquitectura propuesta.
Arquitectura de Sistemas de Información
Esta área presenta la Arquitectura de Sistemas de Información existente en la Junta de Andalucía para el desarrollo de aplicaciones. Dan forma a esta arquitectura los Sistemas de Información Horizontal, Herramientas Software e Infraestructura Software. Cada nuevo sistema de información a desarrollar se apoyará en esta área para identificar sus interrelaciones con otros sistemas y las pautas que rigen tales relaciones.
Definiciones de tipos de sistemas de información en la Junta de Andalucía:
- "Sistema de Información Sectorial", como el software destinado a la gestión de la información de uno o varios procedimientos administrativos que afectan al ámbito de una única Consejería.
- "Sistema de Información Horizontal", como el software destinado a la gestión de la información de uno o varios procedimientos administrativos que afectan al ámbito de varías Consejerías, incluso cuando la competencia en la gestión y definición de los procedimientos afectados recaiga en una sola Consejería.
- "Herramientas Software", como el software que cubre una determinada funcionalidad que no se corresponde con ningún procedimiento administrativo.
- "Infraestructuras Software", como el software que cubre una determinada funcionalidad y está destinado a ser utilizado como software de base para el desarrollo de los Sistemas de Información Sectoriales y Horizontales de la Junta de Andalucía.
GUIA: Gestión Unificada de Identidades de Andalucía
GUIA es una solución global de seguridad, que permite la gestión unificada de las identidades digitales de los usuarios de los sistemas de información de la Junta de Andalucía, y trata de una forma directa la autenticación e identificación de las identidades, proporcionando garantías de privacidad y seguridad sobre las aplicaciones y sistemas.
El contenido de este área ofrece pautas y recursos para la integración de aplicaciones con GUIA. Estas pautas son de aplicación para nuevos desarrollos y aplicaciones están sujetas a mantenimiento. Como primera toma de contacto y para hacerse una composición de lugar acerca de la información gestionada y ofrecida por GUIA a las aplicaciones que se integren, se recomienda consultar los primeros recursos que se muestran más abajo en la tabla del mismo nombre.
En el apartado de "Ayuda y Soporte > Glosario" se puede consultar el "Glosario del Proyecto GUIA"
Para resolver cualquier duda que pueda surgir en relación a esta información, visite siguiente enlace: Gestión del servicio - GUIA
Pautas
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
PAUT-0116 | Integración de Aplicaciones en GUIA | Pauta | Directriz | Obligatoria |
LIBP-0202 | Integración en Autenticación | Libro de pautas | Directriz | Recomendada |
LIBP-0203 | Integración en Autorización | Libro de pautas | Directriz | Recomendada |
LIBP-0204 | Integración en Uso del directorio | Libro de pautas | Directriz | Recomendada |
LIBP-0205 | Integración en Aprovisionamiento | Libro de pautas | Directriz | Recomendada |
LIBP-0206 | Integración Durante la Fase de Transición | Libro de pautas | Directriz | Recomendada |
LIBP-0207 | Gestión de la información de usuarios en aplicaciones integradas | Libro de pautas | Directriz | Obligatoria |
LIBP-0208 | Integración de aplicaciones con el Single Sign-On de Escritorio | Libro de pautas | Directriz | Obligatoria |
Procedimientos
Código | Título | Carácter |
---|---|---|
PROC-0024 | Procedimiento de Integración de Aplicaciones Existentes | Recomendado |
Recursos
SIGC: Sistema de Información Geográfica Corporativo
El Sistema de Información Geográfica o SIG Corporativo de la Junta de Andalucía es un proyecto de carácter horizontal cuyo objetivo es facilitar los mecanismos de acceso a sistemas, aplicaciones, herramientas, datos y servicios espaciales existentes en la Junta de Andalucía. Así mismo, es objeto del SIGC asegurar la independencia tecnológica, aportando soluciones basadas en el uso de estándares que favorezcan la integración de sistemas.
En el apartado de "Ayuda y Soporte > Glosario" se puede consultar el "Glosario del SIG Corporativo"
Pautas
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
PAUT-0004 | Aplicación de Normativa Legal | Pauta | Directriz | Obligatoria |
PAUT-0005 | Aplicación de Normativa Técnica | Pauta | Directriz | Recomendada |
PAUT-0006 | Uso de Herramientas SIG en Software Libre | Pauta | Directriz | Recomendada |
PAUT-0007 | Elaboración de Metadatos | Pauta | Directriz | Recomendada |
PAUT-0008 | Uso del Sistema Geodésico ETRS89 | Pauta | Directriz | Obligatoria |
PAUT-0009 | Uso del Servicio Mashup del SIG Corporativo | Pauta | Consejo | |
PAUT-0010 | Uso de Calar como Herramienta de Transformación Geodésica | Pauta | Consejo | |
PAUT-0011 | Uso del Servicio de Geodesia del SIG Corporativo | Pauta | Consejo | |
PAUT-0012 | Uso de los Servicios de Callejero del SIG Corporativo | Pauta | Consejo | |
PAUT-0013 | Uso de los Servicios de la IDEAndalucía | Pauta | Consejo | |
PAUT-0014 | Uso del Servicio de Descargas del SIG Corporativo | Pauta | Consejo |
Recursos
Alfresco
El contenido de este área ofrece las pautas para el desarrollo de aplicaciones que usen el gestor documental Alfresco.
Pautas
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
PAUT-0023 | Opciones de desarrollo con Alfresco | Pauta | Consejo |
Uso de Alfresco desde Terceras Aplicaciones
El gestor de contenidos Alfresco contempla un conjunto de casos de uso de negocio, que soporta a través de servicios web de acceso al repositorio remoto para aplicaciones y procesos de negocio.
Pautas
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
PAUT-0029 | Configuración de acceso al Repositorio | Pauta | Directriz | Obligatoria |
PAUT-0024 | Construccion de una capa de acceso personalizada | Pauta | Directriz | Recomendada |
PAUT-0025 | Limitación de registros devueltos | Pauta | Directriz | Recomendada |
Recursos
Código | Título | Tipo | Carácter |
---|---|---|---|
RECU-0041 | Ejemplos de uso de servicos web | Ejemplo | Recomendado |
RECU-0040 | Servicios Web de Alfresco | Manual | Recomendado |
RECU-0004 | Servicios Web en Alfresco | Ficha | Recomendado |
RECU-0043 | Tipos de datos para los servicios web | Manual | Recomendado |
RECU-0045 | Uso de Web Scripts | Manual | Recomendado |
RECU-0046 | Ejemplos de Web Scripts | Ejemplo | Recomendado |
RECU-0005 | Web Scripts | Ficha | Recomendado |
RECU-0047 | API de JavaScripts | Manual | Recomendado |
RECU-0048 | Scripts de Ejemplo | Ejemplo | Recomendado |
RECU-0006 | API JavaScript | Ficha | Recomendado |
Ejemplos Ampliados de Acceso a Alfresco
Se han recopilado ejemplos de acceso al repositorio de Alfresco para facilitar el desarrollo de aplicaciones donde se requiera este tipo de vínculo con el gestor de contenidos. Los ejemplos se han estructurado por lenguajes, funcionalidades y uso avanzado.
Estructuras por Lenguajes
Estructura por Funcionalidades
Uso Básico
Tabla de Funcionalidades | ||
---|---|---|
Documentos | Consulta | Java API |
Java JCR API | ||
JavaScript | ||
WebScript | ||
Gestión | Java API | |
Java JCR API | ||
JavaScript | ||
WebScript | ||
Espacios | Consulta | Java API |
Java JCR API | ||
JavaScript | ||
WebScript | ||
Gestión | Java API | |
Java JRC API | ||
JavaScript | ||
WebScript |
Uso Avanzado
Tabla de funcionalidades | |
---|---|
Búsquedas | Java API |
Java JCR API | |
JavaScript | |
WebScript | |
Gestión Integrada de Usuarios | Java API |
Java JCR API | |
JavaScript | |
WebScript | |
Categorías y Aspectos | Java API |
Java JCR API | |
JavaScript | |
WebScript | |
Reglas y procedimientos | Java API |
Java JCR API | |
JavaScript | |
WebScript |
Recursos
Extensión de Alfresco
El gestor de contenidos Alfresco ofrece la posibilidad de ampliar sus funcionalidades y características básicas mediante extensiones de su modelo de contenidos y de sus servicios. Se han establecido directrices respecto a estas extensiones y a su despliegue.
Pautas
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
PAUT-0026 | Extension de clases base | Pauta | Directriz | Obligatoria |
PAUT-0027 | Metodo de despliegue de extensiones en Alfresco | Pauta | Directriz | Recomendada |
LIBP-0002 | Desarrollo del modelo de contenidos | Libro de pautas | Directriz | Obligatoria |
Recursos
Código | Título | Tipo | Carácter |
---|---|---|---|
RECU-0049 | Métodos para el despliegue de extensiones de Alfresco | Manual | Recomendado |
RECU-0050 | Extensiones en el modelo de contenidos | Manual | Recomendado |
RECU-0051 | Creación de acciones personalizadas | Manual | Recomendado |
RECU-0052 | Comportamientos | Manual | Recomendado |
RECU-0053 | Desarrollo de extracción de datos | Manual | Recomendado |
RECU-0054 | Workflows | Manual | Recomendado |
RECU-0055 | Nuevos Objetos para motor JavaScript | Manual | Recomendado |
Arquitectura Tecnológica
El subsistema de arquitectura recoge la propuesta de modelo de arquitectura software a utilizar en las aplicaciones JEE, así como de documentar las distintas tecnologías disponibles para facilitar el desarrollo de aplicaciones.
MADEJA recomienda el uso del modelo arquitectónico basado en capas, para conseguir la independencia y robustez de cada una de ellas centrándose en sus objetivos específicos.
Las pautas referentes a las buenas prácticas de desarrollo, procedimientos y recursos que tratan estas tecnologías pueden consultarse en el área de construcción por capas del subsistema de desarrollo.
- La capa de presentación y control
- Capa con la el control de la lógica de negocio con la que se operan los datos
- El acceso a la información persistente
Pautas
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
LIBP-0005 | Arquitectura Tecnológica de Referencia | Libro de pautas | Directriz | Recomendada |
Capa de Acceso a Datos
En la capa de datos se gestiona el acceso a los datos de la aplicación. Se emplean gestores de bases de datos que realizan la recuperación y el almacenamiento físico de los datos a partir de solicitudes de la capa de negocio.
En esta capa se puede hacer uso de una propiedad denominada persistencia de objetos, que permite vincular objetos de bases de datos relacionales a objetos de lenguajes de programación como Java, para aumentar el nivel de abstracción y facilitar el acceso a los datos desde la capa de negocio. Existen varias implementaciones tecnológicas sobre persistencia que deberán emplearse atendiendo a las necesidades de cada aplicación.
Capa de Negocio
La capa lógica de negocios ocupa un lugar preeminente en la construcción de una infraestructura de software, al permitir el crecimiento y la extensión de servicios para todas las aplicaciones existentes y futuras.
La definición de los limites de cada capa nos permitirá definir correctamente la colaboración que proporcionará cada una de ellas y descubriremos que la capa intermedia es inevitablemente la lógica de negocios. Esto dará lugar a una infraestructura robusta y lista para la extensión y el crecimiento como proveedora de servicios.
Para la construcción de esta capa se emplearán los componentes tecnológicos más adecuados en cada caso.
Capa de Presentación
La programación por capas es un estilo de programación en el que el objetivo primordial es la separación de la lógica de negocios de la lógica de diseño; un ejemplo básico de esto consiste en separar la capa de datos de la capa de presentación al usuario. La ventaja principal de este estilo es que el desarrollo se puede llevar a cabo en varios niveles y, en caso de que sobrevenga algún cambio, sólo es necesario actuar sobre el nivel requerido sin que sea necesario realizar modificaciones en el código de los restantes niveles.
La capa de presentación es la que ve el usuario (también se la denomina "capa de usuario"), presenta el sistema al usuario, le comunica la información y captura la información del usuario en un mínimo proceso (realiza un filtrado previo para comprobar que no hay errores de formato). Esta capa se comunica únicamente con la capa de negocio. También es conocida como interfaz gráfica y debe tener la característica de ser "amigable" (comprensible y fácil de usar) para el usuario.
Recursos
Código | Título | Tipo | Carácter |
---|---|---|---|
RECU-0007 | Comparativa JSF | Ficha | Recomendado |
RECU-0101 | JavaServer Faces(JSF) | Ficha Técnica | Recomendado |
RECU-0102 | Ficha de JSF2 | Ficha Técnica | Recomendado |
RECU-0103 | ICE Faces | Ficha Técnica | Permitido |
RECU-0085 | RichFaces | Ficha Técnica | Recomendado |
RECU-0086 | Tomahawk | Ficha Técnica | Permitido |
RECU-0087 | Apache Trinidad | Ficha Técnica | Permitido |
RECU-0088 | Tobago | Ficha Técnica | Permitido |
RECU-0089 | AJAX | Ficha Técnica | Recomendado |
RECU-0090 | DWR | Ficha Técnica | Permitido |
RECU-0091 | GWT | Ficha Técnica | Permitido |
RECU-0092 | Mojarra | Ficha Técnica | Recomendado |
Integración
El área de Integración contiene pautas para el desarrollo de aplicaciones con arquitectura orientada a servicio, con la finalidad de aumentar el grado de interoperabilidad de los sistemas de información y con la capacidad de atender de forma más eficiente los procesos de negocio.
Se recogerán las recomendaciones de la Plataforma de Interoperabilidad de la Junta de Andalucía (PLATINA) y una propuesta tecnológica de referencia, agilizando el desarrollo de nuevos servicios y el uso de los existentes.
En el futuro se añadirá el catálogo de servicios disponibles en la Junta de Andalucía, para dar una descripción funcional y procedimental de su uso, registro de usuarios y recomendaciones.
Pautas
Código | Título | Tipo | Carácter | |
---|---|---|---|---|
PAUT-0182 | Uso de especificaciones y estándares de servicios web | Pauta | Directriz | Recomendada |
LIBP-0006 | Creación de Servicios Web | Libro de pautas | Directriz | Obligatoria |
LIBP-0007 | Reglas de Codificación | Libro de pautas | Directriz | Obligatoria |
PAUT-0030 | Política de Versionado | Pauta | Directriz | Obligatoria |
PAUT-0031 | Identificación de Mensajes y EndPoints (WS-Addressing) | Pauta | Directriz | Obligatoria |
PAUT-0032 | Seguridad | Pauta | Directriz | Obligatoria |
PAUT-0033 | Manejo de Errores | Pauta | Directriz | Obligatoria |
Recursos
Código | Título | Tipo | Carácter |
---|---|---|---|
RECU-0099 | Apis y Frameworks de Servicios Webs | Especificación | Recomendado |
RECU-0100 | Especificaciones y estándares de servicios web | Especificación | Recomendado |
RECU-0019 | Plataforma de Interoperabilidad de la Junta de Andalucía | Ficha | Recomendado |