Fundamentos de Arquitectura Empresarial: J2EE, .NET Framework y Patrones de Diseño MVC
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 4,77 KB
Plataforma J2EE (Java 2 Platform, Enterprise Edition)
La plataforma J2EE es el estándar para desarrollar aplicaciones empresariales. Maneja modelos de aplicación reutilizables, como los componentes. No es solo un conjunto de APIs, sino también una infraestructura dentro de la cual se ejecutan dichas aplicaciones. Esta infraestructura la proporciona un tipo especial de aplicaciones llamadas Servidores de Aplicación. J2EE resuelve el problema del costo y la complejidad en el desarrollo de servicios multicapa. Es un entorno abierto para desarrollar y desplegar servicios multicapa.
La base de J2EE está compuesta por el lenguaje Java, la Máquina Virtual Java (JVM) y los componentes Java Beans.
Características de J2EE
- Soporte para distribución de objetos.
- Necesidad de guardar y recuperar objetos.
- Soporte para concurrencia y seguridad.
- Soporte para transacciones.
Concepto clave: Persistencia
La persistencia es la capacidad de un objeto para guardarse o leerse de un dispositivo de almacenamiento.
J2EE: Norma vs. Producto
La plataforma J2EE está diseñada para simplificar los problemas complejos relacionados con el desarrollo, despliegue y dirección de soluciones empresariales multicapa. J2EE es una norma, no un producto. Su meta es proporcionar al cliente la capacidad de elegir entre los productos y herramientas de varios vendedores, aumentando así la competencia. J2EE es una arquitectura utilizada para la construcción de aplicaciones del lado del servidor.
Plataforma Microsoft .NET
La plataforma Microsoft .NET es una colección de productos que permiten a las organizaciones ofrecer servicios web empresariales. La diferencia fundamental es que .NET es un conjunto de productos, mientras que J2EE es una norma para crear productos.
Framework .NET
Microsoft utiliza MSIL (Microsoft Intermediate Language), que es neutral, mientras que Java utiliza el Byte Code. El Framework .NET incluye el CLR (Common Language Runtime), análogo al JRE (Java Runtime Environment). El CLR actúa como intermediario, generando código nativo.
Patrones Arquitectónicos
Patrón Arquitectónico MVC (Modelo - Vista - Controlador)
El Modelo - Vista - Controlador (MVC) es un patrón fundamental de la arquitectura de software.
¿Qué es la Arquitectura de Software?
Es la forma en la que se organizan los componentes de un sistema, cómo interactúan y se relacionan entre sí y con el contexto, aplicando normas y principios de diseño y calidad que fortalezcan y fomenten la usabilidad, a la vez que dejan preparado el sistema para su propia evolución.
Características de la Arquitectura de Software: Atributos de Calidad
Los atributos de calidad son esenciales para definir la robustez y el éxito de una arquitectura de software. Se dividen en aquellos observables durante la ejecución y aquellos inherentes al proceso de desarrollo.
Atributos de Calidad Observables durante la Ejecución del Software
- Disponibilidad de uso.
- Confidencialidad, puesto que se debe evitar el acceso no autorizado al sistema.
- Cumplimiento de la Funcionalidad requerida.
- Desempeño del sistema con respecto a factores tales como la capacidad de respuesta.
- Confiabilidad, dada por la constancia operativa y permanente del sistema.
- Seguridad externa, evitando la pérdida de información debido a errores del sistema.
- Seguridad interna, siendo capaz de impedir ataques, usos no autorizados, etc.
Atributos de Calidad Inherentes al Proceso de Desarrollo del Software
- Capacidad de Configurabilidad que el sistema otorga al usuario a fin de realizar ciertos cambios.
- Integrabilidad de los módulos independientes del sistema.
- Integridad de la información asociada.
- Capacidad de Interoperar con otros sistemas (interoperabilidad).
- Capacidad de permitir ser Modificable a futuro (modificabilidad).
- (Nota: El punto 13 fue omitido en el documento original).
- Capacidad de Portabilidad, es decir, que pueda ser ejecutado en diversos ambientes tanto de software como de hardware.