miércoles, 4 de mayo de 2011

Software Bancario, Parte I: Flexcube

A finales del año 2002 se presentó la necesidad de tener un nuevo Sistema Central para un Banco que prácticamente estaba siendo creado desde cero (en verdad se trataba de una ampliación de un pequeño banco llamado Eurobanco que no había tenido mayor desarrollo). La dirección de tecnología se enfocó en dos casas de software: i-Flex e Infosys, ambas empresas Indias, ya que lideraban las ventas de este tipo de Sistemas para plataforma medianas (no para Mainframes). Finalmente la decisión recayó en la empresa i-Flex y su producto estrella Flexcube.

Naturalmente Flexcube está compuesto por una constelación de sistemas satelitales que pueden adquirirse o no, para este análisis nos centraremos en los tres módulos principales: Flexcube propiamente, FC@ (la interfaz Web) y Flexbranch (para las oficinas).

Flexcube:
Este sistema es el centro del banco puesto que tiene el manejo de la contabilidad, de las cuentas de los clientes, de los préstamos, etc. La gran ventaja de Flexcube, es que se trata de un sistema parametrizable lo cual, en teoría, hace que la definición de nuevos productos sea independiente de los programadores: los directores del negocio pueden dedicarse a idear nuevos productos los cuales serían implementados por los “parametrizadores” en un ambiente controlado de pruebas, luego de lo cual los cambios podrían ser puestos en producción SIN que interviniese en el proceso programador alguno! En la práctica la programación era frecuente puesto que hacían falta nuevas interfaces, cambiar pantallas de datos, idear reportes o simplemente adecuar el software a nuevos requerimientos regulatorios tales como el IDB (Impuesto al debido Bancario) o el ITF (Impuesto a las Transacciones Financieras).
Los requerimientos técnicos de Flexcube no son muy complicados:

Servidor Central: Un servidor con Unix (la aplicación está certificada con HP-UX, Solaris y AIX y las instalaciones mundialmente están distribuidas exactamente en ese orden) en el cual está Oracle (nosotros llegamos a la versión 10g). También podría estar con Windows Server pero, para este tipo de aplicaciones pesadas, me parece mucho más “sano” tener Flexcube en Unix. En un momento dado plantee efectuar la instalación sobre Linux (aun cuando i-Flex no lo tenía certificado), para ello logré hablar por teléfono con un analista “duro” de i-Flex quién me dijo: “Dame una plataforma que sirva para Oracle y Flexcube funcionará”, con lo cual la opción de Linux era válida, pero no fui autorizado a instalarla. La primera configuración que tuvimos fue con un Sun V440 con 4GBytes de memoria RAM y 4 discos de 36GBytes (luego ampliados a 5 discos de 73GBytes adicionales) con Solaris 9 y Oracle 9i.

Servidor de Aplicaciones: Naturalmente las estaciones de trabajo no se conectarían directamente al servidor Oracle, sino a un Servidor de Aplicaciones. La compañía i-Flex nos dijo que Flexcube funcionaría con “cualquier” servidor de aplicaciones, pero nos recomendaban fuertemente que fuese el de Oracle. El Servidor de Aplicaciones sería el encargado de tener las pantallas propiamente desarrolladas mediante Oracle Forms y Oracle Reports; este servidor sería el “canalizador” principal de las peticiones a la Base de Datos Oracle de los usuarios. Nuestro servidor de aplicaciones inicial fue un Sun V240 con 2GBytes de memoria RAM y 2 discos de 36GBytes también con Solaris 9 y Oracle AS 9i. La ventaja de tener a un servidor de aplicaciones, es que los usuarios que acceden al sistema NO son usuarios de Oracle sino de Flexcube, de esta manera la seguridad la implementa Flexcube propiamente. A la Superintendencia de Bancos (Sudeban) este esquema gustó mucho puesto que un hueco de seguridad permanente en las instalaciones bancarias es que un usuario, con algunas destrezas técnicas, fácilmente podría conectarse directamente a la Base de Datos y traerse todas las tablas que tiene permiso de acceder mediante un programa simple como Microsoft Access o Excel.

Estaciones de trabajo: Las estaciones de trabajo necesitaban tener Windows XP y el Internet Explorer versión 6 (con la 7 o posterior no funcionaban ni tampoco con Firefox u otros exploradores) con ciertos parámetros de seguridad “relajados”. Con la primera conexión al Servidor de Aplicaciones, la estación de trabajo se baja el Oracle Initiator gracias al cual las pantallas pueden funcionar. Dado que los reportes de Flexcube no eran muy “vistosos”, éstos se efectuaban mediante otra herramienta comercial… en nuestro caso se seleccionó Business Objects, así que las estaciones de trabajo que necesitaría ver reportes específicos de Flexcube (como por ejemplo los Estados de Cuenta o los Balances de Contabilidad) tenían que tener instalado este software.

En próxima entregas hablaré sobre los otros sistemas de i-Flex relacionados con Flexcube.

No hay comentarios:

Publicar un comentario