Anda di halaman 1dari 34

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 REKAYASA
objectPERANGKAT
orientedLUNAK 12
Model berbasis
Model kelas
skenario
misal:
misal:
Diagram kelas
Use case
Diagram kolaborasi
User stories

Software
Requirements

Model perilaku Model aliran


misal: misal:
Diagram state DFD
Diagram urutan Model data

REKAYASA PERANGKAT LUNAK 13


Pemodelan berbasis skenario
Membuat 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 aktor
2. Deskripsi
3. Daftar Use Case
4. Representatif pengguna
5. Detail kontak representatif pengguna

REKAYASA PERANGKAT LUNAK 17


Contoh customer bank
1. 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 case
2. Deskripsi use case
3. 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

Nama 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
ATM
4. 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
REKAYASA PERANGKAT LUNAK 23
kartu
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

Penarikan
tunai

Transfer

Cek saldo
customer

pembayaran

Staff bank
Refill uang

REKAYASA PERANGKAT LUNAK 25


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

Perpotongan antara Use Case dan Batasan Sistem


dinamakan Sistem Interface

REKAYASA PERANGKAT LUNAK 28


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

Silahkan pilih transaksi

> Cek Saldo Transfer <

> Penarikan tunai Lain – lain <

> Pembayaran

REKAYASA PERANGKAT LUNAK 33


Pertanyaan…??

Komentar…???

REKAYASA PERANGKAT LUNAK 34

Anda mungkin juga menyukai