Story Transcript
Framework Atlas Introducción
Septiembre de 2013
Unidad de Arquitectura y Soporte de Aplicaciones Área de Aplicaciones Especiales y Arquitectura de Software DIAS
ICM. Comunicación e Imagen Corporativa
INDICE
q
INTRODUCCIÓN Ø QUÉ ES ATLAS Ø PORTAL DE CONOCIMIENTO Ø TECNOLOGÍAS BÁSICAS Ø EJEMPLO: APLICACIÓN DE COMPONENTES
q
CICLO DE VIDA DE UN PROYECTO ATLAS
q
SIGUIENTES PASOS
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 2
INTRODUCCIÓN: ¿Qué es ATLAS? ATLAS es una forma de hacer las cosas: Es la forma en que se deben desarrollar aplicaciones en Java para la Comunidad de Madrid. ICM. Comunicación e Imagen Corporativa
ATLAS NO es sólo un conjunto de librerías q
ATLAS es un Framework de Desarrollo de Aplicaciones, y algo más
q
ATLAS define cómo hacer aplicaciones en lenguaje Java (aplicaciones principalmente Web)
q
ATLAS también define el proceso de desarrollo de una aplicación, el ciclo de vida desde que se comienza a implementar código hasta que la aplicación está en producción y se transcurre su mantenimiento.
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 3
INTRODUCCIÓN: ¿Qué es ATLAS? q
ATLAS Incluye:
• Normativa:
ü Qué se debe hacer (normas) ü Cómo se debe hacer (procedimientos)
ICM. Comunicación e Imagen Corporativa
• Librerías (jars): Utilidades para hacer las cosas según la
normativa: Seguridad, Configuración, Trazas, etc. • Módulos de integración con otras aplicaciones (Servicios Web, Documentum, BO, ControlM, etc.) • Plantillas de partida: Arquetipos (aplicación web, librería jar, aplicación batch, web service, etc.) • Herramienta para Validación Automática de la normativa • Herramienta para Generación Automática de Código • Portal de conocimiento y soporte a proveedores, que incluye: ü Documentación detallada ü Transparencias y Videos de los cursos de formación ü Aplicaciones de Ejemplo con código fuente ü Posibilidad de recibir Soporte por parte de Arquitectura
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 4
ICM. Comunicación e Imagen Corporativa
INDICE
q
INTRODUCCIÓN Ø QUÉ ES ATLAS Ø PORTAL DE CONOCIMIENTO Ø TECNOLOGÍAS BÁSICAS Ø EJEMPLO: APLICACIÓN DE COMPONENTES
q
CICLO DE VIDA DE UN PROYECTO ATLAS
q
SIGUIENTES PASOS
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 5
INTRODUCCIÓN: PORTAL DE CONOCIMIENTO
ICM. Comunicación e Imagen Corporativa
http://intranet.madrid.org/arquitecturasw/
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 6
ICM. Comunicación e Imagen Corporativa
INDICE
q
INTRODUCCIÓN Ø QUÉ ES ATLAS Ø PORTAL DE CONOCIMIENTO Ø TECNOLOGÍAS BÁSICAS Ø EJEMPLO: APLICACIÓN DE COMPONENTES
q
CICLO DE VIDA DE UN PROYECTO ATLAS
q
SIGUIENTES PASOS
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 7
ICM. Comunicación e Imagen Corporativa
INTRODUCCIÓN: TECNOLOGÍAS BÁSICAS
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 8
ICM. Comunicación e Imagen Corporativa
INDICE
q
INTRODUCCIÓN Ø QUÉ ES ATLAS Ø PORTAL DE CONOCIMIENTO Ø TECNOLOGÍAS BÁSICAS Ø EJEMPLO: APLICACIÓN DE COMPONENTES
q
CICLO DE VIDA DE UN PROYECTO ATLAS
q
SIGUIENTES PASOS
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 9
INTRODUCCIÓN: EJEMPLO
ICM. Comunicación e Imagen Corporativa
http://desarrollo.madrid.org/atlas_componentes/
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 10
INDICE
INTRODUCCIÓN
q
CICLO DE VIDA DE UN PROYECTO ATLAS Ø ANÁLISIS DE REQUISITOS Ø DISEÑO Ø DESARROLLO Ø RECEPCIÓN + QA Ø PASO A PRODUCCIÓN + ESTABILIZACIÓN Ø MANTENIMIENTO
q
SIGUIENTES PASOS
ICM. Comunicación e Imagen Corporativa
q
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 11
CICLO DE VIDA: ANÁLISIS DE REQUISITOS
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
q
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
PARA EL ANÁLISIS DE REQUISITOS ES NECESARIO: Ø
CONOCER EL CATÁLOGO DE SOLUCIONES DE ICM
Ø
CONOCER LOS COMPONENTES BÁSICOS DE ATLAS
Ø
CONOCER LAS FACILIDADES DE INTEGRACIÓN DE ATLAS
Ø
CONOCER LA NORMATIVA DE ATLAS A ALTO NIVEL
MANOS A LA OBRA: NORMATIVA DE ATLAS
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 12
CICLO DE VIDA: DISEÑO
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
ATLAS PROPORCIONA PLANTILLAS DE PARTIDA Y EJEMPLOS PARA DOCUMENTOS DE DISEÑO FUNCIONAL Y DISEÑO TÉCNICO ORIENTADO A OBJETOS: DIAGRAMAS UML, CASOS DE USO, ETC.
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 13
CICLO DE VIDA: DISEÑO
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
NUEVA NORMATIVA PARA EL DISEÑO DEL MODELO DE DATOS UTILIZANDO ERWIN 7 Ø La normativa incluye normas y buenas prácticas, sin dar lugar a ambigüedades, y explica cómo utilizar la herramienta correctamente. Ø Incluye procedimiento para comparar un modelo ERWIN con la base de datos real, y genera automáticamente los scripts de actualización. Ø Incluye una modificación sustancial en los procedimientos internos de instalación de modelos de datos (ya no se reciben scripts SQL). Ø Supone algunos cambios en la forma de modelar: Ø Obligación de mantener integridad referencial Ø Claves únicas numéricas que se obtienen de secuencias
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 14
CICLO DE VIDA: CODIFICACIÓN
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
Diseño
Entorno ICM Portal de Conocimiento
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
Entorno Desarrollador (Disponible en DVD) Eclipse + plugin Maven
Artifactory Arquetipos Artefactos
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
4. Nutre
Maven Repositorio Local
Framework Atlas | Página 15
CICLO DE VIDA: CODIFICACIÓN
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
ARQUETIPOS: Plantillas de Partida para Proyectos Ø Primero hay que generar un módulo de tipo “proyecto” Ø Dentro de este, se generan todos los módulos que sean necesarios Arquetipos Aplicación Web
proyecto Servicio Web
q
Librería (jar)
Aplicación Batch Aplicación Documentum
…
MANOS A LA OBRA: Generación de una Aplicación Web
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 16
CICLO DE VIDA: CODIFICACIÓN
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Ø Ø
Mantenim.
Tipo de Pruebas Normalizadas: Pruebas Unitarias: Junit, Pruebas de aceptación: Selenium, Pruebas de servicios web: SoapUI, Pruebas de rendimiento: Jmeter Ejecución de las pruebas automatizada mediante maven Cobertura de las pruebas
HERRAMIENTA DE VALIDACIÓN DE LA NORMATIVA Ø Ø
q
Codificación
Paso a Producción + Estabiliz.
DESARROLLO DIRIGIDO POR LAS PRUEBAS: Ø
q
Diseño
Recepción + QA
Comprobación automática del grado de cumplimiento -> Informes PDF Disponible en el entorno del desarrollador (ejecutar periódicamente)
MANOS A LA OBRA: Site generado para una aplicación
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 17
CICLO DE VIDA: CODIFICACIÓN
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Codificación
Paso a Producción + Estabiliz.
Mantenim.
HERRAMIENTA DE GENERACIÓN AUTOMÁTICA DE CÓDIGO Ø Ø
q
Diseño
Recepción + QA
Disponible en las últimas versiones de ATLAS (1.2.0 y 1.2.1) Partiendo del modelo de datos, genera automáticamente código Java y pantallas para administración de catálogos.
MANOS A LA OBRA: Generación de código para un modelo de datos
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 18
CICLO DE VIDA: RECEPCIÓN + QA
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Diseño
Codificación
Recepción + QA
PROCEDIMIENTO Y ESTRUCTURA ENTREGA REGULADOS:
Mantenim.
DE
Ø
Estructura de una entrega: División en módulos técnicos
Ø
Nueva Ficha de Entrega Unificada para todos los entornos Ø Rellenar una ficha por cada módulo técnico a instalar
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Paso a Producción + Estabiliz.
Framework Atlas | Página 19
CICLO DE VIDA: RECEPCIÓN + QA
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
PROCEDIMIENTO PARA LA REALIZACIÓN DE UNA ENTREGA: Ø
Nuevas aplicaciones realizadas fuera de ICM: FTP
Ø
Nuevas aplicaciones realizadas en ICM: Subversion
Ø
Aplicaciones existentes: Subversion
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 20
CICLO DE VIDA: RECEPCIÓN + QA
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Codificación
Paso a Producción + Estabiliz.
Mantenim.
PROCEDIMIENTO DE RECEPCIÓN DE UNA ENTREGA: Ø Ø Ø
q
Diseño
Recepción + QA
SQL -> ERWIN 7 STARTEAM -> Subversion EMPAQUETADO WAR/EAR -> Recepción del Código Fuente
ASEGURAMIENTO DE LA CALIDAD (QA): Ø Ø
Comprobación del cumplimiento de la Normativa: Más ágil, ya se ha ido comprobando durante el desarrollo. Pruebas de Rendimiento: JMeter
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 21
CICLO DE VIDA: PASO A PRODUCCIÓN+ ESTABILIZACION
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
PROCEDIMIENTO DE PASO A PRODUCCIÓN DE UNA ENTREGA: Ø Ø Ø Ø Ø
Similar al Procedimiento de Recepción Sólo se reciben entregas de Subversion (no FTP) Ficha Única de Entrega para cualquier entorno Aplicación GPAP Compilación del Código y Generación del WAR en función del entorno (Maven)
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 22
CICLO DE VIDA: PASO A PRODUCCIÓN+ ESTABILIZACION
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
q
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
FASE DE ESTABILIZACIÓN DE LA APLICACIÓN: Ø
Sucesivas entregas para estabilización a través de Subversion: Ø Creación de TAGs: Estructura del Repositorio de Subversion Ø Guía de Uso de Subversion
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 23
CICLO DE VIDA: MANTENIMIENTO
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
Ø
Ø
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
ESTRUCTURA DE UN PROYECTO Ø environment.properties: Variables específicas del entorno Ø Directorio war/zip: Configuración para diferentes entornos Ø application.properties: Configuración común para cualquier entorno Ø pom.xml: Versionado del framework y de la aplicación MANOS A LA OBRA: VISUALIZACIÓN DE LA ESTRUCTURA DE UN PROYECTO
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 24
CICLO DE VIDA: MANTENIMIENTO
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
Ø
Ø
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
DESPLIEGUE DE UN PROYECTO EN ENTORNO DE ENTREGAS (DESARROLLO): Ø IMPORTANTE: Ejecución de la herramienta de Validación de la Normativa, y Pruebas Unitarias. Ø Despliegue usando Maven desde Eclipse Ø Manos a la Obra: Descarga de una entrega de Subversion y Despliegue en Weblogic de Entregas CREACIÓN DE UNA ENTREGA PARA INSTALACIÓN EN CUALQUIER ENTORNO: Ø IMPORTANTE: Versionado Ø Guía de Uso de Subversion Ø Manos a la Obra: Creación de un TAG en Subversion
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 25
CICLO DE VIDA:
ICM. Comunicación e Imagen Corporativa
Análisis de Requisitos
Ø
Diseño
Codificación
Recepción + QA
Paso a Producción + Estabiliz.
Mantenim.
CONSULTA DE LOS LOGS DE UNA APLICACIÓN: MULO
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
http://desarrollo.madrid.org/mulo_web
Framework Atlas | Página 26
ICM. Comunicación e Imagen Corporativa
INDICE
q
INTRODUCCIÓN
q
CICLO DE VIDA DE UN PROYECTO ATLAS
q
SIGUIENTES PASOS Ø RENOVACIÓN TECNOLÓGICA Ø GENERACIÓN AUTOMÁTICA DE CÓDIGO Ø SUBVERSION Y USO SIMULTÁNEO Ø AUTOFORMACIÓN
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 27
ICM. Comunicación e Imagen Corporativa
SIGUIENTES PASOS: RENOVACIÓN TECNOLÓGICA q
Proceso de Renovación Tecnológica en Marcha
q
Conocimiento por parte de los proveedores de las tecnologías base: JSF, Spring, Hibernate
q
“Productización” del Framework: Backward Compatibility a partir de la versión 1.2.0
q
A partir de la versión 1.2.4 se pueden desplegar las aplicaciones ATLAS en Tomcat
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 28
SIGUIENTES PASOS: GENERACIÓN AUTOMÁTICA DE CÓDIGO
Herramienta de Generación de Código muy potente, puede ahorrar mucho tiempo de desarrollo q Genera código Java y pantallas para administración de catálogos q Soporta generación de código para Vistas de base de datos (no editables) q Soporte para campos de tipo BLOB y CLOB q Exportación de Listados a Excel y PDF q…
ICM. Comunicación e Imagen Corporativa
q
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 29
SIGUIENTES PASOS: SUBVERSION Y USO SIMULTÁNEO
ICM. Comunicación e Imagen Corporativa
q
Nueva normativa para desarrollo de varias líneas paralelas con Subversion: q
La normativa define normas y roles claros para asignar responsabilidades
q
Permite realizar un evolutivo y un correctivo a la vez, incluso por distintos proveedores
q
Se apoya en el uso de la herramienta Subversion y el plugin Subclipse
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 30
SIGUIENTES PASOS: AUTOFORMACIÓN
Vídeos para la auto-formación disponibles en el Portal
ICM. Comunicación e Imagen Corporativa
q
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 31
Algunos Enlaces de la presentación q
Aplicación de Componentes ATLAS (usuario_ok/usuario_ok) : q
ICM. Comunicación e Imagen Corporativa
q
Portal para el Desarrollo de Aplicaciones (acceso libre): q
q
http://www.madrid.org/arquitecturasw
Arquetipo Web (usuario_ok/usuario_ok): q
q
http://desarrollo.madrid.org/atlas_componentes/
http://desarrollo.madrid.org/ArquetipoWeb/
Repositorio Subversion para el proyecto XXXX: q
https://subversion01:8443/svn/xxxx
Agencia de Informática y Comunicaciones de la Comunidad de Madrid
Framework Atlas | Página 32