Perisian ralat, adalah masalah dalam program komputer atau sistem perisian yang mencetuskan hasil yang tidak diingini. Program yang membantu dalam pengesanan dan penghapusan kesalahan pengaturcaraan perisian disebut debuggers. Banyak insiden terkenal yang disebabkan oleh jenis kesalahan ini termasuk pemusnahan pada tahun 1962 kapal selam Mariner 1.1 pada tahun 1996, Ariane 5 5012, dan pada tahun 2015 Airbus A400M.3.
Pada tahun 1967, pencipta Mak III melaporkan kes pertama kesalahan komputer yang disebabkan oleh pepijat. Mark III, komputer pengganti ASCC Mark II, yang dibina pada tahun 1944, mengalami kegagalan relay elektromagnetik. Semasa geganti ini disiasat, seekor rama-rama (bug) dijumpai yang menyebabkan relay tetap terbuka. Grace Murray Hopper, ahli matematik dan ahli fizik terkemuka yang bekerja sebagai pengaturcara di Mark II, mencatatkan serangga itu di dalam kayu pancingnya.
Kejadian ini secara keliru disebut sebagai asal usul penggunaan kata bahasa Inggeris bug (“bug”) untuk menunjukkan masalah pada peranti atau sistem.5 6 Sebenarnya, istilah bug sudah menjadi bagian dari bahasa Inggeris, sekurang-kurangnya sejak Thomas Alva Edison menggunakannya pada tahun 1889 mengenai gangguan dan kerosakan. Hopper mungkin pertama kali mengaitkannya dengan pengkomputeran - dalam kes ini, berkaitan dengan pepijat sebenar. Sebaliknya, walaupun pada tahun 1950-an Hopper juga menggunakan istilah debug dalam bahasa Inggeris ketika membincangkan penyahpepijatan dalam kod pengaturcaraan, penggunaan istilah yang direkodkan pertama dijumpai dalam Journal of the Royal Aeronautical Society 1945.
Sekiranya berlaku kesalahan, itu adalah perkataan yang digunakan oleh semua orang yang mempunyai pengetahuan dalam bidang sains komputer. Perkataan ini dalam bahasa Inggeris, terjemahan harfiah adalah "bug", digunakan untuk menamakan kesalahan yang berlaku dalam program komputer.
Kesalahan dihasilkan dalam pengaturcaraan reka bentuk perisian dan, pada satu ketika, ia menampakkan dirinya kepada pengguna. Beberapa kesalahan biasa adalah memasukkan pemboleh ubah yang tidak diinisialisasi pada saat yang tepat, pengindeksan jadual yang buruk dalam pangkalan data, penciptaan gelung tak terhingga, penggunaan fon yang sukar dibaca atau pilihan warna yang mengelirukan pengguna.