PeopleSoft Optimization Framework System Architecture

The following diagram illustrates PeopleSoft Optimization Framework architecture components and shows the sequence of use during a typical optimization transaction:

Image: PeopleSoft Optimization Framework architecture

The following diagram represents the high level architecture of PeopleSoft Optimization Framework.

PeopleSoft Optimization Framework architecture

When an optimization-based application runs, the following actions occur:

  1. The source data is loaded from PeopleSoft application tables into the optimization application records.

    Depending on the amount of data, this can typically be done as a batch job.

  2. A web server sends a request through Oracle Tuxedo to have the analytic server perform a PeopleSoft transaction using optimization.

  3. Upon receiving the request, the optimization dispatcher, within the analytic server, locates the correct optimization engine and sends the optimization transaction to it through Oracle Tuxedo.

  4. The optimization engine gets the metadata (optimization transaction name, parameters, and data types of the parameters) from the analytic type definition in the PeopleSoft application database.

    It uses this information to check the integrity of the optimization transaction request. It also synchronizes the data in memory with changes in the optimization application tables.

  5. The optimization engine reads the changed data (all the data, if this is the first time the data is being read) from the optimization application records into memory.

  6. The optimization engine loads the appropriate OPI and passes the optimization transaction request to it.

    The OPI is loaded during the first request to the optimization engine. It remains loaded until the optimization engine is shut down.

  7. The OPI processes the transaction and provides result data in the form of output parameters to the optimization engine.

    The OPI might also change data in memory to be saved to the database.

  8. The optimization engine writes the changed data in memory to the optimization application tables.

  9. The optimization engine returns the result data to the optimization dispatcher.

  10. The application server completes the PeopleSoft transaction with the result data and returns a success code to the user and to the web server through Oracle Tuxedo.

  11. After the user is satisfied with the optimization result data, the result data can be copied from the optimization application tables to the PeopleSoft application tables.