Upload
phungkhanh
View
215
Download
2
Embed Size (px)
Citation preview
1
Desafíos en proyectos de gran escala, apalancados en tecnologías como BPM,
SOA y J2EE. Caso RUNT
Alvaro Javier [email protected]
Heinsohn Software House
6337070 ext 1419
Bogotá, Colombia
Santiago [email protected]
Heinsohn Software House
6337070 ext 1420
Bogotá, Colombia
XXIX Salón de Informática -Agosto'2009 2
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del
proyecto RUNT.� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeño� Conclusiones
XXIX Salón de Informática -Agosto'2009 3
Objetivo de la Presentación
� Presentar los principales desafíos y problemáticas que hicieron parte del proyecto de desarrollo del software que soporta el RUNT.
� Se presenta:� Un contexto de negocio del proyecto RUNT.� Los principales componentes de Software dentro de la arquitectura.� Los desafíos y problemáticas más representativos.
XXIX Salón de Informática -Agosto'2009 4
Alcance de la Presentación
La presentación se enfoca en la arquitectura de aplicaciones, y su impacto en la estrategia de desarrollo.
El papel de Heinsohn Software House, también ha sido enfocado únicamente en esta área.
Arquitectura Técnica (Hardware y Acceso)
Arquitectura de Datos
Arquitectura de Aplicaciones
Arquitectura de Negocio
XXIX Salón de Informática -Agosto'2009 5
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del
proyecto RUNT.� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeño� Conclusiones
XXIX Salón de Informática -Agosto'2009 6
Registro Único Nacional de Tránsito (RUNT)Definition y Objetivo
El objetivo principal del RUNT es generar un modelo de operación, administración y mantenimiento de la información que permita validar, registrar y autorizar las transacciones relacionadas con el sector de transito y transporte a nivel nacional. Incluyendo información de:
� Automotores� Conductores� Seguros� Accidentes� Empresas de Transporte � Personas Naturales y Jurídicas que prestan servicios al sector� …
El RUNT está concebido como una solución de Back End que apoya en la gestión de atención de trámites en los Organismos de tránsito y las direcciones territoriales.
XXIX Salón de Informática -Agosto'2009 7
Registro Único Nacional de Tránsito (RUNT)Modelo de Operación
XXIX Salón de Informática -Agosto'2009 8
Registro Único Nacional de Tránsito (RUNT)Integración con Entidades Externas: OTs y DTs
Organismos de Tránsito (236)
Direcciones Territoriales (20)(Antioquia y Chocó, Atlántico, Bolívar San Andres y Providencia, Boyacá y Casanare, Huila y Caquetá, Magdalena, Nariño, Cauca, Cesar, Córdoba y Sucre, Cundinamarca, Santander, Risaralda, Guajira, Valle, …)
XXIX Salón de Informática -Agosto'2009 9
Registro Único Nacional de Tránsito (RUNT)Integración con Entidades Externas: Otros Actores
Tipo A(Trámites, Registro
Información, Consultas)
Tipo B(Registro Información, Consultas)
Tipo C(Consultas)
XXIX Salón de Informática -Agosto'2009 10
Registro Único Nacional de Tránsito (RUNT)Beneficios para el sector
� Permitirá validar, autorizar y registrar las transacciones resultado de trámites, en línea y tiempo real.
� Centralizará y unificará la información del sector de tránsito y transporte terrestre.
� Mejorará la calidad de la información� Incrementará su capacidad de control y disminuirá los
problemas de seguridad.� Apoyará la planeación que adelantan las entidades del
sector, mejorando la toma de decisiones y la definición de políticas.
� Modernizará el sector de tránsito y transporte� Contribuirá a la mayor organización de un sector vital de
la economía del país.
XXIX Salón de Informática -Agosto'2009 11
Registro Único Nacional de Tránsito (RUNT)El RUNT en cífras
� Atenderá 12 millones de trámites al año.
� Registrará 41 millones de transacciones anuales.
� Accederán al sistema:� 3 000 funcionarios de los Organismos
de Tránsito.� 13 000 funcionarios relacionados con
los otros actores.� 1500 + usuarios concurrentes.
� Manejará inicialmente 415reglas de negocio (validaciones).� Soportará 247 tipos de trámite.
XXIX Salón de Informática -Agosto'2009 12
Registro Único Nacional de Tránsito (RUNT)Requerimientos No Funcionales de la Solución de TI
� Alta disponibilidad para todos los componentes de software y hardware dentro de la arquitectura.
� 1500+ usuarios concurrentes.� Acuerdos de niveles de servicio (SLA) rigurosos � Auditoria a nivel de Base de Datos.� Interacción con RUNT vía Portal Web y Webservices,
presentando Funcionalidad equivalente.� Monitoreo Transaccional y Monitoreo de Negocio requeridos.� Seguridad:
� Autenticación de Usuarios a partir de usuario/password/huella dactilar (biométricos).
� Single-SignOn: uso y propagación de credenciales de usuario por todas las aplicaciones RUNT.
� Firma digital para algunas transacciones en RUNT (Certificados Digitales)
� Garantizar No repudio de transacciones.� Estampa digital (TSA) proveída por terceros.
XXIX Salón de Informática -Agosto'2009 13
Estado actual del proyecto
� Entrada en producción esperada para Octubre del 2009
� Actualmente en proceso de recolección de datos migrados de los Organismos de Transito y otros actores. Este procesos es necesario para la entrada en producción del RUNT
� Fase I del proyecto finalizada, en ejecución de pruebas de carga y estrés.
XXIX Salón de Informática -Agosto'2009 14
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del
proyecto RUNT.� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeño� Conclusiones
XXIX Salón de Informática -Agosto'2009 15
Registro Único Nacional de Tránsito (RUNT)Arquitectura de Aplicaciones
Servicios de Negocio
Capa de Datos
RUNT
Capa de Presentación
WEB
Capa BPM
(Integración Interna)
Capa de Lógica de Negocio
Componentes de
Soporte Funcional
Capa de Mediación
Sistemas de
Otros Actores
Componentes de Negocio
(Por Registro / Trámite)
Componentes
Genericos
Procesos de
Negocio
Servicios de Integración con Externos
(Monitoreo – Autenticación /Autorización
Encripción Datos – Certificado Digital)
BPMS DB
Software
Misional (OTs)
Portales
(OT / DT / MT
OA )
Admin. de
Aplicaciones y
Procesos
Monitoreo
De negocio
Business Monitor
DBDirectorio de
UsuariosDB Auditoria
EJB Facade Session Stateless
(Core Heinsohn Framework)
Componentes de Acceso a Datos
(Core Heinsohn Framework)
Monitoreo de Negocio
(Oracle BAM)
Monitoreo de SLAs
(OWSM / Oracle
Grid Control)
Seguridad
(Oracle IDM Suite)
Auditoria
(Oracle Audit Vault)
(SAFD)
JMS
JAAS
JAAS
Monitoreo Tx
(Oracle Grid Control)
JMX
RUNT
OLAP
(Oracle Web Services Manager)
(Oracle BPEL Process Manager)
BPMInterface
(Oracle Internet Application Server EE)
(Oracle Database EE – Oracle Real Application Clusters RAC)
SOAP /HTTP -- RUNT-XML
RMI / JNDISOAP / WSDL
RMI / JNDI
La arquitectura de aplicaciones de RUNT:
- Es una arquitectura Orientada a Servicios (SOA).- Multi-capas (N-Tier)
- Apoyada en una serie de soluciones horizontales.
XXIX Salón de Informática -Agosto'2009 16
Registro Único Nacional de Tránsito (RUNT)Arquitectura de Aplicaciones
Servicios de Negocio
Capa de Datos
RUNT
Capa de Presentación
WEB
Capa BPM
(Integración Interna)
Capa de Lógica de Negocio
Componentes de
Soporte Funcional
Capa de Mediación
Sistemas de
Otros Actores
Componentes de Negocio
(Por Registro / Trámite)
Componentes
Genericos
Procesos de
Negocio
Servicios de Integración con Externos
(Monitoreo – Autenticación /Autorización
Encripción Datos – Certificado Digital)
BPMS DB
Software
Misional (OTs)
Portales
(OT / DT / MT
OA )
Admin. de
Aplicaciones y
Procesos
Monitoreo
De negocio
Business Monitor
DBDirectorio de
UsuariosDB Auditoria
EJB Facade Session Stateless
(Core Heinsohn Framework)
Componentes de Acceso a Datos
(Core Heinsohn Framework)
Monitoreo de Negocio
(Oracle BAM)
Monitoreo de SLAs
(OWSM / Oracle
Grid Control)
Seguridad
(Oracle IDM Suite)
Auditoria
(Oracle Audit Vault)
(SAFD)
JMS
JAAS
JAAS
Monitoreo Tx
(Oracle Grid Control)
JMX
RUNT
OLAP
(Oracle Web Services Manager)
(Oracle BPEL Process Manager)
BPMInterface
(Oracle Internet Application Server EE)
(Oracle Database EE – Oracle Real Application Clusters RAC)
SOAP /HTTP -- RUNT-XML
RMI / JNDISOAP / WSDL
RMI / JNDI
XXIX Salón de Informática -Agosto'2009 17
Registro Único Nacional de Tránsito (RUNT)Arquitectura de Aplicaciones- Secuencia de Ejecución (1)
Servicios de Negocio
Capa de Datos
RUNT
Capa de Presentación
WEB
Capa BPM
(Integración Interna)
Capa de Lógica de Negocio
Componentes de
Soporte Funcional
Capa de Mediación
Sistemas de
Otros Actores
Componentes de Negocio
(Por Registro / Trámite)
Componentes
Genericos
Procesos de
Negocio
Servicios de Integración con Externos
(Monitoreo – Autenticación /Autorización
Encripción Datos – Certificado Digital)
BPMS DB
Software
Misional (OTs)
Portales
(OT / DT / MT
OA )
Admin. de
Aplicaciones y
Procesos
Monitoreo
De negocio
Business Monitor
DBDirectorio de
UsuariosDB Auditoria
EJB Facade Session Stateless
(Core Heinsohn Framework)
Componentes de Acceso a Datos
(Core Heinsohn Framework)
Monitoreo de Negocio
(Oracle BAM)
Monitoreo de SLAs
(OWSM / Oracle
Grid Control)
Seguridad
(Oracle IDM Suite)
Auditoria
(Oracle Audit Vault)
(SAFD)
JMS
JAAS
JAAS
Monitoreo Tx
(Oracle Grid Control)
JMX
RUNT
OLAP
(Oracle Web Services Manager)
(Oracle BPEL Process Manager)
BPMInterface
(Oracle Internet Application Server EE)
(Oracle Database EE – Oracle Real Application Clusters RAC)
SOAP /HTTP -- RUNT-XML
RMI / JNDISOAP / WSDL
RMI / JNDI
1
2
3
4
5
10
6
7
9
11
8
12
XXIX Salón de Informática -Agosto'2009 18
Registro Único Nacional de Tránsito (RUNT)Arquitectura de Aplicaciones- Secuencia de Ejecución (2)
Soluciones Horizontales
Cache:
Oracle Coherence
Excepciones
Log -QoS
XXIX Salón de Informática -Agosto'2009 19
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del proyecto RUNT.
� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad de desarrollo.
� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeño� Conclusiones
XXIX Salón de Informática -Agosto'2009 20
Desafíos y Problemáticas encontradas en el Desarrollo del Proyecto RUNT (software)
� Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de desarrollo.
� Integración con actores externos� Tunning de aplicaciones para soportar requerimientos de concurrencia y
tiempos de respuesta.
� Selección, Evaluación y Adaptación de tecnologías /herramientas en la arquitectura de aplicaciones.
� Administración de configuración (soportando entregas frecuentes, equipo de desarrollo extenso y desarrollo remoto geográficamente).
� Integración de dispositivos biométricos dentro de la aplicación (Web y WS).� Equipo de desarrollo distribuido geográficamente.� Negocio y requerimientos funcionales cambiantes.
XXIX Salón de Informática -Agosto'2009 21
Desafíos y Problemáticas encontradas en el Desarrollo del Proyecto RUNT (software)
� Cada problemática/desafío será presentado siguiendo el siguiente formato:
� Contexto y Descripción
� Estrategia (s) de solución
� Resultados Objetivos y subjetivos
� Esta presentación se enfoca en presentar las experiencias y las soluciones utilizadas en el contexto del proyecto. No pretende presentar “la mejor práctica”.
� Es un proyecto en curso, entonces se presentan los resultados a la fecha.
XXIX Salón de Informática -Agosto'2009 22
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del
proyecto RUNT.� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad de desarrollo.
� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeño� Conclusiones
XXIX Salón de Informática -Agosto'2009 23
Desafío 1: Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de desarrollo
Contexto� Solucionar un proyecto de Desarrollo de SW con amplias
restricciones:� Tiempo: ciclo completo de desarrollo en aprox. 9 meses, para la fase 1.� Tamaño funcional medio/alto: 1550+ Casos de Uso.� Requerimientos funcionales inestables.� Entregas a cliente (iteraciones) cada 15 días.� Altos Requerimientos No funcionales (Desempeño, Concurrencia,
Disponibilidad, Seguridad, entre otros).� Proyecto con uso de múltiples tecnologías.� Interacción con múltiples actores.
� Desarrollo de software remoto geográficamente. Fábricas de Software en Armenia, Manizales, Medellín, y Bogotá.
� Complejidad en la administración de Configuraciones.
XXIX Salón de Informática -Agosto'2009 24
Desafío 1: Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de desarrollo
Estrategias de Solución
� Manejo de riesgos – Desarrollo en iteraciones
� Entre 70 y 80 ingenieros en el proyecto (especificación, desarrollo, pruebas).
� Desarrollo remoto a gran escala
� Diseño teniendo en cuenta desarrollo masivo y paralelo.
� Gran énfasis en diseño y arquitectura, en paralelo con el desarrollo de requerimientos.
XXIX Salón de Informática -Agosto'2009 25
Desafío 1: Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de desarrollo
Estrategias de Solución (2)
� Ciclo de desarrollo de software, basado en Ciclo y Herramientas BPM (Oracle SOA Suite).
� Arquitectura de Aplicaciones definida independiente de proveedor de tecnología.
� Framework de desarrollo y componentes (incrementa productividad de desarrollo).
� Roles TSP bien definidos en el proyecto.
� Apoyo en mejores practicas de PMI, RUP, y CMMI.
XXIX Salón de Informática -Agosto'2009 26
Desafío 1: Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de desarrollo
Estrategias de Solución (3) – Habilitan el desarrollo remoto geográficamente
� Diseño e identificación de casos de uso orientado a reutilización de funcionalidad (servicios).
� Desarrollo de funcionalidad granular. Para lograr una alta reutilización.
� Tipificación de Casos de Uso, y definición de estándares específicos para cada uno. Algunos de estos tipos de CU incluyen “plantillas”para facilitar desarrollo masivo.
� El desarrollo “granular” implementado remotamente (en las fabricas de SW), la integración y el sentido de negocio realizado directamente en Bogotá, en conjunto con el equipo de pruebas funcionales.
� Apoyo en Diseño detallado para todos los casos de uso desarrollados.
XXIX Salón de Informática -Agosto'2009 27
Desafío 1: Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de desarrollo
Estrategias de Solución (4) – Habilitan el desarrollo remoto geográficamente
� Estándares de Calidad Rigurosos:� Lineamientos de desarrollo especializados por tipo de CU y muy
específicos.� Estándares incluyeron: JUnits y Revisión de Código� Estándares CMMI del Proceso de Desarrollo.
� Administración de Configuración: � Simplificación de la administración de la configuración en los ambientes
de desarrollo remotos. La complejidad de administración de configuración esta en los ambientes de desarrollo en Bogota (Integración ).
� Integración continua habilitada por SVN, ANT, “Builds” nocturnos, Ejecución de JUnits nocturnas, …
XXIX Salón de Informática -Agosto'2009 28
Desafío 1: Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de desarrollo
Resultados� Cumplimiento en las fechas de entregas. � 11 Entregas a cliente en 9 meses de desarrollo (fase 1).� La mayoría de entregas fueron realizadas cada 15dias.� Desarrollo de 1550+ Casos de Uso, en 7 módulos funcionales y 30+
procesos de negocio.� Adaptación a requerimientos cambiantes.� Montaje efectivo de herramientas Oracle (BPEL PM, OWSM, App Server,
BD, Grid control, Audit Vault, ).� Adopción efectiva de nuevas tecnologías.� Reutilización de servicios y reglas de negocio (fase I)
� 415 reglas de negocio � 30+ Procesos de negocio� 65+ trámites.
XXIX Salón de Informática -Agosto'2009 29
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del
proyecto RUNT.� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeño� Conclusiones
XXIX Salón de Informática -Agosto'2009 30
Desafío 2: Integración con Actores ExternosContexto y Descripción
� Integración con múltiples actores externos: 223 OTs, 20 DT, y Otros Actores.� Interacción con externos por diferentes mecanismos: Portal Web, Cargues Batch, y
Webservices.� Funcionalidad Web y Webservices es equivalente.� Funcionalidad expuesta vía Webservices extensa:
� 60+ Casos de Uso. (incluyendo trámites, consultas, …).� 70+ Tablas parametricas.� Tablas parametricas con grandes volúmenes de datos: (eg. 9,000+ Colores, 15,000+ Líneas
de Automotores, …). Dificulta Administración.� Dificultad en la propagación de cambios en las interfaces de los Webservices a
clientes.� Administración de tablas paramétricas entre clientes. Estandarización compleja.� Entidades externas por lo general no están preparadas para la integración vía
Webservices.� Alto número de horas dedicados al soporte de integración y pruebas con terceros.
XXIX Salón de Informática -Agosto'2009 31
Desafío 2: Integración con Actores ExternosContexto y Descripción (2)
� Altos Requerimientos de Seguridad para interacción vía Webservices:� Autenticación (usuario, password)� Autenticación también involucra validación de huella dactilar (OTs).� Autorización de Recursos
� A nivel de operación de webservice (no URL).� Restricción de direcciones IP origen.
� Firma Digital (Certificados Digitales).� Almacenamiento de evidencia Digital para no repudio de transacciones.
� Validación de Requerimientos de seguridad es realizada para cada transacción vía Webservices.
� Problemas de interoperabilidad por WS-Security. Requiere un esfuerzo considerable para lograr compatibilidad de WS-Security entre implementaciones de proveedores de tecnología (Oracle, MS, AXIS, ).
XXIX Salón de Informática -Agosto'2009 32
Desafío 2: Integración con Actores ExternosEstrategias de Solución
� Definición de Estándares de integración y Catalogo de Servicios detallados.
� Requerimientos de Seguridad� Interfaces WSDL, y XSD.� Documentación detallada de las interfaces. Incluyendo: Operaciones,
Datos entrada/salida, tablas paramétricas utilizadas, restricciones, …
� Creación de Servicios de autoconsulta y sincronización de datos paramétricos. Facilita la administración y propagación de cambios de datos paramétricos entre clientes.
� Definición de mecanismos de certificación de clientes que interactúan vía Webservices.
XXIX Salón de Informática -Agosto'2009 33
Desafío 2: Integración con Actores ExternosEstrategias de Solución (2)
� Uso de WS-Security como estándar de propagación de credenciales de seguridad (autenticación, certificados digitales, ..).
� Administración de políticas de Seguridad de Webservices utilizando Oracle Webservices Manager.
� Creación de clientes de Webservices basados en WS-Security en varias tecnologías (AXIS, Oracle, .NET).
XXIX Salón de Informática -Agosto'2009 34
Desafío 2: Integración con Actores ExternosResultados a la fecha, y en proceso…
� Integración en Batch con:� SOAT y Pólizas de Seguros - Aseguradoras (30+)� Detalle de Vehículos - Importadoras y ensambladoras (250+).� Infracciones de Transito y Transporte- Organismos de Transito (253+), Policía, …� …
� Integración vía Webservices con:� 3 Entidades recaudadoras (Bancos).� 2 Proveedores de Software para Organismos de Transito.
� Integraciones vía Webservices en desarrollo:� 5 Entidades recaudadoras (Bancos).� 4 Proveedores de software para Organismos de Tránsito.
� Integración para consulta de información en línea:� DIAN� SIMIT
XXIX Salón de Informática -Agosto'2009 35
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del
proyecto RUNT.� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos de concurrencia y desempeño
� Conclusiones
XXIX Salón de Informática -Agosto'2009 36
Desafío 3: Tunning de Aplicaciones para cumplimiento de Requerimientos No Funcionales
� Requerimientos No Funcionales:� Soportar 1500+ usuarios concurrentes.� SLA “Tiempos de Respuesta” riguroso.� Optimización de uso de recursos físicos de hardware:
� Memoria (RAM).� Uso de CPU� Ancho de Banda
� La prioridad de la optimización fue en ese orden (concurrencia, tiempos de respuesta, uso de recursos).
� Arquitectura de Aplicaciones compuesta de:� 2 Mecanismos de Interacción (Portal Web, y Webservices).� Amplia Funcionalidad� Capas y soluciones horizontalesLa optimización debe tener el mayor cubrimiento posible. En cuanto a funcionalidad y capas
de la arquitectura de aplicaciones.
XXIX Salón de Informática -Agosto'2009 37
Desafío 3: Tunning de Aplicaciones para cumplimiento de requerimientos No Funcionales
Pruebas de Carga de capas y soluciones horizontales por separado. Facilita la detección de fallos para optimización de aplicaciones.
Se plantean escenarios con el propósito de probar X funcionalidad, X capas y soluciones horizontales.
Para cada capa, plantear varios escenarios funcionales (eg. Seguridad: E1: autenticacion, E2: Autorizacion, E3: Inscripcion de usuarios)
Servicios de Negocio
Capa de Datos
RUNT
Capa de Presentación
WEB
Capa BPM
(Integración Interna)
Capa de Lógica de Negocio
Componentes de
Soporte Funcional
Capa de Mediación
Sistemas de
Otros Actores
Componentes de Negocio
(Por Registro / Trámite)
Componentes
Genericos
Procesos de Negocio
Servicios de Integración con Externos
(Monitoreo – Autenticación /Autorización
Encripción Datos – Certificado Digital)
BPMS DB
Software
Misional (OTs)
Portales
(OT / DT / MT
OA )
Admin. de
Aplicaciones y
Procesos
Monitoreo
De negocio
Business Monitor
DBDirectorio de
UsuariosDB Auditoria
EJB Facade Session Stateless (Core Heinsohn Framework)
Componentes de Acceso a Datos
(Core Heinsohn Framework)
Monitoreo de Negocio
(Oracle BAM)
Monitoreo de SLAs
(OWSM / Oracle
Grid Control)
Seguridad
(Oracle IDM Suite)
Auditoria
(Oracle Audit Vault)
(SAFD)
JMS
JAAS
JAAS
Monitoreo Tx
(Oracle Grid Control)
JMX
RUNT
OLAP
(Oracle Web Services Manager)
(Oracle BPEL Process Manager)
BPMInterface
(Oracle Internet Application Server EE)
(Oracle Database EE – Oracle Real Application Clusters RAC)
SOAP /HTTP -- RUNT-XML
RMI / JNDISOAP / WSDL
RMI / JNDI
Escenarios:Logica, BPM, BD
Escenarios
Escenarios OWSM
EscenariosPresentación
Es. 4
Es. 5
Es. 6
Escenarios Seguridad
Escenarios BAM
Escenarios Audit Vault
XXIX Salón de Informática -Agosto'2009 38
Desafío 3: Tunning de Aplicaciones para cumplimiento de requerimientos No Funcionales
� Detección de Fallos en cuanto:� Tiempos de Espera de los procesos y threads (Bloqueos de recursos, BD, etc.).
Estos problemas evitan que la aplicación escale en número de usuarios concurrentes.
� Tiempos de Solución /Respuesta.� Uso inapropiado de recursos físicos como memoria, almacenamiento, y ancho de
banda.
� Optimizaciones son propagadas a lo largo de toda la arquitectura de aplicaciones.
� El resultado de las pruebas de carga son:� Recomendaciones de configuración de productos (app Server, SOA Suite, ..).� Optimizaciones de aplicación � Lineamientos de desarrollo y listas de chequeo.
XXIX Salón de Informática -Agosto'2009 39
Desafío 3: Tunning de Aplicaciones para cumplimiento de requerimientos No Funcionales
� Tiempos de respuesta Antes/Después de Optimización, bajo concurrencia.
� Prueba de Carga sobre 3 Webservicesfuncionales.
XXIX Salón de Informática -Agosto'2009 40
Desafío 3: Tunning de Aplicaciones para cumplimiento de requerimientos No Funcionales
� Pruebas de Carga sobre solución de seguridad. � Escenario probando funcionalidad de autenticación y
autorización de usuarios vía Portal Web.
XXIX Salón de Informática -Agosto'2009 41
Desafío 3: Tunning de Aplicaciones para cumplimiento de requerimientos No Funcionales
Resultados:� Guías de afinamiento de Oracle Application Server, Oracle
BPEL PM, Oracle Webservices Manager, Oracle IdentityManagement Suite. Versión 10g.
� Optimizaciones de Rendimiento. Eg:� Problemas de escalamiento accediendo recursos físicos (Imágenes, …)
desde código Java. Solución: Creación de caches en memoria de recursos físicos en byte[].
� Creación de Secuencias de BD con un Cache que soporte los usuarios concurrentes. Problema impactaba tiempos de respuesta de servicios bajo concurrencia.
XXIX Salón de Informática -Agosto'2009 42
Agenda
� Objetivo de la presentación � Registro Único Nacional de Tránsito (RUNT)� Arquitectura de Aplicaciones, proyecto RUNT� Desafíos y Problemáticas encontradas en el desarrollo del
proyecto RUNT.� Desafío 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.� Desafío 2: Integración con actores externos� Desafío 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeño� Conclusiones
XXIX Salón de Informática -Agosto'2009 43
ConclusionesRUNT un reto para el país y el sector Transporte
� El Registro Único Nacional de Transito (RUNT) proveerá grandes beneficios para el sector de transito y transporte, y en general para el país.
� El RUNT presenta un desafío importante en términos de Tecnologías de Información:
� Para “Heinsohn Software House” como proveedor de software, en la creación de la solución de negocio a partir de arquitectura y tecnologías SOA/BPM.
� Para la Concesión RUNT integrando la solución de TI en una solución de negocio (infraestructura, comunicaciones, negocio, …).
� Para las entidades vinculadas al sector que aportan a la realización del RUNT (Integración, Datos, …)
� Pero sobre todo, el desafió del RUNT es para el país, el gobierno y las entidades vinculadas al sector.
� El reto del RUNT es un reto en desarrollo, que llevará un proceso de maduración tanto para la solución de tecnología proveído por la RUNT como para las entidades del sector que intervienen en su realización.
XXIX Salón de Informática -Agosto'2009 44
Conclusiones (2)
� Las Soluciones de Tecnologías de información deben ser orientadas a definir problemas y requerimientos de negocio. Donde el negocio predomina sobre las soluciones tecnológicas.
� Este caso de estudio, muestra un ejemplo de definición de arquitectura a partir del negocio. Su arquitectura fue definida independientemente del proveedor de tecnología.
� El modelo de desarrollo por medio de fabricas de Software puede ser efectivamente utilizado, siempre y cuando este alineado con la estrategia arquitectónica.
XXIX Salón de Informática -Agosto'2009 45
Registro Único Nacional de Tránsito (RUNT)Solución de Técnologia
Los proveedores de tecnología que participaron en el desarrollo de la solución de software del proyecto RUNT:
� Heinsohn Software House
� Quipux Software
XXIX Salón de Informática -Agosto'2009 4646
� Fábrica de Software Colombiana
� 32 años de Experiencia
� Presencia en 9 países
� Más de 450 empleados
� Más de 2000 licencias instaladas
� Sedes en Bogotá, Cali, Medellín,
Pereira, Manizales, Armenia
� Subsidiarias en Argentina y Chile
� Certificada ISO 9001:2000
� Valoración CMMI Nivel 3 y en
proceso de valoración para el
nivel 4.
COLOMBIACOLOMBIA
Argentina
Ecuador
El Salvador
Bolivia
VenezuelaPanamá
Perú
Chile
Heinsohn Software HousePerfil Corporativo
XXIX Salón de Informática -Agosto'2009 47
Proyectos SOA - Heinsohn Software House
- Registro Único Nacional de Transito (RUNT)
- Proyectos de Gobierno en Línea:� VUR - Registro de propiedad del inmueble
� GEL-XML - Mantenimiento
� PQR - Peticiones, quejas y reclamos
� RedGEL - Seguimiento capacitación y apropiación Gobierno en Línea
� PUC - Auditoría de calidad y desempeño
� GELT - Gobierno en línea fase transaccional
� SIE2-DNE - Certificado de carencia de informes por tráfico de estupefacientes
� EVPC - Estatuto virtual de contratación pública
� Servicios Web PDI
� Inspección simultánea de Puertos
XXIX Salón de Informática -Agosto'2009 4949
Clientes Internacionales -Latinoamérica
Peru
Venezuela
Argentina
BoliviaEl Salvador