MASALAH SOFTWARE
Industri perangkat lunak
sebagian besar tertarik untuk mengembangkan industri software, dan bidang
rekayasa perangkat lunak yang berfokus pada bagaimana membuat sistem. Artinya,
masalah domain untuk rekayasa perangkat lunak adalah industrial software. Di
akhir buku, ketika kami menggunakan software, yang kami maksud perangkat lunak
industri. Dalam bab ini, kita akan belajar:
- Bahwa kulitas, biaya dan jadwal adalah
kekuatan utama yang mendorong industrial
project perangkat lunak.
- Bagaimana biaya dan produktivitas
didefinisikan dan diukur untuk project tersebut, dan bagaimana kualitas dari
software akan ditandai dan diukur.
- Bahwa skala besar dan perubahan adalah
atribut penting dari domain masalah dan pendekatan solusi harus menangani
mereka.
1.1
Biaya, Jadwal dan Kualitas
Meskipun kebutuhan kualitas tinggi membedakan software industri
dari yang lain, biaya dan jadwal yang menjadi kekuatan pendorong utama lainnya
untuk perangkat lunak tersebut. Dalam kekuatan industri domain software, ada
tiga kekuatan yang dasar yaitu biaya, jadwal, dan kualitas. Perangkat lunak ini
harus diproduksi dengan biaya murah, diwaktu yang wajar, dan harus berkualitas
baik.
Software industri sangat mahal karena faktanya bahwa
pengembangan perangkat lunak sangat rumit. Untuk mendapatkan ide dari biaya
yang terlibat, kita bisa perhatikan keadaannya saat praktik di industri. Baris kode (LOC) atau ribuan baris kode
(KLOC) yang paling umum digunakan ukuran ukuran software di industri.
Produktivitas di industri perangkat lunak,
untuk menulis kode umumnya berkisar dari beberapa ratus hingga sekitar
1000 LOC per bulan. Jadwal merupakan faktor penting dalam banyak project. Untuk
software ini berarti perlu dikembangkan lebih cepat, dan dalam waktu yang
ditentukan.
Untuk software ini berarti perlu
dikembangkan lebih cepat, dalam jangka waktu yang ditentukan. Pembangunan
adalah tujuan utama dari rekayasa perangkat lunak. Produktivitas dalam hal
Output (KLOC) per bulan dapat memadai biaya dan schedule. Jika produktivitas
lebih tinggi, itu harus jelas bahwa biaya dari orang akan lebih rendah
(pekerjaan yang sama kini dapat dilakukan dengan lebih sedikit per bulan).
Selain biaya dan jadwal, faktor utama
lainnya tentang software adalah kualitas. Hal ini, kualitas adalah salah satu
pokok utama, dan bisnis strategi yang dirancang sesuai dengan prosedur yang
ada. Sayangnya, sejumlah kasus besar telah terjadi mengenai tidak dapat
diandalkan perangkat lunak. perangkat lunak sering tidak melakukan apa yang seharusnya
dilakukan atau melakukan sesuatu tidak seharusnya dilakukan. Mengembangkan
perangkat lunak yang berkualitas tinggi adalah tujuan dasar dari gudang
rekayasa perangkat lunak. sementara biaya umumnya dipahami, konsep kualitas
dalam konteks perangkat lunak perlu penjelasan lebih lanjut. Standar
internasional tentang kualitas produk software menunjukkan bahwa kualitas
perangkat lunak terdiri dari enam atribut utama.
Atribut
dapat didefinisikan sebagai berikut:
- Functionality, kemampuan untuk menyediakan fungsi untuk
memenuhi kebutuhan yang software gunakan.
- Reability,
kemampuan untuk memperbaiki kegagalan.
- Usability, kemampuan untuk dipahami,
dipelajari, dan digunakan.
- Efficiency, kemampuan untuk memberikan
kinerja yang relatif dan tepat untuk jumlah sumber daya yang digunakan.
- Maintainability., kemampuan untuk
memodifikasi keperluan membuat perbaikan atau adaptasi.
- Portability, kemampuan untuk menyesuaikan
dengan lingkungan tertentu yang berbeda tanpa menerapkan tindakan selain yang
disediakan untuk tujuan dalam produk.
Tujuan kualitas adalah untuk mengurangi
jumlah bug per KLOC sebanyak mungkin. Untuk menentukan kualitas dari produk
software, kita perlu menentukan jumlah bug dalam perangkat lunak yang akan
disampaikan. Jumlah ini jelas tidak diketahui pada waktu pengiriman dan mungkin
tidak akan pernah diketahui. Ini berarti kualitas yang disampaikan software
hanya dapat ditentukan 6 bulan setelah pengiriman. Perlu dijelaskan jika
menggunakan definisi kualitas, apa yang cacat pada sebuah software harus
didefinisikan secara jelas. Sebuah cacat bisa menjadi masalah dalam perangkat
lunak yang menyebabkan software crash atau menjadi masalah yang menyebabkan
output menjadi tidak benar, salah mengeja beberapa kata, dll. Selain
kehandalan, atribut kualitas lain yang sangat menarik adalah pemelihara
kemampuan. Pemeliharaan diperlukan untuk mengubah perangkat lunak yang
dikirimkan untuk memenuhi kebutuhan pengguna dan lingkungan, yang mengarah ke
pemeliharaan adaptif. Selama sistem perangkat lunak hidup, biaya pemeliharaan
dapat jauh melebihi biaya pengembangan asli. Karena biaya yang tinggi ini,
atribut maintainability yang disampaikan software harus menarik dan jelas untuk
memiliki sistem perangkat lunak yang lebih mudah untuk mempertahankan.
1.2
Skala dan Perubahan
Kebanyakan sistem perangkat lunak
industri cenderung besar dan kompleks, membutuhkan puluhan ribu baris kode.
Seperti yang diharapkan, pengembangan sistem besar membutuhkan satu set yang
berbeda dari metode pengembangan sistem kecil, seperti metode yang digunakan
untuk mengembangkan sistem yang kecil sering tidak meningkatkan ke sistem yang
besar. Sebuah contoh yang akan menggambarkan hal ini. Mempertimbangkan masalah,
menghitung orang di sebuah ruangan dan membandingkannya dengan mengambil sensus
suatu negara. Keduanya dasarnya sama-sama menghitung masalah. Namun metode yang
digunakan untuk menghitung orang di sebuah ruangan akan tidak bekerja.
Setiap project software melibatkan
penggunaan teknik dan management project. Dalam project kecil, metode informal
bagi pengembangan dan pengelolaan dapat digunakan. Namun, untuk project-project
besar harus jauh lebih ketat seperti yang diilustrasikan pada Gambar 1.2.
Dengan kata lain, untuk berhasil melaksanakan proyek, sebuah metode yang tepat
untuk rekayasa sistem harus bekerja dan proyek telah dikelola ketat untuk
memastikan biaya yang, jadwal, dan kualitas tetap dapat terkontrol. Skala besar
adalah karakteristik kunci dari domain masalah dan pendekatan solusi yang harus
menggunakan alat dan teknik yang memiliki kemampuan untuk membangun sistem
perangkat lunak besar.
Tidak ada komentar:
Posting Komentar