[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

US20200150942A1 - Predicting whether a party will purchase a product - Google Patents

Predicting whether a party will purchase a product Download PDF

Info

Publication number
US20200150942A1
US20200150942A1 US16/571,598 US201916571598A US2020150942A1 US 20200150942 A1 US20200150942 A1 US 20200150942A1 US 201916571598 A US201916571598 A US 201916571598A US 2020150942 A1 US2020150942 A1 US 2020150942A1
Authority
US
United States
Prior art keywords
party
difference
product
parties
subset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US16/571,598
Inventor
Brandon LEHNER
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ivanti Inc
Original Assignee
Ivanti Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ivanti Inc filed Critical Ivanti Inc
Priority to US16/571,598 priority Critical patent/US20200150942A1/en
Publication of US20200150942A1 publication Critical patent/US20200150942A1/en
Assigned to MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT reassignment MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CellSec, Inc., IVANTI US LLC, IVANTI, INC., MobileIron, Inc., PULSE SECURE, LLC
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENT reassignment BANK OF AMERICA, N.A., AS COLLATERAL AGENT SECURITY INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CellSec, Inc., INVANTI US LLC, INVANTI, INC., MobileIron, Inc., PULSE SECURE, LLC
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities

Definitions

  • optimization of time and resources of a sales force can be very subjective. For example, determining which products are to be sold to which customer often includes subjective human input. As a result of the subjectivity, time and resources of a sales force are not be efficiently implemented.
  • FIG. 1 is a block diagram that illustrates an embodiment of computing system.
  • FIG. 2 is an embodiment of a scatter plot of related companies with respect to various parameters.
  • FIG. 3 depicts a method for predicting whether a party will purchase a product, according to various embodiments.
  • FIG. 4 depicts a method for predicting revenue generation, according to various embodiments.
  • FIG. 1 depicts a block diagram that illustrates an embodiment of computing system 100 .
  • System 100 includes, among other things, computing environment 110 , computing environment 120 , and cloud environment 130 .
  • computing environment 110 and computing environment 120 are communicatively coupled to cloud environment 130 and may access functionality of cloud environment 130 .
  • Computing environment 110 includes a plurality of devices 112 .
  • Devices 112 are any number of physical and/or virtual machines.
  • computing environment 110 is a corporate computing environment that includes tens of thousands of physical and/or virtual machines (e.g., devices 112 ).
  • Devices 112 include a variety of applications, such as applications 114 (e.g., installed software).
  • the devices may have the same installed applications or may have different installed software.
  • the installed software may be one or more software applications from one or more vendors.
  • Computing environment 120 is similar to computing environment 110 , as described above.
  • computing environment 120 includes devices 122 (similar to devices 112 ), and applications 124 (similar to applications 114 ).
  • computing environment 120 is a corporate computing environment that is separate from and does not communicate with computing environment 110 .
  • computing environments Although two computing environments are depicted, it should be appreciated that any number of computing environments may be communicatively coupled with cloud environment 130 .
  • Cloud environment 130 (e.g., a VMware GoTM Cloud) is a device comprising at least one processor and memory. As described herein, cloud environment 130 may be located in an Internet connected data center or a private cloud computing center coupled with one or more public and/or private networks. Cloud environment 130 typically couples with a virtual or physical entity in a computing environment (e.g., computing environments 110 and 120 ) through a network connection which may be a public network connection, private network connection, or some combination thereof. For example, a user in computing environment 110 may couple via an Internet connection with cloud environment 130 by accessing a web page or application presented by cloud environment 130 at a virtual or physical entity within computing environment 110 .
  • Cloud environment 130 is operable to scan computing environments (e.g., computing environments 110 and 120 ).
  • performing a scan refers to operations including, but not limited to: downloading data, such as an executable scan utility, to a computing environment 110 ; locally executing a process in the computing environment; collecting scan data from the computing environment being scanned within the computing environment; filtering the collected scan data within the computing environment being scanned; uploading scan data from the computing environment, which was scanned, to cloud environment 130 for additional processing, etc.
  • a scan involves data being collected by and sent from a device belonging to a computing environment or having access to the computing environment.
  • a scan may be initiated in computing environment through a web browser on a computer belonging to a user in computing environment 110 . While viewing a web page presented by cloud environment 130 , the user may select a selectable scan function on the web page.
  • data such as an executable scan utility is downloaded to computing environment 110 through the user's browser, and when allowed by the user to execute, a scan of computing environment 110 is conducted.
  • a scan utilizes an agentless scanner and collects scan data.
  • an agentless scanner is a local executable stored in temporary storage of a computing environment (e.g., a agentless scanner is a dissolving agent that does not persist in storage after scanning has completed). It should be appreciated that although an installed version of the agentless scanner does not persist in storage, the executable may be cached and reused on subsequent executions.
  • An agentless scanner is deployed, remotely scans computing environment 110 from a location within the computing environment 110 , and then forwards the collected scan data (which may be processed to some extent before forwarding) to a central location (e.g., database 140 ).
  • a scan utilizes an agent, such as a scanning utility that may be installed as a program at one or more locations within a computing environment, and which remains installed (persists in storage) after performing the scan.
  • An installed agent scanner may be downloaded and installed from cloud environment 130 and similarly scans and forwards the scan data, as described above with regard to the agentless scanner.
  • a scan determines the installed software (e.g., applications 114 and 124 ) within the computing environments. This can also involve the scan gathering configuration information of installed software on machines and virtual machines in a computing environment (e.g., computing environments 110 and 120 ). Scanning to gather configuration information may be referred to as software management scanning (e.g., gathering information about the operating system configuration, gathering information about management software including information about hardware configuration, etc.). Moreover, a scan determines which applications have been purchased from what vendors.
  • software management scanning e.g., gathering information about the operating system configuration, gathering information about management software including information about hardware configuration, etc.
  • a scan may involve a patch management scanner that scans a computing environment to discover patches installed to installed software of machines and virtual machines in the computing environment.
  • a patch management scanner is operable to identify both installed and missing security patches.
  • a plurality of scans are performed.
  • a plurality of scans may be performed in any manner, including one or more of the scans being performed synchronously, asynchronously, and/or one or more of the scans being performed in a particular order.
  • a network discover scan may be performed, followed by an installed software discover scan, followed by a software configuration scan being performed synchronously with an installed patch scan.
  • feedback may be provided synchronously such that a user can observe the progress of a scan. Scans may also be run asynchronously as a safeguard when a scan fails due to cancellation or failure.
  • the output of an individual scan is scan data that is sent (e.g., forwarded, streamed, etc.) to cloud environment 130 .
  • all scan data, gathered by a scan of computing environments is packaged before it is sent to cloud environment 130 in a single file transmission.
  • such scan data is streamed to cloud environment 130 .
  • a portion of scan data is gathered from a scan may be sent to cloud environment 130 as it is gathered from the scanning process within the respective computing environment (e.g., computing environments 110 and 120 ).
  • the output of the scans of the computing environments is data 142 which is stored in database 140 .
  • Data analyzer 150 is for analyzing data 142 .
  • Data analyzer 150 is implemented by a cloud environment 130 (e.g., a computing system).
  • cloud environment 130 e.g., a computing system
  • data analyzer 150 is implemented by a processor(s) of cloud environment 130 .
  • Data 142 is the data scanned from the computing environments, as described above.
  • Data analyzer 150 may access data other than the data scanned from the computing environments.
  • Data analyzer 150 receives and analyzes data 142 and generates predictions as to which company or companies are likely to purchase products.
  • computing environments e.g., computing environments 110 and 120
  • data analyzer 150 is able to predict, based on the data scanned from the discrete companies, which company or companies are likely to purchase products (e.g., applications, software packages, etc.).
  • the computing environments may access functionality of cloud environment 130 .
  • the computing environments may have software (e.g., VicenterTM) provided by the owner/controller (e.g., VMwareTM) of cloud environment 130 .
  • the owner/controller of cloud environment 130 is a vendor to one or more of the companies that control the computing environments.
  • data analyzer 150 may predict which company will most likely accept an upsell offer, predict which company will be most profitable to a vendor, determine which companies that the vendor should target for future sales, etc.
  • product purchase predictor 154 predicts which company will most likely accept an upsell offer, predicts which company will be most profitable to a vendor, etc.
  • Product purchase predictor 154 is implemented by cloud environment 130 (e.g., a computing system).
  • product purchase predictor 154 is implemented by a processor(s) of cloud environment 130 .
  • data analyzer 150 utilizes machine learning algorithm 152 for analyzing data 142 .
  • a machine learning algorithm provides computers the ability to learn without being explicitly programmed. More specifically, data analyzer 150 is able to analyze data 142 based solely on empirical parameters from data 142 . In other words, data analyzer 150 is able to analyze data 142 based on statistics/analytics without requiring subjective input or parameters from users.
  • Machine learning algorithm 152 can be any machine learning algorithm that is conducive to analyzing data 142 , such as, but not limited to, neural networks, genetic programming, Bayesian networks, etc.
  • FIG. 2 depicts an embodiment of scatter plot 200 of an analysis accomplished by data analyzer 150 .
  • machine learning algorithm 152 analyzes data 142 , which includes data from at least thirteen different companies. Eleven companies are depicted as an “O” and two companies are depicted as an “X,” which will be described in further detail below. It is noted that data 142 can include data scanned from any number of different companies.
  • Machine learning algorithm 152 determines that there are two important parameters (e.g., parameter X and parameter Y) that will facilitate in predicting which company or companies are likely to purchase products. It is noted that any number of parameters may be determined by the machine learning algorithm.
  • Parameters X and Y are any parameters or combination of parameters that may be gathered from data 142 .
  • parameters X and Y can be any one of, but are not limited to, number of hypervisors on a network, number of VcentersTM, number of virtual machines, number of users in company, etc.
  • Parameter X is the number of VcentersTM
  • Parameter Y is the number of hypervisors on the network.
  • the data plotted on the scatter plot 200 depicts a group of companies that are clustered together in cluster 210 .
  • the cluster of companies have similar with respect to parameter X (e.g., number of VcentersTM) and parameter Y (e.g., number of hypervisors in the network).
  • the companies depicted by an “O” are companies that are up-to-date on current licenses for various products of the vendor.
  • the companies 212 and 214 depicted by an “X” within cluster 210 are companies that are not up-to-date on current licenses for various products of the vendor. As such, companies 212 and 214 are prime candidates for updating their current licenses.
  • the vendor is able to predict that companies 212 and 214 that are not up-to-date on their current licenses are likely to update their current licenses because the eight companies in cluster 210 (which are similar to the two companies that are not up-to-date) have already updated their current licenses.
  • Parameter X is virtualized workload and Parameter Y is the number of users in the company.
  • companies are grouped together in cluster 210 that are most related to each other with respect to Parameter X and Parameter Y.
  • the companies, depicted as an “O” in cluster 210 have purchased a particular application from the vendor, while companies 212 and 214 have not purchased the particular application. Accordingly, it can be predicted that companies 212 and 214 are prime candidates for purchasing the particular application.
  • the machine learning algorithm may predict which company will most likely accept an upsell offer, predict which company will be most profitable to a vendor, determine which companies that the vendor should target for future sales, etc.
  • the vendor is able to prioritize on who to sell to (e.g., current and/or future users) and which companies may bring in the most revenue.
  • Notification generator 160 is for generating notification 162 .
  • Notification generator 160 is implemented by cloud environment 130 (e.g., a computing system).
  • product purchase predictor 154 is implemented by a processor(s) of cloud environment 130 .
  • Notification 162 can be any notification that is for notifying the vendor and/or companies of the results of the data analyzer 150 .
  • notification 162 is the output of the machine learning algorithm and is provided to the two companies depicted by “X” shown in FIG. 2 , that are likely to purchase products from the vendor.
  • Notification 162 can be automatically provided to the vendor and/or companies. For example, an automated upsell inquiry is provided to the companies.
  • Notification 162 can be presented to a customer via a web portal. Notification 162 can be pushed to a customer via email, by a product, or a reporting tool that reports to a management team or engineers, etc.
  • flow diagrams 300 and 400 illustrate example procedures used by various embodiments.
  • Flow diagrams 300 and 400 include some procedures that, in various embodiments, are carried out by a processor under the control of computer-readable and computer-executable instructions.
  • procedures described herein and in conjunction with flow diagrams 300 and/or 400 are, or may be, implemented using a computer, in various embodiments.
  • the computer-readable and computer-executable instructions can reside in any tangible computer readable storage media.
  • tangible computer readable storage media include random access memory, read only memory, magnetic disks, solid state drives/“disks,” and optical disks, any or all of which may be employed with computer environments and/or cloud environment 130 .
  • the computer-readable and computer-executable instructions, which reside on tangible computer readable storage media, are used to control or operate in conjunction with, for example, one or some combination of processors of the computer environments and/or cloud environment 130 .
  • the processor(s) may be physical or virtual or some combination (it should also be appreciated that a virtual processor is implemented on physical hardware).
  • embodiments are well suited to performing various other procedures or variations of the procedures recited in flow diagrams 300 and/or 400 .
  • the procedures in flow diagrams 300 and/or 400 may be performed in an order different than presented and/or not all of the procedures described in one or more of these flow diagrams may be performed. It is further appreciated that procedures described in flow diagrams 300 and/or 400 may be implemented in hardware, or a combination of hardware with firmware and/or software.
  • FIG. 3 depicts a flow diagram for a method for predicting whether a party will purchase a product, according to various embodiments.
  • data is accessed, wherein the data is obtained from a plurality of computing environments of a plurality of parties.
  • data 142 is comprised of data from respective various computing environments (e.g., computing environments 110 and 120 ).
  • the computing environments are discrete computing environments from respective parties.
  • data is accessed, by a vendor, wherein the data is scanned from computing environments of a plurality of parties, wherein at least one of the plurality of parties is a user of a product of the vendor.
  • data 142 is accessed by the vendor (the vendor is the owner of cloud environment 130 ).
  • the vendor is the owner of cloud environment 130 .
  • At least one of the companies or parties is a user or customer of product(s) of the vendor (e.g., VMwareTM).
  • the data is analyzed.
  • data analyzer 150 analyzes data 142 .
  • data analyzer 150 accesses and analyzes data 142 to facilitate in predicting whether a party will purchase a product.
  • the data is analyzed by a machine learning algorithm.
  • data 142 is accessed and analyzed by machine learning algorithm 152 and determines which customers are related the most, based on various parameters.
  • the plurality of parties are grouped into clusters based on a plurality of properties.
  • machine learning algorithm 152 determines that ten companies are related together based on parameters X and Y. As such, the ten companies are grouped together into cluster 210 .
  • whether one of the plurality of parties will purchase a product is predicted based on the analyzing the data. For example, companies are grouped together in cluster 210 with respect to relationships between various parameters. Some of the companies have purchased certain products, but others have not. Accordingly, it can be predicted that the companies that have not purchased the certain products are likely to do so because the other companies in the cluster have purchased the products.
  • whether one of the plurality of parties will accept an upsell offer is predicted. For example, the machine learning algorithm predicts whether one or more companies will accept an upsell offer. That is, a user of the vendor's products is predicted to accept an upsell offer to upgrade already purchased products.
  • company 214 is more “centrally” located within cluster 210 , as compared to company 212 . As such, company 214 is more similar to the other companies within cluster 210 , depicted by an “O,” which have already accepted an upsell offer. Therefore, company 214 is more likely to accept an upsell offer than company 212 .
  • a potential new customer of a vendor will purchase a product of the vendor is predicted. For example, the computing environments of companies 212 and 214 are scanned. Additionally, companies 212 and 214 are presently not customers or users of products from the vendor.
  • companies 212 and 214 are similar to the other eight companies in cluster 210 , who are customers or users of products from the vendor. Therefore, the machine learning algorithm is able to predict that companies 212 and 214 , which are potential new customers, will purchase a product of the vendor.
  • revenue generation of the plurality of parties is predicted.
  • companies 212 and 214 are grouped in cluster 210 with eight other similar companies, with respect to various parameters.
  • the eight other companies have an average revenue generation for the vendor of amount five million dollars per year. Therefore, the revenue generation of both companies 212 and 214 for the vendor is also around five million dollars per year.
  • notification generator 160 provides a notification of a prediction by data analyzer 150 to a company (e.g., current or future user of vendor's products) and/or the vendor (e.g., a sales team).
  • company e.g., current or future user of vendor's products
  • vendor e.g., a sales team
  • a notification is provided to a management team of the vendor.
  • a sales team of the vendor is provided a notification of the prediction by data analyzer 150 .
  • the vendor is able focus its time and energy by focusing on the company or companies that are predicted to purchase products from the vendor.
  • a notification is automatically provided to the one of the plurality of parties predicted to purchase the product from a vendor. For example, if company 214 is predicted to purchase a product from the vendor, then company 214 is automatically provided a notification of an offer to purchase the product from the vendor.
  • a priority is given to a party that an upsell offer is to be provided to. For example, if companies 212 and 214 are deemed to have an upsell offer provided to them, then the vendor gives priority to companies 212 and 214 over other companies.
  • any of the procedures, stated above, regarding method 300 may be implemented in hardware, or a combination of hardware with firmware and/or software.
  • any of the procedures are implemented by a processor(s) of cloud environment 130 .
  • FIG. 4 depicts an embodiment of a flow diagram of a method for predicting revenue generation, according to various embodiments.
  • data is accessed, by a vendor, wherein the data is obtained from a plurality of computing environments of a plurality of parties.
  • data 142 is accessed by the vendor (the vendor is the owner of cloud environment 130 ).
  • the data is obtained from various computing environments (e.g., computing environments 110 and 120 ) which are owned and operated by discrete companies.
  • data is accessed, by a vendor, wherein the data is scanned from computing environments of a plurality of parties, wherein at least one of the plurality of parties is a user of a product of the vendor.
  • data 142 is accessed by the vendor (the vendor is the owner of cloud environment 130 ).
  • the vendor is the owner of cloud environment 130 .
  • At least one of the companies or parties is a user or customer of product(s) of the vendor (e.g., VMware®).
  • the data is analyzed.
  • data analyzer 150 analyzes data 142 .
  • data analyzer 150 accesses and analyzes data 142 to facilitate in predicting the amount of revenue will be generated by a company.
  • the data is analyzed by a machine learning algorithm.
  • data 142 is accessed and analyzed by machine learning algorithm 152 and determines which customers are related the most, based on various parameters.
  • revenue generation of the plurality of parties is predicted based on the analyzing of the data. For example, companies 212 and 214 are grouped in cluster 210 with eight other similar companies, with respect to various parameters. The eight other companies have an average revenue generation for the vendor of amount five million dollars per year. Therefore, the revenue generation of both companies 212 and 214 for the vendor is also around five million dollars per year.
  • whether one of the plurality of parties will accept an upsell offer is predicted. For example, it is predicted that company 212 and/or company 214 will accept an upsell offer because both company 212 and company 214 are clustered with other companies who have accepted an upsell offer.
  • a potential new customer of a vendor will purchase a product of the vendor is predicted. For example, the computing environments of companies 212 and 214 are scanned. Additionally, companies 212 and 214 are presently not customers or users of products from the vendor. As depicted in FIG. 2 , companies 212 and 214 are similar to the other eight companies in cluster 210 , who are customers or users of products from the vendor. Therefore, the machine learning algorithm is able to predict that companies 212 and 214 , which are potential new customers, will purchase a product of the vendor.
  • notification generator 160 provides a notification of a prediction by data analyzer 150 to a company (e.g., current or future user of vendor's products) and/or the vendor (e.g., a sales team).
  • company e.g., current or future user of vendor's products
  • vendor e.g., a sales team
  • a priority is given to a party that an upsell offer is to be provided to. For example, if companies 212 and 214 are deemed to have an upsell offer provided to them, then the vendor gives priority to companies 212 and 214 over other companies.
  • any of the procedures, stated above, regarding method 300 may be implemented in hardware, or a combination of hardware with firmware and/or software.
  • any of the procedures are implemented by a processor(s) of cloud environment 130 .

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

A method for predicting whether a party will purchase a product. The method includes accessing data wherein the data is obtained from a plurality of computing environments of a plurality of parties, analyzing the data; and predicting whether one of the plurality of parties will purchase a product based on the analyzed data.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • This application is a continuation of U.S. application Ser. No. 15/671,645, entitled “Predicting Whether a Party Will Purchase a Product,” filed Aug. 8, 2017, which is a divisional of U.S. application Ser. No. 13/771,753, entitled “Predicting Whether a Party Will Purchase a Product,” filed Feb. 20, 2013, (now U.S. Pat. No. 9,733,917), the disclosure of each of which is incorporated by reference herein in its entirety for all purposes.
  • BACKGROUND
  • Optimization of time and resources of a sales force can be very subjective. For example, determining which products are to be sold to which customer often includes subjective human input. As a result of the subjectivity, time and resources of a sales force are not be efficiently implemented.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings, which are incorporated in and form a part of this specification, illustrate various embodiments and, together with the Description of Embodiments, serve to explain principles discussed below. The drawings referred to in this brief description of the drawings should not be understood as being drawn to scale unless specifically noted.
  • FIG. 1 is a block diagram that illustrates an embodiment of computing system.
  • FIG. 2 is an embodiment of a scatter plot of related companies with respect to various parameters.
  • FIG. 3 depicts a method for predicting whether a party will purchase a product, according to various embodiments.
  • FIG. 4 depicts a method for predicting revenue generation, according to various embodiments.
  • DESCRIPTION OF EMBODIMENTS
  • Reference will now be made in detail to various embodiments, examples of which are illustrated in the accompanying drawings. While various embodiments are discussed herein, it will be understood that they are not intended to be limiting. On the contrary, the presented embodiments are intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope the various embodiments as defined by the appended claims. Furthermore, in this Description of Embodiments, numerous specific details are set forth in order to provide a thorough understanding. However, embodiments may be practiced without one or more of these specific details. In other instances, well known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the described embodiments.
  • FIG. 1 depicts a block diagram that illustrates an embodiment of computing system 100. System 100 includes, among other things, computing environment 110, computing environment 120, and cloud environment 130. In general, computing environment 110 and computing environment 120 are communicatively coupled to cloud environment 130 and may access functionality of cloud environment 130.
  • Computing environment 110 includes a plurality of devices 112. Devices 112 are any number of physical and/or virtual machines. For example, in some embodiments, computing environment 110 is a corporate computing environment that includes tens of thousands of physical and/or virtual machines (e.g., devices 112).
  • Devices 112 include a variety of applications, such as applications 114 (e.g., installed software). The devices may have the same installed applications or may have different installed software. The installed software may be one or more software applications from one or more vendors.
  • Computing environment 120 is similar to computing environment 110, as described above. For example, computing environment 120 includes devices 122 (similar to devices 112), and applications 124 (similar to applications 114). In one embodiment, computing environment 120 is a corporate computing environment that is separate from and does not communicate with computing environment 110.
  • Although two computing environments are depicted, it should be appreciated that any number of computing environments may be communicatively coupled with cloud environment 130.
  • Cloud environment 130 (e.g., a VMware Go™ Cloud) is a device comprising at least one processor and memory. As described herein, cloud environment 130 may be located in an Internet connected data center or a private cloud computing center coupled with one or more public and/or private networks. Cloud environment 130 typically couples with a virtual or physical entity in a computing environment (e.g., computing environments 110 and 120) through a network connection which may be a public network connection, private network connection, or some combination thereof. For example, a user in computing environment 110 may couple via an Internet connection with cloud environment 130 by accessing a web page or application presented by cloud environment 130 at a virtual or physical entity within computing environment 110.
  • Example Computing Environment Scanning
  • Cloud environment 130 is operable to scan computing environments (e.g., computing environments 110 and 120). For the purposes of this disclosure, performing a scan refers to operations including, but not limited to: downloading data, such as an executable scan utility, to a computing environment 110; locally executing a process in the computing environment; collecting scan data from the computing environment being scanned within the computing environment; filtering the collected scan data within the computing environment being scanned; uploading scan data from the computing environment, which was scanned, to cloud environment 130 for additional processing, etc.
  • In one embodiment, a scan involves data being collected by and sent from a device belonging to a computing environment or having access to the computing environment. For example, a scan may be initiated in computing environment through a web browser on a computer belonging to a user in computing environment 110. While viewing a web page presented by cloud environment 130, the user may select a selectable scan function on the web page. In response, data such as an executable scan utility is downloaded to computing environment 110 through the user's browser, and when allowed by the user to execute, a scan of computing environment 110 is conducted.
  • In one embodiment, a scan utilizes an agentless scanner and collects scan data. In an embodiment, an agentless scanner is a local executable stored in temporary storage of a computing environment (e.g., a agentless scanner is a dissolving agent that does not persist in storage after scanning has completed). It should be appreciated that although an installed version of the agentless scanner does not persist in storage, the executable may be cached and reused on subsequent executions. An agentless scanner is deployed, remotely scans computing environment 110 from a location within the computing environment 110, and then forwards the collected scan data (which may be processed to some extent before forwarding) to a central location (e.g., database 140).
  • In another embodiment, a scan utilizes an agent, such as a scanning utility that may be installed as a program at one or more locations within a computing environment, and which remains installed (persists in storage) after performing the scan. An installed agent scanner may be downloaded and installed from cloud environment 130 and similarly scans and forwards the scan data, as described above with regard to the agentless scanner.
  • In an embodiment, a scan determines the installed software (e.g., applications 114 and 124) within the computing environments. This can also involve the scan gathering configuration information of installed software on machines and virtual machines in a computing environment (e.g., computing environments 110 and 120). Scanning to gather configuration information may be referred to as software management scanning (e.g., gathering information about the operating system configuration, gathering information about management software including information about hardware configuration, etc.). Moreover, a scan determines which applications have been purchased from what vendors.
  • In an embodiment, a scan may involve a patch management scanner that scans a computing environment to discover patches installed to installed software of machines and virtual machines in the computing environment. In one embodiment, a patch management scanner is operable to identify both installed and missing security patches.
  • In some embodiments, a plurality of scans are performed. A plurality of scans may be performed in any manner, including one or more of the scans being performed synchronously, asynchronously, and/or one or more of the scans being performed in a particular order. For example, a network discover scan may be performed, followed by an installed software discover scan, followed by a software configuration scan being performed synchronously with an installed patch scan. In one embodiment, feedback may be provided synchronously such that a user can observe the progress of a scan. Scans may also be run asynchronously as a safeguard when a scan fails due to cancellation or failure.
  • Sending Data to a Cloud Environment
  • In an embodiment, the output of an individual scan is scan data that is sent (e.g., forwarded, streamed, etc.) to cloud environment 130. In one embodiment, for example, all scan data, gathered by a scan of computing environments is packaged before it is sent to cloud environment 130 in a single file transmission. In another embodiment, such scan data is streamed to cloud environment 130. In such a case, a portion of scan data is gathered from a scan may be sent to cloud environment 130 as it is gathered from the scanning process within the respective computing environment (e.g., computing environments 110 and 120).
  • The output of the scans of the computing environments is data 142 which is stored in database 140.
  • Analyzing Data
  • Data analyzer 150 is for analyzing data 142. Data analyzer 150 is implemented by a cloud environment 130 (e.g., a computing system). For example, data analyzer 150 is implemented by a processor(s) of cloud environment 130.
  • Data 142 is the data scanned from the computing environments, as described above. Data analyzer 150 may access data other than the data scanned from the computing environments.
  • Data analyzer 150 receives and analyzes data 142 and generates predictions as to which company or companies are likely to purchase products. For example, computing environments (e.g., computing environments 110 and 120) are computing environments of discrete companies. Accordingly, data analyzer 150 is able to predict, based on the data scanned from the discrete companies, which company or companies are likely to purchase products (e.g., applications, software packages, etc.).
  • As stated above, the computing environments may access functionality of cloud environment 130. In particular, the computing environments may have software (e.g., Vicenter™) provided by the owner/controller (e.g., VMware™) of cloud environment 130. As such, the owner/controller of cloud environment 130 is a vendor to one or more of the companies that control the computing environments.
  • In various embodiments, data analyzer 150 may predict which company will most likely accept an upsell offer, predict which company will be most profitable to a vendor, determine which companies that the vendor should target for future sales, etc.
  • In one embodiment, product purchase predictor 154, among other things, predicts which company will most likely accept an upsell offer, predicts which company will be most profitable to a vendor, etc. Product purchase predictor 154 is implemented by cloud environment 130 (e.g., a computing system). For example, product purchase predictor 154 is implemented by a processor(s) of cloud environment 130.
  • In one embodiment, data analyzer 150 utilizes machine learning algorithm 152 for analyzing data 142. In general, a machine learning algorithm provides computers the ability to learn without being explicitly programmed. More specifically, data analyzer 150 is able to analyze data 142 based solely on empirical parameters from data 142. In other words, data analyzer 150 is able to analyze data 142 based on statistics/analytics without requiring subjective input or parameters from users.
  • Machine learning algorithm 152 can be any machine learning algorithm that is conducive to analyzing data 142, such as, but not limited to, neural networks, genetic programming, Bayesian networks, etc.
  • FIG. 2 depicts an embodiment of scatter plot 200 of an analysis accomplished by data analyzer 150. For example, machine learning algorithm 152 analyzes data 142, which includes data from at least thirteen different companies. Eleven companies are depicted as an “O” and two companies are depicted as an “X,” which will be described in further detail below. It is noted that data 142 can include data scanned from any number of different companies.
  • Machine learning algorithm 152 determines that there are two important parameters (e.g., parameter X and parameter Y) that will facilitate in predicting which company or companies are likely to purchase products. It is noted that any number of parameters may be determined by the machine learning algorithm.
  • Parameters X and Y are any parameters or combination of parameters that may be gathered from data 142. For example, parameters X and Y can be any one of, but are not limited to, number of hypervisors on a network, number of Vcenters™, number of virtual machines, number of users in company, etc.
  • Referring to FIG. 2, in one embodiment, Parameter X is the number of Vcenters™, and Parameter Y is the number of hypervisors on the network. The data plotted on the scatter plot 200 depicts a group of companies that are clustered together in cluster 210. The cluster of companies have similar with respect to parameter X (e.g., number of Vcenters™) and parameter Y (e.g., number of hypervisors in the network).
  • Moreover, the companies, depicted by an “O” are companies that are up-to-date on current licenses for various products of the vendor. In contrast, the companies 212 and 214, depicted by an “X” within cluster 210 are companies that are not up-to-date on current licenses for various products of the vendor. As such, companies 212 and 214 are prime candidates for updating their current licenses.
  • Therefore, based on the machine learning algorithm, the vendor is able to predict that companies 212 and 214 that are not up-to-date on their current licenses are likely to update their current licenses because the eight companies in cluster 210 (which are similar to the two companies that are not up-to-date) have already updated their current licenses.
  • In another example, Parameter X is virtualized workload and Parameter Y is the number of users in the company. As such, companies are grouped together in cluster 210 that are most related to each other with respect to Parameter X and Parameter Y. The companies, depicted as an “O” in cluster 210 have purchased a particular application from the vendor, while companies 212 and 214 have not purchased the particular application. Accordingly, it can be predicted that companies 212 and 214 are prime candidates for purchasing the particular application.
  • In various embodiments, the machine learning algorithm may predict which company will most likely accept an upsell offer, predict which company will be most profitable to a vendor, determine which companies that the vendor should target for future sales, etc. Moreover, the vendor is able to prioritize on who to sell to (e.g., current and/or future users) and which companies may bring in the most revenue.
  • Generating a Notification
  • Notification generator 160 is for generating notification 162. Notification generator 160 is implemented by cloud environment 130 (e.g., a computing system). For example, product purchase predictor 154 is implemented by a processor(s) of cloud environment 130.
  • Notification 162 can be any notification that is for notifying the vendor and/or companies of the results of the data analyzer 150. For example, notification 162 is the output of the machine learning algorithm and is provided to the two companies depicted by “X” shown in FIG. 2, that are likely to purchase products from the vendor.
  • Notification 162 can be automatically provided to the vendor and/or companies. For example, an automated upsell inquiry is provided to the companies.
  • Notification 162 can be presented to a customer via a web portal. Notification 162 can be pushed to a customer via email, by a product, or a reporting tool that reports to a management team or engineers, etc.
  • Example Methods of Operation
  • The following discussion sets forth in detail the operation of some example methods of operation of embodiments. With reference to FIGS. 3 and 4, flow diagrams 300 and 400 illustrate example procedures used by various embodiments. Flow diagrams 300 and 400 include some procedures that, in various embodiments, are carried out by a processor under the control of computer-readable and computer-executable instructions. In this fashion, procedures described herein and in conjunction with flow diagrams 300 and/or 400 are, or may be, implemented using a computer, in various embodiments. The computer-readable and computer-executable instructions can reside in any tangible computer readable storage media. Some non-limiting examples of tangible computer readable storage media include random access memory, read only memory, magnetic disks, solid state drives/“disks,” and optical disks, any or all of which may be employed with computer environments and/or cloud environment 130. The computer-readable and computer-executable instructions, which reside on tangible computer readable storage media, are used to control or operate in conjunction with, for example, one or some combination of processors of the computer environments and/or cloud environment 130. It is appreciated that the processor(s) may be physical or virtual or some combination (it should also be appreciated that a virtual processor is implemented on physical hardware). Although specific procedures are disclosed in flow diagrams 300 and/or 400, such procedures are examples. That is, embodiments are well suited to performing various other procedures or variations of the procedures recited in flow diagrams 300 and/or 400. Likewise, in some embodiments, the procedures in flow diagrams 300 and/or 400 may be performed in an order different than presented and/or not all of the procedures described in one or more of these flow diagrams may be performed. It is further appreciated that procedures described in flow diagrams 300 and/or 400 may be implemented in hardware, or a combination of hardware with firmware and/or software.
  • FIG. 3 depicts a flow diagram for a method for predicting whether a party will purchase a product, according to various embodiments.
  • Referring now to FIG. 3, at 310, data is accessed, wherein the data is obtained from a plurality of computing environments of a plurality of parties. For example, data 142 is comprised of data from respective various computing environments (e.g., computing environments 110 and 120). The computing environments are discrete computing environments from respective parties.
  • At 312, in one embodiment, data is accessed, by a vendor, wherein the data is scanned from computing environments of a plurality of parties, wherein at least one of the plurality of parties is a user of a product of the vendor.
  • For example, data 142 is accessed by the vendor (the vendor is the owner of cloud environment 130). At least one of the companies or parties is a user or customer of product(s) of the vendor (e.g., VMware™).
  • At 320, the data is analyzed. For example, data analyzer 150 analyzes data 142. For example, data analyzer 150 accesses and analyzes data 142 to facilitate in predicting whether a party will purchase a product.
  • At 322, in one embodiment, the data is analyzed by a machine learning algorithm. For example, data 142 is accessed and analyzed by machine learning algorithm 152 and determines which customers are related the most, based on various parameters.
  • At 324, in another embodiment, the plurality of parties are grouped into clusters based on a plurality of properties. For example, machine learning algorithm 152 determines that ten companies are related together based on parameters X and Y. As such, the ten companies are grouped together into cluster 210.
  • At 330, whether one of the plurality of parties will purchase a product is predicted based on the analyzing the data. For example, companies are grouped together in cluster 210 with respect to relationships between various parameters. Some of the companies have purchased certain products, but others have not. Accordingly, it can be predicted that the companies that have not purchased the certain products are likely to do so because the other companies in the cluster have purchased the products.
  • At 332, whether one of the plurality of parties will accept an upsell offer is predicted. For example, the machine learning algorithm predicts whether one or more companies will accept an upsell offer. That is, a user of the vendor's products is predicted to accept an upsell offer to upgrade already purchased products.
  • At 334, which one of the plurality of parties will most likely accept an upsell offer is predicted. For example, company 214 is more “centrally” located within cluster 210, as compared to company 212. As such, company 214 is more similar to the other companies within cluster 210, depicted by an “O,” which have already accepted an upsell offer. Therefore, company 214 is more likely to accept an upsell offer than company 212.
  • At 336, whether a potential new customer of a vendor will purchase a product of the vendor is predicted. For example, the computing environments of companies 212 and 214 are scanned. Additionally, companies 212 and 214 are presently not customers or users of products from the vendor.
  • According to the scatter plot of companies, for example, as depicted in FIG. 2, companies 212 and 214 are similar to the other eight companies in cluster 210, who are customers or users of products from the vendor. Therefore, the machine learning algorithm is able to predict that companies 212 and 214, which are potential new customers, will purchase a product of the vendor.
  • At 338, revenue generation of the plurality of parties is predicted. For example, companies 212 and 214 are grouped in cluster 210 with eight other similar companies, with respect to various parameters. The eight other companies have an average revenue generation for the vendor of amount five million dollars per year. Therefore, the revenue generation of both companies 212 and 214 for the vendor is also around five million dollars per year.
  • At 340, a notification of the prediction is provided. For example, notification generator 160 provides a notification of a prediction by data analyzer 150 to a company (e.g., current or future user of vendor's products) and/or the vendor (e.g., a sales team).
  • At 342, a notification is provided to a management team of the vendor. For example, a sales team of the vendor is provided a notification of the prediction by data analyzer 150. As such, the vendor is able focus its time and energy by focusing on the company or companies that are predicted to purchase products from the vendor.
  • At 344, a notification is automatically provided to the one of the plurality of parties predicted to purchase the product from a vendor. For example, if company 214 is predicted to purchase a product from the vendor, then company 214 is automatically provided a notification of an offer to purchase the product from the vendor.
  • At 350, a priority is given to a party that an upsell offer is to be provided to. For example, if companies 212 and 214 are deemed to have an upsell offer provided to them, then the vendor gives priority to companies 212 and 214 over other companies.
  • It is noted that any of the procedures, stated above, regarding method 300 may be implemented in hardware, or a combination of hardware with firmware and/or software. For example, any of the procedures are implemented by a processor(s) of cloud environment 130.
  • FIG. 4 depicts an embodiment of a flow diagram of a method for predicting revenue generation, according to various embodiments.
  • Referring now to FIG. 4, at 410, data is accessed, by a vendor, wherein the data is obtained from a plurality of computing environments of a plurality of parties. For example, data 142 is accessed by the vendor (the vendor is the owner of cloud environment 130). The data is obtained from various computing environments (e.g., computing environments 110 and 120) which are owned and operated by discrete companies.
  • At 412, in one embodiment, data is accessed, by a vendor, wherein the data is scanned from computing environments of a plurality of parties, wherein at least one of the plurality of parties is a user of a product of the vendor.
  • For example, data 142 is accessed by the vendor (the vendor is the owner of cloud environment 130). At least one of the companies or parties is a user or customer of product(s) of the vendor (e.g., VMware®).
  • At 420, the data is analyzed. For example, data analyzer 150 analyzes data 142. For example, data analyzer 150 accesses and analyzes data 142 to facilitate in predicting the amount of revenue will be generated by a company.
  • At 422, in one embodiment, the data is analyzed by a machine learning algorithm. For example, data 142 is accessed and analyzed by machine learning algorithm 152 and determines which customers are related the most, based on various parameters.
  • At 430, revenue generation of the plurality of parties is predicted based on the analyzing of the data. For example, companies 212 and 214 are grouped in cluster 210 with eight other similar companies, with respect to various parameters. The eight other companies have an average revenue generation for the vendor of amount five million dollars per year. Therefore, the revenue generation of both companies 212 and 214 for the vendor is also around five million dollars per year.
  • At 432, in one embodiment, whether one of the plurality of parties will accept an upsell offer is predicted. For example, it is predicted that company 212 and/or company 214 will accept an upsell offer because both company 212 and company 214 are clustered with other companies who have accepted an upsell offer.
  • At 434, whether a potential new customer of a vendor will purchase a product of the vendor is predicted. For example, the computing environments of companies 212 and 214 are scanned. Additionally, companies 212 and 214 are presently not customers or users of products from the vendor. As depicted in FIG. 2, companies 212 and 214 are similar to the other eight companies in cluster 210, who are customers or users of products from the vendor. Therefore, the machine learning algorithm is able to predict that companies 212 and 214, which are potential new customers, will purchase a product of the vendor.
  • At 440, a notification of the prediction is provided. For example, notification generator 160 provides a notification of a prediction by data analyzer 150 to a company (e.g., current or future user of vendor's products) and/or the vendor (e.g., a sales team).
  • At 450, a priority is given to a party that an upsell offer is to be provided to. For example, if companies 212 and 214 are deemed to have an upsell offer provided to them, then the vendor gives priority to companies 212 and 214 over other companies.
  • It is noted that any of the procedures, stated above, regarding method 300 may be implemented in hardware, or a combination of hardware with firmware and/or software. For example, any of the procedures are implemented by a processor(s) of cloud environment 130.
  • Example embodiments of the subject matter are thus described. Although various embodiments of the have been described in a language specific to structural features and/or methodological acts, it is to be understood that the appended claims are not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims and their equivalents.

Claims (21)

1-20. (canceled)
21. A computer-implemented method for predicting revenue generation, the method comprising:
accessing data associated with two or more computing environments from two or more computing devices, wherein the data is collected by an executable of a scan utility stored on temporary storage of the computing devices, and each computing environment of the two or more computing environments is associated with a party of a plurality of parties;
based on the accessed data, identifying a parameter that facilitates in prediction of revenue generation using a machine learning model;
determining a value for the parameter for each party of the plurality of parties;
clustering a subset of the plurality of parties into a cluster based on the determined values for the parameter;
identifying a difference in a status of an application between a first party of the subset and two or more remaining parties of the subset; and
predicting that the first party will purchase a product or accept an upsell offer associated with the product when the purchase or the upsell eliminates the difference in the status of the application between the first party and the two or more remaining parties.
22. The method of claim 21, wherein:
the product is associated with the application;
one or both of the application and the product are provided by a vendor; and
the subset of the plurality of parties are users of the product.
23. The method of claim 21, further comprising communicating the scan utility directly to an agent of the two or more computing devices, wherein the scan utility is configured to be cached and reused on a subsequent execution.
24. The method of claim 21, wherein each computing environment of the two or more computing environments includes one or more or a combination of:
a set of machines;
a set of applications; and
a set of networks.
25. The method of claim 21, wherein each party of the subset included in the cluster have a value for the parameter that is within a predefined difference to the values for the parameters of other parties in the subset.
26. The method of claim 21, further comprising prioritizing an offer for a purchase the product or an upsell directed to the first party over other offers to other parties of the subset.
27. The method of claim 21, wherein:
the difference between in status between the first party and the remaining parties is a first difference in a first status; and
the method further comprises:
identifying a second difference in a second status of the application between a second party of the subset and the two or more remaining parties of the subset;
predicting that the second party will purchase the product or accept an upsell offer associated with the product based on the second difference; and
responsive to the first difference being less than the second difference, determining that it is more likely that the first party will purchase the product or accept the upsell offer than the second party.
28. The method of claim 21, wherein:
the difference between in status between the first party and the remaining parties is a first difference in a first status; and
the method further comprises:
identifying a second difference in a second status of the application between a second party of the subset and the two or more remaining parties of the subset;
predicting that the second party will purchase the product or accept an upsell offer associated with the product based on the second difference; and
responsive to the first difference being less than the second difference, prioritizing a first offer for a purchase the product or an upsell directed to the first party over a second offer for a purchase the product or an upsell directed to the second party.
29. The method of claim 21, wherein the parameter includes:
a number of hypervisors on a network of an environment of the two or more computing environments;
a number of virtual machines of an environment of the two or more computing environments; or
a number of users in company associated with one of the parties of the plurality of parties.
30. The method of claim 21, further comprising automatically providing a notification of the prediction to one or both of a management team of a vendor and the first party.
31. One or more non-transitory computer-readable media storing one or more programs that are configured, in response to execution by one or more processors, to cause a system to execute or control execution of operations comprising:
accessing data associated with two or more computing environments from two or more computing devices, wherein the data is collected by an executable of a scan utility stored on temporary storage of the computing devices, and each computing environment of the two or more computing environments is associated with a party of a plurality of parties;
based on the accessed data, identifying a parameter that facilitates in prediction of revenue generation using a machine learning model;
determining a value for the parameter for each party of the plurality of parties;
clustering a subset of the plurality of parties into a cluster based on the determined values for the parameter;
identifying a difference in a status of an application between a first party of the subset and two or more remaining parties of the subset; and
predicting that the first party will purchase a product or accept an upsell offer associated with the product when the purchase or the upsell eliminates the difference in the status of the application between the first party and the two or more remaining parties.
32. The one or more non-transitory computer-readable media of claim 31, wherein:
the product is associated with the application;
one or both of the application and the product are provided by a vendor; and
the subset of the plurality of parties are users of the product.
33. The one or more non-transitory computer-readable media of claim 31, wherein:
the operations further comprise communicating the scan utility directly to an agent of the two or more computing devices; and
the scan utility is configured to be cached and reused on a subsequent execution.
34. The one or more non-transitory computer-readable media of claim 31, wherein each computing environment of the two or more computing environments includes one or more or a combination of:
a set of machines;
a set of applications; and
a set of networks.
35. The one or more non-transitory computer-readable media of claim 31, wherein each party of the subset included in the cluster have a value for the parameter that is within a predefined difference to the values for the parameters of other parties in the subset.
36. The one or more non-transitory computer-readable media of claim 31, wherein the operations further comprise prioritizing an offer for a purchase the product or an upsell directed to the first party over other offers to other parties of the subset.
37. The one or more non-transitory computer-readable media of claim 31, wherein:
the difference between in status between the first party and the remaining parties is a first difference in a first status; and
the operations further comprise:
identifying a second difference in a second status of the application between a second party of the subset and the two or more remaining parties of the subset;
predicting that the second party will purchase the product or accept an upsell offer associated with the product based on the second difference; and
responsive to the first difference being less than the second difference, determining that it is more likely that the first party will purchase the product or accept the upsell offer than the second party.
38. The one or more non-transitory computer-readable media of claim 31, wherein:
the difference between in status between the first party and the remaining parties is a first difference in a first status; and
the operations further comprise:
identifying a second difference in a second status of the application between a second party of the subset and the two or more remaining parties of the subset;
predicting that the second party will purchase the product or accept an upsell offer associated with the product based on the second difference; and
responsive to the first difference being less than the second difference, prioritizing a first offer for a purchase the product or an upsell directed to the first party over a second offer for a purchase the product or an upsell directed to the second party.
39. The one or more non-transitory computer-readable media of claim 31, wherein the parameter includes:
a number of hypervisors on a network of an environment of the two or more computing environments;
a number of virtual machines of an environment of the two or more computing environments; or
a number of users in company associated with one of the parties of the plurality of parties.
40. The one or more non-transitory computer-readable media of claim 31, wherein the operations further comprise automatically providing a notification of the prediction to one or both of a management team of a vendor and the first party.
US16/571,598 2013-02-20 2019-09-16 Predicting whether a party will purchase a product Abandoned US20200150942A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/571,598 US20200150942A1 (en) 2013-02-20 2019-09-16 Predicting whether a party will purchase a product

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/771,753 US9733917B2 (en) 2013-02-20 2013-02-20 Predicting whether a party will purchase a product
US15/671,645 US10416978B2 (en) 2013-02-20 2017-08-08 Predicting whether a party will purchase a product
US16/571,598 US20200150942A1 (en) 2013-02-20 2019-09-16 Predicting whether a party will purchase a product

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US15/671,645 Continuation US10416978B2 (en) 2013-02-20 2017-08-08 Predicting whether a party will purchase a product

Publications (1)

Publication Number Publication Date
US20200150942A1 true US20200150942A1 (en) 2020-05-14

Family

ID=51351935

Family Applications (3)

Application Number Title Priority Date Filing Date
US13/771,753 Active 2033-09-07 US9733917B2 (en) 2013-02-20 2013-02-20 Predicting whether a party will purchase a product
US15/671,645 Active US10416978B2 (en) 2013-02-20 2017-08-08 Predicting whether a party will purchase a product
US16/571,598 Abandoned US20200150942A1 (en) 2013-02-20 2019-09-16 Predicting whether a party will purchase a product

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US13/771,753 Active 2033-09-07 US9733917B2 (en) 2013-02-20 2013-02-20 Predicting whether a party will purchase a product
US15/671,645 Active US10416978B2 (en) 2013-02-20 2017-08-08 Predicting whether a party will purchase a product

Country Status (1)

Country Link
US (3) US9733917B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9733917B2 (en) 2013-02-20 2017-08-15 Crimson Corporation Predicting whether a party will purchase a product
US20180165708A1 (en) * 2016-12-09 2018-06-14 Adobe Systems Incorporated Notification Control based on Location, Activity, and Temporal Prediction
US20230169564A1 (en) * 2021-11-29 2023-06-01 Taudata Co., Ltd. Artificial intelligence-based shopping mall purchase prediction device

Family Cites Families (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182279B1 (en) * 1997-08-12 2001-01-30 International Business Machines Corporation Method and apparatus for storing templates in a component system
US6131192A (en) * 1998-06-18 2000-10-10 Microsoft Corporation Software installation
US6842906B1 (en) * 1999-08-31 2005-01-11 Accenture Llp System and method for a refreshable proxy pool in a communication services patterns environment
US6339832B1 (en) * 1999-08-31 2002-01-15 Accenture Llp Exception response table in environment services patterns
US6636242B2 (en) * 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
US6289382B1 (en) * 1999-08-31 2001-09-11 Andersen Consulting, Llp System, method and article of manufacture for a globally addressable interface in a communication services patterns environment
US7289964B1 (en) * 1999-08-31 2007-10-30 Accenture Llp System and method for transaction services patterns in a netcentric environment
US20070011224A1 (en) * 1999-10-22 2007-01-11 Jesus Mena Real-time Internet data mining system and method for aggregating, routing, enhancing, preparing, and analyzing web databases
US7275235B2 (en) * 2001-08-29 2007-09-25 Molinari Alfred A Graphical application development system for test, measurement and process control applications
US20050234761A1 (en) * 2004-04-16 2005-10-20 Pinto Stephen K Predictive model development
US20060253537A1 (en) * 2005-05-04 2006-11-09 Ragy Thomas Method and system for providing automated email optimization
US9558498B2 (en) * 2005-07-29 2017-01-31 Excalibur Ip, Llc System and method for advertisement management
US8429630B2 (en) * 2005-09-15 2013-04-23 Ca, Inc. Globally distributed utility computing cloud
WO2007041597A2 (en) * 2005-10-03 2007-04-12 Teletech Holdings, Inc. Virtual retail assistant
US7672865B2 (en) * 2005-10-21 2010-03-02 Fair Isaac Corporation Method and apparatus for retail data mining using pair-wise co-occurrence consistency
US8700469B2 (en) * 2006-03-06 2014-04-15 Apple Inc. System and method for delivering advertising with enhanced effectiveness
US8019632B2 (en) * 2006-10-16 2011-09-13 Accenture Global Services Limited System and method of integrating enterprise applications
US7552113B2 (en) * 2006-11-16 2009-06-23 Roe Robert D System and method for managing search results and delivering advertising and enhanced effectiveness
US8126881B1 (en) * 2007-12-12 2012-02-28 Vast.com, Inc. Predictive conversion systems and methods
US8417715B1 (en) * 2007-12-19 2013-04-09 Tilmann Bruckhaus Platform independent plug-in methods and systems for data mining and analytics
US9069599B2 (en) * 2008-06-19 2015-06-30 Servicemesh, Inc. System and method for a cloud computing abstraction layer with security zone facilities
US8347386B2 (en) * 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US9235704B2 (en) * 2008-10-21 2016-01-12 Lookout, Inc. System and method for a scanning API
US8650290B2 (en) * 2008-12-19 2014-02-11 Openpeak Inc. Portable computing device and method of operation of same
US8856322B2 (en) * 2008-12-19 2014-10-07 Openpeak Inc. Supervisory portal systems and methods of operation of same
US8745213B2 (en) * 2008-12-19 2014-06-03 Openpeak Inc. Managed services platform and method of operation of same
US8788655B2 (en) * 2008-12-19 2014-07-22 Openpeak Inc. Systems for accepting and approving applications and methods of operation of same
US8615581B2 (en) * 2008-12-19 2013-12-24 Openpeak Inc. System for managing devices and method of operation of same
US8150723B2 (en) * 2009-01-09 2012-04-03 Yahoo! Inc. Large-scale behavioral targeting for advertising over a network
US20110047540A1 (en) * 2009-08-24 2011-02-24 Embarcadero Technologies Inc. System and Methodology for Automating Delivery, Licensing, and Availability of Software Products
CN102640179A (en) * 2009-09-18 2012-08-15 奥多比公司 Advertisee-history-based bid generation system and method for multi-channel advertising
US20110082711A1 (en) * 2009-10-06 2011-04-07 Masimo Laboratories, Inc. Personal digital assistant or organizer for monitoring glucose levels
US9760802B2 (en) * 2010-01-27 2017-09-12 Ebay Inc. Probabilistic recommendation of an item
KR20130009754A (en) * 2010-02-01 2013-01-23 점프탭, 인크. Integrated advertising system
US8688642B2 (en) * 2010-02-26 2014-04-01 Symantec Corporation Systems and methods for managing application availability
US9183560B2 (en) * 2010-05-28 2015-11-10 Daniel H. Abelow Reality alternate
US8230062B2 (en) * 2010-06-21 2012-07-24 Salesforce.Com, Inc. Referred internet traffic analysis system and method
CN103430196A (en) * 2010-09-17 2013-12-04 甲骨文国际公司 Sales prediction and recommendation system
US20130138507A1 (en) * 2011-11-30 2013-05-30 Amit Kumar Predictive modeling for e-commerce advertising systems and methods
US20130152125A1 (en) * 2011-12-07 2013-06-13 Sony Network Entertainment International Llc Method and system for advertisement choices using a second display during content playback
US9160851B2 (en) * 2011-12-08 2015-10-13 Dialogtech System, method, and computer program product for lead management
WO2013089787A1 (en) * 2011-12-16 2013-06-20 Intel Corporation System and method for multi-radio cloud computing for location sensing
US10552851B2 (en) * 2012-02-20 2020-02-04 Ameriprise Financial, Inc. Opportunity list engine
US9516451B2 (en) * 2012-04-10 2016-12-06 Mcafee, Inc. Opportunistic system scanning
US9733917B2 (en) 2013-02-20 2017-08-15 Crimson Corporation Predicting whether a party will purchase a product

Also Published As

Publication number Publication date
US10416978B2 (en) 2019-09-17
US9733917B2 (en) 2017-08-15
US20140236674A1 (en) 2014-08-21
US20180081662A1 (en) 2018-03-22

Similar Documents

Publication Publication Date Title
US11063983B2 (en) Componentized security policy generation
US10540264B2 (en) Computerized method and end-to-end “Pilot as a service” system for controlling start-up/enterprise interactions
US11314576B2 (en) System and method for automating fault detection in multi-tenant environments
JP6849672B2 (en) Systems and methods for application security and risk assessment and testing
Ardagna et al. A model-driven methodology for big data analytics-as-a-service
US11516237B2 (en) Visualization and control of remotely monitored hosts
US10402746B2 (en) Computing instance launch time
US10785331B2 (en) Systems and methods for detecting metrics and ranking application components
US10853489B2 (en) Data-driven identification of malicious files using machine learning and an ensemble of malware detection procedures
US20200150942A1 (en) Predicting whether a party will purchase a product
US20230208882A1 (en) Policy - aware vulnerability mapping and attack planning
WO2020087011A2 (en) Resource configuration and management system
US20130254524A1 (en) Automated configuration change authorization
US20240111739A1 (en) Tuning large data infrastructures
Opara et al. Auto-ML cyber security data analysis using Google, Azure and IBM Cloud Platforms
US20190318271A1 (en) Performance manager to autonomously evaluate replacement algorithms
US20230177613A1 (en) Platform for autonomous risk assessment and quantification for cyber insurance policies
JP7466479B2 (en) Business improvement support device, program, and storage medium storing the program
Dangi et al. Live Memory Forensics Integrated Reinforcement Learning Model for Optimized Demand Forecasting in Autonomous Supply Chain Management System
CN110209558A (en) Intelligent operation and maintenance method and device based on software definition storage
CA3044972A1 (en) Messaging system and method
KR102346885B1 (en) Method and system to visualize abnormal behavior detection result for enterprise resource planning system in shape of flowering stem
US11765043B2 (en) Data driven chaos engineering based on service mesh and organizational chart
US20210092159A1 (en) System for the prioritization and dynamic presentation of digital content
KR102370858B1 (en) Method and system to visualize abnormal behavior detection result for enterprise resource planning system in shape of space orbit

Legal Events

Date Code Title Description
AS Assignment

Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT, MARYLAND

Free format text: SECURITY INTEREST;ASSIGNORS:CELLSEC, INC.;PULSE SECURE, LLC;IVANTI, INC.;AND OTHERS;REEL/FRAME:054665/0062

Effective date: 20201201

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, ILLINOIS

Free format text: SECURITY INTEREST;ASSIGNORS:CELLSEC, INC.;PULSE SECURE, LLC;INVANTI, INC.;AND OTHERS;REEL/FRAME:054665/0873

Effective date: 20201201

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION