# Standards for storing a rating as a range (1-5, 1 is best, etc.)

I am designing a `ROAD_INSPECTION` table that has a `CONDITION` field:

``````+---------+-----------+
+---------+-----------+
|       1 |         2 |
|       2 |         5 |
|       3 |         1 |
|       4 |         1 |
|       5 |         4 |
+---------+-----------+
``````

Are there any standards or conventions that suggest how to format ratings as ranges?

Example, what's the best format for the `CONDITION` rating?

• 0 to 5, zero is best
• 0 to 5, five is best
• 1 to 5, one is best
• 1 to 5, five is best

There are four things to think about here:

• the meaning of the scale,
• direction of the scale,
• end points of the scale,
• resolution of the scale.

Now, it is really exciting how one affects the other:

The meaning of the scale

There is one common challenge when applying a quantitative measure to a qualitative characteristic of a thing: it is impossible to be exact so it is always a matter of some convention.

The direction of the scale

Some characteristics are positive, and some are negative but even telling the opposite things, they tend to use a positive scale.

My favourite (yet, easily quantifiable) combo is "opacity" and "transparency":

• transparency: 0% - 100%
• opacity: 0% - 100%

You can say easily tell "less transparent" (lower value) from "more transparent" (higher value) and "less opaque" (lower value) from "more opaque" (higher value). But should you put both of these side by side, in an attempt to translate one values to another, you would need to reverse one of these, for example:

``````Transparency     Opacity
100%   =       0%
80%   =      20%
60%   =      40%
40%   =      60%
20%   =      80%
0%   =     100%
``````

For qualitative characteristics, this can be, again, a matter of a convention used. Should the characteristic be "quality", as an example, I can see two possible conventions:

• "1" means the highest quality (this is the "first quality", so something superior)
• "max" that you have on the scale means the highest quality.

The end points on the scale

This brings us to the next topic, which are the end points.

Within a scale, at the lowest level, there is either a zero or the lowest positive value. It is sometimes hard to say, for qualitative characteristics, what a zero could be. Using "quality" as an example again, what would it mean in both cases:

• if "1st" is the best quality, 0 does not make sense at all,
• if "max" is the best quality, a question arises if it is possible for a "no quality" state to exist.

Again, it is a matter of a convention; we could assign 0 to something like "of a quality that would remove the value from it completely" (e.g. no one would want to buy it, like a rotten apple).

Another example is asking "How satisfied you are?" In this case, it is hard to use anything else but zero for an answer "Not at all satisfied." - because the satisfaction does not exist.

So, the clue when setting the scale is answering the question if it is possible to imagine a situation when the characteristic would not exist at all. Should it be possible, use 0. Otherwise, use the least positive value (e.g. 1) on the scale.

The resolution of the scale

This depends on three factors:

• what is perceivable by the User,
• how elaborate the model behind setting the score is,
• is the scale closed at the top.

Regarding the perception, it refers mostly to situations when the range would go from "not at all" to "extremely". In these cases, I would recommend a scale of 5 levels.

• 0 Not at all
• 1 ...
• 2 Medium
• 3 ...
• 4 Extremely

(Or 1 to 5, if there is no "zero point" for this characteristic).

This scale is enough for someone to say that something is perceptually good, bad, medium, and somewhere between these levels. You can increase it to more points, but it will become harder and harder for the User to e.g. decide if his/her satisfaction is at the level of 61 62 or 63 in a 100 points scale for example. And there should always be a middle point so that "medium" can be easily reflected.

However, if there is an elaborate mechanism behind setting the score, this may be not enough. This may be used if it is crucial for the User to compare the scores between multiple items.

A good example of these two approaches playing together is a seller rating mechanism, where as a buyer you can assign 0 to 5 stars for example, but the resultant score of all the ratings are shown in factors of the stars, so you can see that one has 4 and about 1/3 of star, whereas the other one has 4 and a half - which may help you to choose the one you prefer.

Another imaginable situation is when there scale is not closed at the top, e.g. there is a possible value (probably to appear in the future) that would be higher than the current max.

Wrap-up:

• I would treat "Condition" as a positive characteristic, so better condition would be a higher value,
• I feel that "0" does not fit this characteristic, so I would start from 1.
• regarding the resolution of the scale, you need to decide yourself, but it is quite probable that 1 to 5 will be ok.
• Wow. I'm still impressed by this answer. Commented Apr 1, 2017 at 4:59
• An excellent answer that I will keep in mind myself, would upvote twice if I could Commented Apr 1, 2017 at 10:51
• +1 very impressive answer that covers many of the important aspects of design. It may be that a scale is not the most suitable way to represent the condition of the road, but if it is then the answer is comprehensive in helping to shape the design decisions. Commented Apr 2, 2017 at 21:48
• You are right, it may mean various things (and even be non-linear): how it looks, how it serves its purpose. It may also refer to e.g. the ground layers below the road (basis? I cannot find exact word in English at the moment.), years since the last inspection, expected quality based on some factor based on some regulations, materials and technology used during construction, some rating assigned to the firm who did it... And probably there would be many, many more interesting dimensions for that, depending on the expertise in the topic. How awesome is that! Commented Apr 2, 2017 at 22:11

"Condition" makes me think that it's the physical condition of an item?

This reminds me of the comic book grading scale:

The full scale is used for expensive comics, where 10.0 is the best physical condition and 0.5 is the worst physical condition.

• +1 I like examples that reference other subject areas, always makes for an interesting comparison and understanding of different contexts in the answers. Commented Apr 2, 2017 at 21:49

As already said in other answers, quality should be a positive characteristic so the higher the quality the higher the number.

The number of steps (granularity) depends on multiple factors. How accurate are your data? How do you get the data? Do you need intermediate steps?

As for the special case of zero, it simply represents "no data."

To give some examples:

The Amazon ranking has five positive steps, but has intermediate steps (shows half steps). It is derived from user ratings (the average rating).

The ranking in Google Maps has five positive steps, has intermediate steps (shows the numerical value but shows the whole steps). It is derived from user ratings (the average rating).

The answer provided by Dominik is a comprehensive breakdown of the major considerations for designing the scale range, so I will talk about other aspects for completeness. In particular, I want to emphasise the relationship between how this data is presented and its impact on the user experience.

Although in this instance a scale may be the best way to represent the information, it is worth thinking about the nature of the raw data and how it will be accessed and used by end-users (both people that set and read the ratings). The characteristics of the raw data allow you to work out issues involved in converting it to a scale (and whether it is sensible to do so) while thinking about the end-user will give you the format that works best for different use cases.

Since I am not exactly sure how roads deteriorate over time, I won't comment on the nature of the raw data except to say that most scales are designed for a linear increase in values (e.g. a rating of 2 is twice the magnitude of a rating of 1), and it may be that as roads age the condition deteriorates faster such that a rating of 5 is actually a lot worse than perhaps a rating of 4, even though on the scale it is 25% higher in value. Generally speaking, if you collect raw data the meaning of that information should be preserved in some way as it may be lost down the track when it is converted or processed into other formats. Some research might also turn up specific terms used to describe the road conditions or calculations that are used to determine this, so I would be inclined to align the properties of the rating to this in some way.

In terms of end-user input, you should consider whether the granularity of the scale (e.g. 1-5 with intervals of 1, or to allow intervals of 0.5) matches with your intended usage. This was partially covered in Dominik's answer about the resolution of the scale, and you also need to look at it from the perspective of how easy it is to enter the information that you want to record (e.g. if you implement a slider to capture the input or allow them to type the value in, or both) and whether it is sufficient for the raw information you want to capture. The second point is important because when the end-user reads a report or summary of the data they won't necessarily get the same type of values to work with (e.g. average condition of 4.5 means what, exactly in between 4 and 5). So while the person who has to read and interpret the value sees one format or representation of the value, the person who provided the input had to make a call between 4 or 5 for the road condition. This also relates back to my first point about the nature of the raw data.

In summary, my answer is just about highlighting the importance of identifying the purpose of the table and linking it to the requirements of the end user. This allows you to firstly identify the raw data format, the way you need to input, store and then present the information to end-user. The way you have gone about this design task is more from a functional rather than user-centric approach, which we are definitely trying to encourage on UXSE.