Abstract:
A compensation system receives a plurality of setup parameters. The compensation system tests the setup parameters through a verification. The verification generates an error output if the setup parameters will lead to undesirable results when operating the compensation system.

Description:
FIELD OF THE INVENTION 
       [0001]    One embodiment is directed generally to a computer system, and in particular to an employee compensation computer system. 
       BACKGROUND INFORMATION 
       [0002]    Managers and compensation professionals use tools to strategically manage compensation at a global level. Compensation can be used to enhance productivity, increase morale, and retain highly valued employees. Compensation tools and systems are available that allow total compensation, including base salaries, bonuses and equity to be efficiently managed and aligned with performance. 
         [0003]    Available integrated compensation systems allow managers and compensation professionals to plan, model, and allocate budgets and awards on a global basis across multiple currencies. Users can distribute budgets and compensation based on guidelines and see a worksheet view of employees, their performance ratings and total compensation. They can also promote employees and give them new performance ratings and rankings. Analytics provide internal and external comparisons, statistical analysis, compensation history, and overviews of current budgets and allocations so managers can make decisions that support business objectives. 
         [0004]    These complex integrated compensation systems may obtain data through other modules of an integrated application system such as an Enterprise Resource Planning (“ERP”) system. A setup process is typically required before running complex compensation systems. 
       SUMMARY OF THE INVENTION 
       [0005]    One embodiment is a compensation system that receives a plurality of setup parameters. The compensation system tests the setup parameters through a verification. The verification generates an error output if the setup parameters will lead to undesirable results when operating the compensation system. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0006]      FIG. 1  is a block diagram of a system that can implement an embodiment of the present invention. 
           [0007]      FIG. 2  is a block diagram of setup parameters for a compensation module in accordance to one embodiment. 
           [0008]      FIGS. 3   a - 3   c  are a flow diagram of the functionality of the compensation module when validating setup parameters for a compensation system in accordance with one embodiment. 
           [0009]      FIG. 4  is a user interface for tracking that setup tasks are completed and initiating validation in accordance with one embodiment, 
           [0010]      FIG. 5  is a user interface in accordance with one embodiment that allows an administrator to check setup for readiness in response to selecting the verification task of  FIG. 4 . 
           [0011]      FIG. 6  is a user interface in accordance with one embodiment that illustrates a pop up window for verification. 
       
    
    
     DETAILED DESCRIPTION 
       [0012]    One embodiment is a compensation system that includes a setup process in order to incorporate setup parameters and business rules. The system further includes a setup verifier that checks for errors in the setup process before setup is run and before the system is already in production and used by a large user base. Therefore, errors that impact accuracy and create frustration for the users can be avoided. 
         [0013]      FIG. 1  is a block diagram of a system  10  that can implement an embodiment of the present invention. System  10  includes a bus  12  or other communication mechanism for communicating information, and a processor  22  coupled to bus  12  for processing information. Processor  22  may be any type of general or specific purpose processor. System  10  further includes a memory  14  for storing information and instructions to be executed by processor  22 . Memory  14  can be comprised of any combination of random access memory (“RAM”), read only memory (“ROM”), static storage such as a magnetic or optical disk, or any other type of computer readable media. System  10  further includes a communication device  20 , such as a network interface card, to provide access to a network. Therefore, a user may interface with system  10  directly, or remotely through a network or any other method. 
         [0014]    Computer readable media may be any available media that can be accessed by processor  22  and includes both volatile and nonvolatile media, removable and non-removable media, and communication media. Communication media may include computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. 
         [0015]    Processor  22  is further coupled via bus  12  to a display  24 , such as a Liquid Crystal Display (“LCD”), for displaying information to a user. A keyboard  26  and a cursor control device  28 , such as a computer mouse, is further coupled to bus  12  to enable a user to interface with system  10 . 
         [0016]    In one embodiment, memory  14  stores software modules that provide functionality when executed by processor  22 . The modules include an operating system  15  that provides operating system functionality for system  10 . The modules further include a compensation module  16  that performs compensation functions, including a setup verifier, as disclosed in more detail below. The modules further include other enterprise resource planning (“ERP”) modules  18  of an ERP system that may interact with compensation module  16 , such as a Human Resources (“HR”) module, which may include a payroll module, a performance management module, a financial module, a procurement module, etc. An ERP system is a computer system that integrates several data sources and processes of an organization into a unified system. A typical ERP system uses multiple components of computer software and hardware to achieve the integration. A unified ERP database  17 , coupled to bus  12 , is used to store data for the various system modules. In one embodiment, ERP modules  18  are part of the “Oracle E-Business Suite Release 12” ERP system from Oracle Corp. In other embodiments, compensation module  16  may be a stand-alone system and not integrated with an ERP system, or may be part of any other integrated system. 
         [0017]      FIG. 2  is a block diagram of setup parameters for compensation module  16  in accordance to one embodiment. In one embodiment, the setup parameters of  FIG. 2  are entered before the setup parameters are verified. 
         [0018]    Plan setup parameters  202  include defining a compensation plan details/properties  203 .  203  in one embodiment provides compensation plan administrators the ability to define the general properties of a compensation plan, including the plan name, plan description, and plan status. Other properties assist with compensation module  16  handling, such as the hierarchy used for approvals and budgets, gap handling measures, multiple assignments handling, and common salary frequency. 
         [0019]    Define employee eligibility  204  provides administrators the ability to define participant eligibility profiles to limit the employees who are eligible for the plan. It also provides options for tracking and showing ineligible employees. 
         [0020]    Define plan period and dates  205  provides administrators with the ability to define the start and end dates of the plan. Also available to define includes a period name (and display name), freeze dates, self-service availability dates, change dates, and conversion rate effective dates. 
         [0021]    Configure currency and exchange rates  206  provides administrators with the ability to define the default corporate currency, currency switching capabilities, and system rules for conversion or missing rate error handling. 
         [0022]    Enable plan security  207  provides administrators with the ability to define the security access type for individual functions or roles within their administrative structure. Examples of access types include Read Only or Full Access. 
         [0023]    Configure feedback  208  provides administrators with the ability to create a survey window to capture feedback from managers after submitting a worksheet for approval. 
         [0024]    Budgeting setup parameters  212  includes define budget pools  213  that provides administrators with the ability to enable and configure a budget for a plan. A budgeting method is defined along with rules for over-budgeting or over-allocation. A budget pool allows for further granularity of budgeting. Multiple budget pools may be associated with one plan. Budget pools may be grouped to any number of compensation components of a compensation plan. 
         [0025]    Configure budget plan layout  214  provides administrators with the ability to configure what data shows on a budget worksheet, the order of the data, available menu actions, and instructions for the manager. 
         [0026]    Worksheet setup parameters  224  are parameters for a worksheet. In one embodiment, a worksheet is the area or user interface where a manager would go to award compensation (e.g., salary increases, bonus, stock options, etc) to their employee workforce. Managers with employees reporting directly or indirectly to them who are eligible to receive compensation may have access to a worksheet on which all eligible employees appear. Managers may enter allocation amounts or percentages of eligible salary on this worksheet for all employees who are to receive a compensation award. Define compensation component  225  provides administrators with the ability to mix and match different compensation components to be available under one plan. 
         [0027]    Setup performance appraisals  226  provides administrators with the ability to define performance evaluation ratings within database  17  or import performance ratings from another database. Examples of options include use no performance ratings, define own performance ratings, or integrate with an HR talent management module ratings. Configurable parameters can be available if an administrator defines their own performance ratings. 
         [0028]    Setup approvals  227  provides administrators with the ability to define the settings for approving, submitting, and intercepting an individual reward allocation worksheet. 
         [0029]    Configure employee statements  228  provides administrators the ability to enable employee statement generation and determine under which conditions employees should receive one. 
         [0030]    Define alerts and errors  229  provides administrators the ability to centrally define alerts for the system to execute. In one embodiment, a set of standard alerts will be the default choice, but embodiments may include the capability for administrators to define alerts, warnings, errors, and informational notices using their own criteria and text. 
         [0031]    Configure worksheet page layout  230  provides administrators with the ability configure a manager self service rewards allocation worksheet. Configurable options may include tab names, number of tabs, menu options, data columns exposed, ordering of data columns, instructions, and copying layout options from another plan. 
         [0032]    Modeling setup parameters  236  include setup modeling  237  that provides administrators with the ability to centrally define the properties of the modeling functionality. Modeling properties include permissions for managers, sharing capabilities, available allocation criteria, and usage (for budgets, targets, or actual allocation amounts). Further included is defining which dimensions to provide to managers in the criteria dropdown for building their own methods. 
         [0033]    Setup analytical reports  238  provides administrators the ability to determine which of the delivered analytics will be represented to the managers during plan deployment. 
         [0034]    Setup downloads  239  provide administrators the ability to setup download definitions for worksheets, budgets, and administration reports. 
         [0035]    In one embodiment, administrators/users are able to detect and correct errors prior to deployment once setup parameters have been entered. This allows administrators to test their setup prior to deployment. The validation shows specific errors and warnings regarding the setup for a plan. An “error” indicates a wrong setup that may lead to undesirable results (e.g., participation errors, no employees get processed, data is corrupted or will cause things not to work properly, etc.). A “warning” indicates that something may be wrong, but will not have much effect on performance of the compensation system. 
         [0036]      FIGS. 3   a - 3   c  are a flow diagram of the functionality of compensation module  16  when validating setup parameters for a compensation system in accordance with one embodiment. In one embodiment, the functionality of the flow diagram of  FIGS. 3   a - 3   c  is implemented by software stored in memory or other computer readable or tangible medium, and executed by a processor. In other embodiments, the functionality may be performed by hardware (e.g., through the use of an application specific integrated circuit (“ASIC”), a programmable gate array (“PGA”), a field programmable gate array (“FPGA”), etc.), or any combination of hardware and software. 
         [0037]    At  302 , it is determined if a plan is defined in which compensation will be awarded. In one embodiment, a plan that awards compensation can be defined as a compensation only plan that allows managers to reward employees (e.g. Salary Change, Bonus and Stock Options), a compensation+performance plan that allows managers to not only reward employees but also do the performance evaluations, or a compensation+performance+job change (promote) plan that allows managers to reward employees, do the performance evaluation and make recommendation for job change. 
         [0038]    If yes at  302 , at  303  it is determined if at least one component is defined. In one embodiment, a component can be a further breakdown to a larger compensation amount. For example, a salary increase may have components of a cost of living adjustment, employee merit adjustment and a company performance adjustment. Further, a component may make up portions of a total compensation. For example, one component could be for a bonus, and another could be for stock options. In this example, a manager may award an employee both within a single plan and on a single worksheet. A bonus plan may include components such as individual performance or company performance. A salary plan may include components such as cost of living and market adjustment. Therefore, components can be used to further classify a reward into different sub-parts. If no at  302 , an error is recorded at  304 . 
         [0039]    At  306 , it is determined if budgeting is enabled. If yes, at  307  it is determined if a budget pool is created. If no at  307 , a warning is recorded at  314 . If yes at  307 , at  308  it is determined if a primary component is defined. If not, an error is recorded at  310 . Further, if yes at  307 , it is determined if “percent” is used as a budgeting style at  309 . If yes, at  311  it is determined if the primary components of the pool have eligible salary component configured, and at  312  it is determined if the % of eligible salary is shown or configured—if yes then that component should have a eligible salary component configured. If no at  311  or  312 , an error is recorded at  313 . Further, if yes at  307 , at  315  it is determined if the budget pool is getting used by an component. If no at  315 , at  316  a warning is recorded. 
         [0040]    At  320 , it is determined if a salary plan without components is defined. If yes, at  321  it is determined if only one column is marked for salary posting. If no at  321 , an error is recorded at  322 . 
         [0041]    At  323  it is determined if a performance module has been enabled. If yes, at  324  it is determined if a performance effective date has been defined. If no at  324 , an error is recorded at  326 . 
         [0042]    At  327 , it is determined if any modeling actions are enabled. If yes, at  328  it is determined if modeling is enabled for the plan. If no at  328 , at  329  an error is recorded. 
         [0043]    At  330 , it is determined if audit history action is enabled. If yes at  331 , it is determined if at least one column is marked as enable audit”. If no at  331 , at  332  an error is recorded. 
         [0044]    At  333 , it is determined if custom segments have been enabled as modeling or analytics dimensions. If no at  333 , at  334  it is determined if column properties have been defined for custom segments. If no at  334 , an error is recorded. 
         [0045]    At  336 , it is determined if the model usage is “budgets”. If yes, functionality resumes at  306 . 
         [0046]    At  337 , it is determined if the model usage is “allocations”. If yes, at  338  it is determined if at least one component has been defined. If no, an error is recorded at  339 . 
         [0047]    At  340 , it is determined if the model usage is “targets”. If yes, at  341  it is determined if target columns have been configured. If no, an error is recorded at  342 . 
         [0048]    At  343 , it is determined if at least one tab is defined and enabled for the worksheet. If no, an error is recorded at  346 . If yes at  343 , at  344  it is determined if at least one column is enabled for each defined tabs. If no, an error is recorded at  347 . If yes at  344 , at  345  it is determined if both target range and target amount are enabled. If yes, a warning is recorded at  348 . 
         [0049]    At  349 , it is determined if at least one “plan period” is defined for the defined plan. If no, an error is recorded at  347 . 
         [0050]    At  352 , it is determined if “Employee Statements” are not enabled, but the “Communicate” tab is (using configure worksheet page layout). If yes, an error is recorded at  347 . In one embodiment, the “Employee Statements” provide a way for managers to communicate “Compensation Change(s)” to employees using “Compensation Change Letter/Statements”. A Compensation Administrator/Consultant first defines a Rich Text Format (“RTF”) or PDF template by making use of supported compensation attributes (e.g., Salary Amount, Bonus Amount, Employee Details, etc.). An RTF template can be defined using any editor that supports RTF (e.g., Microsoft Word). A defined template is then attached to a Compensation Plan (e.g., Global Salary Change Plan—2008) using a user interface (e.g., Enabling “Employee Statement”) so that managers can make use of this template to generate “Employee Compensation Statement” for employees using a “Communicate” tab on the compensation system user interface. 
         [0051]    Finally at  350 , all recorded errors and warnings are reported to the administrator via a user interface. 
         [0052]    The functionality of  FIGS. 3   a - 3   c  allow errors or oversights to be detected prior to a setup routine that creates transaction data. For example, a recursive reporting hierarchy structure may have been defined by an administrator so that, for example, A→B→C→A. This relatively common setup mistake will be flagged by the functionality of  FIGS. 3   a - 3   c  before causing a transactional error. 
         [0053]    Another example is an error of assigning the same element to different rates, which could be of different types, or errors in dynamic calculation definitions. Dynamic calculations in one embodiment provide a faster approach towards showing some pre-calculated information to the user on screen or calculated information, which is computed on the fly. This is additional information provided to the manager to help in his/her decision making process. The dynamic calculation is defined during setup creation and any wrong entry in it can result is either inaccurate information displayed to the manager or information which is not intelligible at all. Dynamic calculations allow a flexible configuration of the worksheet. Dynamic calculations are defined during setup, and the result of these are evident when the manager is using the worksheet. For example, a manager may rate an employee “Above Average” on the worksheet, and as a result, a dynamic calculation executes and calculates the contents of a “Target Bonus Amount” column, based on the entered performance rating, and perhaps the employee&#39;s job and location. Dynamic calculations allow a user to automatically derive the value of one column upon the entry/update of another column, 
         [0054]      FIG. 4  is a user interface (“UI”)  400  for tracking that setup tasks are completed and initiating validation in accordance with one embodiment. UI  400  includes a task column  402  that lists all of the setup tasks, and a status column  404  that provides the status of all setup tasks (e.g., completed, partially completed, etc.). In one embodiment, a box in column  402  means “not started” and a check means “completed”. After finishing the setup tasks, an administrator can choose to validate and run the process so that setup can be executed by selecting the validate and submit task link  406 . 
         [0055]      FIG. 5  is a UI  500  in accordance with one embodiment that allows an administrator to check setup for readiness in response to selecting task  406  of  FIG. 4 . The administrator can select validate now button  502  before committing to changes in the system. Therefore, errors and warnings will be provided to the user before initiating the participation process with button  504 . 
         [0056]    In response to selecting button  502  of  FIG. 5 , a window pops up in one embodiment that reports potential errors and warnings.  FIG. 6  is a UI  600  in accordance with one embodiment that illustrates pop up window  602 . Window  602  includes a list of potential errors at column  604  and a list of references and tips to resolve the errors at column  606 . 
         [0057]    As disclosed, embodiments include a compensation system that provides verification that all setup parameters were correctly entered before a setup procedure is run. The compensation system can then be implemented with a minimized risk of errors. 
         [0058]    Several embodiments are specifically illustrated and/or described herein. However, it will be appreciated that modifications and variations of the disclosed embodiments are covered by the above teachings and within the purview of the appended claims without departing from the spirit and intended scope of the invention.