Saat mendengar istilah computational thinking, sebagian orang mungkin akan langsung berpikir mengenai programming. Kenyataannya, computational thinking atau teknik berpikir komputasional bukanlah tentang pemrograman semata. Ia merupakan pendekatan problem solving yang banyak digunakan dalam lintas bidang, mulai dari sains, teknologi, bisnis, pendidikan, kesehatan, hingga ilmu sosial. Ada empat teknik berpikir komputasional, antara lain, decomposition, pattern recognition, abstraction, dan algorithm. Yuk, kita bahas sama-sama!
Computational thinking telah menjadi trending topic dalam riset mengenai pendidikan dan praktik pengajaran sejak beberapa dekade terakhir. Dalam laporan Google for Education yang berjudul Future of the Classroom, tim riset Google telah mengidentifikasi computational thinking sebagai salah satu dari 8 emerging trends in K-12 education. K-12 education merupakan sistem pendidikan di beberapa negara termasuk Amerika, setara SD hingga SMA di Indonesia.
Dalam laporannya, tim riset Google menyebutkan bahwa 92% pekerjaan masa depan membutuhkan keterampilan digital dan 45% pekerjaan tersebut membutuhkan kandidat yang dapat bekerja dengan baik menggunakan teknologi dan sistem digital. Selain itu, pekerjaan yang berkaitan dengan Science, Technology, Engineering, Math (STEM) telah tumbuh sebanyak 79% sejak 1990 dan diperkirakan akan terus meningkat di masa yang akan datang. Untuk merespons tantangan ini, berbagai negara telah memasukkan computational thinking ke dalam kurikulum pengajaran siswa di sekolah.
💻 Mulai Belajar Pemrograman
Belajar pemrograman di Dicoding Academy dan mulai perjalanan Anda sebagai developer profesional.
Daftar SekarangLalu, apa sebenarnya skill computational thinking? Mengapa ia begitu dibutuhkan hingga disebut sebagai keterampilan literasi baru abad 21? Simak penjelasan berikut!
Apa itu Computational Thinking
Computational thinking atau teknik berpikir komputasional adalah pendekatan problem solving yang memanfaatkan ide dan konsep ilmu komputer. Ia merupakan proses berpikir yang merepresentasikan masalah dan solusi sebagai langkah komputasi.Â
Sederhananya, computational thinking merupakan aktivitas yang menggunakan konsep ilmu komputer untuk merumuskan masalah dan mendapatkan solusi. Solusi tersebut nantinya dapat dieksekusi baik oleh manusia maupun komputer. Memahami teknik berpikir komputasional akan memberimu fondasi untuk menyelesaikan masalah yang merupakan salah satu kemampuan penting dalam menghadapi tantangan di era digital.Â
Pada tahun 2006, Jeanette M. Wing menulis artikel yang meng-highlight computational thinking sebagai metode dan keterampilan universal yang dapat digunakan oleh semua orang. Wing memiliki visi bahwa setiap orang (bukan hanya mereka yang berkecimpung di bidang ilmu komputer), dapat memperoleh manfaat dari berpikir secara komputasi.Â
Studi Kasus Computational Thinking
Untuk lebih memahami tahapan penyelesaian masalah dengan cara berpikir komputasional, mari kita bahas dengan satu contoh studi kasus. Tidak akan jauh-jauh, mari kita mulai studi kasus ini dengan permasalahan yang mungkin sering kita hadapi sehari-hari.Â
Bayangkan kamu adalah seorang fresh graduate yang sedang mencari kerja. Kamu telah memasukkan lamaran ke beberapa perusahaan dan sedang menanti panggilan interview. Pada suatu senja yang gerimis, di teras depan rumahmu di Jogja, kamu tengah bersantai sambil menikmati es kopi susu dan kue bolu buatan Ibu. Tiba-tiba, dua email masuk dalam waktu hampir bersamaan. Keduanya mengabarkan panggilan interview pada hari yang sama, lusa, di Jakarta. Hanya waktunya saja yang berbeda, satu interview di pagi hari, satunya lagi sore hari. Apa yang akan kamu lakukan?
Mari kita urai permasalahan tersebut dengan tahapan-tahapan computational thinking.Â
Ada empat tahap pemecahan masalah dengan teknik berpikir komputasional, yaitu decomposition (memecah masalah menjadi bagian kecil dan sederhana), pattern recognition (pengenalan pola), abstraction (identifikasi data dan informasi), dan terakhir algorithm (pengembangan langkah solusi).Â
Hal yang perlu diingat saat memecahkan masalah dengan computational thinking, tidak semua tahapan harus dilalui. Misalnya, jika permasalahan yang kita hadapi tidak begitu kompleks, kita bisa lewati tahap decomposition.
Sebelum memulai, mari tentukan dulu tujuan yang ingin dicapai. Dalam kasus ini, tentunya kamu ingin dapat menghadiri kedua sesi interview di Jakarta dengan tepat waktu.
Decomposition
Pada tahap ini, kamu memecahkan masalah kompleks menjadi bagian kecil dan sederhana. Jika diperhatikan lebih lanjut, permasalahanmu ada dua. Pertama, terkait jarak atau lokasi dari Jogja ke Jakarta. Kedua, terkait waktu interview di kedua perusahaan pada hari yang sama.
Untuk permasalahan pertama, kamu bisa mulai dengan menentukan moda transportasi apa yang akan kamu gunakan ke Jakarta. Misalnya, kamu akan menggunakan kereta dengan pertimbangan kenyamanan dan biaya yang lebih terjangkau.
Kemudian, kamu juga bisa uraikan tahapan perjalanan dari Jogja ke Jakarta kurang lebih dengan membaginya menjadi seperti berikut.
Lalu, untuk permasalahan kedua, karena selisih waktu kedua interview tersebut cukup lama dan jarak kantornya kebetulan berdekatan, kamu merasa masih bisa mengikuti keduanya. Jadi ini bukan merupakan masalah yang kompleks.
Pattern Recognition
Pada tahap ini, kamu akan mencari pola atau kesamaan dalam permasalahanmu. Menemukan pola akan membuat solusi menjadi lebih mudah dilakukan, terutama jika polanya berulang. Sebagai contoh, kamu dapat mengidentifikasi bahwa perjalanan dari Rumah ke Stasiun Tugu Jogja, dari Stasiun Gambir ke kantor 1, dan dari kantor 1 ke kantor 2 dapat kamu tempuh menggunakan moda transportasi ojek online.Â
Data Representation and Abstraction
Pada tahap ini, kamu akan melakukan generalisasi dan identifikasi data atau informasi. Dengan cara ini, kita dapat melihat informasi penting dan mengabaikan informasi yang kurang relevan. Sebagai contoh, pada tahap ini, kamu mengidentifikasi kapan saja jadwal keberangkatan kereta dari Jogja ke Jakarta, kemudian menentukan mana yang cocok dengan jadwal interview.Â
Algorithm
Setelah ketiga tahap terlewati, kamu menentukan tahapan apa saja yang harus dilakukan agar sampai di Jakarta tepat waktu. Sebagai contoh, kamu perlu menentukan alur perjalanan seperti berikut.
Bagaimana, seru kan?Â
Sampai di sini, kamu telah mengetahui cara menerapkan computational thinking untuk memecahkan permasalahan pada studi kasus sederhana di atas. Dalam penerapannya, kamu mungkin akan mengalami beberapa kendala atau permasalahan lain. Misalnya, tiket kereta habis pada tanggal keberangkatan sehingga kamu perlu mempertimbangkan moda transportasi lain atau kemacetan yang melanda saat kamu akan berangkat ke kantor 2. Kamu bisa mengantisipasi hal ini dengan membuat perencanaan yang matang dan menerapkan teknik berpikir komputasional seperti yang telah kita bahas sebelumnya.
Dalam era digital, pemecahan masalah dengan teknik berpikir komputasional tentu sangat dibutuhkan. Ia akan membantu kita menemukan solusi berbagai permasalahan, bahkan yang kompleks sekalipun. Namun, berpikir komputasional tidak hanya dapat digunakan untuk permasalahan kompleks maupun permasalahan yang berakhir dengan pemrograman. Kita juga bisa menerapkannya pada permasalahan yang kita hadapi sehari-hari. Jadi, kamu tidak perlu menjadi ilmuwan komputer untuk dapat berpikir seperti ilmuwan komputer!