Hoy en día las compañías no pueden ignorar el grave problema que implica desarrollar y adaptar software al ritmo que imponen los negocios. Los requisitos varían con mucha frecuencia y las aplicaciones no logran ser desarrolladas y/o adaptadas al ritmo requerido. La globalización y fusión de empresas, el crecimiento de Internet, entre otros factores, han acentuado aún más estos problemas llevando el software desarrollado, que normalmente había sido desarrollado para una plataforma específica, a un ambiente distribuido heterogéneo. Esto involucra, en consecuencia, La necesidad de considerar una amplia gama de aspectos como lo son la integración de datos heterogéneos, la interacción entre diversos sistemas, los distintos sistemas operativos, el middleware, las tecnologías web, cuestiones de escalabilidad y performance, por citar algunos de ellos.
La evolución de las tecnologías cliente/servidor sumada al advenimiento de nuevas tecnologías como XML, web services , la plataforma J2EE, la comunicación asíncrona por medio de mensajes, el uso de application servers , son algunos de los conocimientos que permiten llevar a cabo el desarrollo de aplicaciones modernas.
La evolución de
las aplicaciones distribuidas se dio de la siguiente forma:
·
Aplicaciones
monolíticas.
·
Arquitectura
cliente/servidor.
·
Arquitectura
de tres capas.
·
Arquitectura
de N capas.
De Interfaz de Usuario
Aquí es donde su
aplicación presenta información a los usuarios y acepta entradas o respuestas
del usuario para usar por su programa. Idealmente, la IU no desarrolla ningún
procesamiento de negocios o reglas de validación de negocios. Por el contrario,
la IU debería relegar sobre la capa de negocios para manipular estos asuntos.
Esto es importante, especialmente hoy en día, debido a que es muy común para
una aplicación tener múltiples IU, o para sus clientes o usuarios, que le
solicitan que elimine una IU y la remplace con otra.
Figura 4. Ejemplo de interfaz de
usuario.
Algunas
tecnologías de interfaz de usuario son:
·
API Win 32.
·
HTMAL.
·
Dell HTML.
·
Lenguajes
de scrips.
De Aplicación
La adopción de
un diseño distribuido de aplicaciones empresariales, aumenta la reusabilidad,
reduce la cantidad de recursos, y los costes necesarios de desarrollo y
mantenimiento.
Este nuevo
enfoque de diseño pone en manos de los desarrolladores no solo la funcionalidad
que demandan las aplicaciones, sino también la seguridad, rapidez y
flexibilidad.
Algunas
tecnologías de aplicación son:
·
CORBA.
·
DNA.
·
EJB.
·
XML.
Figura 5. Ejemplo de interfaz de aplicación.
De Base de Datos
La evolución de
las bases de datos distribuidas se debe por una parte a razones
organizacionales las cuales han demandado que mayores capacidades sean
incorporadas a las bases de datos, tales como la integración de información
desde distintos sitios donde se encuentre la empresa distribuida hacia algún
sitio por ejemplo, para una consulta. Por otra parte, el desarrollo de las
tecnologías de comunicación han permitido enlazar datos con aplicaciones que se
encuentran en sitios distintos y remotos, por ejemplo las transacciones
bancarias realizadas en máquinas-cajeros automáticos (ATM) que se encuentran
ubicados en centros comerciales, empresas y escuelas, no serían posibles si no
tuviéramos sistemas de comunicación para enlazarnos a bases de datos
localizadas en diferentes sitios financieros.
Algunas
tecnologías de base de datos son:
·
OLEB
·
ADO.
·
XML.
·
SQL.
·
Herramientas
para modelado (UML).
Figura 6. Ejemplo de tecnología de
base de datos.
De Comunicación De Datos
La construcción
de aplicaciones distribuidas ha emergido como la arquitectura predominante para
la construcción de aplicaciones multiplataforma en la mayor parte de las
empresas.
Este cambio
radical en los modelos de computación, desde los sistemas monolíticos basados
en mainframe y los tradicionales sistemas cliente-servidor, hacia sistemas
distribuidos multiplataforma altamente modularles, representa el desarrollo
rápido y avance de la investigación en el mundo del desarrollo de aplicaciones,
tal y como se pone de manifiesto en las últimas tendencias de las grandes
empresas de tecnología, como Sun con su estrategia Sun One, o Microsoft con
DotNET (.Net).
Algunas
tecnologías de comunicación de datos son:
·
Intranet.
·
Internet.
Figura 7. Ejemplo de una
tecnología de comunicación de datos.
De Conexión Entre Capas
Como tecnología,
las arquitecturas de capas proporcionan una gran cantidad de beneficios para
las empresas que necesitan soluciones flexibles y fiables para resolver
complejos problemas inmersos en cambios constantes.
Todas las aplicaciones
basadas en capas permitirán trabajar con clientes ligeros, tal como navegadores
de Internet, WebTV, Teléfonos Inteligentes, PDAs (Personal Digital Assistants o
Asistentes Personales Digitales) y muchos otros dispositivos preparados para
conectarse a Internet.
De este modo,
las arquitecturas de capas se están posicionando rápidamente como la piedra
angular de los desarrollos de aplicaciones empresariales y las compañías están
adoptando esta estrategia a una velocidad de vértigo como mecanismo de posicionamiento
en la economía emergente que tiene su base en la red (lo que se ha venido a
denominar "Nueva Economía").
Actualmente, la
Red (Internet, intranets y extranets) es el ordenador o, como diría Sun
Microsystems, el ordenador es la Red. Este paradigma está creando un cambio
fundamental en los modelos de computación que, a su vez, proporciona desafíos y
oportunidades como nunca antes había se habían producido.
Una tecnología de conexión de capas es:
·
Arquitectura
DAO.
No hay comentarios:
Publicar un comentario