• No se han encontrado resultados

CAPÍTULO 2 REVISIÓN DEL ESTADO DEL ARTE

2.4 MODELADO DE INFORMACIÓN

Desde el punto de vista de gestión de la configuración, la Tesis se ha enfocado en especificar un EVR, mediante técnicas de modelado de información a fin de resolver los problemas asociados con la interoperabilidad y la gestión de recursos virtuales. Este apartado tiene como propósito analizar qué lenguajes de definición, modelos y técnicas informáticas estandarizadas en la industria son viables de aplicar para la representación de la información, cara a modelar la generación automática o dinámica de EVR (véase apartado 2.4). En este mismo apartado se abordó el análisis de enfoques existentes para Modelado de infraestructuras de Virtualización (véase apartado 2.5).

2.4.1

Modelo de Información Común (CIM)

Con el fin de facilitar la gestión de datos y recursos entre diferentes sistemas de software, la Fuerza de Tareas de Gestión Distribuida (DMTF, Distributed Management Task Force), ha definido un conjunto de tecnologías y protocolos para modelar y acceder a los recursos de sistemas computacionales y redes de una manera estándar abstrayéndose de las tecnologías y proveedores. Estas tecnologías están agrupadas en el concepto de (WBEM, Web-Based Enterprise Management) y se basan en el uso del modelo de Información común (CIM, Common Information Model) para modelar sistemas, sus atributos y métodos.

WBEM es un conjunto de tecnologías utilizadas para escribir programas e interfaces para la gestión de un entorno empresarial. WBEM se basa en CIM, que es un modelo conceptual de información para describir entidades gestionadas, su composición, y sus relaciones. Utiliza el formato de objetos gestionados (MOF, Managed Object Format) para definir esta descripción de objetos gestionados de una manera formal. El principal elemento de una arquitectura de WBEM es el (CIMOM, CIM Object Management), que básicamente es un administrador de base de datos para las instancias de clases CIM y representa el punto central de acceso a recursos gestionados. Los clientes CIM implementan el acceso normalizado a los datos y a las operaciones de gestión de los recursos que están representados en el CIMOM. Por último, los proveedores de la CIM, actúan como intermediarios entre CIMOM y los dispositivos gestionados, implementando los métodos definidos por la CIM.

CIM es un enfoque para la gestión de sistemas, software, usuarios, redes y más, que proporciona una definición coherente y la estructura de datos utilizando técnicas orientadas a objetos

clasificación, para reducir la complejidad del dominio del problema; herencia de objetos para heredar métodos y propiedades; y la capacidad para describir dependencias, asociaciones y relaciones. CIM se estructura de la siguiente manera [López03]:

i.) Metaesquema, para la definición formal del modelo, que define las construcciones básicas de CIM como son clases, propiedades, métodos, etc;

ii.) Modelo nuclear, que define un esquema aplicable para todas las áreas de gestión; iii.) Modelos comunes, que definen esquemas para un área de gestión en particular; y

iv.) Modelo de Extensión, que a partir de un modelo común, se crean para un esquema

específico o concreto o un determinado fabricante.

CIM tiene una relación formal con el Lenguaje Unificado de Modelado (UML, Unified

Modeling Language) que fue adoptado por el Grupo de Gestión de Objetos (OMG, Object Management Group) en noviembre de 1997 [OMG], y que se ha convertido en un estándar para representar y modelar la información con la que se trabaja en las fases de análisis y, especialmente de diseño. Para formalizar la relación existente entre CIM y UML se ha preparado el documento denominado “Perfil UML para CIM”, descrito en [DMTFDSP2013]. En su alcance se definen las especificaciones que permiten la conversión automática entre el formato de archivos CIM-MOF u otra representación equivalente de un modelo CIM y el modelo UML. Esta conversión puede ser realizada en ambas direcciones sin perdida de la información. En los siguientes apartados se describirán UML, CIM-MOF y MOF.

2.4.2

El Lenguaje de Modelado Unificado (UML)

De acuerdo con [Booch97] el Lenguaje de Modelado Unificado puede utilizarse para visualizar, especificar, construir y documentar los artefactos de un sistema que involucra una gran cantidad de software. UML se ha convertido en un estándar para representar y modelar la información con la que se trabaja en las fases de análisis y, especialmente de diseño. UML tiene una notación gráfica muy expresiva que permite representar todas las fases de un proyecto informático: desde el análisis con los casos de uso, el diseño con los diagramas de clases, objetos, etc., hasta la implementación y configuración con los diagramas de despliegue.

Un objetivo importante de UML es que sus modelos sean independientes del lenguaje de implementación, de tal forma que los diseños se puedan implementar en cualquier lenguaje que soporte las posibilidades de UML, de manera particular los lenguajes orientados a objetos.

UML es un método formal de modelado, lo cual aporta las siguientes ventajas: mayor rigor en la especificación, permite realizar una verificación y validación del modelo realizado y finalmente se pueden automatizar determinados procesos permitiendo generar código a partir de los modelos y a la inversa (a partir del código fuente generar los modelos)

especificaciones más claras, pero no permite automatizar su validación, UML mantiene alta ambigüedad de ciertos diagramas (casos de uso). UML está orientado a los ingenieros y técnicos, y mantiene difícil comunicación con los usuarios y clientes, UML es relativamente complejo y finalmente, UML no se puede ejecutar.

UML incluye los siguientes diagramas: Diagrama de clases que muestra un conjunto de clases,

interfaces, así como sus relaciones; Diagrama de objetos que muestra un conjunto de objetos y

sus relaciones; Diagrama de casos de uso que muestra un conjunto de casos de uso y actores y sus

relaciones; Diagrama de secuencia que es un diagrama de interacciones que resalta la ordenación

temporal de los mensajes; Diagrama de colaboración que es un diagrama de interacción que

resalta la organización estructural de los objetos que envían y reciben mensajes; Diagrama de estados que cubren la vista dinámica de un sistema y el comportamiento de una interfaz, una clase

o una colaboración; Diagrama de actividades que muestra el flujo de actividades dentro de un

sistema.; Diagrama de componentes que muestra la organización y las dependencias entre un

conjunto de componentes; Diagrama de despliegue que muestra la configuración de nodos de

procesamiento en tiempo de ejecución y los componentes que residen en ellos.

2.4.3

CIM-Managed Object Format (CIM-MOF)

La especificación CIM define un lenguaje basado en el lenguaje de definición de interfaz (IDL) llamado (MOF, Managed Object Format), para representar gestión de la información [CIM- Tutorial]. La sintaxis de MOF es una manera de describir las definiciones de objetos en forma textual. Los principales componentes de una especificación MOF son descripciones textuales de las clases, asociaciones, propiedades, referencias, los métodos y las declaraciones de instancia y de los calificadores de asociados.

2.4.4

Meta-Object Facility

Es una definición formal de UML, que se consigue mediante un metamodelo expresado en un metalenguaje denominado (MOF, Meta-Object Facility). Se trata de un estándar OMG que define un lenguaje común y abstracto para definir lenguajes de modelado para acceder e intercambiar modelos expresados en dichos lenguajes. MOF usa cinco construcciones básicas para definir un lenguaje de modelado: clases (usadas para definir tipos de elementos), generalización (define herencia entre clases), atributos (define propiedades de los elementos del modelo), asociaciones (definen relaciones entre clases) y operaciones (define operaciones dentro del ámbito de una clase). MOF extiende UML para que este sea aplicado en el modelado de diferentes sistemas de información. MOF define diversos metamodelos, esencialmente abstrayendo la forma y la estructura que describe los metamodelos [Caramazana04]. MOF define los elementos esenciales,

sintaxis y estructuras de metamodelos que son utilizados para construir modelos. Finalmente MOF se utiliza para definir un modelo de infomación para un dominio de interés en particular. Esta definición es posteriormente usada para conducir el diseño e implementación subsecuentes de software conectado con el modelo de información.