Resumen
Las tecnologías de la información se enfrentan en la actualidad al auge de nuevos
conceptos en lo concerniente a la arquitectura e ingeniería del software, el más
notable e importante de estos es la computación distribuida que trasladó el
software de una máquina aislada a un grupo de máquinas (no necesariamente
computadoras) conectadas mediante una red. Dentro de dicha interconexión se
ofrecen servicios (procesos) que son compartidos entre consumidores ampliando
el espectro de posibilidades y eliminando algunos límites propios de las antiguas
aplicaciones. Sin embargo, se podría decir que los desarrollos y la forma en que
se piensan las aplicaciones actuales siguen estando plagadas de antiguas
concepciones, es decir, percibidas como sistemas aislados. A esta situación se le
puede adicionar el boom de la red de redes: el internet, para la cual es necesario
también pensar aplicaciones y formas de diseñar e implementar software.
Estos nuevos conceptos traen consigo nuevos requerimientos y antiguos
requerimientos reformulados, por esto, se hará indispensable que una aplicación
desarrollada en el ambiente actual posea las siguientes características:
distribución de recursos, desacoplamiento, escalabilidad, interoperabilidad,
respuesta a cambios, seguridad; en cuanto al sistema en conjunto; y en cuanto a
sus partes: atomicidad, granularidad, reusabilidad.