Implementasi Pengujian
Sistem Informasi
PENDEKATAN TERSTRUKTUR 2.0
Tipe Model Kebutuhan
● Scenario-based models : berdasarkan sudut pandang aktor
● Data models : menjelaskan domain informasi dari masalah
● Class-oriented models : merepresentasikan kelas-kelas yang relevan dengan
kebutuhan perangkat lunak
● Flow-oriented models : merepresentasikan proses dan data dari sistem
● Behavioral models : merepresentasikan perilaku sistem berdasarkan event
Elemen Pemodelan Terstruktur
2
DFD/CFD
● User Story yang disampaikan oleh pengguna ditransformasi menjadi Spesifikasi
Kebutuhan Pengguna u ntuk dimodelkan ke dalam DFD/CFD
● Fokus analisis User Story terdapat pada :
○ Proses yang dilakukan
○ Data input
○ Data output / penyimpanan data
○ Action atau event yang menyebabkan berjalannya suatu proses atau
kontrol dari proses
● Komponen yang terdapat pada DFD/CFD merepresentasikan proses yang akan
dilakukan oleh sistem
● Identifikasi adalah proses alternatif yang dapat dilakukan sistem
● Proses alternatif dapat disebabkan oleh :
○ Pilihan pengguna
○ Aturan bisnis
○ Kesalahan (error) yang terjadi dalam proses internal sistem
3
● Logika dari proses alternatif ini dimodelkan ke dalam CFD dalam DFD
● Nilai-nilai logika yang dievaluasi dalam menentukan eksekusi disebut sebagai
Control Flow
PSPEC/CSPEC
● Proses transformasi data pada sistem kemudian dispesifikasikan ke dalam
PSPEC
● PSPEC menguraikan bagaimana algoritma dan logika untuk mengubah data flow
in menjadi data flow out dari untuk setiap proses yang terdapat dalam DFD
● Alur kontrol dari masing-masing proses pada CFD dapat diterjemahkan kedalam
CSPEC sebagai gambaran nilai-nilai logika yang dievaluasi terkait proses mana
yang akan dieksekusi
Transform dan Transaction Flow
● Model proses yang tergambar dalam DFD/CFD kemudian dianalisis rangkaian
proses transformasi dan transaksinya kemudian menghasilkan pemetaan atau
mapping pada transform dan transaction flow
● Model transform flow dan transaction flow ini menggambarkan struktur fisik
dimana proses yang telah didefinisikan dalam PSPEC/CSPEC dikelompokkan
dan diletakkan
Data Modelling
● Pemodelan data seringkali menjadi langkah yang pertama kali dilakukan oleh
developer untuk membuat model data secara konseptual dan menggambarkan
relasi antar data
● Proses pemodelan data dikembangkan secara progresif, mulai dari model
konseptual, logical, hingga ke dalam skema fisik
● Diagram Entity Relationship (ER) yang digunakan untuk memodelkan data di level
konseptual dan logical terfokus pada konsep bisnis high-level
● Detail dari objek data yang teridentifikasi di detailkan dalam Data Dictionary
termasuk di dalamnya definisi, arti, aturan bisnis yang berlaku dan nilai-nilai yang
diperbolehkan
Data Object
● Merepresentasikan beberapa informasi
● Terdiri dari sejumlah atribut yang berbeda atau properties
● Hanya mengenkapsulasi data (tidak ada operasi pada data)
4
● Dapat berupa entitas eksternal, benda, kejadian atau peristiwa, peran, unit
organisasi, struktur dan lain lain. Misalnya dimensi (tinggi, berat, kedalaman),
mobil (buat, model, ID, tipe tubuh, warna, pemilik)
● Dapat direpresentasikan dalam representasi tabel
Transforming Structure Design Model to Code
Where to look?
1. Architectural Design : Transform Transaction Mapping berfungsi mengetahui
proses apa saja yang ada di dalam sistem dan dimana letak proses yang akan
diimplementasikan
2. Proses Model : DFD/CFD, PSPEC dan CSPEC berfungsi mengetahui bagaimana
logika suatu proses yang dieksekusi dalam proses mentransformasikan data
3. Data Model : ER Diagram, Data Dictionary berfungsi mengetahui bagaimana
suatu data atau informasi direpresentasikan, nilai data yang diperbolehkan serta
aturan bisnis yang berlaku terhadapnya
Transform
5
Transaction
Dispatcher
6
7
Translasi Data Dictionary ke Database
● Objek data dimodelkan ke dalam entitas dalam diagram ER, diidentifikasi atribut
dan relasinya dengan entitas lainnya
● Translasi entitas dan relasinya dalam diagram ER diterjemahkan ke dalam kode
program (database) sebagai DDL (CREATE TABLE dan FOREIGN KEY)
Translasi Data Dictionary ke Program
● Translasi entitas dalam kode program diterjemahkan sebagai struktur data
dalam program atau sebagai s truct
● Struct adalah sebuah struktur data yang merepresentasikan suatu objek
berdasarkan atribut-atribut yang melekat pada objek tersebut
● Struct serupa dengan class dalam pemodelan OO, namun struct tidak memiliki
behavior/perilaku/method di dalamnya
● Struct hanya mendefinisikan atribut-atribut yang dimiliki oleh suatu objek
Translasi State
● Ada kalanya suatu sistem atau program berjalan dipengaruhi oleh kondisi/state
dari sistem
● State dari sistem/program dapat ditranslasikan sebagai suatu variabel global
yang nilai-nilainya didefinisikan dalam bentuk nilai-nilai konstan atau enumerasi
● Nilai dari variabel global tersebut akan menjadi control (enabler) berjalannya
suatu proses atau logika pembangkitan eksekusi proses oleh dispatcher
8
Implementasi Pengujian
Sistem Informasi
PENDEKATAN TERSTRUKTUR 2.1
Konsep Data pada DFD
● Ketika sebuah data yang disimpan dalam database adalah persistent atau
permanen akan dilambangkan menjadi label “ D”
● Ketika sebuah data yang disimpan dalam database adalah transient atau
sementara akan dilambangkan menjadi label “T”
● Terkadang, data disimpan tanpa menggunakan komputer. Maka data akan
disebut m
anual data dan diwakili oleh huruf ‘M’
DFD Level 0
9
DFD Level 1
DFD Level 2
10
Implementasi Data
● Data Dictionary
● Data Definition
● ER Diagram: Logical
● ER Diagram: Physical
11
Data Dictionary
● Data object pada DFD digambarkan sebagai datastore
● Komponen-komponen data dari data flow yang masuk atau keluar dari data store
akan menjadi atribut dari entitas yang digambarkan pada conceptual data model
● Data dictionary digunakan untuk menggambarkan detail elemen data pada suatu
entitas (Contoh: Atribut nama akan dijelaskan pada data dictionary memiliki
panjang maksimal 255 karakter dengan tipe data string)
● Konseptual Data Model + Data Dictionary = Physical Data Model
● Data Structure Dictionary : Data Structure Dictionary Entry dilengkapi dengan
setiap struktur yang ada pada data store dan data flow. Bertujuan untuk
menghubungkan summary description dari Data Flow dan Data Store Dictionary
Entry ke deskripsi detail dari Data Element Dictionary Entry
● Data Element Dictionary : Data Structure Dictionary Entry menyediakan dasar
untuk skema database. Bertujuan untuk menstandarkan deskripsi dari suatu
elemen dan elemen direferensikan dengan cara yang sama setiap kali digunakan
12
ER-Diagram
● ER Diagram Logical : m
asih kosongan dan hanya berupa relasi
● ER Diagram Physical : sudah ada isinya
DDL (Data Definition Language)
● Buku, Peminjaman
13
● Dipinjam
Implementasi Process Specification (PSPEC)
● PSPEC - Mencari Buku
● Data Input : Keyword (text)
● Data Output : Daftar buku yang judul bukunya mengandung keyword
● Algoritma :
keyword = INPUT(keyword)
connect to DB
result = SELECT id, judul FROM buku WHERE judul LIKE '%keyword%'
close DB connection
tampilkan result dalam format tabel
● Kode Program :
14
● CSPEC - Peminjaman
15
16
● Modifikasi dispatcher peminjaman : State Chart Diagram
17
Implementasi Pengujian
Sistem Informasi
PENDEKATAN OO 3.0
From Requirement to Design
● User Story → Use Case Diagram dan Use Case Specification/Scenario
● Use Case Scenario : Main Flow dan Alternatif Flow → Activity Diagram
○ Main flow → Main Activity
○ Alternatif Flow → Alternatif Activity
● Activity Diagram → Sequence Diagram
● Sequence Diagram → Domain Class Diagram
○ Boundary → Form/UI
○ Control → Controller
○ Entity → Model
● Domain Class Diagram → PDM & ERD
● Domain Class Diagram → Class Diagram/Design Class Diagram
Package dan Package Diagram
● Package digunakan untuk mengelompokkan elemen, dan menyediakan sebuah
namespace untuk elemen yang dikelompokkan
● Package merupakan namespace untuk anggotanya, dan memungkinkan untuk
mengandung package yang lain
● Anggota package yang dimiliki harus menjadi elemen package
● Package juga dapat digabungkan dengan package lain, menyediakan organisasi
hirarki package
● Berbagai jenis elemen diizinkan untuk memiliki nama yang sama pada dua
package yang berbeda
● UML Package Diagram sering digunakan untuk menunjukkan isi dari komponen,
yang sering dikemas dalam pengertian Java
● Setiap package merepresentasi namespace
● Package sebagai komponen, dapat bersarang di dalam paket lainnya
● Anggota package dapat ditampilkan dalam batas package
● Kapan harus menggunakan package diagram? Ketika terdapat projek kompleks
yang memiliki ratusan class
18
19
Class Package
Design to Code
OO Development is Iterative
● Cetakan OOA/D masuk implementasi model dalam sebuah traceable manner
● Beberapa tools menghasilkan kode parsial di UML
Mapping Design to Code
● Menulis source code untuk definisi class dan interface dan definisi method
● Bekerja menggunakan cetakan OOA/D
○ Membuat definisi class untuk domain class diagram (DCDs)
○ Membuat method dari diagram interaksi
20
From Sequence Diagram to Method
21
Exception Handling
● Pada UML, exception dapat disisipkan sebagai properti strings of messages
Database From Design to Code
● Konversi ERD / Data Model Class Diagram ke Structured Query Language (SQL),
Data Definition Language (DDL)
● Setiap baris dianggap sebagai objek
● Setiap kolom pada tabel setara dengan atribut persistent dari sebuah class
● Menentukan apakah operasi dapat diimplementasikan sebagai prosedur
ASSOCIATION
22
AGGREGATION
INHERITANCE