Arquitectura de software
28/03/2014
Contenido
Introduccin..
Estilo arquitectnico basado en componentes.
Principios fundamentales.
Beneficios.
Estructura de un componente..
Conclusiones personales..
Referencias..
2
3
3
4
5
6
6
Introduccin
El presente documento habla acerca de un estilo arquitectnico en especfico, dando al
inicio una breve definicin y posteriormente exponiendo sus caractersticas. Se anexan al
final comentarios y referencias de donde se obtuvo la informacin, tomando en cuenta
tambin que alguna de la informacin fue expuesta en clase por la profesora.
Antes de entrar de lleno a hablar sobre el tema, recordaremos alguna informacin que es
importante.
Sabemos que la ingeniera de software hace uso de la arquitectura de software para
obtener productos de software de calidad. La arquitectura de software depende de otro
tipo de herramientas como lo son los estilos y los patrones arquitectnicos y tambin la
arquitectura de referencia. Cada uno tiene sus propias caractersticas y propiedades que
hacen que sean diferentes uno de otro.
En este caso hablaremos acerca de un estilo arquitectnico. Recordemos que un estilo
arquitectnico es aquel que expresa los componentes y las relaciones entre ellos, con las
limitaciones de su aplicacin, as como la composicin y el diseo de normas asociadas a
su construccin.
Un componente es un elemento funcional que contiene la lgica de funcionamiento y la
estructura interna de los datos, as como una interfaz que permita la invocacin del
componente y el paso de datos.
A continuacin entramos a ver con detalle sobre el tema.
Principios fundamentales
Los principios fundamentales cuando se disea un componente es que estos deben ser:
Reusable. Los componentes son usualmente diseados para ser utilizados en escenarios
diferentes por diferentes aplicaciones, sin embargo, algunos componentes pueden ser
diseados para tareas especficas.
Sin contexto especifico. Los componentes son diseados para operar en diferentes
ambientes y contextos. Informacin especfica como el estado de los datos deben ser
pasadas al componente en vez de incluirlos o permitir al componente acceder a ellos.
Extensible. Un componente puede ser extendido desde un componente existente para
crear un nuevo comportamiento.
Encapsulado. Los componentes exponen interfaces que permiten al programa usar su
funcionalidad. Sin revelar detalles internos, detalles del proceso o estado.
Independiente. Los Componentes estn diseados para tener una dependencia mnima
de otros componentes. Por lo tanto los componentes pueden ser instalados en el
ambiente adecuado sin afectar otros componentes o sistemas.
Beneficios
Los siguientes son los principales beneficios del estilo de arquitectura basado en
componentes:
Facilidad de Instalacin. Cuando una nueva versin est disponible, se podr reemplazar
la versin existente sin impacto en otros componentes o el sistema como un todo.
Costos reducidos. El uso de componentes de terceros permite distribuir el costo del
desarrollo y del mantenimiento.
Facilidad de desarrollo. Los componentes implementan un interface bien definida para
proveer la funcionalidad definida permitiendo el desarrollo sin impactar otras partes del
sistema.
Reusable. El uso de componentes reutilizables significa que ellos pueden ser usados para
distribuir el desarrollo y el mantenimiento entre mltiples aplicaciones y sistemas.
Mitigacin de complejidad tcnica. Los componentes mitigan la complejidad por medio
del uso de contenedores de componentes y sus servicios. Ejemplos de servicios de
componentes incluyen activacin de componentes, gestin de la vida de los componentes,
gestin de colas de mensajes para mtodos del componente y transacciones.
Estructura de un componente
figura 1
Conclusiones personales
Vemos que el estilo arquitectnico basado en componentes nos ayuda a reutilizar piezas
de cdigo para ahorrar tiempo en la elaboracin de software, es importante tomar en
cuenta la independencia de cada componente y definir muy bien sus caractersticas y
funcionalidades para que as si se planean mejoras al software no afecte a todo el sistema
sino solo al componente que ser modificado o en su caso poder agregar nuevos
componentes sin alterar la funcionalidad del sistema.
Es importante mencionar que una de las caractersticas que conforman a los componentes
es que contienen mtodos y tambin funcionalidad como interfaz publica y objetos que
son privados, el cliente podr visualizar slo la parte pblica del componente. As que esta
sera una restriccin de los componentes.
Referencias
http://www.juanpelaez.com/geek-stuff/arquitectura/arquitectura-basada-encomponentes/
https://sites.google.com/site/lawebdelsoftware/ingenieria-de-software-1/unidad-vi
http://www.fing.edu.uy/inco/pedeciba/bibliote/reptec/TR0316.pdf