Diferencia entre revisiones de «Arquitectura de simuladores»

Línea 1: Línea 1:
{{Normalizar|motivo=Cambiar plantilla por definición}}
+
{{Definición
{{Ficha_Software|nombre=Arquitectura de Simuladores
+
|nombre=Arquitectura de simuladores
 
|imagen=evaluacion_de_arquitectura-de-software-atam.JPG
 
|imagen=evaluacion_de_arquitectura-de-software-atam.JPG
|descripcion=Arquitectura de Simuladores
+
|tamaño=
 +
|concepto=Independientemente de otros criterios más sutiles, como la extensión  de la filosofía cliente-servidor, el factor más importante a considerar  en el diseño de una [[arquitectura]] es su grado de concentración o su grado  de distribución.
 +
 
 
}}
 
}}
 +
 
<div align="justify">
 
<div align="justify">
'''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.
 
  
==Introducción==
+
'''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.
Independientemente de otros criterios más sutiles, como la extensión de la filosofía cliente-servidor, el factor más importante a considerar en el diseño de una arquitectura es su grado de concentración o su grado de distribución.
+
 
 +
 
 +
==Tipos de arquitecturas de simuladores==
 +
===Arquitectura concentrada===
  
==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.  
 
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.  
+
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===
  
==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.  
 
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.  
  
===Arquitectura distribuida, principales ventajas===
+
====Principales ventajas====
 +
 
 
* Evita la sobrecarga de procesador con cálculos sobre los modelos matemáticos y generación de la escena.
 
* 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.  
 
* 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.  
Línea 24: Línea 30:
 
* Es software empleado es de gran difusión y se encuentra fácilmente software desarrollado y personal cualificado.  
 
* 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.  
 
* El uso del mismo tipo de ordenador para tareas distintas permite un coste de mantenimiento más reducido.  
+
 
===Ejemplo===
+
'''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.
 
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]].  
+
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==
  
===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:  
 
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.  
+
* 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.  
+
* 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.  
+
* 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.  
+
* 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.
 
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.  
 
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.
 
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==  
+
==Otros artículos de interés==  
 +
 
 
* [[Calidad de Software]].
 
* [[Calidad de Software]].
 
* [[Ingeniería de Software]].
 
* [[Ingeniería de Software]].
Línea 47: Línea 59:
  
 
==Fuentes==
 
==Fuentes==
* Garlan, D. y Shaw, M. (1993). ''An Introduction to Software Architecture''. New Jersey, World Scientific Publishing Company.  
+
 
+
* Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M  (1996). ''Pattern-Oriented Software Architecture: A System of  Patterns''.
* Monroe, R. T., Kompanek, D., Melton, R. y Garlan, D. (1996). ''Stylized Architecture, Design Patterns, and Objects''. Consultado en Enero 23, 2007 en http://www.cs.cmu.edu/afs/cs.cmu.edu/project/able-10/OldFiles/ftp/ieee_arch_pattern_obj_submitted.pdf.  
+
* 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.  
* Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M (1996). ''Pattern-Oriented Software Architecture: A System of Patterns''.
+
* 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.''.  
* Zachman, J. A. (1987). ''A Framework for Information Systems Architecture.'' : .
 
* Casanovas, J. (2004). ''Usabilidad y arquitectura del software''. Consultado en Enero 10, 2007 en http://www.alzado.org/articulo.php?id_art=355.
 
  
 
[[Category:Ingeniería_de_software]]
 
[[Category:Ingeniería_de_software]]

Revisión del 09:09 10 nov 2011

Arquitectura de simuladores
Información sobre la plantilla
Evaluacion de arquitectura-de-software-atam.JPG
Concepto:Independientemente de otros criterios más sutiles, como la extensión de la filosofía cliente-servidor, el factor más importante a considerar en el diseño de una arquitectura es su grado de concentración o su grado de distribución.

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.


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