Software that is cognizant of its current environment in order to provide options or help for the user. Combined with the user's preferences, a context aware system can offer choices. For example, given a preference for sushi, a context-aware app in a smartphone might notify the user around lunch or dinner time that a Japanese restaurant is in the neighborhood. See
context and
context sensitive help.