Open APIs

 View Only
  • 1.  Product Order of type Modify - implications on the Product Inventory

    TM Forum Member
    Posted Dec 06, 2023 04:26

    Dear community,

    When creating a product order of type Modify, - say i want to modify a characteristic (bandwidth f.ex) of an existing asset - with correspond change in price etc. What should be the behavior during fulfillment on the inventory. Since I am essentially changing the customer's product - I would assume that I would update the status of existing asset into "Pending Terminate" and create a new asset into "Pending Active". Then, once fulfillment completed, I would have a Terminated Product and an Active Product - allowing to see the history of the inventory item without having to reconcile against order history.

    Simply patch'ing the asset feels wrong to me.

    Does anyone have some thoughts on this?

    Br

    Axel



    ------------------------------
    Axel Marc Schmitz
    Capgemini
    ------------------------------



  • 2.  RE: Product Order of type Modify - implications on the Product Inventory

    TM Forum Member
    Posted Dec 06, 2023 15:17

    Hi Axel

    The correct approach is indeed to patch the Product in the product inventory, via the operation in TMF637. Of course the endpoint must be protected so that random users cannot invoke PATCH - only a privileged process such as order management and delivery should be allowed to make this change.

    You are correct, however, that currently the Product schema does not include a way of representing a history of such changes.

    In Gen5 of the TMF Open API, the History pattern will be introduced, so that any API that adopts this pattern will be able to represent the sequence of revisions to the entity. Of course it will take some time for each published API to adopt the pattern. However, once the pattern itself has been published, you will be able to extend your API implementation to adopt the pattern even if it is not part of the published API.

    Hope it helps



    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------



  • 3.  RE: Product Order of type Modify - implications on the Product Inventory

    Posted Dec 07, 2023 04:36

    If I have understood the question correctly then (putting aside TMF specs) my default conceptual design would be like Axel's - creating new versions of the customer's product inventory as it is modified through MACDs over time. There would be various advantages of this versus simply updating existing records.

    @Jonathan Goldberg is the proposed history pattern going to function along those lines? I can imagine a lighter weight approach that might not deliver all the benefits of a true versioning (for example).



    ------------------------------
    Julian Hodges
    TO BE VERIFIED
    ------------------------------



  • 4.  RE: Product Order of type Modify - implications on the Product Inventory

    TM Forum Member
    Posted Dec 07, 2023 06:57

    A new PI Instance should not be created and there are good reasons for it. This is a change on an existing asset / Product Inventory Instance and BW upgrade is just one possible change. 

    The Asset / Product Inventory is an instance of the Product Offering with it's structure. So the BW values that are to be changed should have been defined in the Product model first. One can maintain the historic version of the PI Instances for every customer but at given point of time, there will be only one active PI instance against the customer account for that Product Offering.(Assuming the customer has not purchased  the same Product offering twice.)

    These changes need to be done only via 637 which is called during the orchestration process for PATCH. The GET is used earlier in the process.



    ------------------------------
    Sri-Jagadish (Jag) Baddukonda
    Bell Canada
    ------------------------------



  • 5.  RE: Product Order of type Modify - implications on the Product Inventory

    Posted Dec 07, 2023 07:16

    I agree, there should be one active instance of the specific product inventory item. There should (IMO) be multiple instances / versions of the data that represent it over time - that could be concretely implemented in various ways of course.



    ------------------------------
    Julian Hodges
    TO BE VERIFIED
    ------------------------------



  • 6.  RE: Product Order of type Modify - implications on the Product Inventory

    TM Forum Member
    Posted Dec 10, 2023 02:41

    Just to clarify on the history pattern (which is being reviewed internally by the Open API team, hopefully publishing in the not too distant future):

    • The history pattern deals with revisions. It prescribes a dedicated, read-only, end-point to access all the revisions of an entity.
    • The pattern is just that, a pattern. An implementation of an Open API needs to decide if to implement the history pattern, and if so how (presumably using extra persistent storage).
    • The history pattern implies that revisions are created automatically for every change (the implementation must decide what is considered a "change", e.g. a PATCH operation invocation, an internal change due to event/time passing, etc.)
    • The history pattern is not intended to replace explicit business versioning, such as we have in the catalog APIs. In business versioning, the consumer is in control and decides when a new version is to be created. It is entirely possible that a given catalog entity version might have multiple revisions.

    Specifically for the Inventory APIs (product, service, resource), it's not clear (to me) what is more appropriate, using the history pattern or rather adding a explicit business versioning.



    ------------------------------
    Jonathan Goldberg
    Amdocs Management Limited
    Any opinions and statements made by me on this forum are purely personal, and do not necessarily reflect the position of the TM Forum or my employer.
    ------------------------------



  • 7.  RE: Product Order of type Modify - implications on the Product Inventory

    Posted Dec 10, 2023 03:33

    Thanks for the update Jonathan - good point regarding business version versus history pattern, it explicitly adds a consideration that I was not explicitly thinking about. For now, I will resist the temptation to spend half the day whiteboarding stuff but its certainly an aspect to bear in mind.



    ------------------------------
    Julian Hodges
    TO BE VERIFIED
    ------------------------------