A controller configured to receive: data relating to a first performance parameter of a first vehicle at a given location to determine a driving behaviour of the first vehicle, wherein the first performance parameter comprises a rate of change of steering wheel angle or a brake pedal pressure, and the driving behaviour comprises whether the first vehicle is swerving or braking harshly; and data relating to a second performance parameter of a second vehicle at the given location to determine a driving behaviour of the second vehicle, wherein the second performance parameter comprises a rate of change of steering wheel angle or a brake pedal pressure, and the driving behaviour comprises whether the second vehicle is swerving or braking harshly, wherein the controller is configured to receive data relating to: a geography at the given location, wherein the data relating to the geography at the given location comprises data describing an obstacle within a predetermined distance of the given location; and, to determine if the driving behaviour of the first vehicle and the driving behaviour of the second vehicle are the same, or similar within a predetermined first threshold: if the first and second performance parameters are the same, the controller determines whether a difference between the values of the first and second performance parameters is zero or less than a predetermined threshold, and if the first and second performance parameters are different, the controller determines whether the first performance parameter exceeds a predetermined threshold and determines whether the second performance parameter exceeds a predetermined threshold, and if the controller determines that the driving behaviour of the first vehicle and the driving behaviour of the second vehicle are the same, or similar within a predetermined first threshold, then the geographical data are examined to determine whether there is a probable cause of the same or similar driving behaviour, and if the controller determines that: the geography at the given location increases the risk of accident due to the presence of an obstacle within the predetermined distance of the given location, then the controller is configured to issue an alert. data relating to a first performance parameter of a first vehicle at a given location to determine a driving behaviour of the first vehicle, wherein the first performance parameter comprises a rate of change of steering wheel angle or a brake pedal pressure, and the driving behaviour comprises whether the first vehicle is swerving or braking harshly; and data relating to a second performance parameter of a second vehicle at the given location to determine a driving behaviour of the second vehicle, wherein the second performance parameter comprises a rate of change of steering wheel angle or a brake pedal pressure, and the driving behaviour comprises whether the second vehicle is swerving or braking harshly, wherein the controller is configured to receive data relating to: a geography at the given location, wherein the data relating to the geography at the given location comprises data describing an obstacle within a predetermined distance of the given location; and, to determine if the driving behaviour of the first vehicle and the driving behaviour of the second vehicle are the same, or similar within a predetermined first threshold: if the first and second performance parameters are the same, the controller determines whether a difference between the values of the first and second performance parameters is zero or less than a predetermined threshold, and if the first and second performance parameters are different, the controller determines whether the first performance parameter exceeds a predetermined threshold and determines whether the second performance parameter exceeds a predetermined threshold, and if the controller determines that the driving behaviour of the first vehicle and the driving behaviour of the second vehicle are the same, or similar within a predetermined first threshold, then the geographical data are examined to determine whether there is a probable cause of the same or similar driving behaviour, if the first and second performance parameters are the same, the controller determines whether a difference between the values of the first and second performance parameters is zero or less than a predetermined threshold, and if the first and second performance parameters are different, the controller determines whether the first performance parameter exceeds a predetermined threshold and determines whether the second performance parameter exceeds a predetermined threshold, and if the controller determines that the driving behaviour of the first vehicle and the driving behaviour of the second vehicle are the same, or similar within a predetermined first threshold, then the geographical data are examined to determine whether there is a probable cause of the same or similar driving behaviour, and if the controller determines that: the geography at the given location increases the risk of accident due to the presence of an obstacle within the predetermined distance of the given location, then the controller is configured to issue an alert.