diff --git a/apps/faultmanagement/BUCK b/apps/faultmanagement/BUCK
index 9d59162..375ceff 100644
--- a/apps/faultmanagement/BUCK
+++ b/apps/faultmanagement/BUCK
@@ -8,6 +8,7 @@
     '//cli:onos-cli',
     '//utils/rest:onlab-rest',
     '//lib:javax.ws.rs-api',
+    '//utils/osgi:onlab-osgi',
 ]
 
 TEST_DEPS = [
@@ -16,6 +17,8 @@
     '//lib:jersey-test-framework-grizzly2',
     '//utils/osgi:onlab-osgi-tests',
     '//web/api:onos-rest-tests',
+    '//utils/osgi:onlab-osgi',
+    '//incubator/api:onos-incubator-api-tests',
 ]
 
 java_library(
diff --git a/apps/faultmanagement/fmmgr/pom.xml b/apps/faultmanagement/fmmgr/pom.xml
index 3e1f3bd..3ca2f58 100644
--- a/apps/faultmanagement/fmmgr/pom.xml
+++ b/apps/faultmanagement/fmmgr/pom.xml
@@ -47,8 +47,27 @@
         <dependency>
             <groupId>org.osgi</groupId>
             <artifactId>org.osgi.compendium</artifactId>
-            <version>5.0.0</version>
-            <type>jar</type>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-incubator-api</artifactId>
+            <version>${project.version}</version>
+            <classifier>tests</classifier>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onlab-osgi</artifactId>
+            <version>${project.version}</version>
+            <classifier>tests</classifier>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-api</artifactId>
+            <version>${project.version}</version>
+            <classifier>tests</classifier>
+            <scope>test</scope>
         </dependency>
     </dependencies>
 </project>
diff --git a/incubator/net/src/main/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/PollingAlarmProvider.java b/apps/faultmanagement/fmmgr/src/main/java/org/onosproject/faultmanagement/impl/PollingAlarmProvider.java
similarity index 98%
rename from incubator/net/src/main/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/PollingAlarmProvider.java
rename to apps/faultmanagement/fmmgr/src/main/java/org/onosproject/faultmanagement/impl/PollingAlarmProvider.java
index 7f1ee40..eae9a63 100644
--- a/incubator/net/src/main/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/PollingAlarmProvider.java
+++ b/apps/faultmanagement/fmmgr/src/main/java/org/onosproject/faultmanagement/impl/PollingAlarmProvider.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2016 Open Networking Laboratory
+ * Copyright 2016-present Open Networking Laboratory
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-package org.onosproject.incubator.net.faultmanagement.alarm.impl;
+package org.onosproject.faultmanagement.impl;
 
 import org.apache.felix.scr.annotations.Activate;
 import org.apache.felix.scr.annotations.Component;
diff --git a/incubator/net/src/test/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/PollingAlarmProviderTest.java b/apps/faultmanagement/fmmgr/src/test/java/org/onosproject/faultmanagement/impl/PollingAlarmProviderTest.java
similarity index 98%
rename from incubator/net/src/test/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/PollingAlarmProviderTest.java
rename to apps/faultmanagement/fmmgr/src/test/java/org/onosproject/faultmanagement/impl/PollingAlarmProviderTest.java
index 82108c7..3074dd5 100644
--- a/incubator/net/src/test/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/PollingAlarmProviderTest.java
+++ b/apps/faultmanagement/fmmgr/src/test/java/org/onosproject/faultmanagement/impl/PollingAlarmProviderTest.java
@@ -1,5 +1,5 @@
 /*
- * Copyright 2016 Open Networking Laboratory
+ * Copyright 2016-present Open Networking Laboratory
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package org.onosproject.incubator.net.faultmanagement.alarm.impl;
+package org.onosproject.faultmanagement.impl;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableSet;
diff --git a/incubator/net/BUCK b/incubator/net/BUCK
index 02f00bf..28ee974 100644
--- a/incubator/net/BUCK
+++ b/incubator/net/BUCK
@@ -14,9 +14,6 @@
     '//core/common:onos-core-common-tests',
     '//incubator/store:onos-incubator-store',
     '//core/store/serializers:onos-core-serializers',
-    '//utils/osgi:onlab-osgi',
-    '//utils/osgi:onlab-osgi-tests',
-    '//incubator/api:onos-incubator-api-tests',
 ]
 
 osgi_jar(
diff --git a/incubator/net/pom.xml b/incubator/net/pom.xml
index dc63226..0141425 100644
--- a/incubator/net/pom.xml
+++ b/incubator/net/pom.xml
@@ -96,14 +96,6 @@
             <groupId>org.apache.felix</groupId>
             <artifactId>org.apache.felix.scr.annotations</artifactId>
         </dependency>
-
-        <dependency>
-            <groupId>org.onosproject</groupId>
-            <artifactId>onlab-osgi</artifactId>
-            <version>${project.version}</version>
-            <classifier>tests</classifier>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 
     <build>
diff --git a/incubator/net/src/main/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/package-info.java b/incubator/net/src/main/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/package-info.java
deleted file mode 100644
index 168e055..0000000
--- a/incubator/net/src/main/java/org/onosproject/incubator/net/faultmanagement/alarm/impl/package-info.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- * Copyright 2015-present Open Networking Laboratory
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-/**
- * Abstractions for interacting with alarms. An alarm is a persistent indication
- * of a fault that clears only when the triggering condition has been resolved.
- */
-package org.onosproject.incubator.net.faultmanagement.alarm.impl;
