3.3.3 CARACTERIZACIÓN DE LOS COMPONENTES

2
3.3.3 CARACTERIZACIÓN DE LOS COMPONENTES Un componente es una unidad de composición con interfaces especificadas contractualmente y dependencias de contexto explicitas únicamente. Un componente software puede ser desplegado de forma independiente y está sujeto a la composición por terceras partes. Características del componente: Estandarizado: la estandarización de componentes significa que un componente usado en un proceso CBSE tiene que ajustarse a algún modelo estandarizado de componentes. Este modelo puede definir interfaces de componentes, documentación, composición y despliegue. Independiente: Un componente debería ser independiente, debería ser posible componerlo y desplegarlo sin tener que utilizar otros componentes específicos. En las situaciones en las que el componente necesita servicios proporcionados externamente, estos deberías hacerse explícitos en una especificación de interfaz del tipo. Componible: Para que un componente sea componible, todas las interfaces externas deben tener lugar a través de interfaces definidas públicamente. Además debe proporcionar acceso externo a la información sobre si mismo, como ejemplo a sus métodos y atributos. Desplegable: Para ser desplegable, un componente debe ser independiente y debe ser capaz de funcionar como una entidad autónoma o sobre una plataforma de componentes que implemente el modelo de componentes. Esto normalmente significa que el componente es binario y que no tiene que compilarse antes de ser desplegado. Documentado: Los componentes tiene que estar completamente documentados para que los usuarios potenciales puedan decidir si los componentes satisfacen o no sus necesidades. La sintaxis e, idealmente, la semántica de toda las interfaces de componentes tienen que ser especificadas. La visión de un componente como un proveedor de servicios resalta dos características críticas de un componente reutilizable: 1. El componente es una entidad ejecutable independiente. El código fuente no está disponible, por lo que el componente no

description

Un componente es una unidad de composición con interfaces especificadas contractualmente y dependencias de contexto explicitas únicamente. Un componente software puede ser desplegado de forma independiente y está sujeto a la composición por terceras partes.

Transcript of 3.3.3 CARACTERIZACIÓN DE LOS COMPONENTES

3.3.3 CARACTERIZACIN DE LOS COMPONENTES Un componente es una unidad de composicin con interfaces especificadas contractualmente y dependencias de contexto explicitas nicamente. Un componente software puede ser desplegado de forma independiente y est sujeto a la composicin por terceras partes.Caractersticas del componente:Estandarizado: la estandarizacin de componentes significa que un componente usado en un proceso CBSE tiene que ajustarse a algn modelo estandarizado de componentes. Este modelo puede definir interfaces de componentes, documentacin, composicin y despliegue.Independiente: Un componente debera ser independiente, debera ser posible componerlo y desplegarlo sin tener que utilizar otros componentes especficos. En las situaciones en las que el componente necesita servicios proporcionados externamente, estos deberas hacerse explcitos en una especificacin de interfaz del tipo.Componible: Para que un componente sea componible, todas las interfaces externas deben tener lugar a travs de interfaces definidas pblicamente. Adems debe proporcionar acceso externo a la informacin sobre si mismo, como ejemplo a sus mtodos y atributos.Desplegable: Para ser desplegable, un componente debe ser independiente y debe ser capaz de funcionar como una entidad autnoma o sobre una plataforma de componentes que implemente el modelo de componentes. Esto normalmente significa que el componente es binario y que no tiene que compilarse antes de ser desplegado.Documentado: Los componentes tiene que estar completamente documentados para que los usuarios potenciales puedan decidir si los componentes satisfacen o no sus necesidades. La sintaxis e, idealmente, la semntica de toda las interfaces de componentes tienen que ser especificadas.La visin de un componente como un proveedor de servicios resalta dos caractersticas crticas de un componente reutilizable:1. El componente es una entidad ejecutable independiente. El cdigo fuente no est disponible, por lo que el componente no tiene que ser compilado antes de que sea usado con otros componentes del sistema.2. Los servicios ofertados por un componente estn disponibles a travs de una interfaz, y todas las interacciones son a travs de es una interfaz. La interfaz del componente se expresa en trminos de operaciones parametrizadas y su estado interno nunca se muestra.Los componentes se definen por sus interfaces, y en los casos ms generales, pueden considerarse que tienen dos interfaces relacionadas.1. Una interfaz proporciona. Que define los servicios proporcionados por el componente. Define que los mtodos que pueden ser llamados por un usuario del componente. Las interfaces proporciona se indican con un circulo al final de una lnea desde el icono del componente.2. Una interfaz requiere, que especifica qu servicios deben ser proporcionados por otros componentes en el sistema. Si stos no estn disponibles, entonces el componente no funcionar. Esto no compromete la independencia o el despliegue del componente debido a que no se requiere el uso de un componente especfico para proporcionar dichos servicios. Las interfaces requiere se indican con un semicrculo al final de una lnea desde el icono de componentes.Los componentes se desarrollan normalmente utilizando una aproximacin orientada a objetos, pero difieren de los objetos en varios aspectos importantes:1. Los componentes son entidades desplegables. Es decir, no son compilados en un programa de aplicacin, sino que se instalan directamente sobre una plataforma de ejecucin. Los mtodos y atributos definidos en sus interfaces pueden ser accedidos por otros componentes.2. Los componentes no definen tipos. Una definicin de clase define un tipo abstracto de datos y los objetos son instancias de ese tipo. Un componente es una instancia, no una plantilla que se utiliza para definir una instancia.3. Las implementaciones de los componentes son opacas. Los componentes estn, al menos en principio, completamente definidos por la especificacin de su interfaz. La implementacin est oculta para los usuarios de los componentes. Los componentes a menudo se entregan como unidades binarias de forma que el comprador no tiene acceso a la implementacin.4. Los componentes son independientes del lenguaje. Las clases de objetos tienen que seguir las reglas de un lenguaje de programacin orientado a objetos particular y, generalmente, slo pueden interoperar con otras clases escritas en dicho lenguaje. Si bien los componentes se implementan normalmente utilizando lenguajes orientados a objetos tales como Java, pueden implementarse en lenguajes de programacin no orientados a objetos.5. Los componentes estn estandarizados. A diferencia de las clases de objetos que pueden implementarse de cualquier forma, los componentes deben ajustarse a algn modelo de componentes que restringe su implementacin.

Bibliografa Ingeniera del software Sptima edicin Ian Sommerville Pearson Addison WesleyPginas: 404, 405, 406, 407

Ingeniera del software un enfoque practicoQuinta edicinRoger S. PressmanMc Graw HillPginas: 492, 493, 494