Computational Thinking

 

Pengertian Computational Thinking

·       Proses kognitif yang melibatkan penalaran logis di mana permasalahan di selesaikan melalui prosedur tertentu (Csizmadia et al, 2015)

·       Proses berpikir yang meliputi perumusan masalah dan Solusi, di mana Solusi direpresentasikan ke dalam bentuk yang secara efektif dapat dieksekusi oleh agent pengolahan informasi (Wing, 2010)

·       … yang solusinya dapat dinyatakan sebagai suatu algoritma atau langkah-langkah komputasi tertentu (Aho, 2012)

·       Bebras Indonesia, Berpikir Komputasi adalah metode berpikir untuk merumuskan permasalahan dan solusinya, sehingga Solusi tersebut secara efektif dapat dilaksanakan atau dieksekusi oleh agen pemroses informasi (komputer, robot, manusia) [Rahman dkk., 2021]

Kesimpulannya

Computational Thinking atau berpikir komputasi merupakan metode penyelesaian persoalan dengan menerapkan Teknik ilmu computer (Informatika).

 

Empat Fondasi Berpikir Komputasi

·       Dekomposisi : Memecahkan persoalan/permasalahan yang besar menjadi permasalahan-permasalahan kecil. Persoalan yang sulit apalagi besarakan menjadi mudah jika diselesaikan sebagian-sebagian secara sistematis.

·       Pengenalan pola persoalan : kemampuan untuk mengenal atau mengetahui persamaan dan perbedaan pola, tren, keteraturan data. Pengenalan pola bisa membantu kita dalam mengetahui prediksi suatu hal dan penyajian data.

·       Abstraksi : Menyarikan bagian penting dari suatu permasalahan dan mengabaikan hal-hal yang tidak penting

·       Algoritma : Menuliskan otomasi Solusi melalui berpikir algoritmik (langkah-langkah yang terurut) untuk mencapai suatu Tujuan

 

Dekomposisi

Dekomposisi : metode penyelesaian masalah yang dilakukan dengan cara memecah masalah yang kompleks menjadi lebih kecil 

Dekomposisi dalam Komputasi

Dalam Komputasi, dekomposisi adalah proses memecahkan suatu perkerjaan/tugas menjadi lebih kecil. Hal tersebut membantu kita untuk mengerjakan projek yang besar dan membuat proses pemecahan masalah menjadi lebih mudah untuk dikerjakan.

Contoh Beberapa Kasus Dekomposisi Dalam Berbagai Kasus Lain

1.    Perhitungan yang kompleks

Dalam kehidupan sehari-hari perhitungan yang kompleks merupakan hal yang sering ditemui. Misalnya bagaimana menghitung beban serta kekuatan rangka besi dan struktur beton yang dibutuhkan untuk gedung bertingkat?

1.    Membuat Produk baru

Bayangkan anda ingin membuat produk baru yang ingin dipasarkan secara luas. Sebagai contoh, Anda ingin membuat makanan ringan yang terbuat dari bahan kentang. Apa yang harus anda lakukan sehingga produk itu terwujud dan dapat diterima oleh masyarakat, Anda dapat melakukan dekomposisi untuk menyelesaikan masalah tersebut

·       Produk makanan ringan seperti apa yang akan dibuat?

·       Apa rasa yang akan diberikan?

·       Bagaimana cara memproduksinya?

·       Apa saja bumbu dan bahan yang perlu disediakan?

·       Apa packaging yang digunakan?

·       Siapa yang menjadi target pasarnya?

·       Apa strategi pemasaran yang dilakukan?

2.    Mengembangkan Perangkat Lunak

Membuat perangkat lunak sebenarnya kurang lebih seperti membuat produk baru. Meskipun ada hal yang membedakan. Ketika membuat suatu produk perangkat lunak, seorang programmer akan dihadapkan pada persoalan yang dapat dipecah menjadi permasalahan yang lebih kecil. Contohnya:

·       Untuk apa aplikasi akan digunakan?

·       Seperti apa tampilan dari aplikasi?

·       Siapa target penggunaan dari aplikasi tersebut?

·       Bagaimana tampilan grafis dari aplikasi?

·       Apakah diperlukan fungsi tambahan untuk audio?

·       Seperti apa audio yang dibutuhkan?

·       Tool pengembangan mana yang akan digunakan untuk membangun aplikasi

3.    Melakukan Perbaikan computer

Melakukan perbaikan merupakan satu contoh dari kegunaan metode dekomposisi. Sebagai contoh, Anda ingin bekerja dengan komputer yang tidak dapat dihidupkan. Bagaimana menentukan penyebab komputer tidak dapat dihidupkan dan cara memperbaikinya? Pertanyaan dekomposisi dapat menyelesaikan masalah anda.

·       Apakah sumber daya yang telah terhubung terpasang dengan benar?

·       Apakah kabel daya telah terpasang dengan baik?

·       Apakah powersupply berfungsi dengan baik?

·       Apakah memori komputer masih berfungsi dengan baik?

·       Apakah CPU masih berfungsi dengan baik?

·       Apakah motherboard masih berfungsi dengan baik?

4.    Dll



Pengenalan Pola

 

Jika anda mencermati dengan jeli segala sesuatu dalam hidup membentuk pola. Apa yang anda lakukan serta bagaimana anda berinteraksi. Ada aktvitas yang dilakukan membentuk pola harian, misalnya bangun pagi makan tiga kali sehari, dan minum pada jam tertentu hal itu merupakan pola hidup harian. Ada juga pola hidup. Bagaimana kita menyapa orang-orang berbeda itu juga pola.

 

Definisi sederhana: kemampuan untuk mengenal atau mengetahui persamaan dan perbedaan pola, tren, keteraturan data. Pengenalan pola bisa membantu kita dalam mengetahui prediksi suatu hal dan penyajian data.

 

Mengapa Pengenalan Pola itu Penting

 

Pattern Recognation itu penting karena tujuannya adalah mencari sesuatu yang sama/pola yang sama untuk memecahkan suatu permasalahan. Contoh: Mendeteksi email spam

Contoh Lain Penerapan Pengenalan Pola

·       Pola pergerakan arah angin untuk memprediksi datangnya badai

·       Pola pergerakan harga di bursa saham

·       Kelainan pada pola DNA

·       Menyelesaikan masalah dengan cara yang sama

·       Membandingkan suatu pola di suatu tempat dengan tempat lain

·       Pola kebiasaan bersosial media

·       Kesamaan dua masalah yang dapat diselesaikan dengan cara yang sama misalnya dalam bidang teknik

 Abstraksi

Pengertian Abstraksi: Menghapus detail untuk membuat sesuatu menjadi lebih simple dan menjadi lebih fokus


Dalam pemrograman, teknik abstraksi digunakan untuk menyembunyikan data atau informasi mengenai sebuah objek dari akses objek lain. Dengan metode ini data yang diakses oleh orang lain hanyalah data yang relevan bagi orang tersebut. Hal tersebut dilakukan atas dua alasa yaitu penyederhanaan dan keamanan. Dengan hanya mengakses data atau informasi yang relevan, karakteristik objek tampak lebih sederhana dan mudah untuk ditangani. Di lain pihak data lain yang disembunyikan tidak perlu diketahui karena tidak relevan dengan orang yang bersangkutan.

Dalam dunia nyata, metode abstraksi memungkinkan kita untuk fokus pada hal-hal yang relevan dengan persoalan yang sedang dihadapi. Sedangkan hal-hal yang tidak perlu diketahui atau dipertimbangkan dapat diabaikan. Jadi persoalan lebih fokus dan sederhana.

Contoh Abstraksi:

Google Maps

Kita memfilter  apa yang tidak kita butuhkan dan memilih apa yang kita butuhkan. 


Berpikir Algoritma

 

Algoritma adalah langkah-langkah untuk menyelesaikan masalah.  Algoritma merupakan starting point untuk membuat program komputer. Algoritma ini biasanya ditulis dalam bentuk flowchart atau pseudocode.

Hal-hal utama dalam Algoritma

·        Masalah: Permasalahan yang ingin diselesaikan oleh sebuah algoritma

·        Masukan: Contoh data atau keadaan yang diklasifikasi atau disaring untuk dijadikan variable dalam menemukan solusi

·        Keluaran: Bentuk akhir dari data atau keadaan setelah algoritma diimplementasikan

 Daftar Pustaka

·        Csizmadia, A., Curzon, P., Dorling, M., Humphreys, S., Ng, T., Selby, C., & Woollard, J. (2015). Computational Thinking: A Guide for Teachers. Computing At School

·        Wing, J. M. (2010). Computational Thinking: What and Why? Unpublished Manuscript, Pittsburgh, PA: Computer Science Department, Carnegie Mellon University.

·        Musthofa. (2021). Informatika untuk SMA Kelas X. Jakarta: Pusat Kurikulum dan Perbukuan Kementerian Pendidikan, Kebudayaan, Riset, dan Teknologi.

·        Rahman, E. F., Dewini, Qatharunnada, Z. T., & Riza, L. S. (2021). Teori dan Implementasi Computer Science Unplugged (CSU) : Untuk SMP,SMK/MA Sederajat. Bandung: UPI Press.

·        Prabawa, H.W. (2021). Slide Ajar Paradigma Berpikir Komputasi Universitas Pendidikan Indonesia Pertemuan 1-5. 



Komentar

Postingan populer dari blog ini

Pentingnya Mendapatkan Sertifikasi di Bidang IT/Sebagai Programmer

Pengantar Java Swing Bagian 1

Pengenalan UML