Analisis Kebutuhan(Persyaratan)/Software Requirement Analisis persyaratan adalah sebuah tugas rekayasa perangkat lunak yang menjembatani
jurang antara alokasi perangkat lunak tingkat system dan perancangan perangkat lunak
Analisis persyaratan perangkat lunak dapat dibagi menjadi 5 (lima) area kerja yaitu :
1. Pengenalan masalah
Mempelajari spesifikasi system (bila ada) dan rencana proyek perangkat lunak dalam
suatu konteks system dan mengkaji ruang lingkup perangkat lunak dalam suatu
konteks system dan mengkaji ruang lingkup perangkat lunak yang telah digunakan
untuk memunculkan estimasi perencanaan
2. Evaluasi dan sintesis
Membatasi semua objek data yang dapat diobservasi secara eksternal
Mengevaluasi aliran dan muatan informasi
Mendefinisikan dan menguraikan semua fungsi perangkat lunak
Memahami tingkah laku perangkat lunak dalam konteks kejadian yang mempengaruhi system
Membangun karakteristik interface system
Menemukan batasan desain tambahan
3. Pemodelan
Menyiapkan system dalam ukuran yang kecil-kecil sebelum penerapan dengan
system yang sebenarnya
4. Spesifikasi
Menetapkan system dalam kondisi yang sebenarnya
5. Kajian
Melakukan evaluasi dan pengujian formal terhadap penerapan yang telah dilakukan
apakah sasaran yang yang ditetapkan tercapai atau tidak.
TEKNIK KOMUNIKASI Merupakan permulaan yang (selalu) perlu dilakukan agar seorang pelanggan
memiliki masalah yang dapat dipertanggung jawabkan melalui pemecahan
berbasis komputer
Agar pengembang dapat merespon permintaan bantuan (help) dari pelanggan
Biasanya jalan komunikasi ke pemahaman penuh dengan “lobang-lobang”
PENYEBARAN FUNGSI KUALITAS (QUALITY FUNCTION DEPLOYMENT = QFD)QFD sebagai perkenalan :
Teknik manajemen kualitas yang menterjemahkan kebutuhan pelanggan kedalam
kebutuhan teknis untuk perangkat lunak
Pertama kali diperkenalkan di Jepang untuk memaksimalkan kepuasan pelanggan
Menekankan pemahaman tentang apa yang berguna kepada pelanggan dan
kemudian menyebarkan nilai-nilai tersebut melalui proses rekayasa
QFD mengidentifikasi tiga tipe persyaratan yaitu :
1. Persyaratan normal : Sasaran dan tujuan bagi sebuah produk atau system selama
pertemuan dengan pelanggan. Bila persyaratan ini ada, maka pelanggan akan
menjadi puas, misalnya tampilan grafis yang sempurna.
2. Persyaratan yang diharapkan : Persyaratan ini implicit terhadap produk atau system
yang sangat fundamental sehingga pelanggan tidak menyatakannya secara eksplisit.
Ketidakhadirannya akan menyebabkan ketidakpuasan yang sangat mendalam.
Contohnya adalah mudahnya operasional interaksi manusia dan mesin, reliabilitas
dan kebenaran operasional keseluruhan dan mudahnya instalasi perangkat lunak
3. Exciting requirement : Persyaratan ini sangat diharapkan oleh pelanggan dan terbukti
sangat memuaskan bila ada, misal kemampuan perangkat pengolah kata yang
memiliki kemampuan layout halaman, dsb.
GAMBARAN KONSEP QFD :
Penyebaran fungsi, menentukan nilai (seperti yang diharapkan pelanggan)
dari setiap fungsi yang dibutuhkan oleh system.
Penyebaran informasi, mengidentifikasi objek data dan kejadian
Penyebaran tugas, yang melatih kebiasaan dari system
Analisa nilai, menetapkan prioritas relative kebutuhan
Requirement ElicitationJenis Kebutuhan
Fungsionalitas:
– Fungsi aplikasi layanan yang harus disediakan,
bagaimana reaksi sistem terhadap input dan apa
yang harus dilakukan sistem pada situasi khusus
(Kebutuhan sistem dilihat dari kacamata pengguna)
Non- Fungsionalitas :
– Kendala pada fungsi sistem seperti kendala waktu,
kendala proses pengembangan, standard, dll.
Contoh: kehandalan, waktu respon dan kebutuhan
storage. Contoh kendala seperti: Keterbatasan
kemampuan peralatan I/O, representasi sistem dll
Permasalahan Pada Analisis Kebutuhan
• Pengguna (stakeholders) tidak mengetahui apa
yang mereka butuhkan
• Pengguna menjelaskan kebutuhan dengan cara
mereka sendiri sehingga sulit untuk dipahami
• Pengguna yang berbeda memiliki konflik
kebutuhan
• Faktor politik dan organisasi yang dapat
mempengaruhi kebutuhan sistem
• Perubahan kebutuhan selama proses analisis.
Terdapat stakeholder baru yang mungkin akan
merubah lingkungan bisnis.
PANDUAN FASTJ. Wood dan D. Silver menyarankan beberapa panduan umum FAST yang dapat digunakan
yaitu :
Peserta harus menghadiri semua rapat
Semua peserta adalah sama
Persiapan harus sama pentingnya dengan rapat yang sebenarnya
Semua dokumen sebelum rapat harus dikaji ulang
Lokasi rapat diluar ruangan terkadang diperlukan
Tentukan agenda dan jangan sampai mengalami perubahan
Jangan sampai terbawa dalam hal-hal teknis yang terlalu rinci
Prinsip Analisis/Analysis PrinciplesPRINSIP ANALISA KESATU
Data Domain Model :
Menetapkan objek data
Menggambarkan atribut data
Menetapkan hubungan data
PRINSIP ANALISA KEDUA
Fungsi Model :
Mengidentifikasi fungsi yang (dapat) merubah objek data
Mengindikasikan berapa data yang melalui system
Mewakili data produsen dan konsumen
PRINSIP ANALISA KETIGA
Model Kebiasaan :
Mengindikasikan states yang berbeda dari system
Menetapkan kejadian yang mungkin menyebabkan perubahan pada state
PRINSIP ANALISA KEEMPAT
Partisi Model :
Menyaring setiap model untuk mewakili level yang lebih rendah dari abstraksi
o Menyaring objek data
o Membuat hirarki fungsi
o Mewakili kebiasaan pada tingkatan yang berbeda tiap detil
Membuat partisi horizontal dan vertikal
PRINSIP ANALISA KELIMA :
Intisari :
Memulai focus intisari masalah tanpa memperhatikan rincian implementasi
BEBERAPA PRINSIP YANG DIKEMUKAKAN DAVIS :
Mengerti masalah sebelum kita memulai menciptakan model analisa
Membangun protipe yang memungkinkan pelanggan untuk mengerti bagaimana
pelanggan mengerti interaksi manusia dan mesin dapat terjadi
Mencatat hal-hal yang baru dan alasan untuk setiap kebutuhan
Menggunakan gambaran bertingkat setiap kebutuhan
Memprioritaskan kebutuhan
Bekerja untuk menghilangkan keragu-raguan
PRINSIP-PRINSIP ANALISAPrinsip-prinsip dasar metode analisa :
1. Domain informasi.
2. Permasalahan harus dipartisi.
3. Gambaran dari logikal dan fisikal sistem harus dikembangkan.
1. DOMAIN INFORMASI
Domain informasi berisi 3 pandangan yang berbeda dari data yang
diproses oleh program komputer :
a. Aliran informasi :
Menggambarkan bagaimana perubahan data dari satu proses ke
proses lain.
b. Isi informasi :
Menggambarkan item-item data yang menyusun item yang lebih besar
dan berisikan informasi yang lengkap.
c. Struktur informasi :
Menggambarkan organisasi data secara logika.
Data-data disusun dalam bentuk tabel, hirarki, atau tree.
Yang diperhatikan pada struktur informasi adalah bagaimana data
item yang ada saling berhubungan.
2. PERMASALAHAN HARUS DIPARTISI
Partisi dilakukan agar masalah yang besar bisa dimengerti dengan mudah
Keuntungan :
Membantu meningkatkan pengertian permasalahan sampai rinci.
Memudahkan untuk penganalisaan.
3. PANDANGAN LOGIKAL DAN FISIKAL
Pandangan logikal :
Gambaran dari fungsi perangkat lunak yang diperlukan telah ditentukan
dan informasi yang akan diproses tanpa memandang penerapannya
sampai detail/rinci
Pandangan fisikal :
Bagaimana penerapan fungsi pemrosesan dan struktur informasi
SOFTWARE PROTOTYPINGPrototype diuji dan disempurnakan sebelum dilakukan produksi software
yang sebenarnya. Dalam software engineering, pembuatan prototype
merupakan proses produksi.
Pembuatan prototype bisa membantu :
1. Pendefinisian dan spesifikasi desain yang akan dibuat.
2. Pemilihan metode dan algoritma yang akan digunakan dalam desain.
3. Pendefinisian spesifikasi interface dengan pemakai.
Langkah-langkah yang dapat diterapkan untuk menghasilkan prototype
perangkat lunak :
1. Mengevaluasi permintaan/pemesanan perangkat lunak dan menentukan
apakah perangkat lunak yang dikembangkan mempunyai peluang yang
baik untuk dibuat prototype-nya.
2. Setelah “calon proyek” dapat diterima, analis mengembangkan garis besar
keperluan/kebutuhan.
3. Setelah representasi kebutuhan ditinjau ulang, maka dibuat desain
spesifikasi untuk pembuatan prototype.
4. Lakukan testing dan penghalusan/perbaikan terhadap prototype perangkat
lunak.
5. Prototype perangkat lunak yang sudah ditest, diperlihatkan kepada
customer untuk dilakukan uji coba.
6. Langkah 4 dan 5 diulangi sampai customer merasa puas dan kriteria
validasi terpenuhi.
Metoda dan alat bantu pembuatan prototype :
1. Fourth Generation Techniques
2. Reusable software component
Menggunakan komponen perangkat lunak yang sudah ada :
Struktur data (database)
Komponen arsitektur program (program)
Komponen prosedural (modul)
3. Formal specification and prototyping environments
Metoda ini banyak menggunakan bahasa formal untuk mengembangkan
proses interaktif dengan lingkungan luar;
Memungkinkan analis membuat spesifikasi untuk mengembangkan
proses secara interaktif
Menggunakan alat bantu otomatis yang dapat menterjemahkan
executable code
Memungkinkan pelanggan menggunakan prototype “executable code”
untuk proses penghalusan dalam hal kebutuhan yang diinginkan.
SPECIFICATIONPrinsip-prinsip dalam penyusunan spesifikasi perangkat lunak :
1. Memisahkan fungsi dari implementasi
2. Spesifikasi sistem berorientasi kepada keperluan sistem
3. Spesifikasi harus memuat sistem dari perangkat lunak yang merupakan komponen
4. Spesifikasi harus termasuk di mana sistem akan dioperasikan
5. Spesifikasi sistem harus berupa model kognitif
6. Spesifikasi dapat dilaksanakan
7. Spesifikasi sistem harus bertoleransi terhadap ketidaklengkapan dan
kemungkinan perluasan sistem
8. Spesifikasi harus dibatasi dan keterkaitannya longgar software
REPRESENTATIONDigunakan untuk menjelaskan metode yang dipakai untuk menganalisa kekuatan
Petunjuk pembuatan representasi :
Format representasi dan isinya harus relevan dengan masalah yang akan dijelaskan
Informasi diisi dengan spesifikasi yang dapat bersarang
Menggunakan simbol/bentuk yang terbatas jumlahnya dan digunakan
secara konsisten
Representari dapat direvisi