Definisi Software
-
Upload
shabrina-sari-medina -
Category
Documents
-
view
245 -
download
0
description
Transcript of Definisi Software
Definisi Software
Software: Program komputer, prosedur, dan dokumentasi dan data yang berkaitan dengan
pengoperasian suatu sistem komputer. Keempat komponen yang diperlukan dalam rangka untuk
menjamin kualitas proses pengembangan perangkat lunak dan untuk alasan pelayanan pemeliharaan
pada masa mendatang adalah sebagai berikut:
Program komputer (code) diperlukan untuk mengaktifkan komputer untuk melakukan aplikasi
yang diperlukan.
Prosedur yang diperlukan, untuk menentukan urutan dan jadwal di mana program yang
dilakukan, metode yang digunakan, dan orang yang bertanggung jawab untuk melakukan
kegiatan yang diperlukan untuk menerapkan perangkat lunak.
Berbagai jenis dokumentasi yang dibutuhkan untuk pengembang, pengguna dan personil
pemeliharaan.
Data termasuk parameter, kode dan daftar nama yang mengadaptasi perangkat lunak. Untuk
kebutuhan pengguna tertentu mungkin diperlukan operasi tertentu dari perangkat lunak.
Software errors, faults and failures
Asal dari kegagalan perangkat lunak (software failures) terletak pada kesalahan perangkat lunak
(software error) yang dibuat oleh programmer. Sebuah error dapat berupa kesalahan tata bahasa
dalam satu atau lebih baris kode, atau kesalahan logis dalam melaksanakan satu atau lebih dari
kebutuhan klien.
Tidak semua error pada perangkat lunak menjadi kesalahan perangkat lunak (software fault). Dengan
kata lain, error pada perangkat lunak hanya menyebabkan fungsi yang tidak tepat dari perangkat
lunak secara umum atau dalam aplikasi tertentu.
Sebuah kesalahan pada perangkat lunak (software faults) akan menjadi kegagalan pada perangkat
lunak (software failure) hanya ketika “diaktifkan", artinya ketika user mencoba menjalankan perangkat
lunak yang fault tersebut.
2.3 Classification of the causes of software errors
Error pada perangkat lunak adalah penyebab berkurangnya kualitas perangkat lunak. Error pada
software dapat berupa "kesalahan kode", sebuah "kesalahan prosedur", sebuah "kesalahan dalam
dokumentasi", atau "kesalahan data software". Penyebab dari semua kesalahan ini adalah manusia,
yaitu kesalahan yang dibuat oleh analis sistem, programer, penguji perangkat lunak, ahli
dokumentasi, manajer dan bahkan klien itu sendiri
Penyebab kesalahan perangkat lunak dapat diklasifikasikan lebih lanjut sebagai berikut sesuai
dengan tahapan proses pembangunan perangkat lunak.
(1) Kegagalan dalam pendefinisian dari kebutuhan
Gagalnya pendefinisian dari kebutuhan, biasanya disebabkan oleh klien. Jenis kegagalannya berupa:
Kesalahan pendefinisian kebutuhan, beberapa kebutuhan utama/vital tidak disebutkan, pendefinisian
kebutuhannya tidak lengkap dan pencantuman persyaratan/kebutuhan yang tidak benar-benar
diperlukan.
(2) Kegagalan komunikasi antara klien-pengembang
Kesalahpahaman yang diakibatkan cacat/kegagalan komunikasi antara client-pengembang
merupakan penyebab lain terjadinya error kesalahan yang terjadi pada tahap awal dari proses
pembangunan:
Kesalahpahaman terhadap instruksi klien sebagaimana dinyatakan dokumen kebutuhan.
Kesalahpahaman terhadap perubahan kebutuhan klien yang disampaikan kepada pengembang
dalam bentuk tertulis selama periode pembangunan.
Kesalahpahaman terhadap perubahan kebutuhan klien yang disampaikan secara lisan kepada
pengembang selama masa pembangunan.
Kesalahpahaman atas tanggapan klien terhadap masalah desain yang disajikan oleh pengembang.
Kurangnya perhatian pada pesan klien atas perubahan kebutuhan dan respon klien untuk
pertanyaan yang diajukan oleh pengembang pada bagian dari proses pengembangan.
(3) Penyimpangan yang disengaja dari kebutuhan perangkat lunak
Dalam beberapa keadaan, pengembang sengaja menyimpang dari persyaratan/kebutuhan yang
sudah didokumentasikan, tindakan yang sering menyebabkan kesalahan perangkat lunak. Situasi
yang paling umum dari penyimpangan yang disengaja adalah:
Pengembang menggunakan kembali modul perangkat lunak yang diambil dari proyek sebelumnya
tanpa analisis yang cukup dari perubahan dan benar-benar memenuhi semua kebutuhan software
yang baru.
Karena tekanan waktu atau anggaran, pengembang memutuskan untuk menghilangkan bagian dari
fungsi yang diperlukan dalam upaya untuk mengatasi tekanan ini.
Inisiatif Sendiri. Pengembang melakukan perbaikan/pengembangan perangkat lunak tanpa
persetujuan klien, sering mengabaikan persyaratan yang tampaknya kecil dari sisi pengembang.
(4) Kesalahan desain logis
Kesalahan perangkat lunak (software error) seperti ini biasanya terjadi saat para profesional yang
merancang sistem - sistem arsitek, insinyur perangkat lunak, analis, dll – sedang merumuskan
kebutuhan dari perangkat lunak. Kesalahan khas meliputi:
Definisi kebutuhan perangkat lunak dengan algoritma yang salah.
Pendefinisian proses yang mengandung kesalahan dalam urutan (sequence).
Keliru pendefinisian kondisi batas.
Penghapusan definisi tentang reaksi operasi yang tidak diperbolehkan dari sistem perangkat lunak.
(5) Kesalahan Coding
Terdapat banyak alasan yang menyebabkan seorang programmer untuk membuat kesalahan coding.
Antara lain kesalahpahaman pada dokumentasi desain, kesalahan linguistik dalam bahasa
pemrograman, kesalahan dalam penerapan CASE dan tools pembangunan lainnya, kesalahan dalam
seleksi data, dan sebagainya.
(6) Tidak dipenuhinya dokumentasi dan instruksi pengkodean
Hampir setiap unit pengembangan memiliki dokumentasi sendiri dan standar pengkodean yang
mendefinisikan konten, urutan dan format dari dokumen, dan kode yang dibuat oleh anggota tim.
Untuk mendukung kebutuhan ini, unit mengembangkan dan mempublikasikan template dan instruksi
pengkodean. Anggota tim pengembang atau unit diwajibkan untuk memenuhi kebutuhan tersebut.
(7) Kelemahan dari proses pengujian
Kelemahan proses pengujian mempengaruhi tingkat kesalahan dengan meninggalkan sejumlah besar
kesalahan yang tidak terdeteksi atau dikoreksi. Kelemahan tersebut disebabkan:
Rencana uji yang tidak lengkap dapat menyebabakan tidak diperbaikinya beberapa bagian dari
perangkat lunak atau fungsi aplikasi suatu sistem.
Kegagalan untuk mendokumentasikan dan melaporkan kesalahan yang terdeteksi.
Kegagalan untuk segera memperbaiki kesalahan perangkat lunak yang terdeteksi.
Koreksi kesalahan yang terdeteksi tidak lengkap karena kelalaian atau tekanan waktu.
(8) Kesalahan prosedur
Prosedur mengarahkan user pada kegiatan yang diperlukan pada setiap langkah proses. Prosedur
adalah penting khususnya dalam sistem software yang kompleks di mana pengolahan dilakukan
dalam beberapa langkah.
(9) Kesalahan dokumentasi
Kesalahan dokumentasi yang dapat mengganggu tim pengembangan dan pemeliharaan adalah
kesalahan dalam dokumen desain dan dalam dokumentasi yang terintegrasi ke dalam perangkat
lunak. Kesalahan ini dapat menyebabkan tambahan kesalahan dalam tahap lanjut dari kegiatan
pengembangan dan pemeliharaan. Tipe lain dari kesalahan dokumentasi, salah satu yang
mempengaruhi pihak pengguna adalah kesalahan dalam “user manual” dan dalam "helps" yang
ditampilkan dalam perangkat lunak.