Perisian komputer memainkan peranan yang besar dalam kehidupan manusia
Oleh itu, teknologi perisian perlu sentiasa berkembang dan menjadi lebih baik
Teknologi perisian teknik-teknik pengaturcaraan, analisa, komunikasi data, rekabentuk, alatan, spesifikasi, pengurusan dan sebagainya .(Kajian dan aplikasi terhadap teknik-teknik tersebut terkandung dalam bidang kejuruteraan perisian)
Sejarah & Kepentingan
1950an
Bahasa pengaturcaraan aras tinggi mula diperkenalkan
Pengaturcaraan secara individu
Pengaturcaraan menjadi bidang profession
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
Sejarah & Kepentingan
1980 dan 1990an
Teknologi berorientasikan objek muncul
Komponen guna semula mempengaruhi pembangunan
Teknologi internet
Pengurusan projek dibantu oleh pelbagai teknik
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
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’
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)
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.
Apa itu “Kejuruteraan Perisian” ?
Ringkasan :
“ Kejuruteraan Perisian adalah pendekatan sistematik menggunakan prinsip-prinsip kejuruteraan untuk membangun, melaksana dan menyenggara perisian yang berkualiti tinggi”
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.
Dasar teknologi KP Fokus Kualiti & Amalan Prinsip-prinsip Kejuruteraan Perisian Proses Perisian / Paradigma Pembangunan Perisian Kaedah Alatan
Kualiti Perisian
Klasifikasi kualiti
. Kualiti luaran dan kualiti dalaman
luaran adalah perspektif pengguna, dalaman perspektif pembangun.
sangat berhubung-kait. Cth. verifiability ----> reliability
. Kualiti produk dan kualiti proses
proses digunakan untuk menghasilkan produk
Produk : reliability, performance, correctness, etc.
Proses : cost-estimation, man-month, etc.
Juga ada hubung-kait, cth : a good planning ---> reliability
Kualiti Perisian
Contoh-contoh kualiti:
berfungsi sebagaimana yang dikehendaki
Ketepatan ( Correctness) - berfungsi mengikut “functional requirements specification”.
Keboleharapan (Reliability) - kebolehbergantungan di dalam melakukan kerja. Error free? Known-bugs?
Ketegapan ( Robustness) - melakukan kerja dengan baik walaupun di dalam keadaan yang tidak dijangka. Cth. : input salah, disk crash etc.
Kualiti Perisian
Perlaksanaan (Performance)
Penggunaan sumber/teknik yang optimum. Cth : memory, disk space, processing time, algorithm, etc.
3 cara menilai performance : measurement, analysis & simulation.
Ramah pengguna ( User friendliness)
unsur-unsur yang membantu kelancaran kerja pengguna
dicapai dengan penyelarasan antaramuka pengguna yang piawai.
Kualiti Perisian
Kesah-betulan (Verifiability)
sifat perisian yang mudah disemak-sahihkan.
contoh kepada kualiti internal
Rekabentuk bermodul, pengkodan sistematik dan pengaturcaraan yang sesuai membantu peningkatan verifiability.
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.
Kualiti Perisian
Lain-lain kualiti perisian...
Reuseability
Portability
Understandability
Interoperatability
Productivity
Timeliness
Visibility
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
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
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
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
0 comments
Post a comment