Differences between revisions 8 and 25 (spanning 17 versions)
Revision 8 as of 2011-04-19 01:55:41
Size: 18425
Editor: shoobe01
Comment:
Revision 25 as of 2011-12-13 16:53:08
Size: 15055
Editor: shoobe01
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
Availability of location based service, and the actual location of the handset must be easily and accurately communicated. You must clearly communicate the availability of location services, and use these location services to make services more personalized and relevant.

Aside from the many dedicated navigation devices, GPS is ubiquitous in many other devices, and other location technologies can extend this capability to almost any connected device. Access to is sometimes restricted for websites, and some application types, but there are workarounds.
Line 5: Line 7:
{{attachment:Location-Driving.png|Location can present more that just a pinpoint on a map. Direction can be indicated organically, with the pointer and by rotating the map to match direction of travel, as well as with compasses. Speed and other attributes (e.g. height, relative position) can also be displayed.|align="right"}}
Line 6: Line 9:
Mobile devices have numerous methods of retrieving location information. These are listed in, approximately, less to more precision, but are not necessarily better or worse otherwise. Mobile devices have numerous methods of retrieving location information. These include:
 * Cell
 * Sector
 * Tri
angulation
* GPS Telemetry
* WAAS
 * AGPS
 * WLAN
s & PANs
Line 8: Line 18:
 * '''Cell''' -- Note that only one method is the use of GPS. You should try to understand at least the basics of each technology, and their capabilities and limitations. Each is detailed in the Appendix, under the '''[[Introduction to Location Technologies]]''' section.
Line 10: Line 20:
Mobile telephony is based on communications and handoff between cells, each of which is (generally) controlled by a single tower with multiple antennas. The tower location is well-known, and its ID is attached to the CDR, so it can be detected. One more key method of retrieving information is of course, to ask. People often know where they are. If you cannot get any location, or there's a reason they might want to over-ride it (even as simple as that the data is bad) let your users enter a location. If you do this, allow lots of methods. Only accepting ZIP or postal code is not useful for travellers, who do not generally know such details.
Line 12: Line 22:
This is a fallback, when other things are not available. Better technologies are generally not available when roaming, and the data is not or cannot (technology or politics) shared at more precision with your home network or because you are from another operator. It is also important that you understand the difference between precision and accuracy. In brief: precision is the number of decimal places you measure something to; accuracy is how correct it is. The less accurate you think your measurement is, the less precisely you should report it.
Line 14: Line 24:
Precision will vary widely by the size of the cell, and there is no (good, universally-accepted) method to determine and communicate precision and accuracy. A good rule of thumb – and something similar is generally used by devices – is a circle 3000 yds (m) across.

 * '''Sector''' --

Recall that each tower has multiple antennas. Those three (or four, rarely anything else, depends on the carrier) antennas point different directions. Each of those is an independent mobile radio sector; just like signals are handed off between cells, they are handed off between sectors, and the data is generally known to the handset and can sometimes be shared with services or providers. However, since the direction the sector faces is really only known to the company that installed it, and the network operator, they are the only ones that can use the data well. Precision will vary widely by the size of the cell, and by the antennas used, the number on the cell, the down-angle, and so on. There are some semi-useful ways of determining precision and accuracy for a single read, but they are not univerally implemented and there is no way to send the data to the information providers (e.g. the map program). A good rule of thumb – and something similar is generally used by devices – is a circle 1200 yds (m) across, co-located with the radio centroid of the sector. Yes, sectors are not circles, but it's also hard to communicate shape and orientation, so this works.

 * '''Triangulation''' --

Generally, triangulation is the practice of determining the location of a point by measuring the angle and/or distance from several known locations. More points give more precision. It can get more complex when you try to find points in 3D space, but all mobile triangulation systems mostly assume the earth is locally perfectly flat, and simply find the location on the geoid. Methods of triangulating get really complex and vary by network type and equipment available; multilateration and signal interpolation are some of those. The math can get pretty harrowing. Precision varies mostly by the number of sectors being used, the distance between them and other variables of the network. There may be a method of communicating to services employing it an approximation of the precision available. In any remotely built-up area, where it most often has enough sectors to work, a circle 50 yds (m) across is typical. 12 yd precision is possible, with good accuracy.

 * '''GPS Telemetry''' --

The Global Positioning System consists of a ground based control system, a series of satellites and any number of anonymous receivers. So, reading that alone dismisses many misconceptions; its one-way, it's a system, and the signal is from satellites and has nothing to do with mobile networks.

Telemetry means data sent from a remote (usually mobile) site like a rocket, back to base. Here, it means the device figures out where it is by listening to the satellites, then tells the network or website or whatever where it is.

Ignoring SA, GPS can give precision to fractions of an inch at least. But those are large, complex devices used for special surveying and scientific tasks. Portable, hand-held receivers like those in mobile handsets can generally be assumed to give precision of 20-50 ft, though antenna and signal processing improves constantly and precision can be in single digit feet.

There are other systems, like Galileo, GLONASS, and COMPASS but none of these are really fully-active, and there are few or no receivers in mobiles as yet. In theory, eventually, using multiple unrelated systems will give better accuracy yet, and give better coverage when in touchy situations like in dense cities.

 * '''WAAS''' --

GPS uses radios, and the atmosphere and earth are imperfect and can displace or distort the signals. WAAS is a satellite based augmentation system based in North America (others exist in the rest of the world, but are less well-established) that sends additional signals via another set of satellites to allow GPS receivers to adjust for those inaccuracies. I know of no mobile phones that have a built-in WAAS receiver, but it's a location technology that does exist, and is employed on cell towers using AGPS.

 * '''AGPS''' --

Assisted GPS requires the use of mobile networks, so only works when in data communication range. The cell tower has its own GPS (which many use anyway to get precise time codes), and usually a WAAS receiver. This provides a bit more precision, assures it of more accuracy, but mostly helps speed up cold or warm starts. Briefly, for a GPS to work, the receiver has to download data about all the satellites before it can calculate the position. AGPS caches this info for the phone, and sends over just the relevant bits, cutting minutes to a second or two.

This is a reason you may not see WAAS, and might see some benefits from other GNSS (say, GLONASS) before the receivers are added to the handsets. AGPS generally gives precision, even in dense areas and on the move, of 10 ft or better. Two foot indicated precision has been observed.

AGPS is not generally selectable as a separate service; when the user chooses to turn on or off "GPS," and has a network connection (and an AGPS compliant phone, etc.) they get the advantages of AGPS.

 * '''WLANs & PANs''' --

Local networks like WiFi and Bluetooth are not exactly more precise,but are at the bottom of this list because they are local, and can add another layer of location, so could increase precision. They can also be used instead of other technologies when there is no GPS signal, or a bad mobile signal so triangulation cannot be used.

Both of these currently use the "cell" (or network identifier) and triangulation methods described above. There are no sectors, and no universally-adopted AGPS system to work with device telemetry. Naturally, a handset getting good GPS data can send that telemetry to anyone over any network, including WiFi, but that's not the same thing.

They are both relatively more rare, and often are supported by third party software or individual services (which may have specific capabilities), and are not universally implemented on the handset. There are no reliable, independently verified numbers on the real-world precision, but tests of WiFi triangulation alone have gone down to inches. On the other hand, poor network identification has led to placing users on the wrong continent. There's room to improve here.

 * '''Ask''' --

People often know where they are. If you cannot get any location, or there's a reason they might want to over-ride it (even as simple as the data is bad) let them enter a location. If you do this, allow lots of methods. Only accepting ZIP or postal code is not useful for e.g. travellers, who do not generally know the ZIP where they are.



Each of these must be understood, be able to be used (as long as the hardware is available) by the system and by each application, and communicate the correct degree of precision and accuracy.

An understanding of the difference between precision and accuracy is also crucial. In brief: precision is the number of decimal places you measure something to; accuracy is how correct it is. The less accurate you think your measurement is, the less precise you should report it.

Privacy and security concerns are beyond the scope of this book, but must be considered when designing location based services. In many countries, there are legislative or regulatory restrictions on enabling and use of location services, so notification of background tracking is a legal requirement, not just best practice.
Privacy and security concerns are beyond the scope of this book, but must be considered when designing location based services. In many countries, there are legislative or regulatory restrictions on enabling and using location, so notification of background tracking is a legal requirement, not just best practice.
Line 70: Line 30:
Location service is often used as a background service, or promote smarter ambient computing,. When directly referred to, it may only be momentarily switched to while other tasks occupy the remaining time. Therefore, both explicit and background indicators cases may be present not just in the same system, but at the same time. Location service is often used as a background service, as a way to enable smarter ambient computing,. When directly referred to, it may only be momentarily switched to while other tasks occupy the remaining time. Therefore, both explicit and background indicators cases may be present not just in the same system, but at the same time.
Line 72: Line 32:
 * '''Explicit''' - maps, CEP circles, etc. -- name of city! errors of precision there...  * '''Explicit''' - Location services are currently mostly used for explicit location applications, such as mapping, directions, local information and augmented reality. These explicit representations of location are discussed in detail below.
Line 74: Line 34:
 * '''Background''' - notify, behave appropriately... permission (one off and Android-style on-install), annunicator and example of "in a meeting because at the right location at the right time"  * '''Background''' - Location services can also be used as a trigger to initiate notifications, or change behaviors of the device. Geofencing, location-driven advertising and location based profile changes (e.g. silent when in a meeting room) have all been trialled, but are not widely adopted.
Line 76: Line 36:
Though this pattern discusses such behaviors and features on a mobile device, they may also be used for remote devices in much the same manner. "Child trackers" and similar functions may be used from another mobile device or from desktop computers to track a remote mobile device. In this case, both the viewing terminal and the Settings, including installation of applications using location services, must also take into account these principles, especially those of privacy and awareness.

Though this pattern discusses such behaviors and features on a mobile device, they may also be used for remote devices in much the same manner. "Child trackers" and similar functions may be used from another mobile device or from desktop computers to track a remote mobile device. In this case, both the viewing terminal and the mobile device must both consider the display and behavior attributes of this pattern.
Line 79: Line 41:
{{attachment:Location-LowPrecision.png|When information is not available, such as speed and direction of travel, it should generally not be shown at all, instead of simply being zeroed out. Precision must always be shown with a true-to-scale error scale circle, and numerical precision whenever possible.|align="right"}}
Line 80: Line 43:
Indicators of state are generally only present in the '''[[Annunciator Row]]''' and cannot be interacted with. A system setting should be made available to control the use of GPS, WiFi and other controls, as well as to set privacy controls for sharing and how much automatic (vs. manual) control is allowed over these systems. You should present indicators of state only in the '''[[Annunciator Row]]''' so the user cannot interact with it. Make a system setting available to control the use of GPS, WiFi and other controls, as well as to set privacy controls for sharing and how much automatic (vs. manual) control is allowed over these systems.
Line 82: Line 45:
... FIX "ICON" LABEL ... Provide an easy method for the user to gain access this control, without drilling into multiple sub-menus. Whenever possible, add this control shortcut to any application that uses location services. Another good method, when technically feasible, is to ass the control as an interactive '''[[Icon]]''' on the Idle Screen. In this way, the user can simply pop back to the home screen and change the setting before using any application.
Line 84: Line 47:
An easy method must be provided to access this control, without drilling into multiple sub-menus. Whenever possible, add this control shortcut to any application that uses location services. The control may also be added as an interactive '''[[Icon]]''' on the Idle Screen for access from any application, or so the user may manually enable the service before it is needed.

Whenever possible, applications or services which are best with location should automatically enable the required hardware. OS level restrictions or user settings may interfere with this behavior, and require user intervention each time. If so, an interstitial '''[[Pop-Up]]''' is often the best way to request this.
Whenever possible, applications or services which are best with location should automatically enable the required hardware. OS level restrictions or user settings may interfere with this behavior, and require user intervention each time. If so, an interstitial '''[[Pop-Up]]''', despite the intrusive nature, will end up being the best way to request this access.
Line 90: Line 51:
Only use the precision required for the task at hand. Weather, for example, rarely requires more than city-level precision. The GPS is not required for basic conditions and forecast information. Only use the precision required for the task at hand. Weather, for example, rarely requires more than city-level precision. The GPS is not required for basic conditions and forecast information, so if other location services are providing sufficient detail, do not enable the always power-hungry GPS.
Line 92: Line 53:
On the other hand, always present the most relevant details for each view. If the user chooses to view a local radar map, they should not be required to know their location but should be presented it systematically. The weather application may have to turn on and off various location services as the application is used, and should not enable all services when it is opened, or get by with only the minimal set and present less than optimal information. On the other hand, always present the most relevant details for each view. If the user chooses to view a local radar map, they should not be required to know their location but should be presented it systematically. This example weather application may have to turn on and off various location services as the application is used, and should not enable all services when it is opened, or get by with only the minimal set and present less than optimal information.
Line 95: Line 56:
{{attachment:Location-Icons.png|Icons to denote location services are not just optional variations, but can imply different meanings. The crosshair is a standard used not just to denote location enabling, but that the mobile handset sends it’s location to the operator, for e911 and other purposes. The satellite dish and satellite denote GPS specifically, and may be used to denote other conditons. For example, the dish may imply the device requests service, and the satellite only appears when a link is established.|align="right"}}
Line 96: Line 58:
When location service is enabled, this should be shown in the '''[[Annunciator Row]]''', generally as an icon. The location icon (crosshair) has come to mean GPS is enabled, so there may be challenges in communicating other types of location services. GPS can use other types of icons, such as a satellite dish. GPS requires a short time to find position, and can loose position due to interference, clutter or other conditions, and must display the current status. Generally, animating the satellite dish (implying "scanning for service") works well. When location service is enabled, be sure to display an icon in the '''[[Annunciator Row]]'''. The location icon (crosshair) has come to mean GPS is enabled, so there may be challenges in communicating other types of location services. GPS specifically can use other types of icons, such as a satellite dish. GPS requires a short time to find position, and can loose position due to interference, clutter or other conditions, and must display the current status. Generally, animating the satellite dish (implying "scanning for service") works well.
Line 98: Line 60:
Avoid duplicating indicators. If in the Annunciator Row, there is generally no need to also include such indicators within an application. This is another good reason to preserve Annunciator Row display, instead of loading applications full-screen. Avoid duplicating indicators. If in the Annunciator Row, there is generally no need to also include such indicators within an application. This is another good reason to preserve the Annunciator Row bar, instead of loading applications full-screen.
Line 100: Line 62:
For explicit graphic display of location, such as on a map, a cursor will be used to denote the current position. Note that this is actually the centroid of the CEP or circular error of probability. A probability threshold is programatically established; based on the technology used to determine location, the device is almost certainly located within this circle. (Note, it is impossible to absolutely determine location, hence the "probability" prhasing, but this is not terribly important for general discussions). For explicit graphic display of location, such as on a map, use a cursor to denote the current position. Note that this is actually the centroid of the CEP or circular error of probability. A probability threshold is programmatically established; based on the technology used to determine location, the device is almost certainly located within this circle. (Note, it is impossible to absolutely determine location, hence the "probability" prhasing, but this is not terribly important for general discussions).
Line 102: Line 64:
This CEP circle should be displayed, with the cursor at the center, as a visual method of communicating the precision of the location technology. Unless additional precision is needed but is currently unavailable, the default view should hide the CEP circle from the user. For a weather map, for example, the default zoom level should be large enough that a 100 m CEP is smaller than the cursor, so disappears under it. Good selection of map zoom level also helps communicate the degree of precision available. Display this CEP circle with the cursor at the center, as a visual method of communicating the precision of the location technology. Unless additional precision is needed, but is currently unavailable, the default view should hide the CEP circle from the user. For a weather map, for example, the default zoom level should be large enough that a 100 m CEP is smaller than the cursor, so disappears under it. Good selection of map zoom levels itself can help communicate the degree of precision available.
Line 104: Line 66:
When the display is zoomed such that the CEP circle is at least 10 times the size of the cursor, or the edge is partly or entirely outside the viewport, an explicit display of precision (discussed below) should be printed adjacent to the cursor. {{attachment:Location-Coordinates.png|Coordinates and other location information, when relevant and useful, should be presented on screen in an easy to read format. Multiple formats may be presented at once, as shown here. Here, many digits have been removed, in the interest of using only the degree of precision available. |align="right"}}

When the display is zoomed such that the CEP circle is at least 10 times the size of the cursor, or the edge is partly or entirely outside the viewport, print an explicit display of precision adjacent to the cursor.
Line 108: Line 72:
Precision also must be accounted for. For this example, the MGRS coordinate system will be employed as it is based on simple measurements from a regional baseline. This is unlikely to be employed in general consumer applications, however. A complete location to 1 meter precision is listed as: Account for precision in the display of coordinates and other printed locations. For this example, the MGRS coordinate system will be employed as it is based on simple measurements (meters from a regional baseline). This is unlikely to be employed in general consumer applications, but is convenient as an example. A complete location to 1 meter precision is listed as:
Line 112: Line 76:
However, most location technologies, in most instances, cannot give such precision. Digits should be removed until only the correct level of precision is shown. For example, if using cell sector, with precision in the 100 m range, only display  (The ten numbers at the end show the position in meters vertically from the equator, and horizontally from a point too complex to explain here)

However, most location technologies, in most instances, cannot give such precision. To correct for this, remove digits until only the correct level of precision is shown. For example, if using cell sector, with precision in the 100 m range, only display:
Line 127: Line 93:
 * 56th Street & Russell Ave, Mission, Kansas 66202 ''Street or Intersection''
 * West Crossland, Mission, Kansas 66202 ''Neighborhood''
 * Mission, Kansas 66202 ''City''
 * 10 miles west of downtown Kansas City, MO ''Relative Location''
 * Near Kansas City, MO ''Area''
 * 56th Street & Russell Ave, Mission, Kansas 66202 - ''Street or Intersection''
 * West Crossland, Mission, Kansas 66202 - ''Neighborhood''
 * Mission, Kansas 66202 - ''City''
 * 10 miles west of downtown Kansas City, MO - ''Relative Location''
 * Near Kansas City, MO - ''Area''
Line 135: Line 101:
Direction of travel should only be displayed when available, and should only display to the degree known. Generally, the cursor will be a pointer to assist with this. For free standing displays, when users will understand, display bearing in degrees, and by named directions (north-east) but degrade to cardinal directions as the system's understanding becomes more poor. Only display the device's direction of travel when available, and just like the location, only display it to the degree known. Generally, the cursor can simply become a pointer. For free standing displays, when users will get value from it, display the current bearing in degrees, and by named directions (north-east) but degrade to cardinal directions as the system's understanding becomes more poor.
Line 139: Line 105:
When direction of travel cannot be determined (there is no compass and the device is not moving), display no direction of travel indicator, or an icon indicating it is unknown. The cursor may change to circle, or otherwise become blunted to reduce or remove the implication that direction is known. Do not display the last direction, as this is likely to be spurious data arising from loss of signal or stopping. When direction of travel cannot be determined (there is no compass and the device is not moving), display no direction of travel indicator, or an icon indicating it is unknown. The cursor may change to a circle, or otherwise become blunted to reduce or remove the implication that direction is known. Do not display the last direction, as this is likely to be spurious data arising from loss of signal, or coming to a stop.
Line 141: Line 107:
ROTATE THE MAP TO ORIENT SO FORWARD IS UP; IF YOU CAN'T BRING YOURSELF TO DO THAT BY DEFAULT, OFFER AND OPTION... When direction of travel is available, orient the map so direction of travel is forward, or up. If there is a specific reason not to do this by default, provide a function so the user can switch to this mode.
Line 145: Line 111:
Never equate "location" with "GPS" and only allow the use of location based services with a  ... too much precision always bad! Never equate "location" with "GPS," especially to the degree that a location aware service or application may only launch when the GPS is enabled.
Line 148: Line 113:
... over-implying precision with crosshairs, etc. ... use CEP circles... Never display or imply precision that is not available. Avoid the use of crosshairs and other implied attributes, even if a CEP circle is displayed as well.
Line 151: Line 116:



----
Next: '''[[Input and Output Wrapup]]'''
----
= Discuss & Add =
Please do not change content above this line, as it's a perfect match with the printed book. Everything else you want to add goes down here.
Line 152: Line 126:
If you want to add examples (and we occasionally do also) add them here.

== Make a new section ==
Just like this. If, for example, you want to argue about the differences between, say, Tidwell's Vertical Stack, and our general concept of the List, then add a section to discuss. If we're successful, we'll get to make a new edition and will take all these discussions into account.

Problem

You must clearly communicate the availability of location services, and use these location services to make services more personalized and relevant.

Aside from the many dedicated navigation devices, GPS is ubiquitous in many other devices, and other location technologies can extend this capability to almost any connected device. Access to is sometimes restricted for websites, and some application types, but there are workarounds.

Location can present more that just a pinpoint on a map. Direction can be indicated organically, with the pointer and by rotating the map to match direction of travel, as well as with compasses. Speed and other attributes (e.g. height, relative position) can also be displayed.

Solution

Mobile devices have numerous methods of retrieving location information. These include:

  • Cell
  • Sector
  • Triangulation
  • GPS Telemetry
  • WAAS
  • AGPS
  • WLANs & PANs

Note that only one method is the use of GPS. You should try to understand at least the basics of each technology, and their capabilities and limitations. Each is detailed in the Appendix, under the Introduction to Location Technologies section.

One more key method of retrieving information is of course, to ask. People often know where they are. If you cannot get any location, or there's a reason they might want to over-ride it (even as simple as that the data is bad) let your users enter a location. If you do this, allow lots of methods. Only accepting ZIP or postal code is not useful for travellers, who do not generally know such details.

It is also important that you understand the difference between precision and accuracy. In brief: precision is the number of decimal places you measure something to; accuracy is how correct it is. The less accurate you think your measurement is, the less precisely you should report it.

Privacy and security concerns are beyond the scope of this book, but must be considered when designing location based services. In many countries, there are legislative or regulatory restrictions on enabling and using location, so notification of background tracking is a legal requirement, not just best practice.

Location is not the same as Orientation or other types of position information. When these must be communicated -- as for augmented reality -- they are generally deeply integral to the visualization and interactive design of the application. No distinct patterns yet exist for these behaviors, but best practices from aviation may serve to guide designs.

Variations

Location service is often used as a background service, as a way to enable smarter ambient computing,. When directly referred to, it may only be momentarily switched to while other tasks occupy the remaining time. Therefore, both explicit and background indicators cases may be present not just in the same system, but at the same time.

  • Explicit - Location services are currently mostly used for explicit location applications, such as mapping, directions, local information and augmented reality. These explicit representations of location are discussed in detail below.

  • Background - Location services can also be used as a trigger to initiate notifications, or change behaviors of the device. Geofencing, location-driven advertising and location based profile changes (e.g. silent when in a meeting room) have all been trialled, but are not widely adopted.

Settings, including installation of applications using location services, must also take into account these principles, especially those of privacy and awareness.

Though this pattern discusses such behaviors and features on a mobile device, they may also be used for remote devices in much the same manner. "Child trackers" and similar functions may be used from another mobile device or from desktop computers to track a remote mobile device. In this case, both the viewing terminal and the mobile device must both consider the display and behavior attributes of this pattern.

When information is not available, such as speed and direction of travel, it should generally not be shown at all, instead of simply being zeroed out. Precision must always be shown with a true-to-scale error scale circle, and numerical precision whenever possible.

Interaction Details

You should present indicators of state only in the Annunciator Row so the user cannot interact with it. Make a system setting available to control the use of GPS, WiFi and other controls, as well as to set privacy controls for sharing and how much automatic (vs. manual) control is allowed over these systems.

Provide an easy method for the user to gain access this control, without drilling into multiple sub-menus. Whenever possible, add this control shortcut to any application that uses location services. Another good method, when technically feasible, is to ass the control as an interactive Icon on the Idle Screen. In this way, the user can simply pop back to the home screen and change the setting before using any application.

Whenever possible, applications or services which are best with location should automatically enable the required hardware. OS level restrictions or user settings may interfere with this behavior, and require user intervention each time. If so, an interstitial Pop-Up, despite the intrusive nature, will end up being the best way to request this access.

When the Pop-Up itself is restricted from offering a function to enable the GPS (or other hardware), use it sparingly, as a reminder to the user instead, and provide a link to the appropriate settings panel. When settings are changed, always return the user to the originally-requested application.

Only use the precision required for the task at hand. Weather, for example, rarely requires more than city-level precision. The GPS is not required for basic conditions and forecast information, so if other location services are providing sufficient detail, do not enable the always power-hungry GPS.

On the other hand, always present the most relevant details for each view. If the user chooses to view a local radar map, they should not be required to know their location but should be presented it systematically. This example weather application may have to turn on and off various location services as the application is used, and should not enable all services when it is opened, or get by with only the minimal set and present less than optimal information.

Icons to denote location services are not just optional variations, but can imply different meanings. The crosshair is a standard used not just to denote location enabling, but that the mobile handset sends it’s location to the operator, for e911 and other purposes. The satellite dish and satellite denote GPS specifically, and may be used to denote other conditons. For example, the dish may imply the device requests service, and the satellite only appears when a link is established.

Presentation Details

When location service is enabled, be sure to display an icon in the Annunciator Row. The location icon (crosshair) has come to mean GPS is enabled, so there may be challenges in communicating other types of location services. GPS specifically can use other types of icons, such as a satellite dish. GPS requires a short time to find position, and can loose position due to interference, clutter or other conditions, and must display the current status. Generally, animating the satellite dish (implying "scanning for service") works well.

Avoid duplicating indicators. If in the Annunciator Row, there is generally no need to also include such indicators within an application. This is another good reason to preserve the Annunciator Row bar, instead of loading applications full-screen.

For explicit graphic display of location, such as on a map, use a cursor to denote the current position. Note that this is actually the centroid of the CEP or circular error of probability. A probability threshold is programmatically established; based on the technology used to determine location, the device is almost certainly located within this circle. (Note, it is impossible to absolutely determine location, hence the "probability" prhasing, but this is not terribly important for general discussions).

Display this CEP circle with the cursor at the center, as a visual method of communicating the precision of the location technology. Unless additional precision is needed, but is currently unavailable, the default view should hide the CEP circle from the user. For a weather map, for example, the default zoom level should be large enough that a 100 m CEP is smaller than the cursor, so disappears under it. Good selection of map zoom levels itself can help communicate the degree of precision available.

Coordinates and other location information, when relevant and useful, should be presented on screen in an easy to read format. Multiple formats may be presented at once, as shown here. Here, many digits have been removed, in the interest of using only the degree of precision available.

When the display is zoomed such that the CEP circle is at least 10 times the size of the cursor, or the edge is partly or entirely outside the viewport, print an explicit display of precision adjacent to the cursor.

An even greater pitfall in the display of precision information is with printed location, especially in coordinate systems. Whenever possible, use standard, well-understood nomenclature. Avoid printing the location when not useful; lat/long is difficult to interpret and very few general users will understand it.

Account for precision in the display of coordinates and other printed locations. For this example, the MGRS coordinate system will be employed as it is based on simple measurements (meters from a regional baseline). This is unlikely to be employed in general consumer applications, but is convenient as an example. A complete location to 1 meter precision is listed as:

15S UD 12345 67890

(The ten numbers at the end show the position in meters vertically from the equator, and horizontally from a point too complex to explain here)

However, most location technologies, in most instances, cannot give such precision. To correct for this, remove digits until only the correct level of precision is shown. For example, if using cell sector, with precision in the 100 m range, only display:

15S UD 123 678

The last digit will always be of less precision than the others, and even when displayed digitally can be used like that on a dial or scale. Simply restrict the display to only the 5 or 0 digits.

Precision should be explicitly displayed when coordinates are printed. Use the existing settings for units of measure, but scale them appropriately. In the following examples, the user has set their navigation tool to use miles.

  • "Accuracy 19 ft" - Correct. Appropriate scale (vs. yards or miles) for the size, and in the same system.

  • "Accuracy 6 m" - Incorrect. In the wrong system of measure.

  • "Accuracy 0.004 mi" - Incorrect. Too large a measure, so many decimals, and not easily understood.

Note that the term "precision" is not well understood, so is often replaced with "accuracy" in general communications, as in the examples above, although it is not strictly true.

Addresses, likewise, should only be displayed when that level of precision is available. Otherwise use existing best practices for general location:

  • 5600 Russell Ave, Mission, Kansas 66202
  • 56th Street & Russell Ave, Mission, Kansas 66202 - Street or Intersection

  • West Crossland, Mission, Kansas 66202 - Neighborhood

  • Mission, Kansas 66202 - City

  • 10 miles west of downtown Kansas City, MO - Relative Location

  • Near Kansas City, MO - Area

Only display the larger scale information such as state and country when needed. When moving between two areas only a few miles apart, the default location display should probably just be the street address portion. The same filtering logic should be used for coordinate systems, when applicable. While Lat/Long is a global system, UTM and MGRS are divided into regions; the "15S UD" portion in the example above can be made much less prominent, as most precision navigation is not also global navigation, so it will not be used as much as the remainder of the displayed coordinates.

Only display the device's direction of travel when available, and just like the location, only display it to the degree known. Generally, the cursor can simply become a pointer. For free standing displays, when users will get value from it, display the current bearing in degrees, and by named directions (north-east) but degrade to cardinal directions as the system's understanding becomes more poor.

Cardinal directions (e.g. "North") can imply precision if simply printed on the screen; use graphic displays (either dials or circular Tapes) to communicate the degree of precision available, make small changes in bearing angle visible to the user and make the display more glanceable.

When direction of travel cannot be determined (there is no compass and the device is not moving), display no direction of travel indicator, or an icon indicating it is unknown. The cursor may change to a circle, or otherwise become blunted to reduce or remove the implication that direction is known. Do not display the last direction, as this is likely to be spurious data arising from loss of signal, or coming to a stop.

When direction of travel is available, orient the map so direction of travel is forward, or up. If there is a specific reason not to do this by default, provide a function so the user can switch to this mode.

Antipatterns

Never equate "location" with "GPS," especially to the degree that a location aware service or application may only launch when the GPS is enabled.

Never display or imply precision that is not available. Avoid the use of crosshairs and other implied attributes, even if a CEP circle is displayed as well.


Next: Input and Output Wrapup


Discuss & Add

Please do not change content above this line, as it's a perfect match with the printed book. Everything else you want to add goes down here.

Examples

If you want to add examples (and we occasionally do also) add them here.

Make a new section

Just like this. If, for example, you want to argue about the differences between, say, Tidwell's Vertical Stack, and our general concept of the List, then add a section to discuss. If we're successful, we'll get to make a new edition and will take all these discussions into account.

Location (last edited 2011-12-13 16:53:08 by shoobe01)