TM-6 Presentasi Software Requirement (slade)

Download Report

Transcript TM-6 Presentasi Software Requirement (slade)

SOFTWARE REQUIREMENTS
MJ 183 C
Aris Martono,S.Kom,.M.M.S.I
Kelompok 5 :
Asdin 0913464073
Ines Lestari 0913463807
Neng Susanti 0921463341
Siti Robiahtul Adawiyah 0914463235
Vena Senja Maba 0914463228
Dasar – Dasar
Software
Requirements
Definisi
software requirement adalah sebuah properti yang
harus diperlihatkan /ditunjukkan oleh software
untuk menyelesaikan suatu permasalahan yang ada
di dunia nyata / bersifat riil.
merupakan kombinasi rumit dari kebutuhan berbagai
orang di bermacam – macam tingkat organisasi dan
lingkungan di mana perangkat lunak akan
dioperasikan.
properti yang esensial dari semua software
requirement adalah harus mampu
diperiksa/diverifikasi.
Product and Process requirement
 Kebutuhan produk adalah requirement pada
software untuk dikembangkan (Contohnya
“Software harus memeriksa prasyarat mata
kuliah yang diambil mahasiswa”)
 Kebutuhan proses adalah batasan – batasan
dalam mengembangkan software. Contohnya
pilihan teknik verifikasi.
 Process requirement juga bisa ditetapkan oleh
organisasi pengembang, pelanggan atau pihak
ketiga seperti badan regulator.
Teknik Pengumpulan
Requirement
Dalam menyusun requirement, ada beberapa teknik yang biasa
digunakan. Pada uraian berikut kita akan membahas beberapa teknik
pengumpulan requiremen yang biasa digunakan.
1. Interview
Interview atau wawancara adalah teknik pengumpulan requirement
yang paling umum digunakan. Langkah-langkah dasar dalam teknik
interview adalah:
• Memilih target interview.
• Mendesain pertanyaan-pertanyaan interview.
• Persiapan interview.
• Melakukan interview.
• Follow up hasil interview
Teknik Pengumpulan Requiremen
lanjutan
2. Joint Application Development
Proses kelompok terstruktur yang terfokus untuk menentukan requiremen,
melibatkan tim proyek, pengguna, dan manajemen bekerja bersamasama, teknik ini sangat berguna untuk mereduksi waktu pengumpulan
informasi sampai 50%
 Pelaku JAD
a. Facilitator
1. Terlatih untuk teknik JAD
2. Menyiapkan agenda dan memandu proses kelompok
b. Scribe
Mencatat isi dari sesi JADc.
c. User dan manager
dari perusahaan yang akan dibuatSistemnya
Teknik Pengumpulan Requirement
Lanjutan
3. Questionnaires (Kuisioner)
Kuisioner adalah sekumpulan pertanyaan tertulis, dan sering
melibatkan banyak orang. Kuisioner bisa dilakukan paper based atau
secara elektonik. Biasanya sampel dipilih untuk mewakili populasi
tertentu.
4. Analisis Dokumen
Teknik
ini
dilakukan
dengan
mempelajari
material
yang
menggambarkan sistem yang sedang berjalan. Biasanya dokumen yang
diamati berupa form, laporan, manual kebijakan, grafik organisasi
5. Observasi
Teknik ini dilakukan dengan melakukan pengamatan secara langsung
pada proses-proses yang sedang berjalan. Hal inipenting karena
kadang-kadang user atau manager tidak dapat mengingat secara
keseluruhan apa yang mereka lakukan dan menceritakan kembali ke
analis.
Requirement fungsional dan
nonfungsional
• Requirements fungsional menjabarkan fungsi – fungsi yang
akan dilaksanakan software. Contohnya memformat teks.
Kadang – kadang disebut juga sebagai kapabilitas.
• Requirements non-fungsional memberikan batasan terhadap
solusi yang akan dihasilkan. Disebut juga sebagai quality
requirement. Requirement jenis ini masih bisa dibagi lagi
menjadi
performance
requirements,
maintainability
requirements, safety requirements, reliability requirements
atau salah satu software requirements lainnya.
Domain requirement
• Kebutuhan domain ini mendeskripsikan karakteristik domain persoalan
yang dihadapi; dan mungkin menjadi ciri khas pada domain tersebut.
Kebutuhan domain ini bisa berupa kebutuhan fungsional baru atau
menjadi batasan terhadap kebutuhan fungsional yang sudah didefinisikan
sebelumnya (kebutuhan non fungsional baru), atau berupa tambahan
deskripsi spesifik tentang komputasi yang harus dilakukan.
• Kebutuhan domain ini juga penting, dan bisa membuat perangkat lunak
tidak diterima jika tidak terpenuhi.
• Seperti apa kebutuhan domain? Contohnya adalah penggunaan istilah
yang sudah lama dikenal pada domain, seperti istilah ‘katalog’ pada
domain perpustakaan, istilah ‘resep’, ‘racikan’, dll pada domain obatobatan. Atau warna-warni tombol atau pesan, seperti merah, hijau, biru
yang mungkin punya arti tersendiri pada domain tertentu. Atau rumusrumus tertentu yang harus digunakan untuk komputasi tertentu.
System Requirements, Software
Requirements dan user Requirements
• Dalam topik ini sistem berarti kombinasi dari elemen –
elemen yang berinteraksi untuk mencapai suatu tujuan yang
terdefinisikan. Ini termasuk hardware, software, firmware,
manusia, informasi, tehnik, fasilitas, layanan dan berbagai
elemen pendukung lainnya
• System requirement adalah requirement untuk sistem secara
keseluruhan. Dalam sebuah sistem yang mengandung
komponen software, software requirement diperoleh dari
system requirement.
• Sesuai dengan tahapan pengembangan sistem Software
Development Life Cycle (SDLC) maka sebagai tahap pertama
untuk mengembangkan sistem ini adalah melakukan analisis
kebutuhan sistem. Dimulai dengan melakukan asesmen
kebutuhan user.
Analisis dan Desain model
• Setelah kebutuhan dikumpulkan, analisis terhadap
kebutuhan dilakukan dengan menggunakan
beberapa alat (tools) seperti DFD (Data Flow
Diagram), ERD (Entity Relationship Diagram) dan STD
(State Transition Diagram). Data Dictionary menjadi
bekal dasar untuk menganalisis kebutuhan. Data
Dictionary berisi gambaran dari semua objek data
yang diperlukan dan dihasilkan oleh software
nantinya. Diagram-diagram tadi mempunyai
karakteristik masing-masing.
Model Desain
• Data design mengubah informasi menjadi struktur
data untuk mengimplementasikan software. Data
design dibuat berdasarkan data dictionary dan ERD.
• Architectural design mendefinisikan relasi antara
elemen-elemen structural utama, pola desain yang
digunakan untuk mencapai kebutuhan yang
ditentukan untuk sistem dan batasan-batasan yang
mempengaruhi bagaimana desain arsitektural ini
diterapkan.
Konsep Desain Software
Konsep Desain
1. abstraction
Abstraction adalah gambaran dari fungsi suatu
program. Gambaran ini bias bertingkat-tingkat.
Tingkat yang paling atas adalah gambaran suatu
fungsi program dengan menggunakan bahasa alami.
2. refinement—penjelasan detil dari abstraction
Refinement membantu designer untuk
memperlihatkan detil dari lowest level dari
abstraction.
Konsep Desain
Lanjutan
5. Software procedure
Fokus pada detil proses pada tiap modul. Prosedur menjelaskan
proses, urutan kejadian, proses perulangan, penentuan
keputusan/arah. Ini bisa digambarkan dengan menggunakan
Flow Chart yang bertingkat.
6. Information hiding
Ide dari information hiding (menyembunyikan informasi) adalah
modul dirancang sedemikian rupa sehinga inforamsi
(prosedur dan data) yang di dalamnya tidak dapat di akses
oleh modul lain yang tidak memerlukannya.
Konsep Desain
Lanjutan
3. modularity—membagi software menjadi modul
Software dibagi-bagi menjadi beberapa component yang disebut modulmodul. Modul-modul ini nantinya disatukan/diintegrasikan untuk
memenuhi kebutuhan sistem.
4. software architecture—struktur software secara keseluruhan
struktur hirarki/berjenjang dari modul-modul program. Untuk
menggambarkan struktur modul-modul tersebut beberapa model yang
ada adalah :
• framework model : identifikasi pola yang berulang-ulang
• dynamic model : identifikasi bagaimana konfigurasi sistem berubah karena
kejadian-kejadian tertentu
• process model: fokus pada proses teknis yang harus dikerjakan sistem
• functional model : menggambarkan hirarki sistem berdasarkan fungsinya
Terima kasih