6- RPL - Pemodelan Spesifikasi Kebutuhan-ppt

Preview:

Citation preview

Rekayasa Perangkat Lunak(MKB111011)Pertemuan ke-6

Eko Harry Pratisto, S.T., M.InfoTech.ekoharry.pratisto@gmail.com

Pemodelan Spesifikasi Kebutuhan Perangkat Lunak

Rekayasa Perangkat Lunak 2

Pemodelan spesifikasi kebutuhan perangkat lunak› Rekayasa perangkat lunak

pada umumnya dimulai dengan pemodelan yang menunjukkan spesifikasi kebutuhan perangkat lunak dan representasi perancangan perangkat lunak yang akan dikembangkan

Rekayasa Perangkat Lunak 3

Pemodelan spesifikasi kebutuhan perangkat lunak

› Kata-kata tertulis merupakan sarana komunikasi terbaik tetapi bukan cara yang terbaik untuk merepresentasikan spesifikasi kebutuhan perangkat lunak komputer

› Pemodelan menggunakan gabungan dari bentuk teks dan diagram agar:– Mudah dipahami– Dapat langsung dilakukan penilaian untuk

mengetahui kebenaran, kelengkapan dan konsistensinya

Rekayasa Perangkat Lunak 4

Mengapa pemodelan penting?› Untuk melakukan validasi terhadap

spesifikasi-spesifikasi kebutuhan perangkat lunak perlu diperiksa model-model tersebut dari sudut pandang:– Model berbasis skenario– Model data (informasi)– Model berbasis kelas

› Masing-masing model merepresentasikan spesifikasi-spesifikasi kebutuhan perangkat lunak yang berbeda sehingga meningkatkan kemungkinan akan ditemukannya error.

Rekayasa Perangkat Lunak 5

Model-model analisis› Pekerjaan pemodelan spesifikasi-

spesifikasi kebutuhan pada dasarnya akan menghasilkan beberapa jenis model:– Model berbasis skenario; menggambarkan

spesifikasi kebutuhan perangkat lunak dari berbagai sudut pandang “aktor” dari sistem

– Model data; menjelaskan area informasi untuk permasalahan yang akan diselesaikan

– Model berorientasi kelas; memperlihatkan kelas-kelas dalam konteks object oriented programming dan bagaimana kelas-kelas tersebut bekerjasama untuk mencapai sasaran spesifikasi kebutuhan sistem

Rekayasa Perangkat Lunak 6

Model-model analisis– Model berorientasi aliran;

menggambarkan elemen-elemen fungsional sistem/perangkat lunak dan menggambarkan bagaimana perilakunya terhadap data yang melintasi sistem

– Model perilaku; menggambarkan bagaimana perangkat lunak berperilaku terhadap kejadian-kejadian yang datang dari luar sistem

Rekayasa Perangkat Lunak 7

Model-model analisis› Dari model-model analisis yang

dijelaskan sebelumnya dapat memberikan informasi kepada seorang perancang perangkat lunak yang dapat diterjemahkan menjadi arsitektur sistem, interface dan perancangan tingkat komponen.

› Pada akhirnya pengembang dan pengguna sistem dapat melakukan penilaian kualitas saat kelak perangkat lunak selesai dikembangkan.

Rekayasa Perangkat Lunak 8

Filosofi analisis› Dalam mendapatkan spesifikasi-

spesifikasi kebutuhan perangkat lunak, fokus utama terletak pada apa bukan bagaimana.

› Kita berfokus pada:– apa yang terjadi saat pengguna berinteraksi

dalam suatu keadaan tertentu– objek apa saja yang dimanipulasi– fungsi apa yang harus dapat dilakukan oleh

sistem– perilaku apa yang akan diperlihatkan sistem– Batasan-batasan apa yang ditetapkan

Rekayasa Perangkat Lunak 9

Aturan-aturan analisis (Arlow and Neustadt)› Model seharusnya berfokus pada

kebutuhan-kebutuhan yang tampak di dalam area permasalahan / jangan terlalu rinci.

› Segala pertimbangan yang berkait dengan infrastruktur dan model-model non fungsional lainnya ditunda hingga tahap perancangan dimulai.

› Diupayakan agar sebagai analisis sistem, kita merasa pasti bahwa model-model kebutuhan memberikan nilai tertentu pada semua stakeholder

Rekayasa Perangkat Lunak 10

Aturan-aturan analisis (Arlow and Neustadt)

› Usahakan agar model sesederhana mungkin. Jangan membuat diagram-diagram tambahan saat tidak ada informasi baru yang ditambahkan.

Rekayasa Perangkat Lunak 11

Pendekatan-pendekatan untuk pemodelan spesifikasi kebutuhan› Ada dua macam pendekatan untuk

pemodelan analisis:– Analisis terstruktur; dimana kita

memperlakukan data dan proses yang melakukan transformasi data tersebut sebagai entitas yang terpisah. Objek-objek data dimodelkan dengan cara mendefiniskan atribut-atributnya serta relasi-relasinya

– Analisis berorientasi objek; berfokus pada pendefinisian kelas-kelas dan cara bagaimana mereka saling berinteraksi satu sama lain untuk memenuhi kebutuhan para pengguna. UML (Unified Modelling Language) dmerupakan notasi dan proses dalam object oriented

Rekayasa Perangkat Lunak 12

Rekayasa Perangkat Lunak 13

SoftwareRequiremen

ts

Model berbasis skenariomisal:Use caseUser stories

Model kelasmisal:Diagram kelasDiagram kolaborasi

Model perilakumisal:Diagram stateDiagram urutan

Model aliranmisal:DFDModel data

Pemodelan berbasis skenarioMembuat Use Case› Model Use Case mendefinisikan

fungsionalitas sistem dari sudut pandang pengguna

› Use Case memperlihatkan apa yang pengguna dapat lakukan dengan sistem

› Aktor memperlihatkan peran dari pengguna yang berinteraksi dengan sistem

› Use Case Diagram merupakan diagram yang menunjukkan keterlibatan antara aktor dan use case

Rekayasa Perangkat Lunak 14

Batasan sistem

› Sangat penting untuk mendefinisikan batasan sistem sebelum melengkapi kebutuhan dan use case.

› Termasuk didalamnya:– What IS in the system– What is NOT in the system

Rekayasa Perangkat Lunak 15

Aktor

› Tipe atau kategori pengguna (user)

› Mendefinisikan peran yang pengguna dapat lakukan

› Satu orang dapat berperan sebagai beberapa aktor

› Aktor bisa merupakan sistem lain (tidak harus manusia)

› Aktor merupakan bagian eksternal dari sistem

Rekayasa Perangkat Lunak 16

Katalog aktor

› Katalog aktor adalah kumpulan informasi dari semua aktor

› Setiap aktor terdiri:1. Nama aktor2. Deskripsi3. Daftar Use Case4. Representatif pengguna5. Detail kontak representatif pengguna

Rekayasa Perangkat Lunak 17

Contoh customer bank1. Nama aktor

– Customer

2. Deskripsi– Customer bank (memiliki rekening di bank)

3. Daftar Use Case– ATM penarikan, ATM transfer, ATM saldo, dll

4. Representatif pengguna– Eko Harry

5. Detail Kontak representatif pengguna– HP: 081229558840, e-mail:

ekoharry.pratisto@gmail.com

Rekayasa Perangkat Lunak 18

Use Case

› Setiap use case terdiri dari:1. Nama use case2. Deskripsi use case3. Daftar aktor

› Bisa saja lebih dari 1 aktor

4. Dialog› Antara aktor dan sistem› Aktor melakukan….› Sistem melakukan…› Aktor melakukan…› ….

5. Skenario/variasi

Rekayasa Perangkat Lunak 19

Use Case Vs Skenario/Variasi

› Setiap selesainya tahapan suatu kejadian yang dilakukan oleh aktor kita identifikasikan sebagai Use Case

› Skenario atau variasi – Daripada menuliskan sejumlah banyak

use case

Rekayasa Perangkat Lunak 20

Representasi dari Use Case

Rekayasa Perangkat Lunak 21

Contoh Use Case penggunaan ATM

1. Nama– ATM Penarikan tunai

2. Deskripsi– Use case menggambarkan penarikan

uang dari mesin ATM

3. Daftar aktor– Customer

Rekayasa Perangkat Lunak 22

Contoh Use Case penggunaan ATM4. Dialog

– Sistem : masukkan kartu– Aktor : memasukkan kartu– Sistem : menanyakan PIN– Aktor : memasukkan PIN– Sistem : transaksi apa yang diinginkan?– Aktor : pilih penarikan tunai– Sistem : masukkan nominal yang diinginkan– Aktor : pilih Rp 50.000,00– Sistem : mengeluarkan uang Rp. 50.000,00– Aktor : selesai– Sistem : print tanda transaksi dan keluarkan

kartu

Rekayasa Perangkat Lunak 23

Contoh Use Case penggunaan ATM

5. Variasi:– PIN salah – mempersilahkan 3x percobaan

lalu tahan kartu– Saldo tidak cukup – memberi notifikasi

saldo tidak mencukupi

Rekayasa Perangkat Lunak 24

Use case diagram

Rekayasa Perangkat Lunak 25

Penarikan tunai

Transfer

Cek saldo

pembayaran

Refill uang

customer

Staff bank

Keuntungan Use Case Modelling

› Fokus pada cara sistem akan digunakan

› Penggunaan praktis untuk pengembangan perangkat lunak

› Fokus pengembangan use case secara prioritas

› Dasar dari user manual (panduan pengguna

Rekayasa Perangkat Lunak 26

Kerugian Use Case Modelling

› Tidak ada spesifikasi untuk kebutuhan non behavioural

› Tambahan notasi dan proses yang harus dipelajari

Rekayasa Perangkat Lunak 27

Sistem Interface

Rekayasa Perangkat Lunak 28

Perpotongan antara Use Case dan Batasan Sistem dinamakan Sistem Interface

Prototipe atau sketsa User Interface

› Disarankan sebagai cara yang praktis untuk spesifikasi kebutuhan pengguna

› Seorang sistem analis membangun sketsa atau prototipe sederhana dari user interface

Rekayasa Perangkat Lunak 29

Alat untuk membuat prototipe atau sketsa user interface

› Alat sketsa– Pandangan storyboard dari user interface

› Visual development tools

› Program drawing

Rekayasa Perangkat Lunak 30

Keuntungan dari sketsa atau prototipe user interface

› Tidak susah untuk dibuat dan mudah untuk didiskusikan

› Memberi pengguna kesan yang baik akan fungsionalitas sistem

› Secara umum jelas dan tidak ambigu

› Sebagai pedoman untuk pengembangan

Rekayasa Perangkat Lunak 31

Kerugian dari sketsa atau prototipe user interface

› Tidak ada spesifikasi untuk kebutuhan non fungsional

› Tidak terlihat prioritas kebutuhan

Rekayasa Perangkat Lunak 32

Contoh user interface

Rekayasa Perangkat Lunak 33

Silahkan pilih transaksi

> Cek Saldo

> Penarikan tunai

> Pembayaran

Transfer <

Lain – lain <

Pertanyaan…??

Komentar…???

Rekayasa Perangkat Lunak 34

Tugas

› Sebuah perpustakaan daerah menginginkan Anda untuk membuatkan sebuah software Sistem Manajemen Perpustakaan dimana penggunanya ada 2 kategori yaitu pengunjung/anggota perpustakaan dan pustakawan.a. Buatlah Katalog Aktorb. Buatlah Katalog Use Casec. Buatlah Diagram Use Case

Rekayasa Perangkat Lunak 35

Recommended