REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang...

27
REKAYASA PERANGKAT LUNAK 3 sks Sri Rezeki Candra Nursari reezeki2011.wordpress.com

Transcript of REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang...

Page 1: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

REKAYASA PERANGKAT LUNAK

3 sksSri Rezeki Candra Nursari

reezeki2011.wordpress.com

Page 2: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Referensi

• Rekayasa Perangkat Lunak – Pendekatan Praktisi, Roger S. Pressman, Ph.D, Andi Jogyakarta, 2012 – Buku 1

• Rekayasa Perangkat Lunak – Pendekatan Praktisi, Roger S. Pressman, Ph.D, Andi Jogyakarta, 2012 – Buku 2

• Rekayasa Perangkat Lunak – Analisa Kebutuhan Dalam, Daniel Siahaan, Andi Jogyakarta, 2012

Page 3: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Materi• Perancangan, pembuatan, pengujian dan perawatan

perangkat lunak serta pemrograman dengan bahasa tingkat tinggi.

• Siklus hidup perangkat lunak, Waterfall model, V model, Spiral model, Prototyping, prinsip dasar analisis kebutuhan, alur data, struktur data DSSD, Sistem Jackson, perangkat pembantu.

• Computer Aided Software Engineering (CASE) tools. • Perancangan real time system. • Analisis berorientasi objek, Pemodelan data, Metode

formal, Pengantar perancangan dan implementasi

Page 4: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

ANALISA KEBUTUHAN

Page 5: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

ANALISIS KEBUTUHAN(Requirements Analysis)

• Analisis kebutuhan adalah serangkaian aktivitas yang dilakukan oleh berbagai pihak yang terkait dengan suatu proyek perangkat lunak, untuk menentukan persyaratan (requirements) yang dibutuhkan oleh user dan sistem, sehingga perangkat lunak yang dikembangkan berfungsi sebagaimana mestinya

• Hal ini tidak lepas dari proses rekayasa sistem (system engineering) dan proses rekayasa persyaratan (requirements engineering)

Page 6: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

ANALISIS KEBUTUHAN(Requirements Analysis)

• Analisis kebutuhan merupakan prosesmenemukan, memperbaiki, memodelkan danmenspesifikasikan.

• Dengan kata lain bahwa analisa kebutuhanadalah sebuah proses untuk mendapatkaninformasi, model, spesifikasi tentangperangkat lunak yang diinginkanklien/pengguna.

Page 7: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

ANALISIS KEBUTUHAN(Requirements Analysis)

• Rekayasa persyaratan merupakan tahap yang sangat kritis dari proses perangkat lunak, karena kesalahan pada tahap ini akan menimbulkan masalah lain pada perancangan dan implementasi sistem.

• Hasilnya adalah dokumen persyaratan yang merupakan spesifikasi sistem.

Page 8: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

ANALISIS KEBUTUHAN(Requirements Analysis)

• Persyaratan biasanya direpresentasikan pada dua tingkat perincian di dokumen ini. –Pengguna akhir (end user) dan –Pelanggan memerlukan pernyataan

persyaratan tingkat tinggi; pengembang sistem memerlukan spesifikasi sistem yang lebih rinci

Page 9: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Proses Rekayasa Persyaratan• Ada empat fase utama pada proses

rekayasa persyaratan :1. Studi kelayakan2. Elisitasi dan analisis persyaratan3. Spesifikasi persyaratan4. Validasi Persyaratan

Page 10: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Fase Utama Pada Proses Rekayasa Persyaratan

1. Studi Kelayakan• Studi ini seharusnya murah dan cepat.• Yang dilakukan :

• Dibuat perkiraan mengenai apakah user yang diidentifikasi puas menggunakan perangkat lunak dan teknologi perangkat keras yang dipakai

• Memutuskan apakah sistem yang diusulkan efektif dalam hal biaya dari sudut pandang bisnis. Dana apakah sistem dapat dikembangkan dengan keterbatasan anggaran yang tersedia.

• Hasilnya – Laporan Kelayakan - menginformasikan keputusan apakah kita akan terus dengan analisis yang lebih rinci, atau tidak

Page 11: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Fase Utama Pada Proses Rekayasa Persyaratan

2. Elisitasi dan Analisis Persyaratan• Merupakan proses penurunan persyaratan

sistem melalui observasi sistem yang ada. • Proses ini melibatkan satu atau lebih model

dan prototipe sistem. • Hasil fase ini akan membantu analisis

memahami sistem yang akan dispesifikasi.

Page 12: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Fase Utama Pada Proses Rekayasa Persyaratan

3. Spesifikasi Persyaratan• Merupakan kegiatan menerjemahkan

informasi yang dikumpulkan pada kegiatan analisis menjadi dokumen yang mendefinisikan serangkaian persyaratan.

• Ada 2 persyaratan :» Persyaratan user : pernyataan abstrak

» Persyaratan sistem : deskripsi yang lebih rinci mengenai fungsionalitas yang akan diberikan

Page 13: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Fase Utama Pada Proses Rekayasa Persyaratan

4. Validasi Persyaratan• Kegiatan ini memeriksa apakah persyaratan

dapat direalisasikan, konsisten, dan lengkap. • Pada proses ini, kesalahan pada dokumen

persyaratan akan ditemukan dan diperbaiki.

Page 14: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Rekayasa Persyaratan• Ada dua jenis persyaratan :

1. Persyaratan user (user requirements)– pernyataan, dalam bahasa natural ditambah diagram,

mengenai apa yang kita harapkan disediakan oleh sistem dan batasan operasinya

2. Persyaratan sistem (system requirements)– menentukan layanan dan batasan sistem secara rinci.

Dokumen persyaratan sistem (spesifikasi fungsional) harus tepat. Dokumen ini bisa berlaku sebagai kontrak antara pembeli dan pengembang perangkat lunak

Page 15: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Rekayasa Persyaratan1. Persyaratan user (user requirements)

• Mendeskripsikan persyaratan fungsional dan non-fungsional sehingga dapat dipahami oleh user sistem yang tidak mempunyai pengalaman teknis yang rinci.

• Persyaratan user harus ditulis dengan bahasa natural, format dan diagram yang sederhana

• Persyaratan user lebih baik dipisah dari persyaratan sistem yang lebih rinci pada dokumen persyaratan.

• Jika tidak, pembaca persyaratan user yang non-teknis akan kewalahan dengan rincian yang hanya relevan bagi teknisi

Page 16: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Rekayasa Persyaratan2. Persyaratan sistem (system requirements)

– Merupakan deskripsi yang lebih rinci dari persyaratan user. – Persyaratan ini berfungsi sebagai dasar kontrak untuk

implementasi sistem, sehingga harus merupakan spesifikasi yang lengkap dan konsisten dari sistem secara keseluruhan

– Hal-hal yang mengenai persyaratan sistem :• Persyaratan ini digunakan oleh perekayasa perangkat lunak sebagai

titik awal perancangan sistem.• Spesifikasi persyaratan sistem dapat mencakup model-model sistem

yang berbeda seperti model objek atau aliran data (DFD). • Persyaratan sistem harus menyatakan apa yang harus dilakukan

sistem, bukan bagaimana sistem tersebut diimplementasikan. • Arsitektur awal sistem bisa didefinisikan untuk membantu struktur

spesifikasi persyaratan. • Persyaratan sistem disusun menurut subsistem-subsistem yang

membangun sistem.• Sistem harus berinter operasi dengan sistem lain yang ada. Hal ini

membatasi perancangan dan batasan ini menimbulkan persyaratan untuk sistem yang baru

Page 17: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Rekayasa Persyaratan2.Persyaratan sistem (system

requirements)– Bahasa natural seringkali dipakai untuk menulis

spesifikasi persyaratan sistem, tapi dapat muncul masalah ketika bahasa natural digunakan untuk spesifikasi yang lebih rinci, yang dapat menimbulkan kesalahpahaman.

– Masalah ini muncul di proses perangkat lunak tahap berikutnya, dan pada saat itu, masalah tersebut sudah terlalu mahal untuk ditangani

– Untuk permasalahan di atas, dapat digunakan pendekatan lain, seperti bahasa persyaratan khusus, seperti bahasa natural terstruktur dan bahasa deskripsi rancangan

Page 18: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Produk perangkat lunak

• Produk perangkat lunak tersebut:–Generik – dibuat untuk dijual ke suatu

kumpulan pengguna yang berbeda–Bespoke (custom) – dibuat untuk suatu

pengguna tunggal sesuai denganspesifikasinya.

Page 19: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Faktor analisa kebutuhan• Ada 3 faktor yang harus dipenuhi ketika melakukan analisa

kebutuhan ini yaitu : – Lengkap

artinya semua yang diharapkan oleh klien telahdidapatkan oleh pihak yang melakukan analisa.

– Detailmaksudnya adalah berhasil mengumpulkan informasiyang rinci sampai hal-hal yang kecil.

– Benarartinya data dari analisa kebutuhan ini haruslah benar, sesuai apa yang dimaksud oleh klien, bukan benarmenurut apa yang difikirkan oleh pihak yang melakukananalisa.

Page 20: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

Kebutuhan perangkat lunak• Analisis kebutuhan perangkat lunak mencakup

analisis terhadap : 1. Kebutuhan Fungsional (kebutuhan akan fungsi-

fungsi)2. Kebutuhan Non-Fungsional (kebutuhan-

kebutuhan selain fungsi)

Page 21: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

1. Kebutuhan Fungsional(Kebutuhan Akan Fungsi-Fungsi

Pendefinisian layanan yang harusdisediakan, bagaimana reaksi sistemterhadap input dan apa yang harusdilakukan sistem pada situasi khusus(Kebutuhan sistem dilihat dari kacamatapengguna)

Page 22: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

2. Kebutuhan Non Fungsional(Kebutuhan Selain Fungsi-Fungsi

Kendala pada pelayanan atau fungsi sistem seperti kendala waktu, kendala proses pengembangan, standard, dan lain lain

• Contoh: –kehandalan, waktu respon dan kebutuhan

storage. • Contoh kendala seperti:

–Keterbatasan kemampuan peralatan I/O, representasi sistem dll.

Page 23: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

3 tahap teknik kebutuhanperangkat lunak

• Teknik kebutuhan perangkat lunak meliputi 3 buah tahap, yakni, 1. elicitation (pengumpulan

informasi), 2. specification (spesifikasi), 3. validation (validasi).[

Page 24: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

1. Elicitation (pengumpulan informasi)• Bertujuan untuk mengumpulkan sebanyak mungkin

informasi mengenai problem domain, kesulitan-kesulitan klien dan user, serta apa yang sistem inginlakukan untuk mereka. – Metode :

• Wawancara• Kuesioner• Skenario• Prototyping

Page 25: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

2. Specification (spesifikasi)• Informasi dari proses elicitation dianalisa dan

direkam menggunakan teknik modeling dramatis dan tekstual untuk menunjukkan masalah dan solusi yang diajukan. –Metode :

• Spesifikasi formal• Protoyping

Page 26: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

2. Specification (spesifikasi)• Spesifikasi kebutuhan menjelaskan apa yang dapat

dilakukan oleh suatu web site dan cakupan dari proyek

• Tujuan dari tahap spesifikasi kebutuhan adalah menentukan batasan kemampuan sistem.

• Analisis perangkat lunak dan perangkat keras• Teknologi yang akan digunakan• Pemilihan SO, Database yg digunakan• Spesifikasi semua halaman• Penentuan isi (content)

Page 27: REKAYASA PERANGKAT LUNAK - reezeki2011 · PDF fileinformasi, model, spesifikasi tentang perangkat lunak yang diinginkan klien/pengguna. ANALISIS KEBUTUHAN (Requirements Analysis) •

3. Validation (validasi)• Mengecek kebutuhan yang telah direkam

apakah telah berkaitan dengan tujuan stakeholder terhadap sistem.–Metode :

• Wawancara• Teknik kombinasi dari elicitation• Inspeksi Fagan• Prototyping