lunes, 7 de marzo de 2016

DIAGRAMAS DE COMPONENTES
DEFINICION:
 Un diagrama de componentes es un diagrama tipo del Lenguaje Unificado de Modelado.
Un diagrama de componentes cómo un sistema de software es dividido en componentes y muestra las dependencias entre estos componentes. Los componentes físicos incluyen archivos, cabeceras, bibliotecas compartidas, módulos, ejecutables, o paquetes. Los diagramas de Componentes prevalecen en el campo de la arquitectura de software pero pueden ser usados para modelar y documentar cualquier arquitectura de sistema.
Debido a que los diagramas de componentes son más parecidos a los diagramas de casos de usos, éstos son utilizados para modelar la vista estática y dinámica de un sistema. Muestra la organización y las dependencias entre un conjunto de componentes. No es necesario que un diagrama incluya todos los componentes del sistema, normalmente se realizan por partes. Cada diagrama describe un apartado del sistema.
En él se situarán librerías, tablas, archivos, ejecutables y documentos que formen parte del sistema.
Uno de los usos principales es que puede servir para ver qué componentes pueden compartirse entre sistemas o entre diferentes partes de un sistema.


 COMPONENTE
Los componente de Software son todo aquel recurso desarrollado para un fin concreto y que puede formar solo o junto con otro/s, un entorno funcional requerido por cualquier proceso predefinido. Son independientes entre ellos, y tienen su propia estructura e implementación. Si fueran propensos a la degradación debieran diseñarse con métodos internos propios de refresco y actualización. Son partes intangibles (que no se pueden tocar) de una computadora el cual lee los datos del hardware introduciéndolos en la PC.
Es una parte física reemplazable de un sistema que empaqueta su implementación y es conforme a un conjunto de interfaces a las que proporciona su realización.
Algunos componentes tienen identidad y pueden poseer entidades físicas, que incluyen objetos en tiempo de ejecución, documentos, bases de datos, etc. Los componentes existentes en el dominio de la implementación son unidades físicas en los computadores que se pueden conectar con otros componentes, sustituir, trasladar, archivar, etc.
Los componentes tienen dos características: Empaquetan el código que implementa la funcionalidad de un sistema, y algunas de sus propias instancias de objetos que constituyen el estado del sistema. Los llamados últimos componentes de la identidad, porque sus instancias poseen identidad y estado.



 •    Código:
Un componente contiene el código para las clases de implementación y otros elementos. Un componente de código fuente es un paquete para el código fuente de las clases de implementación. Algunos lenguajes de programación distinguen archivos de declaración de los archivos de método, pero todos son componentes. Un componente de código binario es un paquete para el código compilado. Una biblioteca del código binario es un componente.
Cada tipo de componente contiene el código para las clases de implementación que realizan algunas clases e interfaces lógicas. La relación de realización asocia un componente con las clases y las interfaces lógicas que implementan sus clases de implementación. Las interfaces de un componente describen la funcionalidad que aporta. Cada operación de la interfaz debe hacer referencia eventualmente a un elemento de la implementación disponible en el componente.
La estructura estática, ejecutable de una implementación de un sistema se puede representar como un conjunto interconectado de componentes. Las dependencias entre componentes significan que los elementos de la implementación en un componente requieren los servicios de los elementos de implementación en otros componentes. Tal uso requiere que dichos elementos sean de visibilidad pública.


•    Identidad:

Un componente de identidad tiene identidad y estado. Posee los objetos físicos que están situados en él. Puede tener atributos, relaciones de composición con los objetos poseídos, y asociaciones con otros componentes. Desde este punto de vista es una clase. Sin embargo la totalidad de su estado debe hacer referencia a las instancias que contiene.
•    Estructura:
Un componente ofrece un conjunto de elementos de implementación, esto significa que el componente proporciona el código para los elementos. Un componente puede tener operaciones e interfaces. Un componente de identidad es un contenedor físico para las entidades físicas como bases de datos. Para proporcionar manejadores para sus elementos contenidos, puede tener atributos y asociaciones salientes, que deben ser implementadas por sus elementos de implementación. Este componente se representa con un rectángulo con dos rectángulos más pequeños que sobresalen en su lado izquierdo.
Las operaciones e interfaces disponibles para los objetos exteriores se pueden representar directamente en el símbolo de clase. Estos son su comportamiento como clase. Los contenidos del subsistema se representan en un diagrama separado.
Las dependencias de un componente con otros componentes o elementos del modelo se representan usando líneas discontinuas con la punta de flecha hacia los elementos del proveedor. Sí un componente es la realización de una interfaz, se representa con un círculo unido al símbolo del componente por un segmento de línea.




  PAQUETE
Un paquete es un espacio de nombre así como un elemento que puede estar contenido en otros espacios de nombre de paquetes. Un paquete puede poseer o combinarse con otros paquetes, y sus elementos se pueden importar dentro de un espacio de nombre de un paquete. Además de usar los paquetes en el Explorador de Proyectos para organizar el contenido de sus proyectos, estos paquetes también se pueden arrastrar a espacios de trabajo de diagramas para descripciones estructurales o relacionales, incluyendo importación o combinación de paquetes.  

CLASE
Una clase es una representación de uno o más objetos, que refleja su estructura y comportamiento en el sistema. Es una plantilla desde la cual se crean las instancias actualmente en ejecución. Una clase puede tener atributos (datos) y métodos (operaciones o comportamiento). Las clases pueden heredar características desde las clases padres y delegar comportamientos a otras clases. Los modelos de Clases usualmente describen la estructura lógica del sistema y son los bloques de construcción a partir de los cuales se construyen los componentes. 

La sección superior de la clase muestra los atributos (o elementos de datos) asociados a una clase. Ellos mantienen el 'estado' de un objeto en tiempo de ejecución. Si la información se guarda a un almacenamiento de datos y se puede recargar, se dice que es 'persistente'. La sección inferior contiene las operaciones de clase (o métodos en tiempo de ejecución). Las operaciones describen el comportamiento que una clase ofrece a otras clases, y el comportamiento interno que esta tiene (métodos privados).  

INTERFAZ
Una interfaz es una especificación de comportamiento que los implementadores acordaron. Es un contrato. Implementando una interfaz las clases garantizan soportar un comportamiento requerido, lo cual permite al sistema tratar elementos no relacionados de la misma manera, a través de una interfaz común.

Las interfaces se pueden dibujar de un modo similar a una clase, con las operaciones especificadas, como se muestra abajo. Ellas también se pueden dibujar como un círculo sin los detalles de las operaciones. Use el botón derecho y en el menú contextual elija la opción Configuraciones Avanzadas IUsar Notación de Círculo para cambiar entre ambos estilos. Cuando dibuje como círculo, la realización se dibuja sin la flecha al destino.

 Tenga en cuenta: Una interfaz no puede ser instanciada (ej. no  se puede crear un objeto desde una interfaz). Se debe crear una clase que implemente la especificación de la interfaz, y en el cuerpo de la clase ubique las operaciones para cada una de las operaciones de interfaz. Entonces se puede instanciar la clase.

PUERTO
Los puertos definen la interacción entre un clasificador y su entorno. Las interfaces que controlan esta interacción pueden ser representadas usando el elemento de la caja de herramientas de la interfaz expuesta. Cualquier conector le debe proporcionar a un puerto una interfaz requerida, si es que está definida. Los puertos pueden aparecer en una de las partes contenidas, una clase, o el límite de una estructura compuesta.

Un puerto un "Tipo" de característica estructural o propiedad de su contenedor clasificador.


 EXPONER LA INTERFAZ

El elemento Exponer la interfaz es un método gráfico de describir las interfaces requeridas y provistas de un Componente, Clase o Parte, en un diagrama de Componente o Estructura compuesta. Este sólo identifica el hecho de que el elemento provee o requiere una interfaz; para describir el hecho de que la interfaz provista se use, o la interfaz requerida provista por otro elemento, use el conector Ensamblar.
El elemento Exponer interfaz se debe adjuntar a un elemento Clase o Componente, y este se convierte en un elemento hijo de esa Clase o Componente; no puede existir independientemente. Puede adjuntar más de un elemento Exponer a otro elemento.
Cuando crea el elemento Exponer interfaz, una ventana se muestra en la cual ingresa el nombre para el elemento y especifica si este representa una interfaz requerida o una interfaz provista.

ARTEFACTO DEL DOCUMENTO
Un artefacto documento es en artefacto que tiene un estereotipo de documento. El artefacto documento se asocia con un documento RTF. Haciendo doble clic en este elemento, se le presentará el procesador de palabra RTF.
ENSAMBLE
Como se muestra arriba, el conector ensamble une una interfaz requerida de un componente (Componente 1) con la interfaz proporcionada por otro componente (Componente 2).   
DELEGAR Un conector delegar define el ensamble interno de los puertos e interfaces externos de un componente. Al usar un conector delegar se conectan los trabajos internos del sistema con el mundo exterior, por una delegación de las conexiones de las interfaces externas.  
ASOCIAR

Una asociación implica que dos elementos de modelo tienen una relación, usualmente implementada como una variable de instancia en una clase. Este conector puede incluir nombre de roles en cada final, multiplicidad, dirección y restricciones. La asociación es el tipo general de relación entre elementos. Para más de dos elementos, puede usar el elemento Asociación N-Ary
Cuando se genera el código para los diagramas de clases, las asociaciones se convierten en variables de instancia en la clase destino. Esta relación también se usa en los diagramas de Paquetes, Objeto, Comunicación y Despliegue.   

 GENERALIZAR
Una generalización se usa para indicar herencia. Dibujada desde el clasificador específico al clasificador general, la implicación de generalización es que el origen hereda las características del destino.  

DEPENDENCIAS ENTRE COMPONENTES


Las relaciones de dependencia se utilizan en los diagramas de componentes para indicar que un componente se refiere a los servicios ofrecidos por otro componente Dependencia entre dos componentes:


COMPONENTES Y CLASES

Un componente posee características similares a una clase: tiene nombre, realiza interfaces, puede participar de relaciones, puede tener instancias, puede participar en interacciones.
¿Porqué se diferencian?
  Un componente representa un elemento físico (bits).
Una clase es una abstracción lógica.    El componente se puede representar en nodos físicos, la clase no.   

 Las operaciones de un componente solo se alcanzan a través de interfaces. Las de una clase podrían ser accesibles directamente.

COMPONENTES E INTERFACES

•    Una interfaz contiene una colección de operaciones y se utiliza para especificar los servicios de una clase o de un componente.

•    Una interfaz se conecta al componente que la implementa a través de una relación de realización, y al componente que utiliza sus servicios con una dependencia.

Interfaz de exportación: interfaz realizada por uncomponente, servicio que ofrece a otroscomponentes.
Interfaz de Importación: interfaz usada por uncomponente.
La ventaja de usar interfaces es que se rompe ladependencia directa entre componentes.
Un componente que usa una interfaz puede funcionaradecuadamente independientemente del componenteque la realiza.


NODO

Es un elemento físico que existe en tiempo de ejecución y representa un recurso computacional, que generalmente tiene alguna memoria y capacidad de procesamiento.
Posee un nombre simple, ej.: Ventas o un nombre extendido indicando el paquete que lo contiene, ej.: servidor: Ventas.

 RESUMEN:
  Un diagrama de componentes es un diagrama tipo del Lenguaje Unificado de Modelado.
Un diagrama de componentes cómo un sistema de software es dividido en componentes y muestra las dependencias entre estos componentes. Los componentes físicos incluyen archivos, cabeceras, bibliotecas compartidas, módulos, ejecutables, o paquetes. Los diagramas de Componentes prevalecen en el campo de la arquitectura de software pero pueden ser usados para modelar y documentar cualquier arquitectura de sistema.
Debido a que los diagramas de componentes son más parecidos a los diagramas de casos de usos, éstos son utilizados para modelar la vista estática y dinámica de un sistema. Muestra la organización y las dependencias entre un conjunto de componentes. No es necesario que un diagrama incluya todos los componentes del sistema, normalmente se realizan por partes. Cada diagrama describe un apartado del sistema.
En él se situarán librerías, tablas, archivos, ejecutables y documentos que formen parte del sistema.
Uno de los usos principales es que puede servir para ver qué componentes pueden compartirse entre sistemas o entre diferentes partes de un sistema.

SUMMARY:
A component diagram is a type diagram of the Unified Modeling Language.
A component diagram how a software system is divided into components and shows the dependencies between these components. The physical components include files, headers, shared libraries, modules, executable, or packages. Components diagrams prevailing in the field of software architecture but can be used to model and document any system architecture.
Because component diagrams are more like diagrams use cases, these are used to model the static and dynamic view of a system. It shows the organization and dependencies among a set of components. You need not include all a diagram of the system components, typically performed by parties. Each diagram describes a section of the system.
In it bookstores, tables, files, executables and documents forming part of the system is placed.
One of the main uses is that it can be used to see which components can be shared between systems or between different parts of a system.

RECOMENDACIONES: 
  • previamente al diagrama de componentes debemos de tener hecho el diagrama de clases.
  •  Se debe identificar a todos las clases que participaran en el sistema o subsistema a desarrollar.
CONCLUCIONES:
  • Los diagramas de componentes describen los elementos físicos del sistema y sus relaciones 
LINKOGRAFIA:
  • https://es.wikipedia.org/wiki/Diagrama_de_componentes  
  • https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=17&ved=0ahUKEwiT7fzqr6_LAhUIPD4KHXFRDAI4ChAWCD0wBg&url=http%3A%2F%2Fvirtual.usalesiana.edu.bo%2Fweb%2Fpractica%2Farchiv%2Fcomponn.doc&usg=AFQjCNEOLSH4ZCdxLaPHPICibaD-p7UVRA&sig2=xeiwxqix25_fWBmQJo7_Aw
 PRESENTACION EN POWER POINT :     SlideShare Diagramas de Componentes

 

No hay comentarios:

Publicar un comentario