Present perfect tense merupakan salah satu tenses dalam Bahasa Inggris yang menggambarkan aksi tertentu yang dilakukan oleh subjek di masa kini. Aksi tersebut artinya sudah dimulai di masa lalu. Present perfect tense adalah bentuk waktu gabungan dari keadaan di masa lampau dan masa kini. Tenses ini digunakan untuk surat menyurat, berita di surat kabar, radio, televisi bahkan dialog sehari โ hari.
Present Perfect Tense

- Rumus Atau Pola Kalimat
Kalimat Positif : S + have/has + past participle (verb 3)
Kalimat Negatif : S + have/has + not + past participle (verb 3)
Kalimat Interogatif : have/has + S + past participle (verb 3)
Dalam penggunaannya, present perfect mempunyai banyak frasa berupa keterangan waktu untuk menjelaskan kegiatan atau situasi di masa lalu namun masih tetap berkaitan dengan masa kini. Frasa โ frasa tersebut seperti : just (baru saja), for (selama), since (sejak), lately/recently (akhir โ akhir ini), this morning (pagi ini), since (sejak), dan masih banyak lagi.
- Contoh Kalimat Present Perfect Tense
(+) Rickjaksan has just given up his scholarship.
(-) Rickjaksan has not given up his scholarship
(?) Has Rickjaksan just given up his scholarship ?
- Contoh Soal Present Perfect Tense Beserta Pembahasannya
- ….. a noise just then?
- Have you heard ? b. Do you hear? c. Did you hear? ย ย ย ย d. Have you been hearing?

Jawaban : A
Pembahasan :
Kalimat lengkap dari soal ini yaitu โHave you heard a noise just then?โ Jawaban (c) salah karena โdidโ berarti peristiwa yang sudah terjadi kemarin dan tidak terjadi di masa kini. Sedangkan pilihan jawaban โdo you hearโ berarti pertanyaan ini mengacu pada kejadian yang berulang โ ulang. Padahal, di soal terdapat kata โjustโ yang berarti โbaru sajaโ sehingga jawaban ini salah.
Untuk jawaban โhave you been hearingโ juga tidak tepat karena mempunyai arti โapakah kamu sedang mendengarkan musik sampai sekarang dan belum usai sampai sekarang dan di waktu mendatang ?โ. Penggunaan simple perfect tense yaitu untuk aksi atau kegiatan yang baru saja selesai dilakukan dan tidak terjadi seterusnya. Sehingga jawaban yang tepat adalah A.
- They are dancing and singing because their uncle . . .
- is arriving b. has arrivedย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย c. arrivesย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย d. Arrived
Jawaban : B
Pembahasan :
Arti dari kalimat ini yaitu mereka sedang menari dan bernyanyi karena paman mereka sudah datang. Mengapa jawabannya tidak (c) atau (d)? Alasannya karena penjelasan pada nomor 1. Jawaban (c) yaitu โarrivesโ berarti menyatakan suatu kejadian yang terjadi berulang โ ulang. Sedangkan jawaban (d) ditujukan untuk kejadian yang terjadi di masa lampau.
- The children haveโฆโฆeaten their breakfast.
- yetย ย ย b.ย beenย ย ย c.ย sinceย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย d.ย just
Jawaban: D
Pembahasan :
Kalimat yang tepat dari soal tersebut adalah โThe childrenย have just eatenย their breakfast. Artinya yaituย โAnak-anak baru saja sudah makan pagiโ. Apabila jawaban (b) yang dipilih maka kalimatnya akan menjadi โThe childrenย have been eatingย bukanย have been eaten.
Sedangkan jawaban (a) โsinceโ hanya berupa keterangan waktu, padahal disini masih membutuhkan kata kerja. Misalnya, I have lived in Jogja since 2000. Jawaban (c) โyetโ juga kurang tepat karena digunakan di kalimat negatif dan kalimat tanya dan biasanya digunakan di akhir kalimat. โYetโ artinya belum sampai saat ini. Sehingga, jawaban yang tepat adalah D (just)
- Mr. Efendiโฆ. in Bali for a week.
- hasย ย b.ย havingย ย ย c.ย beenย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย d.ย has been
Jawaban: D
Pembahasan :
Kalimat dari soal tersebut yaitu : โMr. Efendiย has beenย in Bali for a weekโ. Artinya, ย Bapak Efendi sudah di Bali selama 1 minggu. Jawaban (a) kurang tepat karena sebelum โbeenโ digunakan maka harus ada kata kerja bantu berupa โhave/hasโ. Sedangkan jawaban (b) menggunakan kata โhavingโ yang juga belum tepat digunakan sebagai jawaban karena kurang โto beโ.
Jawaban (c) juga kurang tepat karena hanya ada kata โhasโ dimana berfungsi sebagai kata bantu. Untuk jawaban yang lebih tepat, maka dibutuhkan kata kerja bantu (auxiliary verb) dan past participle. Kalimat tersebut bisa menjadi โHe has cleaned the shoesโ artinya โDia telah membersihkan sepatuโ. โcleanedโ adalah kata kerja dan โhasโ sebagai kata kerja bantu.
ย
ย