3 Langkah Sederhana dalam Problem Solving

3 Langkah Sederhana Dalam Problem Solving

3 Langkah Sederhana Dalam Problem Solving

Sebagai seorang software developer, technical support, engineer kita perlu memiliki keahlian memecahkan masalah (problem solving skill). Tanpa keahlian dasar ini, segala macam tools yang kita miliki tidak akan membantu atau bermanfaat banyak. Sayangnya di jaman sekarang, sebagian besar software developer ternyata bukan problem solver yang handal. Akibatnya, software developer sulit mengatasi problem atau bug yang terdapat dalam softwarenya.

Untuk membantu software developer dalam melakukan problem solving, berikut saya bagikan 3 Langkah Sederhana dalam Problem Solving.

1. Memahami/Menguasai Masalah (Understanding the Problem)

Definisikan dulu masalahnya apa. Apakah Anda paham maksud dari error message yang muncul? Apakah Anda paham hasil/keadaan yang diharapkan/seharusnya? Apakah Anda paham algoritma yang Anda terapkan?

Kesalahan utama ada di tahap ini. Programmer/developer tidak memahami situasi yang dihadapi atau problem yang muncul. Akibatnya, solusinya tidak ketemu-ketemu. Jika dalam 10 menit pertama, Anda tidak bisa mendefinisikan masalahnya apa, maka Anda tidak akan mampu menyelesaikan problem tersebut.

2. Menemukan Akar Masalah/Penyebab (Find the Root Cause)

Dunia ini tunduk pada Hukum Sebab-Akibat. Problem adalah akibat, dan akibat tidak bisa kita ubah. Jika Anda perbaiki penyebabnya, akibatnya lebih baik. Jika Anda cabut penyebabnya, problemnya tidak akan muncul lagi/berulang.

Dapatkah Anda menentukan dengan jelas penyebabnya apa? Di proses yang mana problem tersebut muncul? Dari operasi apakah problem tersebut muncul? Di baris yang mana problem tersebut muncul?

Tentukan dengan spesifik apakah akar masalahnya atau penyebabnya.

3. Mencabut Akar Masalah/Penyebab (Remove the root cause)

Setelah menemukan akar masalahnya, tentu Anda tahu cara mencabutnya atau memperbaikinya. Bisa dari operasi matematika yang salah, operasi pointer, operasi numerik yang berbeda range, kesalahan sintaks SQL, salah urutan proses, nilai input yang melebihi range maksimum dan kesalahan coding lainnya yang menyebabkan problem tersebut muncul.

Pastikan Anda memiliki dokumentasi, manual dan bahan untuk belajar. Di tahap ini, kemampuan algoritma Anda diperlukan untuk membuat (construct) solusi yang diperlukan. Inilah inti dari kegiatan pemrograman, membuat algoritma atau membangun solusi dalam bentuk software.

Lakukan pengujian kembali. Jika problem masih muncul, artinya Anda harus perbaiki lagi algoritmanya. Jika problem tetap muncul dan berulang, artinya akar masalahnya belum ditemukan dengan benar.

Penutup

Ada banyak petunjuk mengenai problem solving dengan langkah yang lebih panjang dengan ketelitian lebih baik. Ada banyak teknik-teknik, metode maupun permodelan yang bisa kita gunakan. Masing-masing memiliki kelebihan, akurasi dan effort yang harus dikeluarkan. Teknik-teknik ini akan kita bahas di tulisan berikutnya.

Incoming search terms:

  • Wah keren bang…., harus di pelajari nih… :), numpang reshare yah bang : x_x