deploymentumlcloudpaasiaas

UML Deployment Diagram for IaaS and PaaS Cloud Systems


I would like to model the following situation using a UML deployment diagram.

A small command and control machine instance is spawned on an Infrastructure as a Service cloud platform such as Amazon EC2. This instance is in turn responsible for spawning additional instances and providing them with a control script NumberCruncher.py either via something like S3 or directly as a start up script parameter if the program is small enough to fit into that field. My attempt to model the situation using UML deployment diagrams under the working assumption that a Machine Instance is a Node is unsatisfying for the following reasons.

Lastly:

What about Platform as a Service? The whole Machine Instance is a Node idea completely breaks down at that point. What on earth do you do in that case? Treat the entire PaaS provider as a single node and forget about the details?

IaaS Nodes are Machine Instances


Solution

  • Regarding your first question:

    Is there anyway to show the equivalent of deployment regions / data-centres in the deployment diagram?

    I generally use Notes for that.

    And your second question:

    What about Platform as a Service? The whole Machine Instance is a Node idea completely breaks down at that point. What on earth do you do in that case? Treat the entire PaaS provider as a single node and forget about the details?

    I would say, yes for your last question. And I suppose you could take more details from the definition of the deployment model and its elements. Specially at the end of this paragraph:

    They [Nodes] can be nested and can be connected into systems of arbitrary complexity using communication paths. Typically, Nodes represent either hardware devices or software execution environments.

    and

    ExecutionEnvironments represent standard software systems that application components may require at execution time.

    source: http://www.omg.org/spec/UML/2.5/Beta1/