La Arquitectura Empresarial es más que el futuro de las empresas. De hecho, es el factor determinante para asegurar que tengan uno.

¿Nuevo? Comience aquí...

Luego de ayudar a más de 500 empresas, ¿qué tal comenzar a aprovechar nuestra experiencia?

Comenzar

Nuestros servicios

  • Arquitectura empresarial
  • Diseño y desarrollo de software
  • Capacitaciones y entrenamiento
  • Servicios relacionados con Enterpise Architect
  • Modelado de procesos (BPMN)
  • Acompañamiento en procesos de desarrollo
  • Establecimiento de entornos de desarrollo

Nuestros productos

  • Enterprise Architect
  • SARA CRM
  • GAUDÍ - ERP para constructoras
  • RQS 3.0 - Servidor de Rquerimientos

Tecnología

Sep252012
PDFPrintE-mail
administrator

Los desarrollos de software realizados por Universal Technology suelen ser sistemas de información robustos y complejos, que deben soportar gran cantidad de usuarios, procesamientos complejos y altos niveles de seguridad. Esto hace que en términos generales Universal Technology desarrolle bajo arquitecturas multi-capas (n-tier), que separan el sistema en niveles o capas dependiendo de la funcionalidad de los componentes que lo conforman. El número de capas puede variar en función de las necesidades específicas del sistema, y el modelo elegido para su ejecución, pero debe haber por lo menos tres niveles aunque suele haber cuatro o cinco niveles, siendo esta arquitectura el resultado de la evolución de las aplicaciones Cliente / Servidor hacia aplicaciones de Componentes Distribuidos. Cada capa puede ser separada físicamente en máquinas (servidores) diferentes o pueden coexistir en el mismo computador, aunque por razones obvias, la separación física de las capas en diferentes máquinas ofrece una mejor estabilidad, desempeño y seguridad, pero incrementa los costos y las labores administrativas.

Típicamente los sistemas desarrollados por Universal Technology son diseñados en una arquitectura de cinco capas, con el objetivo de obtener el mayor desempeño, escalabilidad, portabilidad, extensibilidad, interoperabilidad, confiabilidad, reusabilidad y mantenibilidad.

Las cinco capas se representan en el siguiente diagrama:

 

La arquitectura planteada por Universal Technology ofrece varias ventajas:

  • La existencia de la capa de interfaces de usuario permite que el sistema proporcione varias maneras de acceder al servidor. Un usuario, por ejemplo, puede tener acceso a la misma aplicación desde una página web, desde un dispositivo móvil con acceso a Internet (como un smartphone, un iPad o un dispositivo Android) o incluso desde cualquier teléfono por mensajes de texto (SMS), USSD, IVR o Tonos. Esto les da a los usuarios la posibilidad de elegir la forma de gestionar sus operaciones, aumentando el número de usuarios potenciales del sistema.
  • La separación de las interfaces de usuario en una capa permite al sistema mostrarse a los usuarios en múltiples idiomas y tener una alta capacidad de adaptación al entorno de los usuarios, así como la facilidad para el usuario de personalizar su interacción con el sistema, con el fin de permitirle sentirse lo más cómodo posible.
  • La separación de código de cliente y componentes internos en diferentes capas, facilita enormemente el mantenimiento del sistema, la reutilización de código y la ampliación y mejora de las características.
  • Una arquitectura de varios niveles permite al sistema tener componentes distribuidos a través de una red o de Internet, facilitando el acceso a la información y acelerando la respuesta del sistema a los usuarios.
  • Cuando deben hacerse cambios en el sistema, las modificaciones de código y el despliegue de estos cambios se pueden hacer para la capa afectada, quedando el resto de la aplicación sin cambios. Esto ayuda a realizar un despliegue limpio y sencillo de los componentes, facilita el mantenimiento y ofrece una mayor extensibilidad y flexibilidad.
  • El uso de componentes distribuidos y el funcionamiento en paralelo de múltiples servidores de componentes garantizan la eficiencia del sistema. Los servidores de componentes administran el uso de los componentes, equilibran el uso de los recursos y optimizan el funcionamiento reutilizando elementos inactivos y manteniendo pools configurables de objetos e hilos disponibles.
  • La escalabilidad está garantizada, ya que el aumento de los usuarios o de las transacciones se puede satisfacer aumentando el número de servidores de componentes, enrutadores, servidores físicos, procesadores, memoria o reconfigurando los hilos y pools de objetos, entre otras estrategias posibles.
  • Esta arquitectura ofrece la máxima fiabilidad posible. La posibilidad de mantener en funcionando varios servidores ejecutando los mismos procesos (clusters) reduce drásticamente la probabilidad de que el sistema se caiga.
  • Un sistema de componentes distribuidos facilita evolucionar el sistema con nuevas características. Esta habilidad se refleja en la capacidad del sistema para ser extensible, y de la misma manera, contribuye a la interoperabilidad del sistema, porque nuevas interfaces pueden ser agregadas fácilmente (p. ej, para realizar conexiones con terceros sistemas o para ofrecer nuevas funcionalidades a los usuarios).
  • Modificar reglas de negocio es una tarea muy sencilla, pues las reglas están encapsuladas en servicios fácilmente documentables y cada regla se diferencia claramente de los demás, haciendo que cualquier cambio en los procesos pueda hacerse de forma extremadamente sencilla y ágil, y sin afectar las interfaces gráficas, las bases de datos o los modelos de objetos.
  • La capa de dominio aumenta enormemente el desempeño y la velocidad de respuesta experimentada por los usuarios finales, al trabajar con datos precargados en memoria.
  • La existencia de la capa de base de datos de permite que el resto del sistema sea independiente del motor de base de datos (DBMS) elegido - Oracle, SQL Server, PostgreDQL, MySQL, MriaDB, etc. Los cambios en el modelo de datos o en el motor mismo, incluso la elección de otro DBMS, no tendrán mayores repercusiones sobre el resto del sistema.

En el caso de Java EE, por ejemplo, una aquitectura en cinco capas como la descrita podría aplicarse de la siguiente manera:

Si desea saber más acerca de nuestros estándares, metodologías, tecnologías o arquitecturas, o si desea que uno de nuestros ingenieros le visite para profundizar cualquiera de los temas, por favor escríbanos a This e-mail address is being protected from spambots. You need JavaScript enabled to view it .

Last Updated on Oct022012