Diagramacin de
Arquitecturas en UML
Arquitectura de Objetos
Distribuidos
Tipos de diagramas
Diagramas de paquetes
Descomposicin en subsistemas (grupos de clases)
Diagramas de componentes
Componentes de software (API s)
Diagramas de emplazamiento (deployment)
Mapeo del sistema en hardware
Diagramas de secuencias
Comportamiento dinmico del sistema
Diagramas de Paquetes
Los paquetes son usados en diagramas de
clases para agrupar clases relacionadas
til cuando la complejidad del diagrama de
clases dificulta realizar el diagrama
En arquitecturas permite agrupar clases y
minimizar dependencia (bajo acoplamiento)
Elementos de
diagramacin:
Paquete
Paquete
Dependencia
Ejemplo Diagrama de paquetes
IU captura de
pedidos
IU lista
de correo
AWT
Aplicacin de
captura de pedidos
Pedidos
Aplicacin de
lista de correos
Clientes
EjemploDiagrama de paquetes (2)
IU captura de
pedidos
IU lista
de correo
AWT
Aplicacin de
captura de pedidos
Aplicacin de
lista de correos
Dominio
Pedidos
Clientes
Interfaz Oracle
Interfaz con
base de datos
{abstracta}
Interfaz MySQL
Componente de software
Un componente de software es un
elemento de software que:
Cumple con ciertos estndares de interaccin
y composicin
Puede ser emplazado en forma independiente
y sin modificaciones
Definiciones
Componente software
Unidad de composicin de aplicaciones de software,
que posee un conjunto de interfaces y satisface un
conjunto de requisitos, y que puede ser desarrollado,
adquirido e incorporado al sistema y compuesto con
otros componentes de forma independiente, en
tiempo y espacio.
Sistema basado en componentes
Conjunto de mecanismos y herramientas que
permiten la creacin e interconexin de componentes
de software, junto con una coleccin de servicios
para facilitar las labores de los componentes que
residen y se ejecutan en l.
Definiciones (2)
Modelo de componentes
Definicin de la forma de sus interfaces y los
mecanismos para interconectarlos (DCE, COM,
JavaBeans, CORBA, .NET framework).
Plataforma de componentes
Entorno de desarrollo y de ejecucin de componentes
que permiten aislar la mayor parte de las dificultades
conceptuales y tcnicas que conlleva la construccin
de aplicaciones basadas en los componentes de un
modelo de componentes concreto (Windows - COM,
EJB, Orbix - Corba, .NET).
Definiciones (3)
Interfaz de un componente
Determina las operaciones que el componente
implementa como las que precisa utilizar de otros
componentes durante la ejecucin. Usualmente son
los mtodos pblicos que el componente implementa
ms los eventos que emite.
Eventos
Especifican la forma en la que el componente notifica
al exterior una respuesta a un estmulo externo o bien
un cambio en una condicin interna. Se especifica la
condicin para que se produzca, pero no cmo
tratarlo.
Middleware de componentes
Container
Container
Middleware Bus
Replication
Security
A/V Streaming
Persistence
Scheduling
Notification
Load Balancing
Componentes encapsulan la lgica de
la aplicacin
Componentes interactan via puertos
Ofrecen interfaces, o facetas
Requieren puntos de conexin, o
receptculos
Depsitos & fuentes de eventos
Atributos
Contenedores ofrecen un ambiente de
ejecucin para componentes con
requerimientos comnes de
operacin
Componentes/contenedores pueden
tambin
Communicarse via un middleware
Reutilizar servicios del middleware
Diagramas de Componentes
Un componente es una parte fsica de un
sistema (ejecutable, librera, archivo, etc.)
Implementacin de una o ms clases
Un componente implementa (o realiza)
una interfaz
Elementos de
diagramacin:
Interfaz
:componente.java
Componente
Conexin
Ejemplo: Diagrama de
componentes
imagen.java
componente.java
<<interface>>
ObservadorDeImagen
imagen.java
abortar: int {final static}
error: int {final static}
componente.java
actualizarImagen(): Boolean
El componente componente.java realiza la interfaz
ObservadorDeImagen
El componente imagen.java depende del componente
componente.java
Diagramas de Emplazamiento
Muestra la relacin entre componentes de
software y de hardware
Cada nodo representa una unidad de
cmputo
Muestra donde se ejecuta cada paquete
Elementos de
diagramacin:
Nodo
:Componente
Componente
Conexin
Ejemplo: diagrama de
emplazamiento
Servidor Web
TCP/IP
:App servlet
:Servidor web
Cliente PDA
:Browser web
Cliente PDA
:Browser Wap
WAP
Ejemplo: Diagrama de
Emplazamiento
Ejemplo: Diagrama de
Emplazamiento
Ejercicio
La Universidad del Caribe cuenta con 6
facultades ubicadas en distintos
municipios del estado de Quintana Roo.
Cada universidad cuenta con su propia
biblioteca y se desea que cualquier
estudiante o profesor de la universidad
pueda consultar, y pedir a prstamo
cualquier libro de las facultados
Ejercicio
Se desea que se puedan realizar las
consultas y solicitudes de prstamo a
travs de un browser.
El prstamo entre bibliotecas se realiza
cada viernes.
Hacer un diagrama de arquitectura para
dicho sistema.