· Obtener una visión general de la programación distribuida y conocer su terminología
· Conocer y comprender los conceptos que fundamentan la programación distribuida: objetos distribuidos
· Conocer los beneficios de la distribución en aplicaciones en términos de rendimiento y escalabilidad
· Comprender la necesidad de estudiar técnicas para la reutilización en aplicaciones distribuidas: frameworks, patrones, etc
· Conocer las diferentes alternativas de arquitecturas para el desarrollo de proyectos: desde cliente/servidor hasta arquitecturas empresariales
· Conocer los fundamentos que definen una aplicación empresarial actual
· Conocer las unidades funcionales que componen una aplicación: presentación, lógica de negocio y datos
· Adquirir los conocimientos sobre el diseño de arquitecturas multicapas
· Conocer y saber aplicar patrones arquitectónicos para aplicaciones distribuidas
· Conocer y comprender el concepto de servidor de aplicaciones
· Introducir los aspectos básicos del desarrollo de interfaces gráficas
· Conocer y saber programar las diferentes tecnologías de desarrollo de interfaces de servidor
· Conocer y comprender la organización en capas de una aplicación distribuida
· Comprender la necesidad de desarrollar una capa de acceso a los datos
· Conocer y saber aplicar las distintas tecnologías de programación para el acceso a los datos de una aplicación
· Comprender la conveniencia y la productividad del uso de tecnologías encargadas del mapeo objeto-relacional en el desarrollo de aplicaciones
· Conocer las técnicas para aplicar distribución en el acceso a datos
· Conocer los patrones de optimización para el acceso a los datos
· Comprender la necesidad de desarrollar una capa de negocio con la lógica de la aplicación
· Conocer y saber aplicar las distintas tecnologías de programación para negocio de una aplicación
· Conocer los patrones de optimización para la programación distribuida de la capa de negocio
· Desarrollar habilidades de iniciación a la investigación