Análisis y Diseño de Sistemas de Información INF-162cotana.informatica.edu.bo/downloads/diagramas...

Preview:

Citation preview

1

III. UML

MODULO IV

4.9 Diagramas de Componentes

1

Análisis y Diseño de Sistemas de Información

INF-162

Facilitador: Miguel Cotaña 30 de Noviembre 2009

22

Pertenecen al mundo físico, es decir,representan un bloque deconstrucción al modelar aspectosfísicos de un sistema. Unacaracterística básica es que:

“debe definir una abstracción precisa con una interfaz bien definida, y

permitiendo reemplazar fácilmente los componentes más viejos con

otros más nuevos y compatibles.”

Componentes

33

Cada componente debe tener un nombre

que lo distinga de los demás. Al igual que

las clases los componentes pueden

enriquecerse con compartimentos

adicionales que muestran sus detalles. La

representación extendida:

Expresión.dll

Calcula expresión lógica

Calcula expresión aritmética

4

agente.java

agentefraudes.dll

RealizaAgenteFraudesPoliticaFraudesBuscarPatrones

system::dialog.dll{version = 2.0.1}

5

Parecidos y diferencias con las clases

Parecidos: ambos tienen nombres,pueden realizar interfaces, participanen relacionamientos, puedenanidarse, tener instancias, participaren interacciones;

Diferencias: Las clases representanabstracciones lógicas y loscomponentes representan elementosfísicos. Las clases tienen atributos yoperaciones, mientras loscomponentes sólo tienen operaciones

6

Interfaces

Tanto los servicios propio de una clasecomo los de un componente, seespecifican a través de una Interfaz.Por ejemplo, todas las facilidades másconocidas de los sistemas operativos,basados en componentes (COM+,CORBA y los Enterprise Java Beans),utilizan las interfaces como lazo deunión entre unos componentes yotros.

7

La relación entre un componente ysus interfaces se puede representarde dos maneras diferentes, de formaicónica y expandida:

Imagen.java Componente.java

ObservadorDeImagen

8

Tipos de componentes

De despliegue: componentesnecesarios y suficientes para formar unsistema ejecutable, como pueden ser lasbibliotecas dinámicas (DLLs) yejecutables (EXEs).Componentes producto del trabajo:son básicamente productos que quedanal final del proceso de desarrollo.Consisten en cosas como archivos decódigo fuente y de datos a partir de loscuales se crean los componentes dedespliegue.

9

Componentes de ejecución: soncomponentes que se crean comoconsecuencia de un sistema enejecución. Es el caso de un objetoCOM+ que se instancia a partir deuna DLL.

10

Organización de componentes

Los componentes se pueden agruparen paquetes de la misma forma quese organizan las clases.Además se pueden especificar entreellos relaciones de dependencia,generalización, asociación (incluyendoagregación), y realización.

11

Estereotipos de componentes

Executable: Componente que sepuede ejecutar en un nodo;Library: Especifica una biblioteca deobjetos estática o dinámica;Table: Componentes que representauna tabla de una base de datos;File: Componente que representa undocumento que contiene códigofuente o datos;Document: Componente querepresenta un documento.

12

Diagramas de componentes

Un diagrama de componentesmuestra la organización y lasdependencias entre un conjunto decomponentes.Para todo sistema OO se han deconstruir una serie de diagramas quemodelan tanto la parte estática(diagrama de clases), como dinámica(diagramas de secuencia,colaboración, estados y actividades).

13

Pero llegado el momento todoesto se debe materializar en unsistema implementado queutilizará partes ya implementadasde otros sistemas, todo esto es loque pretendemos modelar con losdiagramas de componentes.

14

Algunos conceptos

Muestra un conjunto de componentesy sus relaciones de manera gráfica através del uso de nodos y arcos.Estos diagramas contienen:

Componentes;Interfaces;Relaciones de dependencia,generalización, asociaciones yrealización;Paquetes o subsistemas;Instancias de algunas clases.

15

Usos más comunes

Los diagramas de componentes seutilizan para modelar la vista deimplementación estática de unsistema.Esta vista se ocupa principalmente dela gestión de configuraciones de laspartes de un sistema, formada porcomponentes que puedenensamblarse de varias formas paraproducir un sistema ejecutable.

16

Cuando se modela la vista deimplementación estática de unsistema, normalmente se utilizaránlos diagramas de componentes de unade las 4 maneras siguientes:

Código fuente;Versiones ejecutables;Bases de datos físicas;Sistemas adaptables.

17

Modelado de código fuente

Los diagramas de componentes sepueden utilizar para modelar lagestión de la configuración de losarchivos de código fuente, tomandocomo productos de trabajoprecisamente estos ficheros.Esto resulta bastante útil por ejemplocuando se han implementado unaspartes con Java otras con C++, etc.

18

El resultado de esta implementaciónpueden ser multitud de ficherosejecutables con característicasparticulares, de manera que la mejorforma de controlarlos es estableciendogestión de configuración.será necesario definir los estereotiposde ficheros que se quieren tener bajocontrol así como las relaciones entredichos tipos de ficheros.

19

Para modelar el código fuente de unsistema:

Hay que identificar el conjunto dearchivos de código fuente de interésy modelarlos como componentesestereotipados como archivos;Si el sistema es grande es necesarioutilizar los paquetes para agrupar losarchivos de código fuente;Es necesario identificar la versión delcomponente.

20

Modelado de una versión ejecutable

La utilización de los componentespara modelar versionesejecutables se centra en ladefinición de todos los elementosque componen lo que se conocecomo versión ejecutable, es decirla documentación, los ficheros quese entregan etc.

21

Para modelar una versión es preciso:Identificar el conjunto de componentesque se pretende modelar;Identificar el estereotipo de cadacomponente del conjunto seleccionado;Para cada componente de esteconjunto hay que considerar lasrelaciones con los vecinos. Esto implicadefinir las interfaces importadas porciertos componentes y las exportadaspor otros.

22

Modelado de una base de datos física

Puede ser vista como la realizaciónconcreta de un esquema, y quepertenece al mundo de los bits.Los esquemas ofrecen una API parala información persistente; el modelode una BD física representa elalmacenamiento de esa informaciónen las tablas de una BD relacional olas páginas de una BDOO.

23

Para modelar una BD física:Identificar las clases del modelo querepresentan el esquema lógico de BD;Seleccionar una estrategia para hacercorresponder las clases con tablas. Asícomo la distribución física de BD;Para la correspondencia es necesariocrear un diagrama de componentes quetenga componentes estereotipados comotablas;Utilizar herramientas que ayuden atransformar diseño lógico en físico.

24

Modelado de sistemas adaptables

Algunos sistemas son estáticos; suscomponentes entran en escena,participan en la ejecución ydesaparecen.Otros sistemas son más dinámicos, eimplican agentes móviles ocomponentes que migran con elpropósito de equilibrar la carga o larecuperación de fallos.

Recommended