Oracle Service Bus (OSB), cuya principal función es ser un mediador entre diferentes aplicaciones para que éstas puedan comunicarse entre sí, sin tener que hacerlo directamente, envolviendo la complejidad que dicha comunicación involucre. Permite hacer desde ruteos y transfomaciones simples hasta orquestaciones complejas con la limitación de ser síncronas y secuenciales.
Oracle BPEL Process Manager permite orquestar flujos más complejos con procesamiento asíncronos y flujos paralelos. Las instancias son tolerantes a fallas y con trazabilidad, ya que el estado se almacena en base de datos
Adaptadores JCA Oracle que permiten la integración con cualquier fuente de datos, ya sea una aplicación, base de datos, mensajería, etc. Resulta de gran utilidad la integración con procedimientos almacenados y colas AQ, ya que habilitan una integración muy sencilla con aplicaciones desarrolladas con BD Oracle
JAX-WS y JAX-RS son estándares de desarrollo de WebServices y RESTful en java que permiten descansar de los detalles de comunicación y transformación de estructuras y concentrarse en las funcionalidad requerida
Aplicaciones Web
Oracle ADF que es la propuesta de desarrollo de aplicaciones JSF de Oracle en plataforma JEE con altos niveles de productividadJava en servidores JEE
Aplicaciones responsivas basadas en frameworks Javascript como JQuery, Bootstrap, AngularJS y servicios RESTful haciendo uso del estándar JAX-RS, que simplifica mucho el desarrollo de estos servicios.
Extracción, transformación y carga de datos (ETL) e Integración
Oracle Data Integrator (ODI) es permite el desarrollo de componentes transferencia entre fuentes de datos muy diversas. Utiliza la tecnología de conectores jdbc de java y viene configurada para operar con la mayoría de las BD's conocida. También permite configurar conectores a fuentes de datos con drivers menos conocidos. Integra:
Sentencias SQL con patrones, de delete-insert, truncate-insert, append, merge.
Componentes de captura de cambios como goldengate y otros.
Procedimientos almacenados
Inicialicación de parámetros de ejecución mediante SQL.
Invocación a WebService
Servidores FTP, HTTP, SSH, SFTP
Servidores de correos
Ejecución de comandos de sistema operativo
Componentes de BD Oracle
PL/SQL es un potente y elegante lenguaje de procedural con que se desarrollan los procedimientos almacenados en BD Oracle. Sus características son:
Integración natural con sentencias SQL, estáticas y dinámicas
Uso de variables de bind automático
Manejo de excepciones efectivo y simple
Integración con componentes java
Poderosa batería de librerías: XML, JSON, I/O, mensajería, control de procesos, HTML, HTTP, etc.
Uso de colecciones: registros, arreglos normales y asociativos, tablas en memoria, etc.
Operaciones de datos en lotes (bulk)
Las colas AQ permiten desarrollar integración de aplicaciones Oracle en forma totalmente desacoplada con patrones de productor/consumidor o publicador/suscriptor con protección de commit de 2 fases, así como también la integración con servicios usando la tecnología de adaptador JCA para colas AQ
El lenguaje SQL de Oracle se caracteriza por:
Soportar los estándares de sentencias SQL
Tiene un poderoso optimizador basado en costos que puede ser controlado mediante hints e inspeccionado mediante planes de ejecución y otros
Tiene una arquitectura de bloqueo a nivel de filas y opera con lectura consistente con múltiples versiones
Tiene un conjunto poderoso de funciones como: generación y parseo de XML, manejo de fechas, expresiones regulares.
Funciones analíticas, que permiten una gran cantidad de operaciones sorprendentes, como:
Porcentaje respecto al total
Diferencia con el valor del registro anterior
Obtener agrupaciones multidimensionales
Obtener ranking en grupos
Etc.
Sentencia merge que realiza insert si el registro no está o update en caso contrario.
Oracle posee una serie de objetos que apoyan en el desarrollo de aplicaciones eficientes:
Secuencias que permiten la generación de claves correlativas evitando la contención entre procesos o usuarios.
Vistas materializadas que permiten contar con resultados complejos precalculados
Triggers que permiten implementar reglas de negocio complejas a nivel de la BD, tanto en validación como en actualización de datos.
Herramientas Transversales
SVN pemite el control de versiones con capacidad de establecer tags y branches. Realiza merges automáticos y en caso de conflicto permite la resolución manual
Maven mantiene el control de dependencias de componentes y realiza el empaquetamiento y distribución de entregables
Jira permite que nuestros clientes abran tickets o casos acerca de defectos, consultas o mejoras de las componentes entregadas. Apoya en el seguimiento y control de proceso de la resolución de los casos e informa sobre el cumplimiento de SLA
JUnit permite programar las pruebas unitarias que se hayan definido para cada componente
JMeter permite automatizar pruebas integradas y realizar pruebas de carga y de stress