Anda di halaman 1dari 18

2 PERANCANGAN TAHAP ANALISIS

DAN DATABASE SISTEM

1.1 Tujuan Praktikum


1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap
analisis.
2. Praktikan mampu membuat interface sistem.
3. Praktikan mampu menganalisis kebutuhan data.
4. Praktikan mampu membuat database system secara Conceptual Data Model (CDM) dan
Physical Data Model (PDM).

1.2 Perlengkapan
1. Modul Praktikum APSI
2. Software Power Designer

1.3 Landasan Teori


1.3.1 Perancangan Obyek dan Kelas Tahap Analisis
1.3.1.1 Inheritance
Inheritance merupakan suatu cara untuk menurunkan suatu class yang lebih umum
menjadi suatu class yang lebih spesifik. Class utama disebut superclass, sedangkan class
turunan disebut subclass.Suatu class boleh memiliki beberapa subclass, tetapi suatu class
tidak boleh memiliki lebih dari satu superclass.
Contoh :

Catatan : panah dengan kepala segitiga menuju kearah superclass.


1.3.1.2 Generalisasi dan Spesialisasi
Generalisasi adalah konsep ketika beberapa class yang telah ada dalam class diagram
memiliki fungsionalitas, struktur dan tujuan umum.

Spesialisasi adalah konsep yang digunakan ketika kelas baru yang akan ditambahkan
memiliki fungsionalitas,struktur dan tujuan yang sama dengan kelas yang sudah ada,
tetapi kelas baru ini membutuhkan kode baru atau atribut baru.

1.3.1.3 Polymorphism
Polymorphism merupakan kemampuan suatu class untuk mempunyai beberapa bentuk
class yang berbeda.Polymorphism bisa disamakan dengan overload method, dimana
sebuah class terdapat beberapa method dengan nama yang sama.
1.3.1.4 Abstract class
Abstract class merupakan class yang memiliki fungsi yang tidak komplit dan tidak bisa di
instantiasi. Class yang meng-extends class abstract mewarisi semua methodnya (termasuk
method abstrak). Ketika subclass menulis kembali method superclass-nya, maka subclass
ini me-override method superclass-nya.
Notasi UML untuk abstract class :
Catatan :
 Class abstract ditulis italic atau ditulis setelah nama class dengan kurung kurawal
{abstract}
 Semua method abstract yang ada pada class tersebut juga ditulis dengan cara yang
sama
1.3.1.5 Role Name
Role name merupakan peran diantara class. Pada UML, masing-masing kelas pada ujung
suatu asosiasi perlu mempunyai role name.
Contoh :

1.3.1.6 Association (asosiasi)


Asosiasi menggambarkan relasi antar dua kelas di class diagram.Asosiasi aktualnya
menggambarkan tipe relasi antara dua kelas.Asosiasi terbagi menjadi dua depedency
yaitu aggregation dan composition.
Perhatikan contoh berikut ini :
 Association : Juru masak menggunakan pisau (uses)
 Aggregation : Mobil memiliki radio (has)
 Composition : Mobil selalu berisi mesin (always contain)
A. Aggregation
Aggregation mempunyai hubungan tidak kuat.Contohnya adalah mobil dan radio, mobil
masih bisa hidup tanpa ada radio.Disimbolkan dengan tanda diamond putih (kosong).
B. Composition
Composition mempunyai hubungan yang kuat.Contohnya adalah mobil dengan mesin,
mobil tidak dapat hidup tanpa mesin.Disimbolkan dengan tanda diamond hitam.

1.3.1.7 Propagation
Propagation adalah konsep pemanggilan method suatu kelas untuk memanggil method
milik kelas lain. Mengacu pada permohonan suatu method, menyebabkan satu atau lebih
method pada objek yang terasosiasi untuk dilibatkan dengan cara tertentu.

1.3.1.8 Delegation
Delegation adalah konsep menyerahkan operasi ke kelas lain yang terasosiasi dengannya.
Terjadi bila keseluruhan operasi yang user atau sistem mohon pada class benar-benar
berlangsung di dalam obyek asosiasi.

1.3.2 Interface Sistem


Beberapa bahasa pemrograman berorientasi objek, misalnya C++, membolehkan suatu
kelas memiliki dua atau lebih superclass. Hal ini disebut pewarisan ganda (multiple
inheritance).Pewarisan ganda seperti ini tidak diperbolehkan pada Java. Desainer Java
ingin menjaga agar bahasa Java tetap sederhana, dan mereka merasa pewarisan ganda ini
sangat kompleks dengan keuntungan yang tidak begitu besar. Akan tetapi, Java memiliki
fitur lain yang bisa digunakan seperti halnya pewarisan berganda, yaitu antar muka
(interface).
Interface adalah kumpulan method yang hanya memuat deklarasi dan struktur method,
tanpa detail implementasinya. Interface merupakan kelas yang paling abstract, hanya
berisi daftar deklarasi method, artinya semua method belum mempunyai implementasi
Sedangkan detail dari method berada pada class yang mengimplementasikan interface
tersebut. Interface digunakan bila Anda ingin mengaplikasikan suatu method yang
spesifik, yang tidak diperoleh dari proses inheritance. Tipe data yang boleh pada interface
hanya tipe data konstan. Sebagai analoginya akan digambarkan sebagai berikut. Dalam
kehidupan nyata, terdapat manusia yang bekerja sebagai guru, petani, sapam, pedagang
dan lain-lain. Misalkan saja Terdapat kelas Pak Dony, maka kelas ini akan diturunkan
dari kelas manusia, namun harus mengimplementasikan sebuah kelas lagi (yang haruslah
merupakan sebuah interface sebab java hanya mendukung sebuah superclass untuk setiap
kelas). Jadi kelas PakDony merupakan implemen dari kelas Guru (jika dia merupakan
seorang guru).
Mengapa membutuhkan interface?
 Memecahkan bagian yang rumit dan spesifik. Dengan menggunakan class atau
interface oleh vendor maka dalam pembuatan perangkat lunak menjadi lebih
cepat.
 Keterbatasan inheritance pada Java. Interface menjawab kebutuhan untuk
melakukan multiple inheritance

Syarat sebuah interface :


o Tidak memiliki obyek (tidak ada instansiasi)
o Tidak memiliki atribute (hanya memiliki konstanta)
o Tidak memiliki modifier static
o Tidak extends dari kelas lain namun boleh extends dari interface lain bahkan
boleh extends ke lebih dari satu interface lain.
o Tidak implemen dari kelas lain.
Perbedaan interface dengan abstract class sebagai berikut:

Contoh 1:
Berikut ini kita akan menggambarkan notasi UML untuk interface Engine dan kelas
NewEngine yang mengimplementasikannya
Pembuatan kelas interface menggunakan power design:
1. Buka Power Designer 12
2. Klik File  New
3. Pilih Object Oriented Model
4. Pilih Class Diagram
5. Buat kelas untuk interface dan kelas yang mengimplementasikannya

6. Klik 2x pada kelas engine sebagai interfacenya, lalu pada baris stereotypenya ketikan
“Inteface”, klik OK
7. Buat method untuk masing2 kelas dengan mengeklik 2x kelas yang akan diberi
method, kemudian pilih kolom Operations, masukkan method yang akan di
deklarasikan, klik OK

8. Untuk membuat asosiasinya pilih simbol “dependency” pada palette, kemudian


hubungkan pada masing-masing kelas
9. Edit symbol dependency tadi dengan memilih “line style” pada toolbar

Kemudian pada kolom arrow,edit garis pada bagian END, klik OK

10. Diagram telah selesai dibuat


Contoh 2:
Lakukan petunjuk yang sama dengan contoh 1 untuk menggambarkan notasi UML untuk
interface AlatMusik dan kelas AlatMusikTiup, kelas AlatMusikPetik yang
mengimplementasikannya

1.3.3 Analisis dan Pembuatan Database sistem


Database sistem yang dibuat menggunakan konsep ERD.ERD (Entity Relationship
Diagram) digunakan untuk memodelkan struktur data dan hubungan antar data. Dengan
ERD, model dapat diuji dengan mengabaikan proses yang dilakukan.
Di dalam Power Designer, terdapat dua konsep dalam merancang ERD yaitu Conceptual
Data Model (CDM) dan Physical Data Model (PDM).
A. Conceptual Data Model (CDM)
Model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi
obyek-obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship)
antara entitas-entitas itu.Biasanya direpresentasikan dalam bentuk Entity
Relationship Diagram (ERD).
Manfaat Penggunaan CDM dalam perancangan database :
 Memberikan gambaran yang lengkap dari struktur basis data yaitu arti,
hubungan, dan batasan-batasan
 Alat komunikasi antar pemakai basis data, designer, dan analis.
B. Physical Data Model (PDM)
Merupakan model yang menggunakan sejumlah tabel untuk menggambarkan data
serta hubungan antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di
mana setiap kolom memiliki nama yang unik.
Tipe data PDM bersifat lebih khusus dan spesifik. Perancangan PDM merupakan
representasi fisik atau sebenarnya dari database.
1.3.3.1 Analisis Kebutuhan Data
Studi Kasus peminjaman buku di perpustakaan :
Setiap mahasiswa IT Telkom mempunyai kartu pinjam perpustakaan, dimana setiap
mahasiswa dapat meminjam buku dengan alur, pertama mahasiswalogin dengan KTM
kedalam sistem, kemudian mahasiswa dapat memilih buku yang diinginkan dengan
melihat catalog buku di sistem, setelah dapat, mahasiswa membawa buku tersebut ke
petugas perpustakaan dengan menyerahkan kartu pinjam dan KTM. Identitas buku
direkap oleh petugas setelah itu buku dapat dipinjam mahasiswa.Mahasiswa harus
mengembalikan buku tersebut sesuai tanggal yang ditentukan, jika tidak maka
mahasiswa harus membayar denda.
Usecase pada modul sebelumnya :

Dari usecase tersebut dapat dilihat beberapa poin penting yang perlu direcord data-nya.
Antara lain:
1. Data Aktor : untuk merekam data detail peminjam dan petugas.
a. Mahasiswa
b. Petugas
2. Data Buku : Untuk menampung data detail dari buku. Terdapat pula data penulis dan data
penerbit buku.
3. Data Peminjaman Buku : menampung data siapa peminjam, siapa petugas yang melayani
dan buku apa yang dipinjam beserta tanggal buku harus kemabali.
4. Data Pengembalian Buku : merekam data peminjam yang telah mengembalikan buku dan
denda pengembalian.

1.3.3.2 Pembuatan Conceptual Data Model


11. Buka Power Designer 12
12. Klik File  New
13. Pilih Conceptual Data Model
14. Klik OK

15. Pilih Entity pada Palette


16. Buat 3 entity pada workspace, beri nama masing-masingentity yaitu Mahasiswa,
Buku dan Petugas.
17. Klik 2X pada salah satu entity (Contoh : Mahasiswa)
18. Pada Tab General, ketikkan Name : Mahasiswa.

19. Pada Tab Attributes, atur atributnya.


20. Isikan atribut pada entity lainnya.
21. Setelah seluruh entity selesai dibuat, maka klik Palette Relationshipuntuk membuat
relationship (hubungan) antar entitas.

22. Hubungkan entity Mahasiswa dengan Buku. Atur kardinalitas menjadi many to many.
Lalu klik OK.
23. Pada tab General, ubah Name menjadi peminjaman_pengembalian.
24. Klik kanan pada relationshippeminjaman_pengembalian, pilih Change to Entity.
Setelah itu akan muncul entitas baru yang masih kosong. Entitas tersebut merupakan
entitas baru gabungan dari kedua entitas yang memiliki kardinalitas many to many.

25. Selanjutnya, tambahkan atribut pada entitas peminjaman_pengembalian.

26. Untuk membuat relasi antara entity petugas dengan entity


peminjaman_pengembalian, Anda hanya menarik relationship antara kedua entity
tersebut.
27. Berikut ini adalah hasil akhir pembuatan CDM Perpustakaan.

28. Untuk melakukan pengecekan terhadap kebenaran CDM yang telah dibuat, klik Tools
 Check Model  OK.
Apabila tidak ada yang error maka muncul kotak dialog seperti dibawah ini :
1.3.3.3 Pembuatan Physical Data Model
Dalam membuat Physical Data Model (PDM), Anda cukup menggenerate hasil dari ERD
CDM. Langkah-langkahnya adalah sebagai berikut :
1. Pilih tools  generate physical data model
2. Pada tab general, pilih generate new physical data model
Pada pilihan DBMS, pilih Oracle 10g (atau sesuai dengan database yang akan
digunakan).
Isikan Name dengan PDMperpus.
3. Pada tab Detail, tulis Table prefix dengan tb_ dan pada references ganti Delete
ruledenganCascade. Lalu klik OK.

4. Setelah itu bentuk ERD akan berubah menjadi seperti dibawah ini. Inilah yang
disebut bentuk PDM.

Lihat perubahan pada entitas peminjaman_pengembalian, terlihat bahwa terjadi


penambahan atribut pada entitas tersebut yaitu Kode_Buku, NIM, dan
Kode_Petugassebagai foreign key maupun primary key di entitas tersebut.
1.4 Praktikum
TOSERBA CAHAYA KARTIKAH SEJATI adalah salah satu TOSERBA terbesar yang ada
di Republik Indonesia tercinta.TOSERBA ini sangat menjunjung tinggi rasa nasionalisme,
sehingga hampir 90% karyawan mereka adalah orang-orang pribumi. TOSERBA CAHAYA
KARTIKAH SEJATI sudah melayani pelaggan-pelanggannya sejak tahun 1991 dan sudah
mendirikan cabang di 3 kota besar di Pulau Jawa, yakni : Jakarta (terletak di Jakarta Timur),
Surabaya, dan Bandung. Pendapatan TOSERBA ini terus meningkat dari tahun ke tahun,
hingga pada akhir tahun 2011, pendapatan TOSERBA mengalami penurunan secara
signifikan.
Selidik punya selidik, ternyata salah satu faktor penyebab turunnya pendapatan TOSERBA
ini adalah menurunnya tingkat kepuasan pelanggan terhadap pelayanan (khususnya sistem
pembayaran) yang diberikan oleh karyawan TOSERBA ini.Sistem yang ada dirasa kurang
tanggap dan cepat dalam mengidentifikasi keinginan pelanggan yang selalu ingin dilayani
secara cepat dan tepat.Selain itu, struk pembayaran yang ada kadang-kadang tidak sesuai
dengan jumlah pembelian yang dilakukan oleh pelanggan. Dampaknya, pelanggan mulai
meninggalkan TOSERBA ini dan memilih TOSERBA lain dengan sistem pelayanan yang
lebih nyaman bagi mereka.
Temuan tersebut membuat Noor Kartikah Sejati, CEO sekaligus pendiri TOSERBA ini
berpikir untuk mendesain ulang proses bisnis yang ada, khususnya pada sistem pembayaran
atau POS (Point of Sales). Pada akhirnya, setelah berpetualang mencari ide dan ilham dari
Yang Maha Kuasa, akhirrnya Jeng Noor (Sapaan akrab CEO) beserta tim, berhasil membuat
proses bisnis baru pada sistem POS yang ada.
TOSERBA CAHAYA KARTIKAH SEJATI secara bertahap membuat perubahan pada
bisnisnya. Perbaikan proses bisnis yang ia inginkan dengan penambahan sistem pembayaran
atau POS (Point of Sales) telah ia dilakukan dengan analisis sistem berupa usecase. Namun
langkah ini bukan satu-satu hal penting yang harus dilakukan jeng Noor dalam pembuatan
sistem POSnya. Langkah lebih lanjut yang akan dia lakukan dalam pengembangan sistem
POS adalah pembuatan interface sistem dan database sistemnya.
Proses bisnis dimulai saat pelanggan menghampiri kasir untuk melakukan transaksi
pembayaran. Kasir kemudian menggunakan sistem POS untuk mencatat detail barang-barang
yang dibeli oleh pelanggan. Selanjutnya, sistem akan menampilkan detail list barang yang
dibeli beserta total harga yang harus dibayar pelanggan. Pada tahap berikutnya, pelanggan
memasukkan informasi pembayaran (bisa cash, debit, atau credit card) dimana informasi
pembayaran ini akan divalidasi dan disimpan oleh sistem. Proses bisnis berakhir saat sistem
meng-update inventori barang terkait dan pelanggan menerima bukti pembayaran beserta
barang-barang yang mereka beli.
Dari gambaran proses bisnis diatas, Jeng Noor diharuskan untuk membuat rancangan
interface sistem dan database guna mendukung sistemnya.

Anda mungkin juga menyukai