Lompat ke konten Lompat ke sidebar Lompat ke footer

Rekayasa Perangkat Lunak dan Pemecahan Masalah

Rekayasa Perangkat Lunak dan Pemecahan Masalah

Secara konsep, rekayasa perangkat lunak memiliki kedekatan dengan prinsip-prinsip pemecahan masalah. Pemahaman tentang masalah, strategi, dan proses pemecahan masalah serta pendekatan sistem pada pemecahan masalah, akan sangat membantu pada proses rekayasa perangkat lunak.

Masalah dan Gejala Rekayasa Perangkat Lunak

Masalah (problem), adalah: perbedaan antara kondisi yang terjadi dan kondisi yang diharapkan. Atau boleh juga diartikan sebagai perbedaan antara kondisi sekarang dengan tujuan yang diinginka. Sebagai contoh: seorang siswa berharap memperoleh nilai di atas 80 untuk ujian mata pelajaran Pemrograman C++, namun pada kenyataannya dia hanya memperoleh nilai 60. Adanya perbedaan ini menunjukkan adanya masalah.

Seringkali kita kesulitan membedakan antara gejala dan masalah. Gejala, adalah: tanda/petunjuk terjadinya suatu masalah. Seorang dokter dalam usaha mengobati penyakit pasien selalu bertanya dulu tentang gejala-gejala yang dirasakan pasien, kemudian menyimpulkan bahwa pasien menderita penyakit tertentu dan menentukan obat yang tepat. Pusing, demam, batuk, dan pilek merupakan gejala atau tanda dari penyakit flu. Apabila dokter hanya memberi obat sakit kepala, maka penyakit flu tidak akan sembuh. Satu masalah mungkin memiliki satu gejala, tetapi mungkin juga lebih. 

Mungkin kita bertanya-tanya apa hubungan masalah dan gejala dengan RPL. Seperti telah disampaikan di awal bab, perangkat lunak yang merupakan hasil dari RPL merupakan alat bantu yang digunakan untuk menyelesaikan tugas / masalah tertentu.  Apabila kita tidak mengetahui dengan benar masalahnya mustahil kita dapat menentukan bagaimana menyelesaikannya.  Dan, untuk mengetahui  dengan  baik  masalah,  maka  pengetahuan  tentang  gejala  dari masalah menjadi sangat penting.

Tipe-Tipe Masalah

Tipe-Tipe Masalah

1.    Masalah pemenuhan standar

Tipe masalah dalam kelompok ini adalah masalah yang berhubungan dngn pencapaian standar yang telah ditentukan dalam sebuah organisasi. Biasanya tujuan seperti ini berlaku dalam jangka yang relative panjang. Contoh: dalam pembuatan software dibutuhkan waktu dan proses yang panjang dalam pemenuhan standarnya.

2.    Masalah pemilihan alternative

Berhubungan dengan bagaimana memilih solusi terbaik dari berbagai alternative berdasarkan criteria-kriteria tertentu. Permasalahan ini seringkali kita jumpai dlam kehidupan sehari-hari. Contoh: memilih sekolah yang tepat, memilih bidang pekerjaan, memilih lokasi tempat tinggal. Masing-masing alternative dan criteria memiliki bobot yang telah disepakati.

3.    Masalah pemenuhan kepuasan konsumen

Pada organisasi yang bersifat profit (mencari laba), masalah pada kelompok ini merupakan tipe yang seringkali muncul. Konsumen memiliki berbagai macam keinginan yang satu berbagai macam keinginan yang berbeda. Memenuhi seluruh keinginan konsumen sangat tidak mungkin dan sangat memberatkan sebuah organisasi. Oleh karena itu perlu dicari pemecahan yang sama-sama menguntungkan, baik bagi konsumen maupun organisasi tertentu.

4.    Masalah pencapaian tujuan

Tipe ini mirip dengan tipe pertama (masalah pemenuhan standar). Yang berbeda adalah pada tipe ini tujuan yang ingin dicapai dapat berubah-ubah dan jangka pendek.

Pemecahan Masalah

Pemecahan masalah adalah sebuah proses dimana suatu situasi diamati kemudian bila ditemukan ada masalah dibuat penyelesaiannya dengan cara menentukan masalah, mengurangi atau menghilangkan masalah atau mencegah masalah tersebut terjadi. 

  1. Proses pemecahan masalah
  2. Pendefinisian masalah
  3. Analisis situasi
  4. Pengembangan ide-ide solusi
  5. Analisis ide-ide solusi
  6. Pengambilan keputusan
  7. Penerapan solusi

Ada banyak urutan proses pemecahan masalah yang diajukan oleh para ahli, salah satunya seperti terlihat pada Gambar berikut.

Pemecahan Masalah

Pada gambar terlihat serangkaian tahapan proses yang berbeda yang dapat  digunakan  dalam  berbagai  tingkatan,  tergantung  dari  tipe  dan  sifat masalahnya.  Masalah  yang  berbeda  membutuhkan  penggunaan  cara  yang berbeda, bahkan mungkin urutan yang berbeda. Tahapan kritis dari proses pemecahan masalah adalah apabila masalah tidak cukup  jelas didefinisikan maka tahapan-tahapan berikut sulit untuk dijalankan. Bahkan apabila dipaksakan, kemungkinan besar penyelesaian yang tepat tidak akan diperoleh.

Secara  umum  proses  pemecahan  masalah  dapat  dilakukan  dengan empat tahapan utama yaitu :

Memahami dan mendefinisikan masalah

Bagian ini merupakan bagian yang sangat penting karena menjadi awal dari seluruh  proses  pemecahan  masalah.    Tujuan  pada  bagian  ini  adalah memahami  masalah dengan baik dan  menghilangkan bagian-bagian yang dirasa kurang penting.

Membuat rencana untuk pemecahan masalah

Pada bagian ini ada dua kegiatan penting yaitu :

  • Mencari berbagai cara penyelesaian yang mungkin diterapkan b)  membuat rencana pemecahan masalah

Penyelesaian suatu masalah biasanya  tidak hanya  satu tapi mungkin bisa beberapa macam.  Sebagai ilustrasi, apabila kita berada di kota Surabaya dan ingin pergi ke Jakarta, maka banyak cara yang mungkin bisa dilakukan, misalnya kita bisa menempuh dengan angkutan  darat, laut atau udara. Dengan  angkutan  darat  kita  bisa  menggunakan  kereta  api,  bus  atau angkutan yang lain.  Jalurnya pun kita bisa lewat jalur utara, tengah atau selatan.  Jadi banyak sekali cara penyelesaian yang bisa kita kembangkan. Masing-masing mempunyai karakteristik sendiri-sendiri.  Dari sekian banyak penyelesaian  ini  kita  harus  memilih  satu  yang  berdasarkan  persyaratan tertentu   merupakan   cara   yang    paling   baik    untuk   menyelesaikan permasalahan.  Setelah  terpilih, maka kita dapat  membuat rencana kasar

  • (outline) penyelesaian masalah dan membagi masalah dalam bagian-bagian yang lebih kecil.  Rencana kasar (outline) penyelesaian masalah hanya berisi tahapan-tahapan utama penyelesaian masalah.

Merancang dan menerapkan rencana untuk memperoleh cara penyelesaian

Pada  bagian  ini  rencana  kasar  penyelesaian   masalah  diperbaiki  dan  diperjelas dengan pembagian dan urutan rinci yang harus ditempuh dalam penyelesaian masalah

Memeriksa dan menyampaikan hasil dari pemecahan masalah

Bagian ini bertujuan untuk memeriksa apakah akurasi (ketepatan) hasil dari  cara yang dipilih telah memenuhi tujuan yang diinginkan.  Selain itu juga untuk melihat bagaimana daya guna dari cara yang dipilih yang dipilih.

Posting Komentar untuk "Rekayasa Perangkat Lunak dan Pemecahan Masalah"