Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
1K vistas28 páginas

NACAR - Curso

Descargar como pdf o txt
Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1/ 28

04/06/2012

Nacar
Ligero

¿Qué es NACAR?

Nueva Arquitectura de Canales de Acceso Remoto


Software Propietario del Corporativo BBVA
Arquitectura
Ejecución
Desarrollo
Negocio para canales

Basada en componentes Java


J2EE e independiente de productos de SW externos
Externalización de la navegación (Flujo)
Separación de lógicas de negocio y presentación
Tendencia a Cero Código (0-Code)
Granularidad de los servicios e independencia componentes
Uso de XML
Multiplataforma y Multicanal
Alta reutilización

1
04/06/2012

¿Qué es NACAR?

 Nueva Arquitectura de Canales de Acceso Remoto

 Software Propietario del Corporativo BBVA

 Arquitectura
 Ejecución
 Desarrollo
 Negocio para canales.

Principios de la Arquitectura Nacar

 Basada en componentes Java


 J2EE e independiente de productos de SW externos
 Externalizacion de la navegación (Flujo)
 Separación de lógicas de negocio y presentación
 Tendencia a Cero Código (0-Code)
 Granularidad de los servicios e independencia componentes
 Uso de XML
 Multiplataforma y Multicanal
 Alta reutilización

2
04/06/2012

DESARROLLO Esquema de Infraestructura


Puesto Nacar DCD

Servidor NACAR

Servicios Bases Servicios de


Transacciones
de Datos Negocio

HOST Base de Datos de


Aplicación

DESARROLLO Esquema de Infraestructura


Arquitectura de Desarrollo

Herramientas de
Desarrollo

Repositorios de
Componentes

Herramientas de
Diseño

3
04/06/2012

DESARROLLO Herramientas del Puesto de Trabajo

Cliente Visual Nacar

DESARROLLO Herramientas del Puesto de Trabajo

Pintador

4
04/06/2012

DESARROLLO Herramientas del Puesto de Trabajo


RAD

ARQ. NACAR EJECUCIÓN


Esquema de Infraestructura
Arquitectura de Ejecución

Aplicación
Motor NACAR JAVA

Aplicación
HTML
Servicios de
Ejecución

10

5
04/06/2012

Relación Arquitectura Desarrollo - Ejecución


Flujo, Contexto e
Interfaces Exportador

Generador
DCD

Lanzador de
Flujos Trazas
Depurador
Flujo, Dump
contexto

Motor
Nacar
Repositorio

Aplicación
Ventanas
NACAR
Javascripts

Servicios de Negocio, Servicios de


Arquitectura
Rutinas
Componentes Java

Gestor Versiones

11

¿Que se requiere para Instalar NACAR?


Puestos de desarrollo Servidor de archivos Servidor de repositorio

Hardware:
Pentium IV 2.8 Ghz
120 GB memoria HD
2 GB memoria RAM
Partición C y D Software:
DB2 9.5
Software: Software: MQ Manager
XP Pro en Español Windows 2003

SP actualizado Unidad J Productos:


Visual Nacar 904 DCD
RAD Gestor de
versiones.
IBM JRE 1.4
DB2 Cliente

6
04/06/2012

¿Que implica un desarrollo en NACAR?


Puesto Nacar DCD

Servidor NACAR

Servicios Bases Servicios de


Transacciones
de Datos Negocio

HOST Base de Datos de


Aplicación

¿Que implica un desarrollo en NACAR?


Flujo, Contexto e
Interfaces Exportador

Generador
DCD

Lanzador de
Flujos Trazas
Depurador
Flujo, Dump
contexto

Motor
Nacar

Repositorio
Aplicación
Ventanas NACAR
Javascripts

Servicios de
Servicios de Negocio, Arquitectura
Rutinas
Componentes Java

Gestor Versiones

7
04/06/2012

¿Que implica un desarrollo en NACAR?


Para desarrollar aplicaciones, es necesario seguir los siguientes pasos, y utilizando las siguientes herramientas:

Visual NACAR RAD Visual NACAR


Genera
Alta Alta de Lanzamien
Alta Pintad ción
Servicio Contextos to de Docum
Alta de Flujo o de la XML
de y Servicio entació
Servicios (Externo Ventan desde
Acceso Asignación (Flujo ó n
) a herrami
a datos a Servicios Ventana)
enta

• Servicios • Controles
de • Servidore • Contextos • Flujo Gráficos • Servicios • Formato • Ficheros
Negocio s • Agrupació Externo • Propiedad • Informaci Java HTML
• Servicios • Recursos n de es de los ón • Formato • MultiIdiom
de • Querys Compone mismos Acceso a HTML a
Accesos a • Campos ntes • Flujo Datos
Datos de • Asignació Interno • Flujos
• Presentaci entrada y n Eventos como
ón salida Lógicos propiedad
(Pantallas) del panel
• Flujos

Después de esto se deben de generar los archivos en las rutas correctas para poder ejecutar la aplicación

Ambientación necesaria para desarrollos


en Visual NACAR
RAD

“Pintamos” las ventanas físicas


Repositorio
(para las ventanas físicas de canales ligeros se
Relaciona el nombre de la clase
usa RAD)
Java con el nombre de la
Nombre clase java o nombre de la ventana ventana lógica y la pasa al DCD
Bean Name o nombre de la ventana lógica

VISUAL NACAR

DCD
Desarrollo de Rutinas y Servicios De Negocio
Damos de alta las ventanas lógicas
Definimos los contextos asociados a esa ventana
Asociamos el nombre de la clase java a la GENERADOR
ventana lógica
Alta de servicios de Datos, flujos, mensajes.
XML ventanas
XML flujos externos
XML servicios de datos

8
04/06/2012

Ambientación necesaria para desarrollos


en Visual NACAR
El Entorno de Desarrollo NACAR define e implementa una arquitectura de desarrollo en
concordancia con la arquitectura de ejecución NACAR.

La Arquitectura se refiere a una capa de software sobre la que se apoyan las


aplicaciones finales del sistema para proporcionarles una serie de funciones genéricas
que utilizan frecuentemente de tal forma que dichas funciones se puedan reutilizar,
simplificar y optimizar.
Arquitectura de Desarrollo Arquitectura de Ejecución

Herramientas Aplicación
de Desarrollo JAVA

Repositorios Motor
...
Generador
de NACAR
XML
Componentes
Aplicación
Herramientas HTML
de Diseño
Servicios de
Ejecución

Metodología orientada a componentes Arquitectura orientada a componentes

Fundamentos de desarrollo para NACAR


La presentación NACAR en forma de JSP se apoya en el uso de las Custom Tags.
Éstas son librerías java que encapsulan código que genera presentación de forma
dinámica. Arquitectura Técnica ofrece controles de presentación para uso en JSP
en forma de Custom tags y además el estándar de desarrollo de Custom tags
aplicativas.
Estas recomendaciones de diseño y construcción de aplicaciones NACAR
en lo que respecta a rendimiento y mantenibilidad del código. Se ha centrado el
estudio en tecnología NACAR (flujo externo) y JSP como solución de presentación.
Las Recomendaciones a seguir en forma general son las siguientes:

• Minimizar o evitar incluir entre diferentes interacciones del usuario secuencias


muy pesadas que retrasen la siguiente interacción. Considerar los siguientes
aspectos en la fase diseño:

o Minimizar y optimizar al máximo los servicios que se ejecutan en cada


interacción.
o Considerar el tiempo de espera del usuario y adecuar interfaz para que éste
sea óptimo
o En la medida de lo posible adelantar la recuperación de datos o servicios
(Workflow) antes de cargar la interfaz de usuario.

9
04/06/2012

Fundamentos de desarrollo para NACAR


• Minimizar la invocación de servicios que se repiten en flujos secundarios
(invocados por el flujo principal), para ello es imprescindible considerar los datos
necesarios para la ejecución de la operativa y gestionar ésta en flujos de
jerarquía superior que invoquen a los flujos que implementan los casos de uso
funcionales.

• Controlar los retornos de todos los servicios y flujos NACAR en base a las
posibles salidas.
• Es recomendable que todos los flujos finalicen con ATAENL00001,
ATAENL00003 Y ATAENL00004, de forma que se controlen todas las posibles
salidas por fin_ok, fin_aviso y fin_error. Y aunque sea obvio todos los flujos deben
contar únicamente con un evento inicio.
• Evitar la circulación de mapeos redundantes entre servicios. Cuando es
necesario disponer un elemento de contexto para servicios no inmediatamente
posterior, se recomienda mapear este elemento al contexto del flujo y
recuperarlo en el servicio destino desde este contexto del flujo.
• Evitar el uso de flujos nulos: Si es necesario efectuar un mapeo antes de un
decisor o un evaluador, es aconsejable utilizar un servicio de negocio con un
método ejecutar vacío con un simple return o si es posible utilizar una rutina.

Fundamentos de desarrollo para NACAR


• Los pasos con vuelta o sin vuelta deben ser coherentes con la correcta
funcionalidad de la aplicación. La funcionalidad ‘Con_Vuelta’ significa que
ejecutado el servicio origen del paso no se destruye el contexto asociado al
servicio y por tanto si el flujo vuelve al servicio se dispone del contexto del mismo
en memoria.

• Evitar en la medida de lo posible usar 3 o más condiciones consecutivas dentro


de un flujo. Posiblemente puedan sustituirse por un evaluador o un servicio de
negocio.

• Usar mapeos por referencia en la medida de lo posible (el mapeo por valor
genera una copia del origen).

• Garantizar la salida, mediante alguna condición o evento, cuando se producen


ciclos o bucles entre componentes o servicios dentro de un flujo.

• Habilitar la caché de transacciones en aquellas que devuelvan datos estáticos


y compartidos para los criterios de caché

10
04/06/2012

Fundamentos de desarrollo para NACAR


• En caso de necesidad de compartir datos entre las sesiones de usuarios de
una misma aplicación se recomienda la utilización del servicio de contexto
multiusuario persistente (ATAESG00045). En caso de modificación de dichos
datos, tener en cuenta que la política de gestión de esos datos debe de ser
centralizada.

• Invocación a flujos ligeros desde otra aplicación ligera. El uso de flujos


ligeros de otra aplicación B desde un flujo ligero de la aplicación A (invocando al
flujo o a través del servicio genérico de flujo ATAESG00004) implica:

o Configuración de recursos de la aplicación B debe estar incluida en la


configuración de la aplicación A.

o La ejecución de ambos flujos se realiza en la instancia de la aplicación A.

Fundamentos de desarrollo para NACAR


• Invocaciones remotas a flujos ligeros. La ejecución de operaciones en ligeros
de forma remota se realiza a través del servicio genérico de operación ligera thin
(ATAESG00048) mediante el cual un flujo “A” que se esta ejecutando en una
instancia del WAS puede llamar a un flujo “B” que se esta ejecutando en otra
instancia WAS diferente con solo conocer el código de operación y los
parámetros de dicho flujo. Este servicio se puede utilizar de forma anidada pero
esta limitado a:
o Número de máximo de tareas activas definidas para un usuario dentro de
una aplicación.
o Se recomienda que el contexto no contenga estructuras demasiado
complejas o con gran cantidad de información (límite de 2Kb).

• Codigo JavaScript Identificar y encapsular funciones comunes en librerías


comunes. En este sentido todo nuevo desarrollo debe considerar aquellas
funciones comunes disponibles y evaluar si o cómo pueden satisfacer las
necesidades del desarrollo. Si es necesario realizar una nueva función considerar
sus posibilidades (común ) o específica ) y en base a esto ubicarla en las librerías
que correspondan.

11
04/06/2012

Tipos de Arquitectura
Puestos de desarrollo Servidor de archivos Servidor de repositorio

Hardware:
Pentium IV 2.8 Ghz
120 GB memoria HD
2 GB memoria RAM
Partición C y D Software:
DB2 9.5
Software: MQ Manager
Software:
Windows 2003
XP Pro en Español
Unidad J Productos:
SP actualizado
DCD
Visual Nacar 904
Gestor de
RAD versiones.
“N” IBM JRE 1.4
puestos...
DB2 Cliente

Arquitectura de Desarrollo
Descripción

El Entorno de Desarrollo NACAR define e implementa una


arquitectura de desarrollo en concordancia con la arquitectura de
ejecución NACAR.
Arquitectura de Desarrollo Arquitectura de Ejecución

Herramientas Aplicación
de Desarrollo JAVA

Motor
Repositorios .Generador
..
de XML NACAR
Componentes
Aplicación
Herramientas HTML
de Diseño
Servicios de
Ejecución

Metodología orientada a componentes Arquitectura orientada a componentes

12
04/06/2012

Arquitectura de Desarrollo
Herramientas

Esquema lógico de las herramientas

Diseño Construcción
Visual Nacar RAD

Arquitectura de Desarrollo
Herramientas

RAD
“Pintamos” las ventanas físicas
Repositorio
(para las ventanas físicas de canales ligeros se
usa RAD) EXPORTADOR DE VENTANAS
Nombre clase java o nombre de la ventana Relaciona el nombre de la clase
Bean Name o nombre de la ventana lógica Java con el nombre de la
ventana lógica y la pasa al DCD

VISUAL NACAR

Desarrollo de Rutinas y Servicios De Negocio DCD

Damos de alta las ventanas lógicas


Definimos los contextos asociados a esa ventana
Asociamos el nombre de la clase java a
GENERADOR
la ventana lógica
Alta de servicios de Datos, flujos, mensajes…
XML ventanas
XML flujos externos
XML servicios de datos

13
04/06/2012

Arquitectura de Desarrollo
Herramientas
Flujo, Contexto e
Interfaces Exportador

Generador
DCD

Lanzador de
Flujos Trazas
Depurador
Flujo, Dump
contexto

Motor
Nacar
Repositorio
Ventanas
Javascripts Aplicación
NACAR
Servicios de
Servicios de Negocio, Arquitectura
Rutinas
Componentes Java

Gestor Versiones

Arquitectura de Desarrollo
Diccionario de Datos

Relaciones con las Herramientas

• Propiedades de los controles


RAD • Elementos de Datos
• Ventanas

• XML
interpretable

Arquitectura
Ejecución
Visual
Nacar
• Componentes

DCD

14
04/06/2012

Arquitectura de Desarrollo
Ciclo de Desarrollo de Aplicaciones
Para desarrollar aplicaciones, es necesario seguir los siguientes
pasos, y utilizando las siguientes herramientas:

Visual NACARAlta RAD Visual NACAR


Lanza
Alta de
Alta Gener mient
de Conte
Flujo Pinta ación o de Docu
Infor xtos
de do de XML Servic menta
Alta de mació y
Nego la desde io ción y
Servicios n de Asign
cio Venta herra (Flujo Ayud
Acces ación
(Exter na mient ó as)
oa a
no) a Venta
datos Servic
na)
ios
• Servicios
de Negocio • Servidores • Contextos • Flujo • Controles • Servicios • Formato • Ficheros
• Servicios • Recursos • Agrupación Externo Gráficos • Informaci Java HTML
de Accesos • Querys de • Propiedade ón • Formato • MultiIdioma
a Datos • Campos de Component s de los Acceso a HTML
• Presentació entrada y es mismos Datos
n salida • Asignación • Flujo • Flujos
(Pantallas) Eventos Interno
• Flujos Lógicos como
propiedad
del panel

Arquitectura de Desarrollo
Entorno de Desarrollo

Esquema Lógico de Máquinas y Equipos


JDBC/ODBC

Repositorios

Puesto Nacar Servidor Servicios Remotos

Servicios Bases Servicios de


Transacciones
de Datos Negocio

HOST Base de Datos de


Aplicación

15
04/06/2012

Arquitectura de Desarrollo
Entorno de Desarrollo

Esquema físico (cont.)

Los diferentes servidores son :


 De Servicios Remotos: donde se encuentran los servicios
remotos que acceden a Host, a Bases de Datos,... Estos
servidores son propios del entorno básico de Desarrollo
 De Repositorio: deberá existir un servidor para almacenar el
DCD ó repositorio NACAR.
 De Base de Datos: donde las aplicaciones almacenan sus datos
de forma temporal, para hacer las pruebas unitarias, suele
coincidir con el servidor de servicios remotos
 De Ficheros: Los desarrolladores requieren compartir ficheros,
aunque este equipo no forme parte del entorno de desarrollo,
sino a los recursos de red corporativos que el BBVA posee.

Arquitectura de Desarrollo
Entorno de Desarrollo
Esquema físico (cont.)
El esquema siguiente, explicado en las anteriores trasparencias, se repite a lo
largo de los diferentes entornos que se definan, integrado, QA,... :
Repositorio DCD

Base de Datos
de Aplicaciones
VisualNacar y
RAD

Servidor PU
Repositorios 1

Peticiones RMI
Servidor
Servicios Host
Puesto Desarrollo Remotos
NACAR

(Los sombreados son los que se necesitan en todos


Servidor Repositorio
los entornos, diferentes a los de desarrollo)
Repositorios 2

16
04/06/2012

Terminal Financiero
NACAR Ligero
Visión General del Área

33

¿Qué es esto?

Esta guía rápida fue desarrollada para que conozcas


los conceptos básicos del área de Terminal Financiero, así
como los conceptos básicos de nuestro trabajo diario, para
que podamos conocer los temas generales acerca de
NACAR Ligero.

17
04/06/2012

¿Qué es Terminal Financiero?


• Visión

• Terminal Financiero es el área que desarrolla las aplicaciones


para ejecutivos de sucursales en las diversas bancas de
BBVA Bancomer.
• Actualmente se tienen dos plataformas, las cuales se conoce
como NACAR Pesado y NACAR Ligero.
• NACAR Ligero opera sobre un ambiente web y se accede por
medio de una URL específica instalada sobre la Ofimática por
la Intranet de cada usuario dependiendo de su rol y perfil.

¿Acceso a Nuevo Front?

18
04/06/2012

¿Quiénes son nuestros usuarios?

Nuestros usuarios son los ejecutivos de las distintas bancas de


BBVA Bancomer:

¿Qué es NACAR Ligero?

Nueva Arquitectura de Canales de Acceso Remoto

•Es una plataforma basada en ambiente web.


•Desarrollo basado en componentes, sustituibles y reutilizables.
•Flujo de negocio independiente de la presentación
•Lógica interna de las ventanas independiente del flujo de
negocio.
•Uso de XML para el flujo de información en las aplicaciones (por
ej., ejecución de transacciones)
•Multicanal y multiplataforma

19
04/06/2012

¿Cuáles son sus componentes?

Flujo externo
Ventanas
Servicios de acceso a datos
Contextos XML
Eventos JSP
Rutinas CSS
Mensajes JS
Servicio de mensajes
Literales
Recursos para servicios de acceso a datos
Parámetros de servicios de acceso a datos

¿Cómo funciona NACAR Ligero?


Websphere Application
Server

20
04/06/2012

¿Qué es el WAS?

Los componentes de NACAR se instalan en un servidor Web


conocido como Websphere Application Server.
Por cada entorno previo / productivo, se genera una carpeta
donde se instalan todos los archivos conocidos como instancia
aplicativa dentro de un WAR, los cuales al interactuar con el
motor de arquitectura NACAR (clases en Java) se presenta el
Front de las aplicaciones.
El motor del servidor es JAVA.

¿Consola WAS?

21
04/06/2012

¿Cómo se distribuye una instancia?

¿Cuántas instancias hay?


Dependiendo el Front, existen las siguientes instancias:

- Instancia de entorno Test


(150.250.250.112, 150.250.250.130,150.100.230.126)

- Instancia de entorno Calidad


(150.250.250.112)

-Instancia de entorno Piloto


(150.100.246.160)

- Instancia de entorno Producción vía uno (150.100.246.160)


- Instancia de entorno Producción vía dos (150.100.246.162)

22
04/06/2012

¿Qué es una traza?


Hay varios logs que se generan durante la ejecución de una
aplicación, los cuales nos ayudan a conocer la funcionalidad
presentada al usuario y a su vez lo utilizamos para diagnosticar
un problema:

-Traza de sesión: esta traza se valida en la instancia de portal


en la cual se presenta la información del usuario al acceder al
Front, ejecución de transacción perfiladora (QSP5) y asignación
de sesión.

- Traza aplicativa: esta traza se visualiza dentro de la instancia


aplicativa y es la que muestra la ejecución de flujos externos y la
respuesta a las acciones.

¿Qué es una traza?

23
04/06/2012

¿Qué es una traza aplicativa?

¿Cuáles son las etapas de un desarrollo?

24
04/06/2012

Etapa de Gestión de Iniciativas

Etapa de Análisis

25
04/06/2012

Etapa de Diseño y Construcción

Etapa de Pruebas

26
04/06/2012

Etapa de Implantación

Etapa de Implantación

27
04/06/2012

Notas Importantes

- Recuerden que todas estas aplicaciones son para usuarios y


clientes reales, así que deben realizarse con la mayor calidad
posible.
- Todos los desarrollos que realizamos vienen de una iniciativa
de usuario, por lo que es necesario que todo lo que se vaya
desarrollando se documente correctamente.
- Próximamente se estará trabajando en la implementación de
una herramienta de versionados, para apoyar a los versionados y
mejorar nuestras entregas posteriores.

28

También podría gustarte