diff --git a/planetstack/core/models/__init__.py b/planetstack/core/models/__init__.py
index 56a67ba..90bb089 100644
--- a/planetstack/core/models/__init__.py
+++ b/planetstack/core/models/__init__.py
@@ -1,5 +1,5 @@
 from .plcorebase import PlCoreBase
-from .deploymentnetwork import DeploymentNetwork
+from .deployment import Deployment
 from .site import Site
 from .site import SitePrivilege
 from .image import Image
diff --git a/planetstack/core/models/deployment.py b/planetstack/core/models/deployment.py
index 4068ee9..d38115f 100644
--- a/planetstack/core/models/deployment.py
+++ b/planetstack/core/models/deployment.py
@@ -4,8 +4,8 @@
 
 # Create your models here.
 
-class DeploymentNetwork(PlCoreBase):
-    name = models.CharField(max_length=200, unique=True, help_text="Name of the Deployment Network")
+class Deployment(PlCoreBase):
+    name = models.CharField(max_length=200, unique=True, help_text="Name of the Deployment")
 
     def __unicode__(self):  return u'%s' % (self.name)
 
diff --git a/planetstack/core/models/node.py b/planetstack/core/models/node.py
index a249628..fcc3a6a 100644
--- a/planetstack/core/models/node.py
+++ b/planetstack/core/models/node.py
@@ -2,13 +2,13 @@
 from django.db import models
 from core.models import PlCoreBase
 from core.models import Site
-from core.models import DeploymentNetwork
+from core.models import Deployment
 
 # Create your models here.
 
 class Node(PlCoreBase):
     name = models.CharField(max_length=200, unique=True, help_text="Name of the Node")
     site  = models.ForeignKey(Site, related_name='nodes')
-    deploymentNetwork  = models.ForeignKey(DeploymentNetwork, related_name='nodes')
+    deployment = models.ForeignKey(Deployment, related_name='nodes')
 
     def __unicode__(self):  return u'%s' % (self.name)
diff --git a/planetstack/core/models/serviceclass.py b/planetstack/core/models/serviceclass.py
index aa6b75d..ce3eaee 100644
--- a/planetstack/core/models/serviceclass.py
+++ b/planetstack/core/models/serviceclass.py
@@ -2,7 +2,7 @@
 from django.db import models
 from core.models import PlCoreBase
 from core.models import Site
-from core.models import DeploymentNetwork
+from core.models import Deployment
 
 # Create your models here.
 
diff --git a/planetstack/core/models/serviceresource.py b/planetstack/core/models/serviceresource.py
index 3b25ffe..e849425 100644
--- a/planetstack/core/models/serviceresource.py
+++ b/planetstack/core/models/serviceresource.py
@@ -2,7 +2,7 @@
 from django.db import models
 from core.models import PlCoreBase
 from core.models import Site
-from core.models import DeploymentNetwork
+from core.models import Deployment
 from core.models import ServiceClass
 
 # Create your models here.
diff --git a/planetstack/core/models/site.py b/planetstack/core/models/site.py
index 8626a0d..db4b1ef 100644
--- a/planetstack/core/models/site.py
+++ b/planetstack/core/models/site.py
@@ -1,7 +1,7 @@
 import os
 from django.db import models
 from core.models import PlCoreBase
-from core.models import DeploymentNetwork
+from core.models import Deployment
 
 class Site(PlCoreBase):
 
@@ -15,7 +15,7 @@
     is_public = models.BooleanField(default=True, help_text="Indicates the visibility of this site to other members")
     abbreviated_name = models.CharField(max_length=80)
 
-    deployments = models.ManyToManyField(DeploymentNetwork, blank=True, related_name='sites')
+    deployments = models.ManyToManyField(Deployment, blank=True, related_name='sites')
 
     def __unicode__(self):  return u'%s' % (self.name)
 
diff --git a/planetstack/core/models/slice.py b/planetstack/core/models/slice.py
index c5edddb..cc7dcce 100644
--- a/planetstack/core/models/slice.py
+++ b/planetstack/core/models/slice.py
@@ -4,7 +4,7 @@
 from core.models import Site
 from core.models import User
 from core.models import Role
-from core.models import DeploymentNetwork
+from core.models import Deployment
 from core.models import ServiceClass
 
 # Create your models here.
diff --git a/planetstack/core/models/sliver.py b/planetstack/core/models/sliver.py
index ff074a6..03fa1d8 100644
--- a/planetstack/core/models/sliver.py
+++ b/planetstack/core/models/sliver.py
@@ -7,7 +7,7 @@
 from core.models import Slice
 from core.models import Node
 from core.models import Site
-from core.models import DeploymentNetwork
+from core.models import Deployment
 
 # Create your models here.
 class Sliver(PlCoreBase):
@@ -19,7 +19,7 @@
     key = models.ForeignKey(Key, related_name='slivers')
     slice = models.ForeignKey(Slice, related_name='slivers')
     node = models.ForeignKey(Node, related_name='slivers')
-    deploymentNetwork = models.ForeignKey(DeploymentNetwork, verbose_name='deployment', related_name='sliver_deploymentNetwork')
+    deploymentNetwork = models.ForeignKey(Deployment, verbose_name='deployment', related_name='sliver_deploymentNetwork')
     numberCores = models.IntegerField(verbose_name="Number of Cores", help_text="Number of cores for sliver", default=0)
 
 
