You are on page 1of 50

Desafos en proyectos de gran escala,

apalancados en tecnologas como BPM,


SOA y J2EE. Caso RUNT
Alvaro Javier Infante

Santiago Gil

ainfante@heinsohn.com.co
Heinsohn Software House
6337070 ext 1419
Bogot, Colombia

sgil@heinsohn.com.co
Heinsohn Software House
6337070 ext 1420
Bogot, Colombia

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

Objetivo de la Presentacin

Presentar los principales desafos y problemticas 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 desafos y problemticas ms representativos.

XXIX Saln de
Informtica Agosto'2009

Alcance de la Presentacin
Arquitectura de Negocio

Arquitectura de Aplicaciones

Arquitectura de Datos

Arquitectura Tcnica (Hardware y Acceso)

La presentacin se enfoca en la arquitectura de aplicaciones, y su impacto en la


estrategia de desarrollo.
El papel de Heinsohn Software House, tambin ha sido enfocado nicamente en
esta rea.
XXIX Saln de
Informtica Agosto'2009

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

Registro nico Nacional de Trnsito (RUNT)


Definition y Objetivo
El objetivo principal del RUNT es generar un modelo de operacin,
administracin y mantenimiento de la informacin que permita
validar, registrar y autorizar las transacciones relacionadas con el
sector de transito y transporte a nivel nacional. Incluyendo
informacin de:








Automotores
Conductores
Seguros
Accidentes
Empresas de Transporte
Personas Naturales y Jurdicas que prestan servicios al sector

El RUNT est concebido como una solucin de Back End que


apoya en la gestin de atencin de trmites en los Organismos de
XXIXtrnsito
Saln de y las direcciones territoriales.
Informtica Agosto'2009

Registro nico Nacional de Trnsito (RUNT)


Modelo de Operacin

XXIX Saln de
Informtica Agosto'2009

Registro nico Nacional de Trnsito (RUNT)


Integracin con Entidades Externas: OTs y DTs

Organismos de Trnsito (236)

Direcciones Territoriales (20)


(Antioquia y Choc, Atlntico, Bolvar San Andres y Providencia, Boyac y
Casanare, Huila y Caquet, Magdalena, Nario, Cauca, Cesar, Crdoba y Sucre,
Cundinamarca, Santander, Risaralda, Guajira, Valle, )
XXIX Saln de
Informtica Agosto'2009

Registro nico Nacional de Trnsito (RUNT)


Integracin con Entidades Externas: Otros Actores
Tipo A
(Trmites, Registro
Informacin, Consultas)

XXIX Saln de
Informtica Agosto'2009

Tipo B

Tipo C

(Registro Informacin, Consultas)

(Consultas)

Registro nico Nacional de Trnsito (RUNT)


Beneficios para el sector








Permitir validar, autorizar y registrar las transacciones


resultado de trmites, en lnea y tiempo real.
Centralizar y unificar la informacin del sector de
trnsito y transporte terrestre.
Mejorar la calidad de la informacin
Incrementar su capacidad de control y disminuir los
problemas de seguridad.
Apoyar la planeacin que adelantan las entidades del
sector, mejorando la toma de decisiones y la definicin
de polticas.
Modernizar el sector de trnsito y transporte
Contribuir a la mayor organizacin de un sector vital de
la economa del pas.

XXIX Saln de
Informtica Agosto'2009

10

Registro nico Nacional de Trnsito (RUNT)


El RUNT en cfras


Atender 12 millones de trmites al


ao.
Registrar 41 millones de
transacciones anuales.
Accedern al sistema:




3 000 funcionarios de los Organismos


de Trnsito.
13 000 funcionarios relacionados con
los otros actores.
1500 + usuarios concurrentes.

Manejar inicialmente 415


reglas de negocio (validaciones).
 Soportar 247 tipos de trmite.


XXIX Saln de
Informtica Agosto'2009

11

Registro nico Nacional de Trnsito (RUNT)


Requerimientos No Funcionales de la Solucin 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.
Interaccin con RUNT va Portal Web y Webservices,
presentando Funcionalidad equivalente.
Monitoreo Transaccional y Monitoreo de Negocio requeridos.
Seguridad:






Autenticacin de Usuarios a partir de usuario/password/huella


dactilar (biomtricos).
Single-SignOn: uso y propagacin 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) proveda por terceros.

XXIX Saln de
Informtica Agosto'2009

12

Estado actual del proyecto




Entrada en produccin esperada para Octubre


del 2009
Actualmente en proceso de recoleccin de
datos migrados de los Organismos de Transito
y otros actores. Este procesos es necesario para
la entrada en produccin del RUNT
Fase I del proyecto finalizada, en ejecucin de
pruebas de carga y estrs.

XXIX Saln de
Informtica Agosto'2009

13

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

14

Registro nico Nacional de Trnsito (RUNT)


Arquitectura de Aplicaciones
Capa de Presentacin
WEB

Software
Misional (OTs)

Sistemas de
Otros Actores

Portales
(OT / DT / MT
OA )

Admin. de
Aplicaciones y
Procesos

Monitoreo
De negocio

SOAP /HTTP -- RUNT-XML

Capa de Mediacin

La arquitectura de aplicaciones de RUNT: Monitoreo de SLAs

Servicios de Integracin con Externos


(Monitoreo Autenticacin /Autorizacin
Encripcin Datos Certificado Digital)

(OWSM / Oracle
Grid Control)

(Oracle Web Services Manager)


RMI / JNDI

- Es una arquitectura Orientada a Servicios (SOA).


Monitoreo de Negocio
(Oracle BAM)
- Multi-capas (N-Tier)
- Apoyada en una serie de soluciones horizontales.
JAAS

Capa BPM
(Integracin Interna)

Procesos de
Negocio

BPMInterface
(Oracle BPEL Process Manager)

JMS

SOAP / WSDL

Capa de Lgica de Negocio

Seguridad

RMI / JNDI

(Oracle IDM Suite)


Servicios de Negocio

JAAS

EJB Facade Session Stateless


(Core Heinsohn Framework)

JMX

Monitoreo Tx

(Oracle Grid Control)

Componentes de Acceso a Datos


(Core Heinsohn Framework)

Componentes
Genericos

Componentes de
Soporte Funcional

Componentes de Negocio
(Por Registro / Trmite)

(Oracle Internet Application Server EE)

Auditoria

(Oracle Audit Vault)


(SAFD)

Capa de Datos

XXIX Saln de
Informtica RUNT
RUNT
OLAP
Agosto'2009
(Oracle Database EE Oracle Real Application Clusters RAC)

BPMS DB

Business Monitor
DB

DB Auditoria

Directorio de
Usuarios

15

Registro nico Nacional de Trnsito (RUNT)


Arquitectura de Aplicaciones
Capa de Presentacin
WEB

Software
Misional (OTs)

Sistemas de
Otros Actores

Portales
(OT / DT / MT
OA )

Admin. de
Aplicaciones y
Procesos

Monitoreo
De negocio

SOAP /HTTP -- RUNT-XML

Capa de Mediacin

Servicios de Integracin con Externos


(Monitoreo Autenticacin /Autorizacin
Encripcin Datos Certificado Digital)

Monitoreo de SLAs

(OWSM / Oracle
Grid Control)

(Oracle Web Services Manager)


RMI / JNDI
JAAS

Capa BPM
(Integracin Interna)

Monitoreo de Negocio
Procesos de
Negocio

(Oracle BAM)

JMS

BPMInterface
(Oracle BPEL Process Manager)
SOAP / WSDL

Capa de Lgica de Negocio

Seguridad

RMI / JNDI

(Oracle IDM Suite)


Servicios de Negocio

JAAS

EJB Facade Session Stateless


(Core Heinsohn Framework)

JMX

Monitoreo Tx

(Oracle Grid Control)

Componentes de Acceso a Datos


(Core Heinsohn Framework)

Componentes
Genericos

Componentes de
Soporte Funcional

Componentes de Negocio
(Por Registro / Trmite)

(Oracle Internet Application Server EE)

Auditoria

(Oracle Audit Vault)


(SAFD)

Capa de Datos

XXIX Saln de
Informtica RUNT
RUNT
OLAP
Agosto'2009
(Oracle Database EE Oracle Real Application Clusters RAC)

BPMS DB

Business Monitor
DB

DB Auditoria

Directorio de
Usuarios

16

Registro nico Nacional de Trnsito (RUNT)


Arquitectura de Aplicaciones- Secuencia de Ejecucin (1)
Capa de Presentacin
WEB

Software
Misional (OTs)

Sistemas de
Otros Actores

Portales
(OT / DT / MT
OA )
1

Admin. de
Aplicaciones y
Procesos

Monitoreo
De negocio

12

SOAP /HTTP -- RUNT-XML

Capa de Mediacin

Servicios de Integracin con Externos


(Monitoreo Autenticacin /Autorizacin
Encripcin Datos Certificado Digital)

(Oracle Web Services Manager)

(OWSM / Oracle
Grid Control)

RMI / JNDI

Monitoreo de SLAs

3
JAAS

Capa BPM
(Integracin Interna)

Monitoreo de Negocio
10

11

Procesos de
Negocio

(Oracle BAM)

JMS

BPMInterface
(Oracle BPEL Process Manager)
SOAP / WSDL

Capa de Lgica de Negocio

Seguridad

RMI / JNDI

(Oracle IDM Suite)


Servicios de Negocio

JAAS

EJB Facade Session Stateless


(Core Heinsohn Framework)

JMX

Monitoreo Tx

(Oracle Grid Control)

Componentes de Acceso a Datos


(Core Heinsohn Framework)

7
Componentes
Genericos

Componentes de
Soporte Funcional

Componentes de Negocio
(Por Registro / Trmite)
8

(Oracle Internet Application Server EE)

Auditoria

(Oracle Audit Vault)


(SAFD)

Capa de Datos

XXIX Saln de
RUNT
Informtica RUNT
OLAP
(Oracle Database EE Oracle Real Application Clusters RAC)
Agosto'2009

BPMS DB

Business Monitor
DB

DB Auditoria

Directorio de
Usuarios

17

Registro nico Nacional de Trnsito (RUNT)


Arquitectura de Aplicaciones- Secuencia de Ejecucin (2)

Soluciones Horizontales

Log - QoS

Excepciones

Cache:
Oracle Coherence

XXIX Saln de
Informtica Agosto'2009

18

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

19

Desafos y Problemticas encontradas en el


Desarrollo del Proyecto RUNT (software)









Desarrollo de software, cumpliendo tiempos de desarrollo y calidad de


desarrollo.
Integracin con actores externos
Tunning de aplicaciones para soportar requerimientos de concurrencia y
tiempos de respuesta.

Seleccin, Evaluacin y Adaptacin de tecnologas /herramientas en la


arquitectura de aplicaciones.
Administracin de configuracin (soportando entregas frecuentes, equipo de
desarrollo extenso y desarrollo remoto geogrficamente).
Integracin de dispositivos biomtricos dentro de la aplicacin (Web y WS).
Equipo de desarrollo distribuido geogrficamente.
Negocio y requerimientos funcionales cambiantes.

XXIX Saln de
Informtica Agosto'2009

20

Desafos y Problemticas encontradas en el


Desarrollo del Proyecto RUNT (software)


Cada problemtica/desafo ser presentado siguiendo el


siguiente formato:




Contexto y Descripcin
Estrategia (s) de solucin
Resultados Objetivos y subjetivos

Esta presentacin se enfoca en presentar las experiencias y las


soluciones utilizadas en el contexto del proyecto. No pretende
presentar la mejor prctica.
Es un proyecto en curso, entonces se presentan los resultados a
la fecha.

XXIX Saln de
Informtica Agosto'2009

21

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con
calidad de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

22

Desafo 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.


Tamao funcional medio/alto: 1550+ Casos de Uso.
Requerimientos funcionales inestables.
Entregas a cliente (iteraciones) cada 15 das.
Altos Requerimientos No funcionales (Desempeo, Concurrencia,
Disponibilidad, Seguridad, entre otros).
Proyecto con uso de mltiples tecnologas.
Interaccin con mltiples actores.

Desarrollo de software remoto geogrficamente. Fbricas de


Software en Armenia, Manizales, Medelln, y Bogot.
Complejidad en la administracin de Configuraciones.

XXIX Saln de
Informtica Agosto'2009

23

Desafo 1: Desarrollo de software, cumpliendo


tiempos de desarrollo y calidad de desarrollo
Estrategias de Solucin
 Manejo de riesgos Desarrollo en iteraciones
 Entre 70 y 80 ingenieros en el proyecto
(especificacin, desarrollo, pruebas).
 Desarrollo remoto a gran escala
 Diseo teniendo en cuenta desarrollo masivo y
paralelo.
 Gran nfasis en diseo y arquitectura, en paralelo con
el desarrollo de requerimientos.
XXIX Saln de
Informtica Agosto'2009

24

Desafo 1: Desarrollo de software, cumpliendo


tiempos de desarrollo y calidad de desarrollo
Estrategias de Solucin (2)





Ciclo de desarrollo de software, basado en Ciclo y Herramientas


BPM (Oracle SOA Suite).
Arquitectura de Aplicaciones definida independiente de
proveedor de tecnologa.
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 Saln de
Informtica Agosto'2009

25

Desafo 1: Desarrollo de software, cumpliendo


tiempos de desarrollo y calidad de desarrollo
Estrategias de Solucin (3) Habilitan el desarrollo remoto
geogrficamente


Diseo e identificacin de casos de uso orientado a reutilizacin de


funcionalidad (servicios).
Desarrollo de funcionalidad granular. Para lograr una alta
reutilizacin.
Tipificacin de Casos de Uso, y definicin de estndares especficos
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 integracin y el sentido de negocio realizado directamente
en Bogot, en conjunto con el equipo de pruebas funcionales.
Apoyo en Diseo detallado para todos los casos de uso desarrollados.

XXIX Saln de
Informtica Agosto'2009

26

Desafo 1: Desarrollo de software, cumpliendo


tiempos de desarrollo y calidad de desarrollo
Estrategias de Solucin (4) Habilitan el desarrollo remoto
geogrficamente


Estndares de Calidad Rigurosos:






Lineamientos de desarrollo especializados por tipo de CU y muy


especficos.
Estndares incluyeron: JUnits y Revisin de Cdigo
Estndares CMMI del Proceso de Desarrollo.

Administracin de Configuracin:


Simplificacin de la administracin de la configuracin en los ambientes


de desarrollo remotos. La complejidad de administracin de
configuracin esta en los ambientes de desarrollo en Bogota (Integracin
).
Integracin continua habilitada por SVN, ANT, Builds nocturnos,
Ejecucin de JUnits nocturnas,

XXIX Saln de
Informtica Agosto'2009

27

Desafo 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 mayora de entregas fueron realizadas cada 15dias.

Desarrollo de 1550+ Casos de Uso, en 7 mdulos funcionales y 30+
procesos de negocio.

Adaptacin a requerimientos cambiantes.

Montaje efectivo de herramientas Oracle (BPEL PM, OWSM, App Server,
BD, Grid control, Audit Vault, ).

Adopcin efectiva de nuevas tecnologas.

Reutilizacin de servicios y reglas de negocio (fase I)




415 reglas de negocio


30+ Procesos de negocio
65+ trmites.

XXIX Saln de
Informtica Agosto'2009

28

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

29

Desafo 2: Integracin con Actores Externos


Contexto y Descripcin






Integracin con mltiples actores externos: 223 OTs, 20 DT, y Otros Actores.
Interaccin con externos por diferentes mecanismos: Portal Web, Cargues Batch, y
Webservices.
Funcionalidad Web y Webservices es equivalente.
Funcionalidad expuesta va Webservices extensa:







60+ Casos de Uso. (incluyendo trmites, consultas, ).


70+ Tablas parametricas.
Tablas parametricas con grandes volmenes de datos: (eg. 9,000+ Colores, 15,000+ Lneas
de Automotores, ). Dificulta Administracin.

Dificultad en la propagacin de cambios en las interfaces de los Webservices a


clientes.
Administracin de tablas paramtricas entre clientes. Estandarizacin compleja.
Entidades externas por lo general no estn preparadas para la integracin va
Webservices.
Alto nmero de horas dedicados al soporte de integracin y pruebas con terceros.

XXIX Saln de
Informtica Agosto'2009

30

Desafo 2: Integracin con Actores Externos


Contexto y Descripcin (2)


Altos Requerimientos de Seguridad para interaccin va Webservices:






Autenticacin (usuario, password)


Autenticacin tambin involucra validacin de huella dactilar (OTs).
Autorizacin de Recursos






A nivel de operacin de webservice (no URL).


Restriccin de direcciones IP origen.

Firma Digital (Certificados Digitales).


Almacenamiento de evidencia Digital para no repudio de transacciones.

Validacin de Requerimientos de seguridad es realizada para cada


transaccin va Webservices.
Problemas de interoperabilidad por WS-Security. Requiere un esfuerzo
considerable para lograr compatibilidad de WS-Security entre
implementaciones de proveedores de tecnologa (Oracle, MS, AXIS, ).

XXIX Saln de
Informtica Agosto'2009

31

Desafo 2: Integracin con Actores Externos


Estrategias de Solucin


Definicin de Estndares de integracin y Catalogo de Servicios


detallados.




Requerimientos de Seguridad
Interfaces WSDL, y XSD.
Documentacin detallada de las interfaces. Incluyendo: Operaciones,
Datos entrada/salida, tablas paramtricas utilizadas, restricciones,

Creacin de Servicios de autoconsulta y sincronizacin de datos


paramtricos. Facilita la administracin y propagacin de
cambios de datos paramtricos entre clientes.
Definicin de mecanismos de certificacin de clientes que
interactan va Webservices.

XXIX Saln de
Informtica Agosto'2009

32

Desafo 2: Integracin con Actores Externos


Estrategias de Solucin (2)


Uso de WS-Security como estndar de propagacin de


credenciales de seguridad (autenticacin, certificados
digitales, ..).
Administracin de polticas de Seguridad de
Webservices utilizando Oracle Webservices Manager.
Creacin de clientes de Webservices basados en WSSecurity en varias tecnologas (AXIS, Oracle, .NET).

XXIX Saln de
Informtica Agosto'2009

33

Desafo 2: Integracin con Actores Externos


Resultados a la fecha, y en proceso


Integracin en Batch con:







Integracin va Webservices con:





3 Entidades recaudadoras (Bancos).


2 Proveedores de Software para Organismos de Transito.

Integraciones va Webservices en desarrollo:





SOAT y Plizas de Seguros - Aseguradoras (30+)


Detalle de Vehculos - Importadoras y ensambladoras (250+).
Infracciones de Transito y Transporte- Organismos de Transito (253+), Polica,

5 Entidades recaudadoras (Bancos).


4 Proveedores de software para Organismos de Trnsito.

Integracin para consulta de informacin en lnea:





DIAN
SIMIT

XXIX Saln de
Informtica Agosto'2009

34

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar
requerimientos de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

35

Desafo 3: Tunning de Aplicaciones para


cumplimiento de Requerimientos No Funcionales


Requerimientos No Funcionales:




Soportar 1500+ usuarios concurrentes.


SLA Tiempos de Respuesta riguroso.
Optimizacin de uso de recursos fsicos de hardware:




Memoria (RAM).
Uso de CPU
Ancho de Banda

La prioridad de la optimizacin fue en ese orden (concurrencia, tiempos de respuesta,


uso de recursos).
Arquitectura de Aplicaciones compuesta de:
2 Mecanismos de Interaccin (Portal Web, y Webservices).
 Amplia Funcionalidad
 Capas y soluciones horizontales
La optimizacin debe tener el mayor cubrimiento posible. En cuanto a funcionalidad y capas
de la arquitectura de aplicaciones.


XXIX Saln de
Informtica Agosto'2009

36

Desafo 3: Tunning de Aplicaciones para


cumplimiento de requerimientos No Funcionales
Escenarios
Presentacin

Capa de Presentacin
WEB

Software
Misional (OTs)

Sistemas de
Otros Actores

Portales
(OT / DT / MT
OA )

Admin. de
Aplicaciones y
Procesos

Monitoreo
De negocio

SOAP /HTTP -- RUNT-XML

Capa de Mediacin

Servicios de Integracin con Externos


(Monitoreo Autenticacin /Autorizacin
Encripcin Datos Certificado Digital)

Escenarios OWSM

(Oracle Web Services Manager)

Monitoreo de SLAs

(OWSM / Oracle
Grid Control)

RMI / JNDI
JAAS

Capa BPM
(Integracin Interna)

Es. 5

Escenarios BAM

Es. 4

Escenarios Seguridad

Monitoreo de Negocio

Procesos de
Negocio

JMS

BPMInterface

(Oracle BAM)

(Oracle BPEL Process Manager)

Escenarios:
Logica, BPM, BD
SOAP / WSDL

Capa de Lgica de Negocio

Seguridad

RMI / JNDI

Servicios de Negocio

EJB Facade Session Stateless


(Core Heinsohn Framework)

(Oracle IDM Suite)


JAAS

JMX

Componentes de Acceso a Datos


(Core Heinsohn Framework)

Componentes
Genericos

Componentes de
Soporte Funcional

Componentes de Negocio
(Por Registro / Trmite)

(Oracle Internet Application Server EE)

Monitoreo Tx

(Oracle Grid Control)

Auditoria

Es. 6

(Oracle Audit Vault)


(SAFD)

Escenarios Audit Vault

Capa de Datos

Escenarios

RUNT
OLAP
(Oracle Database EE Oracle Real Application Clusters RAC)
RUNT

BPMS DB

Business Monitor
DB

DB Auditoria

Directorio de
Usuarios

Pruebas de Carga de capas y soluciones horizontales por separado. Facilita la deteccin de fallos
para optimizacin de aplicaciones.
Se plantean escenarios con el propsito de probar X funcionalidad, X capas y soluciones
horizontales.
XXIX Saln de
Para
cada capa,
plantear varios escenarios funcionales (eg. Seguridad: E1: autenticacion, E2:
Informtica
Autorizacion, E3: Inscripcion de usuarios)
Agosto'2009
37

Desafo 3: Tunning de Aplicaciones para


cumplimiento de requerimientos No Funcionales


Deteccin de Fallos en cuanto:







Tiempos de Espera de los procesos y threads (Bloqueos de recursos, BD, etc.).


Estos problemas evitan que la aplicacin escale en nmero de usuarios
concurrentes.
Tiempos de Solucin /Respuesta.
Uso inapropiado de recursos fsicos 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 configuracin de productos (app Server, SOA Suite, ..).


Optimizaciones de aplicacin
Lineamientos de desarrollo y listas de chequeo.

XXIX Saln de
Informtica Agosto'2009

38

Desafo 3: Tunning de Aplicaciones para


cumplimiento de requerimientos No Funcionales

Tiempos de respuesta Antes/Despus de


Optimizacin, bajo concurrencia.
Prueba de Carga sobre 3 Webservices
funcionales.
XXIX Saln de
Informtica Agosto'2009

39

Desafo 3: Tunning de Aplicaciones para


cumplimiento de requerimientos No Funcionales

Pruebas de Carga sobre solucin de seguridad.


 Escenario probando funcionalidad de autenticacin y
XXIX Saln de
Informtica
autorizacin
de usuarios va Portal Web.


Agosto'2009

40

Desafo 3: Tunning de Aplicaciones para


cumplimiento de requerimientos No Funcionales
Resultados:


Guas de afinamiento de Oracle Application Server, Oracle


BPEL PM, Oracle Webservices Manager, Oracle Identity
Management Suite. Versin 10g.
Optimizaciones de Rendimiento. Eg:


Problemas de escalamiento accediendo recursos fsicos (Imgenes, )


desde cdigo Java. Solucin: Creacin de caches en memoria de
recursos fsicos en byte[].
Creacin de Secuencias de BD con un Cache que soporte los usuarios
concurrentes. Problema impactaba tiempos de respuesta de servicios
bajo concurrencia.

XXIX Saln de
Informtica Agosto'2009

41

Agenda








Objetivo de la presentacin
Registro nico Nacional de Trnsito (RUNT)
Arquitectura de Aplicaciones, proyecto RUNT
Desafos y Problemticas encontradas en el desarrollo del
proyecto RUNT.
Desafo 1: Cumplimiento de tiempos de desarrollo, con calidad
de desarrollo.
Desafo 2: Integracin con actores externos
Desafo 3: Tunning de aplicaciones para soportar requerimientos
de concurrencia y desempeo
Conclusiones

XXIX Saln de
Informtica Agosto'2009

42

Conclusiones
RUNT un reto para el pas 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 pas.
El RUNT presenta un desafo importante en trminos de Tecnologas de Informacin:
 Para Heinsohn Software House como proveedor de software, en la creacin de
la solucin de negocio a partir de arquitectura y tecnologas SOA/BPM.
 Para la Concesin RUNT integrando la solucin de TI en una solucin de
negocio (infraestructura, comunicaciones, negocio, ).
 Para las entidades vinculadas al sector que aportan a la realizacin del RUNT
(Integracin, Datos, )
Pero sobre todo, el desafi del RUNT es para el pas, el gobierno y las entidades
vinculadas al sector.

El reto del RUNT es un reto en desarrollo, que llevar un proceso de maduracin


tanto para la solucin de tecnologa provedo por la RUNT como para las entidades
sector
XXIXdel
Saln
de que intervienen en su realizacin.


Informtica Agosto'2009

43

Conclusiones (2)


Las Soluciones de Tecnologas de informacin deben ser


orientadas a definir problemas y requerimientos de negocio.
Donde el negocio predomina sobre las soluciones tecnolgicas.


Este caso de estudio, muestra un ejemplo de definicin de arquitectura a


partir del negocio. Su arquitectura fue definida independientemente del
proveedor de tecnologa.

El modelo de desarrollo por medio de fabricas de Software


puede ser efectivamente utilizado, siempre y cuando este
alineado con la estrategia arquitectnica.

XXIX Saln de
Informtica Agosto'2009

44

Registro nico Nacional de Trnsito (RUNT)


Solucin de Tcnologia
Los proveedores de tecnologa que participaron en el
desarrollo de la solucin de software del proyecto
RUNT:



Heinsohn Software House


Quipux Software

XXIX Saln de
Informtica Agosto'2009

45

Heinsohn Software House


Perfil Corporativo







Fbrica de Software Colombiana


32 aos de Experiencia
COLOMBIA
El Salvador
Presencia en 9 pases
Venezuela
Panam
Ms de 450 empleados
Ms de 2000 licencias instaladas
Ecuador
Sedes en Bogot, Cali, Medelln,
Bolivia
Pereira, Manizales, Armenia
Per
 Subsidiarias en Argentina y Chile
 Certificada ISO 9001:2000
Chile
 Valoracin CMMI Nivel 3 y en
proceso de valoracin para el
Argentina
nivel 4.
XXIX Saln de
Informtica 46
Agosto'2009

46

Proyectos SOA - Heinsohn Software House


- Registro nico Nacional de Transito (RUNT)
- Proyectos de Gobierno en Lnea:











VUR - Registro de propiedad del inmueble


GEL-XML - Mantenimiento
PQR - Peticiones, quejas y reclamos
RedGEL - Seguimiento capacitacin y apropiacin Gobierno en Lnea
PUC - Auditora de calidad y desempeo
GELT - Gobierno en lnea fase transaccional
SIE2-DNE - Certificado de carencia de informes por trfico de estupefacientes
EVPC - Estatuto virtual de contratacin pblica
Servicios Web PDI
Inspeccin simultnea de Puertos

XXIX Saln de
Informtica Agosto'2009

47

Clientes Nacionales

XXIX Saln de
Informtica Agosto'2009

48

Clientes Internacionales Latinoamrica


Argentina

Peru

Venezuela

XXIX Saln de
Informtica 49
Agosto'2009

El Salvador

Bolivia

49

Desafos en proyectos de gran escala,


apalancados en tecnologas como BPM,
SOA y J2EE. Caso RUNT

Gracias por su atencin

50

You might also like