Kualitas Perangkat Lunak
Ukuran kualitas perangkat lunak dilihat dari atribut antara lain :
- Maintainability, yaitu tingkat kemudahan perangkat lunak tersebut dalam mengakomodasi perubahan-perubahan
- Dependability, ketidakbergantungan perangkat lunak dengan elemen-elemen sistem lainnya atau sistem secara keseluruhan.Artinya kegagalan elemen lain tidak mempengaruhi performansi perangkat lunak
- Efficiency, menyangkut waktu eksekusi
- Usability, yaitu atribut yang menunjukkan tingkat kemudahan pengoperasian perangkat lunak
Aplikasi Perangkat Lunak
Pressman [PRE01] mendefinisikan aplikasi perangkat lunak sebagai berikut:
Perangkat lunak sistem
Suatu perangkat lunak yang berfungsi melayani perangkat lunak lain, seperti : kompilator, editor, sistem operasi, utilitas, da lain-lain.
- Perangkat lunak Real time (waktu nyata)
Suatu perangkat lunak yang berfungsi mengendalikan, memonitor atau menganalisis kejadian (event) yang terjadi pada keadaan nyata.
Perangkat lunak ini mempunyai komponen sebagai
berikut :
• komponen pengumpul data : mengumpulkan & memformat informasi dari lingkungan eksternal
• komponen analisis: melakukan transformasi informasi yang dibutuhkan aplikasi
• komponen control/output: merespon lingkungan eksternal
• komponen pemonotoran : mengkoordinasi seluruh komponen sehingga respon real time yang diinginkan dapat tercapai.
- Perangkat lunak bisnis
Perangkat lunak yang mengakses satu atau lebih basisdata besar yang berisi informasi bisnis, sebagai contoh sistem payroll, sistem invetori, dan lain-lain.
- Perangkat lunak keteknikan dan keilmuan
Perangkat lunak ini banyak membantu memecahkan permasalahan di bidang astronomi, vulkanologi,
automotive stress analysis, molecularbiology, automotive manufacturing, ComputerAided Design (CAD), dan lain-lain
- Embedded Software
embedd software Perangkat lunak yang ditanam pada suatu chip (EEPROM). Perangkat lunak ini terintegrasi
dengan perangkat keras dan berfungsi mengatur kinerja dari perangkat keras tersebut.
Sebagai contoh :
microwave oven, telpon genggam, pengaturan avionik pesawat udara, dan lain-lain.
Perangkat lunak Komputer personal (PC) Perangkat lunak yang dioperasikan di PC, seperti : pengolah kata,
multimedia, DBMS.
- Perangkat lunak Kecerdasan Buatan
Perangkat lunak yang menerapkan algoritma nonnumerik untuk memecahkan permasalahan yang kompleks.
Contoh :
perangkat lunak kecerdasan buatan, sistem pakar, dan lain-lain.
PROSES PERANGKAT LUNAK
Proses perangkat lunak adalah sebuah kerangka kerja untuk membangun perangkat lunak yang
berkualitas tinggi
dapat dilihat bahwa tujuan utama rekayasa perangkat lunak adalah pencapaian kualitas (“Quality Focus”).
Kualitas ini diterjemahkan ke dalam ukuran-ukuran(metrics), meliputi maintaiability, dependability,usability,
dan efificientcy yang sudah diterangkan diatas.
Proses : mendefinisikan kerangka kerja (frame work), sehingga pembangunan perangkat lunak dapat dilakukan
secara sistematis.
Metode : mendefinisikan bagaimana perangkat lunak dibangun, meliputi metode-metode yang digunakan
dalam melakukan analisis kebutuhan, perancangan, implementasi dan pengujian.
Sebagai contoh : metode terstruktur, metode berorientasi objek, dan lain-lain.
Alat Bantu : perangkat yang bersifat otomatis maupun semiotomatis yang berfungsi mendukung tiap tahap
pembangunan perangkat lunak.
Contoh : CASE, CAD, dan lain-lain.
MODEL PROSES
Fungsi utama model proses pengembangan perangkat lunak adalah :
- menentukan tahap-tahap yang diperlukan untuk pengembangan perangkat lunak.
- menentukan urutan pelaksanaan dari tahap- tahap tersebut dalam rangka pengembangan perangkat lunak.
- menentukan kriteria transisi/perpindahan dari satu tahap ke tahap berikutnya.
a. Model Linier Sekuensi
al Gambar 2.6 Model LinierSekuensial [PRE01 ]
ANALYSIS -----> DESIGN ------> CODE -------> TEST
Analysis : merupakan tahap untuk menganalisis hal-hal yang diperlukan dalam pelaksanaan perancangan (Design) pembangunan perangkat lunak . Hasil analisis didokumentasikan dan dikaji ulang oleh customer.
Perancangan (Design) : tahap ini merupakan tahap penerjemahan dari kebutuhan fungsional dan
implementasi data yang telah dianalisis ke dalam bentuk yang mudah untuk dimengerti oleh programmer.
Implementasi ( Code Generation ) : mengimplementasikan hasil rancangan ke dalam bahasa pengujian (Testing) pemrograman
komputer yang telah ditentukan
Pengujian (Testing) : Uji coba perangkat lunak yang terfokus pada logika internal dari perangkat lunak dan kesesuaian perangkat
lunak yang dibangun dengan kebutuhan fungsional yang di definisikan.
Model proses ini sering disebut juga dengan model proses waterfall. Tiap tahap pada proses model ini diakhiri dengan proses
dokumentasi. Oleh karena itu model ini juga sering disebut dengan model Document Driven Software Process.
b. Model Prototyping
Tidak semua custumer mampu mendefinisikan kebutuhannya secara detail. Oleh karena itu diperlukan prototype untuk mengeksplorasi kebutuhan custumer. Dengan melihat prototype custumer dapat mengevaluasinya dan memberikan masukan - masukan pada pengem
bang sehingga prototype yang dibangun semakin mendekati kebutuhan yang sebenarnya.
model ini sering di kenal sebagai " Code Driven Software Process " dan merupakan salah satu proses perangkat lunak yang banyak digunakan saat ini. Model prototyping banyak memanfaatkan 4GL dan Application Generator.
Dibandingkan dengan metode linier sekuansial model ini memiliki produktivitas lebih baik namun kelengkapan fungsi dari sistem dan keterpaduan ( integrasi )sistem kurang baik.
c. Model Spiral
Model ini sering dikenal sebagai Risk Driven Software Process. Model ini sesuai untuk pengembangan proyek yang berskala besar
dengan memperhatikan pengaruh resiko dari segi finansial maupun keamanan ( jiwa manusia ).
Model ini merupakan kombinasi dari linier sekuansial. prototyping, dan Risk Analysisi. pada tiap akhir tahap di buat dokumen hasil
analisi resiko.
Tidak ada komentar:
Posting Komentar