diff --git a/Fabric/Tests/functional.py b/Fabric/Tests/functional.py
index 663fc2f..499ef94 100755
--- a/Fabric/Tests/functional.py
+++ b/Fabric/Tests/functional.py
@@ -36,7 +36,7 @@
    
 class FabricSW_OF_PacketInUDP_TC_0010( base_tests.SimpleDataPlane ):
     """ 
-    Verify ACL rule for IP_PROTO=2 wont match a UDP packet and a rule for IP_PROTO=17 WILL match a UDP packet.
+    To verify the switch can trap an UDP packet and send it to controller and a non-conforming packet does not match the flow.
     """
 
     def runTest( self ):
@@ -136,7 +136,7 @@
 
 class FabricSW_OF_PacketInArp_TC_0005( base_tests.SimpleDataPlane ):
     """
-    Verify Packet-in message from eth_type 0x806 on ACL table
+    To verify the switch can trap an ARP request and send it to controller.
     """
 
     def runTest( self ):
@@ -227,7 +227,7 @@
 
 class FabricSW_OF_L2FloodQinQ_TC_0015( base_tests.SimpleDataPlane ):
     """
-    Verify Vlan based flooding of QinQ based on its outer vlan
+    To verify the switch can flood Q-in-Q frames based on its outer vlan-id.
     """
 
     def runTest( self ):
@@ -313,7 +313,7 @@
 
 
 class FabricSW_OF_L2UnicastTagged_TC_0020( base_tests.SimpleDataPlane ):
-    """ Verify Bridging works: match(VID, DST_MAC)> fwd(port) """
+    """ To verify the switch can match frames based on VLAN-ID and MAC address and forward the packet out a data port. """
 
     def runTest( self ):
 
@@ -352,12 +352,7 @@
 
 class FabricSW_OF_Bridging_TC_0001( base_tests.SimpleDataPlane ):
     """
-    Verify bridging works including flooding with different vlans
-    ports[0] has vlan 31 untagged
-    ports[1] has vlan 31 untagged (native) and vlan 41 tagged
-    ARP request should be flooded
-    ARP reply should be forwarded by bridging rule
-    Both arp messages should also be copied to controller
+    Verify bridging, flooding and trapping of control packets to controller works with VLAN tagged and untagged packets.
     """
 
     def runTest( self ):
@@ -533,7 +528,7 @@
 
 class FabricSW_OF_Mtu1500_TC_0035( base_tests.SimpleDataPlane ):
     """
-    Verifies basic mtu limits
+    To verify the switch owners the MTU limits.
     """
     # Read config parameters from JSON file
     ROOT_DIR = os.path.dirname(os.path.realpath(__file__))
@@ -614,7 +609,7 @@
 
 
 class FabricSW_OF__32UcastTagged_TC_0055( base_tests.SimpleDataPlane ):
-    """ Verify /32 IP forwarding to L3 Unicast-> L2Interface"""
+    """ To Verify the switch can perform IP forwarding on a /32 subnet using L2 Interface and L3 Unicast groups."""
 
     def runTest( self ):
         Groups = Queue.LifoQueue( )
@@ -906,8 +901,7 @@
 
 class FabricSW_OF__32ECMPL3_TC_0050( base_tests.SimpleDataPlane ):
     """
-    Verifies /32 IP routing and ECMP with no label push
-    IP -> L3ECMP -> L3Unicast -> L2Interface
+    To verify the switch can do unicast routing for /32 mask subnet using ECMP, L3 Unicast and L3 ECMP groups.
     """
 
     def runTest( self ):
@@ -1190,7 +1184,7 @@
 
 
 class FabricSW_OF_FloodGroupMod_TC_0030( base_tests.SimpleDataPlane ):
-    """ Modify a referenced flood group """
+    """ Verify packet forwarding when an L2 Interface Group reference in an L2 Flood Group is modified. """
 
     def runTest( self ):
         Groups = Queue.LifoQueue( )
@@ -1239,7 +1233,7 @@
 
 
 class FabricSW_OF__24ECMPL3_TC_0040( base_tests.SimpleDataPlane ):
-    """ Verifies /24 IP routing using ECMP -> L3U -> L2I """
+    """ To verify the switch can do unicast routing for /24 mask subnet using ECMP, L3 Unicast and L3 ECMP groups."""
 
     def runTest( self ):
         Groups = Queue.LifoQueue( )
@@ -2150,7 +2144,7 @@
 
 
 class FabricSW_OF__24UcastTagged_TC_0045( base_tests.SimpleDataPlane ):
-    """ Verify /24 IP forwarding to L3 Interface """
+    """ To Verify the switch can perform IP forwarding on a /24 subnet using L2 Interface and L3 Unicast groups."""
 
     def runTest( self ):
         Groups = Queue.LifoQueue( )
@@ -4451,8 +4445,8 @@
 
 class FabricSW_OF_VLANXConnect_Multi_TC_0090(base_tests.SimpleDataPlane):
     """
-    Verify QnQ traffic flooding between Many-to-One (multiple S tags to single BNG) and One-Many (Single BNG to
-    multiple S tags) cross connected physical interfaces.
+    To verify Q-n-Q traffic flooding between Many-to-One (multiple S tags to single BNG)
+    and One-Many (Single BNG to multiple S tags) cross connected physical interfaces.
     """
 
     def runTest(self):
diff --git a/Fabric/Tests/operational.py b/Fabric/Tests/operational.py
index 1bedd5a..172b094 100644
--- a/Fabric/Tests/operational.py
+++ b/Fabric/Tests/operational.py
@@ -234,8 +234,6 @@
 
         finally:
             # Remove vlan-cross connection
-            # send_command_to_onos_cli(self.log_path, "clear_xconnection1", "sr-xconnect-remove of:" + datapathid + " " + str(vlan_id101),
-            #                          self.onos_server_ip, self.onos_user, self.onos_passwd, regexp='onos>')
             remove_onos_xconnect(self, datapathid, vlan_id101)
             time.sleep(3)
             logging.info("End of Test")
diff --git a/Fabric/Tests/seba-1.0.0 b/Fabric/Tests/seba-1.0.0
index b478ec8..66a2245 100644
--- a/Fabric/Tests/seba-1.0.0
+++ b/Fabric/Tests/seba-1.0.0
@@ -53,10 +53,24 @@
 
 
 
+
 ### Operational Test cases ###
-## Total #test cases - 
+## Total #test cases - 8
 
+##################   Operational tests have to be run in the following order: run the Operational tests ###########
+##################   with OFTEST controller only (ONOS controller is NOT required)                      ###########
 
+operational.FabricSW_OP_TC_0005
+operational.FabricSW_OP_TC_0010
+operational.FabricSW_OP_TC_0025
+operational.FabricSW_OP_TC_0030
+
+##################   then uncomment these tests cases to run with both OFTEST and ONOS controller configured ###########
+
+#operational.FabricSW_OP_TC_0015
+#operational.FabricSW_OP_TC_0020
+#operational.FabricSW_OP_TC_0035
+#operational.FabricSW_OP_TC_0040
 
 
 
