SCBCD: ¿Cuántas personas se necesitan para hacer un EJB 3.0?

(Imagen: Comedores de papa - Vincent van Gogh)

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:

  1. 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.
  2. 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:
  3. 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)
  4. 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.
  5. 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.
  6. 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.
  7. 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.
Como era de esperarse, en la vida real pues uno asume más de uno de estos roles a la hora de desarrollar EJB's; aunque tampoco es la voz asumir demasiados, Sölo son 7 roles, habrña que memorizarlos y tenerlos presentes a la hora del examen. Hasta otra..!

Publicar un comentario