Kenalpasti Kehendak dan Spesifikasi Keperluan Bab 7 Kenalpasti Kehendak dan Spesifikasi Keperluan
Overview Kepentingan spesifikasi keperluan Jenis-jenis keperluan Pengumpulan data Penerangan tugas: Senario Kes guna (use case) Analisis Tugas : Analisis Tugas Berhirarki (HTA)
Apa yang ingin kita capai? Dua matlamat: Memahami sebaik mungkin tentang pengguna, tugas dan konteks penggunaan Menghasilkan suatu set keperluan yang stabil
Bagaimana kita melakukannya? Aktiviti pengumpulan data Aktiviti analisis data Mengungkapkan kehendak sebagai keperluan Proses yang berlaku secara berulangkali
Kenapa proses ini penting? Mendefinasikan keperluan adalah suatu tahap di mana banyak kesilapan berlaku Keperluan yang tepat dan betul adalah perkara yang sangat penting
‘Keperluan’ Apa yang pengguna hendak? Apa yang pengguna perlukan? Proses menentukan dan mengenalpasti keperluan melibatkan penelitian dan penghalusan Input: dokumen yang telah ada (mungkin) dan maklumbalas pengguna Output: Keperluan yang stabil
Pelbagai Jenis Keperluan Fungsian Apa yang sistem patut lakukan Kebiasaannya menjadi fokus utama Bukan-fungsian: saiz ingatan, masa tindakbalas, dll..) Data: Apa jenis data yang perlu disimpan? Bagaimana data-data ini disimpan? (cth: pangkalan data)
Pelbagai Jenis Keperluan Persekitaran atau konteks penggunaan: Fizikal: berhabuk? bising? Bergetar? Cukup cahaya? Panas? …(contoh: ATM) Sosial: perkongsian fail, paparan, pada kertas, jarak yang jauh, kerja sendiri, sulit Organisasi: hirarki, attitud jabatan IT, sokongan pengguna, struktur komunikasi dan infrastruktur, latihan
Pelbagai Jenis Keperluan Pengguna: Siapa mereka? Kriteria: kebolehan, latar belakang, atitud terhadap komputer Penggunaan sistem: novis, pakar, kasual, kerap Novis: langkah demi langkah (berpandu), sedikit kekangan, maklumat yang jelas Pakar: fleksibel, kuasa capaian Kerap: jalan pintas (short cuts) Kasual/jarang : arahan yang jelas, spt. menu
Pelbagai Jenis Keperluan Kebolehgunaan Kebolehbelajaran Kebolehlenturan Ketahanan Ingat bahawa keperluan pengguna dan keperluan kebolehgunaan merujuk kepada perkara yang berbeza
Jenis-jenis Keperluan Apakah faktor-faktor (persekitaran, pengguna, kebolehgunaan) yang akan mempengaruhi sistem berikut? Sistem pengisian dan pembayaran petrol secara layan diri Sisten analisis data atas kapal untuk ahli geologi mencari sumber minyak Website untuk fesyen pakaian
Teknik Pengumpulan Data Terdapat beberapa jenis teknik pengumpulan data Soal selidik Temubual Bengkel atau kumpulan fokus Pemerhatian Kajian dokumentasi
Teknik Soal Selidik Satu siri soalan direkabentuk untuk mendapatkan maklumat yang spesifik Soalan mungkin memerlukan pelbagai bentuk jawapan: YA/TIDAK; pilihan jawapan; komen Selalu digunakan bersama teknik yang lain Boleh menghasilkan data bentuk kualitatif dan kuantitatif Bagus untuk mendapatkan jawapan terhadap soalan yang spesifik dari populasi yang besar
Teknik Temubual Forum untuk bercakap dengan pengguna Berstruktur, tidak berstruktur atau semi-berstruktur Sampel senario dan prototaip boleh digunakan seasa temubual Bagus untuk mengkaji isu Tetapi memakan masa dan mungkin sukar untuk berjumpa dengan semua
Teknik Bengkel / Kumpulan Fokus Temubual secara berkumpulan Bagus untuk mendapatkan pandangan secara konsensus atau untuk menangani isu atau konflik tertentu
Pemerhatian Meluangkan masa dengan pemegang taruh (stakeholders) dalam tugas seharian mereka, memerhati perjalanan kerja Mendapatkan maklumat dalaman tentang tugas pemegang taruh Bagus untuk memahami tabii dan konteks tugas Memerlukan masa dan komitmen dari seorang ahli pembangun Boleh mneghasilkan data yang banyak
Kajian Dokumentasi Prosedur dan petua / undang-undang biasanya ditulis di dalam manual / dokumentasi Sumber data yang baik tentang langkah yang terlibat dalam suatu aktiviti Tidak harus digunakan sebagai satu-satunya cara Bagus untuk memahami peraturan, dan mendapatkan maklumat latar belakang Tidak melibatkan masa pemegang taruh
Memilih Teknik yang Sesuai Teknik pengumpulan data berbeza dari dua segi: Jumlah masa, paras perincian maklumat dan risiko yang berkait dengan hasil Pengetahuan yang diperlukan oleh penganalisa Pilihan teknik juga dipengaruhi oleh jenis tugas yang dikaji: Langkah yang berjujukan atau suatu siri subtugas yang bertindih? Maklumat yang mudah atau kompleks? Tugas seorang biasa (layman) atau seorang yang mahir?
Masalah Teknik Soal Selidik Mengenalpasti pemegang taruh: pengguna, pengurus, pembangun, wakil pelanggan, wakil persatuan, pemegang saham ? Penglibatan pemegang taruh: bengkel, temubual, kajian tempat kerja, kolaborasi dalam pembangunan Pengguna ‘sebenar’, bukan pengurus: masalah tradisional, tetapi semakin berkurang sekarang
Masalah Teknik Temubual Pengurusan keperluan: kawalan versi, hak milik Komunikasi di antara pelbagai pihak: Dengan kumpulan pembangun Dengan pelanggan / pengguna Di antara pengguna Domain pengetahuan teragih dan implisit (tersirat): Sukar untuk dikaji dan difahami Ketersediaan (availability) pihak yang penting
Masalah Teknik Bengkel Masalah politik dalam organisasi Dominasi pemegang taruh tertentu Perubahan persekitaran ekonomi dan perniagaan Mengimbangi permintaan fungsian dan kebolehgunaan
Beberapa Garis Panduan Asas Fokus kepada mengenalpasti kehendak pemegang taruh Libatkan semua kumpulan pemegang taruh Libatkan lebih dari seorang wakil bagi setiap kumpulan pemegang taruh Gunakan kombinasi teknik dalam mengumpulkan data
Beberapa Garis Panduan Asas Gunakan bantuan seperti prototaip dan deskripsi tugas Jalankan sesi larian (pilot session) Lakukan kompromi di antara data yang dikumpul dengan analisa yang akan dilakukan, pastikan terlebih dahuylu matlamat yang dikehendaki Pertimbangkan dengna hati-hati bagaimana hendak merekodkan data
Interpretasi dan Analisis Data Lakukan sejurus selepas pengumpulan data Lakukan interpretasi awal sebelum analisa yang lebih terperinci Pendekatan yang berbeza menekankan elemen yang berbeza cth. Rajah kelas untuk sistem berorientasikan objek, rajah hubungan-entiti untuk sistem data yang intensif
Penerangan Tugas Senario Kes Guna Suatu penceritaan secara tidak formal, mudah, ‘natural’, dan untuk kes tertentu, tidak umum Kes Guna Andaian tentang interaksi dengan sistem Andaian pemahaman yang terperinci tentang interaksi
Contoh Senario 1 Katakan saya hendak mencari sebuah buku yang ditulis oleh A. Samad Said. Saya tak ingat tajuknya, tetapi saya tahu buku itu telah diterbitkan sebelum tahun 1998. Saya pergi ke sistem katalog, dan memasukkan katakunci pengguna. Tapi, saya tak faham kenapa saya perlu memasukkan katakunci ini kerana orang tidak dibenarkan menggunakan sistem ini sudah tentu tidak boleh masuk ke perpustakaan dan telah dihalang oleh penjaga keselamatan. Setelah katakunci saya disahkan, saya diberi pilihan untuk menggelintar samada menggunakan nama penulis atau tahun penerbitan. Tetapi, tidak ada pilihan untuk menggunakan gabungan kedua-duanya. Saya kemudian memilih untuk menggelintar menggunakan nama.
Contoh Senario 1 (samb) Selepas 30 saat, skrin memaparkan mesej yang mengatakan tidak ada senarai yang mengandungi nama tersebut, dan sebaliknya memberikan senarai buku yang ditulis oleh penulis yang hampir sama namanya dengan yang saya minta. Setelah saya teliti, barulah saya tersedar yang saya telah tersilap semasa memasukkan nama penulis. Saya telah memasukkan A. Samad Saad, dan bukan A. Samad Said. Sayapun memilih item yang saya kehendaki dari senarai, dan skrin memaparkan maklumat lokasi rak di mana buku itu boleh dijumpai.
Contoh Senario 2 Seorang ahli perniagaan sedang membuat perjalanan dari Kuala Lumpur ke Paris. Dalam perjalanannya, beliau nyaris terperangkap dalam kesesakan lalulintas. Beliau berjaya mengelakkan kesesakan ini kerana ‘Smartphone’nya memberi amaran berbentuk bunyi ‘beep’, dan mesej yang memberitahu tentang suatu kemalangan jalanraya yang berlaku di jalan yang biasa dilaluinya untuk ke lapangan terbang KLIA.
Contoh Senario 2 (samb) Setibanya beliau di lapangan terbang, Smartphonenya yang boleh mengesan lokasi semasa telah menghantar mesej kepada kaunter check-in yang menyatakan beliau akan mendaftar dalam beberapa minit lagi. Maka, seorang kakitangan syarikat penerbangan tersebut terus pergi mendapatkan ahli perniagaan ini dan mengambil bagasi beliau untuk didaftarkan dan seterusnya dihantar ke kapal terbang. Selepas mendaftar di kaunter chack-in, paparan pada Smartphone beliau menunjukkan bahawa penerbangan akan berlepas mengikut waktu yang telah ditetapkan. Pada waktu yang sama, peta untuk ke pintu berlepas yang berkaitan dipaparkan. Dalam perjalanan ke pintu berlepas, ahli perniagaan ini memuat-turun semua maklumat pelancongan seperti peta dan peristiwa yang berlaku di Paris semasa beliau berada di sana menggunakan Smartphone ini.
Contoh Senario 2 (samb) Setelah duduk di dalam kapal terbang, beliau terus membaca maklumat yang telah dimuat-turun tadi. Beliau mendapati persembahan opera yang yang diminatinya akan diadakan. Beliau terus menempah tiket untuk ke pertunjukan opera tersebut. Smartphone membuat penempahan menggunakan nombor kad kreditnya yang telah disimpan di dalam telefon tersebut. Terdapat perisian keselamatan di dalam Smartphone ini yang boleh mengelak dari berlakunya kes pemalsuan kad kredit.
Contoh Senario 2 (samb) Smartphone tersebut menyimpan maklumat berkenaan penempahan opera dan beberapa lagi emel yang telah ditulis oleh ahli perniagaan ini semasa berada di dalam kapal terbang. Sebaik sahaja beliau turun dari kapal terbang, Smartphone secara automatik membuat panggilan dan menghantar mesej email tadi. Sebaik sahaja beliau keluar dari lapangan terbang, Smartphone memaparkan peta yang menunjukkan arah ke hotel yang disewanya.
Contoh Kes Guna Tindakan ‘normal’: Pengguna memilih untuk merancang pertemuan Sistem mengarahkan pengguna memasukkan nama mereka yang diminta hadir Pengguna menaip senarai nama Sistem menyemak samada nama-nama itu sah Sistem mengarahkan pengguna memasukkan kekangan pertemuan Pengguna memasukkan kekangan pertemuan Sistem mencari tarikh di dalam kalendar yang menepati kekangan Sistem memaparkan tarikh-tarikh yang boleh diadakan pertemuan Pengguna memilih tarikh yang dikehendaki Sistem menulis temujanji ke dalam kalendar Sistem menghantar emel kepada nama-nama tadi memberitahu tentang temujanji tersebut
Contoh Kes Guna (samb) Tindakan alternatif: 4. Jika senarai nama-nama itu tidak sah, 4.1. Sistem memaparkan mesej ralat 4.2. Sistem kembali ke langkah 2. 8. Jika tiada tarikh yang sesuai, 8.1. Sistem memaparkan mesej yang sesuai 8.2. Sistem kembali ke langkah 5.
Contoh HTA 1. pergi ke perpustakaan 2. cari buku yang dikehendaki 0. Untuk meminjam sebuah buku dari perpustakaan 1. pergi ke perpustakaan 2. cari buku yang dikehendaki 2.1 capai katalog perpustakaan 2.2 capai skrin gelintar 2.3 masukkan ciri-ciri gelintar 2.4 kenalpasti buku yang dikehendaki 2.5 catatkan lokasi 3. pergi ke rak yang betul dan dapatkan buku 4. ambil buka dan bawa ke kaunter pinjaman pelan 0: lakukan 1-3-4. Jika buku tiada pada rak, lakukan 2-3-4. Pelan 2: lakukan 2.1-2.4-2.5. Jika buku tidak boleh dikenalpasti, lakukan 2.2-2.3-2.4-2.5.
Contoh HTA Pinjam buku dari Perpustakaan Pelan 0: Lakukan 1-3-4 Pinjam buku dari Perpustakaan Pelan 0: Lakukan 1-3-4 Jika buku tiada di rak, lakukan 2-3-4 1 Pergi ke perpustakaan 2 Cari buku yang dikehendaki 3 Ambil buku Dari rak 4 Bawa buku ke kaunter Pelan 2: Lakukan 2.1-2.4-2.5 Jika buku tidak dapat dikenalpasti dari maklumat yang ada, lakukan 2.2-2.3-2.4-2.5 2.1. Capai katalog 2.2 Capai skrin carian 2.3 Masukkan Kriteria carian 2.4 Kenalpasti Buku yang dikehendaki 2.5 Catat lokasi