diff --git a/developer/aiab.rst b/developer/aiab.rst
index 242a80a..c0a3c01 100644
--- a/developer/aiab.rst
+++ b/developer/aiab.rst
@@ -80,11 +80,19 @@
 ____________________
 
 If you have already installed the 4G SD-CORE, you must skip this step.
-Only one version of the SD-CORE can be installed at a time.::
+Only one version of the SD-CORE can be installed at a time
+
+To deploy 5G SD-CORE::
 
     make 5gc
 
-You can use gnbsim to test 5G functionality. Detailed steps in link (see :ref:`gNB-Simulator`)
+To deploy and test 5G SD-CORE::
+
+    make 5g-test
+
+The above step uses gNBSim to perform Registration + UE-Initiated PDU Session
+Establishment + User Data Packets. To test other procedures, modify *gnb.conf*
+in *ransim-values.yaml* (refer gNBSim documentation :ref:`gNB-Simulator`)
 
 Cleanup
 _______
diff --git a/developer/gnbsim.rst b/developer/gnbsim.rst
index cf8eb40..b7ba789 100644
--- a/developer/gnbsim.rst
+++ b/developer/gnbsim.rst
@@ -11,88 +11,103 @@
 
 Description
 -----------
-The gNB Sim tool simulates gNodeB and UE by generating and processing NAS and
+The gNBSim tool simulates gNodeB and UE by generating and processing NAS and
 NGAP messages for the configured UEs and call flows. The tool currently supports
 simulation profiles for the following procedures,
 
 * Registration
-* UE initiated PDU Session Establishment
+* UE Initiated PDU Session Establishment
 * UE Initiated De-registration.
 * AN Release
+* Ue Initiated Service Request Procedure
 
 It is also capable to generate and send user data packets (ICMP echo request)
 and process down-link user data (ICMP echo response) over the established data
 plane path (N3 Tunnel).
 
-Configure gNB Simulator
+Configure gNBSim
 -----------------------
-* The config file for GNBSIM can be found at *<repo dir>/config/gnbsim.yaml*
+* The config file for gNBSim can be found at *<repo dir>/config/gnbsim.yaml*
 
-    *Note: The configuration has following major fields (Read the comments in the config file for more details)*
+    *Note: The configuration has following major fields (Read the comments in
+    the config file for more details)*
 
-    * **gnbs**: List of gNB's to be simulated. Each item in the list holds configuration specific to a gNB.
-    * **profiles**: List of test/simulation profiles. Each item in the list holds configuration specific to a profile.
+    * **gnbs**:
+        List of gNB's to be simulated. Each item in the list holds configuration
+        specific to a gNB.
+    * **profiles**:
+        List of test/simulation profiles. Each item in the list holds
+        configuration specific to a profile.
 
 * Enable or disable a specific profile using the **enable** field.
 
     *Note: Currently following profiles are supported*
 
-    * **register**: Registration procedure
-    * **pdusessest** (Default): Registration + UE initiated PDU Session Establishment + User Data packets
-    * **deregister**: Registration + UE initiated PDU Session Establishment + User Data packets + Deregister
+    * **register**:
+        Registration procedure
+    * **pdusessest** (Default):
+        Registration + UE initiated PDU Session Establishment + User Data packets
+    * **deregister**:
+        Registration + UE initiated PDU Session Establishment + User Data packets
+        + Deregister
+    * **anrelease**:
+        Registration + UE initiated PDU Session Establishment + User Data packets
+        + AN Release
+    * **uetriggservicereq**:
+        Registration + UE initiated PDU Session Establishment + User Data packets
+        + AN Release + UE Initiated Service Request
 
-Build gNB Simulator
+Build gNBSim
 -------------------
-* To modify gNB Sim within a container run
-
-    .. code-block:: bash
-
-        $ kubectl exec -it gnbsim-0 -n omec bash
-
-    Make required changes and run
-
-    .. code-block:: bash
-
-        $ go build
-
-* To modify gNB Sim and build a new docker image
+* To modify gNBSim and build a new docker image:
 
     .. code-block:: bash
 
         $ cd <repo dir>
         $ make docker-build
 
-    Use newly created image in the AIAB cluster run,
+* To use newly created image in the AiaB cluster:
 
     .. code-block:: bash
 
         $ cd <aiab repo dir>
         $ make reset-5g-test
 
-    Modify the override file (ransim-values.yaml) to add the new image name
+    Update *ransim-values.yaml* to point to the newly built image, then run:
 
     .. code-block:: bash
 
-        $ make 5gc
+        $ make 5g-test
 
-Run gNB Sim
+    (refer AiaB documentation :ref:`aiab-guide`)
+
+Run gNBSim
 -----------
+* To quickly launch and test AiaB with 5G SD-CORE using gNBSim:
 
-    Enter into the gNB Sim pod by running
+    .. code-block:: bash
+
+        $ make 5g-test
+
+    (refer AiaB documentation :ref:`aiab-guide`)
+
+* Alternatively, once 5G SD-CORE is up, you can enter into the gNBSim pod by
+    running:
 
     .. code-block:: bash
 
         $ kubectl exec -it gnbsim-0 -n omec bash
 
-    After entering the pod run,
+    Then run following command to launch gNBSim:
 
     .. code-block:: bash
 
         $ ./gnbsim
 
-    *Note: By default, the gNB Sim reads the configuration from /free5gc/config/gnb.conf file. To provide a different configuration file,
-    use the below command*
+    *Note: By default, the gNB Sim reads the configuration from
+    /gnbsim/config/gnb.conf file. To provide a different configuration file, use
+    the below command*
 
     .. code-block:: bash
 
-        $ ./gnbsim --cfg config/gnbsim.yaml
+        $ ./gnbsim --cfg <config file path>
