Anda di halaman 1dari 32

BAB 4

MEMECAHKAN PERMASALAHAN DENGAN


TEKNIK COMPUTATIONAL THINKING

Kompetensi Dasar :
CT untuk persoalan komputasi yang lebih kompleks dari sebelumnya Menyelesaikan persoalan komputasi
yang mengandung jejaring, pola, algoritmik.
Tujuan Pembelajaran :
Menyelesaikan persoalan komputasi yang lebih kompleks dari sebelumnya Menyelesaikan persoalan
komputasi yang mengandung jejaring, pola, algoritmik.

PETA KONSEP

PENDAHULUAN

Teori Komputasi
dan Komputasi
Modern

Computational Thinking / pemikiran komputasi

adalah cara pemecahan masalah, merancang sistem, dan memahami perilaku manusia dengan memanfaatkan
ilmu komputer.

Digunakan pertama kali oleh Seymour Aubrey Paper (pengajar /peneliti/ilmuwan) di


Massachusette institute technology (MIT) tahun 1980.
Dipopulerkan kembali oleh Jeanette Merie Wing (ilmuwan) di Columbia University tahun 2006

Menurut Jeanette,
1. Berpikir komputasi adalah ketrampilan mendasar bagi semua orang, bukan hanya ilmuwan
komputer, dan pentingnya mengintegrasikan gagasan komputasi ke dalam displin ilmu lain.
2. Berpikir komputasi adalah proses berpikir yang terlibat dalam merumuskan masalah dan
solusinya , sehingga solusi diwakili dalam bentuk yang efektif dilakukan agen pengelola informasi.

A. COMPUTATIONAL THINKING (Berpikir Komputasi)


Pengertian
Sebelum mengaplikasikannya kita harus mengetahui arti pemikiran komputasional. Pemikiran
Komputasional adalah proses yang melibatkan pemikiran, menemukan masalah, dan menyatakan
solusinya seperti cara berpikir layaknya komputer, yang bisa menyelesaikan secara efektif.
Pemikiran Komputasional adalah proses yang berulang-ulang yang terbagi menjadi 3 tahapan:

a. Formula masalah (abstraksi).


b. Menyatakan solusi (otomatisasi).
c. Mengeksekusi solusi dan mengevaluasi ( analisis).

Computational Thinking (CT) adalah pendekatan dalam proses pembelajaran.


a. CT berperan penting dalam pengembangan aplikasi komputer dan pemecahan masalah di
semua disiplin ilmu.
b. CT yang diterapkan dalam kurikulum dapat melihat hubungan antar mata pelajaran dan antar
kehidupan didalam dan diluar kelas.
Tahun 2014, pemerintah inggris memasukkan materi pemrograman kedalam Kurikulum
SD dan menengah untuk mencetak programmer secara masif (untuk mengenalkan CT sejak dini ke
siswa). Dan dipercaya dapat membuat siswa lebih cerdas dan lebih cepat memahami teknologi.
Selain Inggris, lembaga non profit amerika code.org menyelenggarakan acara promosi
manfaat pemrograman. Mulai dari Computer Science Education Week untuk anak sekolah dan Hour
of Code yang didukung oleh Bill Gates, Mark Zuckerberg, Jack Dorsey, Will I am dan Black Eyes Peas.
Google juga mendukung CT untuk menfasilitasi Guru yang merupakan kecakapan abad 21 yang
harus dikuasai oleh siswa melalui kursus online.
Di berbagai negara , CT diintegrasikan ke semua mata pelajaran dengan memasukkan CT
sebagai mata pelajaran wajib dalam kurikulum mereka.

CT mengajak anak untuk mempertanyakan hal berikut :


1. Bisakah masalah diselesaikan dengan lebih mudah oleh manusia atau komputer?
2. Adakah pola antara masalah ini dan masalah serupa yang telah diatasi sebelumnya?
3. Bagaimana cara mengatur data untuk memecahkan masalah ini?
4. Bagaimana saya membuat solusi umum yang berfungsi untuk rentang input?
5. Apa prosedur langkah demi langkah yang bisa diartikulasikan untuk menyelesaikan
masalah ini?
6. Strategi komputasi apa yang mungkin digunakan?
7. Apa saja pertukaran, dan kendala yang terkait dengan penyelesaian masalah ini?
Beberapa Hal untuk belajar CT :
1. Berpikir adalah kemampuan yang dapat dilatih, begitu juga CT
2. Dengan mengajak anak latihan memecahkan persoalan terkait informatika, dengan soal menarik
yang merepresentasikan kehidupan sehari-hari.
3. Soal yang sama bisa diulang untuk SD, SMP, SMA/SMK dengan tingkat kesulitan yang meningkat.
Dengan pemikiran komputasi, siswa dapat menerapkan masalah teknis dan non teknis dengan :
1. Menerapkan strategi komputasi seperti membagi dan menaklukkan domain apapun.
2. Mencocokkan alat dan teknik komputasi suatu masalah.
3. Menerapkan komputasi untuk penggunaan baru.
4. Mengakui kesempatan untuk menggunakan perhitungan dengan cara baru
5. Memahami kekuatan dan keterbatasan alat dan teknik komputasi.
Tujuan Berikir Komputasi :
Untuk menyelesaikan masalah seputar ilmu komputer dan beragam masalah.
Seperti Machine Learning : mengubah ilmu statistika dimanfaatkan. Dan dalam bidang biologi, Data
mining dapat mencari sejumlah besar data untuk menemukan pola pola.
Penerapan dalam kehidupan sehari-hari : seseorang sebelum berangkat kerja, mempersiapkan
barang yang akan digunakan sepanjang hari didalam tasnya (prefetching dan caching).
Bayangkan jika seseorang kehilangan bolpoin dan mengusutnya kembali langkah-langkahnya ke
belakang (back tracking).
CT melatih otak untuk terbiasa berpikir secara logis, terstuktur, dan kreatif.
2. Metode Computational Thinking (CT)
a. Decomposition

Merupakan tahap pertama dari CT.


Dekomposisi menurut kamus besar bahasa Indonesia memiliki arti proses perubahan
menjadi bentuk yang lebih sederhana/ penguraian. CT ini berarti proses pemecahan masalah
menjadi bagian-bagian kecil yang lebih sederhana dan membuat kita lebih mudah dalam
menyelesaikan suatu masalah.
Dekomposisi adalah kemampuan memecah data, proses/masalah menjadi bagian yang lebih
kecil atau menjadi tugas yang lebih mudah dikelola.
Fungsi Dekomposisi : membantu memecahkan masalah yang kompleks karena dengan
membagi bagi masalah sesuai dengan lingkupnya kita dapat mengetahui asal sumber masalah
sehingga dapat lebih mudah menganalisa suatu alternatif dari masalah tersebut. Misalnya
memcah drive/directory dalam sebuah komputer berdasarkan komponen penyusunnya : file
dan directory.
Langkah –langkah dalam Dekomposisi Sbb :
1. Identifikasi masalah utama.
2. Buat serta susun daftar komponen –komponen penyusun (utama).
3. Buat serta susun daftar bagian – bagian kecilnya.
4. Buat rencana dalam penyelesaian masalah tersebut sesuai urutan (algoritma).
5. Selesaikan setiap bagian-bagian kecil hingga detail.
b. Pattern Recoqnition

Adalah proses untuk mengenali pola/kesamaan umum dari masalah-masalah lain dengan
masalah yang ditemukan dari proses dekomposisi. Pengenalan pola ini akan membantu dalam
menentukan alternatif penyelesaian dari masalah yang dihadapi itu karena ada contoh
masalah yang telah diselesaikan. Contoh : pola file dokumen, file sistem, file execution atau
struktur data/file.
Tujuan Pengenalan pola :
1. dapat memprediksi hal yang akan terjadi setelahnya
2. Membuat sebuah aturan khusus
3. Memudahkan memecahkan masalah dengan pola yang hampir sama.

Cara menemukan pola :


1. Mencari hal-hal yang sama pada setiap masalah.
2. Membentuk gagasan tentang yang kita harapkan
3. Dengan semakin banyak melihat
4. Menggunakan kemampuan berpikir komputasi lainnya untuk membantu
memahami kepentingannya.
Metode pengenalan pola :
1. Sintaks : pendekatan dengan menggunakan aturan-aturan tertentu
2. Statistik : pendekatan dengan menggunakan data-data yang berasal dari statistik
3. Jaringan syaraf tiruan : Gabungan dari metode Sintaks dan Statistik. Mengenali
objek dari ciri-ciri fisik yang jelas kemudian mengambil kesimpulan berdasarkan data
statistik. Metode ini meniru cara kerja otak manusia.
Cara untuk menerapkan pattern recoqnition dalam pola pikir menyelesaikan
masalah:
1. Berlatih menentukan dan mengingat pola yang pernah didapat pada penyelesaian
masalah yang pernah dihadapi.
2. Selalu menentukan dan menggunakan pola yang sama apabila mendapat
masalah yang baru
3. Menyelesaikan masalah dengan menggunakan pola yang telah
diketahui dan ditentukan.
c. Abstraksi

Menurut KBBI (kamus besar bahasa Indonesia) Abstraksi merupakan proses atau
perbuatan pemisahan.
Dalam CT, Abstraksi adalah salah satu metode berpikir yang dipakai programmer ketika
menulis program. Metodenya berupa generalisasi dan mengidentifikasi prinsip- prinsip
umum yang menghasilkan pola, tren dan keteraturan tersebut. Metode ini membutuhkan
kemampuan menyaring informasi yang dibutuhkan, memilah informasi yang kompleks
menjadi lebih sederhana dan membuat informasi lebih bersifat general sehingga
memudahkan menjelaskan ide. Contoh : menentukan posisi di bumi dapat digeneralisasi
dengan menggunakan titik koordinat bujur dan lintang.

Dalam mengabstraksi data, kemampuan kita untuk menginterprestasikan data


dengan konteks masalah sangat dibutuhkan.
Contoh : bila kita disuruh untuk menggambar seekor kucing, dalam pengenalan pola kita
melihat masalah karena harus menggambar serangkaian kucing. Lalu kita mencatat bahwa
semua kucing memiliki karakteristik umum yang dimiliki semua kucing misal mata, ekor dan
bulu. Selain itu, setiap kucing memiliki ciri khas : bulu hitam, ekor panjang dan mata cokelat.
Rincian ini dikenal sebagai spesifik.
Dari karateristik umum kita bisa membangun ide dasar seekor kucing yaitu seperti apa kucing
pada dasarnya dengan itu kita bisa menggambar kucing dasar.
Langkah – langkah proses abstraksi :
1. Mengumpulkan sub masalah dari hasil dekomposisi.
2. Menentukan skala kebutuhan, seberapa besar dampak dari sub masalah itu terhadap
masalah kompleks.
3. Menghilangkan submasalah yang memiliki skala kebutuhan yang tidak terlalu penting
hingga penting.
d. Algoritm Design

Algoritma sering digunakan untuk perhitungan, penalaran otomatis hingga pemrosesan data.
Sehingga merupakan pilihan dari berbagai metode CT yang ada dan sangat mudah diterapkan
terhadap peserta didik, karena algoritma mudah didesain dan dipahami contoh : penggunaan
skema/flowchart/diagram alur.
Dalam menulis algoritma membutuhkan perencanaan yang panjang agar dapat berfungsi
dengan benar. Solusi yang ditawarkan komputermu sebaiknya algoritma yang kamu tulis. Jika
algoritmanya tidak bagus, maka solusi kamu juga tidak akan bagus.
Algorithm Design adalah : kemampuan mengembangkan pemecahan masalah yang sama
secara langkah demi langkah sehingga orang lain dapat menggunakan informasi tersebut untuk
menyelesaikan masalah yang sama. Misalnya jika ingin membuat secangkir teh maka kamu
akan menggunakan gelas, menyiapkan air mendidih, tuangkan air mendidih itu ke dalam ge las,
taruh gula kemudian mengaduknya sampai rata agar teh itu menjadi manis saat diminum.

Tiga hal utama dalam mendefinisikan analisis algoritma :


1. Masalah : masalah yang ingin diselesaikan
2. Masukan : data/ keadaan yang disaring, dapat menjadi variabel variabel untuk
menemukan jalan keluar dari sebuah masalah.
3. Keluaran : bentuk akhir data/keadaan setelah algoritma diimplementasikan ke masukan.
Keluaran merupakan hasil ideal yang diinginkan dan dianggap telah menyelesaikan
masalah/ menemukan solusi yang tepat.
Pada ilmu komputer, algoritma harus memenuhi ketentuan sbb:
1. Memiliki data/lebih untuk mengoperasikannya
2. Menghasilkan paling sedikit satu hasil pasti
3. Berhenti setelah sejumlah langkah telah dikerjakan
Langkah –langkah dalam pemikiran algoritma agar berjalan efisien :
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

3. Karakteristik Computational Thinking

CT memiliki beberapa karakteristik sbb :


a. Mampu memberikan pemecahan masalah menggunakan komputer / perangkat lain Berpikir
komputasi ditujukan untuk menyelesaikan masalah , bukan hanya masalah ilmu komputer
tetapi juga beragam masalah. Machine Learning misalnya telah mengubah bagaimana ilmu
statistika dimanfaatkan.
b. Mampu mengorganisasi dan menganalisis data
Dalam mengelompokkan dan menganalisis data harus dengan dasar yang relevan agar bisa
dipertanggungjawabkan. Analisi bertujuan untuk menyusun data dalam cara yang bermakna
sehingga dapat dipahami.
c. Mampu melakukan representasi data melalui abstraksi dengan suatu model atau
simulasi
Proses mengenali dan memusatkan perhatian pada karakterisitik penting dari situasi/objek dan
membiarkan/menyaring karakteristik yang tidak diinginkan dari situasi tersebut.
d. Mampu melakukan Otomatisasi Solusi melalui cara berpikir algoritma
Berpikir secara komputasional dapat membuat kita lebih teliti dan mempersingkat waktu
pengerjaan suatu masalah. Untuk itu sangat dibutuhkan oleh seluruh aspek masyarakat. Selain
itu CT dapat meningkatkan kemampuan menganalisis masalah, memutuskan sebuah tindakan
dan dapat meningkatkan kemampuan untuk mempertimbangkan semua dampak yang terjadi
jika kita mengambil sebuah keputusan, serta dapat meningkatkan kreativitas dalam
menemukan solusi dari suatu masalah.
e. Mampu melakukan identifikasi, analisis, dan implementasi solusi dengan berbagai
kombinasi langkah/cara dan sumber daya yang efisisen dan efektif
Identifikasi berasal dari kata identify yang artinya meneliti, menelaah. identifikasi adalah
kegiatan mencari, menemukan, mengumpulkan, meneliti, mendaftarkan, mencatat data dan
informasi.

Fungsi dan tujuan identifikasi :


1. mengetahui berbagai masalah yang terjadi.
2. Mengetahui berbagai sumber yang dapat dimanfaatkan untuk mendukung
pelaksanaan program
3. Mempermudah dalam menyusun rencana program yang akan dilaksanakan.
Analisis merupakan suatu usaha dalam mengamati secara detail suatu hal /benda dengan cara
menguraikan komponen –komponen pembentuknya/ menyusun komponen tersebut untuk
dikaji lebih lanjut. Tahap analisis ini dilakukan setelah kita mendapat inti dari masalah tersebut
(setelah melakukan identifikasi) sehingga kita mengkaji lebih lanjut dari inti masalah tersebut.
Imlementasi adalah penerapan/pelaksanaan. Artinya yang dilaksanakan dan diterapkan adalah
rencana yang telah didesain/dirancang untuk kemudian dijalankan sepenuhnya. Jika
diibaratkan sebagai rancangan bangunan yang dibuat oleh insinyur tentang rancangan rumah
pada kertas kalkirnya. Maka impelemntasi yang dilakukan oleh para pekerja adalah rancangan
insinyur tersebut dan tidak mungkin jika tidak sesuai rancangan, apabila yang dilakukan oleh
para pekerja tidak sama dengan hasil rancangan, akan terjadi masalah besar dengan bangunan
yang telah dibuat.
Kesimpulannya bahwa memecahkan masalah dengan mengidentifikasi, menganalisis dan
implementasi harus ada computational thinking (CT). Karena dengan adanya karakteristik
tersebut menyatakan bahwa dalam mengatasi masalah kita harus mencari inti dari
permasalahan itu dulu, kemudian mengulasnya lebih dalam sehingga bisa merancang solusi
untuk persoalan tersebut. Sehingga akhirnya mengerti apa yang harus dilakukan untuk
memecahkan masalah tersebut.
f. Mampu melakukan generalisasi solusi untuk berbagai masalah yang berbeda
Generalisasi adalah proses mengidentifikasi sebuah bagian dari keseluruhan. Bagian bagian
yang sama sekali tidak terkait dapat disatukan sebagai satu kelompok, dan bagian yang penting
dapat dijadikan kelompok juga. Lalu keduanya dibandingkan dan dilihat relasi antara keduanya.
4. Keuntungan Computational Thinking

a. Percaya diri dalam berhadapan dengan kompleksitas masalah yang lebih besar dan
leih sulit.
b. Toleransi terhadap ambiguitas.
c. Mampu berhubungan dengan masalah yang open-ended.
d. Mampu berkomunikasi dan bekerjasama untuk mencapai tujuan yang sama.
B. Pemetaan Permasalahan dan Solusi dengan Komputasi
Apapun masalah yang kamu hadapi, beberapa langkah mendasar yang menjadi panduan sbb:
- Identifikasi masalahnya.
- Tentukan masalahnya.
- Periksa pilihannya.
- Bertindak dalam sebuah rencana.
- Lihatlah konsekuensinya.
1. Mengevaluasi Masalah
a. Mengklarifikasi sifat suatu masalah
b. Merumuskan pertanyaan.
c. Mengumpulkan informasi secara sistematis.
d. Mengumpulkan dan mengatur data.
e. Meringkas informasi.
f. Mendefinisikan tujuan yang diinginkan.
2. Mengelola Masalah
a. Menggunakan informasi yang dikumpulkan secara efektif.
b. Memecah masalah menjadi bagian yang lebih kecil dan lebih mudah diatur.
c. Menggunakan teknik seperti brainstorming dan pemikiran lateral untuk
mempertimbangkan pilihan.
d. Menganalisis pilihan ini secara lebih mendalam.
e. Mengidentifikasi langkah-langkah yang bisa ditempuh untuk mencapai tujuan.
3. Pengambilan Keputusan
a. Memutuskan antara pilihan yang mungkin untuk tindakan apa yang harus diambil.
b. Memutuskan informasi lebih lanjut untuk dikumpulkan sebelum mengambil tindakan.
c. Menentukan sumber daya ( waktu, pendanaan, staf dan lain-lain) untuk
dialokasikan untuk masalah ini.
4. Menyelesaikan Masalah
a. Menerapkan tindakan.
b. Memberikan informasi kepada pemangku kepentingan lainnya; mendelegasikan tugas.
c. Meninjau kemajuan.
5. Meneliti Hasilnya
a. Pemantauan hasil tindakan yang dilakukan.
b. Mengkaji ulang masalah dan proses pemecahan masalah untuk menghindari situasi serupa di
masa depan.
Seseorang dikatakan sudah berpikir secara computational thinking jika pada penerapan kehidupan
sehari-hari sudah bisa menerapkan metode CT dalam memecahkan masalah. Contohnya dalam
hal prakiraan cuaca, jika orang sekarang tinggal di zaman dulu, maka orang itu dikatakan hebat /
dewa jika bisa memprediksi kondisi cuaca, tetapi bukanlah memprediksi secara asal tapi orang itu
telah menggunakan pola dalam memikirkan dan menghitung prakiraan tersebut sehingga kurang
lebih hasil akhir dalam masalah itu bisa terselesaikan dengan mendekati benar. Begitu juga hal lain
didunia ini yang mengandung pola tersendiri tanpa kita sadari. Karena yang tidak tampak itu
sebenarnya tampak, tergantung kita melihat dari sudut pandang mana.
6. Contoh Computational Thinking (CT)
CT adalah sebuah kemampuan berpikir untuk menyelesaikan masalah secara menyeluruh,
logis , dan teratur. Berpikir komputasi adalah teknik pemecahan masalah yang sangat luas wilayah
penerapanny, bukan hanya untuk menyelesaikan masalah seputar ilmu komputer saja, melainkan
juga menyelesaikan masalah didalam kehidupan sehari-hari.
Contoh yang paling mudah dalam kehidupan sehari-hari adalah menanak nasi yang
melibatkan CT. Pertama adalah dekomposisi. Tentu kita pecahkan dulu masalah besar menjadi
masalah kecil seperti menyiapkan beras, air, tempat nasi dan rice cooker.
Kemudian ada pengenalan pola. Seperti harus memasak air dulu dulu baru memasak beras atau
menyalakan rice cooker. Metode ketiga adalah abstraksi, berapa banyak beras yang kita
butuhkan untuk makan nant. Dan yang terakhir adalah algoritma, pertama-tama memasukkan
beras sebanyak yang dibutuhkan, kemudian masukkan air lalu nyalakan rice cooker.
Cara mengimplementasikan CT adalah dengan memahami masalah, emngunpulkan semua
data, lalu mencari solusi sesuai dengan masalah. Dalam CT ada yang disebut dekomposisi yaitu
memecah suatu masalah kompleks menjadi masalah masalah yang kecil untuk diselesaikan.
Contoh : ketika kita membuat nasi goreng, kita harus memahami cara
membuat nasi goreng, lalu kita
mengumpulkan bahan-bahannya,
kemudian kita mulai membuat nasi goreng
sesuai dengan langkah- langkahnya. Dalam
membuat nasi goreng, kita harus
menyiapkan kompor, wajan, spatula,
minyak goreng, nasi telur, bumbu
dan
lainnya yang semua itu merupakan sebuah proses bernama dekomposisi.
Kemudian didalam CT ada yang disebut pengenalan pola. Karena kita pernah membuat nasi
goreng, kita juga dapat membuat kwetiau karena proses pembuatannya hampir mirip. Kita bisa
melihat bahwa pola untuk membuat nasi goreng dan kwetiau hampir sama walaupun bahan yang
dipakai berbeda.
Lalu ketika kita membuat nasi goreng, kita tidak memperhatikan bagaimana proses kompor bisa
menyala, karena hal tersebut menurut kita tidak penting. Hal itu sudah terkait dengan abtraksi
didalam CT.
Selanjutnya adalah berpikir dengan algoritma, dimana kita berpikir dengan mengurutkan
langkah-langkah dalam menyelesaikan masalah agar menjadi logis, berurutan, teratur, dan
mudah dipahami oleh orang lain. Dalam hal membuat nasi goreng, kita juga harus bisa
mengurutkan langkah-langkah secara logis, berurutan, dan rinci mulai dari proses awal
pembuatan sampai proses penyajiannya.
Contoh lain yaitu dalam membuat kue brownies. Bagaimana cara membuat kue brownies yang
lezat sebanyak 100 boks dengan efektif dan efisien?
Berikut pemecahan masalahnya menggunakan teknik computational thinking :
a. Decomposition
Kemampuan memecah data, proses
atau masalah (kompleks) menjadi
bagian- bagian yang lebih kecil /
menjadi tugas – tugas yang mudah
dikelola. Misalnya, memecah
struktur komponen dasar
pembentuk brownies menjadi
tepung, telur, gula, mentega,
cokelat, susu, keju, backing powder,
dan air.
Atau memecah proses dasar pembuatan brownies, menjadi penyiapan bahan, pencampuran
adonan, pengembangan adonan(emulsi), memasak/memanggang, topping/rias, dan
packing/pengepakan.
b. Pattern Recognition
Kemampuan untuk melihat persamaan atau bahkan perbedaan pola, tren, dan keteraturan
dalam data yang nantinya akan digunakan dalam membuatprediksidan penyajian dat.
Misalanya , mengenali pola dan proses pembuatan satu box kue brownies yang dimulai dari
tahap persiapan hingga packing memerlukan waktu 60 menit dengan menggunakan 1 unit
oven.
c. Abtraksi
Melakukan generalisasi dan mengidentifikasi prinsip-prinsip umum yang menghasilkan pola,
tren, dan keteraturan tersebut. Misalnya dengan melihat dan mengidentifikasi pola
pembuatan brownies secara umum. Jika dalam 1 jam dengan 1 unit oven/pemanggang
diperoleh 1 box brownies, maka perlu 100 jam (4,16 hari ) untuk menghasilkan 100 box
brownies yang tentunya tidak efektif dan efisien.
Karena proses pembuatan brownies ini merupakan proses yang berulang, maka kita dapat
melakukan generalisasi bahwa proses ini tidak harus menunggu semua proses selesai baru
dilakukan dari awal. Dengan kata lain, saat brownies sudah masuk ke oven, kita bisa
melakukan proses pembuatan adonan kembali tanpa harus menunggu hingga semua proses
selesai dilaksanakan. Dengan demikian 60 menit >= 3 box/1 jam. Sehingga untuk
menghasilkan 100 box brownies dengan 1 unit oven diperlukan waktu 33 jam atau 1,3 hari.
Pertanyaan selanjutnya, bagaimana jika disediakan 2 buah oven? Maka jawabannya kita
hanya memerlukan waktu 16,5 jam untuk menghasilkan 100 box brownies.

d. Algorithm Design
Mengembangkan petunjuk pemecahan masalah yang sama secara langkah demi langkah
sehingga orang lain dapat menggunakan langkah/informasi tersebut untuk menyelesaikan
permasalahan yang sama. Misalnya langkah dan tahapan membuat kue brownies yang paling
efektif dan efisien sesuai dengan pola dan abstraksi sebelumnya hingga tahap packing,
diurutkan secara lengkap, terukur dan kreatif.
C. Hubungan antara Algoritma dengan Pemikiran Komputasi
Sudah diketahui bersama bahwa algoritma digunakan untuk memecahkan masalah yang ada dalam
kehidupan. Namun kita juga dapat menggunakan konsep pemikiran computational thinking dalam
menentukan sebuah keputusan untuk mencapai penyelesaian akhir dari suatu masalah. Dengan
demikian, apakah ada hubungan antara algoritma dengan CT didalam mengambil keputusan?
Algoritma adalah suatu urutan dari beberapa langkah yang logis guna menyelesaikan masalah untuk
mencapai tujuan tertentu. Pada saat kita memiliki masalah, maka kita harus dapat menyelesaikan
masalah tersebut dengan menggunakan langkah-langkah yang logis dan disusun secara sistematis.
Dalam matematika dan ilmu komputer, Algoritma adalah urutan atau langkah-langkah untuk
penghitungan atau untuk menyelesaikan suatu masalah yang ditulis secara berurutan. Sehingga
algoritma pemrogaman adalah urutan atau langkah
– langkah untuk menyelesaikan masalah pemrograman komputer. Namun pemrograman tidak
hanya diterapkan pada dunia komputasi saja, tetapi juga diterapkan dalam kehidupan sehari-hari.
CT adalah sebuah pendekatan dalam proses pembelajaran.Ct memang memiliki peranan penting
dalam pengembangan aplikasi komputer, namun Ct juga dapat digunakan untuk mendukung
pemecahan masalah disemua disiplin ilmu, termasuk humaniora, matematika dan ilmu
pengetahuan. Dalam ilmu komputer CT adalah sebuah metode pemecahan masalah dengan
melibatkan teknik yang digunakan oleh software engineer dalam menulis program. Dalam berpikir
komputasi seseorang dituntut untuk memformulasikan masalah dalam bentuk masalah komputasi
dan menyusun solusi komputasi yang baik (dalam bentuk algoritma)atau menjelaskan mengapa
tidak ditemukan solusi yang sesuai.
Lantas apakah ada keterkaitan antara algoritma dengan CT didalam pengambilan keputusan?
Tentu saja antara algoritma dengan CT saling berkaitan. Seperti yang telah dijelaskan pada
pengertian berpikir komputasi, seseorang diminta dapat menyusun solusi komputasi yang baik yang
tersusun dalam bentuk algoritma. Yang berarti menyusun solusi komputasi dengan memakai
langkah-langkah yang logis dan disusun secara sistematis untuk
mencapai tujuan. Dalam membuat langkah-langkah itu dapat memakai metode-metode
yang ada pada CT. Beberapa metode itu antara lain decomposition, pattern recognition,
abtraksi, dan algorithm design.
Bila terdapat suatu masalah kita dapat melakukan decomposition terlebih dahulu, yaitu
memecah masalah menjadi bagian bagian yang lebih kecil sehingga lebih mudah
dikelola. Lalu berlanjut ke pattern recognition atau melihat persamaan ataupun
perbedaan pola yang nantinya digunakan dalam membuat prediksi penyelesaian
masalah. Berlanjut abstraksi/generalisasi dan mengidentifikasi prinsip-prinsip
umumyang menghasilkan pola dan terakhir algorithm design/ mengembangkan
petunjuk pemecahan masalah yang sama secara langkah demi langkahsehingga orang
lain dapat memakai langkah/informasi tersebut untuk menyelesaikan masalah yang sam.
Dan pada akhirnya dengan menggunakan cara berpikir algoritma kita dapat melakukan
otomatisasi solusi/ mendapatkan solusi secara otomatis. Dengan menggunakan metode-
metode computational thinking kita dapat menyusun solusi dalam bentuk
algoritmadengan baik untuk mengambil keputusan dalam menyelesaikan masalah.
D. Mengajarkan Kemampuan CT kepada Siswa
Berpikir komputasional CT adalah metode menyelesaikan masalah dengan menerapkan
teknik ilmu komputer (informatika). Berpikir komputasi ditujukan untuk menyelesaikan
masalah, bukan hanya seputar ilmu komputer melainkan juga beragam masalah. Saat ini
setiap orang dituntut untuk berpikir kreatif dan kritis dalam menyelesaikan masalah
dengan menerapkan konsep-konsep berpikir komputasional.
Computational Thinking (CT) sekarang ini sudah menjadi dasar dan pemikiran yang baru
dan harus dipahami , CT tidak hanya diperuntukkan bagi beberapa kalangan seperti
programmer, melainkan harus diterapkan pada setiap orang.
CT mampu membantu kita dalam hal menyelesaikan sebuah masalah kompleks yang
dihadapi secara mudah dan efektif. Dengan CT membantu otak untuk terbiasa berpikir
kreatif, logis, dan terstruktur.
Lantas bagaimana mengajarkan kemampuan Ct pada setiap individu terutama peserta
didik?Ct dapat diajarkan jika setiap pendidikan formal maupun informal menerapkan
konsep CT itu sendiri. Konsep CT adalah bagaimana setiap masalah yang dihadapi dapat
dipecahkan secara lebih mudah dengan menerapkan langkah-langkah secara terstruktur,
yakni dari dekomposisi hingga perancangan algoritma. Penerapan konsep pada setiap
kasus/ disiplin ilmu menjadi kuncinya, sehingga peserta didik mampu terbiasa dalam hal
CT. Semakin terbiasa dalam hal CT maka kemampuan berpikirnya akan meningkat dalam
beberapa hal.

Seperti dalam hal kemampuan mengidentifikasi data, menganalisa data, berpikir algoritma (sekumpulan
langkah terurut) dan generalisasi solusi.
CT saat ini digadang – gadang akan menjadi pemikiran masa depan. Pemikiran yang berawal dari
orang – orang yang berprofesi sebagai programmer saat ini sudah tidak memandang profesi lagi.
Dokter, pengacara, guru, petani atau apapun pekerjaannya sudah harus mengenali apa itu CT.
Dalam bidang ilmu apapun kita juga dituntut untuk berpikir secara ct. Oleh karena itu, berpikir
secara CT lebih baik diajarkan sejak dini atau anak-anak. Pada usia belia otak manusia akan
cenderung lebih mudah menyerap informasi yang didapat. Seorang anak kecil yang dibiasakan
sesuatu akan selalu mengingatnya dalam jangka waktu yang lama hingga puluhan tahun. Sehingga
membiasakan sejak dini untuk berpikir secara CT sangat dianjurkan.
Cara mengajarakannya pun dapat dilakukan dalam hal-hal yang sederhana di kehidupan sehari-
hari.Contoh kasusnya seperti kita mau sarapan. Saat sarapan, misalnya kita memeilih menu nasi
dan telur mata sapi. Lalu orang yang kita suruh untuk membuat langkah-langkah dalam membuat
sarapn pagi dengan menu tersebut. Tentu kita mulai dari menanak nasi, dilanjutkan menggoreng
telur mata sapi. Contoh lain seperti langkah-langkah mandi, langkah-langkah berangkat sekolah dll.
Dengan melatih otak untuk berpikir seperti ini maka otak kita akan terbiasa berpikir sistematis, logis
dan juga kreatif.
Selain itu, cara belajar terbaik adalah dengan cara mengajari. Nilai lebih yang kamu dapatkan ketika
mengajari seseorang untuk berpikir secara ct adalah kamu juga akan berpikir seperti itu bahkan
lebih kompleks dari cara berpikir yang kamu ajarkan.
Belajar mengajar biasanya dilakukan dengan seorang guru atau dengan seorang yang lebih
berpengalaman,namun belajar CT bisa diajarkan dengan orang yang sudah berpikir secara CT. Di
negara maju, sejak dini atau masih SD sudah diajarkan CT di sekolahnya.
Berikut adalah cara mengajarkan Computational Thinking (CT) :
1. Belajar langsung dengan orang orang profesional
Kebanyakan orang-orang profesional di dunia ini sudah berpikir secara CT, dikarenakan mereka
ingin menjadi lebih baik lagi dan memikirkan masa depan dengan matang. Dengan belajar
bersama orang-orang yang sudah berpikir secara CT kita dapat mengambil pengalaman dan
ilmu tentang CT dari orang tersebut.
2. Sering Membaca tentang Hal yang berkaitan dengan CT
Dengan membaca segala hal yang kita baca dapat langsung disimpan dalam memori otak kita.
Orang yang sudah berpikir dengan CT sering sekali membaca karena membaca
adalah sumber terbesar ilmu. Membaca bisa dari mana saja sumbernya, misalnya buku,
majalah, koran, webbook, dan lain-lain.
3. Melihat lalu dipikirkan secara kritis
Orang-orang kebanyakan berpikir secara kritis dan dengan melihat suatu hal kita dapat
mengingatnya, dengan mengingatnya kita dapat berpikir tentang apa yang kita lihat tadi.
Setelah dipikirkan lalu kita coba pikir lagi, lalu apa yang bisa kita perbuat dengan hal yang kita
lihat itu.
4. Belajar dari pengalaman dan kesalahan
Pengalaman pasti ada dalam setiap diri manusia, dari pengalaman itu kita dapat sesuatu yang
berharga. Belajar dari pengalaman yang sudah kita alami lalu kita evaluasi pengalaman
tersebut, begitu pula kesalahan yang telah kita buat. Jangan mengulang lagi kesalahan kita dan
buat lebih baik lagi. Dengan belajardari pengalaman kita dapat berpikir secara CT.
E. Teori Komputasi dan Komputasi Modern
1. Teori Komputasi
Adalah cara menemukan pemecahan masalah dari data input dengan menggunakan algoritma.
Hal ini ialah apa yang disebut dengan teori komputasi, suatu subbidang dari ilmu komputer dan
matematika. Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan
menggunakan pena dan kertas, atau kapur dan batu tulis, atau dkerjakan secara mental,
kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah
dilakukan dengan menggunakan komputer.
Secara umum ilmu komputasi adalah bidang ilmu yang mempunyai perhatian pada penyusunan
model matematika dan teknik penyelesaian numerik serta penggunaan komputeruntuk
menganalisis dan memecahkan masalah-masalah ilmu (sains). Dalam penggunaan praktis,
biasanya berupa penerapan simulasi komputer atau berbagai bentuk komputasi lainnya untuk
menyelesaikan masalah-masalah dalam berbagai bidang keilmuan, tetapi dalam
perkembangannya digunakan juga untuk menemukan prinsip-prinsip baru yang mendasar
dalam ilmu.
Teori komputasi berkaitan dengan studi bagaimana masalah dapat diselesaikan pada sebuah
model dnengan menggunakan algoritma. Model itu dinamakan model komputasi. Ada
beberapa model yang digunakan, namun yang paling umum dipelajari adalah mesin turing.
Mesin itu dipikirkan sebagai komputer pribadi dengan kapasitas memori tak terhingga, namun
dapat diakses dalam bagian bagian terpisah dan diskret. Ilmuwan mempelajari mesin Turing
karena mudah dirumuskan, dianalisis, dan digunakan untuk pembuktian, dan karena mesin ini
mewakili model komputasi yang dianggap sebagai model paling masuk akal yang paling ampuh
yang dimungkinkan. Kapasitas memori tak terbatas mungkin terlihat sebagai sifat yang tidak
mungkin terwujudkan, namun setiap masalah yang “terputuskan “ (decidable) yang
dipecahkan oleh mesin Turing selalu hanya akan memerlukan jumlah memori terhingga. Jadi
pada dasarnya setiap masalah yang dapat dipecahkan (diputuskan) oleh mesin Turing dapat
dipecahkan oleh komputer yang memiliki jumlah memori terbatas.
Teori komputasi dapat dianggap sebagai model peciptaan dari seluruh cabang dalam bidang
ilmu komputer (computer science). Maka dari itu, logika dan matematika dapat digunakan
dalam teori komputasi. Pada abad ini, teori komputasi menjadi disiplin akademik mandiri dan
telah terpisah dari matematika. Beberapa pencetus dalam bidang teori komputasi, yaitu Alonzo
Church, Kurt Godel, Alan Turing, Stephen Kleene, John Von Neumann, dan Claude Shannon.
Teori komputasi dibagi menjadi 3 ranting sbb :
a. Teori Otomata (Automata Theory)
Adalah teori mengenai mesin-mesin abstrak dan berkaitan erat dengan teori bahas formal.
Ada beberapa hal yang berkaitan dengan otomata, yaitu grammar. Grammar adalah bentuk
abstrak yang dapat diterima (accept) untuk membangkitkan suatu kalimat otomata
berdarkan suatu aturan tertentu.
b. Teori komputabilitas (Computability Theory)
Bertujuan untuk memerika apakah persoalan komputasi dapat dipecahkan pada suatu
model komputasi teoritis. Dengan kata lain, teori komputabilitas mengklasifikasikan
masalah sebagai dapat dipecahkan (solvable) atau persoalan yang tidak dapat dipecahkan
(unsolvable). Teori komputabilitas memperkenalkan beberapa konsep yang digunakan
didalam teori kompleksitas.
c. Teori Kompleksitas (Computational Complexity Theory)
Bertujuan untuk mengkaji kebutuhan waktu dan ruang untuk memecahkan persoalan yang
diselesaikan dengan pendekatan yang berbeda beda. Dengan kata lain, teori kompleksitas
mengklasifikasikan persoalan sebagai persoalan yang mudah (easy) adat persoalan sulit
(hard).
2. Komputasi Modern
Adalah sebuah konsep sistem yang menerima instruksi-instruksi dan menyimpannya dalam
sebuah memori, memori disini bisa juga dari memori komputer. Oleh karena pada
saat ini kita melakukan komputasi menggunakan komputer, maka bisa dikatakan komputer
merupakan sebuah komputasi modern.
Dalam kerjanya, komputasi modern menghitung dan mencari solusi dari masalah yang ada, dan
perhitungan yang dilakukan itu sebagai berikut.
a. Akurasi (Bit, Floating Point)
Akurasi tentu merupakan masalah yang paling penting dalam memecahkan masalah.
Karena itu pada komputasi modern dilakukan perhitungan bagaimana bisa menghasilkan
suatu jawaban yang akurat dari sebuah masalah. Tentu kita pernah mendengar type data
floating point yang biasa digunakan untuk menyimpan data numerik dalam bentuk
pecahan. Type data tersebut memiliki range penyimpanan numerik yang besar, sehingga
dapat digunakan oleh komputer untuk melakukan komputasi yang akurat.
b. Kecepatan (dalam Satuan Hz)
Manusia pasti menginginkan sebuah masalah dapat diselesaikan dengan cepat. Oleh karena
itu, perhitungan masalah kecepatan adalah suatu hal yang penting. Komputasi harus dapat
dilakukan dalam waktu yang cepat ketika mengolah suatu data. Sehingga perlu metode
kecepatan untuk mengolah perhitungan dalam waktu yang singkat.
c. Problem Volume Besar (Down Sizzing atau Prallel)
Data yang besar tentu membutuhkan suatu cara penyelesaian yang khusus. Karena data
yang besar dapat menjadi masalah jika ada yang terlewatkan. Oleh karena itu digunakan
metode down sizzing atau parallel pada komputasi modern untuk menangani masalah
volume yang besar. Dengan metode ini data yang besar diparallelkan dalam pengolahannya
sehingga dapat diorganisir dengan baik.
d. Modelling (NN & GA)
Modelling merupakan suatu hal yang penting dalam melakukan suatu perhitungan yang
rumit. Bayangkan saja jika kita dihadapkan dalam suatu masalah perhitungan yang banyak
dan kompleks, tetapi tidak ada model matematika yang kita miliki. Perhitungan akan
berjalan berantakan dan tidak akan mendapatkan hasil yang akurat. Maka dari itu,
komputasi modern membutuhkan modelling sebelum melakukan perhitungan.
e. Kompleksitas (Teori Big O)
Komputasi modern dirancang untuk menangani masalah yang kompleks sehingga
diterapkan pada komputer. Dengan menggunakan teori Big O, maka komputasi
modern dapat melakukan perhitungan untuk memecahkan masalah kompleksitas yang
sering dihadapi.
Karakteristik komputasi modern ada 3 macam sbb :
a. Komputer-komputer penyedia sumber daya bersifat heterogeneous karena terdiri atas
berbagai jenis perangkat kersa, sistem operasi, serta aplikasi yang terpasang.
b. Komputer-komputer yang terhubung ke jaringan yang luas dengan kapasitas bandwith yang
beragam.
c. Komputer maupun jaringan tidak terdedikasi, bisa hidup atau mati sewaktu-waktu tanpa jadwal
yang jelas.

3. Sejarah Komputasi Modern


Sejarah komputasi dimulai dari seorang
ilmuwan yang ternama di bidang teknologi.
Permulaan komputasi modern dimulai pada
tahun 1926 oleh ilmuwan yang berasal dari
Hungaria yang bernama John Von Neumann.
Dialah orang yang pertama kali memikirkan
konsep sebuah sistem yang menerima
instruksi- instruksi dan menyimpannya dalam
sebuah memori. Konsep inilah yang menjadi
dasar arsitektur komputer modern.John von
Neumann memberikan berbagai bantuannya
dalam bidang matematika, teori kuantum, ,
game theory, fisika nuklir, dan ilmu
komputer. Selain itu von
Neumann juga merupakan seorang ilmuwan yang sangat berperan penting dalam pembuatan
bom atom di Los Alamos pada PD II silam. Berkat kepiawaiannya di bidang teori game inilah ia
bisa melahirkan konsep automata, teknologi bom atom, dan komputasi modern yang akhirnya
melahirkan sebuah komputer.
Sebenarnya kata “komputer” itu pertama kali digunakan secara umum pada tahun 1613.
Artikomputer itu sendiri mengacu pada perhitungan aritmatika dan kata tersebut masih
digunakan hingga pertengahan abad ke-20. Seiring dengan perkembangan zaman dari akhir
abad ke -19 hingga seterusnya komputer berubah menjadi sebuah mesin yang melakukan
komputasi. Kemudian sekitar tahun 1920-an, kata “ mesin komputasi” mulai dikenal. Setiap
mesin yang dapat membantu melakukan pekerjaan manusia yaitu menghitung dengan metode
yang efektif disebut dengan mesin komputasi. Pada tahun 1940-1950 dengan munculnya mesin
komputasi elektronik, kata “mesin komputasi“ mulai berubah menjadi “komputer” yang
biasanya diawali dengan “elektronik“ atau “digital”.
Sejak saat ini von Neumann menjadi seorang konsultan pada pengembangan komputer ENIAC.
Dia merancang konsep arsitektur komputer yang masih dipakai sampai sekarang. Arsitektur Von
Neumann adalah seperangkat komputer dengan program tersimpan (program dan data
disimpan di memori) dengan pengendalian pusat, I/O, dan memori. Konsep dasar arsitektur
komputer modern sendiri ialah konsep sebuah sistem yang menerima instruksi-instruksi dan
menyimpannya didalam memori.
Berikut ini beberapa contoh komputasi modern sampai dengan lahirnya ENIAC :
a. Konrad Zuse’s Electromachanical “ Z mesin” Z3 (1941)
Sebuah mesin pertama yang menampilkan biner aritmatika, termasuk aritmatika floating
point dan ukuran programmability. Pada tahun 1998, Z3 operasional pertama didunia
komputer itu dianggap sebagai turing lengkap.
b. Non programmable Atanasoff-Berry Computer
Ditemukan tahun 1941, alat ini menggunakan tabung hampa berdasarkan perhitungan,
angka biner, dan regeneratif memori kapasitor. Penggunaan memori regeneratif
diperbolehkan untuk menjadi jauh lebih seragam(berukuran meja besar atau meja biasa).
c. Computer Colossus
Ditemukan tahun 1943, berkemampuan untuk membatasi kemampuan program. Pada
saat ini menunjukkan bahwa perangkat menggunakan ribuan tabung dapat digunakan
lebih baik dan elektronik reprogrammable. Komputer ini digunakan untuk memecahkan
kode perang Jerman.
d. The Harvard Mark I
Ditemukan tahun 1944, mempunyai skala besar, merupakan komputer elektromekanis
dengan programmability terbatas.
e. US Army’s Ballistic Research Laboratory ENIAC
Ditemukan tahun 1946, komputer ini digunakan untuk menghitung desimal aritmatika dan
biasanya disebut sebagai tujuan umum pertama komputer elektronik (ENIAC merupakan
generasi yang sudah sangat berkembang dizamannya sejak komputer pertama Konrad
Zuse’s Z3 yang ditemukan tahun 1941).
Secara kasar, kita dapat membagi sejarah komputasi modern ke dalam era berikut :
a. 1970-an: timesharing (satu komputer dengan banyak pengguna)
b. 1980-an: personal komputer (satu komputer per user)
c. 1990-an: komputasi paralel (banyak komputer per user).
4. Jenis-jenis komputasi modern
Terbagi menjadi 3 macam yaitu komputasi mobile (bergerak), komputasi grid, dan komputasi
cloud(awan). Penjelasannya sbb :
a. Mobile computing(MC)
1) Pengertian
Kemajuan teknologi komputer
sehingga dapat berkomunikasi
menggunakan jaringan tanpa
menggunakan kabel dan mudah dibawa
atau berpindah tempat, tetapi berbeda
dengan komputasi nirkabel.
MC merupakan paradigma dari teknologi yang mampu melakukan komunikasi
walaupun user melakukan perpindahan. Seiring dengan perkembangan zaman yang semakin
maju, maka kebutuhan akan perangkat bergerak dan berkomputasi semakin dibutuhkan.
Hampir tidak mungkin kita membawa PC kemana-mana karena ukurannya yang lumayan besar
dan berat serta tidak praktis. Para ilmuwan berpikir ulang untuk menjawab masalah ini.
Sehingga gagasan demi gagasan muncul seiring dengan canggihnya dunia dan imajinasi
seseorang dalam berpikir tentang masa depan.
Konsep awal dari Mobile Computing sbb :
a) Handoff : kapan dan dimana saja melakukannya.
b) Prose migrasi : aplikasi infrastruktur pendukung yang mengikuti mobilitas.
c) Authentication.
d) Authorization.
e) Security encrypt.
Adapun keterbatasan MC sbb:
a) Kurangnya bandwidth.
b) Standar keamanan.
c) Konsumsi Energi
d) Potensi bahaya kesehatan.
2) Prinsip/cara kerja dari mobile computing
Secara singkat MC berarti menyatukan seluruh sumber daya TI kedalam sekumpulan
layanan yang biasa digunakan secara bersama untuk memenuhi
kebutuhan komputing perusahaan. Infrastruktur MC secara kontinyumenganalisa
permintaan terhadap sumber daya dan mengatur supply untuk disesuaikan dengan
permintaan itu. Dimana data disimpan atau komputer mana yang memproses
permintaan tidak perlu dipikirkan. Sebagaimana arus listrik, untuk memanfaatkannya,
tempat pembangkit atau bagaiman proses pengkabelan jaringan listrik tidak perlu
diketahui. Dalam penyelesaian masalah sistem monolitik dan sumber daya
terfragmentasi, MC bertujuan untuk menciptakan keseimbangan antara pengaturan
supply sumber daya dan kontrol yang fleksibel. Dua prinsip kerja utama MC yang
membedakannya dari arsitektur komputasi yang lain, seperti mainframe, client-server,
atau multi-tier, yaitu virtualisasi dan provisioning.
a) Virtualisasi
Setiap sumber daya(komputer, disk, komponen aplikasi dan sumber informasi)
dikumpulkan bersama-sama menurut jenisnya, lalu disediakan bagi konsumen (orang
atau program). Virtualisasi berarti meniadakan koneksi secara fisik antara penyedia
dan konsumen sumber daya, dan menyiapkan sumber daya untuk memenuhi
kebutuhan tanpa konsumen mengetahui bagaimana permintaannya bisa terlayani.
b) Provisioning
Ketika konsumen meminta sumber daya melalui layer virtualisasi, sumber daya
tertentu dibelakang layer didefinisikan untuk memenuhi permintaan itu, dan
kemudian dialokasikan ke konsumen. Provisioning sebagai bagian dari MC berarti
bahwa sistem menentukan bagaimana cara memenuhi kebutuhan konsumen seiring
dengan mengoptimasi jalannya sistem secara keseluruhan.
3) Kelebihan dari MC
a) Extreme personalization
Artinya MC telah menjadi barang yang sagat penting bagi manusia. Hal ini
diibaratkan dengan kalimat “Ponsel diantara dompet dan kuci motor”, dimana
berarti ponsel yang termasuk MC sama pentingnya dengan dompet dan kunci motor.
Karena pentingnya itu, MC kerap dipakai untuk menyimpan segala informasi pribadi.
b) Pengaksesan informasi setiap saat dan dimanapun
Dengan sifatnya yang portable atau dapat dibawa kemana-mana, dan bila didukung
dengan koneksi internet, MC dapat digunakan untuk bekerja, atau
berbelanja secara online maupun bermain dimana saja dan kapan saja. Tentu hal ini
sangat memanjakan pengguna MC.
c) Kompatibel yang tinggi dengan teknologi lain
Dengan kecanggihan yang dimiliki, MC compatible dengan teknologilain, sehingga
mobile computing dapat memanfaatkan teknologi lain demi kemudahan sang
pemakai.
d) Cocok untuk daerah yang belum ada infrastruktur
4) kekurangan dari MC
a) Kurangnya bandwidth
Akses internet pada peralatan umumnya lebih lambat dibandingkan dengan koneksi
kabel dengan menggunakan teknologi seperti GPRS, EDGE, dan jaringan 3G, LAN
nirkabel berkecepatan tinggi tidak mahal, tetapi memiliki rentang yang sangat
terbatas
b) Konsumsi tenaga
Ketika generator portable tidak tersedia, komputer mobile harus bergantung penuh
dengan daya baterai.
c) Gangguan transmisi
Faktor-faktor yang menyebabkan gangguan sinyal pada MC seperti cuaca, jarak alat
MC dengan titik pemancar sinyal terdekat. Selain itu penerimaan sinyal didalam
terowongan, dibeberapa gedung dan daerah pedesaaan seringkali buruk.
d) Potensi terjadi kecelakaan
Banyak kecelakaan kendaraan baik mobil maupun motor sering disebabkan oleh
pengendaranya yang menggunakan peralatan mobile saat sedang berkendara. Selain
itu penggunaan MC yang terlalu lama dapat menyebabkan gangguan kesehatan.
e) Antarmuka pengguna dengan alat
Layar keyboard cenderung kecil membuat peralatan tersebut sulit digunakan. Input
alternative seperti suara atau pengenalan tulisan tangan membutuhkan pelatihan
untuk menggunakannya.
b. Grid Computing
Adalah penggunaan
sumber daya yang
melibatkan banyak
komputer yang
terdistribusi dan terpisah
secara geografis untuk
memecahkan

persoalan komputasi
skala besar.
Beberapa konsep dasar dari
grid computing sbb :
1) Sumber daya dikelola dan dikendalikan secara lokal.
2) Sumber daya berbeda dapat mempunyai kebijakan dan mekanisme berbeda,
mencakup sumber daya komputasi dikelola oleh sistem batch berbeda, sistem storage
berbeda pada node berbeda, kebijakan berbeda dipercayakan kepada user yang sama
pada sumber daya berbeda pada grid.
3) Sifat alami dinamis (sumber daya dan pengguna dapat sering berubah).
4) Lingkungan kolaboratif bagi e-comunity (komunitas elektronik di internet).
5) Tiga hal yang disharing dalam sebuah sistem grid, antara lain resource, network,
dan proses. Kegunaan/layanan dari sistem grid sendiri adalah melakukan high
throughput computing di bidang penelitian, ataupun proses komputasi lain yang
memerlukan banyak resource komputer.
Ian Foster (bapak grid computing)menyatakan bahwa terdapat 3 hal yang
mengidentifikasi bahwa suatu sistem termasuk sebuah komputasi grid sebagai
berikut.
1) Sistem itu berkoordinasi terhadap sumber daya komputasi tidak berada dalam satu
kendali pusat. Misalnya komputer di Jakarta terhubung dengan komputer di Jayapura,
Manado, dan Semarang.
2) Sistem tersebut menggunakan protokol yang standar dan terbuka, tidak terpaut
dengan suatu perusahaan atau produk tertentu. Standar itu dibutuhkan dibagian
autentifikasi, otorisasi, pencarian sumber daya yang tersedia dan pengaksesan sumber
daya.
3) Sistem itu bersifat nontrivial (tidak biasa-biasa saja) untuk mencapai kualitas
layanan yang canggih.
Di indonesia sendiri sudah menggunakan sistem grid dan diberi nama InGrid (Inherent
Grid). Sistem komputasi grid mulai beroperasi pada bulan maret 2007 dan terus
dikembangkan hingga saat ini. In Grid ini menghubungkan beberapa perguruan tinggi
negeri dan swasta yang tersebar di seluruh indonesia dan beberapa instansi
pemerintahan seperti Badan Meteorologi, Klimatologi dan Geofisika (BMKG).
c. Cloud Computing
1) Pengertian cloud computing
mungkin masih samar terdengar
bagi orang awam. Tetapi
keberadaannya di era digital kini
sebenarnya telah terasa di tengah
masyarakat dalam kehidupan
sehari-hari seperti penggunaan
email dan juga media sosial.
Secara umum, definisi cloud
computing (komputasi awan) merupakan gabungan pemanfaatan teknologi
komputer (komputasi) dalam suatu jaringan dengan pengembangan berbasis
internet (awan) yang berfungsi untuk menjalankan program/aplikasi melalui
komputer yang terkoneksi pada waktu yang sama, tetapi tidak semua yang
terkoneksi melalui internet menggunakan cloud computing.
Teknologi komputer berbasis sistem cloud ini meruoakan sebuah teknologi yang
menjadikan internet sebagai pusat server untuk mengelola data dan juga aplikasi
pengguna. Teknologi ini mengizinkan pengguna untuk menjalankan program tanpa
installasi dan untuk mengakses datapribadi mereka melalui komputer berakses
internet.
Cloud /awan merupakan metafora dari internet. Sebagaimana awan yang sering
digambarkan di diagram jaringan komputer. Menurut jurnal yang dipublikasikan
IEEE, Internet computing adalah suatu paradigma dimana informasi secara
permanen tersimpan di server internet dan tersimpan sementara di komputer
pengguna (client) termasuk didalamnya adalah desktop, komputer tablet,
notebook, handheld, sensor-sensor, monitor dll. Komputasi cloud merupakan gaya
komputasi yang terukur, dinamis dan sumber daya virtual yang sering
menyediakan layanan melalui internet.
Komputasi cloud menggambarkan pelengkap baru, konsumsi dan layanan IT
berbasis model dalam internet dan biasanya melibatkan ketentuan dan
keterukuran dinamis dan sumber daya virtual yang sering menyediakan layanan
melalui internet.
Wikipedia mendefinisikan cloud computing sebagai komputasi berbasis
internet, ketika banyak server digunakan bersama untuk menyediakan sumber
daya, perangkat lunak, dan data pada komputer/perangkat lain pada saat
dibutuhkan sama seperti jaringan listrik.
Gartner mendefinisikannya sebagai cara komputasi ketika layanan berbasis TI
yang mudah dikembangkan dan lentur disediakan sebagai sebuah layanan untuk
pelanggan menggunakan teknologi internet.
Forester mendefinisikannya sebagai standar kemampuan TI, seperti perangkat
lunak, platform aplikasi, atau infrastruktur yang disediakan menggunakan
teknologi internet dengan cara swalayan dan bayar per pemakaian.
2) Karakteristik cloud computing
Bahwa tidak semua aplikasi berbasis web dapat dimasukkan kedalam kategori
cloud computing. Ada lima kriteria yang harus dipenuhi oleh sebuah sistem untuk
bisa dimasukkan dalam keluarga cloud computing. Adapun 5 kriteria yang
dimaksud sbb :
a) Swalayan (on demand self service)
Pelanggan mungkin secara langsung “memesan” sumber daya yang
dibutuhkan, seperti processor time dan kapasitas penyimpanan melalui control
panel elektronis yang disediakan, jadi tidak perlu berinteraksi dengan personel
customer service jika perlu menambah/ mengurangi sumber daya komputasi
yang diperlukan.
b) Akses pita lebar (broadband network access)
Layanan yang tersedia terhubung melalui jaringan pita lebar, terutama dapat
diakses secara memadai elalui jaringan internet, baik menggunakan thin client,
thick client ataupun media lain seperti smartphone.
c) Sumber daya terkelompok (resource pooling)
Penyedia layanan cloud memberikan layanan melalui sumber daya yang
dikelompokkan di satu atau berbagai lokasi data enter yang terdiri ata
sejumlah serber dengan mekanisme multi-tenant. Mekanisme ini
memungkinkan sejumlah sumber daya komputasi itu digunakan bersama-
sama oleh sejumlah user, dimana sumber daya tersebut baik yang berbentuk
fisik maupun virtual dapat dialokasikan secara dinamis untuk kebutuhan
pengguna/pelanggan sesuai permintaan.
Dengan demikian, pelanggan tidak perlu tahu bagaimana dan darimana
permintaan akan sumber daya komputasinya dipenuhi oleh penyedia layanan.
Yang penting, setiap permintaan dapat dipenuhi. Sumber daya komputasi ini
meliputi media penyimpanan, memori, processor, pita jaringan, dan mesin
virtual.
d) Elastis (rapid elasticity)
Kapasitas komputasi yang disediakan dapat secara elastis dan cepat
disediakan, baik itu dalam bentuk penambahan ataupun pengurangan
kapasitas diperlukan. Untuk pelanggan sendiri, dengan kemampuan ini seolah-
olah kapasitas yang tersedia tak terbatas besarnya, dan dapat “dibeli” kapan
saja dengan jumlah berapa saja.
e) Layanan yang terukur (measured service)
Sumber daya cloud yang tersedia harus dapat diatur dan dioptimasi
penggunaannya, dengan suatu sistem pengukuran yang dapat mengukur
penggunaan dari setiap sumber daya komputasi yang digunakan(penyimpanan,
memori, processor, lebar pita, aktivitas user, dll). Dengan demikian jumlah
sumber daya yang digunakan dapat secara transparan diukur yang akan
menjadi dasar bagi user untuk membayar biaya penggunaan layanan.
3) Jenis penyebaran cloud computing
Ada 3 cara yang berbeda untuk menggunakan sumber daya cloud computing, yaitu
public cloud, private cloud, dan hybrid cloud.
a) Public cloud
Dimiliki dan dioperasikan oleh penyedia layanan cloud pihak ketiga, yang
memberikan sumber daya komputasi mereka seperti server dan storage
melalui internet. Contoh : Microsoft Azure. Dengan public cloud semua
Hardware, Software dan infrastrukturpendukung lainnyadimiliki dan dikelola
oleh penyedia cloud. Kamu dapat mengakses layanan ini dan mengelola akun
menggunakan web browser.
b) Private cloud
Mengacu pada sumber daya komputasi yang digunakan secara eksklusif oleh
satu bisnis atau organisasi. Private cloud dapat secara fisik terletak di tempat
data center milik perusahaan. Beberapa perusahaan juga membayar penyedia
layanan pihak ke3 untuk host private cloud mereka. Private cloud adalah salah
satu yang layanan dan infrastrukturnya dikelola di jaringan pribadi.
c) Hybrid cloud
Adalah kombinasi dari public cloud dan private cloud, terikat bersama oleh
teknologi yang memungkinkan data dan aplikasi untuk dibagi diantara
keduanya. Dengan memungkinkan data dan aplikasi untuk bergerak diatara
private cloud dan public cloud, hybrid cloud memberikan perusahaan
fleksibilitas dan opsi penerapan yang lebih besar.
4) Struktur cloud
computing Cloud
computing terdiri atas 2
komponen, yaitu front
end dan back end. Front
end terdiri atas
klien cloud computing
systemnya.
Kemudian idbagi lagi
menjadi 2, yaitu interface
dan aplikasi yang
diperlukan dalam
mengakses platform cloud computingnya. Sementara back end mengacu pada
cloud itu sendiri, yaitu yang terdiri atas sumber daya yang diperlukan bagi layanan
komputasi awan. Ada berbagai layanan yang disediakan teknologi komputasi awan,
yaitu virtual machine, server, data storage, security mechanism, dll. Jadi semua
layanan itu berada di bawah kendali provider/penyedia komputasi awan. Cloud
computing bisa mendistribusikan sistem file yang kemudiandeibar kebanyak
hardisk maupun mesin. Datanya tidak pernah disimpan di satu tempat saja. Selain
itu, jika 1 unit gagal bekerja/ memproses, maka yang lain akan mengambil alih
secara otomatis. Inilah canggihnya teknologi cloud. Ruang disk pengguna dapat
dialokasikan ke sistem file terdistribusi, sementara komponen penting lainnya
semacam
algoritma dimanfaatkan untuk alokasi sumber daya intinya, teknologi komputasi
awan ini merupakan sistem distribusi yang kuat dan sangat tergantung pada
lagoritma yang kuat pula.
5) Kelebihan dan kekurangan cloud computing
a) Kelebihan :
1) Kemudahan dalam mengatur untuk mengakses software, aplikasi dan
layanan tanpa perlu intalasi. Pengguna tidak perlu melakukan
pemeliharaan karena penyedia layanan cloud sudah menyederhanakan
proses tersebut melalui sumber daya yang ada.
2) Menghemat biaya teknologi dalam perusahaan, karena untuk memilih
server in-house membutuhkan biaya modal yang besar. Selain itu, biaya
listrik dan pendingin ruang server dapat dialokasikan ke biaya lain.
3) Cloud computing adalah sistem yang fleksibel, jika data yang tersimpan
terlalu besar, maka dengan otomatis menambah kapasitasnya tanpa perlu
menambah jumlah komputer.
4) Keunggulan keunggulan strategis dari cloud computing, perkembangan
teknologi secara terus-menerus mampu memberi keunggulan perusahaan
dibanding pesaing. Pengguna diperkirakan mampu fokus terhadap
kegiatan dan tujuan bisnis yang utamadengan waktu yang lebih banyak.
b) Kekurangan :
1) Provider dari perusahaan cloud dapat mengakses data yang tersimpan
didalam komputer server. Keamanan data inilah yang dapat menimbulkan
resiko lain.
2) Banyak client dari provider penyedia layanan cloud mampu membuat
gangguan teknis seperti server down yang mengakibatkan tidak dapat
mengakses aplikasi hingga data.
3) Memutuskan untuk beralih ke layanan komputasi awan perlu dipikirkan
dengan matang, karena cloud belum sepenuhnya terintegrasi dan
compatible dengan platform lain.
4) User harus selalu terkoneksi dengan internet, akan menyulitkan jika
sedang berada diluar jangkauan provider penyedia internet.
6) Layanan Cloud Computing
a) Software as a Service
(Saas) Jenis layanan
yang satu ini
menyediakan aplikasi
yang siap pakai
yang ditujukan untuk
end user
atau pengguna
terakhir. Sehingga
user tidak perlu lagi membuat aplikasi baru. Contoh dari layanan SaaS, yaitu
gmail, twitter, facebook, dll. Pada layanan itu, siapa saja dapat
memanfaatkannya untuk berbagai keperluan tanpa harus repot membangun
server/infrastruktur baru.
Di dunia bisnis, kita mungkin familiar dengan salesforce.com atau Microsoft
CRM yang merupakan layana aplikasi CRM. Di sini, perusahaan tidak perlu
setup hardware dan software CRM diserver sendiri. Cukup berlangganan sales
force.com maupun Microsoft CRM, kita bisa menggunakan aplikasi CRM kapan
dan dari mana saja melalui internet. Kita tidak perlu melakukan investasi
server maupun aplikasi. Kita juga akan mendapat aplikasi terbaru jika terjadi
upgrade. Intinya kita benar-benar hanya tinggal menggunakan aplikasi
tersebut. Pembayaran biasanya dilakukan bulanan, dan sesuai jumlah pemakai
aplikasi tersebut. Dengan kata lain, pay as you go, pay per use, per seat.
Semua layanan ini, dimana suatu aplikasi software tersedia dan bisa langsung
dipakai oleh seorang pengguna, termasuk dalam kategori software as a
Service (SaaS). Secara sederhana, kita langsung mengonsumsi layanan aplikasi
yang ditawarkan.
b) Platform as a Service (PaaS)
Layanan ini berfungsi untuk menyewakan tempat kepada para pengguna
aplikasi untuk menjalankan aplikasi tersebut. Contohnya seperti penyediaan
database, framework atau sistem operasi lainnya yang merupakan suatu
platform untuk menjalankan aplikasi.
Jadi pada layanan ini, pengguna tidak perlu melakukan pengecekan
/maintenance pada platform itu karena hal itu sudah diatur dalam layanan
ini. Pengguna bisa fokus untuk membangun aplikasi dan
mengembangkannya saja. Beberapa layanan yang menyediakan Paas,
diantaranya Amazon web service, Windows Azure, Google App Engine. Pada
Paas kita membuat aplikasi sofware yang kita inginkan, termasuk skema
database yang diperlukan. Skema itu kemudian kita pasang (deploy) di server-
server milik penyedia jasa PaaS. Penyedia PaaS itu juga menyediakan layanan
platform, mulai dari mengatur server-server mereka secara virtualisasi
sehingga sudah menjadi cluster sampai menyediakan sistem operasi
diatasnya. Kita sebagai pengguna hanya perlu memasang aplikasi yang kita
buat diatasnya.
c) Infrastructure as a Service (Laas)
Layanan ini menyediakan infrastruktur It untuk para pengguna akhir yang
mana dalam layanan itu berbasis data cloud. Infrastruktur yang disediakan
bisa bersifat hardware, seperti memori, harddisk atau jenis server tertentu.
Cloud provider pada layanan ini hanya menyediakan infrastruktur sesuai
dengan permintaan pengguna. Jadi bila ingin melakukan upgrade/
penamabahan infrastruktur tertentu bisa langsung menghubungi penyedia
layanan. Contoh penyedia layanan Laas seperti Rackspace cloud, Amazon EC2,
dll.
Pada laaS, penyedia layanan hanya menyediakan sumber daya komputasi
seperti prosesor, memori, dan storage yang sudah tervirtualisasi. Akan tetapi,
penyedia layanan tidak memasang sistem operasi maupun aplikasi diatasnya.
Pemilihan OS, aplikasi maupun konfigurasi lainnya sepenuhnya berada pada
kendali kita. Jadi layanan LaaS dapat dilihat sebagai prose migrasi server-
server kita dari on premise ke data center milik penyedia LaaS ini. Para vendor
cloud computing lokal rata-rata menyediakan layanan model LaaS ini dalma
bentuk virtual private server.
Perbedaan antara komputasi mobile, grid dan cloud sbb :
a. Komputasi mobile menggunakan teknologi komputer yang bekerja seperti
handphone, sedangkan komputasi grid dan cloud menggunakan komputer.
b. Biaya untuk tenaga komputasi mobile lebih mahal dibandingkan dengan komputasi grid
dan cloud.
c. Komputasi mobile tidak membutuhkan tempat danmudah dibawa kemana-ma,
sedangkan grid dan cloud membutuhkan tempat yang khusus.
d. Untuk komputasi mobile, proses tergantung pengguna, komputasi grid proses
tergantung pengguna mendapatkan server atau tidak, dan komputasi cloud prosesnya
membutuhkan jaringan internet sebagai penghubungnya.
Persamaan antara komputasi mobile, komputasi grid, dan komputasi cloud
sbb:
a. Ketiganya merupakan metode untuk melakukan komputasi, pemecahan masalah, dan
pencarian solusi.
b. Ketiganya memerlukan alat proses data yang modern seperti komputer, laptop atau
telepon genggam untuk menjalankannya.

Anda mungkin juga menyukai