BAB 7 MEMECAHKAN PERMASALAHAN DENGAN TEKNIK COMPUTATIONAL THINKING


A.      
Berpikir Komputasional (Computational Thinking)

1.       Teori Komputasi

Komputasi bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritme. Hal ini ialah apa yang disebut dengan teori komputasi, suatu sub-bidang dari ilmu komputer dan matematika. Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan menggunakan pena dan kertas, atau kapur dan batu tulis, atau dikerjakan secara mental, kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah dilakukan dengan menggunakan komputer.

Teori komputasi dibagi lagi menjadi 3 ranting :

a.      Teori Otomata (automata theory)

Teori Otomata adalah teori mengenai mesin-mesin abstrak, dan berkaitan erat dengan teori bahasa formal. ada beberapa hal yang berkaitan dengan Otomata, yaitu Grammar. Grammar adalah bentuk abstrak yang dapat diterima (accept) untuk membangkitkan suatu kalimat otomata berdasarkan suatu aturan tertentu.

b.      Teori Komputabilitas (computability theory)

Teori komputabilitas bertujuan untuk memeriksa apakah persoalan komputasi dapat dipecahkan pada suatu model komputasi teoritis. Dengan kata lain, teori komputabilitas mengklasifikasikan persoalan sebagai dapat dipecahkan (solvable) atau persoalan yang tidak dapat dipecahkan (unsolvable). Teori kompleksitas bertujuan untuk mengkaji kebutuhan waktu dan ruang untuk memecahkan persoalan yang diselesaikan dengan pendekatan yang berbeda-beda.

c.       Teori Kompleksitas (computational complexity theory)

Teori kompleksitas mengklasifikasikan persoalan sebagai persoalan mudah (easy) atau persoalan sukar (hard).

2.      Pengertian Berpikir Komputasional

Pemikiran Komputasional adalah suatu proses pemikiran yang melibatkan suatu masalah dan mengekspresikan solusinya seperti cara berpikir layaknya komputer, yang bisa menyelesaikan secara efektif. Pemikiran komputasional adalah sebuah proses berulang yang terbagi menjadi 3 tahapan sebagai berikut :

a.      Formulasi masalah (abstraksi)

b.      Mengekspresikan solusi (otomatisasi)

c.       Mengeksekusi solusi dan mengevaluasi (analisis)

Menurut Jeannette M. Wing (2010:1) berpikir komputasional adalah proses berpikir yang terlibat dalam merumuskan masalah dan solusi mereka sehingga solusi tersebut dapat direprensentasikan selain itu juga dapat secara efektif dilakukan oleh alat pemrosesan informasi.

Computational thinking merupakan cara berpikir yang memungkinkan untuk menguraikan suatu masalah menjadi beberapa bagian yang lebih kecil dan sederhana, menemukan pola dalam masalah tersebut, serta menyusun langkah-langkah solusi mengatasi masalah.

Berpikir komputasi (computational thinking) adalah sebuah metode pemecahan masalah dengan berpikir mengaplikasikan/melibatkan teknik yang digunakan oleh software engineer dalam menulis program. Berpikir komputasi bukan berarti perpikir seperti komputer, melainkan berpikir tentang komputasi dimana seseorang dituntut untuk :

a.      Memformulasikan masalah dalam bentuk masalah komputasi

b.      Menyusun solusi komputasi yang baik (dalam bentuk algoritma) atau menjelaskan mengapa tidak ditemukan solusi yang sesuai.

Berdasarkan teori diatas, dapat disimpulkan bahwa berpikir komputasional adalah proses berpikir dalam pemecahan masalah dan menemukan solusinya, sehingga solusi tersebut dapat dipresentasikan.

3.      Karakteristik berpikir komputasi

a.    Mampu memberikan pemecahan masalah menggunakan komputer atau perangkat lain.

b.     Mampu mengorganisasi dan menganalisa data.

c.   Mampu melakukan representasi data melalui abstraksi dengan suatu model atau simulasi.

d.     Mampu melakukan otomatisasi solusi melalui cara berpikir algoritma.

e.    Mampu melakukan identifikasi, analisa dan implementasi solusi dengan berbagai kombinasi langkah / cara dan sumber daya yang efisien dan efektif.

f.        Mampu melakukan generalisasi solusi untuk berbagai masalah yang berbeda.

4.      Metode Berpikir Komputasional

Computational thinking adalah metode berpikr yang dipakai programmer ketika menuliskan program. Metode berpikir teserbut sebagai berikut :

a.      Decomposition

Dekomposisi merupakan tahap pertama dari computational thinking. Dekomposisi adalah kemampuan memecah data, proses atau masalah (kompleks) menjadi bagian-bagian yang lebih kecil atau menjadi tugas-tugas yang mudah dikelola.

Langkah-langkah dekomposisi yaitu :

1.       Identifikasi masalah

2.      Buat serta susun daftar komponen-komponen penyusun (utama)

3.      Buat serta susun daftar bagian-bagian kecilnya

4.      Buat rencana dalam menyelesaikan masalah tersebut sesuai urutan (algoritma)

5.      Selesaikan setiap bagian-bagian kecil hingga ke detail

b.      Patern Recognition (Pengenalan Pola)

Patern Recognition adalah kemampuan untuk melihat persamaan atau bahkan perbedaan pola, tren dan keteraturan dalam data yang nantinya akan digunakan dalam membuat prediksi dan penyajian data. Misalnya mengenali file dokumen, file sistem, file eksekusi atau struktur data/file.

c.       Abstraksi

Abstraksi adalah melakukan generalisasi dan mengidentifikasi prinsip-prinsip umum yang menghasilkan pola, tren, dan keteraturan tersebut. Misalnya dengan menempatkan semua file sistem di folder Windows, file program di folder Program Files, file data/dokumen di folder Mydocument dan file pendukung di drive/direktori terpisah.

d.      Algorithm Design

Algorithm Design adalah kemampuan mengembangkan petunjuk pemecahan masalah yang sama secara langkah demi langkah, tahapan demi tahapan sehingga orang lain dapat menggunakan langkah/informasi tersebut untuk menyelesaikan permasalahan yang sama.

Langkah-langkah dalam pemikiran algotirmik yaitu :

1.       Definisi masalah

2.      Pengembangan model

3.      Spesifikasi algoritma

4.      Merancang sebuah algoritma

5.      Memeriksa kebenaran algoritma

6.      Analisis algoritma

7.      Implementasi algoritma

8.     Pengujian program

9.   Persiapan dokumentasi