Tema 8. Diagrama d’estructures compostes, components i...

Preview:

Citation preview

Novembre 2007

Departament de Llenguatges i Sistemes Informàtics3r Enginyeria Tècnica en Informàtica de Sistemes

IS31.Projectes Informàtics de SistemesCurs 2007/2008

Professora: Reyes Grangel Seguer

Castelló, Spain

Tema 8. Diagrama d’estructures compostes, components i desplegament

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 2IS31

Sessió 8: Com representar els components SW i HW?

� Abans de la classe

• Feu una llista dels components SW i HW que necessitaríeu per implementar el vostre projecte o el cas pràctic

� Durant la classe

• Continguts

− Conceptes bàsics

− Diagrama d’estructures compostes

− Diagrama de components

− Diagrama de desplegament

• Exercici 8:

− Realitzeu el diagrama de desplegament del vostre projecte o cas pràctic

� Després de la classe

• Desenvolupeu el diagrama de components del vostre projecte o cas pràctic i refineu la resta de diagrames que heu realitzat si és necessari

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 3IS31

Diagrames en UML2

Tema 4

Tema 4

Tema 3Tema 7 Tema 7

Tema 6

Tema 6

Tema 8

Tema 8Tema 4

Tema 8

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 4IS31

Diagrama d’estructures compostes

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 5IS31

Diagrama d’estructures compostes

�Novetat en UML 2

�Es pot utilitzar en sistemes complexos en els quals siga necessari fer descomposicions

�Estructura � conjunt d‘elements interconnectats que representen les instàncies d'execució que col�laboren a traves d'enllaços de comunicació per a una certa funcionalitat

�Permet descriure• L’estructura interna d’un classificador

• L’ús d'una col�laboració

�Constructors bàsics• Classificador estructurat

• Connector

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 6IS31

Classificador estructurat

�Representa un classificador el comportament del qual pot ser completament o parcialment descrit per una col�laboració de les instàncies pròpies o referenciades

�Metamodel [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 7IS31

Connector

�Enllaç de comunicació entre les instàncies de classes que intervenen en una estructura interna

�Metamodel [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 8IS31

Exemple

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 9IS31

Port

� Permet proposar una funcionalitat a partir d'una estructura composta sense tenir que exposar els detalls interns

� Representa un punt d'interacció entre un classificador i el seu entorn

� Per defecte, els ports són públics, però poden ser privats per necessitats internes

� Té 2 atributs• isService: Boolean

− true= el port es utilitzat per mantenir pública una funcionalitat

• isBehavior: Boolean− true= el port sol�licitarà la part comportamental del classificador

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 10IS31

Port

�Metamodel [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 11IS31

Exemple

�Port de servei

�Port de comportament

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 12IS31

Col�laboració

�Permet documentar com una funcionalitat està implementada dins d'un sistema

�Tenir en compte que un sistema orientat a objectes està organitzat en un conjunt d'objectes qui col�laboren

�Una col�laboració és una estructura d‘elements (rols) que col�laboren

�Metamodel [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 13IS31

Ús de Col�laboració [5]

�Representa una aplicació d'una col�laboració dins d’una situacióespecífica impliquen instàncies o classes que tenen els rols de la col�laboració

CollaborationUse

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 14IS31

Ús de Col�laboració

�Metamodel [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 15IS31

Notació [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 16IS31

Notació [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 17IS31

Diagrama de components

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 18IS31

Especificació Cos Genèric Especificacióde tasca

Cosde tasca

Especificació + Cos Programaprincipal

Especificaciósubprograma

Cossubprograma

Diagrama de components

�Representació d’origen [9]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 19IS31

Component

�Un component representa una part modular de un sistema que encapsula els seus continguts i la manifestació de la qual és reemplaçable dins del seu entorn

�Un component defineix el seu comportament en funció de les interfícies proporcionades i requerides

�Encapsula el estat i el comportament de un o diversos classificadors• Té una vista externa "Black Box View"

− Operacions i propietats públiques

• Té una vista interna "White Box View"− Operacions i propietats privades

�Especifica un contracte formal de serveix• Amb els seus clients (interfície proveïda)

• Amb els seus proveïdors (interfície demandada)

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 20IS31

Components en UML 1.4

�Notació• Encara utilitzat dins de UML 2.0, però desaconsellat

• "For backward compatibility reasons, the UML 1.4 notation with protruding rectangles can still be used." [5]

�Estereotips

Nom

executable

document fitxer llibreriataula

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 21IS31

Components en UML 2.0 [5]

�Vista "Black Box"

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 22IS31

Altres representacions dels components [5]

�Representació dels compartiments• <<provided interface>>

• <<required interface>>

�Compartiments suplementaris• <<realization>>

− Classificadors que implementa el component

• <<artifacts>>− Objectes SW que implementa realment l'objecte (.ddl, .jar, etc.)

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 23IS31

Component contenint components [5]

Port

Connectorde delegació

Connector d'assemblatge

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 24IS31

Metamodel [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 25IS31

Diagrama de desplegament

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 26IS31

Diagrama de desplegament

�Objectiu• Definir i modelar les modalitats d’instal�lació i implementació dels components

lògics sobre els dispositius materials

�Components• Els elements lògics estan representats per artefactes

• Els recursos materials necessaris estan representats per nodes

• Les comunicacions entre els nodes està modelada per els camins de comunicació

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 27IS31

Artefacte

� Representa un element lògic dels sistema

� Pot tenir: propietats i operacions

� Es pot instanciar

� Exemples

• Fitxer font

• Script

• Executable

• Taula

• Document de text

• Mail

• …

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 28IS31

Manifestació

�Un artefacte és una manifestació d’un altre components UML (per exemple: un component)

�S’anomenava implementació en UML 1.x

�Metamodel [5]

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 29IS31

Nodes

� Els nodes són recursos que poden executar els artefactes

� Els nodes són realitzats per els camins de comunicació (communications path)

� Un node pot contenir altres nodes

� Especialitzat en

• Entorn d'execució (Execution environment)

• Dispositiu material (Device)

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 30IS31

Dispositiu material

� Un dispositiu és un recurs computacional físic amb capabilitat de processament sobre els quals els artefactes poden ser desplegats per a la seua execució

� Exemples• Estació de treball

• Servidor d’aplicacions

• Servidor de dades

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 31IS31

Entorn d'execució

� És un node que ofereix un entorn d’execució per tipus específics de components que estan desplegats sobre ell en forma de artefactes executables

� Exemple• Contenidor J2EE

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 32IS31

Camí de comunicació

�Representa una comunicació genèrica entre dos nodes

�Comunicació bidireccional per defecte

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 33IS31

Especificació de desplegament

�Conjunt de propietats que especifica la forma com un artefacte ha de ser desplegat

�És una especialització d’un artefacte

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 34IS31

Notació

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 35IS31

Notació

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 36IS31

Notació

Presentació i planificació del 1r semestreTema 8. Diagrama d’estructures compostes, components i desplegament © Reyes GrangelNovembre 2007 37IS31

Bibliografia

[2] Martin Fowler. UML Distilled: A Brief Guide to the Standard Object Modeling Language. Addison-Wesley, 2003.

[5] OMG. Unified Modeling Language: Superstructure, version 2.0. Object Management Group, version 2.0 formal/05-07-04 edition, August 2005.

[7] Pascal Roques. Les Cahiers du programmeur UML. Eyrolles, 2002.

[8] Pascal Roques and Franck Vallée. UML 2 en action. Eyrolles, 2004.

[9] Grady Booch. Object Oriented Design with applications. The Benjamin/Cummings Publishing Company, 1990.