Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introduccin
Los continuos avances en la Informtica y las Telecomunicaciones estn haciendo cambiar la forma en la que se desarrollan actualmente las aplicaciones software Aumento de la potencia de los ordenadores Abaratamiento de los costos del hardware Redes de datos de cobertura global Modelos de programacin existentes desbordados
Ensamblaje de partes de software previamente elaboradas Inspirada en los procesos de produccin de sistemas fsicos: Produccin de aviones, vehculos, computadores, aparatos electrnicos, etc. Fundamentada en la Reutilizacin de Software Orientar esfuerzos hacia una industria de partes
Componente
Un componente es una unidad de composicin de aplicaciones software, que posee un conjunto de interfaces y un conjunto de requisitos, y que ha de poder ser desarrollado, adquirido, incorporado al sistema y compuesto con otros componentes de forma independiente, en tiempo y espacio [Szyperski, 1998].
Arquitectura Software
Entendemos por Arquitectura Software la representacin de alto nivel de la estructura de un sistema o aplicacin, que describe las partes que la integran, las interacciones entre ellas, los patrones que supervisan su composicin, y las restricciones a la hora de aplicar esos patrones.
En general, la arquitectura software nace como una herramienta de alto nivel para cubrir distintos objetivos: 1. Comprender y manejar la estructura de las aplicaciones complejas. 2. Reutilizar dicha estructura (o partes de ella) para resolver problemas similares. 3. Planificar la evolucin de la aplicacin, identificando sus partes mutables e inmutables, as como los costes de los posibles cambios. 4. Analizar la correccin de la aplicacin, y su grado de cumplimiento respecto a los requisitos iniciales 5. Permitir el estudio de alguna propiedad especfica del dominio.
Marcos de Trabajo
La reutilizacin de arquitecturas software se define dentro un marco de trabajo (framework, o abreviadamente MT). En general, un MT se suele definir de la siguiente forma: Un MT es el esqueleto de una aplicacin que debe ser adaptado a necesidades concretas por el programador de la aplicacin
Un MT encapsula el patrn de la arquitectura software de un sistema o de alguna de sus partes. Las principales ventajas que ofrecen los MT son la reduccin del coste de los procesos de desarrollo de aplicaciones software para dominios especficos, y la mejora de la calidad del producto final. Sin embargo, la utilizacin de MT presenta actualmente ciertas dificultades, aunque se suelen englobar todas en el problema de la documentacin de un MT
En cuanto a los lenguajes de programacin, slo hay unos pocos que realmente incorporen conceptos suficientes para realizar una programacin orientada a componentes: Obern, Java, Ada95, Modula-3 y Component Pascal.
DCOM (Distributed Component Object ModelModelo de Objetos de Componentes Distribuidos): Es una tecnologa propietaria de Microsoft para desarrollar componentes software distribuidos sobre varios ordenadores y que se comunican entre s. .NET es un framework de Microsoft que hace un nfasis en la transparencia de redes, con independencia de plataforma de hardware y que permita un rpido desarrollo de aplicaciones.
Enterprise JavaBeans: Modelo de componentes basado en arquitectura cliente servidor. Esta plataforma ofrece una solucin multiplataforma, de fcil reutilizacin, integracin universal con otros componentes adems de la maquina virtual de java. La tecnologa java a estado a la vanguardia del DSBC y constituye una referencia clave en este tema.
La programacin de aplicaciones distribuidas se basa en un conjunto de servicios que proporcionan a los componentes el acceso a los recursos compartidos de una forma segura y eficiente. Estos servicios suelen englobarse en las siguientes categoras bsicas: Comunicaciones Remotas Servicios de Directorio Seguridad Transacciones Gestin
Particularizacin. Cmo particularizar los servicios que ofrece un componente para adaptarlo a las necesidades y requisitos concretos de nuestra aplicacin, sin poder manipular su implementacin. Falta de soporte formal. Por otro lado, la POC tambin se encuentra con otro reto aadido, como es la dificultad que encuentran los mtodos formales para trabajar con sus peculiaridades