Analisis (Konvensional)
Tujuan Analisis • Menjabarkan kebutuhan pemakai • meletakkan dasar-dasar untuk proses perancangan PL • mendefinisikan semua kebutuhan pemakai sesuai dengan lingkup kontrak yang disepakati kedua belah pihak – Harus dapat di-tes pada saat PL sudah jadi Bagian II - RPLD
2
Elemen Analisis (1) • Pemodelan Data • Pemodelan Fungsional • Pemodelan Status/Kelakuan
Bagian II - RPLD
3
Elemen Analisis (2) Process
Data Object
Spec.
Desc. DFD E-R D
Data Dict.
STD Control Spec.
Bagian II - RPLD
4
Pemodelan Data • Mendeskripsikan data yang terlibat dalam PL • Tools: – ERD • diagram keterhubungan antar objek data
– Data Object Description • deskripsi atribut dari setiap objek data
– Data Dictionary • deskripsi semua objek data yang dibutuhkan maupun dihasilkan oleh PL Bagian II - RPLD
5
E-R Diagram (1) Contoh: • Entitas:
Buku
n
m meminjam
Peminjam
– Buku • Atribut: ISBN, Judul, Pengarang, Penerbit, ...
– Peminjam • Atribut: NIM, Nama, Alamat, ...
Bagian II - RPLD
6
ER Diagram (2) • Relasi: – Meminjam • Atribut: ISBN, NIM, …
• Kardinalitas: – N-M • 1 buku dapat dipinjam oleh banyak peminjam dan • 1 peminjam dapat meminjam banyak buku
• Catatan: – bedakan ERD dalam level abstraksi permasalahan sistem dengan ERD dalam level abstraksi kebutuhan PL Bagian II - RPLD
7
Data Object Description • Menyimpan semua atribut entitas dan relasi yang muncul pada ERD
Bagian II - RPLD
8
Data Dictionary (1) • Menyimpan semua objek data yang dibutuhkan dan dihasilkan oleh PL – objek data yang muncul pada: • ERD • DFD • STD
– harus selengkap dan serinci mungkin • contoh: Nama = nama_depan + nama_belakang Bagian II - RPLD
9
Data Dictionary (2) • Berisi: – Name • nama utama yang muncul pada objek data, data store, atau external entity
– Alias • nama lain yang digunakan
– Where-used/how-used • daftar proses yang menggunakan data dan bagaimana menggunakannya
– Content description • notasi untuk merepresentasikan isi data
– Supplementary information Bagian II - RPLD
10
Data Dictionary (3) • Notasi: Jenis Notasi Arti ====================================== urutan pilihan pengulangan
= + [ | ] { }n ( )
Terdiri atas dan atau Pengulangan sebanyak n kali Data optional
*
pembatas komentar
* Bagian II - RPLD
11
Data Dictionary (4) • Contoh: – nama mahasiswa = nama depan + nama belakang – jenis kelamin = [perempuan | laki-laki] – nomor telepon = (kode negara) + kode wilayah + nomor
Bagian II - RPLD
12
Pemodelan Fungsional • Mendeskripsikan seluruh fungsi yang terlibat dalam PL • Tools: – DFD • menggambarkan bagaimana data ditransformasikan pada PL • menggambarkan fungsi-fungsi yang mentransformasikan data
– Process Specification • berisi deskripsi dari setiap fungsi yang muncul pada DFD
Bagian II - RPLD
13
Context Diagram • Merepresentasikan sistem sebagai sebuah ‘black box’ terhadap lingkungan sekitarnya • Contoh: Id_ pemakai + jenis permintaan Sistem Informasi Perpustakaan
Pemakai
laporan
Bagian II - RPLD
14
Data Flow Diagram (1) • Penjabaran lebih lanjut dari Diagram Konteks • dapat terdiri atas beberapa level – level 0: level tertinggi – level 1: penjabaran dari level 0 – level 2: penjabaran dari level 1, dst
• semakin rendah levelnya, semakin rinci fungsinya • Catatan: – bedakan DFD dalam level abstraksi permasalahan sistem dengan DFD dalam level abstraksi kebutuhan PL Bagian II - RPLD
15
Data Flow Diagram (2) • Notasi dasar: External Entity Process
Data Object
Data Store
• Setiap proses harus diberi nomor: – level.nomor-urut
Bagian II - RPLD
16
Data Flow Diagram (3) • Contoh level 0: Id_ pemakai + jenis permintaan
Id_ pemakai + jenis permintaan 0.1 Masukan data
peminjam
Id_ pemakai + jenis permintaan
0.2 Pencarian data
pustaka
0.4 Pencetakan data
pustaka
0.3 Update data
Bagian II - RPLD
laporan
pustaka
17
Process Specification (1) • Deskripsi rinci setiap proses yang muncul pada DFD – proses yang harus mengandung P-SPEC adalah proses yang sudah tidak didekomposisi lagi menjadi sub-proses dibawahnya (sudah level terendah)
Bagian II - RPLD
18
Process Specification (2) • Contoh: – P-SPEC 0.4: • Input: – id_pemakai – data buku
• Output: – file teks
• Algoritma: if found then print header else . . .
Bagian II - RPLD
19
Pemodelan Status/Kelakuan • Mendeskripsikan status sistem yang dapat muncul ketika perangkat lunak digunakan • mendeskripsikan kelakuan sistem • Tools: – State Transition Diagram – Control Specification
• Umumnya digunakan pada sistem waktu-nyata
Bagian II - RPLD
20
State Transition Diagram • Contoh STD untuk mesin otomatis penjual minuman (tidak ada hubungannya dengan contoh sebelumnya): inisialisasi Terima koin baru
Pembayaran dikembalikan Terima koin baru
Menunggu koin Koin sah terdeteksi
Permintaan pengembalian koin
Terima permintaan Minuman dikeluarkan
Kembalikan pembayaran
Menunggu masukan pilihan
Mengembalikan pembayaran
Terima koin baru Minuman tersedia = 0
Pembayaran mencukupi
Kembalikan pembayaran
Keluarkan minuman
Mengeluarkan minuman
Bagian II - RPLD
21
Control Specification • Fungsi C-SPEC sama dengan P-SPEC namun berisi deskripsi dari setiap status yang dapat muncul pada sistem
Bagian II - RPLD
22
Kaitan antara Data dan Control Model Data input
Process Model
Data output
DFD Process activators
PSPEC
Control Model CFD
Data conditions
CSPEC Control output
Control input
Bagian II - RPLD
23
Kesimpulan • Mekanisme Analisis Terstruktur: – – – –
bangun ERD bangun DFD + Data Dictionary + P-SPEC (bangun CFD) bangun STD + C-SPEC
Bagian II - RPLD
24