senang akhirnya bisa menulis diblog ini lagi, baiklah pada postingan kali ini saya ingin berbagi pengetahuan tantang konsep dan prinsip analisa pada rekayasa perangkat lunak.
baiklah lajut pada topik kita ce..ki..dot!!!!
1.Analisis Kebutuhan Perangkat Lunak
Analisis kebutuhan merupakan langkah awal untuk menentukan gambaran
perangkat yang akan dihasilkan ketika pengembang melaksanakan sebuah
proyek pembuatan perangkat lunak. Perangkat lunak yang baik dan sesuai
dengan kebutuhan pengguna sangat tergantung pada keberhasilan dalam
melakukan analisis kebutuhan. Untuk proyek-proyek perangkat lunak yang
besar, analisis kebutuhan dilaksanakan setelah aktivitas sistem
information engineering dan software project planning.
Analisa kebutuhan adalah suatu proses untuk mendapatkan informasi, mode,
spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna.
Kedua belah pihak, yaitu klien dan pembuat perangkat lunak terlibat
aktif dalam tahap ini. Informasi dari klien yang akan menjadi acuan
untuk melakukan desain perangkat lunak.
Ada tiga faktor yang harus dipenuhi ketika melakukan analisis kebutuhan
ini, yaitu lengkap, detail, dan benar. Lengkap artinya semua yang
diharapkan oleh klien telah didapatkan oleh pihak yang melakukan
analisis. Detail maksudnya adalah berhasil mengumpulkan informasi yang
terperinci. Semua data dari analisis kebutuhan ini haruslah benar,
sesuai apa yang dimaksud oleh klien, bukan benar menurut apa yang
dipikirkan oleh pihak analisis.
Analisis kebutuhan yang dilakukan terhadap perangkat lunak akan
menghasilkan spesifikasi perangkat lunak tersebut. Analisa kebutuhan ini
terdiri dari lima langkah pokok:
1.Identifikasi Masalah2.Evaluasi dan sintesis
3.Pemodelan
4.Spesifikasi
5.Review
Tujuan analisis kebutuhan
Ada tiga tujuan utama dari proses analasis kebutuhan yang dapat diformulasikan sebagai beriukut :
1.Mengelola hasil elistasi kebutuhan untuk menghasilkan dokumen spesifikasi kebutuhan yang isi keseluruhannya sesuai dengan apa yang diinginkan pengguna (Liu and Yen, 1996).
2.Mengembangkan persyaratan kualitas yang memadai dan rinci, dimana para manajer dapat membuat pekerjaan proyek yang realistis dan staf teknis dapat melanjutkan dengan perancangan, implementasi dan pengujian (Wiegers, 2003).
3.Membangun pemahaman tentang karakteristik ranah permasalahan dan sekumpulan kebutuhan untuk menemukan solusi
Ketiga tujuan tersebut dapat dicapai oleh perekayasa kebutuhan dengan melalui serangkaian tahapan-tahapan aktivitas. Tahapan aktivitas tersebut dijelaskan sebagai berikut.
Tahap Analisis Kebutuhan
Tahap analisis adalah tahapan pengumpulan kebutuhan-kebutuhan dari semua elemen sistem perangkat lunak yang akan di bangun. Pada tahap ini dibentuk spesifikasi kebutuhan perangkat lunak, fungsi perangkat lunak yang dibutuhkan, performansi (unjuk kerja) sistem perangkat lunak, penjadwalan proyek, identifikasi sumber daya (manusia , perangkat keras dan perangkat lunak yang dibutuhkan) dan taksiran biaya pengembangan perangkat lunak.
Diagram menunjukan tahapan-tahapan didalam analisis kebutuhan (Sommervilee, 2004). Pada dasarnya, aktivitas analisis dibutuhkan dalam setiap proses dalam daur hidup pengembangan perangkat lunak. Didalam proses rekayasa kebutuhan, analisis pun dilakukan dalam setiap aktivitas-aktivitasnya. Penjelasan dari masing-masing aktivitas tersebut.
Domain Understanding, dalam tahap ini perekayasa kebutuhan perangkat lunak harus mengetahui bagaimana organisasi perusahaan beroperasi dan apa yang menjadi permasalahan pada sistem yg sedang berjalan pada saat ini. perekayasaan perlu memfokuskan kepada ‘Apa’ yg menjadi permasalahan. Perekaysaan hendaknya tidak berhenti pada menemukan “gejala” dari permasalahn itu terjadi untuk menemukan akar dari pemasalahan dari sistem yg berjalan tersebut.
Requirements Collection, Tahapan ini merupakan tahapan pengumpulan kebutuhan akan sistem yang akan dibangun.Pada tahapan ini diperlukan adanya intekasi intensif dengan pemangku kepentingan terutama dengan pengguna akhir.
Classification, Pada tahapan sebelumnya kumpulan kebutuhan masih tidak terstruktur.Untuk itu kebutuhan yang saling berkaitan dikelompokan,baik menurut kelas penggunaanya maupun jenis kebutuhananya. Kebutuhan kebutuhan tersebut diorganisasi ke dalam kelompk-kelompok yang koheren.Perekayasaan perlu memisahkan antara kebutuhan dan keinginan dari pengguna.
Conflict resolution, Pada tahapan ini adalah menemukan dan menyelesaikan kebutuhan yang di dalamnya terdapat konflik.
Prioritisation, Pada tahapan dilakukan interaksi dengan pemangku kepentingan untuk mengidentifikasikan kebutuhan-kebutuhan priopritas dari masing-masing kebutuhan agar sumber daya yang tersedia pada organisasi dialokasikan untuk mengimplementasikan kebutuhan yg terutama dari pemangku kepentingan.
Requirements Checking, Menganalisa sekumpulan kebutuhan dari hasil tahapan sebelumnya untuk memverifikasi dan memvalidasi berdasarkan aspek kelengkapan,konsistensi,dan kebutuhan nyata.
Dalam rekayasa kebutuhan, analisa kebutuhan yang baik hedaklah menitik beratkan pada ranah permasalahan dan bukan pada ranah solusi. Tujuan utamanya adalah untuk mencapai pemahaman tetang sifat dari ranah permasalahan dan permasalahan yang ada didalamnya . Pada dasarnya, analisi kebutuhan diawali dengan spesifikasi (layanan, atribut, properti, kualitas, batasan) dari sistem solusi yang hendak dibangun.
Kegunaan analisis adalah untuk memodelkan permasalahan dunia nyata agar dapat dimengerti. Permasalahan dunia nyata harus dimengerti dan dipelajari supaya spesifikasi kebutuhan perangkat lunak dapat diungkapkan. Tujuan aktivitas ini adalah untuk mengetahui ruang lingkup produk (product space) dan pemakai yang akan menggunakannya. Analisis yang baik akan mengungkapkan hal-hal yang penting dari permasalahan, dan mengabaikan yang tidak penting.
2.Teknik Komunikasi
Menurut
Gause dan Weinberg menyarankan agar analis memulainya dengan mengajukan
pertanyaan bebas konteks, dimana pertanyaan tersebut berfokus pada
pelanggan, tujuan keseluruhan, dan keuntungan.
Contoh:
- Siapa di balik permintaan untuk pekerjaan ini?
- Apa keuntungan ekonomi dari pemecahan yang berhasil?
Rangkaian
pertanyaan berikutnya memungkinkan analis mendapatkan pemahaman yang
lebih baik mengenai masalah dan pelanggan, untuk menyatakan persepsinya
terhadap suatu pemecahan.
- Masalah apakah yang akan diselesaikan oleh pemecahan ini?
- Dapatkah anda memperlihatkan kepada saya atau menjelaskan lingkungan dimana pemecahan tersebut akan digunakan.
Masing-masing
metode analisis memiliki titik pandang yang unik. Tetapi semua metode
analisis dihubungkan oleh serangkaian prinsip operasional:
- Domain informasi dari suatu masalah harus direpresentasikan dan dipahami.
- Fungsi-fungsi yang akan dilakukan oleh perangkat lunak harus didefinisikan.
- Tingkah laku perangkat lunak (sebagai suatu urutan kejadian eksternal) harus diwakilkan.
- Model-model yang menggambarkan informasi, fungsi, dan tingkah laku harus dipecah-pecah dalam suatu cara yang membongkar suatu detail dalam bentuk lapisan.
- Proses analisis harus bergerak dari informasi dasar ke detail implementasi.
- Prinsip analisis operasional mengharuskan kita membangun model fungsi dan tingkah laku, yaitu:
- Model Fungsional: Perangkat lunak mentransformasi informasi, dan untuk melakukannya, perangkat lunak harus melakukan paling tidak tiga fungsi genetik: input, pemrosesan, dan output.
a. Prototyping Perangkat
Analisis
harus dilakukan tanpa mengabaikan paradigma rekayasa perangkat lunak
yang di aplikasikan; tetapi bentuk yang diambil oleh analisis akan
bermacam- macam. Dalam banyak kasus sangat mungkin untuk mengaplikasikan
prinsip operasional dan menarik sebuah model perangkat lunak yang
melaluinya sebuah desain dapat dikembangkan, pengaplikasian prinsip
analisis dan penyusunan model perangkat lunak yang akan dibangun yang
disebut prototype untuk penilaian pelanggan danpengembang.
b. Pemilihan prototyping
Paradigma
prototyping terbatas dan tidak terbatas. Pendekatan terbatas sering
disebut : throw away prototyping. Dengan menggunakn pendekatan tersebut,
prototyping sebagai sebuah demonstrasi kasar dari sebuah
persyaratan.Kemudian prototype dikesampingkan dan perangkat lunak
direkayasa dengan menggunakan suatu paradigma yang berbeda.Pendekatan
tidak terabatas sering disebut evolusionary prototyping,menggunakan
prototyping sebagai bagian utama dari aktivitas analisis yang akan
diteruskan ke dalam desain dan konstruksi.
c. Metode dan Peranti Prototyping
Agar
prototyping perangkat lunak efektif, maka harus dikembangkan suatu
prototype dengan cepat sehingga pelanggan dengan dapat menilai hasil dan
perubahan yang di rekomendasikan. Untuk melakukan prototyping dengan
tepat ad tiga kelas metode dan peranti generik, teknik generasi keempat
komponen perangkat lunak reusable, spesifikasi normal,dan lingkungan
prototyping.
ok pembaca yang berbahagia sekian postingan saya kali ini semoga bermamfaat amin.
0 komentar:
Posting Komentar