Arquitectura de simuladores
|
Arquitectura de simuladores. Está más relacionada con la concepción, prestaciones y desarrollo del software que con la funcionalidad final del simulador. Obviamente arquitectura y funcionalidad están íntimamente ligadas y la primera se orienta dependiendo de la segunda, pero la arquitectura tiene otros condicionantes y objetivos.
Sumario
Tipos de arquitecturas de simuladores
Arquitectura concentrada
Una arquitectura concentrada es aquella en la que hay una o pocas aplicaciones que concentran cada una un número elevado de funcionalidades y funcionan en uno o pocos ordenadores con poco flujo de comunicación exterior, entiéndase por aplicación el módulo de software que puede funcionar autónomamente en un solo ordenador. La arquitectura concentrada permite desarrollos simples de muy corto alcance. Aunque debido al incremento de potencia de las computadoras personales permiten resultados casi profesionales; la arquitectura concentrada se queda corta rápidamente en simuladores complejos.
Arquitectura distribuida
Una arquitectura distribuida tiene varias o muchas aplicaciones funcionando en varios ordenadores con un flujo importante de comunicaciones. Cuando se quieren implementar simuladores complejos como los simuladores a tiempo real resulta casi absurdo pensar en una arquitectura concentrada, la distribuida ofrece múltiples beneficios y sin duda es la candidata perfecta.
Principales ventajas
- Evita la sobrecarga de procesador con cálculos sobre los modelos matemáticos y generación de la escena.
- Permite una mayor reutilización del código: al ser compartimentos más o menos estancos, las mayores variaciones se realizan en interfaz de usuario.
- El uso de ordenadores personales reduce el coste inicial de implantación.
- Los ordenadores personales son altamente fiables, se reparan fácilmente y se sustituyen de forma inmediata.
- Es software empleado es de gran difusión y se encuentra fácilmente software desarrollado y personal cualificado.
- El uso del mismo tipo de ordenador para tareas distintas permite un coste de mantenimiento más reducido.
Ejemplo
Un ejemplo importante a mencionar cuando se habla de arquitecturas distribuidas y simulación de procesos es el Standard CAPE-OPEN, plataforma que ofrece interoperatividad e integración de componentes para la simulación de procesos físicos y químicos. Es multiplataforma y utiliza importantes frameworks y middlewares como CORBA, COM, J2EE, EJB, etc., orientada a componentes, tiene una concepción de interfaces orientadas a objetos y usa técnicas de reingeniería y encapsulación.
Entre los ambientes para la simulación de procesos desarrollados sobre esta plataforma están ProsimPlus de la compañía ProSim SA, simulador estacionario para la producción de oxígeno, INDISS de RSI, este último para la simulación dinámica y otros como Aspen Engineering Suite, Process Engineering Suite, HYSYS, INDISS, ProSimPlus, gPROMS.
Simuladores estacionarios
Al hablar de simuladores estacionarios y no muy complejos, es muy apropiado el uso de una arquitectura concentrada, pues se evitan inconvenientes como:
- Necesidad de adquirir y aprender un software para las comunicaciones entre los distintos ordenadores.
- Problemas de organización del tráfico de información para garantizar la consistencia de las comunicaciones.
- Necesidad de un hardware de red de suficiente fiabilidad.
- Los problemas aparejados a la depuración de los programas en arquitecturas distribuidas en los cuales se dificulta enormemente.
En estos casos es conveniente una arquitectura propia que se adapte a las condiciones de lo que se quiere lograr con el simulador en materia de funcionalidad y que garantice un desempeño adecuado cuando este terminado el producto.
Lo más importante no seria el grado de concentración sino que esta se estructure de manera eficiente y se puedan aprovechar mejor los recursos, además de elementos tan importantes como la reusabilidad, interoperatividad, flexibilidad, mantenibilidad, robustez, etc. Otro factor fundamental a tener en cuenta es el hecho de que sea multiplataforma, lo que amplia las posibilidades de uso del simulador.
Otros artículos de interés
Fuentes
- Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M (1996). Pattern-Oriented Software Architecture: A System of Patterns.
- Casanovas, J. (2004). Usabilidad y arquitectura del software. Consultado en enero 10, 2007 extraido de http://www.alzado.org/articulo.php?id_art=355.
- Garlan, D., Shaw, M. (1993). An Introduction to Software Architecture. New Jersey: World Scientific Publishing Company.
- Monroe, R. T., Kompanek, D., Melton, R., Garlan, D. (1996). Stylized Architecture, Design Patterns, and Objects. Consultado en enero 23, 2007 extraido de http://www.cs.cmu.edu/afs/cs.cmu.edu/project/able-10/OldFile/ftp/ieee_arch_pattern_obj_submitted.pdf.
- Zachman, J. A. (1987). A Framework for Information Systems Architecture..