Merging of TOSCA Cloud Topology Templates - IAAS
Merging of TOSCA Cloud Topology Templates - IAAS
Merging of TOSCA Cloud Topology Templates - IAAS
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2 Fundamentals<br />
2 Fundamentals<br />
This chapter provides the fundamentals necessary for this thesis. In Section 2.1 the definitions<br />
from Graph Theory used throughout this work are provided. Section 2.2 gives a brief<br />
introduction to <strong>Cloud</strong> Computing and Section 2.3 presents the syntax <strong>of</strong> the <strong>TOSCA</strong> specification<br />
in detail. Finally, Section 2.4 defines the fundamentals and the approach for designing<br />
extendable frameworks.<br />
2.1 Graph Theory<br />
One <strong>of</strong> the underlying theoretical principles <strong>of</strong> this thesis is graph theory. This section introduces<br />
the terms and definitions used throughout the rest <strong>of</strong> the thesis.<br />
Informally a graph or general graph is a set <strong>of</strong> nodes, also called vertices, and a set <strong>of</strong> edges.<br />
There exist many slightly different formal definitions and notations <strong>of</strong> graphs. The formal<br />
definitions in this master thesis are based on [47], [8] and [48].<br />
Definition 2.1 (Undirected graph): An undirected graph G = (V, E) consists <strong>of</strong> a set V <strong>of</strong> vertices<br />
and a set E <strong>of</strong> edges and every e ∈ E <strong>of</strong> G connects two, not necessarily distinct, vertices <strong>of</strong><br />
V. For every graph G, the following holds true: V ∩ E = ∅. A graph G is called simple if it has<br />
no edge ending at the same vertex (loop) or parallel edges.<br />
Note: It is assumed that the sets and <strong>of</strong> a graph are finite.<br />
Definition 2.2 (Incidence and adjacency): Given a graph G = (V, E) and an edge e ∈ E, one<br />
can write e = {u, v} whereas u, v ∈ V are vertices that are called the ends <strong>of</strong> e. If v is an end <strong>of</strong><br />
e, we say v is incident to e. Two vertices that are the ends <strong>of</strong> an edge e, are called adjacent to<br />
each other. The same holds true for two edges that are incident with a common vertex.<br />
Definition 2.3 (Subgraph): Given a graph G = (V, E), a graph H = (W, F) is a subgraph <strong>of</strong> G,<br />
if W ⊆ V and F ⊆ E. We say G contains H or H is contained in G and write G ⊇ H or H ⊆ G<br />
respectively.<br />
Definition 2.4 (Path and cycle): Given a graph G = (V, E) a path is a linear sequence <strong>of</strong> vertices<br />
that are adjacent if they are consecutive in the sequence and nonadjacent otherwise. No<br />
vertex is repeated in the sequence. A cycle is a closed sequence where u = u and u , u ∈ V,<br />
i.e. the starting and ending vertex are identical.<br />
Definition 2.5 (Connected graph and components): A graph G = (V, E) is connected if there<br />
exists a path from every u ∈ V to every v ∈ V. Otherwise G is called disconnected. A maximum<br />
connected subgraph is called a component.<br />
Definition 2.6 (Directed graph): A directed graph, or short digraph, = (, ) consists <strong>of</strong> a<br />
set <strong>of</strong> vertices and a set <strong>of</strong> directed edges (arcs) such that to every ∈ a unique ordered<br />
pair (, ) ∈ has been assigned. The vertex u is called tail and the vertex v is called head <strong>of</strong><br />
the arc = (, ). A loop is an arc = (, ) where head and tail are the same vertices. Two<br />
5