Está en la página 1de 12

Ingeniería del Software

3º I.T.I.S y I.T.I.G

MODULO 2:

Tema 12:
Modelo de Implementación:
Diagramas de Componentes y Despliegue

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 1

Diagrama de Componentes

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 2

1
Ingeniería del Software
3º I.T.I.S y I.T.I.G

Diagrama de Componentes

§ Los diagramas de componentes describen los


elementos físicos del sistema y sus relaciones

§ Muestran las opciones de realización


incluyendo código fuente, binario y ejecutable

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 3

Diagramas de Componentes

§ Los componentes representan todos los tipos de


elementos software que entran en la fabricación
de aplicaciones informáticas
§ Pueden ser simples archivos, paquetes,
bibliotecas cargadas dinámicamente, etc.

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 4

2
Ingeniería del Software
3º I.T.I.S y I.T.I.G

Diagramas de Componentes

§ La representación gráfica es la siguiente:

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 5

… Diagramas de Componentes
§ Ejemplo:

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 6

3
Ingeniería del Software
3º I.T.I.S y I.T.I.G

… Diagramas de Componentes
§ UML define cinco estereotipos estándar que se
aplican a los componentes:
§ Executable: Especifica un componente que se puede ejecutar
en un nodo.
§ Library: Especifica una biblioteca de objetos estática o
dinámica.
§ Table: Especifica un componente que representa una tabla de
una base de datos.
§ File: Especifica un componente que representa un documento
que contiene código fuente o datos.
§ Document: Especifica un componente que representa un
documento.

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 7

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

NewPackageSpec NewPackageSpec2

Dependencia entre
dos componentes

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 8

4
Ingeniería del Software
3º I.T.I.S y I.T.I.G

Diagrama de Componentes
§ Ejemplo: Modelado de ejecutables y bibliotecas

<<executable>>
<<library>>
Animator.exe
dlog.dll
{version=4.1}

<<library>>
<<library>>
render.dll
wrfrme.dll

<<library>>

raytrce.dll

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 9

Subsistemas

§ Los distintos componentes pueden agruparse en


paquetes según un criterio lógico y con vistas a
simplificar la implementación
§ Son paquetes estereotipados en <<subsistemas>>

<<s u b s i s tem a > >


NewPackage4

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 10

5
Ingeniería del Software
3º I.T.I.S y I.T.I.G

… Subsistemas

§ Los subsistemas organizan la vista de realización de un sistema

§ Cada subsistema puede contener componentes y otros


subsistemas

§ La descomposición en subsistemas no es necesariamente una


descomposición funcional

§ La relación entre paquetes y clases en el nivel lógico es el que


existe entre subsistemas y componentes en el nivel físico

§ Paquetes (Categorias) y clases en el nivel lógico. Paquetes


(Subsistemas) y componentes en el nivel físico

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 11

Diagramas de Despliegue/Distribución

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 12

6
Ingeniería del Software
3º I.T.I.S y I.T.I.G

Diagramas de Distribución
§ Los Diagramas de Distribución muestran la disposición física de los
distintos nodos que componen un sistema y el reparto de los
componentes sobre dichos nodos

Nodo

§ Un nodo es un elemento físico que existe en tiempo de ejecución y


representa un recurso computacional, que generalmente tiene algo
de memoria y, a menudo, capacidad de procesamiento.

§ Los nodos se utilizan para modelar la topología del hardware


sobre el que se ejecuta el sistema. Representa típicamente un
procesador o un dispositivo sobre el que se pueden desplegar los
componentes.
Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 13

Diagramas de Distribución
§ Los componentes son los elementos que participan en la ejecución de un
sistema. Los nodos son los elementos donde se ejecutan los componentes.

§ Los componentes representan el empaquetamiento físico de los elementos


lógicos. Los nodos representan el despliegue físico de los componentes.

§ La relación entre un nodo y el componente que despliega puede mostrarse con


una relación de dependencia, o listando los nodos desplegados en un
compartimiento adicional dentro del nodo.

Nodo

Ventas.exe clientes.exe

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 14

7
Ingeniería del Software
3º I.T.I.S y I.T.I.G

… Diagramas de Distribución
§ Los estereotipos permiten precisar la naturaleza del equipo:
• Procesadores: Nodo con capacidad de procesamiento. Puede
ejecutar un componente.
• Dispositivos: Nodo sin capacidad de procesamiento. Representa
cualquier otro dispositivo hardware.

§ Los nodos se relacionan mediante conexiones bidireccionales (en


principio) que pueden a su vez estereotiparse.

§ Las conexiones se modelan como asociaciones, con todas las


características que implica.

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 15

… Diagrama de Distribución

§ Ejemplo de conexión entre nodos:

<<Cliente>> <<Servidor>>
Terminal Punto <<TCP/IP>>
Base de
de Venta Datos

<<RDSI>>
<<RDSI>>
Podemos distinguir tipos Control
de nodos y conexiones
por estereotipado

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 16

8
Ingeniería del Software
3º I.T.I.S y I.T.I.G

… Diagrama de Distribución
§ Ejemplo de conexión entre nodos:
<<10-T Ethernet>>
: terminal

Despliega
User.exe : servidor
velocidadDelProcesador= 300 Mhz : unidad RAID
memoria = 128 Mb

Despliega
dbadmin.exe
tdtmstr.exe

: consola

Despliega <<RS-232>>
admin.exe
config.exe

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 17

Conclusiones

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 18

9
Ingeniería del Software
3º I.T.I.S y I.T.I.G

Claves en el Desarrollo de SI

Notación
UML

Herramientas Proceso
p.e. Rational Rose p.e. Proceso Unificado

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 19

Contexto de Desarrollo: Grado de Complejidad

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 20

10
Ingeniería del Software
3º I.T.I.S y I.T.I.G

Modelado de SI: Algunas Reflexiones

§ Modelar para la concebir el sistema y/o para la


documentarlo
§ Pragmatismo, los modelos deben ser útiles
§ Sencillez y Elegancia
§ Distintos nivel de abstracción, diferentes modelos
§ Seguimiento de transformaciones durante el proceso
(Traceability)
§ Sincronización de modelos
§ Dificultades para la introducción de técnicas y
herramientas de modelado

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 21

... Finalmente

§ Apostar por enfoque Orientado a Objetos


usando notación UML
§ Problemas actuales en implementación, al usar
entornos de programación visual y/o bases de
datos relacionales
§ Posibles mejoras a medio plazo
• Evolución: Uso de BDOO y/o mejoras en los LPOO
• Revolución: Generación Automática de Código a
partir de Modelos OO (Compilación de Modelos)

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 22

11
Ingeniería del Software
3º I.T.I.S y I.T.I.G

Bibliografía Recomendada
UML
• www.omg.org/uml/
• Meta-links www.celigent.com/uml/ y www.cetus-links.org/oo_uml.html
• Pierre-Alain Muller “Instant UML”
• Martin Fowler, “UML Destilled” (“UML Gota a Gota”)
• Terry Quatrani, “Visual Modeling ...”, un caso de estudio

Herramientas CASE
• Herramientas basadas en UML
www.objectsbydesign.com/tools/umltools_byPrice.html
• International Council in SE (INCOSE) www.incose.org/tools/
• Herramientas basadas en UML
www.objectsbydesign.com/tools/umltools_byPrice.html
Otras
• Revista IEEE Software, Conferencias: OOPSLA, ECOOP
• Patrones www.enteract.com/∼bradapp/docs/patterns-intro.html,
• Tutoriales en inglés www.celigent.com/omg/umlrtf/tutorials.htm

Ingeniería del Software (3º I.T.I.S., I.T.I.G.) Módulo 2. Tema 12: Modelo de Implementación 23

12

También podría gustarte