<?xml version="1.0" encoding="UTF-8"?>
-<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_1a52v2f" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="2.0.3">
+<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_1a52v2f" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.5.0">
   <bpmn:collaboration id="Collaboration_0go8wi3">
     <bpmn:participant id="Participant_1dwc5st" name="SO
Assign PNF" processRef="AssignPnfBB" />
     <bpmn:participant id="Participant_0gycee4" name="AAI" />
     <bpmn:messageFlow id="MessageFlow_0xh6bkn" sourceRef="CreatePnfEntryInAai" targetRef="Participant_0gycee4" />
   </bpmn:collaboration>
   <bpmn:process id="AssignPnfBB" name="AssignPnfBB" isExecutable="true">
-    <bpmn:sequenceFlow id="SequenceFlow_0l6rtzy" sourceRef="CreatePnfEntryInAai" targetRef="AaiEntryExists" />
     <bpmn:sequenceFlow id="SequenceFlow_1fu9o4x" sourceRef="AssignPnf_StartEvent" targetRef="CreatePnfEntryInAai" />
-    <bpmn:endEvent id="AaiEntryExists" name="AAI entry exists">
-      <bpmn:incoming>SequenceFlow_0l6rtzy</bpmn:incoming>
-    </bpmn:endEvent>
     <bpmn:serviceTask id="CreatePnfEntryInAai" name="Create Pnf entry in AAI" camunda:expression="${AAICreateTasks.createPnf(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
       <bpmn:incoming>SequenceFlow_1fu9o4x</bpmn:incoming>
-      <bpmn:outgoing>SequenceFlow_0l6rtzy</bpmn:outgoing>
+      <bpmn:outgoing>SequenceFlow_0yrabnf</bpmn:outgoing>
     </bpmn:serviceTask>
     <bpmn:startEvent id="AssignPnf_StartEvent">
       <bpmn:outgoing>SequenceFlow_1fu9o4x</bpmn:outgoing>
     </bpmn:startEvent>
+    <bpmn:sequenceFlow id="SequenceFlow_0yrabnf" sourceRef="CreatePnfEntryInAai" targetRef="Task_UpdatePnfOrchestrationStatusAssigned" />
+    <bpmn:sequenceFlow id="SequenceFlow_1yb16sd" sourceRef="Task_UpdatePnfOrchestrationStatusAssigned" targetRef="AaiEntryExists" />
+    <bpmn:serviceTask id="Task_UpdatePnfOrchestrationStatusAssigned" name="Update Pnf Orchestration Status to Assigned" camunda:expression="${AAIUpdateTasks.updateOrchestrationStatusAssignedPnf(InjectExecution.execute(execution, execution.getVariable("gBuildingBlockExecution")))}">
+      <bpmn:incoming>SequenceFlow_0yrabnf</bpmn:incoming>
+      <bpmn:outgoing>SequenceFlow_1yb16sd</bpmn:outgoing>
+    </bpmn:serviceTask>
+    <bpmn:endEvent id="AaiEntryExists" name="AAI entry exists">
+      <bpmn:incoming>SequenceFlow_1yb16sd</bpmn:incoming>
+    </bpmn:endEvent>
     <bpmn:association id="Association_1le3nwi" sourceRef="AssignPnf_StartEvent" targetRef="TextAnnotation_184cxp4" />
     <bpmn:textAnnotation id="TextAnnotation_184cxp4">
       <bpmn:text>Inputs:
- - pnfName - String
-</bpmn:text>
+ - pnfName - String</bpmn:text>
     </bpmn:textAnnotation>
   </bpmn:process>
   <bpmndi:BPMNDiagram id="BPMNDiagram_1">
     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Collaboration_0go8wi3">
       <bpmndi:BPMNShape id="Participant_1dwc5st_di" bpmnElement="Participant_1dwc5st" isHorizontal="true">
-        <dc:Bounds x="160" y="80" width="646" height="391" />
+        <dc:Bounds x="160" y="80" width="738" height="391" />
       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="Participant_0gycee4_di" bpmnElement="Participant_0gycee4" isHorizontal="true">
         <dc:Bounds x="260" y="567" width="502" height="60" />
         <di:waypoint x="237" y="203" />
       </bpmndi:BPMNEdge>
       <bpmndi:BPMNShape id="EndEvent_1wfgsdz_di" bpmnElement="AaiEntryExists">
-        <dc:Bounds x="722" y="269" width="36" height="36" />
+        <dc:Bounds x="772" y="269" width="36" height="36" />
         <bpmndi:BPMNLabel>
-          <dc:Bounds x="703" y="312" width="77" height="14" />
+          <dc:Bounds x="753" y="312" width="77" height="14" />
         </bpmndi:BPMNLabel>
       </bpmndi:BPMNShape>
-      <bpmndi:BPMNEdge id="SequenceFlow_0l6rtzy_di" bpmnElement="SequenceFlow_0l6rtzy">
-        <di:waypoint x="561" y="287" />
-        <di:waypoint x="722" y="287" />
-      </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="SequenceFlow_1fu9o4x_di" bpmnElement="SequenceFlow_1fu9o4x">
         <di:waypoint x="255" y="287" />
         <di:waypoint x="461" y="287" />
       </bpmndi:BPMNEdge>
+      <bpmndi:BPMNEdge id="SequenceFlow_0yrabnf_di" bpmnElement="SequenceFlow_0yrabnf">
+        <di:waypoint x="561" y="287" />
+        <di:waypoint x="620" y="287" />
+      </bpmndi:BPMNEdge>
+      <bpmndi:BPMNShape id="ServiceTask_1kmas9h_di" bpmnElement="Task_UpdatePnfOrchestrationStatusAssigned">
+        <dc:Bounds x="620" y="247" width="100" height="80" />
+      </bpmndi:BPMNShape>
+      <bpmndi:BPMNEdge id="SequenceFlow_1yb16sd_di" bpmnElement="SequenceFlow_1yb16sd">
+        <di:waypoint x="720" y="287" />
+        <di:waypoint x="772" y="287" />
+      </bpmndi:BPMNEdge>
     </bpmndi:BPMNPlane>
   </bpmndi:BPMNDiagram>
 </bpmn:definitions>
 
         aaiUpdateTasks.updateOrchestrationStatusActiveService(execution);
     }
 
+    @Test
+    public void updateOrchestrationStatusAssignedPnfTest() throws Exception {
+        Pnf pnf = preparePnfAndExtractForPnf();
+        doNothing().when(aaiPnfResources).updateOrchestrationStatusPnf(pnf, OrchestrationStatus.ASSIGNED);
+
+        aaiUpdateTasks.updateOrchestrationStatusAssignedPnf(execution);
+
+        verify(aaiPnfResources, times(1)).updateOrchestrationStatusPnf(pnf, OrchestrationStatus.ASSIGNED);
+    }
+
+    @Test
+    public void updateOrchestrationStatusAssignedPnfExceptionTest() throws Exception {
+        Pnf pnf = preparePnfAndExtractForPnf();
+        doThrow(RuntimeException.class).when(aaiPnfResources).updateOrchestrationStatusPnf(pnf,
+                OrchestrationStatus.ASSIGNED);
+
+        expectedException.expect(BpmnError.class);
+        aaiUpdateTasks.updateOrchestrationStatusAssignedPnf(execution);
+    }
 
     @Test
     public void updateOrchestrationStatusActivePnfTest() throws Exception {