arquitecturas+de+servicios+ de+ información · solucion+monolítica+(mvc) •...
TRANSCRIPT
Arquitecturas de Servicios de Información
Gobierno Electrónico
Arquitectura de SistemasLa arquitectura de sistemas es la visión de diseño que no altera la funcionalidad entregada al usuario.La arquitectura de un sistema busca facilitar el trabajo de desarrollo, la interconexión de soluciones, el mantenimiento de la aplicación a través del tiempo, etc.
Arquitectura de Sistemas
• Soluciones Monolítica (MVC tradicional)• Soluciones Distribuidas/ APIs• Conexión de Servicios (SOA)• Visión y próximos pasos
Solucion Monolítica (MVC)• Uso de una misma tecnología o plataforma para el desarrollo de todos los componentes del sistema.
MVC Tradicional
Solución Distribuida
• La idea es crear módulos independientes y autónomos que responden a distintos dominios de información. Ejm: usuarios, consultas, establecimientos, recetas, etc.
• Estos módulos se comunican entre si usado interfaces programables (APIs).
• Es posible integrar APIs locales y públicas en una misma solución: https://www.programmableweb.com/category/all/apis
Solución Distribuida
Fuente: Construyendo Aplicaciones con Micro-‐servicios, Microsoft Azure, 2016. https://azure.microsoft.com/en-‐us/documentation/articles/service-‐fabric-‐overview-‐microservices/
APIs y MVC del lado del Cliente
Librerias MVC JavaScript: AngularJS, BackboneJS, EmberJS, ReactJS, etc.
APIs y Desarrollo de ServiciosMonolitos y MVC Tradicional APIs y MVC del Lado del ClienteEl programador debe crear una versión del sistema para cada interfaz de presentación
La misma API puede usarse para múltiples interfaces de presentación.
Poca flexibilidad, complejidad aumenta con el tamaño de la aplicación
Cada API es un modulo independiente, que interactúa con otros módulos para crear aplicaciones grandes.
Dependiendo el tamaño de la aplicación, requiere mas recursos de hardware
El hardware de cada API o modulo puede ser optimizado independiente.
Difícil introducir nuevas tecnologías e innovar.
Cada API puede construirse usando tecnologías diferentes.
Conexión de Servicios: SOALa Arquitectura Orientada a Servicios (SOA) nació en los 90s como una solución de gobernanza centrada en la descomposición funcional de servicios por niveles, Ejm: Entidad, negocio, proceso, servicio.
Cada nivel puede tener varios elementos, genera una gran cantidad de servicios. Los siguientes ejemplos son plantillas de clasificación de servicios:https://www.tmforum.org/business-‐process-‐framework/https://www.apqc.org/pcfhttps://bian.org/servicelandscape-‐3-‐0/
Conexión de Servicios: SOA
Las herramientas SOA tradicionales generan una gran cantidad de documentación y están centradas en el proceso, no en el servicio al usuario final.
Al centro de la solución SOA tradicional esta un gestor de procesos (BPM) que actúa como bus de servicios (ESB). Algunos productos SOA incluyen:ORACLE SOAMicrosoft BiztalkJBOSS Entreprise SOA Platform.
Conexión de Servicios• Actualmente se usan APIs, soluciones más simples. Desarrollo
de servicios centrado en su uso, no en el proceso.• La conexión directa entre APIs es considerada la nueva
generación de SOA.
Escenario de Conexión de APIs.Fuente: https://skillsmatter.com/conferences/7062-‐mucon-‐2015-‐the-‐microservices-‐conference
Visión y Próximos PasosEl uso de APIs y la creación de servicios web es un componente habilitador de la visión de gobierno para mejorar de servicios a la población, mejorar la colaboración entre instituciones y publicar datos abiertos.
Arquitectura para la gestión de TICs el Gobierno de Colombia.Fuente: MINTIC Colombia, 2015.
Visión y Próximos Pasos
• Capacitar equipos, aplicar mejores practicas en el desarrollo de APIs
• Diseñar soluciones basadas en APIs que pueden ser reutilizadas en distintos procesos y soluciones.
• Ofrecer y consumir datos externos a través de APIs
• Crear plan institucional de desarrollo de servicios de información basados en APIs.