Bab 1 : Pengenalan 1
Sejarah & Kepentingan
• 1950an
– Bahasa pengaturcaraan aras tinggi mula diperkenalkan
– Pengaturcaraan secara individu
– Pengaturcaraan menjadi bidang profession
Bab 1 : Pengenalan 2
Sejarah & Kepentingan
• 1960an
– Pengaturcaraan-skala-besar
• Cth: OS 360 untuk komputer IBM 360
– Pendekatan pengaturcaraan tradisional
– Wujud “Krisis Perisian” metodologi, kaedah, alatan
dan teknik yang digunakan tidak lagi praktikal dan
sesuai
– Istilah “Kejuruteraan Perisian” mula diperkenalkan
– Memerlukan tools, teknik dan kaedah yang lebih baik.
– Memerlukan pengamalan tools, teknik dan kaedah
tersebut
Bab 1 : Pengenalan 3
Sejarah & Kepentingan
• 1980 dan 1990an
– Teknologi berorientasikan objek muncul
– Komponen guna semula mempengaruhi
pembangunan
– Teknologi internet
– Pengurusan projek dibantu oleh pelbagai teknik
Bab 1 : Pengenalan 4
Sifat semulajadi perisian
Menjadikan proses pembangunan perisian
berbeza dan lebih sukar berbanding proses
kejuruteraan yang lain
– Mudah berubah dan diubah- disebabkan perubahan
persekitaran
– Tidak boleh dilihat- perisian adalah produk logikal
– Tiada penyelesaian yang piawai- bergantung kepada
pengalaman, jenis aplikasi, skop, tahap kesukaran
– Penyenggaraan yang unik- perisian yang perlukan
perubahan menyebabkan perubahan pada komponen-
komponen lain
Bab 1 : Pengenalan 5
Definasi Kejuruteraan Perisian
Kejuruteraan - penggunaan pendekatan
sistematik yang berasaskan sains dan matematik,
ke arah proses pengeluaran yang berstruktur
Perisian - kod sumber aturcara, sistem perisian
Definisi awal oleh F.Bauer[Press,97]
– ‘Penetapan dan penggunaan prinsip-prinsip
kejuruteraan yang baik di dalam memperolehi perisian
berhemat yang boleh diharap dan beroperasi dengan
cekap pada mesin-mesin nyata’
Bab 1 : Pengenalan 6
Definasi Kejuruteraan Perisian
IEEE Standard Glossary of Software Engineering,
1990
(i)Aplikasi pendekatan yang sistematik, berdisplin dan
boleh diukur terhadap pembangunan, operasi dan
penyelenggaraan perisian iaitu aplikasi kejuruteraan
kepada perisian
(ii)Kajian mengenai pendekatan-pendekatan yang terdapat
dalam perkara (i)
Bab 1 : Pengenalan 7
Apa itu “Kejuruteraan Perisian” ?
Pembangunan perisian yang pelbagai versi oleh
sekumpulan personel.
Pengaturcaraan-skala-besar.
Pendekatan sistematik di dalam pembangunan
perisian.
Suatu disiplin pengurusan dan teknikal yang
sistematik mengenai penciptaan, pengeluaran
dan penyenggaraan
Sistem perisian yang berkualiti tinggi, mengikut
tempoh yang tertentu, dengan kos yang
minimum.
Bab 1 : Pengenalan 8
Apa itu “Kejuruteraan Perisian” ?
Ringkasan :
Bab 1 : Pengenalan 9
Dasar teknologi KP
Kualiti dan prinsip sebagai dasar (hukum dan
garispanduan)
Proses perisian ialah rangkakerja keseluruhan
proses pembangunan
Kaedah (metodologi) dan alatan digunakan untuk
mencapai matlamat bagi setiap fasa dan aktiviti
dalam proses perisian.
Bab 1 : Pengenalan 10
Dasar teknologi KP
Alatan
Kaedah
Proses Perisian /
Paradigma Pembangunan Perisian
Bab 1 : Pengenalan 11
Kualiti Perisian
Klasifikasi kualiti
– .Kualiti luaran dan kualiti dalaman
• luaran adalah perspektif pengguna, dalaman perspektif
pembangun.
• sangat berhubung-kait. Cth. verifiability ----> reliability
Bab 1 : Pengenalan 12
Kualiti Perisian
Contoh-contoh kualiti:
Bab 1 : Pengenalan 13
Kualiti Perisian
Perlaksanaan (Performance)
– Penggunaan sumber/teknik yang optimum. Cth :
memory, disk space, processing time, algorithm, etc.
– 3 cara menilai performance : measurement, analysis &
simulation.
Bab 1 : Pengenalan 15
Kualiti Perisian
Kesengggaraan (Maintainability)
– modifikasi selepas versi yang pertama.
– bukan hanya “bug-fixing”
– penyenggaraan dikelaskan kepada : corrective,
adaptive dan perfective maintenance.
– Juga boleh dipecahkan kepada 2 iaitu : repairability
dan evolvability.
Bab 1 : Pengenalan 16
Kualiti Perisian
• Lain-lain kualiti perisian...
– Reuseability
– Portability
– Understandability
– Interoperatability
– Productivity
– Timeliness
– Visibility
Bab 1 : Pengenalan 17
Kualiti Perisian
Keutamaan kualiti:-
Pertimbangan yang perlu dibuat mengikut keadaan.
Information system
Real time system
Distributed system
Embedded systems
• Sangat dipengaruhi oleh kos.
– Cth :
Efficiency vs Cost
Reliability vs Cost
Maintainability vs Cost
Bab 1 : Pengenalan 18
Prinsip-prinsip KP
Keketatan (rigour) dan Formaliti (formaliti)
Rigour- Set peraturan dan langkah yang
jelas,terperinci
Formaliti- hukum-hukum matematik yang digunakan utk
mencapai sesuatu tujuan
Pemisahan Pertimbangan
Pemecahan masalah yang besar dan kompleks kepada
skop yang lebih kecil berdasarkan skop masa, kualiti,
perspektif dan spesifikasi kerja
Bab 1 : Pengenalan 19
Prinsip-prinsip KP
Modulariti
Pemecahan suatu sistem yang kompleks kepada modul-
modul yang akan dibangunkan secara berasingan
sebelum digabungkan semula
Peniskalan
Proses memisahkan aspek yang penting daripada
perincian suatu objek, fenomena atau fungsi pada
suatu masa dan keadaan tertentu
Bab 1 : Pengenalan 20
Prinsip-prinsip KP
Telahan terhadap perubahan
Menjangka perubahan yang mungkin terjadi dari segi
produk ataupun proses
Umum
Usaha untuk mengenalpasti penyelesaian yang lebih
umum terhadap masalah semasa
Peningkatan
Peningkatan produk dari masa ke semasa
Pembangunan pelbagai versi perisian dan penggunaan
prototaip
Bab 1 : Pengenalan 21