Open APIs

 View Only
Expand all | Collapse all

TMF 641 : Cancel Service order lifecycle mapping with service order

  • 1.  TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Sep 08, 2020 03:55
    Hi ,

    Need some guidance on the cancelServiceOrder state transition mapping to serviceOrder state transition.

    The state transition in cancelServiceOrder are Acknowledged, inProgress , terminatedWithError and Done. The definition provided below  and both terminatedWithError and Done are final states. 

    terminatedWithError  : The CancelOrder could not be correctly completed by Service Order component. It did not mean that the cancel request is denied – it means that the assessment was not be done
    Done :CancelOrder assessment has been done. The Order has been cancelled or keep is as it if cancel request denied.


    My queries are on below two scenarios :

    Scenario 1:
    • Considering a scenario when an order is in "inProgress" and the consumer decide to cancel the order. 
    • When cancelServiceOrder has reached "inProgress" , the service Order state can be transitioned to "AssessingCancellation".
    • Now if  the cancelServiceOrder assessment could not be completed due to some reason , the cancelServiceOrder state would be "terminatedWithError". In this case, what should be the expected state transition of service order. Should it move back to "inProgress" or should it move to "pending" and request consumers to cancel the order again?

    Scenario 2 :
    • Considering a scenario when an order is in "inProgress" and the consumer decide to cancel the order. 
    • When cancelServiceOrder has reached "inProgress" , the service Order state can be transitioned to "AssessingCancellation".
    • Now if  the cancelServiceOrder assessment is completed , the cancelServiceOrder state would be "done". But since the done state is only indication of assessment being completed, if the assessment concludes that  order cannot be cancelled , should the service order state be moved back to "inProgress" .

    Basically we are trying to come up with a table like below for better understanding:

    CancelServiceOrder Service Order
    inProgress
    Acknowledged AssessingCancellation
    InProgress AssessingCancellation
    TerminatedWithError pending( should the consumer send another request for cancelling) or should order move back to "inProgress"
    Done PendingCancellation ->Cancelled for success cancellation 
    inProgress for denied cancellation

    Thanks,
    Rati
    @Uma Lakshman



    ------------------------------
    Rati Mehrotra
    Telstra Corporation
    ------------------------------


  • 2.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Sep 16, 2020 02:57
    Hi @Ludovic Robert,

    Can you please provide some guidance around the query in the post above.

    Thanks,
    Rati​

    ------------------------------
    Rati Mehrotra
    Telstra Corporation
    ------------------------------



  • 3.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Sep 16, 2020 05:09
    Hi Rati,

    We need to clarify terminatedWithError and Done states. Seems to me that the definition provided in the user guide confuse people.
    There is mixing between the state of the request to cancel vs the cancel itself.
    I understood your proposal that make sense for me (I will probably move the SO to inProgress in scenario 1) but we need to probably re-discuss this cancelOrder state within the team.

    Hope it helps

    Ludovic


    ------------------------------
    Ludovic Robert
    Orange
    My answer are my own & don't represent necessarily my company or the TMF
    ------------------------------



  • 4.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Sep 16, 2020 22:53
    Hi @Ludovic Robert,  Thanks for your guidance.  Is there any Jira where this is tracked which i can start watching?​

    ------------------------------
    Rati Mehrotra
    Telstra Corporation
    ------------------------------



  • 5.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Sep 17, 2020 07:50
    Hi Rati

    It was discussed during JIRA 2343 --> you can check the comment (the jira itself is not exactly on this topic). We need probably to sync with @Kamal Maghsoudlou who are working on the v4.1.

    Ludovic
    ​​

    ------------------------------
    Ludovic Robert
    Orange
    My answer are my own & don't represent necessarily my company or the TMF
    ------------------------------



  • 6.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Nov 19, 2020 11:08
    Ludovic,

    I assume this addition for "Error reason" would be applicable to Task Resources generally. So I can expect  to be able to add the same for cancelProductOrder?

    thanks,
    Lynn

    ------------------------------
    Lynn Dueck
    Oracle Corporation
    ------------------------------



  • 7.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Nov 20, 2020 10:09
    Hello Lynn,
    Yes generally we try to consistently use same pattern for one API to another. Next release for ProductOrder should be aligned with the pattern of serviceOrder for cancelOrder behaviour (in this cas aligned with service order 4.1 version).

    Thanks
    Ludovic

    ------------------------------
    Ludovic Robert
    Orange
    My answer are my own & don't represent necessarily my company or the TMF
    ------------------------------



  • 8.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Nov 22, 2020 06:53
    Hi Ludovic,

    Need help with below points around Cancel Order.
    InProgress
    Acknowledgement - Acknowledgement of Cancel Order means that the provider is able to Cancel the Order. So the Cancel Order request will either have a Acknowledgement or Reject.
    Reject - Order cannot be cancelled mainly due to Order reaching PoNR. In which case the consumer will need to send a new Order to Disconnect the Service. Cancel Order Request might be rejected for other reasons like not all the details required to cancel the Ordre may not be present.
    Complete - On successful Cancellation of the Order.

    Prior to Acknowledgement/Rejection the Order state would be AssessingCancellation
    On Acknowledgement the Order state would be CancellationInProgress. It becomes the Providers responsibility to successfully Cancel the Order.
    Any failures during cancellation typically if the responsibility of Provider to get it resolved and cancel the Order. terminatedWithError cannot be a terminal status.

    Once the Cancel Order is submitted by the consumer, believe it is not possible to perform any more in-flight operation on the Order unless the Cancel Order Request was Rejected.

    Appreciate your feedback on this.


    ------------------------------
    Srinivasa Vellanki
    Amdocs Management Limited
    ------------------------------



  • 9.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Nov 24, 2020 09:56
    Hello Srinivasa;

    We had a lot of discussion on this lifecycle lately - To sum-up my understanding of the team direction for the cancel service order flow:
    1. We have a service order 'in fly' in the SOM system. I asume in state acknowledged, inProgress, pending or hold.
    2. A system externally to the SOM requests a SO cancelation
    3. SOM received this request - check surgace data for it (the service order exist for example) and acknowledge it (if ok). The SOM store the cancelServiceOrder in acknowledged state
    4. SOM assess if cancelation is possible. The service order switch to assessingCancelation state and the cancelServiceOrder to inProgress state
    5. here 2 cases: (1)cancel is possible... the cancelServiceOrder is in state done. The serviceOrder is in PendingCancellation (during the time of performin cancel action) and then cancelled. (2)cancel not possible - the cancelServiceOrder is in state TerminationWitherror and the service order is back in previous state (acknowledged, inProgress, pending or hold).

    I invite people involved in the discussion to jump it and comment if my understanding is wrong .

    Hope it helps
    Ludovic

    ------------------------------
    Ludovic Robert
    Orange
    My answer are my own & don't represent necessarily my company or the TMF
    ------------------------------



  • 10.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Aug 25, 2021 09:15
    I apologize for reviving an old thread, but since i found this context apt, posting my question here.

    From the state diagram, the move from AssessingCancellation to Pending cancellation once done, assumes that the cancel will go through, what if, because of operational reasons the cancel fails, what is the state transition suggested in that case, since Cancelled is the only state transition available at that point?

    ------------------------------
    Aditya Sharma
    Ciena Corporation
    ------------------------------



  • 11.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Aug 25, 2021 11:37
    Hello Aditya

    This is not supported on the lifecycle provided. I hope this is only very specific UC where the cancellation has been accepted and then not performed (the use of the assessing cancellation is to avoid this situation by providing a state where the cancellation possibility is checked).
    I guess you have to extend the lifecycle in your implementation in adding a transition from pendingCancellation to inProgress (or held). From my perspective, adding transition is an allowed TMF API extension.

    Hope it helps
    Ludovic

    ------------------------------
    Ludovic Robert
    Orange
    My answer are my own & don't represent necessarily my company or the TMF
    ------------------------------



  • 12.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Aug 26, 2021 01:47
    Thank you for your prompt reply Ludovic,

    I know during cancel assessment, we have the capability to check whether we can perform the cancel or not, My question is specifically towards operational failure, what if during the implementation of Cancel something goes wrong, like API timeouts, Exceptions etc, I believe the standard should cater to this as well.

    ------------------------------
    Aditya Sharma
    Ciena Corporation
    ------------------------------



  • 13.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    Posted Aug 26, 2021 11:26
    Edited by Bernard TOKO Aug 26, 2021 11:27

    Hi @Ludovic Robert,

    My understanding is a bit different that what you explained:

    1. We have a service order in the SOM system.  inProgress, pending or held.
      Cancellation is not possible from acknowledged state.  from that state, SO can simply be deleted/rejected. Sending a cancellation request for a SO at acknowledged state should be rejected by the system
    2. A system externally to the SOM requests a SO cancelation
    3. SOM received this request - validate data for (the service order exist and is in cancellable state, there is no CancelServiceOrder already for that SO) and acknowledge it (if ok). The SOM store the cancelServiceOrder in acknowledged state
    4. Launch the cancellation process (moving the CancelServiceOrder to inProgress)
    5. The service order switch to assessingCancelation state 
    6. the SOM perform the assessment, and 2 possibilities:
      1. Cancel not possible - the cancelServiceOrder move to TerminationWithError with reason why  cancellation is not possible and the ServiceOrder goes back to inProgress (previous state inProgress, pending or held)
      2. Cancel is possible : The cancelServiceOrder stay in inProgress and the ServiceOrder move to PendingCancellation (during the time of performing cancel). Here too, there are 2 scenarios :
        1. Cancellation succeed : CancelServiceOrder move to Done and ServiceOrder move to cancelled.
        2. Cancellation fails (for some OrderItems) :CancelServiceOrder move to TerminatedWithError and ServiceOrder still move to cancelled

    The question of @Aditya Sharma is mainly for point 6.II.b



    ------------------------------
    Bernard TOKO
    Ciena Corporation
    ------------------------------



  • 14.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    TM Forum Member
    Posted Aug 26, 2021 12:01
    Hello Bernard

    Sorry if I confused you, because I have same understanding of the process.

    Indeed 6.II.b is today not supported in the lifecycle. In order to integrate it (as requested by Aditya) it will require a Jira to the TMF API team. Governance will state on this.

    I'm still thinking that this is an exception case and should be managed at implementation level by state engine extension (adding a subState and/or transition).
    Anyway - are you able to log a jira or do you want me to log it on your behalf ?

    Thanks
    Ludovic

    ------------------------------
    Ludovic Robert
    Orange
    My answer are my own & don't represent necessarily my company or the TMF
    ------------------------------



  • 15.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    Posted Aug 26, 2021 12:24

    Thanks Ludovic.

    In my Opinion, point 6.II.b should stay as is since customization with extensions is allowed.

    I don't think adding a transition from pendingCancellation back to inProgress, held, or pending is a good approach, that will raise a lot of questions with no answers : What happen to already cancelled OrderItems? What will be the final state of the SO? ...



    ------------------------------
    Bernard TOKO
    Ciena Corporation
    ------------------------------



  • 16.  RE: TMF 641 : Cancel Service order lifecycle mapping with service order

    Posted Apr 27, 2022 07:33
    @Rati Mehrotra / @Ludovic Robert , I hope you're fine .  Is there any conclusion about this topic ?  We have a similar issue here ... In addition we need to choose which actions in SOM layer should implement a  automatic rollback ( for example correcting the inventory automatically informing the consumer ) , a callback (for example during networking provisioning flow informing the consumer) or keep the order in held ( for example , "when we arriving in held state should we need opening a trouble ticket  to solving some integration with billing layer ?" ) - solving the problem  and then reestablishing the flow . Could you please help ? There is some table or state diagram that we can verify standard rollback , callback , held , cancel flow ? 

    @Jonathan Goldberg  cc'd you because I know that you already answer it in any topic inside TMFORUM group discussions :)

    Thanks in advance,

    ​​​​

    ------------------------------
    My views posted on this forum are personal, and do not reflect the position of my employer or TM Forum.

    DANIEL SOEIRO SANTOS
    Telefonica Brasil S.A.
    ------------------------------