close Warning: Can't synchronize with repository "(default)" (/var/svn/mms does not appear to be a Subversion repository.). Look in the Trac log for more information.

Opened 12 years ago

Last modified 12 years ago

#1114 new enhancement

Diseño mejorado de MMS

Reported by: Pedro Gea Owned by: Pedro Gea
Priority: major Milestone: Next
Component: General Keywords:
Cc:

Description

Se sugiere un cierto rediseño en la implementación de MMS que permita procesos más eficientes en el tratamiento de modelos masivos.

Se propone una estructura en la que los objetos se construyan bajo demanda y en la que toda la información del modelo pudiera no estar cargada en TOL al mismo tiempo.

Este rediseño facilitaría otras mejoras como el desacople de los objetos principales (que por ejemplo, varios modelos compartan un mismo dataset) o el almacenamiento de la información del modelo en base de datos para favorecer su acceso parcial.

Change History (47)

comment:1 Changed 12 years ago by Pedro Gea

(In [4535]) Refs #1114
Se crea una rama de desarrollo para realizar cambios en MMS sin afectar al desarrollo principal.

comment:2 Changed 12 years ago by Pedro Gea

(In [4536]) Refs #1114
Se suspenden algunas secciones de MMS durante los cambios.
Se comienza el desarrollo por el módulo de variables (01_variable) y los módulos elementales (00_general y 00_mms).
Se crea una nueva clase @Source encargada de suministrar la información del modelo a las objetos de MMS. En su variante local esta información estará cargada en una forma similar a la especificación del objeto.

comment:3 Changed 12 years ago by Pedro Gea

(In [4537]) Refs #1114
Se remodelan los archivos _dec_* y _pck_* para evitar algunos de los problemas de #Embed y se eliminan las variables reales creadas anteriormente para ello.

comment:4 Changed 12 years ago by Pedro Gea

(In [4538]) Refs #1114
Se trata la creación y borrado de nuevos objetos.

comment:5 Changed 12 years ago by Pedro Gea

(In [4539]) Refs #1114
Se introducen bloques de código "defobject_X.tol" auxiliares para la obtención de la información por parte de las instancias.
Se facilitan funciones auxiliares que conviertan la especificación de MMS.1 provisionalmente a la de MMS.2.
Se actualiza en su mayor parte el resto del módulo inicial "00_general".

comment:6 Changed 12 years ago by Pedro Gea

(In [4540]) Refs #1114
Se introduce una clase para la gestión de la caché de losobjetos principales por parte del contenedor.
Se actualizan en su mayor parte los métodos del contenedor

comment:7 Changed 12 years ago by Pedro Gea

(In [4541]) Refs #1114
Se generalizan los cambios en el módulo de variables conforme al desarrollo en la actualización del módulo de modelos.

comment:8 Changed 12 years ago by Pedro Gea

(In [4542]) Refs #1114
Se actualiza el módulo de modelos.
Las instancias de @Noise se implementan como variante de @MNode (@Submodel o @Hierarchy).
Los parámetros se reubican todos juntos como miembros del modelo. Su instancia padre natural dispone de mecanismos para acceder a ellos.
Las instancias de @Prior y @Constraint adoptan (aún parcialmente) un papel similar a las de @Interval o @Transformation, independeintes del árbol de objetos de MMS.

comment:9 Changed 12 years ago by Pedro Gea

(In [4543]) Refs #1114
Se eliminan las variantes de las clases de resultados para previsión (".PointForecast" y ".SampleForecast"): se mantiene sólo la previsión puntual sobre las clases ".Forecast".
Esto permite ganar en sencillez y necesitará una reimplementación, quizá más eficiente, para la previsión con muestreo.
Se elimina el archivo auxiliar de la cache de resultados reubicada en general en el contenedor principal.

comment:10 Changed 12 years ago by Pedro Gea

(In [4544]) Refs #1114
Se actualizan las clases de resultados y previsiones que prescinden de los mecanismos de construcción anteriores y se apoyan más fuertemente en sus correspondientes del módulo de modelos.

comment:11 Changed 12 years ago by Pedro Gea

(In [4545]) Refs #1114
Se incorporan algunos otros cambios en el módulo de estimaciones y previsiones, aún muy preliminares.
Se introducen cambios en las líneas de inicio y fin de los archivos _dec_* y _pck_*.

comment:12 Changed 12 years ago by Pedro Gea

(In [4546]) Refs #1114
Se introducen cambios en las líneas de inicio y fin de archivos _dec_*, _pck_*, fun_* y mnu_*.
Se introducen algunos otros cambios en las funciones más generales y en los menús contextuales de la GUI de MMS.

comment:13 Changed 12 years ago by Pedro Gea

(In [4547]) Refs #1114
Se revisan los mecanismos de asignación/adopción de objetos principales.
Se corrigen algunos métodos en el módulo de modelos.

comment:14 Changed 12 years ago by Pedro Gea

(In [4548]) Refs #1114
Se corrigen algunos métodos en el módulo de modelos.
Se revisan algunos métodos de los objetos principales @Estimation y @Forecast.

comment:15 Changed 12 years ago by Pedro Gea

(In [4549]) Refs #1114
Se renombra el objeto gestor de información: Source -> Manager.

comment:16 Changed 12 years ago by Pedro Gea

(In [4550]) Refs #1114
Se renombra el objeto gestor de información: Source -> Manager.
Algunas otras correcciones en el módulo de estimaciones y previsiones.

comment:17 Changed 12 years ago by Pedro Gea

(In [4551]) Refs #1114
Se modifica el gestor local de información apoyándose en un conversor desde la especificación "1".
Se reubica la gestión de la caché al gestor de información.
Se añaden más correcciones en diferentes módulos.

comment:18 Changed 12 years ago by Pedro Gea

(In [4552]) Refs #1114
Se modifica el método GetAbsoluteIdentifier usado por la GUI.

comment:19 Changed 12 years ago by Pedro Gea

(In [4553]) Refs #1114
Se homogeinizan los métodos utilizados para la creación de los objetos principales.

comment:20 Changed 12 years ago by Pedro Gea

(In [4554]) Refs #1114
Se elimina el código antiguo de base de datos de esta rama. Véase MmsDatabase.
Se eliminan las clases abstractas @ObjectLinker y @ObjectLinked.
Se incorpora el uso de SetSource y SetIsSaved del gestor local.

comment:21 Changed 12 years ago by Pedro Gea

(In [4555]) Refs #1114
Se suspenden definitivamente los parámetros base.
Se revisan algunos métodos relativos a la gestión de parámetros.
Se revisan los métodos _.Destroy en el módulo de modelos.

comment:22 Changed 12 years ago by Pedro Gea

(In [4556]) Refs #1114
Se introducen mecanismos para la exploración de los objetos con TOLBase, incorporando miembros adicionales y auxiliares a los objetos cunado son inspeccionados.

comment:23 Changed 12 years ago by Pedro Gea

(In [4557]) Refs #1114
Se elimina el código de los parámetros base.

comment:24 Changed 12 years ago by Pedro Gea

(In [4558]) Refs #1114
Nuevas correcciones tras pasar tests.

comment:25 Changed 12 years ago by Pedro Gea

(In [4559]) Refs #1114
Se eliminan los tags como un atributo de clase y se tratan de existir como un atributo de usuario.

comment:26 Changed 12 years ago by Pedro Gea

(In [4560]) Refs #1114
Se introducen los escenarios en un dataset como gestores de nuevos datos para sus variables independientes (variables I) en sustitución de los v-escenarios.

comment:27 Changed 12 years ago by Pedro Gea

(In [4561]) Refs #1114
Se simplifica el módulo de variables tras los últimos cambios.

comment:28 Changed 12 years ago by Pedro Gea

(In [4563]) Refs #1114
Se trata la posible caché de las variables dependientes usando el gestor de caché (@CacheManager).

comment:29 Changed 12 years ago by Pedro Gea

(In [4565]) Refs #1114
Se retarda la carga de los paquetes complementarios a MMS utilizados en el módulo de estimaciones.

comment:30 Changed 12 years ago by Pedro Gea

(In [4566]) Refs #1114
Se reubican los métodos generales en clases abstractas según los tipos de objetos.

comment:31 Changed 12 years ago by Pedro Gea

(In [4567]) Refs #1114
Se homogeneiza el uso de algunos métodos y funciones.
Se eliminan archivos obsoletos.

comment:32 Changed 12 years ago by Pedro Gea

(In [4572]) Refs #1114
Se sustituye el uso del antiguo método GetAbsoluteIdentifier por GetRoute.

comment:33 Changed 12 years ago by Pedro Gea

(In [4573]) Refs #1114
Se realizan cambios y correcciones para dar homogeneidad y facilitar su integración en base de datos.
Se fusionan los atributos Name y Version de los objetos principales.
Se elimina el atributo Name (manteniéndose sólo el nuevo atributo Identifier) de los parámetros

comment:34 Changed 12 years ago by Pedro Gea

(In [4574]) Refs #1114
Se eliminan los métodos obsoletos GetSpecification para los objetos secundarios y los correspondientes métodos constructores.

comment:35 Changed 12 years ago by Pedro Gea

(In [4576]) Refs #1114
Se revisan los objetos de mms de naturaleza independiente: @Interval, @Transformation y @NonLinearFilter.
Se añaden métodos para el uso de una serialización global de estos objetos y de los objetos principales de MMS, de modo que esta serialización, denominada GOS (Global Object Serialization) sea independiente del paquete al que pertenecen.
Se incorpora el uso de nuevos métodos de GuiTools y BabelTool que facilitan la compilación/decompilación de paquetes en desarrollo.

comment:36 Changed 12 years ago by Pedro Gea

(In [4579]) Refs #1114
Se añaden métodos para el uso de una serialización global (GOS: Global Object Serialization).
Se incorpora el uso de nuevos métodos de GuiTools y BabelTool que facilitan la compilación/decompilación de paquetes en desarrollo.
Se incorpora un nuevo tipo de reales para representar la distribución de un parámetro de varianza (o Sigma2) denominado @Real.Sics (Scaled Inverse Chi Squared).

comment:37 Changed 12 years ago by Pedro Gea

(In [4580]) Refs #1114
Se incorpora una carpeta auxiliar database con el código (en desarrollo) del almacenamiento de los objetos de MMS.2 en base de datos.

comment:38 Changed 12 years ago by Pedro Gea

(In [4582]) Refs #1024, #1114
También en la rama de desarrollo.

comment:39 Changed 12 years ago by Pedro Gea

(In [4586]) Refs #1114
Se revisan las conexiones y repositorios y los mecanismos de lectura y escritura.
Se revisan los mecanismos constructores de SNE.

comment:40 Changed 12 years ago by Pedro Gea

(In [4588]) Refs #1114
Se incorporan algunos cambios antes de la creación de una nueva versión para MmsDatabase

comment:41 Changed 12 years ago by Pedro Gea

(In [4589]) Refs #1114
Se crea una nueva versión de MmsDatabase en la rama de desarrollo incorporando el código ubicado en la antigua carpeta MMS/database.

comment:42 Changed 12 years ago by Pedro Gea

(In [4590]) Refs #1114
Otros cambios menores

comment:43 Changed 12 years ago by Pedro Gea

(In [4591]) Refs #1114
Se eliminan los nombres antiguos de las funciones auxiliares utilizados para la comunicación con la base de datos.

comment:44 Changed 12 years ago by Pedro Gea

(In [4592]) Refs #1114
Se homogeneiza el uso de las funciones MMS::ToIdentifier y MMS::ToNames.
Se permite el renombrado de objetos principales cargados.

comment:45 Changed 12 years ago by Pedro Gea

(In [4597]) Refs #1114
Se comienza a integrar los dos formatos de bases de datos diseñados.

comment:46 Changed 12 years ago by Pedro Gea

(In [4602]) Refs #1114
Se introducen una revisión en la gestión de repositorios.

comment:47 Changed 12 years ago by Pedro Gea

(In [4603]) Refs #1114
Se continua con la gestión de repositorios en base de datos.
Se traslada la gestión de los archivos OZA al objeto MMS::Network.

Note: See TracTickets for help on using tickets.