Esto tiene que ver con otro de los objetivos del examen SCBCD (para los nuevos, Sun Certified Business Component Developer), que indica que debemos identificar los 7 roles EJB, así como sus responsabilidades. Entonces, al grano:
- Entreprise Bean Provider (Proveedor EJB): Es el que desarrolla los EJB's; y lo que produce son EJB's empaquetaddos en archivos ejb-jar. Entonces, su trabajo es definir los métodos de negocio, las interfaces de acceso de los clientes y la metadata correspondiente a cada bean (anotaciones , o descriptores XML). Ahora , este muchacho es un experto en el dominio de la aplicación , y desarrolla EJB's para implementar tareas del negocio y sus entidades. Asimismo, no es necesario que sea un experto en programación a nivel de sistema (transacciones, concurrencia, seguridad), dado que el contenedor EJB hace ese tipo de tareas por él.
- Application Assembler (Ensamblador de Aplicaciones): Combina EJB's en unidades desplegables más grandes. Toma como entrada los ejb-jar del Entreprise Bean Provider (o de varios), los combina y obtiene otro ejb-jar; junto a instrucciones de ensamblado. Así como el anterior, es un experto de dominio, y debe estar familiarizado con la funcionalidad que proveen las interfaces de acceso de los clientes; pero no es necerio que conozca detalles de implementación de EJB, dado que ese es el trabajo del:
- Deployer (Implementador): Toma los ejb-jar que produce el Application Assembler y despliega los EJB en un entorno determinado. Este entorno incluye un servidor EJB y un contenedor. Su trabajo es adaptar los EJB al entorno operativo y dejarlos corriendo en un contenedor EJB específico. Este tipo es un experto en un entorno operacional específico (por ejemplo un lobo en JBoss sobre Oracle usando LDAP sobre Linux)
- EJB Server Provider (Proveedor de Servidores EJB): Por favor no confundir el proveedor de Contenedores EJB. El Proveedor de Servidores EJB es un especialista en servicios a nivel de sistema (objetos distribuidos, administración de transacciones distribuidas). Por ejemplo, tenemos a los vendedores de Sistemas Operativos , de Middleware o de Bases de Datos.
- EJB Container Provider (Proveedor de Contenedor EJB): Como proveedor, nos provee de herramientas de despliegue y de suporte en tiempo de ejecución para nuestras instancias EJB. El contenedor nos provee de manejo de transacciones, administración de seguirdad, distribución en red para clientes remotos, manejo de recursos , etc. Las especialidad del Proveedor de Contenedor EJB es la programación a nivel de sistema. Asimismo provee a nuestro otro amigo, el Administrador del Sistema (más abajo), de herramientas para monitorear y administrar los EJB's en tiempo de ejecución.
- Persistence Provider (Proveedor de Persistencia): Este muchacho es un especiaista mapeo objeto/relacional, procesamiento de query's y caching. Provee las herramientas necesarias para el mapeo objeto-relacional de las entidas persistentes a una base de datos relacional. El Proveedor de Persistencia puede ser el mismo vendedor del Contenedor EJB o puede ser un tercero que provea un entorno de persistencia compatible.
- System Administrator (Administrador del Sistema): Responsable de la administración de la estructura de redes y cómputo de la empresa (todas las empresas tienen uno...no?), lo que incluye al servidor y al contenedor EJB.
Publicar un comentario