(Orang) (Orang)
Behavior
Algoritma &
Pemrograman E-commerce
4 3
Karakteristik Pemrograman
Berorientasi Objek
• Encapsulation
– Mekanisme menyembunyikan suatu proses dalam sistem
untuk menghindari interferensi dan menyederhanakan
penggunaan sistem itu sendiri. Contoh: Tombol on/off
pengaturan suhu pada AC.
– Enkapsulasi berarti membungkus class dan menjaga apa
apa saja yang ada di dalam class tersebut, baik method
ataupun atribut, agar tidak dapat diakses oleh class
lainnya. Oleh karena itu, terdapat level akses class yang
terdiri dari Public, Protected, dan Private.
– Enkapsulasi data dapat dilakukan dengan cara:
• mendeklarasikan instance variable sebagai private
• mendeklarasikan method yang sifatnya public untuk
mengakses variable tersebut
Encapsulation dan Access Modifier
Dalam Class Dalam Package Dalam Dalam Package
Modifier
yang Sama yang Sama SubClass Lain
private
protected
public
Contoh Encapsulation
• Class Mahasiswa
package latihan;
public class Mahasiswa {
private String nim;
private String nama;
private String kelas;
private int nilaiAbsen;
private int nilaiTugas;
private int nilaiUTS;
private int nilaiUAS;
public Mahasiswa(){
}
public Mahasiswa(int kondisi){
System.out.println("INPUT DATA MAHASISWA CUTI");
}
}
Karakteristik Pemrograman
Berorientasi Objek
• Inheritance (Pewarisan)
– Suatu class dapat mewariskan atribut dan method
kepada class lain (subclass) serta membentuk
class hierarchy.
– Dalam pemrograman java, penerapan inheritance
ditandai dengan keyword extends.
Contoh Inheritance (Pewarisan)
• Class SepedaGunung mewarisi class Sepeda
Sepeda
~ gir: int = 0
~ kecepatan: int = 0
SepedaGunungBeraksi
~ tambahKecepatan(int) : void
~ ubahGir(int) : void
+ main(String[]) : void
SepedaGunung
+ setSadel(int) : void
Contoh Inheritance (Pewarisan)
• Class Sepeda
public class Sepeda{
int kecepatan, gir ;
// method
void ubahGir(int pertambahanGir) {
gir= gir+ pertambahanGir;
System.out.println("Gir:" + gir);
}
// method
void ubahGir(int pertambahanGir) {
gir= gir+ pertambahanGir;
System.out.println("Gir:" + gir);
}
Planning
Implementation Analysis
Design
Software Development Life Cycle (SDLC)
Controller
Model
View
Contoh Penerapan MVC
• Contoh Model dari tabel Transaksi
Contoh Penerapan MVC
• View dari tabel Transaksi
Contoh Penerapan MVC
• Controller dari tabel Transaksi
Contoh Sequence Diagram
sd Form Transaksi
User
FormTransaksi BarangController Barang DetailController DetailTransaksi TransaksiController Transaksi
loop
Input_Kode_Barang() findBarang(String kode)
findBarang(String kode)
Input_Qty() Hitung_Subtotal_dan_Total()
saveDetail(Detailtransaksi
simpanDetail() detail)
<<import>> <<import>>
<<import>>
Package Diagram
• Beberapa referensi tidak menyantumkan
stereotype/keyword Import di dalam diagram.
Object Diagram
• Object diagram pada dasarnya merupakan
instansiasi dari semua atau sebagian dari class
diagram.
• Object diagram adalah potret dari objek
dalam sistem pada suatu titik waktu.
Karena object diagram lebih menunjukkan
instance daripada class, maka object diagram
sering disebut instance diagram.
Object Diagram
• Instansiasi (instantiation) berarti membuat
instance (object) dari class dengan satu set
nilai atribut yang sesuai.
• Object diagram menunjukkan sekumpulan
objek, hubungannya (relationship), dan nilai
atribut.
• Object diagram bisa sangat berguna ketika
mencoba untuk menemukan detail dari suatu
class.
Object Diagram
• Object diagram umumnya terdiri dari:
– Objek
– Penghubung
• Object diagram digunakan untuk memodelkan
tampilan desain statis atau tampilan proses
statis dari sistem, sama seperti class diagram,
tetapi dari perspektif contoh nyata atau
prototipe.
Object Diagram
• Penulisan objek pada diagramnya ditulis
dengan garis bawah.
• Jika menyebutan nama classnya, diikuti
dengan tanda : (titik dua).
• Bentuk umum:
Instance name : class name
• Jika hanya menyebutkan nama classnya saja,
maka tetap harus mengikutsertakan tanda :
(titik dua).
Class Diagram
User
-KodeUser Transaksi
-NamaUser -NoTrans
-Password 1 1..* -Tanggal
-HakAkses -Total
+save() +save()
+update() +findTransaksi()
+delete() +nomor()
+findUser() +cetak()
+cetak()
1
1
1..*
1..*
Barang
-KodeBarang DetailTransaksi
-NamaBarang
-Id
-Harga 1 1..* -NoTrans
-Stok
-KodeBarang
+save() -Harga
+update() -Qty
+delete() -Subtotal
+findBarang()
+saveDetail()
+nomorOtomatis()
+cetak()
Membuat Object Diagram
• Tabel Barang
• Tabel User
Membuat Object Diagram
• Tabel Transaksi
• Tabel DetailTransaksi
Object Diagram
OAM:U ser TR015:Transaksi
Keterangan:
Appt System = nama sistem yang digunakan
Deployment Diagram
• Versi 3
Deployment Diagram
• Versi 4:
Deployment
diagram yang
menggambar
kan Top-Level
Network
Model
Deployment Diagram
• Versi 5:
Deployment diagram versi sederhana yang
menggambarkan Low-Level Network Model
Deployment Diagram
• Versi 6:
Deployment
diagram versi
detail yang
menggambarkan
Low-Level
Network Model
State Machine Diagram
• State machine diagram adalah teknik terkenal
untuk mendeskripsikan perilaku dari suatu
sistem.
• Dalam pendekatan berorientasi objek, state
machine diagram digambar untuk suatu class
untuk menunjukkan perilaku seumur hidup
dari suatu objek.
• State machine berisi state (keadaan) yang
terhubung oleh transisi (peralihan).
State Machine Diagram
• Setiap state (keadaan) memodelkan periode
waktu selama kehidupan suatu objek di mana
ia memenuhi kondisi tertentu.
State
• State (keadaan) dari suatu object didefinisikan
oleh nilai dari atribut dan hubungannya
(relationship) dengan object pada titik waktu
tertentu.
• Contoh: Pasien bisa memiliki state (keadaan)
diantaranya, pasien baru, pasien saat ini (yang
sedang diperiksa), dan pasien lama.
Event
• Sebuah event (kejadian) adalah nilai yang
mendeskripsikan suatu objek yang mengubah
state (keadaan) suatu objek.
Transition
• Sebuah transisi /peralihan adalah suatu relasi
yang mewakili pergerakan dari suatu objek
dari satu state ke state lainya.
• Beberapa transition memiliki “guard
condition”. Guard condition adalah ekspresi
Boolean yang berisi nilai atribut, yang
memperbolehkan suatu transisi terjadi hanya
jika kondisinya benar (true).
Action dan Activity
• Action adalah suatu proses yang tidak dapat
diuraikan dan tidak bisa diganggu. Action
diasosiasikan dengan sebuah transition.
• Activity adalah suatu proses yang dapat
diuraikan dan bisa diganggu.
• Activity mengambil waktu lama untuk
diselesaikan daripada action, dan bisa diawali
dan dihentikan oleh sebuah action.
Elemen-Elemen State Machine Diagram
• State
– Berbentuk persegi panjang
dengan sudut membulat.
– Memiliki nama yang mewakili
state (keadaan) dari suatu objek.
Elemen-Elemen State Machine Diagram
• Initial state
– Mewakili titik di mana suatu objek
mulai ada.
Elemen-Elemen State Machine Diagram
• Final state
– Mewakili penyelesaian aktivitas
(activity).
• Event
– Kejadian yang memicu perubahan
dalan suatu state.
Elemen-Elemen State Machine Diagram
• Frame
– Menujukkan konteks state
machine
State Machine Diagram
• Contoh sederhana dari State Machine Diagram.
Membuat Mengemas makanan Makan
Membuat makanan
Meletakkan makanan di
dalam kotak makan
Keluarkan makanan
dari kotak makan
Makan
State Machine Diagram
• State Machine Diagram dari Pasien.
[Diagnosis =
Masuk RS Daftar Sehat]
Masuk Diterima Keluar
[Diagnosis = Sehat]
Dirawat
State Machine Diagram
• State Machine Diagram dari Order barang.