Abstract:
A sales management data analysis system and method for interpreting raw sales management data are provided. A plurality of natural language questions are provided, wherein each of the natural language questions correspond to at least one database query. An at least one database is queried in accordance with a selected one of the plurality of natural language questions. A particular data set is created responsive to the querying of the at least one database in accordance with the one of the plurality of natural language questions from the at least one database. And the particular data set is sent to a destination, the particular data set configured to be able to provide a particular visual interpretation thereof, wherein the particular visual interpretation is of a particular type.

Description:
BACKGROUND OF THE INVENTION  
       [0001]     1. Field of the Invention  
         [0002]     The present invention relates to techniques for interpreting sales information and more particularly, to such techniques which employ natural language questions.  
         [0003]     2. Description of Related Art  
         [0004]     Manufacturers and distributors of retail products generally monitor product sales in order to maintain proper inventory and to be able to direct marketing efforts. Monitoring may be accomplished by documenting sales at retail outlets and transferring this sales data to a central point for evaluation. Sales data are valuable as a business intelligence tool to regularly inform sales professionals about the state of the marketplace.  
         [0005]     Each day throughout the pharmaceutical and healthcare industries millions of products are sold worldwide. Prescriptions are written by doctors and filled at pharmacies; medical devices are sold at doctors offices, hospitals and pharmacies. Individual businesses participating in various aspects of the pharmaceutical and healthcare industries create data pertaining to the goods sold to conform with governmental regulations and to aid in inventory tracking.  
         [0006]     Utilizing highly advanced technologies, this raw, disparate data is transformed from millions of pharmaceutical records collected from thousands of sources worldwide into a centralized data repository. The information contained in the centralized data repository is a powerful business intelligence tool that can be used to gain critical information about the state of the industry.  
         [0007]     However, extracting crucial information from the raw information contained in the centralized data repository and forming a coherent understanding of the impact of the raw information is difficult for individual sales personnel to accomplish.  
       SUMMARY OF THE INVASION  
       [0008]     Accordingly, there exists a need for a business intelligence tool, which allows a user or users to access available raw sales management data in a meaningful and time efficient manner.  
         [0009]     An object of the present invention is to provide a method of analyzing sales management data. The method of analyzing sales management data includes the steps of: providing a plurality of natural language questions relating to said sales management data, wherein each of the natural language questions corresponds to at least one database query, receiving an indication of a selected one or more of the natural language questions from the plurality of natural language questions, querying at least one database in accordance with the selected one or more of the natural language questions, and creating a particular data set responsive to the querying step, wherein the particular data set is configured to be able to provide a particular visual interpretation thereof, wherein the particular visual interpretation is of a particular type.  
         [0010]     Another object of the present invention is to provide a method of analyzing sales management data. The method of analyzing sales management data including the steps of: providing a plurality of natural language questions, wherein each of the natural language questions correspond to at least one database query, selecting one or more of the natural language questions from the plurality of natural language questions, issuing an at least one query to at least one database in accordance with the selected one or more of the plurality of natural language questions, receiving a particular data set responsive to the issuing step, and analyzing the particular data set and providing a particular visual interpretation thereof, wherein the particular visual interpretation is of a particular type.  
         [0011]     Still another object of the present invention is to provide a sales management data analysis system. The sales management data analysis system including a data storage unit including a mass storage device, the data storage unit including at least one database, a processor operatively connected to the data storage unit and configured to provide a plurality of natural language questions, wherein each of the natural language questions correspond to at least one database query, to query the at least one database in accordance with a selected one of the plurality of natural language questions, to create a particular data set responsive to the querying of the at least one database in accordance with the one of the plurality of natural language questions from the at least one database, and a communication interface, operatively connected to the processor configured to send the particular data set to a destination, the particular data set configured to be able to provide a particular visual interpretation thereof, wherein the particular visual interpretation is of a particular type. 
     
    
     BRIEF DESCRIPTION OF THE DRAWING  
       [0012]     Further objects, features and advantages of the invention will become apparent from the following detailed description taken in conjunction with the accompanying figures showing illustrative embodiments of the invention, in which:  
         [0013]      FIG. 1  is a block diagram of a data analysis and presentation system according to an exemplary embodiment of the present invention;  
         [0014]      FIG. 2  is a flow chart of the process through which a client data presentation application processes data according to an exemplary embodiment of the present invention;  
         [0015]      FIG. 3  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0016]      FIG. 4  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0017]      FIG. 5  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0018]      FIG. 6  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0019]      FIG. 7  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0020]      FIG. 8  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0021]      FIG. 9  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0022]      FIG. 10  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention;  
         [0023]      FIG. 11  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention; and  
         [0024]      FIG. 12  is a desktop block diagram of the client data presentation application according to an exemplary embodiment of the present invention. 
     
    
       [0025]     Throughout the figures, the same reference numerals and characters, unless otherwise stated, are used to denote like features, elements, components or portions of the illustrated embodiments. Moreover, while the subject invention will now be described in detail with reference to the figures, it is done so in connection with the illustrative embodiments. It is intended that changes and modifications can be made to the described embodiments without departing from the true scope and spirit of the subject invention as defined by the appended claims.  
       DETAILED DESCRIPTION OF THE INVENTION  
       [0026]      FIG. 1  illustrates a database analysis system  100  according to an exemplary embodiment of the present invention. The database analysis system  100  includes an application server  102 , a communications network  108 , a client computer  110  and a client computer  112 .  
         [0027]     The application server  102  includes a processor  104 , a data storage unit  103  and a network interface  105 . The processor  104  runs a database application and a firewall. The firewall protects data stored in the data storage unit  103  from unauthorized access by individuals and programs (sometimes called viruses). The database application allows client data presentation applications, executing on the client computers  110 ,  112 , to query a user database and a sales management information database through the firewall. Preferably, the database application is a Microsoft SQL server database which uses Online Analytical Processing Data Cubes for the organization of large data sources. The data storage unit  103  includes volatile and nonvolatile memory as well as mass storage devices.  
         [0028]     The sales management information database is stored in the data storage unit  103 . The sales management information database acts as a central repository for information pertaining to goods sold and prescriptions issued throughout the pharmaceutical and healthcare industry. The sales management information database is populated using information gathered from individual businesses participating in various aspects of the pharmaceutical and healthcare industries. These individual businesses create data pertaining to goods sold in order to conform with governmental regulations and to aid in inventory tracking. This information typically includes sales data, physician names and corresponding addresses, complete contact information by physician, complete contact information relating to a product for a geographical area, investment per physician, investment per product per geographical area, amount spent per physician, amount spent per product per geographical area, physician count per geographical area, physician segment, physician target status, sales targets by geographical area, sales targets by territory, quotas by geographical area, quotas by territory, sales territory information, number of prescriptions issued by a doctor, number of prescriptions issued for a particular product, the time a prescription is provided, the product prescribed, the market in which a prescription is issued, the geographic area in which the prescription was filled, the amount of prescriptions written by a group of doctors, the amount of prescriptions dispensed by a group of doctors, and the like. Preferably, the information is then standardized, filtered to insure an acceptable quality level, and written into the sales management information database in the data storage unit  103 .  
         [0029]     The data storage unit  103  also includes a user database. The user database includes database records specifying user accounts. Associated with each user&#39;s account, and provided in the user&#39;s account record in the user database, is a username, password, default question, default query, default visual interpretation type, territory information, and sales campaign question information. The sales campaign question information includes a list of questions and associated parameters, each question of the list of questions is associated with a group of parameters.  
         [0030]     In a preferred embodiment, the list of questions specified in a user&#39;s account are developed on a case by case basis. The questions are usually sales territory type questions or specialty type questions. Some examples of sales territory type questions follow:  
         [0031]     How am I doing against the competition? 
         [0032]     Where is my potential? 
         [0033]     How does my performance compare to the market? 
         [0034]     How am I doing against the target? 
         [0035]     How effective are my calls? 
         [0036]     Some examples of specialty type questions follow:  
         [0037]     How am I doing against the competition by specialty? 
         [0038]     Where is my potential by specialty? 
         [0039]     How does my performance compare to the market by specialty? 
         [0040]     How effective are my calls by specialty? 
         [0041]     What is the contribution of each specialty? 
         [0042]     As used herein, natural language questions are questions that are written in language readily understandable to a user, so that a user need not have a working knowledge of a computer language, such as standard query language or a general purpose programming language, in order to understand the natural language questions.  
         [0043]     The processor  104  receives information to be written into the data storage unit  103  from a multitude of sources through the communication network  108  and the network interface  105  and the processor  104  receives database queries from the client computers  110 ,  112  through the communication network  108  and the network interface  105 . The network interface  105  is in communication with the communications network  108  and the processor  104 . The network interface  105  receives queries from the communication network  108 , which are in turn supplied to the processor  104  and supplies data, received from the data storage device  103  via the processor  104 , to the communications network  108  responsive to the database queries. The network interface  105  also receives information about goods sold and prescriptions issued throughout the pharmaceutical and healthcare industry from the communication network  108 . The network interface  105  is preferably an Ethernet interface.  
         [0044]     The communications network  108  allows the application server  106  to communicate with the client computers  110 ,  112 . Preferably, the communications network  108  is the Internet.  
         [0045]     The client computer  110  executes the client data presentation application. The client data presentation application is a business intelligence tool, which allows a user or users to access the multitude of raw data stored on the application server  102  in a meaningful and time efficient manner. The client data presentation application does not contain any data itself. All data upon which the client data presentation application operates is stored in the sales management information database and the user database which are located on the data storage unit  103  of the application server  102 . Preferably, the client computer  110  is a general purpose personal computer.  
         [0046]     It should be understood that the client computer  112  executes the client data presentation application in a similar manner to the client computer  110 . For the sake of simplicity, the function of the client data presentation application will be described in relation to the client computer  110  only, though it will be understood that the client data presentation application would act in the same manner if executed on the client computer  112 .  
         [0047]      FIG. 2  illustrates a data presentation process  150  through which a user can receive information from the client data presentation application. The process  150  begins at step  152 .  
         [0048]     At step  152  the user provides a username and password to the client is data presentation application. In order to use the client data presentation application a user must login to the system. Once the user has provided a username and password, the process  150  advances to step  154 .  
         [0049]     At step  154  the process  150  issues a database query to the application server  102 . The application server  102  receives this query via the network interface  105  and in turn queries the user database for a database record specifying a user account having the entered username and password combination. If such a record exists, the application server  102  returns a login valid message to the process  150  along with the default question, the default query, the default visual interpretation type, the territory information, and the sales campaign question information supplied in the user&#39;s account record. The process  150  records the received information in a local user account profile and advances to step  158 . Otherwise, if no such record exists, the application server  102  returns a login invalid message to the process  150  and the process  150  advances to step  156 .  
         [0050]     At step  156 , the process  150  provides the user with a login invalid message. The process  150  advances to step  152 , and the user may again specify a username and password combination.  
         [0051]     At step  158 , the process  150  issues a query to the application server  102 . The issued query is the default query stored in a local user account profile. The application server  102  receives the issued query via the network interface  105  and in turn queries the sales management information database for database records which satisfy the database query.  
         [0052]     At step  160 , the process  150  waits to receive the resultant data set from the application server  102 . Once the application server  102  has received the resultant data set from the sales management information database in response to the initial query, the application server sends the resultant data set to the client computer  110 . The client computer  110  stores the resultant data set locally within the client computer  110  for further interpretation by the client data presentation application.  
         [0053]     At step  162 , the client data presentation application formulates a visual interpretation or multiple visual interpretations based on the resultant data set stored within the client computer  110 , and populates various fields of the client data presentation application including any visual interpretation boxes, a parameter specification box, a sales territory indicator, and a question drop down menu with default values. The client data presentation application analyzes the resultant data set and provides a visual interpretation thereof in a style specified by the default visual interpretation type. The default visual interpretation type can be a chart, color coded line graph, color coded map, customer list or color coded bar chart.  
         [0054]     Referring now to  FIG. 3 , a desktop block diagram  200  of the client data presentation application is provided with exemplary default data specified. The client data presentation application includes a desktop upon which different data is presented to the user. The desktop block diagram  200  includes a visual interpretation box  202 , a parameter specification box  204 , a sales territory indicator  206  and a question drop down menu  208 . The visual interpretation box  202  includes a interpretation type (here a chart) and a visual interpretation of the resultant data set of the type indicated by the interpretation type. The question drop down menu  208  is populated with the list of questions specified by the sales campaign question information stored in the local user account profile, such that the default question stored in the local user account profile is visible if the drop down functionality of the drop down menu  208  is not activated. If the arrow next to the question drop down menu  208  is clicked, the drop down functionality of the question drop down menu  208  is activated and the drop down menu displays the list of questions supplied with the sales campaign question information stored in the local user account profile. The parameter specification box  204  includes multiple drop down boxes, each of which contain multiple parameters associated with the selected question of the list of questions specified by the sales campaign information stored in the local user account profile. The parameters shown in the parameter specification box  204  are default values specified in the local user account profile. The sales territory indicator  206  displays the territory information contained within the local user account profile. The sales territory indicator  206  acts as a reminder to the user as to what territory the displayed information pertains.  
         [0055]     Referring again to  FIG. 2 , in a preferred embodiment, the default visual interpretation type can specify multiple visual interpretation types. By specifying multiple visual interpretation types, the client data presentation application will provide a user with multiple visual interpretation boxes having different interpretation types for the data, for example a user might be presented with a chart type visual interpretation and a color coded line graph type visual interpretation of the resultant data set, as shown by a desktop block diagram  230  of  FIG. 8 . In another preferred embodiment, the default visual interpretation type can specify multiple visual interpretation types, placements for each of the specified visual interpretation types, and sizes for each of the specified visual interpretation types.  
         [0056]     At step  164 , if the process  150  determines whether the visual interpretations need to be updated. If the user has indicated that the visual interpretations need to be updated, if the user has selected an additional visual interpretation to be displayed, or if the user has selected a different visual interpretation to be displayed, the process  150  advances to step  166 . Otherwise, the process  150  remains at step  164 .  
         [0057]     At step  166 , the process  150  determines whether the user indicated that the visual interpretations need to be updated. If the user selected a new question to be answered or altered a parameter of the current question and indicated that the visual interpretations need to be updated by clicking on the update button, the client data presentation application must issue a new query to the application server  102 . The user may select a new question to be answered by activating the drop down functionality of the question drop down menu  208  and selecting another of the listed questions. The user may also select a new parameter to be explored using the question specified in the question drop down menu  208  by selecting a new parameter in the parameter specification box  204 . Once the appropriate question and parameters have been selected, the user may click on the update button. If the user clicked on the update button, the process  150  advances to step  172 . If the user has not clicked on the update button, the process  150  advances to step  168 .  
         [0058]     At step  168 , the process  150  determines whether the user selected an additional visual interpretation to be displayed or selected a different visual interpretation to be displayed. If the user selected an additional visual interpretation to be displayed or if the user selected a different visual interpretation to be displayed, the client data presentation application should formulate an additional visual interpretation based on the resultant data set currently stored by the client data presentation application, therefore the process  150  advances to step  174 . If the user did not select an additional visual interpretation to be displayed or select a different visual interpretation to be displayed, the process  150  advances to step  170 .  
         [0059]     At step  170 , the process  150  reports an error condition. If the user did not indicate that the visual interpretations need to be updated, select an additional visual interpretation to be displayed, or select a different visual interpretation to be displayed, an error must be reported. Once the error is reported, the process  150  exits.  
         [0060]     At step  172 , the process  150  issues a query to the application server  102 . The issued query is the query specified by the selection of a specific question through the question drop down menu  208  and specific parameters through the parameter specification box  204 . The application server  102  receives the issued query via the network interface  105  and in turn queries the sales management information database for database records which satisfy the database query.  
         [0061]     At step  174 , the process  150  waits to receive the resultant data set from the application server  102 . Once the application server  102  has received the resultant data set from the sales management information database in response to the issued query, the application server sends the resultant data set to the client computer  110 . The client computer  110  stores the resultant data set locally within the client computer  110  for further interpretation by the client data presentation application.  
         [0062]     At step  176 , the client data presentation application formulates a visual interpretation or multiple visual interpretations based on the resultant data set stored within the client computer  110 . The client data presentation application analyzes the resultant data set and provides a visual interpretation thereof in a type specified by the interpretation type of each of the visual interpretation boxes present on the desktop of the client data presentation application. The visual interpretation type can be a chart, color coded line graph, color coded map, customer list or color coded bar chart. Once the visual interpretations are supplied to the various visual interpretation boxes provided on the desktop of the client data presentation application, the process  150  advances to step  164 .  
         [0063]     In an alternate embodiment, the database application running on the application server  102  would run on the client computers  110 ,  112  and the sales management information database and the user database stored in the data storage unit  103  would be stored on the client computers  110 ,  112 , such that the client computers  110 ,  112  would issue queries to the database application and databases located on the client computers  110 ,  112 , not over the communications network  108 . This would allow the client data presentation application to be reliant only upon data stored within the client computers  110 ,  112 . No other hardware would be involved.  
         [0064]     Referring now to  FIG. 4 , a desktop block diagram  222  of the client data presentation application is provided. The desktop block diagram  222  is largely the same as the desktop block diagram  200 , except that the visual interpretation box  202  is not provided and a visual interpretation box  210  is provided. The visual interpretation box  210  includes a interpretation type (here a color coded line graph) and a visual interpretation of the resultant data set of the type indicated by the interpretation type.  
         [0065]     Referring now to  FIG. 5 , a desktop block diagram  224  of the client data presentation application is provided. The desktop block diagram  224  is largely the same as the desktop block diagram  200 , except that the visual interpretation box  202  is not provided and a visual interpretation box  212  is provided. The visual interpretation box  212  includes an interpretation type (here a color coded map) and a visual interpretation of the resultant data set of the type indicated by the interpretation type.  
         [0066]     Referring now to  FIG. 6 , a desktop block diagram  226  of the client data presentation application is provided. The desktop block diagram  226  is largely the same as the desktop block diagram  200 , except that the visual interpretation box  202  is not provided and a visual interpretation box  214  is provided. The visual interpretation box  214  includes an interpretation type (here a customer list) and a visual interpretation of the resultant data set of the type indicated by the interpretation type.  
         [0067]     Referring now to  FIG. 7 , a desktop block diagram  228  of the client data presentation application is provided. The desktop block diagram  228  is largely the same as the desktop block diagram  200 , except that the visual interpretation box  202  is not provided and a visual interpretation box  216  is provided. The visual interpretation box  216  includes an interpretation type (here a color coded bar graph) and a visual interpretation of the resultant data set of the type indicated by the interpretation type.  
         [0068]     Referring now to  FIG. 8 , a desktop block diagram  230  of the client data presentation application is provided. The desktop block diagram  228  is largely the same as the desktop block diagram  200 , except that an additional visual interpretation box, the visual interpretation box  210 , is provided. The visual interpretation box  202  includes a visual interpretation of the resultant data set of the chart type and the visual interpretation box  210  includes a visual interpretation of the resultant data set of the color coded line graph type.  
         [0069]     Referring now to  FIG. 9 , a desktop block diagram  232  of the client data presentation application is provided. The desktop block diagram  228  is largely the same as the desktop block diagram  230 , except that an additional visual interpretation box, the visual interpretation box  212 , is provided. The visual interpretation box  202  includes a visual interpretation of the resultant data set of the chart type, the visual interpretation box  210  includes a visual interpretation of the resultant data set of the color coded line graph type, and the visual interpretation box  212  includes a visual interpretation of the resultant data set of the color coded map type.  
         [0070]     Referring now to  FIG. 10 , a desktop block diagram  234  of the client data presentation application is provided. The desktop block diagram  234  is largely the same as the desktop block diagram  232 , except that the visual interpretation box  212  is provided having a different size. The visual interpretation box  202  includes a visual interpretation of the resultant data set of the chart type, the visual interpretation box  210  includes a visual interpretation of the resultant data set of the color coded line graph type, and the visual interpretation box  212  includes a visual interpretation of the resultant data set of the color coded map type. The visual interpretation box  212  has been resized such that the horizontal size of the visual interpretation box  212  is smaller. The size of any of the visual interpretation boxes  202 ,  210 ,  212 ,  214 ,  216  can be changed in the vertical or horizontal directions.  
         [0071]     Referring now to  FIG. 11 , a desktop block diagram  236  of the client data presentation application is provided. The desktop block diagram  236  is largely the same as the desktop block diagram  234 , except that the visual interpretation box  210  has been removed from the desktop of the client data presentation application.  
         [0072]     Referring now to  FIG. 12 , a desktop block diagram  238  of the client data presentation application is provided. The desktop block diagram  238  is largely the same as the desktop block diagram  236 , except that the question specified in the question drop down menu  208  is different, one of the parameters specified in the parameter specification box  204  has been changed, the visual interpretation box  202  has been moved, and the visual interpretation boxes  204 ,  208  reflect a different data set. The question specified in the question drop down menu  208  has been changed from “How am I doing against by completion?” to “How am I doing against my targets?”. Related to this change, one of the parameters specified in the parameter specification box  204  has also been changed. The parameter “Market Share” has been changed to “% Target Achieved”. The visual interpretation provided in the visual interpretation boxes  202 ,  212  reflects these changes, such that the visual interpretation provided in the visual interpretation boxes  202 ,  212  is based on data collected by a query or queries associated with the newly selected question and parameters, therefore a user must have clicked on the update button.  
         [0073]     Once the question and parameters change, a user may click on the update button. Clicking on the update button causes the client data presentation application to issue a new query or queries to the application server  102  as described in association with steps  164  through  176  of the process  150  of  FIG. 2 . New visual interpretations of the newly acquired resultant data are provided to the visual interpretation boxes  202 ,  212  shortly thereafter. The visual interpretation box  202  is also moved. Each of the visual interpretation boxes  202 ,  204 ,  206 ,  208 ,  210 ,  212  can be moved throughout the desktop of the client data presentation application.  
         [0074]     The foregoing merely illustrates the principles of the invention. Various modifications and alterations to the described embodiments will be apparent to those skilled in the art in view of the teachings herein. For example, sales management data pertaining to industries other than the pharmaceutical or healthcare industries may be used. Likewise, other visual interpretations, for example, pie charts, may be used to present the data to users. It will thus be appreciated that those skilled in the art will be able to devise numerous techniques which, although not explicitly described herein, embody the principles of the invention and are thus within the spirit and scope of the invention.