In UML, un componente può essere inserito all'interno di un nodo?

2

nei diagrammi di implementazione UML, l'elemento nodo viene utilizzato per rappresentare una "risorsa computazionale" (in altre parole, qualcosa che può eseguire il software).

So che i nodi potrebbero avere altri nodi posizionati al loro interno (per implicare il nidificazione) e che potrebbero avere artefatti posizionati al loro interno (per implicare la relazione di distribuzione, cioè l'artefatto che viene distribuito al nodo).

Tuttavia, ho trovato anche un paio di illustrazioni con elementi componenti collocati all'interno di un nodo, che non sono sicuro di come interpretare.

Ecco cosa mi piacerebbe sapere:

  • È legale collocare un componente all'interno di un nodo?
  • In caso affermativo, che cosa implica esattamente: il componente che viene distribuito nel nodo (che non sono sicuro sia consentito) o il nodo costituito dal componente?
  • In caso contrario, la specifica lo dice esplicitamente in qualsiasi momento?
posta vvye 26.01.2016 - 16:33
fonte

1 risposta

3

Strettamente parlando, no, non è legale collocare un componente all'interno di un nodo. Le specifiche non lo dicono esplicitamente, ma non sarebbe fattibile che le specifiche vietassero esplicitamente ogni errore che si possa fare.

Personalmente, penso che sia accettabile disegnare un componente all'interno di un nodo. Lo interpreterei come un artefatto distribuito che implementa quel componente.

Alcune citazioni pertinenti dalla specifica di UML 2.5:

11.6.3.1: A Component may be manifested by one or more Artifacts, and in turn, that Artifact may be deployed to its execution environment.

19.4.3: A Node is computational resource upon which Artifacts may be deployed. Nodes may be further sub-typed as Devices and ExecutionEnvironments.

19.2.4: System elements deployed on a DeployedTarget, and Deployments that connect them, may be drawn inside the perspective cube.

Penso che DeployedTarget sia un errore di battitura o un sinonimo di DeploymentTarget, che è una superclasse di Node. "Elementi di sistema" non è ben definito nelle specifiche. Ho trovato questa frase:

19.2.3: System elements are represented as DeployedTargets

Ma penso che questo non dovrebbe essere trattato come una definizione formale della parola 'elemento di sistema' come usato in 19.2.4. Penso che sia chiaro che qualsiasi cosa disegnata all'interno di un nodo dovrebbe essere qualcosa implementata su quel nodo e le uniche distribuzioni menzionate sono le distribuzioni di artefatti.

    
risposta data 27.01.2016 - 21:17
fonte

Leggi altre domande sui tag