GB2390183A - Calculation apparatus and method for financial purposes - Google Patents

Calculation apparatus and method for financial purposes Download PDF

Info

Publication number
GB2390183A
GB2390183A GB0214917A GB0214917A GB2390183A GB 2390183 A GB2390183 A GB 2390183A GB 0214917 A GB0214917 A GB 0214917A GB 0214917 A GB0214917 A GB 0214917A GB 2390183 A GB2390183 A GB 2390183A
Authority
GB
United Kingdom
Prior art keywords
user
calculation
values
results
variables
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.)
Pending
Application number
GB0214917A
Other versions
GB0214917D0 (en
Inventor
James Royston Carlton
Charlie Horwood Carrick
Desmond Daniel Matthewman
Arun Prabhakar Deshpande
Anna Edenborough
Barry Kidney
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.)
ORBIT ON LINE Ltd
Original Assignee
ORBIT ON LINE Ltd
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 ORBIT ON LINE Ltd filed Critical ORBIT ON LINE Ltd
Priority to GB0214917A priority Critical patent/GB2390183A/en
Publication of GB0214917D0 publication Critical patent/GB0214917D0/en
Priority to AU2003240140A priority patent/AU2003240140A1/en
Priority to PCT/GB2003/002736 priority patent/WO2004003800A2/en
Publication of GB2390183A publication Critical patent/GB2390183A/en
Pending legal-status Critical Current

Links

Classifications

    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

A computing device is disclosed, a preferred use of which is for the purpose of calculating pension plans, allowing the user to alter various factors to allow the prediction of a pension plan's outcome. Various factors that influence the outcome of the calculation are able to be fixed to prevent them being changed by the use of fixing means. The fixing means may be in physical form or software form. The behaviour of the pension plan is shown graphically by using JAVA. The calculating method may be employed over the internet and may be used on a variety of devices such as a PC, PDA, , laptop, interactive television, mobile phone etc.

Description

CALCULATION APPARATUS AND METHOD
The invention relates to a calculation apparatus and method. Particularly, but not exclusively, the invention relates to a calculation system for the interactive assessment of a number of interdependent variables.
There are many situations in which a user might want to analyse the results of calculations based on a number of interdependent variables. In such situations, altering the value of one variable can have marked effects on the values of other variables. In order to perceive and fully understand the effects that altering one or more variables will have on the other variables and the end result, the user might have to perform many different calculations. For a large number of variables, with complex interrelations, it may be difficult for the user fully to understand the relationships between the variables and their effect on the results. Furthennore, the effects of altering thRvalues of one variable on the values of the others may not be apparent when He variables or individual calculations are viewed in isolation from each other.
Examples of calculation systems that model data based on a large number of different variables are those used to model financial and investment data. One of the most complex and difficult financial and investment areas to model is that of pension schemes. A pension scheme provides a source of income on retirement, termed an annuity, and usually consists of a fund that a holder of the pension scheme pays into periodically during their working life. There are a variety of different types of pension scheme available to consumers. Amongst the most common are occupational pension schemes, in which an employee typically contributes a percentage of their salary into the scheme each month, stakeholder pensions, in which any individual can invest, and personal pension plans, in which employees, employers and the self-employed can invest.
While many pension scheme holders pay large amounts of money into one or more schemes ova the course of their working life, the level of understanding of pansions among the general public remains low. Few people understand the complexities of their chosen scheme or schemes, and even fewer people know accurately how their particular pension fund or funds are performing. In the United Kingdom, for example, pensions advice is governed by rules laid down by the Financial Services Authority (FSA) to Assure that consumers are sold a fair scheme. While this is obviously a necessary safeguard to prevent fraud, the FSA rules have the effect of limiting the number of those who can legally give pensions advice to consumers, as well as the nature of that advice.
This lack of understanding and awareness of pensions is undesirable, and if unchecked could lead to a dramatic shortfall in retirement provision for those who are unprepared.
Changes in life expectancy and lifestyle are resulting in people living longer than they did previously. This means that pension funds have to be spread over a greater number of years, thus reducing the annual annuity.
At a government level, changes in policy have typically resulted in a shift in the provision of retirement income from the State and employers to individuals, increasing the pressure on consumers to look after themselves. Therefore, educating the public about their pension options and the health of their pension scheme or schemes is very important. Furthermore, its importance will grow as the population ages and governments find themselves unable or unwilling to provide adequate retirement provisions for those relying on the state.
A recent FSA report ('Financing the future: mind the gap!' May 2002) indicated two groups of consumers regarded as being particularly in need of education on pensions.
Research by the FSA has indicated that people in their 20s and 30s will need to be more self-reliant in securing retirement income than generations before them, and are at risk of not saving enough for retirement. On the other hand, consumers in their 60s and 70s are exposed to risks arising from not understanding their choices at retirement. As a result of the limited extent of advice and generic information available to then, consumers in their 60s and 70s are faced with being inadequately prepared to make
crucial, and often irreversible, decisions at retirement that may affect their standard of living for the rest of their lives.
The retirement income that will result from a pension scheme will depend on a large number of variables. A typical occupational pension will involve an employee paying a predetermined percentage of their salary into the scheme each month. Typically the employer will contribute an amount as well, again usually a predetermined percentage of the employee's salary. The employee can also make additional contributions every month, not necessarily based on a fixed percentage of their salary. In addition, they can make single contributions to the fund, which might be desirable after a receiving large bonus As well as the new money deposited in the fund every month, the fund will grow each year by a certain amount. This will depend on the performance of the fund, which is dependent on the expertise in investing the fund of the fund provider, and the prevailing economic conditions.
To model the amount of income derivable from the pension at retirement, a calculation system should have the ability to take the above and other variables into account.
However, the situation is not static, and the values of these variables could be subject to change. For example, the employee's salary will increase with time, requiring a rate of salary increase to be assumed. Inflation will have to be taken into account, which will also require an approximation. Similarly, fund growth and annuity rates will have to be approximated. There are also a plurality of constraints put on pensions by governing bodies such as the Inland Revenue and the FSA. One of the most important is maximum funding, which dictates how much money individuals can contribute into occupational and personal pensions.
Faced with a clear indication of their retirement income, a consumer might realise that their current pension plans are adequate, and that no action is required. More probably, and especially for those currently in their 20s or 30s, they might realise that they should be doing more to plan for retirement. Increasing their monthly contribution and adding a large end of year bonus into the scheme could dramatically increase their income at retirement.
On the other hand, a consumer may realise that their pension provision is more than adequate. In response to this they may decide to retire one or more years early. This would involve one or more year's less contributions into the scheme, and one or more year's less growth on the money in the fund. There may also be financial penalties in their scheme associated with early retirement.
While conventional calculation systems can model the effects of one of the above changes, they are not suited to displaying to the user the individual effects of many such changes on the end result. For example, if a user wants to know the individual and combined effects on their retirement income of: upping their monthly contribution by ú100; adding a ú5,000 bonus every year for three years; retiring 2 years early, after taking a career break for two years between the ages of 36 and 38; and presuming a fund growth of 1% more than the present average; a conventional calculation system will not be suited to the task. The end result, i.e. the income in retirement will have changed as the values of the variables has changed, but the individual effects of each changed variable will not be apparent to the user. Making the changes individually and consecutively analysing the results typically produces a large number of similar looking graphs, and the effects that a change to each variable will therefore have on the values of the others will not be apparent to the user. The user will have difficulty in perceiving the effects that each of the many variables have on the result and on each other.
It is an object of the invention to provide a calculation system that provides the user with a tool that displays the results of calculations involving a plurality of interdependent variables in a form that allows them readily to perceive the effects that the plurality of interdependent variables have on the overall result and on each other. It is another object of the invention to provide an interactive financial planning tool to assist users to make financial decisions, in particular those relating to pension contributions and saving for retirement.
According to a first aspect of the invention there is provided a calculation apparatus comprising: a memory adapted to store both predetermined base values and at least one user-modified new value of a plurality of calculation variables; a user interface adapted to receive a user modification of the values of the calculation variables; a processor
adapted to determine results of calculations based on value of any of die plurality of calculation variables; a display adapted to display the results of calculations as one or more graphical representations, wherein results of a calculation based on the or each user-modified new value is displayed at the same time as the results of a calculation based on the predetermined base values; and a fixing means adapted to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
This allows embodiments of the invention to provide an interactive calculation tool that allows users to analyse easily the results of calculations based on a large number of interdependent variables. The provision of fixing means allows the re-baselining of the results, which allows a user to perform one change, fix the results, and perform further changes, with the results based on the further changes being compared against the fixed baseline results. This allows a user to perceive readily the effects that a plurality of interdependent calculation variables have on the overall result and on each other.
Preferably the memory is adapted to store a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, the said set of user-
modifiable values being adapted to be modified on receipt of a user modification via the user interface; and wherein the fixing means is adapted to replace the set of the base values of the calculation variables with the set of user-modifiable values on receipt of an indication Mom the user.
In a preferred embodiment the fixing means is provided by a softwareimplemented response mechanism. In a particularly preferred embodiment the software-implemented response mechanism comprises a virtual button. The fixing means may be provided by a hardware key.
In a preferred embodiment the memory may be adapted to store values of calculation variables that comprise information relating to finance or investment. In a particularly preferred embodiment the memory is further adapted to store values of calculation variables that comprise information relating to pensions.
The display may be adapted to display the results in at least one of a plurality of predetermined display modes. In a preferred embodiment the display is adapted to display the results according to a plurality of predetermined detail levels, and the user interface is adapted to receive a user indication that the detail level be altered.
Preferably the user interface is adapted to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user. This allows embodiments of the invention to be configured to provide users access to the same calculation apparatus through a variety of interfaces, allowing for different levels of user knowledge of financial planning, for example, as between consumers and finance professionals.
The display may be adapted to display the results as numerical data. In a preferred embodiment relating to pensions, the numerical data comprises at least an indication of retirement income as a percentage of final salary.
In a preferred embodiment the display is adapted to display the graphical representation of the results based on the base values as a first graph, and the results based on the user-
modified new values as a second graph. In a preferred embodiment relating to pensions the display is adapted to display the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
In a preferred embodiment the display is adapted to display the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
In a preferred embodiment the apparatus further comprises reset means, the said reset means being adapted to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
In a preferred embodiment the apparatus is adapted to employ a web browser to provide at least part of the user interface to the user. In a particularly preferred embodiment the
apparatus is adapted to employ a web browser comprising a java apples to calculate the results of the calculations. The apparatus may be adapted to run the java apples in a java sand box, and the apples may be unable to interface directly with external resources.
In a preferred embodiment the web browser has embedded JavaScript functions, and wherein the apparatus is adapted to use JSObject classes in the java apples to access the embedded JavaScript functions. The apparatus may be adapted to use JSObject classes; in the java apples to access the embedded JavaScript functions for any of: saving the received usa modifications of the values of the calculation variables; restoring previously saved usa modifications of the values of the calculation variables; and generation of a printable form of at least part of the results. In a particularly preferred embodiment the virtual button is provided by the java apples. In a particularly preferred i embodiment the reset means comprises a virtual button provided by the java apples.
The apparatus may be any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computa, personal computer, workstation, interactive television, or terminal.
According to a second aspect of the invention there is provided an operation method for calculation apparatus comprising: storing both predetermined base values and at least one user-modified new value of a plurality of calculation variables in memory; using a usa interface to receive a usa modification of at least one of the values of the 3 calculation variables; using a processor to determine results of calculations based on values of the plurality of calculation variables; displaying the results of calculations as one or more graphical representations, wherein results of a calculation based on the usamodified new value or values is displayed at the same time as the result of a calculations based on the predetermined base values; and using a fixing means to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user modified new values.
In a preferred embodiment the method further comprises: displaying the results of calculations based on the predetermined base values; receiving a user modification of the value of at least one of the calculation variables; displaying the results of
calculations based on the user-modified new value or values; fixing the results, and displaying the results of calculations based on the new base values only, and receiving a further user modification of the value of at least one of the calculation variables and displaying the results of calculations based on the further user-modified new value or values. In particularly preferred embodiment the method comprises repeating the fixing the results step and the receiving a further user modification step at least once.
In a particularly preferred embodiment the method comprises: storing a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables; modifying the set of user-modifiable using the user interface; and using the fixing means to replace the set of the base values of the calculation variables with the set of usermodifiable values on receipt of an indication from the user.
In a preferred embodiment the method comprises providing the fixing means using a software-implemented response mechanism. In a particularly preferred embodiment the software-implemented response mechanism is provided as a virtual button. The fixing means may be established using a hardware key.
In a preferred embodiment the method further comprises storing values of calculation variables that comprise information relating to finance or investment. In a particularly preferred embodiment the method further comprises storing values of calculation variables that comprise information relating to pensions.
In a preferred embodiment the method may comprise displaying the results in at least one of a plurality of predetermined display modes. In a preferred embodiment the method may further comprise displaying the results according to a plurality of predetermined detail levels, and using the user interface to receive a user indication that the detail level be altered. Preferably the method may comprise using a user interface to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user.
The method may comprise displaying the results as numerical data. In a preferred embodiment the said numerical data comprises at least an indication of retirement
income as a percentage of final salary. In a particularly preferred embodiment the method comprises providing graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph. In a preferred embodiment relating to pensions the method further comprises displaying the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement. In a preferred embodiment the method further comprises displaying the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
In a preferred embodiment the method further comprises using reset means to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables. The method may comprise using a web browser to provide at least part of the user interface to the user. In a preferred embodiment the method filer comprises using a web browser comprising a java apples to calculate the results of the calculations. In a preferred embodiment the method further comprises running the java apples in a java sand box, such that the apples is unable to interface directly with external resources. In a preferred embodiment the web browser has embedded JavaScript functions, and wherein the java apples uses JSObject classes to access the embedded JavaScript functions. The method may comprise using JSObject classes in the java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
In a particularly preferred embodiment the method comprises establishing the virtual button using the java apples. In a preferred embodiment the method comprises establishing the reset means using a virtual button located in the java apples.
The method may use apparatus provided by any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computer, personal computer, workstation, interactive television, or a terminal.
According to a third aspect of the invention there is provided a calculation processing system comprising: a calculation device; a data store adapted to store predetermined base values of a plurality of calculation variables; a configuration processor adapted to configure the calculation device using the predetermined base values stored in the data store; a communications interface system adapted to send information to the calculation device; a user interface system comprised within the calculation device, the said user interface system being adapted to receive a user modification of at least one of the values of the calculation variables; a display system comprised within the calculation device, the said display system being adapted to display the results of calculations as one or more graphical representations, wherein result of a calculation based on the user-
modified new value or values is displayed at the same time as the result of a calculation based on the predetermined base values; and a fixing means comprised within the calculation device, the said fixing means being adapted to receive an indication from a user that at least one of the base values of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
In a preferred embodiment the data store is adapted to store a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, the said set of user-modifiable values being adapted to be modified on receipt of a user modification via the user interface system; and wherein the fixing means is adapted to replace the set of the base values of the calculation variables with the set of user-
modifiable values on receipt of an indication from the user.
In a preferred embodiment the fixing means is provided by a softwareimplemented response mechanism on the calculation device. In a particularly preferred embodiment the software-implemented response mechanism comprises a virtual button on the calculation device. The fixing means may be provided by a hardware key on the calculation device.
In a preferred embodiment the data store is further adapted to store values of calculation variables that comprise information relating to finance or investment. In a particularly preferred embodiment the data store is further adapted to store values of calculation variables that comprise information relating to pensions.
Preferably the display system is adapted to display the results in at least one of a plurality of predetermined display modes. In a preferred embodiment the display system is adapted to display the results according to a plurality of predetermined detail levels, and the user interface system is adapted to receive a user indication that the detail level be altered. Preferably the user interface system is adapted to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user.
The display system may be adapted to display the results as numerical data. Preferably the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
In a preferred embodiment the display system is adapted to display the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph. In a particularly preferred embodiment relating to pensions the display system is adapted to display the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement. In a preferred embodiment the display system is adapted to display the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
In a particularly preferred embodiment the calculations system further comprises reset means comprised within the calculation device, the said reset means being adapted to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
Preferably the system is adapted to employ a web browser on the calculation device to provide at least part of the user interface to the user. More preferably the system is adapted to employ a web browser on the calculation device comprising a java apples to calculate the results of the calculations. The system may be adapted to run the java
apples in a Java sand box on the calculation device, the said Java apples being unable to interface directly with external resources. Preferably the web browser has embedded JavaScript functions, and wherein the calculation device is adapted to use JSObject classes in the Java apples to access the embedded JavaScript functions. In a preferred embodiment the calculation device is adapted to use JSObject classes in the Java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
In particularly preferred embodiment the virtual button is provided by the Java apples. In a preferred embodiment the reset means comprises a virtual button located in the Java apples. According to a fours aspect of the invention there is provided a terminal for use in a calculations system, the said terminal comprising: a communications interface adapted to receive information from a remote calculations processing system, the said information being configured to relate to a set of predetermined base values of a plurality of calculation variables; a user interface system adapted to receive a user modification of the value of at least one of the calculation variables; a display adapted to display the results of calculations as one or more graphical representations, wherein results of a calculation based on the user-modified new value or values is displayed at the same time as the results of calculations based on the predetermined base values; and a fixing means adapted to receive an indication from a user that the base value of any one of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
In a preferred embodiment the terminal is adapted to store a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, the said set of user-modifiable values being adapted to be modified on receipt of a user modification via the user interface; and wherein the fixing means is adapted to replace the set of the base values of the calculation variables with the set of user-modifiable values on receipt of an indication from the user.
In a preferred embodiment the fixing means is provided by a softwareimplemented response mechanism. In a particularly preferred embodiment the software-implemented response mechanism comprises a virtual button. The fixing means may be provided by a hardware key.
In a preferred embodiment the information is configured to relate to values of calculation variables that relate to finance or investment. In a particularly preferred embodiment the information is configured to relate to values of calculation variables that relate to pensions.
Preferably the display is adapted to display the results in at least one of a plurality of predetermined display modes. In a preferred embodiment the display is adapted to display the results according to a plurality ofpredetermined detail levels, and the user interface is adapted to receive a user indication that the detail level be altered.
Preferably the user interface is adapted to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user. The display may be adapted to display the results as numerical data. Preferably the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
In a preferred embodiment the display is adapted to display the graphical representation of the results based on the base values as a first graph, and the results based on the user-
modified new values as a second graph. In a particularly preferred embodiment relating to pensions the display is adapted to display the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
In a particularly preferred embodiment the display is adapted to display the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
Preferably the terminal further comprises reset means, the said reset means being adapted to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
In a preferred embodiment the terminal is adapted to employ a web browser to provide at least part of the user interface to the user. Preferably the terminal is adapted to employ a web browser comprising a java apples to calculate the results of the calculations. The terminal may be adapted to run the java apples in a java sand box, and the apples is unable to interface directly with external resources.
In a preferred embodiment the web browser has embedded JavaScript functions, and wherein the apparatus is adapted to use JSObject classes in the java apples to access the embedded JavaScript functions. Preferably the terminal is adapted to use JSObject classes in the java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results. In a particularly preferred embodiment the fixing means comprises a virtual button located in the java apples.
Preferably the reset means comprises a virtual button located in the java apples.
The terminal may comprise any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computer, personal computer, workstation, interactive television, or terminal According to a fifth aspect of the invention there is provided a server for use in a calculation processing system comprising: a data store adapted to store predetermined base values of a plurality of calculation variables; a configuration processor adapted to configure a calculation device using the predetermined base values stored in the data store; and a communications interface system adapted to send information to the calculation device.
In a preferred embodiment the data store is adapted to store values of calculation variables that relate to finance or investment. In a particularly preferred embodiment the data store is adapted to store values of calculation variables that relate to pensions.
In a preferred embodiment the communications interface is adapted to send a Java apples to the calculation device.
According to a sixth aspect of the invention there is provided an operation method for a calculation system comprising: providing a calculations device; storing both predetermined base values and at least one user-modified new value of a plurality of calculation variables in dam store; using a configuration processor to configure the calculation device using the predetermined base values stored in the dam store; using a communications interface system to send information to the calculation device; using a user interface system comprising within the calculation device to receive a user modification of at least one of the values of the calculation variables; displaying the results of calculations as one or more graphical representations on the calculations device, wherein results of a calculation based on the user-modified new value or values is displayed at the same time as the result of a calculations based on the predetermined base values; and using a fixing means comprised within the calculations device to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user-
modified new values.
In a preferred embodiment the method further comprises: displaying the results of calculations based on the predetermined base values; receiving a user modification of the value of at least one of the calculation variables; displaying the results of calculations based on the usermodified new value or values; fixing the results, and displaying the results of calculations based on the new base values only; and receiving a further user modification of the value of at least one of the calculation variables and displaying the results of calculations based on the further user-modified new value or values. In particularly preferred embodiment the method comprises repeating the fixing the results step and the receiving a further user modification step at least once.
In a preferred embodiment the method comprises: storing a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables; modifying the set of user-modifiable using the user interface; and using the fixing means to replace the set of the base values of the calculation variables with the set of usermodifiable values on receipt of an indication from the user.
Preferably the method comprises establishing the fixing means using a software-
implemented response mechanism provided by the calculations device. More preferably the method comprises providing the software-implemented response mechanism as a virtual button. The method may comprise establishing the fixing means using a hardware key provided by the calculations device.
In a preferred embodiment the method comprises storing values of calculation variables that comprise information relating to finance or investment. In a particularly preferred embodiment the method comprises storing values of calculation variables that comprise information relating to pensions.
Preferably the method comprises displaying the results in at least one of a plurality of predetermined display modes. In a preferred embodiment the method furler comprises displaying the results according to a plurality of predetermined detail levels, and using the user interface system to receive a user indication that the detail level be altered.
Preferably the method comprises using the user interface system to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user.
The method may comprise displaying the results as numerical data. In a preferred embodiment relating to pensions the method may comprise displaying numerical data comprises at least an indication of retirement income as a percentage of final salary.
In a preferred embodiment the method further comprises displaying the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph. In a preferred embodiment relating to pensions the method further comprises displaying the first graph and the
second graph in the form of graphs of percentage of final salary against age after retirement. In a preferred embodiment the method further comprises displaying the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
In a preferred embodiment the method furler comprises using reset means comprised within the calculations device to restore the apparatus to a state it occupied before any user modification of Me values of the calculation variables.
Preferably the method further comprises using a web browser on the calculations device to provide at least part of the user interface system to the user. In a preferred embodiment the method further comprises using a web browser comprising a java apples to calculate the results of the calculations.
Preferably the method further comprises running the java apples in a java sand box on the calculations device, such that the java apples is unable to interface directly with external resources.
In a preferred embodiment the web browser has embedded JavaScript functions, and wherein the java apples uses JSObject classes to access the embedded JavaScript functions. Preferably the method further comprises using JSObject classes in the java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
In a particularly preferred embodiment the method comprises establishing virtual button using the java apples. In a preferred embodiment the method comprises establishing the reset means using a virtual button located in the java apples.
According to a seventh aspect of the invention there is provided an operation method for a terminal for use in a calculations system comprising: using a communications interface to receive information from a remote calculations processing system, the said information being configured to relate to a set of predetermined base values of a plurality of calculation variables; using a user interface to receive a user modification of at least one of the values of the calculation variables; displaying the results of calculations as one or more graphical representations, wherein results of a calculation based on the usermodified new value or values is displayed at the saTne time as the result of a calculations based on the predetermined base values; and using a fixing means to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user-
modified new values.
In a preferred embodiment the method further comprises: displaying the results of calculations based on the predetermined base values; receiving a user modification of the value of at least one of the calculation variables; displaying the results of calculations based on the usermodified new value or values; fixing the results, and displaying the results of calculations based on the new base values only, and receiving a furred usa modification of the value of at least one of the calculation variables and displaying the results of calculations based on the further user-modified new value or values. In particularly preferred embodiment the method comprises repeating the fixing the results step and the receiving a further usa modification step at least once.
In a preferred embodiment the method comprises: storing a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, modifying the set of user-modifiable using the user interface; and using the fixing means to replace the set of the base values of the calculation variables with the set of usermodifiable values on receipt of an indication from the user.
In a prepared embodiment the method comprises establishing the fixing means using a software-implemented response mechanism. In a particularly preferred embodiment the method comprises providing the softwareimplemented response mechanism as a virtual button. The method may comprise establishing the fixing means using a hardware key.
Preferably the method further comprises storing values of calculation variables that comprise information relating to finance or investment. In a preferred embodiment relating to pensions the method further comprises storing values of calculation variables that comprise information relating to pensions.
In a preferred embodiment the method further comprises displaying the results in at least one of a plurality of predetermined display modes. In a preferred embodiment the method further comprises displaying the results according to a plurality of predetermined detail levels, and using the user interface to receive a user indication that the detail level be altered. Preferably the method comprises using the user interface to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user.
The method may comprise displaying the results as numerical data. In a preferred embodiment relating to pensions the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
In a preferred embodiment the method further comprises displaying the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph. In a preferred embodiment relating to pensions the method further comprises displaying the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement. In a preferred embodiment the method further comprises displaying the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
Preferably the method further comprises using reset means to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
In a preferred embodiment the method further comprises using a web browser to provide at least part of the user interface to the user. In a particularly preferred embodiment the method further comprises using a web browser comprising a java apples to calculate the results of the calculations. In a preferred embodiment the method further comprises further comprising running the java apples in a java sand box, such that the apples is unable to interface directly with external resources. In a preferred embodiment the web browser has embedded JavaScript functions, and wherein the java apples uses JSObject classes to access the embedded JavaScript functions.
The method may further comprise using JSObject classes in the java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
In a particularly preferred embodiment the method comprises establishing the virtual button using the java apples. In a preferred embodiment the method comprises establishing the reset means using a virtual button located in the java apples.
The method may employ a terminal provided by any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computer, personal computer, interactive television, or a workstation.
According to a eighth aspect of the invention there is provided an operation method for a server for use in a calculation processing system comprising: storing predetermined base values of a plurality of calculation variables in a data store; using a configuration processor to configure a calculation device using the predetermined base values stored in the data store; and using a communications interface system adapted to send information to the calculation device.
In a preferred embodiment the method comprises storing values of calculation variables that relate to finance or investment. In a particularly preferred embodiment the method comprises storing values of calculation variables that relate to pensions.
In a particularly preferred embodiment the method comprises sending a Java apples to the calculation device.
According to a ninth aspect of the invention there is provided computer program code for controlling a computer to carry out a method according to the second, sixth, seventh and eighth aspects of the invention.
According to a tenth aspect of the invention there is provided a carrier medium carrying the computer program code according to the ninth aspect of the invention.
For a better understanding of the invention, embodiments of a calculation system in accordance with the invention will now be described by way of example and with reference to the accompanying drawings in which: Figure 1 is a schematic diagram of a calculation system according to a general embodiment of the present invention; Figure 2 is a schematic diagram of a calculation system according to a first specific embodiment of the present invention; Figure 3 is a schematic diagram of a computer terminal for use in the system of Figure 2; Figure 4 is a flow diagram illustrating a set up and configuration stage for the calculation system of the first specific embodiment; Figure 5 is a flow diagram illustrating a first stage in the modelling procedure of the first specific embodiment; Figure 6 is a flow diagram illustrating a second stage in the modelling procedure of the first specific embodiment;
Figure 7 is a flow diagram illustrating the procedure of saving results in the first specific embodiment; Figure 8 is a flow diagram illustrating the procedure of restoring of previously saved results in the first specific embodiment; Figure 9 is an example screenshot of the calculation system used in the first specific embodiment; Figure 10 is a further example screenshot of the calculation system used in the first specific embodiment; Figure 11 is a still further example screenshot of the calculation system used in the first specific embodiment; Figure 12 is an example screenshot of the calculation system used in a second specific embodiment; Figure 13 is a further example screenshot of the calculation system used in the second specific embodiment; Figure 14 is a still further example screenshot of the calculation system used in the second specific embodiment; Figure 15 is a schematic diagram of the Employee object used in the calculation system of the first and second specific embodiments; Figure 16 is a schematic diagram of the Assumptions broker used in the calculation system of the first and second specific embodiments; Figure 17 is a schematic diagram of the Property broker used in the calculation system of the first and second specific embodiments;
Figure 18 is a flow chart illustrating the overall process by which the calculation system of the first and second specific embodiments obtains the calculation results; Figure 19 is a flow chart illustrating the process by which the calculation system of the first and second specific embodiments gathers and calculates data; and Figure 20 is schematic diagram of the Value broker and Display mode selector used in the calculation system of the first and second specific embodiments.
A generalised embodiment of the invention will now be described with reference to Figure 1. This and other embodiments will be described with reference to calculating and modelling pensions data. This is by way of example only, and those skilled in the art will understand that the invention is not limited in this way. The invention could equally apply to the modelling of any data based on a plurality of variables.
A terminal 100 is connected to a communications network 200. The terminal 100 is operable by a user who wishes to calculate and model their pensions data. The terminal comprises a fix button 800 and a reset button 900. A pensions management processing system is also connected to the network 200 and comprises a communications interface 300 connected to a configuration processor 400 and a data processor 600, each of which is connected to a respective data store, 500, 700.
Inter alla, the configuration processor 400 controls the security of the system, session management and merges data.
The user requests to start modelling of his or her pension data from the terminal 100, and the request is passed to the configuration processor 400 via the communications interface 300.
The configuration processor 400 sends a request to the data processor 600 to acquire the base pensions data that relates to the user from the data store 700. The base pensions data comprises the stored values of the pension variables relating to the user's current actual values, such as age, salary etc. The base values also comprise a default set of
assumptions about such variables as the rate of salary increase, inflation and fund growth. The base values therefore comprise those values that give an accurate indication of the real state of the user's pension, based on a default set of assumptions.
The data processor 600 also acquires the permitted thresholds for each of the pension variables from the data store 700. The permitted thresholds allow the calculation system to set maximum and minimum values for each of the variables. Some thresholds, such as those related to levels of fund growth, are set to comply with those prescribed by a governing body such as the FSA. This allows the system to be compliant with the appropriate regulations. In embodiments unrelated to pensions, the data store 700 could comprise information relating to which set of predetermined thresholds best suit the data being modelled.
Once the base values and permitted thresholds have been acquired, the data processor 600 sends them to the configuration processor 400. The configuration processor 400 assembles the base values of the pension data, the information relating to the permitted thresholds of each value, and compiles a pension calculator specific to the user. The configuration processor 400 then sends this information to the terminal 100.
The calculator is stored at the terminal 100, and the pension results based on the base values are calculated. The results then are displayed at the terminal 100 via suitable display means.
If the user alters any of the values of the pension variables, such as monthly contribution, the calculator will check whether the modified value is within the permitted threshold for that value. The permitted thresholds for each variable might depend on the values of one or more other variables. For example, the maximum monthly contribution allowable will depend on many things including the salary of the user, and the value of any single contributions made by the user.
If the modified value falls outside the permitted range for that variable, the terminal 100 can display a warning or error message to the user. If the modified value is inside the permitted range, the terminal 100 will display the results of the pension calculation
based on the new values along with the results of the calculation based on the base values. This allows the user the opportunity to compare and contrast their actual pension data (corresponding to the base values) and their modelled data, based on the new values. The user can continue to use the terminal 100 to modify the values of the pension variables in this way. Each time a change is made the terminal 100 will display the latest set of user-modified values with the base values.
In order to perceive the effects of altering the values of one set of variables as compared to a different set of variables, the user can press the fix button 800 on the terminal 100.
The fix button may comprise a virtual button in software, a key on the keyboard of the terminal 100, or a special hardwired key. If a user presses the fix button 800, the calculator will replace the stored base values of the pension variables with the user-
modified new values. This has the effect of re-baselining the data, and only the results relating to the new set of base values would be displayed at the terminal 100.
The user is free to use the terminal 100 to modify the values of the pension variables again. The pensions calculator will then display the results of new user-modified values and the new base values on the same graphical representation. Such a calculator allows to user to make many alterations to their pension model, in such a way that the effects of each change are apparent to the user in relation to a base set of data.
The fix button 800 allows the user to model the effects of changing a plurality of interdependent variables against a modifiable set of baseline data in real time. For use in modelling pensions data this provides an interactive modelling and education tool.
The terminal 100 also comprises a reset button 900. The reset button may comprise a virtual button in software, a key on the keyboard of the terminal 100, or a special hardwired key. If the reset button 900 is pressed, the calculator will restore the original base values of the pension variables that correspond to the values originally obtained hom the data store 700. The terminal will thus be returned to the state it was in before the user modified any of the variables.
In the embodiment of figure 1, the configuration processor 400 and the data processor 600 could together be considered a processor system, although other processor systems could be used. Furthermore, the communications interface 300, the configuration processor 400, the data processor 600 and the data stores 500, 700 could be provided in a single processing system, such as a general purpose computer.
The data store 700 could comprise several data stores, located on several different servers or general purpose computers.
Alternatively, the terminal 100, configuration processor 400 and the data processor 600 could be comprised in a single device. In this case the communications network 200 and communications interface 300 could be defined by the control bus of a general purpose computer. The configurations processor 400 and the data processor 600 could be comprised in a single processor, and the data stores 500,700 could be comprised in memory or physical storage means. In this case the terminal 100 could comprise a personal computer, a laptop computer, a workstation, a PDA, interactive television, or a mobile phone.
A first specific embodiment of the invention will now be described in with reference to figures 2 to 9.
This embodiment of the invention is implemented over the Internet, using the world-
wide web. The pensions terminal 2 operated by a user who wants to model their pensions data in this case takes the form of a conventional personal computer, which implements web browser software to provide a web interface. The terminal 2 is connected via the Internet 4 to a web server 6, which forms part of a pensions management processing system. The pensions management processing system further comprises an applications server 8, which is connected to the web server 6 and generates web pages that are downloaded to the terminal 2 for interpretation by the browser.
The applications server B can generate web pages using HTML, Java applets and JavaScript derived from storage device 10, and using data from the database server 12 in order to provide an interface to the pensions management system.
The application server 8 also provides a number of additional functions. Amongst other things, it is primarily responsible for session management, security, and merging data.
In practice the application server 8, and database server 12 can be built from a number of respective software applications that will be well known to, and understood by, those skilled in the art, so they will not be described in detail here. The database server 12 provides data to the application server 8 relating
to the pension variables of the user. The database server 12 is connected to a user attributes database 14, a saved values database 16, and a pension fund server 18. The attributes database 14 comprises information pertaining to the attributes of the user such as age, salary, and the default set of assumptions and thresholds for the pension variables in the user's pension plan. The saved values database 16 comprises information relating to user-modified values of the pension variables that the user might have saved in previous modelling sessions for later use.
The pension fund server 18 is directly connected to a pension fund database 20. The pension fund database 20 comprises information relating to the current and projected values of the pension fund or funds that the value of the user's pension is based on. In this embodiment the pension fund server 18 and the pension fund database 20 are located within a network belonging to the pension fund provider. This involves a direct connection between the database server 12 and the pension fund server 18. Alternatively it could be facilitated by the Internet or an alternative network.
It is well-known and will be understood by the skilled person in the art that servers can comprise a computer program application implemented on a dedicated machine, or they can comprise a computer program application as one of many implemented on a
machine. Thus, in the embodiment of figure 2, the web server 6, the application server 8, the database server 12, the pension fund server 18 could all be implemented on a single computer with appropriate storage capacity for the attributes database 14, the saved values database 16, the pension fund database 20, and the storage device 10.
In addition, it will be well understood that a pensions management system such as described herein could easily (and often would) define one functional element of a larger system, which could provide a range of other facilities, some of which could be co-operable with the pensions management system.
In fact, the web server 6, the application server 8, the database server 12, and the pension fund server 18 could all perform other functions supporting the operation of other elements of the larger system; in other words, they could be shared resources. In the context of a website, the other components of the larger system could, for example, be simultaneously accessible on the same web pages as elements of the pensions management system and those other components could be constructed as part of a process that constructs pages required for the implementation of the present invention.
This means that the processing steps described in relation to embodiments of this invention are not necessarily self-contained and could represent components of other processes. Figure 3 is schematic diagram of the terminal 2 for use with the first specific embodiment of figure 2. In figure 3 the terminal 2 is represented by a desktop personal computer. However, the terminal 2 could comprise any suitable hardware, including: a laptop computer, a workstation, interactive television, a PDA, or a mobile telephone.
The terminal 2 comprises a control bus 30, a communications I/O port 31, a printer port 32, user input means 33, program storage 36, memory 37, user ID storage 38, and display means 40. Where the terminal comprises a general purpose computer the user input means 33 comprises a pointing device, such as a mouse 34 and a keyboard 35, and the display means 40 would be a standard monitor.
The operation of the first specific embodiment of the present invention shown in figure 2 will now be described with reference to figures 4 to 7.
A user who wishes to access the pensions management processing system employs a web browser on the t;lllinal 2 to access the web server 6 using the appropriate URL.
Thus, in step S 1 the user loads the locally stored browser software from the program storage area 36 of the terminal 2. The web browser is then displayed on the display 40.
The user enters the appropriate URL, and the introductory web page is requested by the terminal 2 (S2). The introductory web page is then compiled by the application server 8 at step S3, and is downloaded to the terminal 2 at S4.
The introductory page could comprise information regarding the pension management system. The introductory pages could also contain a password entry mechanism, implemented using HTML with embedded JavaScript.
The user enters their password at SS, and it is sent to the application server 8 by means of the embedded JavaScript at step S6, and verified at S7. If the password is incorrect the application server sends a retry request to the terminal 2 at S8, and an invalidity page is displayed at the terminal 2 at S9.
If the password is found by the application server 8 to be valid, the application server 8 instructs the database server 12 to check the attributes database for the user preferences at step S 10. The user preferences could include the user's previously determined configuration settings that are used to provide the user with personalized web content.
Alternatively, the system may employ an alternative user verification means. This could include the terminal 2 sending a user ID to be verified by the application 8, using a cookie stored on the terminal 2. This could be used separately or in conjunction with the password entry system described above.
The user preferences are passed to the application server 8. The application server 8 calls for appropriate HMTL components and JavaScript content from the storage device
1 O. and at S11 the application server builds personalized web content for the user. This personalized web content with embedded JavaScript is downloaded to the terminal 2 at step S12.
Figure 5 shows the situation in which the user decides to start modelling their pension data. If the user decides to start modelling, they may enter an instruction to launch the calculator at S 13. This takes the form of activating a virtual button located on the personal web content, and implemented using HTML and JavaScript. Other types of response mechanism are however possible.
The instruction to launch the calculator is then sent to the application server 8 at step S14. The application server 8 requests that the database server 12 obtains the base values of the pension variables needed to calculate the user's pension. As discussed, the base values comprise the users attributes such as age and salary, and a default set of assumptions about such variables as the rate of salary increase, inflation and fund growth. The database server 12 then collects the base values of the pension variables at step S 15.
The database server 12 could collect the values of the following variables from the attributes database 14 to model an example pension scheme.
Age related factors: À contribution age À retirement age À term based age À future service À number of years in retirement À past service Contribution related factors: À salary deft nition À employee based salary
À employer based salary À employee contribution percent À employer contribution percent À salary sacrif ce amount À other contribution amount À single contribution amount À contribution break À National Insurance uplift amount Monetary related factors À tax rate À National Insurance uplift rate À inflation rate À earnings cap À annuity escalation rate À annuity rate À partner pension rate Charge related factors À allocation rate À bid/offer rate À management fee percent In this example, the database server 12 would typically collect the values of the following variables from the pension fund database 20, via the pension fund server 18: Fund related factors À growth rate À current plan value À other plan value
The database server 12 could also obtain permitted thresholds for each value obtained from the attributes database 14 and the pension fund database 20. Once all the values and thresholds have been obtained, they are sent to the application server 8 at Sib.
At S17 the application server 8 builds a HTML web page with embedded JavaScript functions and a Java app1et calculator from information from the storage device 10. The Java apples calculator is an object-oriented computer program that comprises a collection of brokers that calculate pension data for the purpose of interactive modelling. The data structure of the calculator according to both the first and second specific embodiments will be discussed in more detail later with reference to figures 15 to20. At S 18 the application server 8 sends the HMTL page comprising embedded JavaScript functions and the Java apples calculator to the terminal 2.
The web page with the embedded Java apples and JavaScript functions is displayed at the terminal 2 on the display 40 and the calculator launched at S 19. The Java apples calculator can be displayed in a window of the displayed HTML page of the web browser, as shown in figure 3.
At S20 the Java apples calculates the projected retirement income of the user based on the base values of the pension variables. The calculation process for this embodiment and the second specific embodiment will be discussed in more detail later with reference to figures 15 to 20. At step S2 1 the results are displayed on the display 40 of the terminal 2. The results are displayed in the form of a graph showing projected retirement income represented as a percentage of final salary, against age after retirement (although other representations are possible). Accurate numerical results can be displayed at the same time in a separate window. The user will thus be presented with a projection of their likely retirement income based on a default set of approximations and their actual current parameters such as current age and salary. The graph could show an indication of their projected final salary, taking the assumed rate of salary increase and an assumed rate of inflation into effect. Alternatively it could show an indication of their projected final salary in today's terms, i.e. without taking inflation
into account. Showing the results in today's terms helps a user understand the value of their projected retirement income in terms of units of wealth that they know the value of The processes that occur once the user decides to modify the values of any of the pension variables will now be discussed with reference to figure 6.
At step S22, the user modifies the value of one of the pension variables. In this embodiment the values are modified by a series of virtual buttons located within the Java apples window, or a text entry box for each value, depending on the type of variable, as different response mechanisms would be more or less appropriate for each variable depending upon its nature.
At step S23, the Java apples checks whether the modified value is within the stored permitted range for that variable. If it is not within the stored permitted range, an error message is displayed at S24, and the value is left as it was. Alternatively, there may be situations in which the calculator will only warn the user that the value is outside the permitted range, and let the modelling process progress none the less. Another alternative would be to alter the response mechanism in such a way that the user is unable to enter values beyond the permitted range. This could be performed by removing or disabling the virtual button that increases or decreases the value when the maximum or minimum permitted threshold has been reached. For example, this could prevent negative values of employee contributions from being entered.
At S25 the Java apples calculates the projected retirement income of the user based on the values of the pension variables including the variable that the user modified, using the same process that was previously performed on the base values at step S20.
The Java apples then displays the results based on the new user-modified results in the form of a graph of showing projected retirement income as a percentage of final salary against age after retirement (S26).
At S26 the apples also displays the results based on the base values base values of the pension variables as a 'ghosted' graph. The ghosted graph is of a different colour but
could alternatively be transparent, and allows the user visually to compare the projected income at retirement for both the user-modified results and the base results.
Furthermore, the apples can also display accurate numerical results based on both the user-modified results and the base results, allowing a numerical comparison to be made between the two.
If the user decides to modify another pension variable, the process then returns to step S22. The user-modified value is checked (S23), and if permitted the projected retirement income is calculated for the new set of values for the pensions variables (S25). At step S26 the apples will display the results based on the latest set of user-
modified pension variables, with the ghosted graph of the results based on the base variables. Thus the user is presented with a comparison of results based on the base data and the results based on the most recently user-modified data.
However, this comparison will not be sufficient to allow the user to perceive all the possible effects of the altering the value of one variable against the effects of altering another variable. In order to achieve this, the user can decide to fix the results at step S27. this embodiment, fixing is performed by means of a virtual fix button 46 located in the Java apples window, but other alternatives are possible and may be software or hardware implemented.
If a user presses the fix button 46 (S28), the calculator will replace the stored base values of the pension variables with the latest set of user-modified new values (S29).
The previously displayed ghosted graph or the old base data will be removed (S30), and the lava apples will display only the graph of the results based on the latest set of user-
modified values, which now correspond to the new base data.
The fix button 46 allows the user to re-baseline the graph with the results of the calculations based on the latest set of user-modified values. The user is then free to start modifying the values of the variables again (S22), and if these values are permitted a graph of the new user-modified values will be displayed along with a ghosted graph of the new base data (S26).
An example of the benefit obtained using the fix button functionality will now be discussed. It is presumed that a user has launched the calculator, and has been presented with a graph and accurate numerical results based of their current projected pension income. This combination of a graph and accurate numerical results based on the base values allows the user to identify any current pensions gap they might possess. For example, consider a United Kingdom user in their early 30s with a basic salary of ú30,000, who pays 4% of this into an occupational scheme, into which the employer also pays 6%.
They might examine a graph of their projected retirement income and realise that their current occupational scheme only stands to provide them with a retirement income of 32% of their projected final salary. An example screenshot of what the calculator according to this embodiment displays at this point is given in figure 9. The calculator displays a graph of projected retirement income against age, with a comparison bar showing final salary and accurate numerical data displayed at the same time in a separate window The calculator thus provides an easy to understand representation of the user's retirement provisions.
It is very possible in this case that the user would feel this to be an inadequate retirement provision, and the user might well want to analyse the effects of adding more money into their scheme. For example, the user might be considering adding a ú10,000 end of year bonus from their employer into the scheme. In this case, the user would be adding ú1 O,OOO gross into the scheme. However, as U1C pensions are subject to tax relief, the user would not be taxed on this amount, and as the user would not be subject to 40% tax on their sacrificed bonus, the net cost of adding the bonus into the scheme would be ú6,000. Furthermore, if the user is sacrificing a bonus from an employer, the employer saves on national insurance contributions. This saving, which currently amounts to 11.8% of the sacrificed amount is usually passed on to the enployee's pension plan by the employer. This means that the actual amount added to the scheme for sacrificing a ú10,000 bonus into the scheme is ú1 1,180 at a net cost of ú6,000.
The user might then seriously consider adding their bonus into their scheme, as it would seem tax efficient. However, the effects of adding a one off contribution of ú11,180 into
a pension scheme that they will not cashin until retiring aged 65 would not necessarily be apparent.
The user may therefore desire to modify the value of the single contribution variable, which in this example has been previously set as zero, to reflect the addition of a one off contribution of ú10,000. In order to modify the single contribution variable in this embodiment the user can use a mouse or suitable pointing device to click on the single contribution virtual button indicated in the screenshot in figure 9. As the value of the single contribution variable is currently set to zero, there is no button to its lower value.
Once the single contribution is raised a button to lower it again will then be displayed.
The user can then use the virtual button to add a one off contribution of ú10,000. The calculator will check whether the prescribed rules of maximum funding allow this, and if so display the projected pension graph incorporating the added ú10,000. The projected retirement income based on the base data will be displayed as a ghosted graph. Accurate numerical results for both the new and base values will also be displayed, to allow for a numerical comparison.
The user will therefore be presented with a graphical representation of the effects on their retirement income of adding ú10,000 to the scheme. The user might find that that their retirement income as a percentage of their final salary has increased from 32% to 38%. While this is obviously an improvement, the user may still think this insufficient provision for retirement. The user might then decide to model the effects of adding an extra ú300 a month into the scheme. The user performs this by altering the other contribution variable from zero to ú300, using the appropriate virtual button shown in figure 9. Presuming this, in combination with the previously added ú10,000 single contribution, does not breach the prescribed maximum funding levels, the results based on the new set of data will be calculated. These will then be displayed on a graph, with the ghosted base values.
The user might see that their projected retirement income has increased to 77% of their projected final salary. The user may decide that, while they could afford to sacrifice their ú10,000 bonus and give an extra ú300 into the scheme, that they quite like the idea of early retirement.
If they decided to model the effects of retiring five years early, they decrease the value of retirement age variable by five years to 60 from the default of 65, using the appropriate virtual button shown in figure 9. The new results would be calculated and displayed and shown graphically as compared to the ghosted base values. An example screen shot of what the calculator according to this embodiment would display at this point is shown in figure 10.
The user might find that their projected retirement income has now decreased to 53% of their projected final salary, as shown in figure 10. While the user might like the idea of retiring 5 years earlier than 65, they may feel the need to try and aim for a higher retirement income of around 60% of their projected final salary.
The user could do a number of things, such as decide to add more money each month, take a salary sacrifice each month, decide to add a bonus next year, etc. In addition, other factors may need to be taken into account. For example, the user may wish to take a two-year career break starting in five years time, during which they would not be paying into the scheme. The user may wish to take this career break into account, and may wish to know the effects this will have on the final result.
The user could perform each change in sequence, and at each stage they would be presented with a graph of the most recent user-modified results as well as a ghosted graph of the base results. For pensions modelling there are many variables, with a great many modification possibilities available to the user. The user would have great difficulty in understanding the effects of each possible change on the results, if many changes are made in succession, and consequently the user would be unable to perceive the individual effects of each change.
The fix button functionality allows the user to re-baseline the results, producing a new base graph New graphs of user-modified results can be compared against a ghosted graph of the new base graph. This allows the user to perform one change, fix the results, and perform further changes, with the results based on the further changes being compared against the fixed baseline results.
This allows a user easily to perceive the relationships on their pension results of a plurality of different variables. Each one can be altered and the effects of each change can be measured against a user-determined baseline set of results.
If the user in the above example, who is currently modelling a graph of user modified results that corresponds to a projected retirement income of 53% of their final salary, wishes to get their projected retirement income to the level of around 60% of their final income they could do a number of things, as discussed.
However, a number of changes have already been made by the user, and if further changes are made the user might lose track of which alterations produced which effect on the results. If it is assumed that the additional contributions into the scheme represent the total contribution levels considered just affordable by the user, he or she may wish to fix the results at this point.
This will baseline the results to these contribution levels that the user regards as being just affordable. As discussed, the calculator will then replace the original base values with the user-modified values. The calculator will then display the new base graph, with no ghosted graph. An example screen shot of what the calculator according to this embodiment would display at this point is shown in figure 11.
The user can then effectively start the modelling process again, comparing results based on their user-modified values and results based on the new base values. The user can therefore experiment with different combinations of modifications until a desired level of projected income at retirement is obtained.
Once this desired level of projected income at retirement is obtained, the user may wish to fix the results again, and experiment with a new set of modifications to the values.
This process can continue until the user is happy with the end result.
It will be apparent from the above that providing a calculation system to model data of any sort with the fix button functionality would be highly beneficial at increasing the ease at which a user can understand the results of calculations, and perceive the relations between and effect on the results of altering a large number of calculation variables. Throughout the modelling session the original base data that corresponds to the values of the pension variables that was collected by the database server 12 is stored by the calculator. If the user wishes to return the calculator to the state in which it was in when downloaded, the user can reset the calculator. This is performed by means of a virtual reset button 48 located in the Java apples window, although other suitable response mechanism are viable.
Activation of the reset button 48 returns all the values of the pension variables to their original base state, corresponding to that which they were in when downloaded to the terminal 2. Therefore, after the activation of the reset button 48, the calculator will display a single graph of the projected income based on the original base values, with no ghosted graph.
The Java apples calculator embedded in a web page can be considered as a 'black box', and runs without any external interface requirements. The calculator runs in a Java sand box in the web browser and cannot access additional resources, either locally or externally. To enable the apples to direct access additional resources would require security certification for the apples.
During the modelling process all the calculations and data manipulation are performed entirely within the apples, and there are no requirements to reference external data or functional components.
The apples uses JSObject Java classes to access the web browser's Document Object Model (DOM). This provides the apples with access to JavaScript functions embedded within the web page. An example of this functionality is the optional generation of printable forms of the results, as the apples itself cannot communicate directly with an outside resource such as a printer.
If the user wishes to print-offthe results of their pension modelling, a printable form can be generated. This is performed by means of a virtual print button located in the Java apples window. Alternatively, other suitable response mechanisms could be used.
If the print button is activated, the apples uses JSObject classes to access embedded JavaScript in the web page. JavaScript methods can then be used to create a new HTML page or pages that display the results in a form suitable for printing. The user can then use this new HTML page to print-off the results to the printer 22 connected to the terminal. The printer in this embodiment is a local printer, but a network printer could be used.
The user may wish to save their latest set of user-modified values, as well a new fixed base set of values they are using, for use in a later pensions modelling session. If the user wishes to save the values, at any time during the modelling process a virtual save button located in the Java apples window is activated. Alternatively, other suitable response mechanisms could be used. The saving process will now be discussed with reference to figure 7.
On activation on the print button (S31) the Java apples uses JSObject classes to access embedded JavaScript in the web page, and the apples passes the values to be saved to the embedded JavaScript. The JavaScript component then creates an HTML form comprising the saved values. This is then posted to the web server 6 via a standard http request at S32.
At S33 this http request is transferred to the application server 8. The application server 8 then extracts the values to be saved from the http request and transfers the values to the database server 12 (S34). At S35 the database server transfers the values to the
saved values database 16, where they are stored. As discussed, the Java apples calculator is unable to interface with external resources. Hence, JSObject and JavaScript methods are used.
Alternatively, the values of the pension variables could be saved locally using locally stored cookies. Again, this could involve the apples using JSObject and JavaScript methods to circumvent the Java sandbox that the apples resides in.
The process by which the apples loads stored values will be now be discussed with reference to figure 8.
At S36 the user activates a load button, which comprises a virtual save button located in the Java apples window. Alternatively, other suitable response mechanism could be used. The apples then uses JSObject andJavaScript methods to generate an http request to restore previously saved values.
This http request is sent to the web server 6 (S37), and transferred to the application server 8 (S38). At S39 the application server 8 then requests that the database server 12 obtains the previously saved values. The database server 12 then checks the saved values database 16 and returns the saved values to the application server 8 at S40.
At S4 I the application server builds an HTML message comprising the values to be loaded into the apples. These are then passed on to the web server 6 which sends the HTML message to the terminal 2 as a http request at S42.
At S43 the web browser on the terminal 2 receives the http request, and the web browser uses JavaScript and JSObject methods to transfer the loaded values into the Java apples. At S44 the apples calculates the projected retirement income based on the loaded values, and at S45 displays graphs of the latest user-modified data and the base data. If the user activates the load button in the situation in which the user has not previously saved any values, the contents of the saved values database 16 will be empty.
Thus the HTML message sent by the web server 6 to the terminal 2 at step S42 will contain no loaded values. Hence the apples will be provided with an empty list of
values, and will not change any of its current values. Alternatively, the system could restore previously saved values using locally stored cookies.
The load and save features are optional, and could be provided to some users and not others depending on stored user preferences.
A second specific embodiment will now be discussed with reference to figures 12 to 14.
This embodiment differs from the first specific embodiment discussed above in Me display features of the java apples calculator. The structure of the calculation system, modelling procedure, and fix button functionality in the second specific embodiment are common to the first specific embodiment.
In the second specific embodiment the results are displayed according to three predetermined levels of detail. Alternative embodiments may employ a different number of pre or user-determined levels of detail in the displayed results.
In this embodiment, at the highest detail level, level 3, the calculator displays the results to the same level of detail as that discussed in the first specific embodiment. An example screenshot of what the calculator according to this embodiment displays at this detail level is given in figure 12.
The results are therefore displayed as a graph of projected retirement income against age, with a comparison bar showing final salary and accurate numerical data displayed at the same time in a separate window. Those familiar with pensions, for example finance professionals, or those with high levels of numeracy may find the representation at level 3 perfectly easy to understand, and may well appreciate all the detail offered in this display mode. At this level of detail the calculator presents the user with a set of response mechanisms that allow this user to modify a large number of the pension variables. However, not all users are equally adept at understanding graphical representations, and sometimes they can face difficulties if presented with several options. Consequently the
level of detail provided in level 3 could be too much for certain users to take in. Hence, in this embodiment the user is presented with extra virtual buttons (although other response mechanisms could be used) as compared to the first specific embodiment, which alter the displayed levels of detail.
Altering the detail from level 3 to level 2 will reduce the complexity of the displayed graphical representation. The calculator will display the results as a set of bars, respectively showing: earnings; estimated pension from the user's pension fund; and what the state is estimated to provide. At detail level 2 the calculator also presents the user with fewer and simplified response mechanisms to alter the values of the pension variables. A screen shot of what the calculator could display at this point is shown in figure 13.
As shown in figure 13, the virtual buttons to alter the other contribution variable have been removed, and a set of text entry boxes provided to alter the monthly contributions made by the user along with a simplified set of virtual buttons.
Altering the detail from level 2 to level 1 will reduce the complexity of the displayed graphical representation still further. The calculator will display the results as a set of bars, respectively showing earnings, estimated pension from the user's pension fund, and what the state is estimated to provide, as per level 2. However, the virtual buttons to alter values of the pension variables have been replaced by options boxes with common choices for contributing more each month or retiring five years earlier or later. A screen shot of what the calculator could display at this point is shown in figure 14 Detail level 1 thus represents the situation in which the user is offered only a very simple representation, with the chance to only alter a limited set of pension variables.
* Thus level 1 provides the easiest graphical representation for the user to understand, sacrificing detail and modification options. Consumers with a very low understanding of pensions may prefer this display mode.
By altering the displayed level of detail, the user can be presented with more or less information as required. This allows some users, particularly those who have difficulty
understanding the complexities underlying pension schemes to analyse the state of their pensions as best suits them.
This embodiment also allows the user to start with a simplified picture of their retirement provision, at level 1, and alter a basic set of variables and see their effects on their retirement income. The user can carry out a succession of modification and fix steps as discussed above, and once comfortable with this simplified representation, the user can decide to view their pension at level 2. More modification options will thus be opened to the user, who can thus alter more variables and continue modelling. Once comfortable with their modelling at level 2, the user may then decide to be presented with the most detailed representation at level 3. At this level, the user is presented with a more complex graph of projected retirement income as a percentage of final salary against age, with a large number of variables that can be altered.
Progressing through the levels in this manner can also have educational benefits for some users.
The data structure of the calculator of the first and second specific embodiments will now be discussed with reference to figures 15 to 20.
As discussed the calculator is written in Java, which is an object oriented program language. A discussion of the principles behind object oriented programming techniques is beyond the scope of this document, but they will be familiar to those versed in the art.
The calculator comprises a set of objects and brokers arranged in a hierarchical structure. Brokers, while technically 'objects' in true object oriented programming terminology, only manage data of derived objects and have few other functional components. Objects or brokers further down the hierarchy inherit the characteristics of the object or classes of objects that they are derived from. At the top level the calculator comprises three components: the Employee object; the Assumption broker; and the Property broker.
Figure 15 shows a schematic representation of the Employee object, with its derived classes of objects. These are the Salary object, the Contribution broker and the Fund broker. The Employee object holds all the information pertaining to the details of the employee.
The Employee object has two child broker components: the Contribution broker and the Fund Broker. The Employee object has two child functional components: Retirement age and Salary.
The Employee object also holds the attributes age, gender and marital status. These attributes are absolute values related to the user, and do not need to be involved in calculations of the objects derived from the Employee object. The Employee object also performs the operation of calculating future service.
The Employee object also contains the definition of the ValueControl object. The ValueControl object comprises a set of attributes and operations that the objects derived from the Employee Object will inherit.
Both the Salary object and the Retirement age object are derived objects and inherit the characteristics of the Employee object. The Salary object has no objects derived from it, and comprises a set of attributes. The function of the Salary object is to obtain and set the values of these salary related attributes. The Retirement age object obtains and sets the value for retirement age.
The Fund Broker has three functional components derived from it. These are OtherFund, CurrentFund, and ProjectcdFund. All these functional components are objects that extend ValueControl. All these objects inherit the properties of ValueControl by virtue of being derived from the Employee Object.
The CurrentFund object obtains the relevant data and calculates the value ofthe employee's current pension fund. The OtherFund object obtains the relevant data and calculates the value of any other pension funds the employee may possess. The
ProjectedFund object obtains the relevant data from the calculation engine which calculates the value of the employee's projected pension fund.
The Contribution broker has five child functional components: EmployerContribution; EmployeeContribution; SalarySacrificeContribution; SingleContribution; and OtherContribution (not shown).
All the child functional components extend ValueControl, and obtain and set the values of the different contribution sources. Once these have been obtained they are passed back to the Contribution broker. The Contribution broker then applies an operation to get the total contribution amount, which is resumed to the Employee Object.
Figure 16 shows a schematic representation of the Assumption broker, with its derived objects. Like the Employee object, the Assumption broker contains the definition of the ValueControl object.
The Assumption broker has a large number of child functional components. With the exception of the CareerBreak object, which has its own attributes, these child functional components extend the inherited ValueControl object. All the child functional components obtain and set values of the parameters relating to the assumptions used in the pension calculation. The Assumption broker also carries out the operation of applying the standard FSA assumptions. This allows the pensions calculator to produce results compliant with the FSA regulations Figure 17 shows a schematic representation of the Property broker, with its derived objects. The Property Broker contains the definition of the PropertyManager object. The PropertyManager object comprises an array of properties and operations allowing it to load from the web or a file. Therefore, any object derived from PropertyManager will inherit the ability to produce an array of properties and be able to load from the web or a file, without the need for any code to be repeated.
The Property broker and its child objects obtain and set the values of all the other objects on initialization of the calculator. However, once the calculator has been
initialised, and a graph displayed, any user modifications of any of the variables will cause the values in the objects that hold that variable to be altered directly. For example, if the user alters thefund growth assumption, the value residing in the FundGrowth object will be altered directly and not through the Property broker.
The properties of individual objects and the brokers can be changed, without the need for the whole code to be re-written. This allows the calculator system to be adaptable to any modelling situation.
In order to calculate the projected retirement income, the calculator uses the Employee object, the Assumption broker and the Property broker to obtain and set values for each of the pension variables, which are calculated by a suitable calculation engine. Figure 18 shows an overview of the calculation process.
At S46 the values of each of the pension variables are gathered from the Employee object, the Assumption broker and the Property broker, and at S47 the calculation engine uses suitable algorithms to calculate the projected retirement income. Steps S46 and S47 are shown in more detail in figure 19.
At S46 the values of the pension variables are inputted into the calculation engine.
These comprise actual inputs such as age, and derived inputs, which are previously calculated from the actual inputs by the one of the Employee object, the Assumption broker or the Property broker. The calculation flow is shown in step S47 of figure 19.
Once the calculation engine has calculated the results, the calculated values are passed to fund broker (where they are stored in the ProjectFund object) and the Value broker (S48). The function of the Value broker is to receive and store the calculated values (S49) for the display engine. The preferred display mode is chosen at S50, and at the S52 the results are displayed.
The operation of the Value broker and the display mode selector are schematically shown in figure 20. The Value broker receives a set of calculated values from the calculation engine. The calculator then checks the user determined display mode and
converts the calculated values into working values. In the example shown in figure 20 the user can choose to display the result in money terms (taking inflation into account) or today's terms (disregarding the effects of inflation), although other display modes are possible. If a display in money terms is chosen, the Value broker will adjust the received calculated values to take the effects of inflation into account, creating a set of working values. These working values are used by the display engine to produce the graphical and numerical representations of the results.
Figure 20 also illustrates what happens to the data if the user fixes the results. On activation of the fix button, the Value broker replaces the calculated new values with the calculated base values.
As described above, many of the above process steps make use of the Java apples and JavaScript, which is downloaded to the terminal 2 in order for local implementation of the processing step. This avoids bottlenecks in the pensions management processing system and has the significant advantage of providing a fast response at the terminal 2, because it is not necessary for data to be transferred between the terminal 2 and the servers to effect the step. However, if preferred, this feature need not be employed and such steps could be undertaken in the application processor 8, for example.
Although in the first and second specific embodiments described above Internet, and specifically web, technology is used, this is not essential to the present invention. The present invention can be applied to an application shared between machines that communicate with each other, for example, over a network. Therefore, although the first and second specific embodiment networks uses the Internet, the present invention is applicable to any network whether it be a conventional landline network or a wireless network. More specifically, the present invention is applicable to the Internet, an intranet, an extranet, a local area network, a wide area network or a network employing wireless application protocol. Furthermore, the invention is also applicable for use on a single machine, which could for example be an application-specific device, a personal computer, a laptop, a mobile phone or a PDA.
Although the first and second specific embodiments discuss the invention in tlllS of a calculator system using a calculator comprising a computer program written in Java, other calculation systems according to the invention could be written in any suitable programming language.
The present invention has been described above purely by way of example, and those skilled in the art will recognise that many modifications can be made within the scope of the invention. The invention also consists in any individual features described or implicit herein or shown or implicit in the drawings or any combination of any such features or any generalization of any such features or combination, which extends to equivalents thereof.

Claims (160)

so CLAIMS:
1. Calculation apparatus comprising: a memory adapted to store both predetermined base values and at least one user modified new value of a plurality of calculation variables; a user interface adapted to receive a user modification of the values of the calculation variables; a processor adapted to determine results of calculations based on value of any of the plurality of calculation variables; a display adapted to display the results of calculations as one or more graphical representations, wherein results of a calculation based on the or each user-modified new value is displayed at the same time as the results of a calculation based on the predetermined base values; and a fixing means adapted to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
2. Calculation apparatus according to Claim 1, wherein the memory is adapted to
store a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, the said set of usermodifiable values being adapted to be modified on receipt of a user modification via the user interface; and wherein the fixing means is adapted to replace the set of the base values of the calculation variables with the set of user-modifiable values on receipt of an indication from the user.
3. Calculation apparatus according to Claim I or 2, wherein the fixing means is provided by a soRware-implemented response mechanism.
4. Calculation apparatus according to Claim 3, wherein the softwareimplemented response mechanism comprises a virtual button.
5. Calculation apparatus according to Claim 1 or 2, wherein the fixing means is provided by a hardware key.
6. Calculation apparatus according any preceding claim, wherein the memory is adapted to store values of calculation variables that comprise information relating to finance or investment.
7. Calculation apparatus according to Claim 6, wherein the memory is further adapted to store values of calculation variables that comprise information relating to pensions.
8. Calculation apparatus according to any preceding claim, wherein the display is adapted to display the results in at least one of a plurality of predetermined display modes.
9. Calculation apparatus according to any preceding claim, wherein the display is adapted to display the results according to a plurality of predetermined detail levels, and wherein the user interface is adapted to receive a user indication that the detail level be altered.
10. Calculation apparatus according to Claim 9, wherein user interface is adapted to provide fewer user modification options of the values of the calculation variables to Me user as the display detail is lowered by the user.
11. Calculation apparatus according to any preceding claim, wherein the display is adapted to display the results as numerical data.
12. Calculation apparatus according to Claim 11 when dependent on Claim 7, wherein the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
13. Calculation apparatus according to any preceding claim, wherein the display is adapted to display the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph.
14. Calculation apparatus according to Claim 13 when dependent on Clain 7, wherein the display is adapted to display the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
15. Calculation apparatus according to Claim 13 or 14, wherein the display is adapted to display the first graph as a ghosted graph, and the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
16. Calculation apparatus according to any preceding claim, wherein the apparatus further comprises reset means, the said reset means being adapted to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
17. Calculation apparatus according to any preceding claim, wherein the apparatus is adapted to employ a web browser to provide at least part of the user interface to the user.
18 Calculation apparatus according to Claim 17, wherein the apparatus is adapted to employ a web browser comprising a Java apples to calculate the results of the calculations.
l9. Calculation apparatus according to Claim 18, wherein the apparatus is adapted to run the Java apples in a Java sand box, and the apples is unable to interface directly with external resources.
20. Calculation apparatus according to Claim 18 or 19, wherein the web browser has embedded JavaScript functions, and wherein the apparatus is adapted to use JSObject classes in the Java apples to access the embedded JavaScript functions.
21. Calculation apparatus according to Claim 20, wherein the apparatus is adapted to use JSObject classes in the Java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation
variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
22. Calculation apparatus according to any of Claims 18 to 21 when dependent on Claim 4, wherein the virtual button is provided by the java apples.
23 Calculation apparatus according to any of Claims 18 to 22, when dependent on Claim 16, wherein the reset means comprises a virtual button provided by the java apples.
24. Calculation apparatus according to any preceding Claim, wherein the apparatus is any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computer, personal computer, workstation, interactive television, or terminal.
25. Calculation apparatus substantially as hereinbefore described with reference to the accompanying drawings.
26. An operation method for calculation apparatus comprising: storing both predetermined base values and at least one user-modified new value of a plurality of calculation variables in memory; using a user interface to receive a user modification of at least one of the values of the calculation variables; using a processor to determine results of calculations based on values of the plurality of calculation variables; displaying the results of calculations as one or more graphical representations, wherein results of a calculation based on the usermodified new value or values is displayed at the same time as the result of a calculations based on the predetermined base values; and using a fixing means to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
27. A method according to Claim 26, further comprising: (i) displaying the results of calculations based on the predetermined base values; (ii) receiving a user modification of the value of at least one of the calculation variables; (iii) displaying the results of calculations based on the user-modified new value or values; (iv) fixing the results, and displaying the results of calculations based on the new base values only; and (v) receiving a further user modification of the value of at least one of the calculation variables and displaying the results of calculations based on the further user-modified new value or values.
28. A method according to Claim 27 comprising repeating (iv) and (v) at least once.
29. A method according to any of claims 26 to 28, comprising: storing a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, modifying the set of user-modifiable using the user interface; and using the fixing means to replace the set of the base values of the calculation variables with the set of usermodifiable values on receipt of an indication from the user.
30. A method according to any of Claims 26 to 28, comprising establishing the fixing means using a software-implemented response mechanism.
31. A method according to Claim 30, comprising providing the software-
implemented response mechanism as a virtual button.
32. A method according to any of Claims 26 to 29, comprising establishing the fixing means using a hardware key.
ss
33. A method according to any of Claims 26 to 32, further comprising storing values of calculation variables that comprise information relating to finance or investment.
34. A method according to Claim 33, further comprising storing values of calculation variables that comprise information relating to pensions.
35. A method according to any of Claims 26 to 34, further comprising displaying the results in at least one of a plurality of predetermined display modes.
36. A method according to any of Claims 26 to 35, further comprising displaying the results according to a plurality of predetermined detail levels, and using the user interface to receive a user indication that the detail level be altered.
37. A method according to Claim 36, further comprising using a user interface to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user.
38. A method according to any of Claims 26 to 37, further comprising displaying the results as numerical data.
39. A method according to Claim 38 when dependent on Claim 34, wherein the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
40. A method according to any of Claims 26 to 39, further comprising displaying the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph.
41. A method according to Claim 40 when dependent on Claim 34, furler comprising displaying the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
42. A method according to Claim 40 or 41, further comprising displaying the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
43. A method according to any of Claims 26 to 42, further comprising using reset means to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
44. A method according to any of Claims 26 to 43, further comprising using a web browser to provide at least part of the user interface to the user.
45. A method according to Claim 44, further comprising using a web browser comprising a java apples to calculate the results of the calculations.
46. A method according to Claim 45, further comprising running the java apples in a java sand box, such that the apples is unable to interface directly with external resources.
47. A method according to Claim 45 or 46, wherein the web browser has embedded JavaScript functions, and wherein the java apples uses JSObject classes to access the embedded JavaScript functions.
48. A method according to Claim 47, further comprising using JSObject classes in the java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
49. A method according to Claim 31 or any claim dependent on Claim 31, comprising establishing the virtual button using the java apples.
50. A method according to any of Claims 45 to 49, when dependent on Claim 43, comprising establishing the reset means using a virtual button located in the java apples.
51. A method according to any of Claims 26 to 50, wherein the apparatus is provided by any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computer, personal computer, workstation, interactive television, or a terminal.
52. A method substantially as hereinbefore described with reference to the . accompanying drawings.
53. A calculation processing system comprising: a calculation device; a data store adapted to store predetermined base values of a plurality of calculation variables; a configuration processor adapted to configure the calculation device using the predetermined base values stored in the data store; a communications interface system adapted to send information to the calculation device; a user interface system comprised within the calculation device, the said user interface system being adapted to receive a user modification of at least one of the values of the calculation variables; a display system comprised within the calculation device, the said display system being adapted to display the results of calculations as one or more graphical representations, wherein result of a calculation based on the user-modified new value or values is displayed at the same time as the result of a calculation based on the predetermined base values; and a fixing means comprised within the calculation device, the said fixing means being adapted to receive an indication from a user that at least one of the base values of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
54. A calculation system according to Claim 53, wherein the data store is adapted to store a set of predetermined base values and a set of usermodifiable values of a plurality of calculation variables, the said set of user-modifiable values being adapted to be modified on receipt of a user modification via the user interface system; and wherein
the fixing means is adapted to replace the set of the base values of the calculation variables with the set of user-modifiable values on receipt of an indication from the user.
55. A calculation system according to Claim 53 or 54, wherein the fixing means is provided by a software- implemented response mechanism on the calculation device.
56. A calculation system according to Claim 55, wherein the softwareimplemented response mechanism comprises a virtual button on the calculation device.
57. A calculation system according to Claim 43 or 54, wherein the fixing means is provided by a hardware key on the calculation device.
58. A calculation system according to any of Claims 53 to 57, wherein the data store is further adapted to store values of calculation variables that comprise information relating to finance or investment.
59. A calculation system according to Claim 58, wherein the data store is further adapted to store values of calculation variables that comprise information relating to pensions.
60. A calculation system according to any of Claims 53 to 59, wherein the display system is adapted to display the results in at least one of a plurality of predetermined display modes.
61. A calculation system according to any preceding claim, wherein the display system is adapted to display the results according to a plurality of predetermined detail levels, and wherein the user interface system is adapted to receive a user indication that the detail level be altered.
62. A calculation system according to Claim 51, wherein user interface system is adapted to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user.
63. A calculation system according to any of Claims 53 to 62, wherein the display system is adapted to display the results as numerical data.
64. A calculation system according to Claim 63 when dependent on Claim 59, wherein the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
65. A calculation system according to any of Claims 53 to 64, wherein the display system is adapted to display the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph.
66. A calculation system according to Claim 65 when dependent on Claim 59, wherein the display system is adapted to display the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
67. A calculation system according to Claim 65 or 66, wherein the display system is adapted to display the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
68. A calculation system according to any of Claims 53 to 67, wherein the calculations system further comprises reset means comprised within the calculation device, the said reset means being adapted to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
69. A calculation system according to any of Claims 53 to 68, wherein the system is adapted to employ a web browser on the calculation device to provide at least part of the user interface to the user.
70 A calculation system according to Claim 69, wherein the system is adapted to employ a web browser on the calculation device comprising a java apples to calculate the results of the calculations.
71. A calculation system according to Claim 70, wherein the system is adapted to run the java apples in a java sand box on the calculation device, the said java apples being unable to interface directly with external resources.
72. A calculation system according to Claim 70 or 71, wherein the web browser has embedded JavaScript functions, and wherein the calculation device is adapted to use JSObject classes in the java apples to access the embedded JavaScript functions.
73. A calculation system according to Claim 72, wherein the calculation device is adapted to use JSObject classes in the java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables, restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
74. A calculation system according to any of Claim, 70 to 73, when dependent on Claim 52, wherein the virtual button is provided by the java apples.
75. A calculation system according to any of Claims 70 to 74, when dependent on Claim 62, wherein the reset means comprises a virtual button located in the java apples.
76. A terminal for use in a calculations system, the said terminal comprising: a communications interface adapted to receive information from a remote calculations processing system, the said information being configured to relate to a set of predetermined base values of a plurality of calculation variables; a user interface system adapted to receive a user modification of the value of at least one of the calculation variables; a display adapted to display the results of calculations as one or more graphical representations, wherein results of a calculation based on the user-modified new value
or values is displayed at the same time as the results of calculations based on the predetermined base values; and a fixing means adapted to receive an indication from a user that the base value of any one of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
77. A terminal according to Claim 76, wherein the terminal is adapted to store a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, the said set of usermodifiable values being adapted to be modified on receipt of a user modification via the user interface; and wherein the fixing means is adapted to replace the set of the base values of the calculation variables with the set of user-modifiable values on receipt of an indication Mom the user.
78. A terminal according to Claim 76 or 77, wherein the fixing means is provided by a soRware-implemented response mechanism.
79. A terminal according to Claim 78, wherein the software-implemented response mechanism comprises a virtual button.
80. A terminal according to Claim 76 or 77, wherein the fixing means is provided by a hardware key.
81. A terminal according to any of Claims 76 to 80, wherein the information is configured to relate to values of calculation variables that relate to finance or investment.
82. A terminal according to Claim 81, wherein the information is configured to relate to values of calculation variables that relate to pensions.
83. A terminal according to any of Claims 76 to 82, wherein the display is adapted to display the results in at least one of a plurality of predetermined display modes.
84. A terminal according to any of Claims 76 to 83, wherein the display is adapted to display the results according to a plurality of predetermined detail levels, and wherein the user interface is adapted to receive a user indication that the detail level be altered.
85. A terminal according to Claim 84, wherein user interface is adapted to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user.
86. A terminal according to any of Claims 76 to 85, wherein the display is adapted to display the results as numerical data
87. A tenninal according to Claim 86 when dependent on Claim 82, wherein the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
88. A terminal according to any of Claims 76 to 87, wherein the display is adapted to display the graphical representation of the results based on the base values as a first graph, and the results based on the usermodified new values as a second graph.
89. A terminal apparatus according to Claim 88 when dependent on Claim 82, wherein the display is adapted to display the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
90. A terminal according to Claim 88 or 89, wherein the display is adapted to display the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
91. A terminal according to any of Claims 76 to 90, wherein the terminal further comprises reset means, the said reset means being adapted to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
92. A terminal according to any of Claims 76 to 91, wherein the terminal is adapted to employ a web browser to provide at least part of the user interface to the user.
93. A terminal according to Claim 92, wherein the terminal is adapted to employ a web browser comprising a java apples to calculate the results of the calculations.
94. A terminal according to Claim 93, wherein the terminal is adapted to run the java apples in a java sand box, and the apples is unable to interface directly with external resources.
95. A terminal according to Claim 93 or 94, wherein the web browser has embedded JavaScript functions, and wherein the apparatus is adapted to use JSObject classes in the java apples to access the embedded JavaScript functions.
96. A terminal according to Claim 95, wherein the terminal is adapted to use JSObject classes in the java apples to access the embedded JavaScript fimctions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
97. A terminal according to Claim 79 or any claim dependent on Claim 79, wherein the fixing means comprises a virtual button located in the java apples.
98. A terminal according to any of Claims 93 to 97, when dependent on Claim 91, wherein the reset means comprises a virtual button located in the java apples.
99. A terminal according to any of Claims 79 to 98, wherein the terminal is any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computer, personal computer, workstation, interactive television, or terminal.
100. A server for use in a calculation processing system comprising:
a data store adapted to store predetermined base values of a plurality of calculation variables; a configuration processor adapted to configure a calculation device using the predetermined base values stored in the data store; and a communications interface system adapted to send information to the calculation device.
101. A server according to Claim 100, wherein the data store is furler adapted to store values of calculation variables that relate to finance or investment.
102. A server according to Claim 101, wherein the data store is further adapted to store values of calculation variables that relate to pensions.
103. A server according to any of Claims 100 to 102, wherein the communications interface is adapted to send a Java apples to the calculation device.
104. An operation method for calculation system comprising: storing both predetermined base values and at least one user-modified new value of a plurality of calculation variables in data store; using a configuration processor to configure a calculation device using the predetermined base values stored in the data store; using a communications interface system to send information to the calculation device; using a user interface system comprised within the calculation device to receive a user modification of at least one of the values of the calculation variables; displaying the results of calculations as one or more graphical representations on the calculations device, wherein results of a calculation based on the user-modified new value or values is displayed at the same time as the result of a calculations based on the predetermined base values; and using a fixing means comprised within the calculations device to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
105. A method according to Claim 104, further comprising: (vi) displaying the results of calculations based on Me predetermined base values; (vii) receiving a user modification of the value of at least one of the calculation variables; (viii) displaying the results of calculations based on the user-modified new value or values; (ix) fixing the results, and displaying the results of calculations based on the new base values only, and (x) receiving a furler user modification of the value of at least one of the calculation variables and displaying We results of calculations based on the further user-modified new value or values.
106. A method according to Claim 105 comprising repeating (iv) and (v) at least once.
107. A method according to any of claim 104 to 106, comprising: storing a set of predetermined base values and a set of usermodifiable values of a plurality of calculation variables, modifying the set of user-modifiable values using the user interface; and replacing the set of the base values of the calculation variables with the set of usermodifiable values on receipt of an indication from the user.
108. A method according to any of Claims 104 to 107, comprising establishing the fixing means using a sovare-implemented response mechanism provided by the calculations device.
109. A method according to Claim 108, comprising providing the software- implemented response mechanism as a virtual button.
110. A method according to any of Claims 104 to 109, comprising establishing the fixing means using a hardware key provided by the calculations device.
111. A method according to any of Claims 104 to 110, further comprising storing values of calculation variables that comprise information relating to finance or investment.
112. A method according to Claim 111, further comprising storing values of calculation variables that comprise information relating to pensions.
113. A method according to any of Claims 104 to 112, further comprising displaying the results in at least one of a plurality of predetermined display modes.
114. A method according to of Claims 104 to 113, further comprising displaying the results according to a plurality of predetermined detail levels, and using the user interface system to receive a user indication that the detail level be altered.
115. A method according to Claim 114, furler comprising using the user interface system to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user
116. A method according to any of Claims 104 to 1 15, further comprising displaying the results as numerical data.
117. A method according to Claim 116 when dependent on Claim 112, wherein the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
118. A method according to any of Claims 104 to 117, further comprising displaying the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph.
119. A method according to Claim 118 when dependent on Claim 112, further comprising displaying the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
120 A method according to Claim 118 or 119, further comprising displaying the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
121. A method according to any of Claims 104 to 120, further comprising using reset means comprised within the calculations device to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
122. A method according to any of Claims 104 to 121, further comprising using a web browser on the calculations device to provide at least part of the user interface system to the user.
123. A method according to Claim 122, further comprising using a web browser comprising a java apples to calculate the results of the calculations.
124. A method according to Claim 123, further comprising running the java apples in a java sand box on the calculations device, such that the java apples is unable to interface directly with external resources.
125. A method according to Claim 123 or 124, wherein the web browser has embedded JavaScript functions, and wherein the java apples uses JSObject classes to access the embedded JavaScript functions.
126. A method according to Claim 125, further comprising using JSObject classes in the java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables; restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
127. A method according to any of Claims 123 to 126, when dependent on Claim 109, comprising establishing virtual button using the java apples.
128. A method according to any of Claims 123 to 127, when dependent on Claim 121, comprising establishing the reset means using a virtual button located in the Java apples.
129. An operation method for a terminal for use in a calculations system comprising: using a communications interface to receive information from a remote calculations processing system, the said information being configured to relate to a set of predetermined base values of a plurality of calculation variables; using a use interface to receive a user modification of at least one of the values of the calculation variables; displaying the results of calculations as one or more graphical representations, wherein results of a calculation based on the user-modified new value or values is displayed at the same time as the result of a calculations based on the predetermined base values; and using a fixing means to receive an indication from a user that the base value of any one or more of the calculation variables be set as being equal to a corresponding one or more of the user-modified new values.
130. A method according to Claim 129, fiercer comprising: (xi) displaying the results of calculations based on the predetermined base values; (xii) receiving a user modification of the value of at least one of the calculation variables; (xiii) displaying the results of calculations based on the user-modified new value or values; (xiv) fixing the results, and displaying the results of calculations based on the new base values only; and (xv) receiving a further user modification of the value of at least one of the calculation variables and displaying the results of calculations based on the further user-modified new value or values.
131. A method according to Claim 130 comprising repeating (iv) and (v) at least once.
f
132. A method according to any of claim 129 to 131, comprising: storing a set of predetermined base values and a set of user-modifiable values of a plurality of calculation variables, modifying the set of usermodifiable using the user interface; and using the fixing means to replace the set of the base values of the calculation variables with the set of user-modifiable values on receipt of an indication from the user.
133. A method according to any of Claimsl29 to 132, comprising establishing the fixing means using a software-implemented response mechanism.
134. A method according to Claim 133, comprising providing the software-
implemented response mechanism as a virtual button.
135. A method according to any of Claims 129 to 134, comprising establishing the fixing means using a hardware key.
136 A method according to any of Claims 129 to 135, furler comprising storing values of calculation variables that comprise information relating to finance or investment.
137. A method according to Claim 136, further comprising storing values of calculation variables that comprise information relating to pensions.
138. A method according to any of Claims 129 to 137, further comprising displaying the results in at least one of a plurality of predetermined display modes.
139. A method according to of Claims 129 to 137, farther comprising displaying the results according to a plurality of predetermined detail levels, and using the user interface to receive a user indication that the detail level be altered.
140. A method according to Claim 139, further comprising using the user interface to provide fewer user modification options of the values of the calculation variables to the user as the display detail is lowered by the user
141. A method according to any of Claims 129 to 140, further comprising displaying the results as numerical data.
142. A method according to Claim 141 when dependent on Claim 137, wherein the said numerical data comprises at least an indication of retirement income as a percentage of final salary.
143. A method according to any of Claims 129 to 142, further comprising displaying the graphical representation of the results based on the base values as a first graph, and the results based on the user-modified new values as a second graph.
144. A method according to Claim 143 when dependent on Claim 137, furler comprising displaying the first graph and the second graph in the form of graphs of percentage of final salary against age after retirement.
145. A method according to Claim 143 or 144, further comprising displaying the first graph as a ghosted graph, wherein the said ghosted graph is represented in a different colour and/or is at least partially transparent with respect to the second graph.
146. A method according to any of Claims 129 to 145, further comprising using reset means to restore the apparatus to a state it occupied before any user modification of the values of the calculation variables.
147. A method according to any of Claims 129 to 146, further comprising using a web browser to provide at least part of the user interface to the user.
148. A method according to Claim 147, further comprising using a web browser comprising a java apples to calculate the results of the calculations.
149. A method according to Claim 148, further comprising running the Java apples in a Java sand box, such that the apples is unable to interface directly with external resources.
150. A method according to Claim 148 or 149, wherein the web browser has embedded JavaScript functions, and wherein the Java apples uses JSObject classes to access the embedded JavaScript functions.
151. A method according to Claim 150, further comprising using JSObject classes in the Java apples to access the embedded JavaScript functions for any of: saving the received user modifications of the values of the calculation variables, restoring previously saved user modifications of the values of the calculation variables; and generation of a printable form of at least part of the results.
152. A method according to any of Claims 148 to 151 when dependent on Claim 124, comprising establishing the virtual button using the Java apples.
153. A method according to any of Claims 148 to 152, when dependent on Claim 146, comprising establishing the reset means using a virtual button located in the Java apples.
154. A method according to any of Claims 129 to 153, wherein the terminal is provided by any one of, or a combination of: a mobile telephone, a PDA, a pager, a palmtop computer, a notebook computer, a laptop computer, personal computer, interactive television, or a workstation.
155. An operation method for a server for use in a calculation processing system comprising: storing predetermined base values of a plurality of calculation variables in a data store; using a configuration processor to configure a calculation device using the predetermined base values stored in the data store; and using a communications interface system adapted to send information to the calculation device.
156. A method according to Claim 155, comprising storing values of calculation variables that relate to finance or investment.
157. A method according to Claim 156, comprising storing values of calculation variables that relate to pensions.
158. A method according to any of Claims 155 to 157, comprising sending a Java apples to the calculation device.
159. Computer program code for controlling a computer to carry out a method according to any of Claims 22 to S1 or any of Claims 104 to 158.
160. A carrier medium carrying computer program code according to Claim 159.
GB0214917A 2002-06-27 2002-06-27 Calculation apparatus and method for financial purposes Pending GB2390183A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
GB0214917A GB2390183A (en) 2002-06-27 2002-06-27 Calculation apparatus and method for financial purposes
AU2003240140A AU2003240140A1 (en) 2002-06-27 2003-06-26 Calculation apparatus and method
PCT/GB2003/002736 WO2004003800A2 (en) 2002-06-27 2003-06-26 Calculation apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0214917A GB2390183A (en) 2002-06-27 2002-06-27 Calculation apparatus and method for financial purposes

Publications (2)

Publication Number Publication Date
GB0214917D0 GB0214917D0 (en) 2002-08-07
GB2390183A true GB2390183A (en) 2003-12-31

Family

ID=9939431

Family Applications (1)

Application Number Title Priority Date Filing Date
GB0214917A Pending GB2390183A (en) 2002-06-27 2002-06-27 Calculation apparatus and method for financial purposes

Country Status (3)

Country Link
AU (1) AU2003240140A1 (en)
GB (1) GB2390183A (en)
WO (1) WO2004003800A2 (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6449588A (en) * 1987-08-21 1989-02-27 Universal Kk Pinball game machine
US5991744A (en) * 1997-10-31 1999-11-23 Gary P. Dicresce & Associates Method and apparatus that processes financial data relating to wealth accumulation plans
US6055517A (en) * 1995-10-30 2000-04-25 Efi Actuaries Method of determining optimal asset allocation utilizing asset cash flow simulation
JP2001014390A (en) * 1999-06-25 2001-01-19 Hiroshi Yamaguchi Insurance and pension calculating processor and storage medium stored with insurance and pension calculation processing program
US6235176B1 (en) * 1997-09-23 2001-05-22 Mb Schoen & Associates Computer apparatus and method for defined contribution and profit sharing pension and disability plan
EP1105815A1 (en) * 1998-08-26 2001-06-13 American Express Financial Corporation Computer-implemented program for financial planning and advice system
US20020038271A1 (en) * 1995-10-30 2002-03-28 Friend Edward H. Method of determining optimal asset allocation utilizing asset cash flow simulation

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6449588A (en) * 1987-08-21 1989-02-27 Universal Kk Pinball game machine
US6055517A (en) * 1995-10-30 2000-04-25 Efi Actuaries Method of determining optimal asset allocation utilizing asset cash flow simulation
US6219650B1 (en) * 1995-10-30 2001-04-17 Efi Actuaries Method of determining optimal asset allocation utilizing asset cash flow simulation
US20020038271A1 (en) * 1995-10-30 2002-03-28 Friend Edward H. Method of determining optimal asset allocation utilizing asset cash flow simulation
US6235176B1 (en) * 1997-09-23 2001-05-22 Mb Schoen & Associates Computer apparatus and method for defined contribution and profit sharing pension and disability plan
US5991744A (en) * 1997-10-31 1999-11-23 Gary P. Dicresce & Associates Method and apparatus that processes financial data relating to wealth accumulation plans
EP1105815A1 (en) * 1998-08-26 2001-06-13 American Express Financial Corporation Computer-implemented program for financial planning and advice system
JP2001014390A (en) * 1999-06-25 2001-01-19 Hiroshi Yamaguchi Insurance and pension calculating processor and storage medium stored with insurance and pension calculation processing program

Also Published As

Publication number Publication date
AU2003240140A1 (en) 2004-01-19
GB0214917D0 (en) 2002-08-07
WO2004003800A2 (en) 2004-01-08

Similar Documents

Publication Publication Date Title
US7401040B2 (en) Financial modeling and counseling system
US7451148B2 (en) Method of modifying a business rule while tracking the modifications
US8452678B2 (en) System and method for administering an advanced insurance component-based product
US7006994B1 (en) Automated receivables management system
US7430515B1 (en) System and method for externalization of formulas for assessing damages
US20140200930A1 (en) Methods and Systems for Determining the Importance of Individual Variables in Statistical Models
US20020095363A1 (en) Financial planning and counseling system projecting user cash flow
US20040088199A1 (en) Method of forming a business rule
US20080195644A1 (en) Method, system and program product for developing a data model in a data mining system
US20040054610A1 (en) Monetaire wealth management platform
US20080010086A1 (en) Health financial needs calculator
WO2002061527A2 (en) Online insurance sales platform
EP1435033A2 (en) Automated coaching for a financial modeling and counseling system
CA2329002A1 (en) Methods and apparatus for gauging group choices
US20040088195A1 (en) Method of modifying a business rule
US20100094766A1 (en) Insurance configuration management system and method
US20040085357A1 (en) Method of generating a graphical display of a business rule and associated business rule elements
CN110287250A (en) User gradation quantization method and device
US20230230126A1 (en) Methods and systems for training and using predictive risk models in software applications
US20050171885A1 (en) Object oriented demographically predictive insurance agency asset evaluation system and method
Saini Fuzzy and mathematical effort estimation models for web applications
EP4275343A1 (en) Generation and evaluation of secure synthetic data
El Sherif Managing institutionalization of strategic decision support for the Egyptian cabinet
GB2390183A (en) Calculation apparatus and method for financial purposes
Johnson et al. Who contributes to disaster preparedness? Predicting decision making in social dilemmas pertaining to community resilience