5 Understanding the Query Product Classes Business Flow

This chapter describes the Query Product Classes business flow and explains how the Oracle Application Integration Architecture (Oracle AIA) Oracle Communications Order to Cash Integration Pack (the integration) enables the process of creating and querying product classes.

About the Query Product Classes Business Flow

The Query Product Classes business flow lets you reuse the organization of products from Siebel CRM in Oracle Communications Order and Service Management (OSM).

You use product classes in Siebel CRM to organize products in meaningful ways, such as by service, size, or bandwidth. You can create product classes manually in Siebel CRM or you can create them by importing item catalog categories from Oracle Product Hub.

When creating product classes, you associate attributes with them in Siebel CRM. Attributes are defined by sets of values. For example, the value set for a bandwidth attribute might include 2 megabits per second (Mbps), 3 Mbps, and 5 Mbps.

You use Oracle Communications Design Studio to query the product classes and their attributes from Siebel CRM and map the product classes to product specifications in a cartridge. The product specification associate decomposition rules, fulfillment functions, and their dependencies.

After completing all design-time tasks, you deploy the cartridge to OSM for use in order orchestration.

Figure 5-1 illustrates the flow.

Figure 5-1 Query Product Classes Process Flow

This image is described in the surrounding text.

The integration queries product classes as follows:

  1. In a Siebel CRM Workspace project, a Siebel CRM user does the following:

    1. Creates a new product class and transaction attributes and associates attribute definitions to them.

    2. Updates the product class by adding or deleting transaction attributes.

    3. Updates the attribute definitions (value sets) by adding or removing values from them.

    See Siebel Product Administration Guide for more information about creating classes, attributes, and attribute definitions in Siebel.

  2. The Siebel CRM user sends notification to a Oracle Communications Design Studio user in one of the following ways:

    • Using the notify menu function from the Product Class UI in Siebel CRM. The notification uses fixed templates to communicate the product class details. One or more classes can be sent on a single notification from Siebel CRM.

      See the discussion of configuring the email notification for the product class in Siebel Communications Guide for more information about setting up the notification in Siebel CRM.

    • Using a company's email application. This method provides additional flexibility to add more required information. This method is not dependent on a template and does not require additional configuration steps.

    Note:

    Regardless of the mechanism used, the notification must include the product class name so that the Design Studio user can include it in the query. The template in the notify menu function automatically adds the product class name.
  3. The Design Studio user does the following:

    1. Queries or imports the product class and the transaction attribute details from Siebel CRM into a cartridge using the product class name.

      Design Studio stores the transaction attributes and associated valuesets in the data dictionary.

    2. Maps the product class to an existing or newly-created product specification.

    3. Defines fulfillment functions and their dependencies and associates them to the product specification.

    4. Defines validation and decomposition rules.

    5. Deploys the cartridge to OSM.

  4. If the product specification causes errors in test orders, the Design Studio user does the following:

    1. Creates and configures a new product specification or imports the product class again

    2. Redeploys the cartridge.

Note:

You can create product classes in Siebel CRM that are not used for product specifications. Oracle recommends using a naming convention to distinguish product classes mapped to product specifications from product classes used for other purposes.

For example, prefix product classes mapped to product specifications with ProdSpec.

Product classes are only synchronized when Design Studio queries them. Any updates you make to product specifications in Design Studio are not automatically synchronized back to Siebel CRM, and any updates you make to product classes in Siebel CRM are not automatically synchronized to Design Studio. You must resynchronize changed product classes with a new query.

Design Studio maintains the mapping between the Siebel CRM product classes and OSM product specifications.

See Oracle Communications Order and Service Management Concepts for more information about product classes and specifications in OSM and Design Studio.

See Siebel Product Administration Guide for more information about product classes and attributes.

About the Query Product Classes Integration Flow

Figure 5-2 shows how the integration synchronizes Siebel CRM product classes to OSM product specifications based on a query from Design Studio.

Figure 5-2 Querying Product Classes

This image is described in the surrounding text.

The integration queries product classes and their associated attributes as follows:

  1. A Design Studio user submits a query including all the necessary product class names. Design Studio calls the Design Studio query product class requester service and provides the product class names in a Design Studio-specific application business message (ABM).

  2. The Design Studio query product class requester service sends transforms the product class ABM a standardized enterprise business message (EBM) and sends it to the Siebel CRM query product class provider service.

  3. The Siebel CRM query product class provider service transforms the product class EBM into a Siebel CRM-specific product class ABM, extracts the product class name, and invokes the Siebel CRM query product class web service.

    The web service returns a product class ABM containing complete product class information to the Siebel CRM query product class provider service.

  4. The Siebel CRM query product class provider service transforms the Siebel CRM-specific product class ABM into a standardized product class EBM and sends it to the Design Studio query product class requester service.

  5. The Design Studio query product class requester service identifies that the product classes have references to attribute definition entities. To query the attribute definitions associated with the product classes, it aggregates the attributes that are associated with the product classes, provides attribute IDs into a standardized attribute EBM and sends it to the Siebel CRM query attribute provider service.

  6. The Siebel CRM query attribute provider service transforms the standardized attribute EBM into a Siebel CRM-specific attribute ABM and invokes the Siebel CRM query attribute definition web service.

    The web service returns an attribute definition ABM containing the complete attribute information to the Siebel CRM query attribute provider service.

  7. The Siebel CRM query attribute provider service transforms Siebel CRM-specific attribute ABM into a standardized attribute EBM and sends it to the Design Studio query product class requester service.

  8. The Design Studio query product class requester service identifies that the attributes have references to valueset entities. To query the valuesets associated with the attributes, it aggregates the attributes that are associated with the valuesets into a standardized valueset EBM and sends it to the Siebel CRM query valueset provider service.

  9. The Siebel CRM query valueset provider service transforms the standardized valueset EBM into a Siebel CRM-specific attribute definition ABM and invokes the Siebel CRM query attribute definition web service.

    The web service returns an attribute definition ABM containing the complete attribute information to the Siebel CRM query valueset provider service.

  10. The Siebel CRM query valueset provider service transforms the Siebel CRM-specific attribute definition ABM into a standardized valueset EBM and sends it to the Design Studio query product class requester service.

  11. The Design Studio query product class requester service transforms the standardized valueset, attribute, and product class EBMs into a Design Studio-specific product and attribute ABM and sends it to Design Studio.

About the Logical Data Model in Siebel CRM

In Siebel CRM, you associate attribute definitions with product classes, then you associate product classes with products. The products inherit the attribute definitions from their product class. Figure 5-3 illustrates the logical data model that results from these associations in Siebel CRM.

Figure 5-3 Logical Data Model of Product Classes in Siebel CRM

This figure is described in the surrounding text.

About Updating the Attribute Valueset

The Siebel CRM product administrator can update the attribute valueset associated with the attribute definition in the project workspace. This action automatically updates all the classes and their subclasses. The product administrator selects a class that is associated with the updated attribute definition and sends the notification. The product-to-service mapping specialist queries the product class from Design Studio, which updates the corresponding valueset metadata in the data dictionary.

Updating Product Classes and Effectivity

Product classes are mapped to product specifications and fulfillment patterns in OSM at design time and any updates to the product classes can affect how OSM manages orders at run time.

When you create new product classes, update existing product classes, or deactivate existing product classes in Siebel CRM, you must:

  1. Update or specify the product class effectivity.

  2. In Design Studio, submit a query for the new or updated product classes.

    Any of the following mappings occur:

    • The product class is mapped to a new product specification for which you must define new fulfillment metadata.

    • The product class is mapped to an existing product specification.

    • The product class mapping is changed to a different product specification.

  3. Update the cartridge version and redeploy the cartridge to OSM. The cartridge deployment date must match the effectivity date of the updated Siebel CRM product classes.

Design Studio bases product specification effectivity on cartridge deployment dates. You must redeploy the OSM cartridge any time the mapping between product classes and product specifications is updated.

All orders already submitted for processing in the OSM system use the previous version of the cartridge. Any subsequent orders, including revision orders, follow-on orders, change orders, and existing orders that are not yet submitted for processing, use the new version of the cartridge. If the effectivity date on the product class is not the same as the cartridge deployment date, OSM uses the cartridge deployment date for effectivity.

Oracle recommends grouping product class changes and setting effectivity for a time that is suitable for deploying a new cartridge version, such as an off-peak hour.

See Oracle Communications Order and Service Management Cartridge Guide for Oracle Application Integration Architecture for more information about updating the cartridge version and the various deployment options.