The patent's assignee for patent number 8627232 is
News editors obtained the following quote from the background information supplied by the inventors: "Many software applications require, as input, one or more ranges of numbers. Merely by way of example, in a business application (such as an electronic commerce application, a financial application, enterprise resource planning ('ERP') application, customer relationship management ('CRM') application, supply chain management application, and/or the like), a set of business rules might be used to perform actions on business records according to the characteristics of the records. Different rules, then, might apply to different records, depending on the values of various data elements in those records. In particular, one business rule might apply to a set of records having a data element with a value that falls within a first range, while a different business rule might apply to records having data element with a value that falls within a second range.
"Hence, in business software (as well as other software), the application of various rules or operations to data often requires the user to define a variable whose values consist of a set of ranges (upon which the rule or operation is dependent). For example, if a wine merchant developed a set of rules to automatically apply discounts to online purchases, one of the many variables that might be in that ruleset could depend on the quantity of the purchase, or number of bottles ordered. The values for QUANTITY, then, and the corresponding discounts, might include the following: a QUANTITY greater than 0 and less than 8 has no discount, a QUANTITY greater than or equal to 8 and less than 12 has a 2% discount, a QUANTITY equal to 12 has a 5% discount, a QUANTITY greater than 12 and less than 24 has an 8% discount and a QUANTITY greater than or equal to 24 has a 10% discount.
"An important feature of the set of ranges in the example above is that it is continuous: It accounts for all nonzero values. Range continuity for a given variable is critical in the area of business rules because it enables the ruleset to respond to any occurrence of that variable. Without continuity, if the ruleset encounters values that are not defined in the variable's set of ranges, then an error will occur, thus breaking the ruleset. Consider, for example, a case in which, instead of the rules above, the wine merchant's e-commerce application had the following rules: a QUANTITY greater than 0 and less than 8 has no discount, a QUANTITY greater than 10 and less than 12 has a 2% discount, a QUANTITY equal to 12 has a 5% discount, a QUANTITY greater than 12 and less than 24 has an 8% discount, and a QUANTITY greater than or equal to 24 has a 10% discount. This set of ranges leaves a gap between 8 and 10, breaking the continuity of the ruleset; as a result, if a customer orders, say, 9 bottles of wine, the system will not know how to respond.
"Translating the ranges for a variable into something that can be read by computers generally requires a user to enter the relevant values into the computer using mathematical comparison symbols (or other comparison operators). The following are examples of methods that individuals might use to rewrite the ranges defining QUANTITY for the first example above: 0
"Unfortunately, using such text-based methods to translate natural-language rules into a machine-readable format raises a host of problems. Merely by way of example, the system in question must either constrain users to one particular textual format for entering ranges or be able to handle many different formats. The former option places strain on the users if they have to adapt to an unfamiliar method, as well as on the user interface if it has to instruct users on what method to use; the latter option places strain on the developers and the system.
"Moreover, such text-based lists are difficult to scan quickly, making it difficult to detect errors such as gaps. For this reason and others, text-based methods of defining a set of ranges are prone to errors. Among other problems, users may make typographical errors, in which they accidentally enter a number or comparison symbol incorrectly; errors of comprehension or reading, in which they either misunderstand or misread the comparison symbols (e.g., confusing the < symbol for the > symbol); and/or errors of omission, in which individuals forget to include one or more values in the set of ranges, leading to a broken set, such as when, for example, a user forgets to include an include an endpoint value in defining adjacent ranges.
"For these reasons, among others, there is a need for a more intuitive facility to allow a user to define ranges of values (and/or to view such definitions) within the context of a software application."
As a supplement to the background information on this patent, VerticalNews correspondents also obtained the inventors' summary information for this patent: "Embodiments of the invention, therefore, provide tools to allow more intuitive display and/or definition of ranges in software applications. In a set of embodiments, for example, a software application might include a user interface that has a graphical element (such as a line, a bar, and/or the like) that represents a spectrum of values. The application might further include one or more markers that serve to define boundaries of one or more ranges within the spectrum. By allowing a user to move the markers (through manipulation of the markers using a mouse, typing values for the markers, and/or the like), the interface can allow the user to quickly and easily define different ranges of values and/or to view defined ranges. In an aspect of some embodiments, a marker (and/or an accompanying indicator) may be configured to indicate to the user whether the value represented by the marker falls within or outside the range bounded by the marker.
"Various sets of embodiments provide user interfaces, methods, systems, and software products. Certain methods of the invention might implement user interfaces of the invention, might be implemented as software programs and/or might be implemented as instructions to be performed by a computer system. Similarly, systems of the invention can include computers configured with software (e.g., sets of instructions) executable to perform methods of the invention and/or to implement user interfaces of the invention.
"An exemplary set of embodiments, for example, provides a computer software application comprising a user interface for allowing a user to define one or more ranges of values (which might be continuous ranges). The user interface, in some embodiments, comprises a graphical element (e.g., a slider, a number line, and/or the like) representing a spectrum of values and/or a plurality of markers. Merely by way of example, the interface might include a first marker representing a beginning of a first range of values within the spectrum of values and/or a second marker representing an end of the first range of values. Hence, the first marker and the second marker might define the first range of values.
"In some embodiments, the user interface is configured to allow a user to provide a set of inputs to define a range of values. The inputs might comprise a first input to set a position of the first marker, thereby setting a first value representing the beginning of the First range of values, and/or a second input to set a position of the second marker, thereby setting a second value representing the end of the first range of values. Any of a variety of inputs might be supported, including without limitation, inputs from a pointing device, inputs from a keyboard device, and/or the like. In some cases, the user interface might allow a user to manipulate a marker with a mouse cursor (using, for example, a click-and-drag operation to set a position of a marker). In other cases, the user interface might provide a text input field, which can be used, for example, to type in a text entry for a value for a marker.
"In specific embodiments, the set of inputs might include further inputs to allow a user to specify a behavior of a marker (e.g., to specify whether the marker is part of an adjacent range of values) and/or to add a marker, delete a marker, and/or the like.
"Based on the positions of the first and/or second markers, the interface might be configured to provide, as input to the software application, the first range of values, as defined by the position of the first marker and the position of the second marker.
"An exemplary method of graphically presenting information to a user, in accordance with another set of embodiments, might comprise displaying on a display device a graphical element representing a spectrum of values, displaying on the display device a first marker representing a beginning of a range of values within the spectrum of values, and/or displaying on the display device a second marker representing an end of the range of values. Such that the first marker and the second marker define the range of values. The method, in some embodiments, includes receiving, (e.g., from a user), a first input and setting a position of the first marker, based on the first input (thereby setting a first value representing the beginning of the range of values), and/or receiving a second input and setting a position of the second marker, based on the second input (thereby setting a second value representing the end of the range of values). Optionally, the method might include providing, as input to a software application, the range of values, as defined by the positions of the first and second markers. In some cases, the displayed position of a marker might be adjusted in response to receiving an input that sets a position of the marker.
"In certain embodiments, the method might further comprise providing one or more interface elements (such as combo boxes, check boxes, text fields, etc., to name but a few examples) for the user to define one or more business rules that apply to one or more ranges of values. Alternatively and/or additionally, additional markers might be displayed. These additional markers might represent the beginning and/or end of additional ranges of values, and additional interface elements can be provided to define business rules that apply to these additional ranges.
"In some cases, the method might comprise receiving additional input (e.g., displaying a menu for the user and/or receiving a selection from the menu) to indicate whether the value represented by a marker should be considered part of a range defined by the marker. Merely by way of example, if a particular marker represents the end of a first range of values and the beginning of a second range of values, the additional input might indicate that the marker should be considered part of the first range, part of the second range, or neither. In such cases, the method might further comprise modifying a display of the marker, based on this additional input.
"Another set of embodiments provides systems. An exemplary system, as noted above, might comprise a processor, a display device, and a computer readable medium comprising a set of instructions executable by the processor. The set of instructions might comprise instructions to perform methods of the invention. Similarly, a computer program embodied on a computer readable medium, might comprise a set of instructions executable by one or more computer to perform methods of the invention.
"Another exemplary computer system might comprise a database having a plurality of records, each of which might comprise a data element that corresponds to a field in the database, and/or a software application. The software application might comprise a set of instructions executable by the computer system.
"The set of instructions might comprise, inter alia, instructions to display a user interface. The user interface, in a set of embodiments, comprises a graphical element representing a spectrum of values for a first field in the database and a first marker representing a beginning of a first range of values within the spectrum. The user interface might comprise a second marker representing an end of the first range of values and a beginning of a second range of values within the spectrum, and/or a third marker representing an end of the second range of values.
"In some embodiments, the set of instructions further comprises instructions to receive from the user a set of inputs and/or instructions to set, perhaps based on the set of inputs, a position of the first marker, a position of the second marker, and a position of the third marker. The positions of the first and second markers might define a first set of boundaries of the first range of values, and/or the positions of the second and third markers might define a second set of boundaries of the second range of values.
"There might be further instructions to sort the plurality of records into a plurality of sets of records. Merely by way of example, the plurality of sets of records might comprise a first set of records and a second set of records. The first set of records might comprise one or more records each comprising a data element having a value falling within the first set of boundaries, and the second set of records might comprise one or more records each comprising a data element having a value falling within the second set of boundaries. There set of instructions, then, might include instructions to apply a first business rule to each record in the first set of records and/or instructions to apply a second business rule to each record in the second set of records.
"Hence, embodiments of the invention overcome a variety of shortcomings of previous solutions, including without limitation those described above, as well as others that will become apparent to one of skill in the art upon review of this disclosure."
For additional information on this patent, see: Stiso, Michael; Ashby, Alan B.. Graphical Tool for Defining a Set of Ranges. U.S. Patent Number 8627232, filed
Keywords for this news article include: Software,
Our reports deliver fact-based news of research and discoveries from around the world. Copyright 2014, NewsRx LLC
Most Popular Stories
- Apple, HP, Intel May Take a Hit from Slowdown in Smartphone Sales Growth
- FDIC Files Lawsuit on Behalf of Banks Allegedly Hurt by Libor Scandal
- Some California Cities Seeking Water Independence
- Motley Crue's Nikki Sixx Marries Model Courtney Bingham
- Jack Daniel's Resists Changes to Tenn. Whiskey Law
- Chinese e-Commerce Giant Alibaba Gears for IPO in U.S.
- Crimea Seeks Financial Integration With Russia
- E.U. Puts Sanctions on Russia, Ukraine Officials
- Will Missing Malaysian Jet Prompt Aviation System Change?
- Chile Shaken by Major Aftershock