Jumat, 28 Mei 2021

Prosedur standar dalam menyelesaikan persoalan komputasi

 Prosedur Standar dalam Menyelesaikan Persoalan Komputasi

Mei 28, 2021

 1. Prosedur dan Kinerja Komputasi.

Kinerja berarti hasil kerja. Komputasi adalah cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma. Parallel berarti ganda. Processing adalah proses. Dengan demikian dapat diartikan bahwa Kinerja Komputasi dengan Parallel Processing adalah teknik melakukan komputasi (cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma) secara bersamaan dengan memanfaatkan beberapa komputer secara bersamaan.


Komputasi paralel membutuhkan:


· algoritma


· bahasa pemrograman


· compiler


Sebagai besar komputer hanya mempunyai satu CPU, namun ada yang mempunyai lebih dari satu. Bahkan juga ada komputer dengan ribuan CPU. Komputer dengan satu CPU dapat melakukan parallel processing dengan menghubungkannya dengan komputer lain pada jaringan. Namun, parallel processing ini memerlukan software canggih yang disebut distributed processing software.


Parallel processing berbeda dengan multitasking, yaitu satu CPU mengeksekusi beberapa program sekaligus. Parallel processing disebut juga parallel computing.





Contoh Gambar struktur pengiriman permintaan dan jawaban dari parallel processing.


 


Dalam Kinerja Komputasi terdapat 2 model penyelesaian masalahnya, yaitu :


1. Dengan cara Komputasi Tunggal (terdiri dari 1 cpu yg menyelesaikan masalah)





2. Dengan cara Komputasi Parallel (terdiri dari beberapa cpu yg menyelesaikan masalah)



2. Paralel Computing.

Komputasi paralel adalah jenis komputasi di mana banyak perhitungan atau proses dilakukan secara bersamaan. [1] Masalah besar sering kali dapat dibagi menjadi masalah kecil, yang kemudian dapat diselesaikan pada saat yang bersamaan. Ada beberapa bentuk komputasi paralel yang berbeda: level bit , level instruksi , data , dan paralelisme tugas . Paralelisme telah lama digunakan dalam komputasi berkinerja tinggi , tetapi telah mendapatkan minat yang lebih luas karena kendala fisik yang mencegah penskalaan frekuensi . [2]Karena konsumsi daya (dan akibatnya pembangkitan panas) oleh komputer telah menjadi perhatian dalam beberapa tahun terakhir, [3] komputasi paralel telah menjadi paradigma dominan dalam arsitektur komputer , terutama dalam bentuk prosesor multi-core . [4]



Superkomputer paralel besar-besaran IBM Blue Gene / P

Komputasi paralel terkait erat dengan komputasi serentak — keduanya sering digunakan bersama, dan sering digabungkan, meskipun keduanya berbeda: dimungkinkan untuk memiliki paralelisme tanpa konkurensi (seperti paralelisme tingkat bit ), dan konkurensi tanpa paralelisme (seperti multitasking dengan berbagi waktu pada CPU inti tunggal). [5] [6] Dalam komputasi paralel, tugas komputasi biasanya dipecah menjadi beberapa, seringkali banyak, sub-tugas yang sangat mirip yang dapat diproses secara independen dan yang hasilnya akan digabungkan setelahnya, setelah selesai. Sebaliknya, dalam komputasi bersamaan, berbagai proses seringkali tidak membahas tugas-tugas terkait; ketika mereka melakukannya, seperti yang biasa terjadi dalam komputasi terdistribusi, tugas yang terpisah mungkin memiliki sifat yang bervariasi dan seringkali membutuhkan komunikasi antar proses selama pelaksanaan.


Komputer paralel dapat diklasifikasikan secara kasar sesuai dengan tingkat di mana perangkat keras mendukung paralelisme, dengan komputer multi-core dan multi-prosesor memiliki beberapa elemen pemrosesan dalam satu mesin, sementara cluster , MPP , dan grid menggunakan banyak komputer untuk bekerja pada hal yang sama. tugas. Arsitektur komputer paralel khusus terkadang digunakan bersama prosesor tradisional, untuk mempercepat tugas-tugas tertentu.


Dalam beberapa kasus, paralelisme transparan bagi pemrogram, seperti dalam bit-level atau paralelisme tingkat instruksi, tetapi secara eksplisit algoritma paralel , terutama yang menggunakan konkurensi, lebih sulit untuk ditulis daripada yang berurutan , [7] karena konkurensi memperkenalkan beberapa algoritma baru. kelas bug perangkat lunak potensial , yang kondisi balapannya paling umum. Komunikasi dan sinkronisasi antara subtugas yang berbeda biasanya merupakan beberapa kendala terbesar untuk mendapatkan kinerja program paralel yang optimal.


Batas atas teoritis pada percepatan program tunggal sebagai hasil dari paralelisasi diberikan oleh hukum Amdahl .


3. Protocol Komputasi Network File System (NFS).

NFS

Network File System atau sistem berkas jaringan adalah sekumpulan protokol yang digunakan untuk mengakses beberapa sistem berkas melalui jaringan. Bisa dikatakan juga bahwa NFS merupakan sebuah implementasi dan spesifikasi dari sebuah perangkat lunak untuk mengakses remote file melalui jaringan LAN atau WAN.


NFS yang dikembangkan oleh Sun Micro Systems Inc. ini menggambarkan himpunan unit-unit komputer yang saling berhubungan sebagai sebuah mesin bebas yang memiliki sistem berkas bebas. Tujuan dari NFS adalah untuk memungkinkan terjadinya pertukaran sistem berkas secara transparan antara mesin-mesin bebas tersebut. Hubungan yang terjadi di sini didasarkan pada hubungan client-server yang menggunakan perangkat lunak NFS server dan NFS client yang berjalan diatas workstation. Gambar 18.3 berikut ini menggambarkan tiga buah mesin bebas yang memiliki sistem berkas lokal masing-masing yang bebas juga.


Gambar 18.3. Three Independent File System


Three Independent File System


NFS didesain agar dapat beroperasi di lingkungan ataupun jaringan yang heterogen yang meliputi mesin, platform, sistem operasi, dan arsitektur jaringan. Ketidaktergantungan ini didapat dari penggunaan RPC primitif yang dibangun diatas protokol External Data Representation (XDR).


Jika misalnya terjadi sebuah pertukaran sistem berkas antara server dan client , maka pertukaran sistem berkas yang terjadi disini harus dipastikan hanya berpengaruh pada tingkat client dan tidak mempengaruhi sisi server , karena server dan client adalah mesin yang berbeda dan sama-sama bebas. Untuk itu, mesin client harus melakukan operasi mount terlebih dahulu agar remote directory dapat diakses secara transparan.


4. Standar MPI (Message Passing Interface).

Pengertian MPI (Message Passing Interface)

MPI (Message Passing Interface) adalah spesifikasi API (Application Programming Interface) yang memungkinkan terjadinya komunikasi antar komputer pada network dalam usaha untuk menyelesaikan suatu tugas. Paradigma Message - Passing dengan implementasi MPI memberikan suatu pendekatan yang unik dalam membangun suatu software dalam domain fungsi tertentu, yang dalam hal ini pada lingkungan sistem terdistribusi, sehingga memberikan kemampuan pada produk software yang dibangun diatas middleware tersebut untuk dapat mengeksploitasi kemampuan jaringan komputer dan komputasi secara paralel.



MPI adalah standar interface dari model message - passing yang didefenisikan oleh sebuah grup yang terdiri dari 60 orang yang berasal dari 40 organisasi baik vendor komersil maupun dari kalangan peneliti akademisi yang berada di Amerika Serikat dan Eropa. Dalam grup tersebut mereka mencoba merumuskan dan membuat sebuah "standard by consensus" untuk pustaka message - passing yang dapat digunakan dalam komputasi paralel.

MPI menjadi standar defacto yang banyak digunakan dalam komunikasi proses pada model dari program paralel pada sistem memori terdistribusi, yang mana banyak diimplementasikan oleh pada super komputer dan computer cluster. Pada spesifikasi MPI-1 tidak memiliki konsep tentang shared memory, kemudian pada spesifikasi selanjutnya MPI-2 sudah mendukung konsep distributed shared memory. Dengan kemampuan tersebut MPI dapat mengeksploitasi arsitektur lingkungan yang sifatnya heterogen atau bersifat arsitektur NUMA (Non-Uniform Memory Access).


Implementasi MPI merupakan sebuah API yang dapat dipanggil dari beberapa bahasa pemrograman seperti Fortran, C, ataupun C++, dan bersifat portable. Terdapat dua versi standar yang pada saat ini populer digunakan, yaitu versi 1.2 (MPI-1) yang berfokus pada message passing dan memiliki static runtime enviroment, dan MPI-2.1 (MPI-2) yang memasukkan fitur - fitur baru seperti parallel I/O, dynamic process management, remote memory operation dsb.

Tujuan MPI

MPI merupakan sebuah protokol komunikasi yang sifatnya language-independent, portable dalam mensupport berbagai platform, dan memiliki spesifikasi semantic yang mengatur bagaimana perilaku setiap impelementasinya. MPI mendukukung komunikasi baik dengan tipe point-to-point maupun yang bersifat kolektif. Secara umum MPI memliki tujuan sebagai berikut :

MPI akan menjadi sebuah library untuk membangun program aplikasi dan bukan distributed operating system.

MPI akan mendukung thread-safe yang penting dalam symmetric multiprocessor pada lingkungan jaringan komputer yang heterogen.

MPI akan mampu untuk men-deliver high-performance computing.

MPI akan bersifat modular, untuk mengakselerasi development pustaka paralel yang portable.

MPI akan bersifat extensible, sehingga dapat terus dikembangkan dan memenuhi kebutuhan komputasi masa akan datang.

MPI akan mendukung heterogeneos komputasi.

MPI akan memiliki semantic behavior yang telah terspesifikasi dengan jelas, sehingga dapat menghindari beberapa permasalahan kritis seperti race-conditions, dead-lock dsb.

Tipe Komunikasi MPI

a. Point-to-Point Communication

Pada implementasi program berbasis message-passing, point-to-point communication adalah komunikasi yang paling sederhana dimana akan melibatkan sepasang proses yang saling bekerjasama. Pada API dari MPI, secara sederhana dapat digunakan MPI_Send atau MPI_Recv, dimana akan mengizinkan terjadinya sebuah proses spesifik yang satu dapat mengirimkan data pesan ke sebuah proses spesifik yang lain. Operasi point-to-point communication secara khusus berguna dalam komunikasi yang irregular ataupun yang berpola.


Contoh: sebuah arsitektur data paralel dimana setiap prosessor secara rutin melakukan pertukaran region data dengan sebuah prosessor spesifik lainnya pada setiap langkah kalkulasi, atau pada arsitektur master-salve dimana sang master akan mengirim task data baru ke proses slave pada saat task data sebelummnya telah selesai.


b. Collective Communication

×

Search this blog

Home / IlmuKomputer / Jaringan

MPI ( Message Passing Interface)

By ketutrare 1 comment


 

Pengertian MPI (Message Passing Interface)

MPI (Message Passing Interface) adalah spesifikasi API (Application Programming Interface) yang memungkinkan terjadinya komunikasi antar komputer pada network dalam usaha untuk menyelesaikan suatu tugas. Paradigma Message - Passing dengan implementasi MPI memberikan suatu pendekatan yang unik dalam membangun suatu software dalam domain fungsi tertentu, yang dalam hal ini pada lingkungan sistem terdistribusi, sehingga memberikan kemampuan pada produk software yang dibangun diatas middleware tersebut untuk dapat mengeksploitasi kemampuan jaringan komputer dan komputasi secara paralel.



MPI adalah standar interface dari model message - passing yang didefenisikan oleh sebuah grup yang terdiri dari 60 orang yang berasal dari 40 organisasi baik vendor komersil maupun dari kalangan peneliti akademisi yang berada di Amerika Serikat dan Eropa. Dalam grup tersebut mereka mencoba merumuskan dan membuat sebuah "standard by consensus" untuk pustaka message - passing yang dapat digunakan dalam komputasi paralel.


 

MPI menjadi standar defacto yang banyak digunakan dalam komunikasi proses pada model dari program paralel pada sistem memori terdistribusi, yang mana banyak diimplementasikan oleh pada super komputer dan computer cluster. Pada spesifikasi MPI-1 tidak memiliki konsep tentang shared memory, kemudian pada spesifikasi selanjutnya MPI-2 sudah mendukung konsep distributed shared memory. Dengan kemampuan tersebut MPI dapat mengeksploitasi arsitektur lingkungan yang sifatnya heterogen atau bersifat arsitektur NUMA (Non-Uniform Memory Access).


Implementasi MPI merupakan sebuah API yang dapat dipanggil dari beberapa bahasa pemrograman seperti Fortran, C, ataupun C++, dan bersifat portable. Terdapat dua versi standar yang pada saat ini populer digunakan, yaitu versi 1.2 (MPI-1) yang berfokus pada message passing dan memiliki static runtime enviroment, dan MPI-2.1 (MPI-2) yang memasukkan fitur - fitur baru seperti parallel I/O, dynamic process management, remote memory operation dsb.


BACA JUGA

Cara Mengalisa Kebutuhan Perangkat Lunak Fungsional dan Non Fungsional (Contoh Kasus Perpustakaan Sekolah)

Pengenalan Rekayasa Perangkat Lunak dan Model Proses Perangkat Lunak

Teknologi 5G dan Perkembangannya di Indonesia

Tujuan MPI

MPI merupakan sebuah protokol komunikasi yang sifatnya language-independent, portable dalam mensupport berbagai platform, dan memiliki spesifikasi semantic yang mengatur bagaimana perilaku setiap impelementasinya. MPI mendukukung komunikasi baik dengan tipe point-to-point maupun yang bersifat kolektif. Secara umum MPI memliki tujuan sebagai berikut :

MPI akan menjadi sebuah library untuk membangun program aplikasi dan bukan distributed operating system.

MPI akan mendukung thread-safe yang penting dalam symmetric multiprocessor pada lingkungan jaringan komputer yang heterogen.

MPI akan mampu untuk men-deliver high-performance computing.

MPI akan bersifat modular, untuk mengakselerasi development pustaka paralel yang portable.

MPI akan bersifat extensible, sehingga dapat terus dikembangkan dan memenuhi kebutuhan komputasi masa akan datang.

MPI akan mendukung heterogeneos komputasi.

MPI akan memiliki semantic behavior yang telah terspesifikasi dengan jelas, sehingga dapat menghindari beberapa permasalahan kritis seperti race-conditions, dead-lock dsb.

Tipe Komunikasi MPI

a. Point-to-Point Communication

Pada implementasi program berbasis message-passing, point-to-point communication adalah komunikasi yang paling sederhana dimana akan melibatkan sepasang proses yang saling bekerjasama. Pada API dari MPI, secara sederhana dapat digunakan MPI_Send atau MPI_Recv, dimana akan mengizinkan terjadinya sebuah proses spesifik yang satu dapat mengirimkan data pesan ke sebuah proses spesifik yang lain. Operasi point-to-point communication secara khusus berguna dalam komunikasi yang irregular ataupun yang berpola.


Contoh: sebuah arsitektur data paralel dimana setiap prosessor secara rutin melakukan pertukaran region data dengan sebuah prosessor spesifik lainnya pada setiap langkah kalkulasi, atau pada arsitektur master-salve dimana sang master akan mengirim task data baru ke proses slave pada saat task data sebelummnya telah selesai.


b. Collective Communication


 

Berbeda dengan point-to-point communication, collective communication pada MPI API melibatkan komunikasi antara semua proses dalam sebuah group proses (dalam artian keseluruhan pool Proses atau sebuah subset terdefinisi pada program). Fungsi interface yang sederhana dapat berupa MPI_Bcast (broadcast) yang melakukan pengiriman data dari sebuah proses ke semua proses lainnya pada group, dan fungsi MPI_Reduce untuk melakukan kebalikannya.


Tipe komunikasi memberikan dua keuntungan, yaitu pertama, operasi komunikasi tersebut mengizinkan programmer untuk mengekspresikan operasi yang kompleks dengan menggunakan semantik yang sederhana, kedua, implementasi dapat melakukan pengoptimasian operasi melalui cara yang tidak disediakan oleh tipe operasi point-to-point communication. 

Ruang lingkup Informatika

 RUANG LINGKUP INFORMATIKA

Mei 28, 2021

 RUANG LINGKUP INFORMATIKA 


1. Program Komputer dan Model Komputasi 


    A. Program komputer atau sering kali disingkat sebagai program adalah serangkaian instruksi yang ditulis untuk melakukan suatu fungsi spesifik pada komputer.[1] Komputer pada dasarnya membutuhkan keberadaan program agar bisa menjalankan fungsinya sebagai komputer, biasanya hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program tersebut pada prosesor.[2] Sebuah program biasanya memiliki suatu bentuk model pengeksekusian tertentu agar dapat secara langsung dieksekusi oleh komputer. Program yang sama dalam format kode yang dapat dibaca oleh manusia disebut sebagai kode sumber, bentuk program yang memungkinkan programmer menganalisis serta melakukan penelaahan algoritme yang digunakan pada program tersebut. Kode sumber tersebut pada akhirnya dikompilasi oleh utilitas bahasa pemrograman tertentu sehingga membentuk sebuah program. bentuk alternatif lain model pengeksekusian sebuah program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan.


Beberapa program komputer dapat dijalankan pada sebuah komputer pada saat bersamaan, kemampuan komputer untuk menjalankan beberapa program pada saat bersamaan disebut sebagai multitasking. Program komputer dapat dikategorikan menurut fungsinya; perangkat lunak sistem atau perangkat lunak aplikasi.


Pemrograman komputer merupakan suatu proses iteratif penulisan dan penyuntingan kode sumber sehingga membentuk sebuah program. Penyuntingan kode sumber meliputi proses pengetesan, analisis, pembetulan kesalahan, pengoptimasian algoritme, normalisasi kode, dan kadang-kadang pengkoordinasian antara satu programmer dengan programmer lainnya jika sebuah program dikerjakan oleh beberapa orang dalam sebuah tim. Seorang praktisi yang memiliki keahlian untuk melakukan penulisan kode dalam bahasa pemrograman disebut sebagai programmer komputer atau programmer, pengembang perangkat lunak, atau koder. Istilah rekayasa perangkat lunak (bahasa Inggris: Software engineering) sering kali digunakan karena proses penulisan program tersebut dipandang sebagai suatu disiplin ilmu perekayasaan.


Paradigma Sunting


Program komputer dapat dikategorikan menurut paradigma bahasa pemrograman yang digunakannya. Dua paradigma utama yang umum digunakan adalah imperatif dan deklaratif.


Program yang ditulis dalam bahasa pemrograman imperatif biasanya memiliki algoritme yang ditulis dalam serangkaian klausal pendeklarasian, ekspresi aritmatis, dan sejumlah perintah.[3] Pendeklarasian meliputi pendeklarasian variabel serta tipe data atas variabel tersebut, contoh: var x: integer; Penggunaan ekpresi operasi aritmatis yang menghasilkan nilai, contoh: 2 + 2 menghasilkan nilai 4. Dan perintah yang melingkupi pendelegasian nilai atas hasil dari operasi aritmatis tersebut ke dalam sebuah variabel, contoh: x:= 2 + 2; if x = 4 then lakukan_sesuatu(); Salah satu bentuk kritik atas implementasi imperatif ini adalah efek samping yang timbul atas pendelegasian perintah terhadap variabel yang berada di luar cakupan dari fungsi tersebut atau lebih dikenal sebagai non-local variable.[4]


Program yang ditulis dengan bahasa deklaratif meliputi sejumlah properti yang harus dipenuhi untuk mendapatkan suatu bentuk hasil tertentu. Properti tersebut tidak mencerminkan suatu gambaran atas proses kerja suatu program namun merupakan suatu bentuk deklarasi relasional matematis atas sejumlah objek melaui properti-propertinya. Dua bagian utama atas pemrograman deklaratif adalah bahasa pemrograman fungsional dan bahasa pemrograman logikal. Prinsip dasar dibalik bahasa pemrograman fungsional (Haskell) adalah mencegah timbulnya efek samping seperti yang terdapat pada model pemrograman imperatif sehingga membuatnya lebih mudah untuk digunakan membuat program yang melakukan sejumlah operasi matematis.[4] Sementara itu, prinsip dari sebuah bahasa pemrograman logikal (Prolog) adalah mendefinisikan permasalahan yang hendak diselesaikan, tujuan yang hendak dicapai, dan membiarkan sistem melakukan analisis atas detail solusi terhadap permasalahan tersebut.[5] Tujuan utama atas sebuah program didefinisikan dengan cara membuat sejumlah tujuan-tujuan yang lebih kecil, kemudian pada tiap-tiap tujuan tersebut secara lebih lanjut didefinisikan tujuan-tujuan lain yang lebih kecil lagi, dan begitu seterusnya. Jika suatu arahan tujuan yang didefinisikan gagal digunakan untuk menemukan solusi atas suatu permasalahan, maka arahan tujuan anakan yang lebih kecil akan di telusuri ulang, dan arahan lainnya akan diujicobakan.


Bentuk dari cara sebuah program dibuat bisa berupa tekstual ataupun visual. Dalam pemrograman visual, elemen-elemen program biasanya dimanipulasi secara grafis, sementara bila dibuat secara tekstual artinya sebuah program ditulis secara manual.


Kompilasi atau interpretasi Sunting

Program komputer dalam bentuk yang dapat dibaca oleh manusia biasanya disebuat sebagai kode sumber. Kode sumber dapat dikonversikan menjadi bentuk berkas yang dapat dieksekusi secara langsung oleh komputer. Proses pengkonversian ini disebut sebagai proses kompilasi dan biasanya dilakukan sebuah program utilitas dari bahasa pemrograman yang digunakan yang disebut sebagai kompiler. Pada beberapa bahasa pemrograman tertentu, kode sumber dapat langsung dieksekusi sebagai sebuah program dengan menggunakan bantuan utilitas yang disebut sebagai interpreter.


Baik melalui proses kompilasi ataupun interpretatif, eksekusi program dapat dilakukan dalam sebuah proses batch tanpa membutuhkan interaksi dengan manusia, namun program interpretatif memungkinkan pengguna untuk menulis perintah dalam suatu sesi interaktif. Pada kasus ini sebuah program dieksekusi sebagai sebuah perintah, yang kemudian dieksekusi baik secara serial ataupun paralel. Bahasa pemrograman yang menyediakan fitur interaktif seperti ini dinamakan sebagai bahasa skrip.


Kompiler digunakan untuk menerjemahkan kode sumber dari suatu bahasa pemrograman menjadi kode objek ataupun kode mesin. Kode objek biasanya membutuhkan proses lebih lanjut sehingga dapat menjadi kode mesin, dan kode mesin merupakan instruksi-instruksi yang dikenali dan dapat secara langsung dieksekusi oleh prosesor. Program komputer yang telah terkompilasi biasanya disebut sebagai berkas eksekutabel, ataupun berkas biner; yang merujuk pada bentuk sistem biner yang digunakan untuk menyimpan kode mesin tersebut.


Program komputer yang diinterpretasikan -baik secara batch ataupun dalam modus interaktif- biasanya akan diterjemahkan terlebih dulu ke dalam sejumlah token baru kemudian dieksekusi, atau bisa juga token-token tersebut dioptimasi lebih lanjut sehingga menjadi sejumlah instruksi yang memiliki tingkat efisiensi yang lebih baik dan disimpan sebagai berkas P-Code terpisah untuk dieksekusi kemudian oleh interpreter. BASIC, Perl, dan Python merupakan beberapa contoh dari bahasa pemrograman yang menyediakan fasilitas penerjemahaan langsung. Alternatif lainnya, program komputer yang ditulis dalam bahasa pemrograman Java merupakan hasil kompilasi kode sumber ke dalam bytcode yang kemudian dieksekusi oleh interpreter yang disebut sebagai mesin virtual java.


Kerugian utama pemanfaatan interpreter adalah unjuk kerja program biasanya lebih lambat dibandingkan dengan program yang dikompilasi terlebih dulu. Namun keuntungannya proses pengembangan perangkat lunak biasanya bisa dilakukan lebih cepat karena proses pengetesan atas berjalannya program dapat dilakukan dalam waktu yang relatif singkat. Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian lainnya adalah, untuk dapat menjalankan program tersebut, utilitas interpreter harus disertakan dalam setiap pendistribusian, berbeda halnya dengan program terkompilasi yang dapat didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena sifatnya yang sudah dalam bentuk kode mesin.


Umumnya saat ini bahasa-bahasa pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (Just in Time) yang akan menganalisis serta menerjemahkan instruksi-instruksi yang paling sering digunakan ke dalam bahasa mesin pada saat program dijalankan sehingga tingkat unjuk kerjanya dapat ditingkatkan mengimbangi unjuk kerja program yang terkompilasi.


Eksekusi dan penyimpanan Sunting

Sebuah program komputer biasanya akan disimpan terlebih dahulu dalam memori utama (RAM) komputer sebelum dijalankan yang biasanya dilakukan oleh sistem operasi. Prosesor kemudian akan mengeksekusi program tersebut, instruksi demi instruksi sampai program tersebut diterminasi. Sebuah program yang tengah dieksekusi oleh prosesor dinamakan sebagai proses.[6] Terminasi ataupun penghentian eksekusi sebuah program biasanya terjadi baik karena permintaan dari pengguna, interupsi pengguna, kesalahan atas program itu sendiri, ataupun kesalahan atas perangkat keras yang digunakan.



Eksekusi simultan Sunting

Umumnya sistem operasi yang ada saat ini sudah mendukung pemanfaatan multitasking yang memungkinkan beberapa program komputer dijalankan pada saat yang bersamaan di sebuah komputer. Untuk dapat menjalankan beberapa program tersebut pada saat yang bersamaan, sistem operasi memanfaatkan mekanisme penjadualan proses yang merupakan suatu mekanisme yang akan mengatur pengalihan prosesor dalam melakukan pemrosesan sehingga beberapa program komputer tersebut dapat berinteraksi dengan pengguna saat dijalankan.[10] Di sisi perangkat keras yang digunakan, prosesor modern saat ini umumnya telah mendukung beberapa core prosesor yang dipancangkan sebagai sebuah prosesor yang memungkinkannya menjalankan beberapa program sekaligus.[11]


Sebuah program komputer dapat melakukan kalkulasi secara simultan pada beberapa jenis operasi di saat yang bersamaan dengan memanfaatkan thread atau sebagai proses terpisah. Umumnya prosesor yang ada saat ini sudah mendukung arsitektur multithreading yang teroptimasi untuk menjalankan beberapa thread secara efisien.


     B. model komputasi adalah model yang menggambarkan bagaimana keluaran dari fungsi matematika dihitung dengan memberikan masukan. Model menggambarkan bagaimana unit komputasi, memori, dan komunikasi diatur. [1] The kompleksitas komputasi dari sebuah algoritma dapat diukur diberikan model komputasi. Menggunakan model memungkinkan mempelajari kinerja algoritme secara independen dari variasi yang khusus untuk implementasi tertentu dan teknologi tertentu.


Model Sunting

Model komputasi dapat diklasifikasikan menjadi tiga kategori: model sekuensial, model fungsional, dan model konkuren.


Model sekuensial meliputi:


Mesin negara hingga

Automata pushdown

Mesin akses acak

Mesin turing

Model fungsional meliputi:


Kalkulus Lambda

Fungsi rekursif umum

Logika kombinasi

Sistem penulisan ulang abstrak

Model konkuren meliputi:


Otomat seluler

gerbang logika dan sirkuit digital

Jaringan proses Kahn

Jaring petri

Aliran Data Sinkron

Jaring interaksi

Model aktor

Model berbeda dalam kekuatan ekspresifnya; misalnya, setiap fungsi yang dapat dihitung oleh mesin keadaan Hingga juga dapat dihitung oleh mesin Turing , tetapi tidak sebaliknya.


Sebuah model yang non-deterministik perhitungan dikaitkan dengan beberapa model komputasi. Model nondeterministik tidak berguna untuk komputasi praktis; mereka digunakan dalam studi kompleksitas komputasi algoritma.


Kegunaan Sunting

Dalam bidang analisis runtime dari algoritme , adalah umum untuk menentukan model komputasi dalam hal operasi primitif yang diperbolehkan yang memiliki biaya unit, atau hanya operasi biaya unit . Contoh yang umum digunakan adalah mesin akses acak , yang memiliki biaya satuan untuk akses baca dan tulis ke semua sel memorinya. Dalam hal ini, ini berbeda dari model mesin Turing yang disebutkan di atas.


Kategori Sunting

Ada banyak model penghitungan, berbeda dalam rangkaian operasi yang dapat diterima dan biaya penghitungannya. Mereka termasuk dalam kategori luas berikut:


Mesin abstrak dan model yang setara dengannya (misalnya kalkulus lambda setara dengan mesin Turing ) - digunakan dalam bukti komputasi dan batas atas kompleksitas komputasi algoritme.

Model pohon keputusan - digunakan sebagai bukti batas bawah pada kompleksitas komputasi masalah algoritmik.


3. Perbaikan Model Komputasi

    

    Teori komputasi adalah cabang ilmu komputer dan matematika yang membahas apakah dan bagaimanakah suatu masalah dapat dipecahkan pada model komputasi, menggunakan algoritma. Bidang ini dibagi menjadi dua cabang: teori komputabilitas dan teori kompleksitas, namun keduacabang berurusan dengan model formal komputasi. Model komputasi adalah suatu kumpulan dari nilai dan operasi - operasi.


Ada tiga model dasar komputasional-- fungsional, logika, dan imperatif. Sebagai tambahan terhadap satuan nilai-nilai dan operasi yang berhubungan, masing-masing model komputasional mempunyai satu set operasi yang digunakan untuk menggambarkan komputasi


a. Model Fungsional : terdiri dari satu set nilai-nilai, fungsi-fungsi dan operasi aplikasi fungsi dan komposisi fungsi. Fungsi dapat mengambil fungsi lain sebagai argumentasi dan mengembalikan fungsi sebagai hasil (higher-order function). Suatu program adalah koleksi definisi fungsi-fungsi dan suatu komputasi adalah aplikasi fungsi.


b. Model Logika : terdiri dari satu set nilai-nilai, definisi hubungan dan kesimpulan logis. Program terdiri dari definisi hubungan dan suatu komputasi adalah suatu bukti(suatu urutan kesimpulan).


c. Model Imperatif : terdiri dari satu set nilai-nilai yang mencakup suatu keadaan dan operasi tugas untuk memodifikasi pernyataan. Pernyataan adalah set pasangan nilai-nama dari konstanta dan variabel. Program terdiri dari urutan tugas dan suatu komputasi terdiri dari urutan pernyataan.


3. Pengalaman Berpikir Komputasional

     

    Berpikir komputasional dibangun dengan dasar dan batasan proses komputasi, entah proses tersebut dieksekusi oleh manusia atau mesin. Metode dan model komputasional memberikan kemampuan bagi kita untuk memecahkan masalah dan mendesain/ merangkai sistem yang tidak bisa kita tangani sendiri. Berpikir komputasional adalah kemampuan dasar untuk setiap orang, bukan hanya bagi orang-orang yang berkutat dalam studi komputer-sains. Berpikir komputasional mencakup pemecahan masalah, mendesain sistem, dan memahami perilaku manusia, dengan menggambar konsep berdasarkan komputer sains. Berpikir komputasional meliputi batasan kemampuan mental yang merefleksikan betapa luasnya cakupan komputer-sains. Komputer sains adalah studi komputasi-mengenai apa yang dapat dikomputasikan dan bagaimana mengkomputasikan. Berpikir komputasional memiliki karakteristik sebagai berikut:

Berdasarkan konsep, bukan pemrograman. Komputer sains bukan sekedar pemrogaman komputer. Berpikir seperti orang yang ahli dalam computer-sains berarti lebih dari sekedar pemrogaman komputer. Dibutuhkan berpikir pada beberapa tingkat abstraksi.

Mendasar, bukan menghafal. Kemampuan dasar yaitu kemampuan yang harus dimiliki setiap orang dizaman sekarang. Menghafal berarti rutinitas mekanikal.

Cara manusia berpikir, bukan cara komputer berpikir. Berpikir komputasional adalah cara orang untuk memecahkan masalah; berikir komputasional tidak membuat orang mencoba berpikir seperti komputer. Manusia itu cerdas dan imajinatif. Komputer seharusnya dikendalikan oleh manusia, untuk menemukan suatu pemecahan masalah, bukan sebaliknya.

Saling melengkapi dan mengkombinasikan antara pemikiran matematis dan pemikiran teknik. Komputer sains erat kaitannya dengan berpikir matematis, sama seperti ilmu sains lainnya yang didasari oleh matematika.

Merupakan ide, bukan benda. Bukan sekedar software atau hardware yang secara fisik ada dikehidupan kita, namun lebih pada konsep-konsep komputasional yang kita gunakan untuk mendekati dan memecahkan masalah, mengatur kehidupan sehari-hari kita, komunikasi dan interaksi dengan orang lain.

Untuk setiap orang, disetiap tempat. Pemikiran komputasional akan menjadi nyata ketika ia begitu integral dalam usaha manusia, dan berubah menjadi suatu filosofi yang eksplisit.

Secara intelektual menantang dan mengharuskan masalah saintifik dapat dipahami dan diselesaikan. Domain masalah dan domain solusi hanya terbatas pada rasa ingin tahu dan kreativitas kita sendiri.

Orang yang memiliki kemampuan komputasional dapat menguasai komputer sains dan melakukan apa saja. Orang yang memiliki kemampuan komputasional dapat menguasai komputer sains dan meneruskan karirnya dibidang kesehatan, hukum, bisnis, politik, dan semua jenis teknik sains, atau bahkan seni.


Praktik Lintas Bidang (TEMATIS)

 Skip to content

Sat. May 29th, 2021 11.30.17

  

UKWMS


ALL NEWS

Berpikir Komputasional dan Karakteristiknya; Memadukan Teknologi dan Ilmu Pengetahuan


Byadmin

 JAN 28, 2020


Berpikir komputasional dibangun dengan dasar dan batasan proses komputasi, entah proses tersebut dieksekusi oleh manusia atau mesin. Metode dan model komputasional memberikan kemampuan bagi kita untuk memecahkan masalah dan mendesain/ merangkai sistem yang tidak bisa kita tangani sendiri. Berpikir komputasional adalah kemampuan dasar untuk setiap orang, bukan hanya bagi orang-orang yang berkutat dalam studi komputer-sains. Berpikir komputasional mencakup pemecahan masalah, mendesain sistem, dan memahami perilaku manusia, dengan menggambar konsep berdasarkan komputer sains. Berpikir komputasional meliputi batasan kemampuan mental yang merefleksikan betapa luasnya cakupan komputer-sains. Komputer sains adalah studi komputasi-mengenai apa yang dapat dikomputasikan dan bagaimana mengkomputasikan. Berpikir komputasional memiliki karakteristik sebagai berikut:


Berdasarkan konsep, bukan pemrograman. Komputer sains bukan sekedar pemrogaman komputer. Berpikir seperti orang yang ahli dalam computer-sains berarti lebih dari sekedar pemrogaman komputer. Dibutuhkan berpikir pada beberapa tingkat abstraksi.

Mendasar, bukan menghafal. Kemampuan dasar yaitu kemampuan yang harus dimiliki setiap orang dizaman sekarang. Menghafal berarti rutinitas mekanikal.

Cara manusia berpikir, bukan cara komputer berpikir. Berpikir komputasional adalah cara orang untuk memecahkan masalah; berikir komputasional tidak membuat orang mencoba berpikir seperti komputer. Manusia itu cerdas dan imajinatif. Komputer seharusnya dikendalikan oleh manusia, untuk menemukan suatu pemecahan masalah, bukan sebaliknya.

Saling melengkapi dan mengkombinasikan antara pemikiran matematis dan pemikiran teknik. Komputer sains erat kaitannya dengan berpikir matematis, sama seperti ilmu sains lainnya yang didasari oleh matematika.

Merupakan ide, bukan benda. Bukan sekedar software atau hardware yang secara fisik ada dikehidupan kita, namun lebih pada konsep-konsep komputasional yang kita gunakan untuk mendekati dan memecahkan masalah, mengatur kehidupan sehari-hari kita, komunikasi dan interaksi dengan orang lain.

Untuk setiap orang, disetiap tempat. Pemikiran komputasional akan menjadi nyata ketika ia begitu integral dalam usaha manusia, dan berubah menjadi suatu filosofi yang eksplisit.

Secara intelektual menantang dan mengharuskan masalah saintifik dapat dipahami dan diselesaikan. Domain masalah dan domain solusi hanya terbatas pada rasa ingin tahu dan kreativitas kita sendiri.

Orang yang memiliki kemampuan komputasional dapat menguasai komputer sains dan melakukan apa saja. Orang yang memiliki kemampuan komputasional dapat menguasai komputer sains dan meneruskan karirnya dibidang kesehatan, hukum, bisnis, politik, dan semua jenis teknik sains, atau bahkan seni.

Source: Pendidikan Matematika


Post navigation

HARMONI KELUARGA: MANFAAT MEMPERKENALKAN PROFESI KEPADA ANAK SEJAK DINI 

 “ADVOKASI TERHADAP ANAK PEREMPUAN”


By admin

RELATED POST

ALL NEWS

Pengabdian pada Masyarakat PSDKU Biologi di Kalurahan Mojorejo Tahun 2021

 MAY 20, 2021 PROMOSI WIMA

ALL NEWS

RAKERPIM 2021 “Menciptakan Keunggulan Kompetitif Melalui Kinerja Inovasi”

 MAR 31, 2021 PROMOSI WIMA

ALL NEWS

Pelantikan dan Penyerahan Surat Keputusan Pimpinan Unit Kerja Penunjang Akademik dan Unit Pelaksana Administrasi Masa Bakti 2021 – 2025 Kampus Kota Madiun

 MAR 2, 2021 PROMOSI WIMA

Search

INFORMASI KAMPUS
























YOU MISSED

ALL NEWS

Pengabdian pada Masyarakat PSDKU Biologi di Kalurahan Mojorejo Tahun 2021

ALL NEWS

RAKERPIM 2021 “Menciptakan Keunggulan Kompetitif Melalui Kinerja Inovasi”

ALL NEWS

Pelantikan dan Penyerahan Surat Keputusan Pimpinan Unit Kerja Penunjang Akademik dan Unit Pelaksana Administrasi Masa Bakti 2021 – 2025 Kampus Kota Madiun

ALL NEWS

SOSIALISASI PROGRAM KREATIVITAS MAHASISWA 2021

UKWMS

Proudly powered by WordPress | Theme: Newsup by Themeansar.


HomeTentang WIMAAkademikSub SistemInformasi Pendaftaran

Minggu, 23 Mei 2021

Berpikir Komputasional (TEMATIS)


Definisi Computational Thinking

Computational thinking adalah cara berpikir untuk menyelesaikan masalah (problem solving) dengan cara menguraikannya menjadi beberapa tahapan yang efektif, efisien, dan menyeluruh, meliputi: decomposition, pattern recognition, abstraction, algorithms yang merupakan beberapa konsep dasar ilmu komputer.



Pemikiran komputasi dianggap diinisiasi oleh artikel jurnal Wing pada tahun 2006. Namun, sebetulnya subjek serupa telah dirujuk oleh Papert (1996) dengan nama “pemikiran prosuderal”.


Wing (2006, hlm. 33) berpendapat bahwa computational thinking melibatkan pemecahan masalah, perancangan sistem, memahami perilaku manusia dengan berkaca pada konsep-konsep dasar ilmu komputer.


Apa saja tahapannya? seperti yang telah dijelaskan sebelumnya, pemikiran komputasi melibatkan 4 tahap utama, yakni:



Decomposition, merupakan pembagian masalah menjadi bagian-bagian yang lebih kecil atau sederhana.

Pattern recognition, yakni mencari atau mengenali kesamaan pola dalam maupun antar masalah yang ingin dipecahkan.

Abstraction, melihat permasalahan secara mendasar sehingga dapat melihat jangkauan luas yang lebih penting dan mengabaikan detil kecil yang sebetulnya kurang relevan.

Algorithm, mengembangkan sistem, sekuen, atau langkah-langkah solusi yang dapat diterapkan secara menyeluruh terhadap pola yang sama sehingga lebih efektif dan efisien.

Dapat dikatakan pula bahwa apa itu computational thinking atau pemikiran komputasi merupakan metode untuk menyelesaikan masalah melalui tahapan-tahapan berpikir dalam merancang pengembangan sistem atau aplikasi komputer.


Ya, karena pada awalnya, pemikiran ini adalah pemikiran yang digunakan untuk memecahkan permasalahan ilmu komputer.


Biasanya, pengembangan aplikasi dimulai dengan kebutuhan sistem. Kebutuhan sistem akan menimbulkan banyak permasalahan antara keinginan pengguna (yang membutuhkan aplikasi) dengan Programmer atau sistem komputer yang digunakan untuk mengembangkan aplikasi tersebut.



Meskipun begitu, pemikiran komputasi dapat diimplementasikan terhadap permasalahan lain di luar ilmu komputer pula. Hal ini dapat terlihat dari definisi berbeda dari salah satu pemikir utama computational thinking, yakni Jeannette M. Wing.


Pada tahun 2011, Wing mengubah definisi pemikiran komputasi menjadi: Computational thinking adalah proses berpikir yang merumuskan masalah dan solusinya, sehingga solusi tersebut direpresentasikan dalam bentuk yang dapat dilakukan secara efektif oleh agen pengolah informasi (Wing, 2011).


Contoh Computational Thinking

Apakah cara berpikir computational thinking bekerja? Sebagai seseorang yang telah bergelut dengan sistem informasi dan aplikasi, ya, pemikiran komputasi sangat efektif untuk digunakan, setidaknya dalam kacamata informatika.


Sepanjang karir saya sebagai developer (programmer) terdapat masa ketika saya tidak menyadari bahwa saya sedang menggunakan metode computational thinking. Bagaimana pemikiran komputasi bekerja dalam dunia ilmu komputer akan saya gambarkan dalam beberapa baris penjelasan di bawah ini.


Computational Thinking dalam Pengembangan Aplikasi

Kebutuhan aplikasi akan banyak menimbulkan masalah yang harus dipecahkan agar aplikasi tersebut dapat bekerja dan digunakan. Salah satu contohnya adalah bagaimana input dari user harus diverifikasi validitasnya. Misalnya, suatu form isian wajib di isi, jika tidak aplikasi tidak dapat memprosesnya.



Bagaimana cara mengecek suatu form telah diisi oleh user atau tidak? Tentunya dengan mengecek satu-persatu form wajib yang harus di isi. Katakanlah, kita memberikan perintah ini pada sistem:


Jika form nama tidak diisi, Maka: “beri peringatan dan hentikan proses pendaftaran aplikasi”.


Jika form nama diisi, Maka: “lanjutkan proses pendaftaran aplikasi”.


Sehingga, jika form nama tidak diisi maka aplikasi akan menghentikan proses pendaftaran, sebaliknya jika form nama diisi, maka proses pendaftaran aplikasi akan dilanjutkan.


Tampaknya masalah tersebut sudah diselesaikan bukan? Salah. Karena banyak form lain yang wajib untuk di isi pula (bisa belasan bahkan puluhan). Tentunya, bisa saja kita membuat “Jika” yang lainnya untuk semua form. Namun di sana terdapat celah untuk melakukan salah satu aspek pertimbangan computational thinking, yakni: pengenalan pola yang sama (pattern recognition).


Daripada menduplikasi kedua perintah di atas satu persatu untuk semua form yang ada, lebih baik kita membuat algoritma yang dapat dipakai berulang-ulang untuk semua form. Maka, dengan computational thinking, kita akan membuat semacam:


$yang_divalidasi = $nama, $alamat, $nomor_telepon, dsb;


Algoritma Validasi Form yang Kosong ($yang_divalidasi) {


Jika $yang_divalidasi nama tidak diisi, Maka: “beri peringatan dan hentikan proses pendaftaran aplikasi”.



Jika $yang_divalidasi diisi, Maka: lanjutkan proses pendaftaran aplikasi”.


}


Selanjutnya kita tinggal memerintah Algoritma Validasi Form yang Kosong untuk menyelesaikan permasalahan pada seluruh form yang tidak boleh kosong, misalnya:


Algoritma Validasi Form yang Kosong ($yang_divalidasi);


Jauh lebih efektif bukan? Permasalahan benar-benar diselesaikan secara mendasar dan menyeluruh. Kita tidak harus membuat perintah berulang-ulang hingg puluhan baris untuk setiap masalah serupa yang akan kita hadapi.


Computational Thinking dalam Kehidupan Sehari-hari

Lalu seperti apa implementasinya dalam hal lain di luar ilmu komputer? Sesungguhnya, computational thinking telah banyak diterapkan dalam berbagai hal. Contoh mudahnya adalah bagaimana sistem antrean menyelesaikan permasalahan keadilan dan keefisienan dalam menunggu giliran.


Berbagai sistem manual seperti hukum, syarat dan ketentuan, SOP (standar operasional) dalam melaksanakan suatu pekerjaan merupakan salah satu bentuk nyata dari pemikiran komputasi.


Bedanya, jika sistem tersebut dibuat berlandaskan pemikiran komputasi, maka peraturan yang ada akan jauh menjadi lebih dinamis dan sesuai dengan kebutuhannya.


Misalnya, tanpa computational thinking pemerintah Amerika mengalami penambahan narapidana pemakai obat-obatan terlarang. Bahkan, penjara mereka yang tentunya cukup luas dengan daya tampung besar sudah tidak dapat menampungnya lagi.


Hal tersebut karena sistem hukum yang berlaku terlalu kaku, semua pengguna narkoba dianggap kriminal. Padahal, sebagian dari mereka tak lain sekedar korban yang bukan membutuhkan penjara, namun justru membutuhkan rehabilitasi. Computational thinking akan menerapkan alogirtma yang sesuai terhadap masing-masing profil pelanggar hukum.


Bandar dihukum berat (termasuk penjara), pengguna yang mengajak orang lain diberikan sanksi sosial hingga penjara, sementara korban pengguna yang “terbawa” cukup direhabilitasi saja. Terdapat sekuen yang berulang-ulang untuk memastikan setiap permasalahan ditangani oleh hal yang benar-benar akurat dan relevan yang merupakan salah satu bagian dari pemikiran komputasi: algorithm.



Tampaknya computational thinking sudah ada dalam kehidupan sehari-hari. Hal ini juga sudah kita ketahui tanpa adanya literasi ini. Lalu apa bedanya computational thinking dari pemikiran lain? Ini adalah salah satu hal yang banyak dipertanyakan oleh para ahli.


Kelemahan Computational Thinking

Beberapa ahli berpendapat bahwa computational thinking tidak memiliki pemikiran unik yang dapat membantu problem solving. Intinya, berbagai pendekatan dan metode lain telah memilikinya. Pengembangan sistem untuk menyelesaikan suatu repetisi telah dilakukan dari zaman dahulu.


Setidaknya, jika kita berkaca pada sejarah revolusi industri manusia, hal ini telah dilakukan bahkan dalam tahap revolusi industri awal. Bukankah inti yang dilakukan dalam computational thinking adalah: analisis, perancangan sistem, dan evaluasi?


Padahal, jika kita melihat kurikulum 13, pendekatan yang digunakan adalah pendekatan saintifik. Semua hal yang ada dalam computational thinking terdapat dalam pendekatan itu pula. Bahkan, pendekatan saintifik memiliki tools-tools yang jauh lebih luas lagi cakupannya jika dibandingkan dengan computational thinking.


Bisa dikatakan pula bahwa sebetulnya computational thinking tidak lebih dari sekedar turunan atau cabang pemikiran yang dihasilkan dari pendekatan saintifik pula. Jangan lupa bahwa teknologi adalah pengaplikasian sains.


Kelebihan

Namun bukan berarti computational thinking tidak berguna atau terlalu generik untuk diterapkan dalam kurikulum. Terkadang, jika kita tidak mengerucutkan suatu hal, bisa jadi dampak yang kita inginkan tidak maksimal.


Pendekatan saintifik mungkin terdengar jauh lebih kuat. Namun dalam implementasinya, bisa jadi siswa Indonesia belum membutuhkannya. Bisa jadi pendekatan saintifik jauh lebih efektif jika hanya diaplikasikan oleh perguruan tinggi yang berorientasi membentuk ilmuwan atau cendekia.


Sementara salah satu visi dari Mendikbud Nadiem Makarim sepertinya adalah memajukan SDM dan vokasi Indonesia. Dalam hal ini, computational thinking sangatlah menjanjikan. Apalagi jika kita menerapkan efisiensinya dalam problem solving.


Problem Solving

Computational thinking dapat diterapkan dalam banyak pemecahan masalah. Tahapnya yang efisien dan efektif dapat melatih siswa untuk bekerja secara sistematis dan menyeluruh. Problem solving bukanlah hal baru yang selalu digaungkan dalam dunia pendidikan.


Biasanya, guru akan memberikan masalah dan meminta siswa untuk memecahkannya dengan cara masing-masing. Namun tidak semua siswa mampu memulainya sendiri. Computational thinking dapat menjadi acuan dasar umum yang dapat digunakan dalam mata pelajaran, bidang, atau permasalahan apa pun.


Sebagai catatan akhir, mengapa problem solving menjadi salah satu kemampuan wajib di abad 21 ini? Kata kuncinya adalah kecepatan. Hari ini semua bidang menuntut suatu hal untuk dilakukan atau diproduksi dengan lebih cepat. Jika tidak, kita tidak akan mampu bersaing dengan perkembangan zaman yang memang menjadi jauh lebih cepat pula karena revolusi industri 4.0.


Namun, kecepatan tersebut memberikan dampak negatif pula. Apa? Yakni munculnya banyak masalah. Kulkas yang diproduksi zaman dulu jauh lebih awet dan tidak memberikan terlalu banyak masalah bukan? Berbeda dengan kulkas baru yang bisa jadi tiba-tiba rusak dalam 1-2 tahun saja.


Hal tersebut terjadi karena pengerjaannya tidak menggunakan timeline waterfall yang akan secara perlahan meriset, merancang, dan mengetesnya secara menyeluruh terlebih dahulu sebelum diproduksi massal.


Hari ini kebanyakan produsen kulkas melakukan timeline AGILE yang melakukan segalanya dengan lebih cepat karena semua proses dilakukan secara bersamaan. Hasilnya? Produksi jauh lebih cepat, namun permasalahan yang datang juga semakin banyak.


Fenomena tersebut tidak hanya terjadi dalam industri kulkas saja. Bahkan industri militer yang memproduksi pesawat tempur saja mengalami hal yang sama. Inilah mengapa problem solving menjadi kemampuan yang sangat penting untuk melakukan negasi terhadap dampak percepatan industri.


Referensi

Cansu, Fatih & Cansu, Sibel. (2019). An Overview of Computational Thinking. International Journal of Computer Science Education in Schools. 3. 3. 10.21585/ijcses.v3i1.53.

Wing, J. M. (2006). Computational thinking. Communications of the ACM, 49(3), 33-35.

Wing, J.M. (2011), Research Notebook: Computational thinking -what and why? The Link Magazine, 20-23. Tersedia Online https://www.cs.cmu.edu/link/research-notebook-computational-thinking-what-and-why

Artikel Terkait

Model Pembelajaran Problem Solving (Penjelasan Lengkap)


03-Februari-2021

Filsafat Ilmu: Pengertian, Ruang Lingkup, Pengetahuan & Ilmu


17-Januari-2020

Problem Based Learning (Model Pembelajaran Berbasis Masalah)


28-Januari-2021

Gabung ke Percakapan

 1 Komentar



Usman berkata:

12-Maret-2021 pada 09:57

Assalamualaikum warahmatullahi wb


Balas

Tinggalkan Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *


Komentar


Nama *


Email *


 Simpan nama, email, dan situs web saya pada peramban ini untuk komentar saya berikutnya.


 Beritahu saya akan tindak lanjut komentar melalui surel.


 Beritahu saya akan tulisan baru melalui surel.


Tinggalkan Komentar

Baca Artikel Terbaru


Teknologi Informasi dan Komunikasi (TIK)


Kerajinan Serat: Jenis, Pengolahan, Proses, Alat & Contoh


Partisipasi Warga Negara dalam Sistem Politik di Indonesia


Tata Kelola Pemerintahan yang Baik: Pengertian, Ciri & Unsur


Kewenangan Lembaga-Lembaga Negara Menurut UUD NRI Tahun 1945


Suprastruktur dan Infrastruktur Sistem Politik Indonesia

Trending


Model Pembelajaran: Pengertian, Ciri, Jenis & Macam Contoh


Contoh Teks Ulasan dan Strukturnya (Berbagai Topik)


Teks Drama: Pengertian, Ciri, Struktur, Unsur, Bentuk & Kaidah


Pendekatan Pembelajaran: Pengertian, Ciri, Macam & Jenis


Kritik Seni Rupa - Pengertian, Fungsi, Langkah & Penjelasan