Search⌘ K

Requirements of Google Maps Design

Understand the requirements to design a maps application like Google Maps.

Requirements

Before we start requirements, let’s clarify that we will design a system like Google Maps by picking a few key features because actual Google Maps is feature-rich and complex.

Let’s list the functional and non-functional requirements of the system under design.

Functional requirements

The functional requirements of our system are as follows.

  • Identify the current location: Users should be able to approximate their current location (latitude and longitude in decimal values) on the world map.

  • Recommend the fastest route: Given the source and destination (place names in text), the system should recommend the optimal route by distance and time, depending on the type of transportation.

  • Give directions: Once the user has chosen the route, the system should list directions in text format, where each item in the list guides the user to turn or continue in a specific direction to reach the destination.

Non-functional requirements

The non-functional requirements of our system are as follows.

  • Availability: The system should be highly available.

  • Scalability: It should be scalable because both individuals and other enterprise applications like Uber and Lyft use Google Maps to find appropriate routes.

  • Less response time: It shouldn’t take more than two or three seconds to calculate the ETAEstimated Time of Arrival and the route, given the source and the destination points.

  • Accuracy: The ETA we predict should not deviate too much from the ...