470 likes | 811 Views
BAB 4. Keperluan/ Capturing the Requirements. Definasi Keperluan (requirement). Ada banyak makna yang dikaitkan dengan “Keperluan” pernyataan abstrak di peringkat tinggi mengenai sistem pernyataan terperinci menggunakan definasi formal mengenai sistem ataupun apa yang diantara dua di atas.
E N D
BAB 4 Keperluan/ Capturing the Requirements
Definasi Keperluan (requirement) • Ada banyak makna yang dikaitkan dengan “Keperluan” • pernyataan abstrak di peringkat tinggi mengenai sistem • pernyataan terperinci menggunakan definasi formal mengenai sistem • ataupun apa yang diantara dua di atas
Definasi yang digunakan • Deskripsi mengenai apa yang sistem boleh laksanakan dan kekangannya. (dari Sommerville) • ciri-ciri/ ‘feature’ bagi sistem ATAU penerangan mengenai sesuatu yang boleh dilakukan oleh sistem untuk memenuhi tujuan utama sistem.(dari Pfleeger)
Pembahagian Keperluan • Keperluan Pengguna • Keperluan Sistem • Spesifikasi rekabentuk perisian (dokumentasi)
Keperluan pengguna • Definasi diperingkat tinggi, tidak terperinci • Dalam bahasa tabii, ada diagram, menerangkan apakah perkhidmatan yang ditawarkan oleh sistem dan kekangannya • Ditulis untuk: Pelanggan & Pengurus Kontraktor
Keperluan sistem: • Definasi yang lebih terperinci • Menentukan perkhidmatan dan kekangan sistem secara terperinci. • Sasaran pada staf Teknikal ‘Senior’ & Pengurus Projek
Contoh: • Keperluan Pengguna • Perisian patut membolehkan fail yang telah dibina didalam peralatan lain didapati dan disenaraikan dengan mudah. • Keperluan Sistem • Pengguna patut diberikan kemudahan untuk mendefinasikan jenis-jenis fail dari luar. • Setiap fail dari luar berkemungkinan boleh dikaitkan dengan sejenis peralatan tertentu.
Spesifikasi rekabentuk perisian -dokumentasi keperluan • Lebih terperinci daripada spesifikasi keperluan sistem • Deskripsi yang abstrak mengenai rekabentuk perisian sebagai rujukan utama untuk rekabentuk dan implementasi.
Apa yang ada dalam dokumen keperluan? • Dokumen definasi Keperluan • Ditulis dalam istilah yang boleh difahami oleh pelanggan • Senarai lengkap apa yang pelanggan ingin sistem tersebut lakukan • Mewakili persefahaman antara pelanggan dengan pembangun mengenai apa keperluan dan kehendak pelanggan • Ditulis bersama oleh pelanggan dan pembangun
Apa yang ada dalam dokumen keperluan? • Spesifikasi Keperluan • Menyatakan definasi keperluan dalam istilah teknikal • Sesuai untuk pembangunan rekabentuk sistem • Ditulis oleh penganalisa keperluan/’requirement analysts’.
Apa yang ada dalam dokumen keperluan? • Mesti ada hubungan terus/’direct correspondence’ diantara dokumen definasi dengan dokumen spesifikasi Kaedah Pengurusan Konfigurasi • Digunakan sepanjang kitar hayat pembangunan sistem
Pengurusan Konfigurasi • Definasi: satu set prosedur yang menjejaki: • Keperluan yang menerangkan apa yang perlu dibuat oleh sistem • Modul rekabentuk yang dijanakan daripada keperluan • Kod program yang melaksanakan rekabentuk • Ujian yang mengesahkan kefungsian sistem • Dokumen yang menerangkan sistem
Pengurusan Konfigurasi • Keperluan: menerangkan kelakuan sistem • Sistem akan bertindak ke atas data/arahan. Objek/entiti akan bergerak dari satu keadaan kepada keadaan lain • Keperluan akan menyatakan keadaan dan juga pertukaran sistem/objek • 2 cara: • Pendekatan fungsian • Pendekatan bukan fungsian
Keperluan Fungsian • Menerangkan interaksi diantara sistem dan juga persekitarannya • Bagaimana sesuatu sistem akan bertindak pada sesuatu keadaan. Contoh: bagi satu sistem yang mencetak gaji mingguan Apakah input yang perlu untuk mencetak slip gaji?, dalam keadaan mana jumlah bayaran boleh diubah dan sebagainya • Boleh guna banyak teknik untuk menentukan keperluan fungsian
Contoh: • Sistem Pinjaman Buku Perpustakaan • Pengguna sepatutnya boleh mencari buku samada dari pengkalan data keseluruhan ataupun dari subset pengkalan data keseluruhan. • Sistem sepatutnya menyediakan paparan yang berkaitan untuk membaca dokumen yang disimpan kepada pengguna.
Keperluan bukan fungsian • Menerangkan kekangan ke atas sistem yang menyebabkan pilihan kita dalam membangunkan penyelesaian terhadap masalah dihadkan. Contoh: kita perlu bangunkan sistem pada mesin tertentu sahaja/ cek mesti diagihkan kepada pekerja tidak lebih dari 4 jam selepas data mula dibaca.
Kedua-dua keperluan ini diperolehi secara formal dari pengguna • Formal: Pelanggan tidak selalunya bagus dalam menerangkan keperluan dan kehendak
3 jenis keperluan bukan fungsian: • Keperluan produk • Keperluan organisasi • Keperluan luaran/’external’
Contoh: • Keperluan Produk • Adalah satu keperluan komunikasi di antara APSE dan pengguna dinyatakan di dalam bentuk set aksara ADA • Keperluan Organisasi • Proses pembinaan sistem dan dokumen yang dihantar hendaklah mengikut cara yang telah dinyatakan dan didefinasikan di dalam XYZCo-SP-STAN-95.
Contoh: • Keperluan Luaran • Sistem tidak boleh memaparkan maklumat pelanggan kecuali nama dan nombor rujukan kepada pengguna sistem.
Jenis-jenis Keperluan • Dokumen spesifikasi dan definasi keperluan menerangkan semua yang berkaitan dengan bagaimana sistem akan berinteraksi dengan persekitarannya • Antaranya: • Persekitaran Fizikal • Antaramuka • Faktor pengguna dan manusia
Kefungsian • Dokumentasi • Data • Sumber • Keselamatan • Pengesahan Kualiti
Keperluan and Kemahuan Pelabur Model Domain Sistem dan organisasi semasa Penentuan Keperluan Model situasi semasa Dokumen yang sediada Keperluan yang diguna semula Jenis-jenis cadangan keperluan Template Keperluan Librari Guna-Semula Sumber-sumber keperluan
Ciri-ciri keperluan • Tujuan: • Membenarkan pembangun untuk menerangkan pemahaman mereka bagaimana pelanggan mahu sistem tersebut berfungsi • Memberitahu perekabentuk apakah fungsi dan juga ciri-ciri yang mesti dihasilkan oleh sistem • Membantu pasukan pengujian untuk meyakinkan pelanggan bahawa sistem tersebut memenuhi keperluan
Antara ciri-ciri keperluan: • Adakah keperluan tersebut betul? • Adakah keperluan tersebut konsisten? • Adakah keperluan lengkap? • Adakah ia realistik? • Adakah setiap keperluan menerangkan sesuatu yang diperlukan oleh pelanggan • Adakah keperluan tersebut ‘verifiable’? • Adakah keperluan tersebut boleh dijejaki?
Kejuruteraan Keperluan • Proses yang melibatkan semua aktiviti yang diperlukan untuk menghasilkan dan mengekalkan dokumen keperluan sistem • Terdapat 4 aktiviti: • Kajian kesauran • Menentukan(elicitation) dan menganalisis keperluan • Spesifikasi Keperluan • Pengesahan
Proses Kejuruteraan Keperluan Penentuan dan Analisis Keperluan Kajian Kesauran Spesifikasi Keperluan Pengesahan Keperluan Laporan Kesauran Model Sistem Keperluan Pengguna dan Sistem Dokumen Keperluan
Kajian Kesauran • Semua proses mendapatkan keperluan bermula dengan kajian kesauran • INPUT: Kerangka deskripsi sistem dan bagaimana ia akan digunakan di dalam organisasi • Hasil: Laporan yang menyatakan samada patut untuk meneruskan proses mendapatkan keperluan dan pembangunan sistem
Kajian Kesauran • Fokus kepada: • Adakah sistem menyumbang kepada keseluruhan objektif organisasi? • Adakah sistem boleh dilaksanakan dengan menggunakan teknologi terkini dan di dalam kekangan kos dan juga skedul yang dinyatakan? • Bolehkan sistem ini diintegrasikan dengan sistem lain yang telah sedia ada?
Kajian Kesauran • Melibatkan penilaian terhadap: • Maklumat • Pengumpulan maklumat • Penulisan laporan • Penilaian maklumat: akan mengenalpasti maklumat yang diperlukan. Bila maklumat telah dikenalpasti,dapatkan jawapan dari sumber maklumat
Kajian Kesauran • Sumber maklumat: Mungkin diperolehi daripada: • Pengurus Jabatan • Jurutera Perisian • Technology Expert • End-user Temubual dijalankan untuk dapatkan maklumat.
Kajian Kesauran • Bila maklumat telah sedia, satu laporan kajian kesauran akan disediakan • Ia akan membuat cadangan samada meneruskan atau tidak pembangunan sistem • Ia mungkin mencadangkan perubahan pada skop, budget dan juga skedul bagi sistem
Menentukan dan Menganalisa Keperluan • Staf Teknikal Pembinaan Perisian akan bekerja bersama pelanggan dan juga pengguna akhir sistem untuk menentukan: • Domain aplikasi • Perkhidmatan • Prestasi • Kekangan perkakasan
Spesifikasi dan definasi keperluan Analisa dan Penentuan (Elicitation) Keperluan Analisa Masalah Penerangan Masalah Prototaip & Pengujian Pengesahan & Dokumentsai Bagaimana kita dapatkan semua keperluan pengguna? Adakah kita menggunakan teknik/views yang betul? Adakah fungsi ini boleh dilaksanakan/feasible? Adakah kita telah dapatkan kesemua yang dikehendaki oleh pengguna? Menentukan dan Menganalisa Keperluan
Menentukan dan Menganalisa Keperluan • Bahagian yang kritikal dalam proses • Mesti guna pelbagai teknik untuk menentukan apa keperluan dan kehendak pelanggan & pengguna • Bermula dengan menganalisa masalah • Memecahkan masalah kepada bahagian-bahagian kecil yang boleh difahami
Analisa Masalah • Analisa masalah boleh dilakukan dengan mengenalpasti: • Orang • Proses • Sumber • Seterusnya mendokumenkan perhubungan diantara mereka • Pengguna&Pelanggan: siapa yg terlibat • Tentukan sempadan sistem • Data mana yang dihantar
Analisa Masalah • Keperluan boleh dipisahkan kepada 3 kategori: • Keperluan yang perlu dipenuhi • Keperluan yang paling diingini tetapi boleh juga dikecualikan • Keperluan yang mungkin, tetapi boleh dihapuskan • Setiap keperluan sistem berhubung dengan objek/entiti, keadaan semasa dan juga fungsi yang akan menukar keadaan/ciri-ciri objek
Analisa Masalah • Perhatikan bahawa keperluan ini tidak spesifikasikan bagaimana sistem akan dilaksanakan • Keperluan hanya akan fokus pada pengguna dan masalahnya bukan pada penyelesaian atau pelaksanaan. • Keperluan akan menyatakan tujuan sistem dibangunkan. • 2 jenis dokumen keperluan: • Definasi Keperluan • Spesifikasi Keperluan
Penerangan Masalah • Melibatkan pelbagai lapisan orang • Proses yang sukar kerana: • Pelanggan tidak tahu apa yang mereka kehendaki daripda sistem komputer kecuali ‘general terms’ • Pelanggan biasanya melahirkan keperluan mereka dalam istilah mereka sendiri dan dengan ‘implicit’ knowledge dari kerja mereka • Setiap pelanggan ada keperluan yang berlainan yang dinyatakan dengan cara yang berlainan
Pemprototaipan Keperluan • 2 pendekatan untuk prototaipan: • Evolutionary: dibangunkan untuk mempelajari mengenai masalah dan membentuk satu asas bagi sebahagian atau kesemua perisian yang akan dihantar • Throw-away: dibangunkan untuk mempelajari lebih jelas mengenai masalah atau meninjau lebih dalam kesauran penyelesaian yang mungkin.
Dokumentasikan apa yang telah didapati • Mesti simpan satu set dokumen yang merekodkan semua keputusan • Menjadi rujukan
Siapa yang terlibat?? • Ahli yang terlibat di dalam proses mendapatkan keperluan: • Pengawas Kontrak • Pelanggan dan juga pengguna • Pengurus perniagaan • Perekabentuk • Penguji
Hasilnya daripada proses menentukan dan menganalisa keperluan • adalah model-model sistem • model-model sistem boleh ditulis dengan berbagai cara • akan dibincangkan dalam kuliah yang seterusnya
Spesifikasi Keperluan • Berkait rapat dengan keperluan sistem dan pengguna • Rujuk perbincangan di awal kuliah mengenai • Keperluan sistem • Keperluan Pengguna
Pengesahan Keperluan • Proses menentukan spesifikasi yang telah diperolehi adalah konsisten dengan definasi keperluan • Untuk memastikan keperluan akan memenuhi/mencapai kehendak pengguna • 2 langkah: • Pastikan spesifikasi boleh dijejaki • Semak definasi untuk melihat keperluan boleh dijejaki dari spesifikasi
Di akhir proses Kejuruteraan Keperluan • Satu dokumen keperluan akan dihasilkan • Kandungan • Dokumen definasi Keperluan • Dokumen Spesifikasi Keperluan • Rujuk perbincangan di awal kuliah