Airbnb, Search For Experiences
You can also Download the contents of this page in PDF format.
Notes and assumptions
– This page contains an Epic Spec Sheet for a feature that I would like to add to Airbnb website. It also has some wireframes, user stories, and suggested milestones/sprints (these are considered samples, not covering all the details to complete the feature). The main focus was on the epic spec sheet.
– In practice:
- The level of details and breakdown of stories vary considerably from organization to organization, specially considering the engineering team preferences/practices
- Collaboration with the engineering and design teams is essential to have a clear and complete spec sheet and stories
- The definition of ready for stories would have an impact (for instance, wireframes are enough for the team to start implementing a story, or detailed mockups are required)
- Multiple factors and details (such as, capacity/velocity) about the engineering and design teams would have an impact on the planning/milestones
- Having a designer as a core team member or supporting multiple teams is a consideration which would impact the planning, milestones and definition of ready
- User stories are usually created in tools, such as, Trello, MS TFS/VSTS, or JIRA. Which makes relations between them, priorities, estimates/points, etc., clear, and easy to manage and plan
– After completing my epic spec sheet, I visited Airbnb’s website from 2 browsers and got 2 different versions. Looks like they were doing some testing for a new homepage/search bar. It turned out a bit similar to the one that I worked on (solving the core issues that I tried to solve). Following are 2 screenshots
Epic Spec Sheet
“Add the option to search for experiences and use filters”
Introduction
Airbnb website search functionality is lacking compared to the mobile app. For instance, there is no option to search for an experience, and no filters can be used.
Currently, experiences are only showed as featured groups on the main website page, which requires a lot of scrolling from a user to discover what categories are available. Some categories don’t show as they don’t have active experiences (ex. technology), so the user wouldn’t know that they exist.
For homes search, filters are only available after a search has been performed.
This feature will allow users to search for experiences, and use filters for both homes and experiences from the main search bar.
Product Requirements
A user (guest) can:
- Search for an experience
- Use filters from the main search bar while searching for an experience or a home
- View search results for experiences (similar to the existing results page for homes)
Design Requirements
- Allow the user to select whether to search for a home or an experience
- Integrate the selection method with the main search bar
- Add the option to use filters to the main search bar (for homes and experiences)
- Integrate the experiences results page with the existing homes results page, which requires a means to easily switch results and filters between homes and experiences
- For homes filters from the main search bar, consider only the most important filters, and the more advanced ones can be used from the results page – as it is currently used.
- For the compact search bar (displayed on the main page when it is scrolled, and on the search results page), consider a simple way to switch between homes and experiences
Engineering Requirements
Currently, the mobile app uses internal services/APIs for experiences and filters, in addition to the ones used for homes from the website. The team should consider reuse, updates, or optimizations (for instance, number of results returned at a time, extended details, image sizes, etc.) for the currently-implemented services/APIs, in addition to, possible impact on the database and infrastructure capacity.
User Stories
Switch between homes and experiences from the main search bar
As a Guest, I want to switch between homes and experiences from the main search bar, so that I can easily search for either of them
Acceptance criteria
– A guest can switch between homes or experiences by clicking on either “homes” or “experiences” above the main search bar
– The currently selected option (homes or experiences) is clearly distinguished from the other one
Edge Cases
– If an option is currently selected (homes or experiences), clicking on it again should not cause flickering/reloading
Open filter selection window from the main search bar
As a guest, I want to open the filter selection/configuration window from the main search bar, so that I can select the filters that I want to apply
Acceptance criteria
– A guest can open the filter selection/configuration window/popover by clicking on the “filters” icon/button from the main search bar
– A guest can click on “close” to close the window/popover
Edge Cases
– While the filter selection popover is open, clicking anywhere outside the popover would also close it
Clear all selected filters from the main search bar popover
As a guest, I want to clear all filters for an open popover from the main search bar, so that I can easily reset all filters without the need to uncheck each individual item
Acceptance criteria
– A guest can click on “clear filters” to clear all selections and reset the filters
Edge Cases
– None
Show number of applied filters on the main search bar filters icon
As a guest, I want to see how many filters are applied on the filters icon of the main search bar, so that I can easily know if I’ve already applied filters or not, and if so, how many filters did I apply
Acceptance criteria
– An indicator showing the number of currently-selected filters appears on the main search bar filters icon
– The indicator reflects/updates the number whenever a filter item is selected or unselected
Edge Cases
– When filters are cleared or no filters are applied, the numbers indicator should be removed from the filters icon
– The indicator is shown if any number of filters is applied, regardless of whether the popover is open or not
– If the filters popover is closed and a guest switches from homes to experiences or vice versa, the number of filters indicator should reflect the correct number of filters – if applied – for the selected option (homes or experiences) on the main bar filters icon. For example, if experiences was select and 1 filer was applied, and a guest switches to homes, which has no filters applied, the indicator is removed
Select filters for experiences from the main search bar popover
As a guest, I want to select the experiences filters that I would like to apply from the main search bar popover, so that I can more efficiently search for experiences matching my specific needs
Acceptance criteria
– Given that the experiences option is selected from above the main search bar, and the filters popover is open, a guest can select/check or unselect/uncheck filter items to apply to the experiences search
Edge Cases
– Categories are sorted alphabetically
Select filters for homes from the main search bar popover
As a guest, I want to select the homes filters that I would like to apply from the main search bar popover, so that I can more efficiently search for homes matching my specific needs
Acceptance criteria
– Given that the homes option is selected from above the main search bar, and the filters popover is open, a guest can select/check or unselect/uncheck filter items to apply to the homes search
– The following filter items are available:
- Instant book only
- Price range
- Room type
- Entire place
- Private room
- Shared room
Edge Cases
– None
[Technical] Change date fields for the main search bar
Change the date fields’ labels/default text for the main search bar to be consistent between the website, mobile apps, and across homes and experiences
Acceptance criteria
– “Check In” is changed to “Start Date”
– “Check Out” is changed to “End Date”
Edge Cases
– None
[Technical] Add filters icon/button to the main search bar
Add a filters icon/button to the main search bar to be subsequently used for filtration scenarios of homes and experiences.
Acceptance criteria
– Icon/button added to the main search bar
– Icon/button designed to accept different inputs and ready behave differently according to the currently-selected option (homes or experiences)
Edge Cases
– Ideally, for future consideration, the icon/button should be designed and implemented in a more dynamic way to accept more options other than homes or experiences
Key Milestones
Weeks (Sprints) |
Stories |
Week/Sprint 1 |
– [Technical] Add filters icon/button to the main search bar – [Technical] Change date fields for the main search bar – Switch between homes and experiences from the main search bar |
Week/Sprint 2 |
– Open filter selection window from the main search bar – Select filters for homes from the main search bar popover |
Week/Sprint 3 |
– Select filters for experiences from the main search bar popover – Clear all selected filters from the main search bar popover – Show number of applied filters on the main search bar filters icon |