Programación y Estrategias de Negocios RSS 2.0
# Tuesday, April 14, 2009


Share

Extractado de La Guía de Arquitectura Versión 2.0a del grupo de Patterns and Practices de Microsoft. Para los que nos gusta en la lengua de cervantes:

ARQUITECTURA BASADA EN COMPONENTES.

Una arquitectura basada en componentes describe una aproximación de ingeniería de software al diseño y desarrollo de un sistema. Esta arquitectura se enfoca en la descomposición del diseño en componentes funcionales o lógicos que expongan interfaces de comunicación bien definidas. Esto provee un nivel de abstracción mayor que los principios de orientación por objetos y no se enfoca en asuntos específicos de los objetos como los protocolos de comunicación y la forma como se comparte el estado.

El estilo de arquitectura basado en componentes tiene las siguientes características:

• Es un estilo de diseño para aplicaciones compuestas de componentes individuales.

• Pone énfasis en la descomposición del sistema en componentes lógicos o funcionales que tienen interfaces bien definidas.

• Define una aproximación de diseño que usa componentes discretos, los que se comunican a través de interfaces que contienen métodos, eventos y propiedades.

Principios Fundamentales

Un componente es un objeto de software específicamente diseñado para cumplir con cierto propósito. Los principios fundamentales cuando se diseña un componente es que estos deben ser:

Reusable. Los componentes son usualmente diseñados para ser utilizados en escenarios diferentes por diferentes aplicaciones, sin embargo, algunos componentes pueden ser diseñados para tareas específicas.

Sin contexto especifico. Los componentes son diseñados para operar en diferentes ambientes y contextos. Información específica 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 están diseñados para tener una dependencia mínima 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 Instalación. Cuando una nueva versión esté disponible, usted podrá reemplazar la versión 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 múltiples aplicaciones y sistemas.

Mitigación de complejidad técnica. Los componentes mitigan la complejidad por medio del uso de contenedores de componentes y sus servicios. Ejemplos de servicios de componentes incluyen activación de componentes, gestión de la vida de los componentes, gestión de colas de mensajes para métodos del componente y transacciones.

Ejemplos

Tipos comunes de componentes usados en aplicaciones incluyen:

• Componentes de interfaz de usuario, como grillas, botones, etc., generalmente conocidos como “controles”.

• Componentes de ayuda que exponen un conjunto específico de funciones usados por otros componentes.

• Componentes que se no se usan con mucha frecuencia o son intensivos en recursos y deben ser actividades usando una aproximación de solo en el momento justo (Just in Time (JIT)). Estos son comunes en escenarios de componentes distribuidos o en componentes remotos.

• Componentes encolados, aquellos cuyos métodos pueden ser ejecutados de forma asíncrona usando colas de mensajes del tipo almacenamiento, entrega.

 

 

Juan Carlos Pelaez
Arquitecto de Sofware.

 

Keywords: 3Metas, Juan Pelaez, Arquitectura, Emprendimiento, Desarrollo de Software, Aplicaciones Distribuidas.

Publicado en : www.juanpelaez.com

 

Publicidad: Necesita Arquitectos en soluciones basadas en plataforma Microsoft? 3Metas Corp tiene un grupo de especialistas que pueden apoyar sus procesos de diseño, construcción e implementación de soluciones.  Contáctenos al correo electrónico sales at 3metas.com

Tuesday, April 14, 2009 10:21:00 PM (SA Pacific Standard Time, UTC-05:00) 

Bookmark and Share

#    Comments [0] - Trackback
Arquitectura
Comments are closed.
Contácteme
mail: jpelaez at juanpelaez.com
Actualizaciones en Twitter
FeedBurner
Maps
Locations of visitors to this page
Blogroll
[Feed] Eugenio Pace
Arquitecto del grupo Software as a Service en Microsoft
[Feed] Juan Diego Velazco
El mejor diseñador gráfico conocido y un gran tipo
[Feed] Scott Hanselman
Sponsors
Estadísticas
Total Posts: 93
This Year: 3
This Month: 1
This Week: 0
Comments: 42
Archivo
<March 2010>
SunMonTueWedThuFriSat
28123456
78910111213
14151617181920
21222324252627
28293031123
45678910
Acerca de...

Aviso Legal
Las opiniones expresadas en este sitio representan el punto de vista de Juan Peláez sobre diferentes temas y no representan la posición de 3Metas Corp, Microsoft, Studiocom.com.Inc. o de cualquier otra compañía que haya contratado los servicios de consultoría de Juan Peláez

© Copyright 2010
Juan Carlos Peláez
Sign In

Technorati Profile
All Content © 2010, Juan Carlos Peláez
El tema 'Business' para DasBlog fue creado por Christoph De Baene (delarou) y modificado para español por Juan Peláez
Powered by FeedBurner