Present perfect with "sein"

The present perfect is usually made from the auxiliary verb haben and the past participle. However, certain verbs are not used with haben, but with sein.

Verbs that form the present perfect with sein are  …

... verbs that express movement in a particular direction or a change of location, e.g. gehen, fahren, fliegen, schwimmen and reisen.
schwimmen: Wir sind im See geschwommen.

... verbs that indicate a change of state or describe an event that one cannot control, e.g. einschlafen, aufwachen and passieren.
einschlafen: Ich bin am Samstag spät eingeschlafen.
aufwachen: Am Sonntag bin ich erst um 11:00 Uhr aufgewacht.

... the verbs sein, bleiben and werden.
sein: Wir sind in der Nähe von Hamburg gewesen. (But as you already know, the verb sein is normally used in the simple past if you want to express something that happened in the past.)
bleiben: Wir sind drei Tage bei meinem Onkel geblieben.
werden: Am Anfang war es sonnig, aber dann ist das Wetter immer schlechter geworden.

Verbs that form the present perfect with haben are …

... all other verbs (especially verbs that can have an accusative object, e.g. machen)
machen: Wir haben einen Spaziergang gemacht.