Análisis UML - Trimestre II - UML Componentes

sábado, 30 de mayo de 2009

Doc_Diagrama-de-Componentes

DIAGRAMA DE COMPONENTES

Evidencia de Clase: Análisis UML

19/05/2009
SENA
David Suárez - Edwin Rios Sánchez

INTRODUCCIÓN
A través de una exposición frente a los compañeros de clase, pretendemos demostrar la importancia de la diagramación de componentes de un sistema frente a un problema real o simulado.

Esto lo haremos mediante la explicación teórico práctica del diagrama de componentes UML, sus características, aplicabilidad, representación gráfica y sus ventajas y desventajas, seguidamente.

Al final podremos concebir que toda acción realizada dentro de un sistema, requiere de elementos físicos que transmuten estas operaciones para el beneficio de los clientes.

Through an exposure to the class, we intend to demonstrate the importance of the layout of components of a system against a real or simulated.

This is done through the theoretical and practical explanation of the diagram of UML components, their characteristics, applicability, graphical representation and its advantages and disadvantages, follows.

At the end we can conceive that any action taken within a system, which requires physical transmute these operations for the benefit of customers.


¿QUÉ ES UN COMPONENTE?
Un componente de software es una parte física de un sistema, y se encuentra en la computadora, no en la mente del analista. Se considera un componente: Una tabla, archivo de datos, ejecutable y documentos, entre otros.

El aspecto más importante de los componentes es el potencial que tienen para volver a ser utilizados.

RELACIÓN ENTRE UN COMPONENTE Y UNA CLASE
La clase representa una abstracción de un conjunto de atributos y operaciones; el componente es la personificación en software de una clase.


COMPONENTES E INTERFACES
Un objeto oculta al mundo lo que hace, lo que denominamos encapsulamiento u ocultamiento de información.
Una interfaz se le conoce como el rostro que tiene un objeto al que se le puede pedir que ejecute operaciones. Es un conjunto de operaciones que presenta una clase a otras; es como una clase con operaciones y sin atributos. Puede ser física o conceptual.

Solo se podrá ejecutar las operaciones de un componente a través de su interfaz. Esta relación se conoce como “realización”.
Un componente puede hacer disponible su interfaz para que otros componentes puedan utilizar las operaciones que contiene. El componente que provee se conoce como “interfaz de exportación” y el que accede a los servicios “interfaz de importación”.

SUSTITUCIÓN Y REUTILIZACIÓN
Se puede sustituir un componente con otro si el nuevo contiene las mismas interfaces que el anterior.

Se puede reutilizar un componente en otro sistema si se puede acceder al componente reutilizado mediante interfaces.

TIPOS DE COMPONENTES

  1. Componentes de distribución: comprenden los sistemas ejecutables, tales como librerías DLL, controles ActiveX y JavaBeans, entre otros.
  2. Componentes para trabajar en el producto: a partir de los cuales se han creado los componentes de distribución, tales como: bases de datos y código, entre otros.
  3. Componentes de ejecución: creados como resultado de un sistema de ejecución.

Ventajas

  • Los clientes podrán ver la estructura del sistema finalizado
  • Los desarrolladores podrán contar con una estructura con la cual trabajarán en adelante.
  • Quienes elaboren la documentación y notas técnicas pueden entender sobre lo que escribirán
  • Se puede crear un componente para un sistema y puede ser utilizado en otro.

Lo que distingue a un diagrama de componentes de otros tipos de diagramas es su contenido. Normalmente contienen componentes, interfaces y relaciones entre ellos. Y como todos los diagramas, también puede contener paquetes utilizados para agrupar elementos del modelo.

Un diagrama de componentes muestra las organizaciones y dependencias lógicas entre componentes software, sean éstos componentes de código fuente, binarios o ejecutables. Desde el punto de vista del diagrama de componentes se tienen en consideración los requisitos relacionados con la facilidad de desarrollo, la gestión del software, la reutilización, y las restricciones impuestas por los lenguajes de programación y las herramientas utilizadas en el desarrollo. Los elementos de modelado dentro de un diagrama de componentes serán componentes y paquetes. En cuanto a los componentes, sólo aparecen tipos de componentes, ya que las instancias específicas de cada tipo se encuentran en el diagrama de despliegue”.

Dado que los diagramas de componentes muestran los componentes software que constituyen una parte reusable, sus interfaces, y sus interrelaciones, en muchos aspectos se puede considerar que un diagrama de componentes es un diagrama de clases a gran escala. Cada componente en el diagrama debe ser documentado con un diagrama de componentes más detallado, un diagrama de clases, o un diagrama de casos de uso.

Un paquete en un diagrama de componentes representa una división física del sistema. Los paquetes se organizan en una jerarquía de capas donde cada capa tiene una interfaz bien definida. Un ejemplo típico de una jerarquía en capas de este tipo es: Interfaz de usuario; Paquetes específicos de la aplicación; Paquetes reusables; Mecanismos claves; y Paquetes hardware y del sistema operativo.

REPRESENTACIÓN GRÁFICA DE UN COMPONENTE
El símbolo principal es un rectángulo que tiene otros dos sobrepuestos en su lado izquierdo. Debe colocarse el nombre del componente dentro del símbolo.








Fig. 1



Si el componente es miembro de un paquete, puede utilizar el nombre del paquete como prefijo para el nombre del componente. También puede agregarse información que muestre algún detalle del componente.










Fig. 2 Adición de información











Fig. 3 Elementos estructurales




REPRESENTACIÓN GRÁFICA DE LAS INTERFACES


Existen dos formas:



  1. Muestra la interfaz como un rectángulo que contiene la información que se relaciona, se conecta el componente por la línea discontinua y una punta de flecha representada por un triángulo sin rellenar que visualiza la realización.









Fig. 1




  1. Se representa un componente y sus interfaces. La interfaz es un círculo pequeño que se conecta al componente por una línea discontinua. La línea representa la relación de realización.









Fig. 2




APLICACIÓN DE LOS DIAGRAMAS DE COMPONENTES



Ejemplo de página web con Java










Ejecuta el juego de dados “Craps” en una página web, la cual utiliza un applet o subprograma y la clase llamada Die.



La página web se llama Craps.html.


El código fuente del applet se encuentra en el archivo Craps.java.


El código del objeto es el archivo Craps.class.


El código fuente de la clase Die se encuentra en Die.java


El código del objeto en Die.class.



Los cinco archivos se encuentran en el mismo directorio, llamado TiroDeDados.



Craps.html depende de Craps.class y Die.class. Cada archivo *.class es un componente y cada uno es la implementación de una clase.


Lo que no es obvio es que Craps.java y Die.java importan la clase java.awt (Conjunto de herramientas abstractas para manejar ventanas) que muestran y controlan la GUI (Interface gráfica de usuario).



Craps.java es un applet, por ello se hereda de la clase java.applet.


Finalmente Craps.java importa a java.awt.event e implementa una interfaz: Action.Listener (Para responder a los eventos generados por el usuario, como hacer clic con el ratón)



Dentro del código, la interfaz ActionListener proporciona un botón para que el usuario haga clic para que se “Tiren los dados”.





BIBLIOGRAFÍA


Aprendiendo UML en24 horas. Prentice Hall. Hora 12.


Aprendiendo programación con Java 1.1 en 24 horas. Prentice Hall. Hispanoamérica, 1997. Hora 21 y 22.



miércoles, 27 de mayo de 2009

VIDEO

PRESENTACIÓN









martes, 26 de mayo de 2009

CONCLUSIONES

* El diagrama de componentes UML es un conglomerado de figuras de diagramas. Representa un elemento real: software. Se encuentran en las computadores.

* Un componente puede accederse a través de su interfaz, una colección de aplicaciones. La relación entre un componente y su interfaz se denomina relación.

* Un componente puede acceder a los servicios de otro, cuando se hace se denomina interfaz de importación. El componente que realiza la interfaz con tales servicios proporciona una interfaz de exportación.

* La representación de un componente es un rectángulo con otros rectángulos pequeños sobrepuestos a su lado izquierdo. Puede representar una interfaz de dos formas:La primera es un rectángulo que contiene información de la interfaz y se conecta con el componente mediante una línea discontinua con una punta de flecha representado por triángulos sin relleno. La otra es un pequeño circulo conectado por un componente con una línea discontinua. Ambos tipos de conexión pretenden mostrar una relación de realización.

Seguidores