Apa saja faktor yang membuat sebuah program terjadi error?

Dalam sebuah program tentu tidak selamanya akan berjalan sesuai yang kita inginkan, dalam proses pembuatannya saja pasti sering menemui error, nah Apa saja faktor yang membuat sebuah program terjadi error ?.

Error dalam sebuah program adalah hal yang wajar-wajar saja, mengapa demikian ?, karena dengan sebuah error kita dapat mempelajari penyebab terjadinya error tersebut, dengan mengetahui penyebabnya kita dapat menanggulanginya kembali jika terjadi kesalahan yang sama. Dalam error nya sebuah program pasti memiliki faktor-faktor yang membuat terjadinya error, dilihat dari tingkatannya errornya sebuah program ada 3 tingkatan, diantaranya : Error Tata Bahasa Sintaks, Error Runtime, Logical Error.

Faktor yang pertama Tata Bahasa Sintaks :hushed:
Error Tata Bahasa (Sintaks) merupakan jenis error yang paling banyak terjadi. Namun error ini paling mudah terdeteksi karena umumnya compiler atau interpreter dari masing-masing bahasa program akan melakukan pengecekan sebelum program dijalankan (saat dikompilasi). Lokasi baris yang menyebabkan error juga biasanya sudah ditunjukkan. Hanya perlu kejelian untuk memperbaikinya. Tata Bahasa Sintaks sangat mempengaruhi dalam berjalan atau suksesnya program tersebut, dengan adanya sintaksis yang tepat sebuah program akan berjalan dengan semestinya atau sesuai dengan yang kita inginkan, namun jika sintaksis sebuah program mengalami error atau salah ketik satu digit saja, program itu akan error.

Faktor yang kedua Error Runtime :roll_eyes:
Error Runtime merupakan tingkatan selanjutnya. Dimana error ini akan terdeteksi saat program dijalankan. Penyebabnya dapat bermacam-macam, namun pada umumnya terjadi kesalahan dalam proses input, perhitungan dan juga dalam proses output. Sebagai contoh yang banyak terjadi adalah error runtime karena pembagian suatu bilangan dengan nol, semua bilangan yang dibagi nol akan menghasilkan bilangan yang tak terdefinisi sehingga program akan terjadi error daat di run.

Faktor yang ketiga Logical Error :weary:
Logika Error merupakan tingkatan error yang paling sulit dieteksi karena terjadinya bukan karena kesalahan penulisan (sintaks) atau kesalahan proses runtime, namun kesalahan dari sisi programmer atau orang yang membuat program tersebut, dalam hal ini bisa saja algoritma yang digunakan salah atau tidak tepat. Karena logika yang digunakan oleh programmer tersebut salah, tentunya output yang dihasilkan juga akan salah. Untuk mendeteksi letak kesalahannya, bukanlah hal yang mudah. Terkadang kita harus mengecek ulang algoritma yang digunakan baris per baris (line-by-line) dari awal hingga akhir.

Sumber :man_technologist: :

FAKTOR YANG MEMBUAT SEBUAH PROGRAM TERJADI ERROR

trouble
Dalam sebuah program pastinya ada saja yang namanya kelemahan atau biasa dibilang bug. Biasanya bug ini muncul karena beberapa faktor. Bug ini juga sering menjadikan sebuah programnya terjadi error. Ini merupakan penyebab yang sering terjadi pada saat program mengalami error.

  1. Faulty requirement definition
    “Faulty Requirement Definition”, adalah salah satu faktor utama yang dapat menyebabkan error pada pembuatan software. Biasanya yang sering terjadi pada kesalahan tipe ini yaitu kesalahan pendefinisian kebutuhan software, tidak disertakan kebutuhan sofware yang bersifat vital/penting, ketidaklengkapan pendefinisian kebutuhan software, pencantuman kebutuhan software yang sebenarnya tidak terlalu perlu diadakan. Kesalahan ini biasanya dilakukan oleh pihak klien.

  2. Client-developer communication failures
    salah paham yang muncul dari komunikasi antara client dan developer baik secara tertulis maupun non tertulis. Komunikasi memang sangat penting agar kita paham bahwa developer sangat dibutuhkan bagi seorang client.

  3. Deliberate deviation from SW requirements
    Penyimpangan kebutuhan.

  4. Logical design errors
    Error yang terjadi pada saat merancang sebuah sistem.

  5. Coding errors
    Kesalahan yang terjadi pada saat membuat sebuah code yang nantinya akan dibuat menjadi sebuah aplikasi. Tentunya pasti akan saat berpengaruh jika program itu dijalankan.

  6. Non-compliance with documentation and coding instructions
    error menyebabkan kesulitan dalam mengkoordinasikan modul2,memahami ranah kerja,review desain, memahami software dan dokumentasinya.

  7. Shortcomings of the testing process
    waktu yang singkat menyebabkan percobaan sebuah aplikasi tidak komplit dan kegagalan dalam mendokumentasikan dan melaporkan error yang terjadi pada program.

  8. Procedure errors
    jika sebuah prosedur error, maka tidak dapat mengarahkan user dengan urutan yang benar. Tentunya akan mengakibatkan jalannya program menjadi tidak teratur.

  9. Documentation errors
    Biasanya sebuah program tentunya ada sebuah dokumentasi. Pada saat proses pembuatan dokumentasi ini lah sering terjadi kesalahan. Akibatnya, sebuah program akan terganggu dan akan menyebabkan error.

SOURCE :

Ketika terjadi kesalahan, untuk Syntax Error dan Runtime Error, program akan menampilkan “Error Message" yang menjelaskan kesalahan dan penyebabnya. Tetapi “Error Message” tersebut sulit untuk ditafsirkan dan kadang kala menyesatkan. Untuk Logic Flaw, program tidak menampilkan “Error Message”, tetapi program tidak akan melakukan apa yang diinginkan oleh progammer.

1. Syntax Errors

Kesalahan ini paling mudah terdeteksi oleh kompilator. Sintaks error disebabkan oleh kesalahan programmer dalam menggunakan aturan gramatikal bahasa pemrogaman yang benar (tata cara penulisan sintaks). Jika sebuah program memiliki kesalahan sintaks, maka tidak dapat diterjemahkan dan program tidak akan dieksekusi. Namun ada juga program yang dapat dieksekusi tetapi menghasilkan error. Kompilator akan akan memberi tahu pada baris mana yang sintaksnya salah dalam penulisannya

2. Run-time Errors

Run-time error akan terdeteksi dan ditampilkan saat program dieksekusi. Saat run-time error terjadi, komputer akan berhenti mengeksekusi program Anda, dan menampilkan pesan diagnostik yang menunjukkan pada baris mana kesalahan terjadi. Run-time error terjadi saat programmer mengarahkan program untuk melakukan operasi ilegal, seperti :

- Membagi angka berapapun dengan angka nol
- Salah mendeklarasikan tipe data
- Menggunakan variabel dalam sebuah program yang belum ada nilai datanya.

3. Logic Flaws / Logika yang Buruk

Kesalahan ini sulit ditemukan karena tidak memberhentikan program. Logic Flaws dikarenakan dari pola pikir programmer yang salah. Program dengan logika yang buruk tetap akan dikompilasi, dieksekusi, dan memberikan output. Namun, kadang kalanya outputnya juga akan salah. Error Message umumnya tidak akan muncul jika terjadi kesalahan ini, sehingga membuat Logic Flaws sulit ditemukan dan diperbaiki.

Referensi : Types of Program Error