PDF de programación - INGENIERÍA DEL SOFTWARE I - Tema 13 - Arquitectura Física del Sistema (en desarrollo OO)

Imágen de pdf INGENIERÍA DEL SOFTWARE I - Tema 13 - Arquitectura Física del Sistema (en desarrollo OO)

INGENIERÍA DEL SOFTWARE I - Tema 13 - Arquitectura Física del Sistema (en desarrollo OO)gráfica de visualizaciones

Publicado el 14 de Enero del 2017
1.855 visualizaciones desde el 14 de Enero del 2017
2,1 MB
43 paginas
Creado hace 14a (18/01/2010)
INGENIERÍA DEL SOFTWARE I

Tema 13

Arquitectura Física del Sistema

(en desarrollo OO)

Univ. Cantabria – Fac. de Ciencias

Francisco Ruiz

Objetivos del Tema
• Presentar los conceptos básicos de UML 2 para el

modelado de las vistas de implementación y
despliegue: componentes, nodos y artefactos.

• Aprender a usar los diagramas de componentes y de

despliegue para tal fin, conociendo los principales
usos de tales diagramas y conceptos.

Francisco Ruiz - IS1

13.2

Contenido

• Introducción
• Componentes
Organización
Puertos
Estructura Interna
Subsistemas

• Diagramas de Componentes

Consejos
• Artefactos
Tipos
Estereotipos

• Nodos

Organización

• Diagramas de Despliegue

Consejos

• Diagramas de Artefactos

Consejos

• Modelado

Clase Estructurada
API
Dispositivos Físicos
Distribución de Artefactos
Ejecutables y Bibliotecas
Versiones Ejecutables
Tablas, Archivos y Documentos
Base de Datos Física
Código Fuente
Sistema Embebido
Sistema Cliente/Servidor
Sistema Distribuido

Francisco Ruiz - IS1

13.3

Bibliografía
• Básica

Booch, Rumbaugh y Jacobson (2006): El Lenguaje

Unificado de Modelado. 2ª edición.
Caps. 15, 26, 27, 30 y 31.

• Complementaria

Rumbaugh, Jacobson y Booch (2007): El Lenguaje

Unificado de Modelado. Manual de Referencia. 2ª edición.
Caps. 5 y 10.

Miles y Hamilton (2006): Learning UML 2.0.

Caps. 12 y 15.

Francisco Ruiz - IS1

13.4

Introducción
• Modelado Arquitectónico …

Nos referimos a la arquitectura física del sistema
No a la OTRA arquitectura.

• Mundo Real

En la construcción de un edificio, los planos son muy
importantes … pero finalmente, lo más importante es
dar lugar a una construcción REAL

• UML nos ofrece dos clases de elementos para

modelar la arquitectura física de un sistema:
Componentes
Nodos

Francisco Ruiz - IS1

13.5

Componentes

• Un Componente es una parte física reemplazable de un

sistema que conforma y proporciona la implementación de un
conjunto de interfaces.
Se utiliza para modelar elementos físicos que pueden hallarse en un

nodo

ejecutables, bibliotecas (DLLs), tablas, archivos, documentos, ...

Es una parte modular de un sistema que encapsula el estado y
comportamiento de un conjunto de clasificadores (p.e. clases).

Especifica un contrato de los servicios que proporciona y de los que

requiere en términos de interfaces requeridas y proporcionadas.
Es una unidad reemplazable que se puede sustituir en tiempo de

diseño o ejecución por otro componente que ofrezca la misma
funcionalidad en base a la compatibilidad de sus interfaces.

Francisco Ruiz - IS1

13.6

Componentes

• Propiedades de un Componente.
• Tres Principales:

Es una parte de un sistema.
Es reemplazable.
Conforma y proporciona la realización de un conjunto de interfaces.

• Adicionales:

Es una unidad de despliegue independiente.
Puede ser conectado con otros componentes.
En una aplicación dada existirá una única copia.
Realiza una función bien definida (cohesión física y lógica).
Abarca más de una colaboración de clases.
Existe en el contexto de una arquitectura bien definida.
Presupone una infraestructura tecnológica que se piensa utilizar.

Francisco Ruiz - IS1

13.7

Componentes
• Componentes. Notación.

Gráficamente se representan como un rectángulo con un icono

especial en la esquina superior derecha.

Normalmente se dibujan mostrando sólo su nombre.
Se pueden adornar con valores etiquetados o con compartimentos

adicionales.

Pueden ser estereotipados.

Agente.java

system::dialog.dll
{version=3.0.2.11}

agenteRiesgos.dll

Realiza
AgenteRiesgos
PoliticaRiesgos

Notación
UML 1.x

Francisco Ruiz - IS1

13.8

Componentes - Organización
• Los componentes se pueden agrupar en paquetes.
• También se pueden organizar mediante relaciones

entre ellos de:
Dependencia, generalización, asociación (incluida

agregación) y realización.

Un componente se puede construir a partir de otros

componentes (agregación).

Francisco Ruiz - IS1

13.9

Componentes vs Clases

• Se parecen a las clases en que:

tienen nombres, realizan interfaces, pueden participar en relaciones,

• Pero se diferencian en que:

Las Clases

Son abstracciones lógicas
Tienen operaciones y atributos

Los Componentes

Son fragmentos físicos del sistema
Tienen interfaces

Componente1

Componente

Int erfaz1

Int erfaz2

componente

agenteRiesgos.dll

Componente implementa

clases (relación de

dependencia)

clases

Francisco Ruiz - IS1

13.10

Componentes - Interfaz

• La relación entre componente e interfaz es importante.

Unos componentes implementan las interfaces y otros acceden a los

servicios proporcionados por esas interfaces.

Estas relaciones se pueden mostrar en forma icónica o expandida:

Componente usa el

interfaz

Componente realiza

el interfaz

Francisco Ruiz - IS1

13.11

Componentes - Interfaz

• Ejemplo de interfaces requeridas y proporcionadas.

Notación icónica (piruleta).

AsignacionItem

Seguimiento

<<component>>

Pedido

Persona

Factura

Interfaces

proporcionadas

ItemPedido

Interfaces
requeridas

Francisco Ruiz - IS1

13.12

Componentes - Interfaz

• Ejemplo de interfaces requeridas y proporcionadas.

Notación extendida.

<<Interface>>

Persona

findByNombre()
create()
getDetalles()

Interfaz

proporcionada

<<component>>

Pedido

<<Interface>>
ItemPedido

create()
validarDetalles()
addLineaPedido()

Interfaz
requerida

Francisco Ruiz - IS1

13.13

Componentes

• Conceptos de Componentes en UML 2:

Interfaz. Colección de operaciones que especifican un servicio

proporcionado o solicitado por una clase o componente.

Puerto. Una ventana específica de un componente encapsulado, que

acepta mensajes hacia y desde el componente, que son conformes
con las interfaces especificadas.

Estructura Interna. Implementación de un componente a través de

un conjunto de partes conectadas de una manera específica.

Parte. Especificación de un rol que forma parte de la implementación

de un componente.

Conector. Relación de comunicación entre dos partes o puertos

dentro del contexto de un componente.

Francisco Ruiz - IS1

13.14

Componentes - Puertos

• Un Puerto es una ventana explícita dentro de un

componente encapsulado.
En un componente encapsulado, todas las interacciones dentro y

fuera pasan a través de sus puertos.

Representa un punto de interacción entre una instancia de un

clasificador (clase, componente) con su entorno o con las instancias
que contiene (estructura interna).

Cuando se crea una instancia de un componente, se crean instancias

de sus puertos.

La instancia de un puerto es un objeto de una clase que implementa las

interfaces proporcionadas.

Un puerto tiene

Identidad (nombre).
Multiplicidad (número posible de instancias de un puerto dentro de una

instancia de componente). => Vector de Instancias del Puerto.

Francisco Ruiz - IS1

13.15

Componentes - Puertos
• Ejemplo. Puertos de un componente.

nombre de interfaz

Reservar

puerto

nombre de puerto

Cargar
espectáculos

Tarjetas de Crédito

interfaz requerida

ventas
normales

Venta Entradas

Vendedor Entradas

Venta Entradas

espectáculos

cobros

declaración de componente

ventas
prioritarias

interfaz proporcionada

Francisco Ruiz - IS1

13.16

Componentes – Estructura Interna
• La estructura interna de un componente está

formada por las partes que componen su
implementación junto con las conexiones entre
ellas.
Las partes pueden ser componentes conectados a través

de sus puertos.

Una parte es una unidad de implementación de un

componente, que tiene un nombre y un tipo.

Una instancia de un componente tiene una o más

instancias de cada una de sus partes.
Las partes tienen multiplicidad.

Francisco Ruiz - IS1

13.17

Componentes – Estructura Interna

• Ejemplo de Estructura Interna de un Compilador.

Compilador

lex:AnalizadorLexico

parse: Parser

tipo de la parte

parte

gen: Generador
DeCodigo

opt:Optimizador [1..3]

interfaz externa

Compilar

multiplicidad de la
parte

nombre de la parte

componente cuya estructura se define

Francisco Ruiz - IS1

13.18

Componentes – Estructura Interna

• Las partes en un componente juegan un papel similar a los

atributos de una clase.

Venta Billetes de Avión

:AsignacionDe
Asiento

ventasNormales:
Ventas

:GestionDeInventario

ventasPrioritarias:
Ventas

dos partes con
igual tipo

Francisco Ruiz - IS1

13.19

Componentes – Estructura Interna
• Una conexión entre dos puertos se denomina

conector y denota un enlace en una instancia del
componente.
Los componentes pueden ser conectados:

Directamente (mediante una línea entre ellos o sus puertos), o
Porque tienen interfaces compatibles (mediante junta circular).

Un conector de delegación (delegate) conecta un

puerto interno a uno externo.
Se representa mediante una flecha desde el puerto interno al

externo.

Actua como si el puerto interno fuese el externo, es decir,
cualquier mensaje llegado al puerto externo es transmitido
inmediatamente al puerto interno.

Francisco Ruiz - IS1

13.20

Componentes – Estructura Interna

• Ejemplo con conectores.

Ventas por Catálogo

Inventario

Realización

con
  • Links de descarga
http://lwp-l.com/pdf1073

Comentarios de: INGENIERÍA DEL SOFTWARE I - Tema 13 - Arquitectura Física del Sistema (en desarrollo OO) (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad