# BankSphere

BankSphere (abreviado a veces como BKS) es un entorno de desarrollo de aplicaciones del Banco Santander. Se trata de su plataforma principal en el caso de aplicaciones web. Ha sido construida por ISBAN.

## Visión general

BankSphere consiste en un conjunto de herramientas usadas para dar soporte a la metodología de desarrollo e-business del Santander. Dichas herramientas son usadas en distintas fases del proceso de desarrollo.
Quizá la herramienta más destacable es Vega. Usada para la fase de construcción, permite programar de forma gráfica la aplicación mediante el uso de diagramas de estado. Los estados son responsables de presentar páginas al usuario, de conectar con diversos sistemas, etc. Como se comentaba la construcción es gráfica, sin embargo en ciertos casos se programa directamente en Java o Javascript. La metodología especifica los casos en que la programación directa en un lenguaje está permitida.

### Lógica de negocio

BankSphere está diseñado para aplicaciones bancarias, que se caracterizan por el hecho de que se basan en pasos que se pueden describir con un diagrama de estados. Precisamente esto es lo que aporta BKS: se describe la lógica de negocio con diagramas de estado. Los pasos que componen el diagrama de estados terminan siendo consultas a los sistemas internos (BackOffice). Cualquier cosa que no se pueda realizar de esta forma se podría, teóricamente, desarrollar directamente en Java, aunque rara vez se permite hacerlo.

### Maquetación

BankSphere también se utiliza para maquetar páginas mediante componentes JavaScript, y conectarlos con la lógica de negocio.

## Desarrollo

Para el desarrollo de la aplicación se utilizan las siguientes herramientas:
* Mira Lógico, que genera el prototipo/maqueta del proyecto que se desea generar, con las especificaciones del cliente.
* Rational Rose, donde se elabora el modelo lógico de la aplicación siguiendo la metodología BankSphere.
* Vega y su sincronizador con Rational Rose para el desarrollo del modelo físico de la aplicación. El sincronizador de Vega con Mira Lógico para incorporar los diseños creados, a los Estados página creados en Vega.
* Mira, para la elaboración de la parte de presentación.
* Servidor, basado en WSAD (WebSphere Studio Application Developer) para desplegar la aplicación.

### Mira Lógico

El ciclo de desarrollo de una aplicación e-business comienza con el diseño de un prototipo, utilizando la herramienta Mira Lógico con las especificaciones del cliente. La aplicación que se va a diseñar consta de dos páginas web. La primera debe mandar información al servidor mientras que la segunda debe recibirla.

### Rational Rose

En esta herramienta se diseña el modelo lógico de la aplicación, que debe generar un fichero de exportación XML que puede ser interpretado por el sincronizador de Vega para elaborar un primer acercamiento al modelo físico final.

### Vega

Vega y su sincronizador con Rational Rose, permiten desarrollar el modelo físico a partir del fichero de exportación XML, que contiene el modelo lógico creado en Rational. Además, el sincronizador de Mira Lógico con Vega permite trasladar al modelo físico las páginas del prototipo de la aplicación diseñadas con la herramienta Mira Lógico.

### Mira

Mira permite finalizar la construcción del prototipo creado en Mira Lógico, y que ha servido de base para el desarrollo del modelo físico en Vega. Los estados página, definidos en Vega, que se han sincronizado con las páginas del prototipo creado en Mira Lógico, da lugar a las páginas de .mira.

### Proyecto de ensamblado

En el proyecto de ensamblado se realizan las correspondencias entre los distintos módulos de lógica de negocio y presentación a través de las Fachadas. Cada ensamblado consta de un único módulo de presentación y de uno, varios o ningún módulo de lógica de negocio.

## Perspectivas profesionales

BKS es un entorno de programación específico y propietario del Grupo Santander. Se usa sólo en el entorno de empresas del Banco Santander y otros bancos controlados por el mismo como Banesto, Totta, Abbey National Bank , Openbank , Santander Consumer Bank y Santander Bank en Alemania, Sovereign, GE Money.

## Críticas

Banksphere es una de las plataformas informáticas más criticadas en la comunidad de desarrollo, presenta varias características propias de sistemas defectuosos como es la generación de trazas de pila, excepciones y en general fallos poco intuitivos.
En el año 2010 un proyecto privado empezó a documentar las críticas realizadas sobre Banksphere en formato Wiki

## Aplicaciones en producción

Una aplicación en producción es una aplicación que ya está terminada y a disposición de los usuarios finales.
Actualmente hay desplegadas más de 160 aplicaciones desarrolladas con Banksphere en los distintos bancos del Grupo Santander. La mayoría son aplicaciones usadas en oficinas y en las intranets del Grupo. Actualmente toda la arquitectura de call centers también está desarrollada en esta plataforma. La web de Openbank es una aplicación construida haciendo uso de Banksphere y disponible al público en general. Desde el 03/09 está disponible parte de la web del Banco Santander (Supernet 2.0)