Search

US-12619931-B2 - Method of observing and evaluating processes and user action efficiency with recommendations on change

US12619931B2US 12619931 B2US12619931 B2US 12619931B2US-12619931-B2

Abstract

In one embodiment, a method includes detecting activity of one or more agents that modifies a processing state of a first of multiple invoices, each invoice requesting approval. The activity is conducted by the one or more agents through interacting with the procurement processing system. The method includes updating, based on the detected activity, an invoice interaction history record associated with the first invoice in an invoice interaction history datastore communicatively coupled to the procurement processing system. The method includes generating one or more metrics regarding activity of the agents affecting a processing state of the invoices based on the updated invoice interaction history datastore. The method includes providing the one or more metrics for presentation to the procurement processing system.

Inventors

  • Neha Arora
  • Carl Rydbeck
  • Magnus Nyquist
  • Tony DARUGAR
  • Rohit Arolkar

Assignees

  • Coupa Software Incorporated

Dates

Publication Date
20260505
Application Date
20240412

Claims (20)

  1. 1 . A computer-implemented method executed by a procurement processing system, the method comprising: detecting activity of one or more agents of a plurality of agents that modifies a processing state of a first invoice of a plurality of invoices, each invoice requesting approval, wherein the activity is conducted by the one or more agents through interacting with the procurement processing system; updating, based on the detected activity, an invoice interaction history record associated with the first invoice in an invoice interaction history datastore communicatively coupled to the procurement processing system, the invoice interaction history record associating an invoice identifier, supplier identifier, action of a particular agent, and role of a particular agent; the datastore comprising an instance-level datastore configured to store invoice interaction history records, a community-level datastore configured to store invoice interaction history records, and a benchmarking metrics datastore; the updating including automatically deriving the action of the particular agent based upon transitions in states of the first invoice; generating, using dynamic refactoring, one or more first metrics regarding the activity of the plurality of agents affecting the processing state of the plurality of invoices based on the updated invoice interaction history datastore and digitally storing the one or more first metrics regarding the activity of the plurality of agents in the benchmarking metrics datastore, wherein the dynamic refactoring includes percentile-based calculating a second metric of community leaders based on refactoring; comparing the one or more first metrics regarding the activity of the plurality of agents with the second metrics of community leaders to determine a match; determining, based on the match, one or more changes in control features, configurations, and allocation of computing resources of the procurement processing system; recommending automated tasks to directly replace actions by the one or more agents using the determination of one or more changes; determining modifications to sequence, branch paths, and substance of steps in a workflow for processing invoices according to a specification, wherein the modifications are associated with the automated tasks and the allocation of computing resources of the procurement processing system; and enforcing the recommendation by modifying an allocation of computing resources for the automated tasks to occur at under-utilized times of the procurement processing system.
  2. 2 . The method of claim 1 , wherein the detected activity of the one or more agents advances the workflow for processing invoices according to the specification.
  3. 3 . The method of claim 2 , further comprising generating the recommendation for altering the workflow for processing invoices based on the one or more first metrics regarding the activity of the one or more agents.
  4. 4 . The method of claim 3 , wherein the recommendation for altering the workflow comprises: adding or removing one or more steps of the workflow; modifying an assignment of agents to the one or more steps of the workflow; or automating one or more steps of the workflow.
  5. 5 . The method of claim 1 , further comprising automatically effectuating the one or more changes to workflow processes and configurations.
  6. 6 . The method of claim 1 , wherein detecting the activity of the one or more agents that modifies the processing state of the first invoice comprises: receiving an input from the one or more agents; determining the first invoice as an associated invoice based on the input; determining a change in the processing state of the first invoice based on the input; and storing the change in the processing state, an identifier for the one or more agents, and a timestamp in the invoice interaction history datastore.
  7. 7 . The method of claim 1 , wherein generating the one or more metrics regarding the activity of the plurality of agents comprises calculating one or more invoice processing statistics evaluating performance of the one or more agents in creating, reviewing, or approving the plurality of invoices.
  8. 8 . The method of claim 1 , further comprising: calculating, for one or more metrics, a community average value of the metric, wherein the community average value of the metric is based on metrics generated for one or more additional customers with shared traits; and providing the community average value of the metric for presentation to a display device in association with the one or more generated metrics.
  9. 9 . The method of claim 1 , further comprising: calculating, for one or more metrics, a community benchmark value of the metric, wherein the community benchmark value of the metric is based on metrics generated for one or more customers with shared traits; and providing the community benchmark value of the metric for presentation to a display device in association with the one or more generated metrics.
  10. 10 . The method of claim 9 , further comprising calculating the community benchmark value of the metric by: calculating metric values of a plurality of customers associated with the procurement processing system; normalizing the metric values of the plurality of customers based on the shared trait; refactoring the metric values to eliminate outlier values; and calculating the community benchmark value from the refactored metric values.
  11. 11 . The method of claim 10 , wherein refactoring the metric values to eliminate outlier values comprises: removing invalid values for the metrics, wherein the invalid values are determined based on a metric category of the metric; identifying a percentile of remaining metrics corresponding to a percentile of customers having an optimal performance with respect to the remaining metrics; determining that the percentile of remaining metrics comprises at least a threshold number of independent values; and combining values of the percentile of remaining metrics.
  12. 12 . The method of claim 1 , wherein the one or more metrics comprise one or more of: an average processing time for the one or more agents to approve an invoice of the plurality of invoices; an average in-phase time for an invoice of the plurality of invoices corresponding to an amount of time spent by the invoice in a creation phase, review phase, or approval phase; a number of invoices created, reviewed, or approved, by the one or more agents or by a first agent of the one or more agents; or a number of invoices created, reviewed, or approved, by the one or more agents or by a first agent of the one or more agents, where a processing time of the invoice is greater than a projected time.
  13. 13 . The method of claim 1 , wherein the one or more metrics are used to refine recommendations on an ongoing basis based on past performance and automated or user-submitted feedback.
  14. 14 . One or more non-transitory computer-readable storage media storing one or more sequences of instructions which, when executed using one or more processors of a procurement processing system, cause the one or more processors to execute: detecting activity of one or more agents of a plurality of agents that modifies a processing state of a first invoice of a plurality of invoices, each invoice requesting approval, wherein the activity is conducted by the one or more agents through interacting with the procurement processing system; updating, based on the detected activity, an invoice interaction history record associated with the first invoice in an invoice interaction history datastore communicatively coupled to the procurement processing system, the invoice interaction history record associating an invoice identifier, supplier identifier, action of a particular agent, and role of a particular agent; the datastore comprising an instance-level datastore configured to store invoice interaction history records, a community-level datastore configured to store invoice interaction history records, and a benchmarking metrics datastore; the updating including automatically deriving the action of the particular agent based upon transitions in states of the first invoice; generating, using dynamic refactoring, one or more first metrics regarding the activity of the plurality of agents affecting the processing state of the plurality of invoices based on the updated invoice interaction history datastore and digitally storing the one or more first metrics regarding the activity of the plurality of agents in the benchmarking metrics datastore, wherein the dynamic refactoring includes percentile-based calculating a second metric of community leaders based on refactoring; comparing the one or more first metrics regarding the activity of the plurality of agents with the second metrics of community leaders to determine a match; determining, based on the match, one or more changes in control features, configurations, and allocation of computing resources of the procurement processing system; recommending automated tasks to directly replace actions by the one or mor agents using the determination of one or more changes; determining modifications to sequence, branch paths, and substance of steps in a workflow for processing invoices according to a specification, wherein the modifications are associated with the automated tasks and the allocation of computing resources of the procurement processing system; and enforcing the recommendation by modifying an allocation of computing resources for the automated tasks to occur at under-utilized times of the procurement processing system.
  15. 15 . The one or more non-transitory computer-readable storage media of claim 14 , wherein the detected activity of the one or more agents advances the workflow for processing invoices according to the specification.
  16. 16 . The one or more non-transitory computer-readable storage media of claim 15 , further comprising sequences of instructions which, when executed using the one or more processors of a procurement processing system, cause the one or more processors to execute generating the recommendation for altering the workflow for processing invoices based on the one or more first metrics regarding the activity of the one or more agents.
  17. 17 . The one or more non-transitory computer-readable storage media of claim 16 , wherein the recommendation for altering the workflow comprises: adding or removing one or more steps of the workflow; modifying an assignment of agents to the one or more steps of the workflow; or automating one or more steps of the workflow.
  18. 18 . A procurement processing system comprising: one or more processors; and one or more non-transitory computer-readable storage media storing one or more sequences of instructions which, when executed using one or more processors of a procurement processing system, cause the one or more processors to execute: detecting activity of one or more agents of a plurality of agents that modifies a processing state of a first invoice of a plurality of invoices, each invoice requesting approval, wherein the activity is conducted by the one or more agents through interacting with the procurement processing system; updating, based on the detected activity, an invoice interaction history record associated with the first invoice in an invoice interaction history datastore communicatively coupled to the procurement processing system, the invoice interaction history record associating an invoice identifier, supplier identifier, action of a particular agent, and role of a particular agent; the datastore comprising an instance-level datastore configured to store invoice interaction history records, a community-level datastore configured to store invoice interaction history records, and a benchmarking metrics datastore; the updating including automatically deriving the action of the particular agent based upon transitions in states of the first invoice; generating, using dynamic refactoring, one or more first metrics regarding the activity of the plurality of agents affecting the processing state of the plurality of invoices based on the updated invoice interaction history datastore and digitally storing the one or more first metrics regarding the activity of the plurality of agents in the benchmarking metrics datastore, wherein the dynamic refactoring includes percentile-based calculating a second metric of community leaders based on refactoring; comparing the one or more first metrics regarding the activity of the plurality of agents with the second metrics of community leaders to determine a match; determining, based on the match, one or more changes in control features, configurations, and allocation of computing resources of the procurement processing system; recommending automated tasks to directly replace actions by the one or more agents using the determination of one or more changes; determining modifications to sequence, branch paths, and substance of steps in a workflow for processing invoices according to a specification, wherein the modifications are associated with the automated tasks and the allocation of computing resources of the procurement processing system; and enforcing the recommendation by modifying an allocation of computing resources for the automated tasks to occur at under-utilized times of the procurement processing system.
  19. 19 . The procurement processing system of claim 18 , wherein the detected activity of the one or more agents advances the workflow for processing invoices according to the specification.
  20. 20 . The procurement processing system of claim 19 , further comprising sequences of instructions which, when executed using the one or more processors of a procurement processing system, cause the one or more processors to execute generating the recommendation for altering the workflow for processing invoices based on the one or more first metrics regarding the activity of the one or more agents.

Description

PRIORITY This application claims the benefit under 35 U.S.C. § 120 as a continuation of application Ser. No. 17/179,273, filed Feb. 18, 2021, which claims the benefit, under 35 U.S.C. § 119(c), of U.S. Provisional Patent Application No. 63/132,336, filed Dec. 30, 2020, which is incorporated herein by reference. TECHNICAL FIELD OF THE INVENTION The present disclosure is in the technical field of configurable software platforms and platform interfaces. The disclosure also is in the technical field of computer-implemented process insight and process management. BACKGROUND Process management refers to assessing and changing computer-implemented processes, such as the sequence, branch paths, and substance of steps that are available or used in a complex online software-as-a-service (SaaS) platform. Process insight refers to obtaining data that can lead to understanding why certain steps are used. In process insight and process management, a sought-after metric relates to the amount of time that the process spends in one of several stages of the process as well as the overall time for the process to be carried from inception to completion. This metric, and those related to it, can be used to analyze various computer-implemented business processes to understand how efficiently the process is currently working and can be used to identify particular areas of inefficiency. As an example, managers, analysts, and other entities evaluating process efficiency often need to know how efficiently the processes involved in their respective areas of operation are working. In the context of online procurement or spend management computer systems, relevant processes for evaluation can include the process for submitting and approving invoices for reimbursement. Even in the relatively limited context of procurement analysis, business spend management (BSM) processes can help identify various inefficiencies and areas for improvement. For example, in a process flow that seeks to approve valid invoices submitted for review, there are competing interests in ensuring only that accurate and valid invoices are approved while avoiding unnecessary time in ensuring that submitted invoices are genuine. Additional time spent in creating, submitting, approving, and paying out for invoices amounts to misusing valuable resources that may be better used elsewhere. Inefficiencies can arise, for example, because different departments and information sources must be synthesized in order for reviewers to have the full context of reviews. Additionally, different stages of reviewing invoices may be handled by entirely different departments. Inefficiencies can involve excess CPU cycles, use of computer memory, use of non-volatile digital storage, network bandwidth, and other computing resources. Because of these inefficiencies, there is an opportunity to provide effective systems to facilitate the review and improvement of BSM processes. Remedies for these inefficiencies can include changes in configuration, operating parameters, or flow sequences of the SaaS application. There is an acute need to collect digital data representing inefficiencies in CPU cycles, use of computer memory, use of non-volatile digital storage, network bandwidth, and other computing resources so that automatic configuration changes, parameter changes, or reprogramming can be implemented or considered. SUMMARY OF PARTICULAR EMBODIMENTS The appended claims may serve as a summary of the invention. In one or more embodiments, a computer-implemented procurement processing system is programmed to detect activity of one or more agents of a plurality of agents of a customer that modifies a processing state of a first invoice of a plurality of invoices. Each invoice may be requesting approval from the customer. The activity may be conducted by the one or more agents through interacting with the procurement processing system. The procurement processing system is programmed to update, based on the detected activity, an invoice interaction history record associated with the first invoice in an invoice interaction history datastore communicatively coupled to the procurement processing system. The procurement processing system is programmed to generate one or more metrics regarding activity of the plurality of agents affecting a processing state of the plurality of invoices based on the updated invoice interaction history datastore. The procurement processing system is programmed to provide the one or more metrics for presentation to a user of the procurement processing system associated with the customer. In one or more embodiments, the one or more metrics may include one or more of an average processing time for the one or more agents to approve an invoice of the plurality of invoices, an average in-phase time for an invoice of the plurality of invoices corresponding to an amount of time spent by the invoice in a creation phase, review phase, or approval phase, a number of invoices create