Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porGerardo Miguélez Naranjo Modificado hace 9 años
1
Lenguajes de programación-Frameworks ICM
2
00 INTRODUCCIÓN 01 SITUACIÓN ACTUAL 02 RENOVACIÓN TECNOLÓGICA 03 TENDENCIAS 04 EXPERIENCIA CON ATLAS 05 VENTAJAS / INCONVENIENTES 06 ALTERNATIVAS 07 ÁREAS DE MEJORA 08 HERRAMIENTAS 09 PROYECTOS DE REFERENCIA
3
00 INTRODUCCIÓN AYESA posee más de 25 años de experiencia en el uso de tecnologías propietarias y Open Source. Apoyamos a nuestros clientes en la toma de decisiones estratégicas, tanto para la adquisición de software con licenciamiento, como para la definición de plataformas de desarrollo. Licenciamiento Estrategia de producto Ecosistema Time to Market Migración Legacy Tiempo de Respuesta Esta presentación pretende proporcionar un hilo conductor para tratar los siguientes temas: Estado del arte en nuestros clientes Tendencias en nuestros proyectos Cómo abordamos la renovación tecnológica y hacia dónde nos dirigimos Framework ATLAS: ventajas, inconvenientes, áreas de mejora Alternativas y comparativas con otros frameworks Herramientas para automatizar pruebas
4
01 TECNOLOGIAS EN NUESTROS CLIENTES
5
00 INTRODUCCIÓN
6
01 SITUACIÓN ACTUAL Tecnología ActualTendencia COBOL ORACLE DeveloperA medio plazo migrar a Java JavaLenguaje objetivo, estándar, software factories Fatwire / Liferay / OpenCMSPHP para web, Drupal, Wordpress SAP Business Object SAP Business Object + Pentaho para no estratégicas + QlickView Documentum / CMA File System para ficheros longevos Movilidad Cordova y Jquery MobileCualquier Entorno Hibrido o Responsive SAPSAP dentro de ECOFIN Delphi: servicios OCX/ActiveX Applets: firma digital En estudio de solución viable
7
02 RENOVACIÓN TECNOLÓGICA AYESA está ejecutando permanentemente actualizaciones tecnológicas en nuestros clientes, mediante diversas técnicas y aproximaciones. Para determinar el mejor sistema de renovación, AYESA estudia inicialmente el estado del arte de los sistemas a modernizar, y a continuación, se detalla un plan faseado para la misma. Estudio del estado del arte Orden de las interacciones y comunicaciones Modernización progresiva
8
02 RENOVACIÓN TECNOLÓGICA El estudio del estado de los sistemas incluye principalmente obtener el conocimiento suficiente para determinar el grado de interrelación entre los distintos aplicativos o módulos. El objetivo es poder determinar un orden de evolución que impacte lo menos posible en el uso cotidiano del sistema. Estos estudios incluyen esquemas de base de datos, integraciones entre los distintos componentes del sistema, etc. Si los sistemas cuentan con una documentación obsoleta en cuanto a arquitectura o diseño, en esta fase inicial se actualizarán para contar con una documentación base sobre la que trabajar. Estudio del estado del arte Orden de las interacciones y comunicaciones Modernización progresiva
9
02 RENOVACIÓN TECNOLÓGICA Para establecer un orden sobre las comunicaciones, consultas, intercambio de información, etc. entre los distintos componentes, AYESA recomienda la incorporación de ciertos elementos que facilitan dicha labor: Bus de interoperabilidad Single Sign On Servicios proveedores de datos Microservicios Servicios WEB: SOAP, REST, etc. Estudio del estado del arte Orden de las interacciones y comunicaciones Modernización progresiva
10
02 RENOVACIÓN TECNOLÓGICA Estudio del estado del arte Orden de las interacciones y comunicaciones Modernización progresiva ESB: Conectividad Transformación Validación Seguridad Mediación Trazabilidad Enrutamiento Directorio de Servicios
11
02 RENOVACIÓN TECNOLÓGICA Habitualmente, la renovación tecnológica se debe a una migración de lenguaje, o de frameworks para evitar una obsolescencia en el software que nos impida evolucionar o perfeccionar nuestros sistemas. Estudio del estado del arte Orden de las interacciones y comunicaciones Modernización progresiva 55 Para nosotros, habitualmente las renovaciones tecnológicas se basan en evoluciones de Oracle Forms a Java, de JSP/Struts a JSF, actualización tecnológica, etc. En estos casos, se contemplan como mínimo las siguientes alternativas: Actualización de la tecnología utilizada Desarrollo desde cero en el framework o lenguaje objetivo (si se pretende actualizar también el funcional de forma importante) Migración módulo a módulo manteniendo el dato único Migración módulo a módulo creando una nueva base de datos
12
03 TENDENCIAS Las tendencias actuales en cuanto a desarrollo en general en el entorno del Sector Público se centran en mejorar: Agilidad: mediante el uso de arquetipos y tecnologías conocidas y bajo control. También es importante utilizar una metodología que facilite la gestión de dichos desarrollos, como SCRUM. Calidad de código: la integración continua es una base fundamental para que estos controles sean continuos, baratos e instantáneos. Para ello, normalmente, utilizamos Jenkins, SonarQube, etc. Es importante que estos controles se inicien en el propio workbench. Calidad en runtime: dado que las herramientas no pueden asegurar un buen uso de las mismas de forma garantizada, para que una aplicación utilice de forma óptima los recursos, se monitorizará permanentemente a la misma. Time to market: periodo entre la petición por el usuario final y la entrega en producción. Agilidad. Generadores de aplicaciones: Open Xava, Spring Roo Asistentes para migraciones tecnológicas Nuevos frameworks y lenguajes: Ruby on rails, Dyango, FWK para big data, etc. para pequeños pilotos. Objetivo: producir software que esté siempre operativo, disponible y sin fallos.
13
03 TENDENCIAS En cuanto a áreas de conocimiento que están siendo especialmente demandadas por nuestros clientes se encuentran: Big Data: tenemos el mayor almacén de datos de España con 7M contadores con lectura horaria Cloud: sobre todo en sector privado, estamos sirviendo numerosos servicios, generando un ahorro importante para nuestros clientes También se nos requiere habitualmente para la realización de consultorías para determinar cómo abordar ciertos cambios tecnológicos, especialmente relacionados con la Administración Electrónica y Open Source.
14
04 EXPERIENCIA CON ATLAS Nuestra experiencia con el uso del framework ATLAS ha sido buena, incluso cuando desarrollamos por primera vez uilizando este Framework. Una vez el equipo experto en las tecnologías básicas (Spring, Hibernate y JSF) se hizo con el framework, las tareas de desarrollo se realizaron de forma relativamente rápida. La curva de aprendizaje es pequeña en comparación con otras tecnologías propietarias o legacy.
15
05 VENTAJAS / INCONVENIENTES El enfoque del framework permite trabajar fluidamente y ahorrar tiempo en tareas no productivas, permitiendo a los desarrolladores centrarse más en la lógica de negocio de la solución que en cuestiones de configuración. El framework transmite confianza por la estabilidad de los componentes que usa. Ventajas A partir del modelo de datos, puedes obtener una versión ejecutable del CRUD de la aplicación lo que proporciona un punto de partida importante. Muchas funcionalidades disponibles out of the box. En muchos casos se aísla a los desarrolladores de la complejidad de ciertas funcionalidades. Abundante documentación en la que se indica lo que se puede hacer y lo que no. Para los equipos de mantenimiento de los aplicativos, se simplifica enormemente la tarea ya que todas las aplicaciones están desarrolladas de forma similar.
16
05 VENTAJAS / INCONVENIENTES Más Ventajas Estilo unificado, haciendo que todas las soluciones que se desarrollen tengan la misma apariencia. Soporte a los desarrolladores. El framework tiene un largo recorrido en el y el soporte cuenta con una gran experiencia que permite solucionar las dudas rápidamente. Evolución. El framework se mantiene estable y evoluciona con versiones verificadas. Corrección de bugs. Los bugs se corrigen transversalmente y no se aplican al ámbito de una solución concreta. La verificación de la calidad de los desarrollos está automatizada mediante una herramienta que realiza una auditoría del código que hay que superar la primera entrega.
17
05 VENTAJAS / INCONVENIENTES Desventajas Se añade burocracia adicional para poder hacer cualquier tarea que no esté contemplada en la normativa, teniendo que pedir autorizaciones expresas, lo que añade retrasos. Para algunos proyectos, el limitar tanto las tecnologías a utilizar, puede hacer que no se utilice la más adecuada para cada caso. Se limita el uso de otros frameworks que podrían acelerar el desarrollo en ciertos casos. El uso de soluciones personalizadas, en lugar de basarse en otras estándares ya existentes provoca que la curva de aprendizaje aumente. Y se complique la evolución tecnológica posterior. Por ejemplo: componentes de presentación que podrían sustituirse por otros existentes en el mercado.
18
06 ALTERNATIVAS Desarrollar otro framework propio basado en otras tecnologías mas actuales. Ventajas Adopción de las tecnologías más actualizadas para cada necesidad. Desventajas Se perdería, al menos en parte, el desarrollo realizado en el framework ATLAS Implicaría que habría dos líneas de mantenimiento, una para las aplicaciones ya desarrolladas en ATLAS y otra para los nuevos aplicativos que se desarrollen con el nuevo framework. Sería necesario gestionar el cambio entre los desarrolladores, especialmente con el uso que podrían hacer con las nuevas tecnologías.
19
07 AREA DE MEJORA Evolucionar ATLAS sustituyendo o incorporando algunas de las tecnologías utilizadas actualmente. Por ejemplo añadir Vaadin o Primefaces como opción para la capa de presentación y dependiendo de las características del proyecto utilizar uno u otro. HTML5, CSS3, Font Icons and Less Cross-Browser Compatible Responsive Design Mobile Optimized Highly Customizable Ventajas Mayor flexibilidad a la hora de acometer proyectos con diferentes características Desventajas Mayor carga de trabajo en el mantenimiento del propio framework Ampliación de los conocimientos necesarios para el equipo de mantenimiento y de los equipos de desarrollo
20
07 ÁREAS DE MEJORA ICM tiene a GEA como Gestor de Expediente en una tecnología totalmente obsoleta (FORMS) y difícilmente evolucionable. Además en muchos sistemas que no son estrictamente un gestor de expedientes hace falta la gestión de procesos. Por lo que sería necesario la implantación de un gestor de procesos, BPM, que diera dos niveles de servicio: Un servicio que aporte la funcionalidad para poder realizar la gestión de procesos BPM. Un aplicativo de gestión de expedientes que permita la tramitación de los mismos apoyándose en el servicio anterior. Para ello se debería realizar un escritorio de tramitación que permitiera realizar estas gestiones, de forma que para incorporar nuevos tipos de expedientes a tramitar solo se tuviera que: Definir el proceso, modelado con BPMN2 Definir la tabla de decisiones Reglas Pantallas específicas para la incorporación de la información en las tareas de usuario del procedimiento específico Nuestra propuesta en este sentido sería utilizar JBPM, que ya hemos utilizado en varios proyectos, incluso internacionales, aunque también trabajamos con otros.
21
07 ÁREAS DE MEJORA Existen soluciones de software libre con funcionalidad iguales o superiores a Fatwire. La opción más completa OpenSource sería Drupal/Wordpress, que permite combinar la gestión de portales con la gestión de contenidos, incluyendo la funcionalidad de definir plantillas de páginas, incluso de sitios web, lo que permite normalizar y simplificar los desarrollos. Actualmente se están realizando arquetipos para aplicaciones de movilidad basadas en Cordova y JQuery Mobile. En este sentido, AYESA entiende que la mejor solución es un sistema hibrido como el utilizado, pero debido a la inmadurez del mercado en estos sistemas, se recomienda la evaluación de otras alternativas, como Bootstrap o Foundation, que podrían ser alternativas más modernas (Html 5) a JQuery Mobile.
22
07 ÁREAS DE MEJORA Utilizar servidores de aplicaciones Open Source avanzados, como WILDFLY (JBoss), que proveen estándares de J2EE que pueden facilitar los desarrollos y aportar flexibilidad, como EJB3, pila de servicios interrelacionados, colas de mensajes, cluster, etc., Se podrá mantener Tomcat como contenedor ligero de aplicaciones tal y como se hace actualmente, para aplicaciones que requieran de menor pila tecnológica.
23
07 ÁREAS DE MEJORA Suite de interoperabilidad La solución propuesta se basa en el estándar SOA, utilizando los diferentes componentes de software libre de WSO2, para la interconexión e interoperabilidad de sistemas. En concreto estos componentes son: WSO2 Enterprise Service Bus WSO2 Data Services Server WSO2 Governance Registry WSO2 Identity Server El WSO2 Enterprise Service Bus es un ESB, intuitivo, ligero y de alto rendimiento 100% open source. Soporta todos los estándares y patrones de integración, lo que permite la interoperabilidad de sistemas heterogéneos y aplicaciones de negocio. Dispone de más de 100 conectores que facilitan la integración con la mayoría de los sistemas empresariales. WSO2 Identity Server proporciona identidades digitales para los usuarios de nuestros sistemas, y como gran ventaja un Single Sign On corporativo, que facilitará la evolución de los sistemas.
24
07 ÁREAS DE MEJORA WSO2 Data Services Server es capaz de exponer servicios tanto SOAP como REST para poder tratar fuentes de datos diversas, como se muestra en la siguiente figura. De esta forma cualquier acceso a datos, ya sea de una base de datos relacional tradicional, NoSQL o ficheros de datos (XML, CSV, etc) o incluso almacenes personalizados pueden ser convertidos a servicios con tan solo configuración. WSO2 Governance Registry permite almacenar, catalogar, indexar administrar y gestionar los metadatos de cualquier tipo de activo. Proporciona un completo repositorio de meta-datos y permite la gestión completa de versiones de servicios, la gestión de su ciclo de vida, un modelo de administración basado en usuarios, roles y permisos, y otras características, tales como el etiquetado, la clasificación y comentarios. WSO2 Data Analytics Server es una plataforma completa de análisis de datos; se produce la fusión por lotes y analítica en tiempo real de cualquier fuente de datos con el análisis predictivo a través de la máquina de aprendizaje. Es compatible con las exigencias de no sólo un negocio, sino de soluciones de Internet de las Cosas, aplicaciones Web y móviles.
25
08 HERRAMIENTAS PARA AUTOMATIZAR PRUEBAS en TODAS las fases Automatización de Pruebas del Proyecto
26
09 PROYECTOS DE REFERENCIA Portafirmas ARCHIVE, Portal Transparencia ERES Cédulas de Habitabilidad SIRHUS (Recursos Humanos) Oracle Forms GIRO (ECOFIN) SAP Spring, WSO2, JSF, Hibernate, JPA Sistemas: Spring, WSO2, JSF, Hibernate, JPA Lecturas de contadores – J2EE, Spring, JSF Sistemas comerciales – COBOL, DB2, J2EE, Spring, JSF Sistema de gestión de extranjería Web Poder Judicial
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.