Context
Couchsurfing comes from the idea of friends sleeping on friends’ sofas when they need a place to stay. The term was originally linked to people who were semi-homeless. However, it has now expanded to be somewhat of a global movement, where travellers will stay on strangers’ sofas in order to make travelling more affordable and more “real”. Indeed, travellers stay for free all over the world with individuals who offer their hospitality by lending their sofa, a mattress on the floor or a corner of their lawn to pitch a tent, etc. The goal is to be able to share the daily life of its guests for a short stay and to benefit from their advice.
Hosting people first gives you the chance to see if sharing the space with a new friend is something you’re comfortable with before starting your own journeys.
It also gives the person staying with you a chance to let everyone know what a great host you were, via reviews left on your profile, which makes people much more willing to host you and let everyone know. community members feel safe.
Project
The objective here is to design, in a simplified way, the interactions mentioned above through a database, representing the app’s website information system.
Approach
The database will be designed using the entity–relationship model.
Process
Conceptual data model
Figure 1. Conceptual data model.
Logical data model
Results
Naturally, I want to see how effective my design was to exploit the database, so I queried it in order to know:
1) Calculate the number of municipalities in Ile-de-France
2) List the hosts who have a rather clean accommodation (top score 5 out of 10)
3) Find the host with the highest rating. Do the same with the guest.
4) List the types of accommodation in alphabetical order according to their Insee code
5) In which municipalities are they located?
6) Has anyone had their application turned down? If so why?
7) If I want to visit Corsica at the beginning of September and I want to stay there for 1 week, do I have any chance of going to sleep with the locals?
8) By displaying the profiles of the hosts, calculate the average of the scores of all the criteria qualifying the host and compare it to his own score.
Wanna know the answers? Have a look at the following link where you will find the answers as well as the database script.