• No se han encontrado resultados

API Común (JSR 144: OSS Common API) Este API surge ante la necesidad de las APIs OSS de un JSR común para capturar interfaces y clases comunes para evitar la duplicación de

5. OSS A TRAVES DE OSS/J

5.1 APLICACIÓN DE OSS/J AL OSS PARA GESTIÓN DE FALLAS EN REDES MÓVILES DE 3G

5.1.1 API Común (JSR 144: OSS Common API) Este API surge ante la necesidad de las APIs OSS de un JSR común para capturar interfaces y clases comunes para evitar la duplicación de

estas y de código, y mantener la consistencia a través de los APIs.

En este API se encuentra la definición más genérica de las clases, de la cual se basan los APIs actuales y se basarán los que están por desarrollarse, por lo que aquellas clases de Objetos de información y atributos, así como las operaciones, notificaciones y parámetros, definidos en el Capitulo 4, para la arquitectura de la Información del OSS serán mapeados a este API, siempre y cuando no exista un API especifico que los cubra.

Este JSR esta basado en el estándar de servicios J2EE, esencialmente en:

EJB (Enterprise Java Beans): es usada debido a su aceptación por la industria de la información y de las comunicaciones, para facilitar la integración de componentes OSS, los APIs OSS/J definen interfaces estándar EJB.

JMS (Java Message Service): además de la capacidad para ejecutar llamadas a métodos de forma sincrónica (EJB), exite también la necesidad de enviar mensajes asíncronos. Por esta

razón es considerada la tecnología JMS como la solución más viable.

Esta especificación define clases e interfaces así como un conjunto de patrones que pueden ser aplicados a la plataforma J2EE para la especificación de componentes básicos de gestión de redes, servicios, y negocios.

Las entidades de red central (CBE, Core Business Entities), también parte de esta especificación, definen interfaces que son reusables a través de múltiples componentes OSS tales como: activación, facturación, Inventario, Trouble Ticket, Calidad de servicio (QoS), etc. CBE también define un modelo de información central, de objetos de transferencia de datos compartibles alineados al modelo de datos e información compartida TMF (SID, Shared Information and Data).

La clave de esta especificación es el concepto de componentes básicos software. Un componente básico software es una colección de componentes software, que junto con otro componente software (para los propósitos de desarrollo), satisfacen una o más necesidades de negocios. Un componente básico OSS/J comprende piezas software, como:

 EJB Session Beans con Java Value Types (JVT)

 Message Driven Beans

 EJB Entity Beans

 Core Business Entities (CBE)

En OSS/J, una entidad gestionada o un objeto de negocios esta representado por un EJB Entity Bean, un objeto Java Value Type (JVT), un documento XML o una entidad de negocios.

Este API esta enfocado a los siguientes elementos:

 un mecanismo para implementar un modelo de interacción asíncrono y débilmente acoplado que depende de mensajes basados en XML;

 un mecanismo para fuerte tipeado, y eventos basados en objetos;

 un mecanismo para eventos basados en XML;

 mecanismos de Suscripción de eventos y mensajes basados en la especificación Java™ Messaging Service (JMS);

 un mecanismo para facilitar la ubicación de elementos de la arquitectura OSS/J, por ejemplo, tópicos, Session Beans, y Colas que utilizan la especificación Java™ Naming and Directory Interface (JNDI);

Un componente básico OSS/J provee interfaces para la gestión de un conjunto específico de entidades u objetos de negocios de telecomunicaciones. La funcionalidad OSS esta implementada dentro de componentes software que soportan el contrato de interfaces definidas que representan la lógica de la aplicación.

Entidades Gestionadas. Un tipo entidad describe un tipo de “cosa” en el mundo real con una

existencia independiente. Un tipo entidad puede ser un objeto con una existencia física como por ejemplo un paquete de circuitos, un elemento gestionado, o una ranura de tiempo (slot)- o puede ser un objeto con una existencia conceptual como una alarma, un conjunto de políticas, un SLA, una orden de servicio, un trouble ticket, un escáner, una subred, un punto de terminación, etc. Cada tipo entidad tiene propiedades particulares y atributos los cuales describen la entidad. Una instancia de entidad describe una instancia particular de un tipo de entidad. Los atributos de cada entidad son descritos por valores particulares que representan el estado de esa instancia. Adicionalmente, cada entidad puede ser identificable excepcionalmente.

Las definiciones de las entidades centrales, modelos de información y especificaciones (CBE), son una implementación del TMForum SID, y son usadas como la piedra angular para el desarrollo de algunos de APIs OSS/J.

Patrones de Interacción .Un patrón de interacción define al naturaleza de las interacciones (por ejemplo la interacción de interfaces) expuestas por los componentes básicos de OSS/J.

La definición de los diferentes patrones de interacción depende del tipo de actor que accede el sistema gestionado. Para el API común se definen dos patrones de interacción. Si el uso pretendido es para fuerte integración de aplicaciones OSS/J el tipo de patrón interacción recomendado es Java Value Type Session Bean (JVT), si por el contrario lo que se pretende es la baja integración con aplicaciones OSS/J el patrón de interacción recomendado es XML Messaging.

Figura 39. Patrones de Interacción

OSS through Java Initiative. OSS Common API Overview. OSS/J 2005. p.14.:il(OSS Common API)

[36]

Java Value Type Session Beans (JVT): las instancias de un conjunto de tipos de entidades son accedidas por medio de una interfaz singular por ejemplo un Stateless Session Bean. La mayoría de operaciones son definidas en la aplicación de interfaces Session, las cuales comunican

identidades y estados de entidades gestionadas usando parámetros de operación que usan los objetos Java Value Type. El estilo de interfaces JVT son propuestas para el uso por clientes Java que desean fuerte integración con aplicaciones OSS/J.

XML/JMS Messaging: las instancias de un conjunto de tipos de entidades son accedidas por medio de peticiones XML enviadas a destinos de mensajes (MD, Messaging Destinations), las peticiones son enrutadas a la aplicación Message Driven Beans específica. Las operaciones son definidas en mensajes XML Request, los cuales comunican identidades y estados de entidades gestionadas usando parámetros de operación definidos por un esquema XML que emplea el mapeo XML de objetos Java. Se espera que los Stateless Session Beans XML sean usados para implementar las interfaces que soportan mensajes XML.

Interfaces JVT. Las JVT Session Bean proveen acceso a las entidades gestionadas usando objetos Java™ Value Type (JVT) como parámetros y caracteres de retorno. En este patrón de interacción, las entidades gestionadas son representadas como Objetos JVT basados en el modelo de objetos. El JVT Session Bean soporta interfaces para crear, recuperar, actualizar, consultar y borrar un objeto JVT.

En una interacción típica entre un cliente y un JVT Session Bean el cliente obtiene la instancia del ManagedEntityValue correspondiente al identificador del objeto dado. Este fija solo los atributos apropiados desde el ManagedEntityValue retornado y llama al método setManagedEntity() usando la ManagedEntityValue actualizada.

Todos los objetos tipo valor (ManagedEntityValue class) siguen este patrón de nombramiento específico:

 Una interfaz tipo valor siempre termina con la cadena ”Value”.

 Una interfaz de identificador que permite identificar excepcionalmente el objeto tipo valor, siempre finalizando con la cadena “Key”

Por ejemplo:

javax.oss.cbe.product.ProductValue javax.oss.cbe.product.ProductKey

La interfaz Tipo valor incluye siempre un método industrial para crear, y retornar la interfaz de identificador correspondiente por defecto.

XML Messaging

Los patrones de interacción entre XML Messaging proveen accesos a las entidades gestionadas a través del paradigma requerimiento/respuesta basado en XML. En este patrón de interacción, las

entidades gestionadas son representadas por instancias XML basadas en un esquema de definiciones XML desarrollado por los grupos de trabajo de OSS/J. Los documentos XML intercambiados a través de esta interfaz, son peticiones y respuestas XML que contienen el mapeo XML de los objetos de valor de la entidad gestionada encontrados en el JVT Session Bean.

Debe notarse que el modo de interacción de mensajes XML soporta esencialmente las mismas operaciones que el JVT Session Bean.

Los clientes pueden interactuar con aplicaciones OSS/J para crear documentos de instancia de una petición o requerimiento XML y comunicar este documento a la aplicación por medio de un JMS Text Message enviado a una cola de mensajes especifica. El cliente entonces espera una respuesta XML o una excepción escuchando en un JMS Reply Destination suministrado. [36]

5.1.2 API Inventario de Recursos (JSR 142: OSS Inventory API). Las funciones de inventario