bab1
TRANSCRIPT
1Pengurusan Perisian : Bab 1
TK 6033
Pengurusan Perisian
2Pengurusan Perisian : Bab 1
Kandungan Kursus
• Pengenalan
• Pengurusan Projek
• Spesifikasi keperluan
• Rekabentuk perisian
• Pengujian
• Isu-isu Pengurusan
3Pengurusan Perisian : Bab 1
Pengenalan
• Takrif Pengurusan Perisian• Tanggungjawap Professional• Prinsip Kejuruteraan Perisian
• Sifat Dan Kualiti Perisian• Keperluan kualiti dlm bidang aplikasi
4Pengurusan Perisian : Bab 1
Sejarah
• 1940 – Perlaksanaan kpd perkakasan, X OS– Kemahiran tinggi– Benar-benar tahu ttg mesin
• 1950 – konsep OS diperkenalkan– Guna bahasa paras tinggu (FOTRAN, COBOL)– JA/c menumpu kpd penyelesaian masalah komputer.
• 1960 – Era multipengguna– Perkakasan makin murah– Kesedaran kepentingan komputer tinggi – Bahasa pengaturcaraan & OS lebih mesra pengguna
dihasilkan
5Pengurusan Perisian : Bab 1
Sejarah
• 1990 – Komputer di pelbagai bidang (perniagaan, penyelidikan saintifik, hiburan, kawalan trafik, hospital dll)– Permintaan terhadap perisian– Perisian kompleks– Munculnya multi pengaturcraan, multi
pengguna, perkongsian masa.
6Pengurusan Perisian : Bab 1
Takrif Kejuruteraan Perisian
“Multi-person construction of multi-version software” [Parnas, 1987]
• Menunjukkan aktiviti yang berbeza di antara menulis satu aturcara (aktiviti individu) dgn menulis satu perisian (aktiviti berpasukan) yg
melibatkan byk komponen.
• Satu disiplin kejuruteraan yang mengambil kira semua aspek berkenaan penghasilan perisian, bermula drp peringkat awal hingga
penyenggaraan. (Ian Sommerville, 2001)
7Pengurusan Perisian : Bab 1
Takrif Pengurusan Perisian
• “Mencipta dan menyenggara satu persekitaran dalaman bagi satu enterprise di
mana setiap individu akan bekerja secara efisyen dan efektif bagi mencapai objektif
kumpulan” [Koontz,1980].
8Pengurusan Perisian : Bab 1
Tanggungjawap Professional
• Tatalaku professional Jurutera Perisian (SE) – dikeluarkan oleh ACM & BCS.
– Kerahsiaan– Kemampuan– Hak harta Intelektual– Penyalahgunaan Komputer
9Pengurusan Perisian : Bab 1
Kerahsiaan
• JP mestilah menghormati kerahsiaan majikan atau pelanggan mereka tanpa melihat samada perjanjian mengenainya dibuat atau tidak
10Pengurusan Perisian : Bab 1
Kemampuan
• JP tidak seharusnya salah faham tentang kemampuan mereka. Mereka seharusnya tidak
menerima tugas yang diluar kemampuan mereka secara sedar.
11Pengurusan Perisian : Bab 1
Hak Harta Intelektual
• JP harus mengetahui tentang peraturan atau undang-undang tempatan berkaitan dengan
penggunaan harta intelektual seperti paten, hak cipta, dan sebagainya.
• Mereka harus berwaspada untuk memastikan yang harta intelektual majikan dan pelanggan
dilindungi.
12Pengurusan Perisian : Bab 1
Penyalahgunaan Komputer
• JP seharusnya tidak menggunakan kemahiran teknikal yang ada untuk menyalahgunakan
komputer orang lain.• Penyalahgunaan ini meliputi perbuatan seperti
bermain permainan komputer menggunakan komputer pejabat, sebarkan virus, lakukan
spamming, dll
13Pengurusan Perisian : Bab 1
Prinsip Kejuruteraan Perisian
• Proses yang betul akan membantu menghasilkan produk yg berkualiti.
FOKUS KUALITI
PROSES
METODOLOGI
ALATAN
14Pengurusan Perisian : Bab 1
Prinsip Kejuruteraan Perisian
• Ketegasan & formaliti
• Pengasingan (Seperation of Concern)
• Modulariti
• Abstraksi
• Perubahan
• Umum (Generaliti)
• Peningkatan (Incremental)
15Pengurusan Perisian : Bab 1
Ketegasan & formaliti
• Pembangunan perisian merupakan aktiviti yg perlukan kreativiti.
• Inspirasi boleh menjadikannya tidak berstruktur.
• Oleh itu pendekatan yg lebih tegas diperlukan
• Formaliti : Keperluan kaedah, teknik & metodologi (ketegasan yang tinggi)
16Pengurusan Perisian : Bab 1
–Hal ekonomi & kewangan
–Proses pembangunan•Persekitaran pembangunan•Organisasi pasukan•Penskedulan•Tatacara kawalan•Strategi rekabentuk•Mekanisma pemulihan ralat
Pengasingan• Menguruskan aspek masalah yg berlainan secara berasingan
• Aspek yg perlu dipertimbangkan
–Ciri produck•Fungsi ditawarkan•Kebolehpercayaan yg dijangka•Keberkesanan masa & ruang•Hubungan persekitaran•Antaramuka pengguna
17Pengurusan Perisian : Bab 1
Pengasingan
• Kebanyakkan keputusan amat kuat kaitanya dan saling bersandar
• Cara terbaik memahami kekompleksan ialah memisahkan keprihatinan yg berlainan
– Asing isu yg kurang berkait
– Hindarkan penekanan perkaitan terperinci jika ada
18Pengurusan Perisian : Bab 1
Pengasingan• Proses Pengasingan keprihatinan
– Kaedah temporal• Perancangan aktiviti yg lebih tepat
• Menghapuskan overhead yg timbul akibat pemindahan dr satu aktiviti kpd yg lain secara bebas
– Kaedah kualiti• Pengasingan keberkesanan & kesahihan (utama)
– Kaedah pandangan• Membenarkan pandangan berlainan dianalisis berasingan
• Cth : analisis keperluan : aliran data & aliran kawalan
– Kaedah saiz• Berkait dgn modulariti
19Pengurusan Perisian : Bab 1
Modulariti• Sistem yg kompleks blh dibahagikan kpd bhg yg lebih
kecil (modul)• Faedah utama membenarkan prinsip pengasingan
keprihatinan digunakan dlm 2 keadaan:1. perincian / modul secara bersendiri2. keseluruhan & proses integrasi
• 3 sasaran matlamat1. Keupayaan penghuraian sist yg kompleks2. ubah modul yg ada3. Pemahaman sist secara modul
20Pengurusan Perisian : Bab 1
Modulariti
• Proses penghuraian sist berasaskan kpd pembahagian masalah asal kpd submasalah secara atas-bwh
• Gunakan penghuraian/submasalah secara rekursif• Proses pengubahan pula secara bwh-atas dr
komponen asas hingga sist siap• Proses evolusi memaksa JP melihat kembali kerja
terdahulu utk diubahsuai – memudahkan proses penggubahan
21Pengurusan Perisian : Bab 1
Abstraksi• Proses mengenalpasti aspek penting sesuatu fenomena dan
abaikan perinciannya (aspek pengasingan keprihatinan)
• Abstraksi adalah teknik yg amat baik utk memahami kekompleksan
• Cth: pengaturcaraan mengguna bahasa paras paling tinggi - tidak perlu tahu tentang permindahan bit, dsb.
22Pengurusan Perisian : Bab 1
Perubahan• Perisian perlukan evolusi utk teruskan kitar hayatnya
• Bukan tugas yg mudah
• Perlu jangkakan bila, b/mana, dimana perubahan diperlukan
• Berkait dgn :– Sifat kebolehsenggaraan
– Sifat kebolehgunaan semula
– pengurusan versi
23Pengurusan Perisian : Bab 1
Umum (Generaliti)
• Secara prinsip:
– Fokuskan kpd masalah umum (meluas) yg mungkin tersembunyi pd masalah semasa
• Dengan melihat secara lebih luas, penyelesaian yg dibuat mengkin lebih berpotensi utk dipakai tetapi lebih mahal
• Generaliti amat sesuai utk vendor perisian bagi menghasilkan pakej utk pasaran terbuka
24Pengurusan Perisian : Bab 1
Peningkatan (Incremental)
• Perisian dihasilkan secara evolusi
• Pengguna diberi subset aplikasi utk dptkan maklum balas segera. Ini membolehkan aplikasi berubah dlm keadaan terkawal apb keperluan pengguna tidak stabil & tidak difahami sepenuhnya
• Prestasi perisian juga boleh ditingkatkan
• Hasil proses peningkatan dinamakan prototaip
• Memastikan setiap peringkat melalui proses kejuruteraan yg standard
25Pengurusan Perisian : Bab 1
Sifat Dan Kualiti Perisian
• Kualiti – ukuran dan perbandingan dengan piawaian tertentu
• Sifat perisian yg unik adalah ianya mudah diubah• Oleh itu sifat ini telah byk disalah guna dgn meminta
JP membuat perubahan secara besar-besaran
26Pengurusan Perisian : Bab 1
Sifat dan Kualiti Perisian
•Pengkelasan Kualiti
1.Kualiti luaran & dlman
–Kualiti luaran: dilihat oleh pengguna
–Kualiti dlman: dilihat oleh JP
2.Kualiti produk & proses
–Proses: aktiviti utk hasilkan produk
•Cth kualiti rekabentuk & kualiti perlaksanaan – konsep penterjemahan, analisis -> rekebentuk -> impimentasi
–Perisian: hasil akhir proses
–Produk: hasil drpd aktiviti proses
•Cth kualiti spesifikasi keperluan, dokumentasi r/btk, a/c, dll
27Pengurusan Perisian : Bab 1
Aktiviti Jaminan Perisian
• Perlaksana – JP & Kumpulan jaminan Kualiti (KJK)• JP – Kualiti kerja2 teknikal• KJK – aktiviti2 spt:
– Sediakan perancangan jaminan kualiti – Terlibat dlm proses pembangunan perisian– Semak aktiviti SE spy sesuai dng proses– Audit hasil kerja– Dokumenkan kerja dan hasil kerja yang tersasar drp
perancangan– Rekodkan masalah dan lapor kpd pengurusan.
28Pengurusan Perisian : Bab 1
Perwakilan kualiti1. Correctness2. Kebolehpercayaan (Reliabiliti)3. Robustness4. Efisien5. Mesra Pengguna6. Verifiability7. Kebolehsenggaraan8. Kebolehgunaan semula9. Portability10. Kebolehfahaman11. Interoperability12. Produktiviti13. Timeliness14. visibility
29Pengurusan Perisian : Bab 1
Correctness• Aturcara adalah betul secara fungsinya (ditentukan pd
spesifikasi fungsian)
• Merupakan metamatik yg mengadakan kesetaraan di antara perisian & spesifikasi
• Boleh ditunjukkan melalui ujian atau pengesahan formal– Jenis data tarikh, umur – mesti tepat
30Pengurusan Perisian : Bab 1
Kebolehpercayaan (Reliabiliti)
• Biasanya perisian boleh dipercayai jika pengguna bergantung kepadanya
• Ukuran ini agak relatif kerana selagi kelakuan perisian boleh diterima, kita masih boleh percaya pada perisian berkenaan
31Pengurusan Perisian : Bab 1
32Pengurusan Perisian : Bab 1
Robustness
• Program dikatakan ‘robust’ jika kelakuannya masih boleh diterima walaupun dalam keadaan yg tidak dijangka dlm spesifikasi keperluan.
33Pengurusan Perisian : Bab 1
Efisyen• Perisian dikatakan efisyen jika ia menggunakan sumber
perisian secara ekonomik
• Prestasi amatlah penting kerana ia memberi kesan terhadap penggunaan sistem– Terlalu lambat
– Terlalu banyak guna memori
• Prestasi boleh juga dikaitkan dgn kekompleksan pemprosesan (alkhwarizmi)
34Pengurusan Perisian : Bab 1
Mesra Pengguna• Perisian adalah mesra pengguna jika kita mendapati ia
mudah digunakan
• Unsur antaramuka pengguna merupakan komponen yang penting
• Setiap jenis pengguna mungkin mempunyai ciri a/m yg tersendiri utk menentukan tahap mesra pengguna mereka
• Biasanya boleh dicapai menerusi proses piawaian
35Pengurusan Perisian : Bab 1
Verifiability
• Mempunyai sifat boleh diverify dgn mudah
• Kaedah mudah ialah dgn menyelit ‘code’ di dlm perisian utk mengawas berbagai komponen kualiti spt prestasi – pengawasan perisian
36Pengurusan Perisian : Bab 1
Kebolehsenggaraan
• Mengalami evolusi perisian secara berterusan
37Pengurusan Perisian : Bab 1
Kebolehgunaan semula
• Komponen produk perisian seharusnya berkebolehan digunakan semula untuk menghasilkan produk yg baru dgn perubahan yg minimum
38Pengurusan Perisian : Bab 1
Portability
• Perisian adalah mudahalih jika ia boleh dilaksanakan dalam persekitaran berbeza
39Pengurusan Perisian : Bab 1
Kebolehfahaman
• Merupakan kualiti produk dalaman
40Pengurusan Perisian : Bab 1
Interoperability
• Kebolehan perisian untuk wujud dan berkooperasi dgn perisian yg lain (import/export file)
41Pengurusan Perisian : Bab 1
Produktiviti
• Kualiti terhadap proses penghasilan perisian
• Ia mengukur keberkesanan proses
42Pengurusan Perisian : Bab 1
Timeliness
• Merujuk kepada kualiti proses terhadap keupayaan menghasilkan produk tepat pada masanya
43Pengurusan Perisian : Bab 1
Visibility• Dikatakan visible jika setiap peringkat proses
pembangunan perisian dan status semasanya didokumenkan dgn jelas
• Visibiliti membenarkan JP menimbangkan kesan tindakan mereka & membantu dlm membuat keputusan
• Juga membolehkan ahli bekerja dalam arah yg sama
44Pengurusan Perisian : Bab 1
Keperluan kualiti dalam bidang aplikasi
• Sistem maklumat
– Berorentasikan data
– Kualiti dilihat dr segi:
• Integriti data: bila agaknya data boleh korup
• Sekuriti: capaian haram?
• Kesediaan data:syarat utk data ada & utk berapa lama?
• Prestasi urusniaga: bil u/niaga yg boleh diurus dlm satu unit masa Aktiviti Pengurusan
• Keperluan HCI
45Pengurusan Perisian : Bab 1
Keperluan kualiti dalam bidang aplikasi
• Sistem Masa Nyata
– Ciri utama adalah tindakbalas terhadap peristiwa yg berlaku dalam masa tertentu
• Kilang
• Peluru berpandu
• Penggunaan tetikus
• Sistem sidang video
46Pengurusan Perisian : Bab 1
Keperluan kualiti dalam bidang aplikasi• Sistem teragih
– Sistem yg mempunyai byk kegiatan pemprosesan berjauhan & dihubungkan oleh rangkaian komputer
– Ciri lain:• Jumlah agihan yg boleh disokong• Boleh bertolak ansur dgn msalah rangkaian dan
pemproses– Secara tidak langsung boleh meningkatkan kualiti yg
lain• Kebolehpercayataan• prestasi