{scrollbar}

Conceptos básicos

Para comprender cabalmente los procesos de desarrollo en Ideasoft O3 Planner descritos, es necesario tener presentes algunas definiciones

  • Ideasoft O3 Browser
  • Ideasoft O3 Budgeting: es cualquier solución concreta de presupuestación (Estado de Resultados proyectado, Balance proyectado, Flujo de Caja proyectado, presupuesto de un departamento, etc.) edificada sobre la teconología Ideasoft O3 Planner.
  • Ideasoft O3 Planner: es la plataforma tecnológica de simulación provista por Ideasoft. La misma tecnología puede ser utilizada para planificar la producción y para estimar la demanda.

Conceptos de simulación

Otros conceptos relevantes, referidos a simulación, se pueden encontrar en el diccionario que se proporciona a continuación:

Orden temático

Orden alfabético

  1) Vista inicial de la aplicación web
  2) Componentes
  3) Estado de cálculo y estado de cierre de un componente
  4) Data Mart (Cubo de análisis de O3)
  5) Modelo de Simulación
  6) Escenarios
  7) Estado de cálculo y estado de aprobación de un escenario
  8) Fuentes de Datos
  9) Grupos de Datos
  10) Versiones
  11) Estado de cierre de una versión
  12) Fórmulas de Cálculo
  13) Parámetros
  14) Alcance
  15) Simulador
  16) Simulación
  17) O3 Planner

Alcance
Componentes
Data Mart (Cubo de análisis de O3)
Escenarios
Estado de cálculo y estado de aprobación de un escenario
Estado de cálculo y estado de cierre de un componente
Estado de cierre de una versión
Fórmulas de Cálculo
Fuentes de Datos
Grupos de Datos
Modelo de Simulación
O3 Planner
Parámetros
Simulación
Simulador
Versiones
Vista inicial de la aplicación web

Al final de cada punto se presentan las opciones de SUBIR (conduce al inicio de esta página) y VOLVER AL ÍNDICE (conduce a la página inicial, en la que se encuentra el índice global).


1) Vista inicial de la aplicación web

Para trabajar con la aplicación web, el procedimiento es el siguiente:

Que la aplicación sea web implica que está instalada en un único servidor y se accede a ella a través de un navegador web. Para su acceso es necesario contar con acceso a una red.

  1. Ingresar a O3 Portal mediante un navegador web (por ejemplo, Internet Explorer o Mozilla).
    1. Abrir el navegador web
    2. Ingresar la URL http://<nombre máquina>:<puerto>/o3portal, siendo <nombre máquina>:<puerto> el nombre de la máquina y número de puerto donde se encuentra el servidor O3 (consulte al administrador de sistemas).
    3. Seleccionar el idioma en el que desee trabajar eligiendo una de las opciones presentadas en la última línea.
    4. Ingresar usuario y contraseña (consulte al administrador de sistemas)
    5. Presionar Enviar. Si el usuario y contraseña son válidos, el resultado es la lista de objetos de análisis y simuladores disponibles para dicho usuario, agrupados por secciones tales como "Data marts y Vistas", "Dashboards", "Scorecards" y "Simuladores".
  2. Puesta en funcionamiento de la aplicación web de un simulador.
    1. Ir a la sección Simuladores.
    2. Presionar sobre el nombre de la simulación. El resultado de esta acción es la puesta en funcionamiento de la aplicación web correspondiente.

2) Componentes

La simulación se estructura en componentes
Dichos componentes se nutren unos de otros a través de las dependencias.
En Zona de menú >> dependencias se puede observar un mapa de dependencia como el que se muestra en la siguiente figura.

Este es un ejemplo de un mapa de dependencias desarrollado para un modelo específico
Cada uno de los nodos de este mapa representa un componente, mientras que las flechas indican la toma de información. Por ejemplo, el componente Resultados toma para sus proyecciones los resultados de los componentes Ingresos, Costos y Gastos.

Un componente es la unidad básica de un modelo de simulación.
Consiste de:
(1) los elementos a simular
(2) el tiempo de la simulación
(3) las variables de simulación

  1. Los elementos a simular son caracterizados mediante atributos que son usados para la definición de las fórmulas de simulación de las variables de interés.

Asimismo, una vez calculada la simulación, los atributos estarán presentes para permitir la revisión y análisis del resultado de la simulación. Puede verse en un gráfico, calcularse el crecimiento estimado mes a mes, disgregarse por alguna dimensión, etc.
El simulador extraerá de las fuentes de datos los elementos a simular para realizar los cálculos.

  1. El tiempo de la simulación corresponde al período en que se simulan las variables. Es necesario conocer el momento de comienzo y fin de la simulación, y la escala que se manejará (por mes, por año, por semana)
  1. Las variables de simulación representan las medidas simuladas a partir de fórmulas o expresiones de cálculo. Son valores que interesa medir o dan contexto a la simulación.

SUBIR

3) Estado de cálculo y estado de cierre de un componente.

En el contexto de un escenario, un componente tiene asignado en todo momento un estado de cálculo y un estado de cierre.
Considerando el aspecto de cálculo, los estados posibles son: Calculado, No calculado y Necesita recálculo. El estado inicial es No calculado.

Los íconos de calculado, no calculado y necesita recálculo, se pueden apreciar en el menú, junto con la lista de componentes, o en la propia descripción del componente.

Considerando el aspecto de cierre, los estados posibles son: Abierto y Cerrado. El estado inicial es Abierto.

Para cerrar un componente es necesario primero calcularlo, o sea que no es posible cerrar un componente no calculado.
El ícono que representa que el componente está cerrado es un candado.

SUBIR

4) Data Mart

Un componente calculado tiene asociado un data mart conteniendo el resultado de la simulación.
Dimensiones: fecha, escenario y una dimensión por cada atributo de los elementos que se simularon.
Medidas = variables del componente
Este data mart puede ser manipulado desde un navegador (Internet Explorer, Mozilla Firefox) por lo que se puede trabajar conectándose desde cualquier ubicación.

SUBIR

5) Modelo de Simulación

Un modelo de simulación está definido por un conjunto de componentes, con dependencias de cálculo de unos a otros.

SUBIR

6) Escenario

El presupuesto dará distintos resultados según los datos de entrada que tome.
Cada combinación de datos de entrada distinta dará lugar a un escenario distinto del estado de resultados.
En otras palabras, un escenario es un posible estado de resultados futuro.
El usuario puede definir tantos escenarios como desee, la estructura del modelo (fórmulas, parámetros, variables, dependencias) será siempre la misma, mientras que los datos de entrada y los resultados irán variando para cada escenario.

En esta imágen se pueden apreciar dos escenarios, ambos respetan la misma estructura, pero difieren al menos en una versión de sus datos, por lo que sus salidas serán distintas.

Un escenario refiere a la ejecución de una simulación, una vez definidos todos los otros componentes podemos decir que se ha definido un escenario de simulación, si alteramos alguna de sus hipótesis, estamos generando otro escenario.
Los escenarios son usados para anticiparse al futuro respondiendo preguntas como: ¿Que pasará con mis resultados si el precio por minuto saliente a fijo sube en agosto un ...%? ¿Cómo cambiarán los ingresos y egresos si se incorpora el servicio de terminales aseguradas?, etc.
En resumen, permite obtener conclusiones a preguntas del tipo What If...?
Permite también plantearse distintos escenarios, oficial, optimista, pesimista, etc.

SUBIR

7) Estado de cálculo y estado de aprobación de un escenario

Un escenario tiene asignado en todo momento un estado de cálculo y un estado de aprobación.
Estados de aprobación: Borrador, Tentativo, Aprobado y Archivado. El estado inicial es Borrador.

Cuando el escenario se encuentra en estado borrador o tentativo, sus componentes pueden estar calculados o no.
Para aprobar el escenario es necesario que todos sus componentes estén calculados. Al aprobarlo se podrán ver candados en todos sus componentes y en todas las versiones de datos que éste toma.

SUBIR

8) Fuente de datos

Una fuente de datos puede ser no versionada o versionada.

Por su parte, una fuente de datos versionada permite que los datos que contiene pueden agruparse en distintas versiones. Un ejemplo de fuente de datos versionada puede ser el IPC. Las fuentes de datos versionadas pueden ser agrupadas en los llamados grupos. Este concepto permite controlar el nivel de complejidad que puede producirse al trabajar con: (1) una gran cantidad de fuentes de datos versionables y (2) una gran cantidad de escenarios para realizar simulaciones. Ver Grupo y Escenario.

SUBIR

9) Grupos de Datos

¿Cómo se conforma un escenario?
Cada escenario utiliza todas las tablas de datos. Lo que puede variar es la información contenida en las mismas.
Para facilitar el manejo de las hipótesis se introduce el concepto de grupos de datos: engloban conjuntos de tablas que evolucionan de manera interrelacionada.

En lugar de versionar las tablas cada una por separado, se versiona el grupo. Es decir, el escenario X se compone de la versión a para el grupo 1 (en lugar de indicar que el escenario X se compone de la versión i para la tabla x, de la versión j para la tabla y, etc.)
Un escenario define las versiones de los datos fuentes de una simulación. Las versiones de los datos de una simulación están definidas por la versión de cada uno de los grupos usados por los componentes del simulador.
Un grupo es un conjunto de fuentes de datos versionables. La versión de un grupo es un número y un nombre. Un grupo puede tener definido varias versiones. Eligiendo las versiones de los grupos se conforman distintos escenarios.

Un grupo es un conjunto de fuentes de datos versionables. La versión de un grupo es un número y un nombre. Un grupo puede tener definidas varias versiones. Eligiendo las versiones de los grupos se conforman distintos escenarios.

SUBIR

10) Versión

El concepto de versión es definido a nivel de un grupo. La versión de un grupo tiene un impacto hacia todas las fuentes de datos del grupo. Por un lado, los datos de esas fuentes de datos deben asociarse necesariamente a alguna de las versiones definidas para el grupo al cual la fuente pertenece. Por otro lado, al definir un escenario se indica solamente la versión del grupo. Esto significa que el cálculo de la simulación para ese escenario se hará tomando como datos aquellos de dicha versión.

El criterio de agrupamiento debe tener en cuenta este comportamiento para facilitar el manejo de versiones. Por un lado, definir un grupo conteniendo varias fuentes hace que la versión del grupo sea la versión de todas sus fuentes (evitando la referencia a la versión de cada fuente de datos). En el otro extremo, definir un grupo conteniendo una fuentes hace que todas las fuentes se versionen diferente (permitiendo que cada fuente de datos evolucione independientemente). La búsqueda del equilibrio entre ambos extremos es un tema de diseño que depende de la aplicación en particular.

SUBIR

11) Estado de cierre de una versión

Una versión de un grupo tiene asignado en todo momento un estado de cierre siendo los estados posibles: Abierto y Cerrado. El estado inicial es Abierto.

Las fuentes versionables se encuentran en los grupos de datos, puesto que lo que se versiona son los propios grupos. Las fuentes no versionables, por definición, no están asociados a ningun grupo.

SUBIR

12) Fórmula de cálculo

(También llamada Fórmula de simulación, Expresión de cálculo, Expresión de simulación)

Una fórmula usada en un componente puede contener constantes, variables de simulación del componente, atributos de los elementos del componente, atributos de la dimensión tiempo, parámetros, funciones (e.g. matemáticas y manejo de fechas) y funciones específicas (Parameter y Variable).

Las fórmulas:

La notación es la misma si se encuentra en el modelo o si está definida en datos.
Algunas de las expresiones de cálculo que se pueden observar son:

Fórmula Inicial y Fórmula de Paso

La simulación en el tiempo de una variable está definida por dos fórmulas: la fórmula inicial y la fórmula de paso.
Por ejemplo, considerando la variable "ingreso" del componente Otros Ingresos, para el concepto Multas, Recargos e Intereses:

En este ejemplo la fórmula inicial es:
Parameter("ResultadoInicial", "year", AnioBase)*IPC

Va a buscar el dato de resultado inicial del rubro, ingresado como dato para el año base y lo multiplica por "IPC" que es el factor de crecimiento del IPC.

y la fórmula de paso:
Ingreso * IPC
Busca el resultado de la variable ingreso para el mes anterior (si no se indica período toma el cálculo de 1 mes hacia atrás)

En otros casos, los cálculos de un mes no dependen de los resultados del mes anterior, como es el caso de P*Q, por lo tanto, la fórmula de inicialización y la de paso será la misma (tanto la fórmula inicial como la de paso puede ser definida por "cantidad * precio", donde "cantidad" y "precio" son parámetros que, dados el producto y una fecha, devuelven la cantidad y precio, respectivamente)

Funciones

Una fórmula usada en un componente puede contener

Funciones Parameter y Variable

Función parameter: se busca el valor de un parámetro únicamente para un concepto, rubro, elemento, ... determinado.
El parámetro refiere a datos ingresados en el modelo o a resultados de otros componentes 

Referencias directas a parámetros: En algunos casos se escribe directamente el nombre del parámetro. Por ejemplo, en el porcentaje de cargas sociales: se carga el dato en un campo para todo el año a simular, por lo que basta con escribir el nombre del parámetro - CargasSociales-

Función Variable: se busca el valor de una variable únicamente para un concepto, rubro, elemento, ... determinado.
La variable es el resultado de otro cálculo anterir del mismo componente.

Como se puede apreciar en la definición de las funciones, la diferencia entre la función parameter y la función variable es la ubicación del dato que se busca.
Parameter: Fuentes de datos, variables de otros componentes
Variable: variables del mismo componente

La notación básica de las funciones parameter y variable se ilustra en la siguiente imágen.

En la descripción de cada componente se puede apreciar

Requisitos necesarios para incluir un dato de una fuente en los cálculos de un componente

  1. Crear la Fuente de datos (tabla con sus campos) y en caso necesario catálogo correspondiente ejemplo:
    Catálogo: código, concepto
    Fuente de datos: año, mes, código, monto
  2. Crear el parámetro que hace referencia al campo deseado de ese formulario, dándole el/los alcances (filtros) que corresponda/n
    En el ejemplo anterior:
    Parámetro: monto
    Nombre del filtro: concepto
  3. En el componente, agregar el nombre del parámetro en la lista de componentes creados

SUBIR

13) Parámetro

Los parámetros intervienen en la definición de las fórmulas.

Un parámetro se utiliza para representar y referenciar dentro del modelo de simulación las 2 situaciones siguientes:

  1. datos que son externos al modelo de simulación en cuestión, es decir que si ingresan como hipótesis en el modelo.
  2. datos que son externos al componente en donde se utiliza, es decir que son resultados de cálculos de otros componentes, y para este componente se utilizan como dato.

En el primer caso se habla simplemente de parámetro mientras que en el segundo caso se habla de parámetro de componente.

Un ejemplo de la primera situación son los parámetros que representan índices económicos tales como el IPC (índice de precios al consumo) y el IMS (índice medio de salarios) Un ejemplo de la segunda situación es un parámetro "CantidadVenta" que ofrece a un componente "Ingresos P*Q" la cantidad estimada de los productos calculada en otro componente.

Los parámetros se hacen corresponder con las fuentes de datos o componentes de donde el simulador extraerá valores para realizar los cálculos. En esta correspondencia se indican los argumentos y el atributo de retorno. Para ello se usa el concepto de alcance.

SUBIR

14) Alcance y evaluación de un parámetro

  • Diferentes parámetros pueden ser definidos sobre una misma fuente de datos o componente.
  • Los parámetros pueden devolver como resultado fórmulas.
  • Los parámetros (sus alcances) definidos sobre datos versionables tienen a la versión como argumento implícito.
  • En el caso de parámetros de componentes existe un sólo alcance.

En el momento del cálculo de una variable de un componente cuya fórmula contiene un parámetro, la evaluación del parámetro se realiza mediante los pasos siguientes:

  1. se selecciona el alcance a evaluar. Para ello se consideran todos los alcances en el orden dado al definir el parámetro y se determina si el alcance es evaluable. Un alcance es evaluable si existen valores, en ese momento de la simulación y elemento, para todos los argumentos del alcance. La correspondencia entre los argumentos del alcance y los valores del contexto de la simulación es por el nombre (por ejemplo, el nombre de un argumento debe coincidir con el nombre de un atributo de los elementos para considerar el valor del correspondiente a ese atributo del elemento). El primer alcance que satisface esta condición es considerado el alcance a evaluar,
  2. se evalúa el alcance determinado accediendo a la fuente de datos correspondiente según los valores de sus argumentos, y
  3. si el parámetro tiene una expresión de postprocesamiento, se evalúa dicha expresión sobre el resultado del paso anterior.

Del primer paso anterior pueden surgir situaciones de borde:

En cuanto a la resolución de parámetros es necesario puntualizar que los distintos alcances se recorren en el orden en que fueron definidos y la primer alternativa que se satisfaga será el valor retornado. Para que un alcance sea satisfecho deben ocurrir dos aspectos:

1. Todas las "dimensiones" deben tener un valor de forma de poder "armar la consulta"
2. La sentencia debe retornar algún valor y el mismo no puede ser nulo.

Todo parámetro debe, por lo menos, tener un alcance para estar bien definido.

La noción de alcances de un parámetro permite simplificar las fórmulas en caso que la fórmula a aplicar en un paso dependa del elemento siendo simulado. En este caso y sin contar con este mecanismo de alcances implicaría que la fórmula refleje explícitamente la discriminación necesaria. Adicionalmente, la aparición de nuevos casos implicaría modificar la fórmula que contiene los discriminantes aumentando las posibilidades de error.

SUBIR

15) Simulador

Un simulador es una aplicación de software definida con O3 Planner que permite gestionar simulaciones incluyendo mecanismos de seguridad, análisis de los resultados y vinculación de objetos de análisis tales como cubos, vistas, dashboards y scorecards. A grandes rasgos, un simulador se define en 2 grandes pasos que consisten en:

  1. la definición del modelo de las fuentes de datos (su metadata) y del modelo de la simulación propiamente dicha (metadata conteniendo la especificación de los parámetros y de los componentes),
  2. la publicación de los modelos definidos en el servidor de O3 Planner.

Dado un escenario, el estado del simulador para ese escenario está dado por el estado de sus componentes.

16) Simulación

Dado un simulador s y un escenario e, una simulación es el resultado del cálculo o ejecución del modelo de simulación de s usando como datos fuentes aquellos correspondientes a las versiones definidas en e según la dimensión tiempo definida en el modelo de simulación.

Dicho cálculo tiene incluído como efecto el cálculo de todos los objetos de análisis asociados a los componentes del modelo de simulación.

El estado de la simulación está dado por el estado del escenario y por el estado de cada uno de los componentes del modelo de simulación del simulador.

17) O3Planner

O3 Planner es un conjunto de herramientas de software que permite la generación de sistemas de simulación o simuladores. Está compuesto de un servidor java y una aplicación desktop java. La aplicación desktop provee editores que permiten definir el modelo (esquema) de las fuentes de datos y el modelo de simulación (a este conjunto de editores se le denomina el diseñador). A su vez provee la funcionalidad de publicar los modelos definidos en el servidor generando así el simulador. El simulador generado es accesible mediante un navegador de internet (por ejemplo, IE o Mozilla) por medio de una aplicación web.


{scrollbar}