2 perancangan tahap analisis dan database sistem 2 apsi.pdfdan database sistem 1.1 tujuan praktikum...

18
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. 2

Upload: others

Post on 12-Nov-2020

43 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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.

2

Page 2: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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 :

Page 3: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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).

Page 4: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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).

Page 5: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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

Page 6: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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

Page 7: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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

Page 8: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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

Page 9: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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.

Page 10: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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

Page 11: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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

Page 12: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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.

Page 13: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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.

Page 14: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

23. Pada tab General, ubah Name menjadi peminjaman_pengembalian.

Page 15: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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 :

Page 16: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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.

Page 17: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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.

Page 18: 2 PERANCANGAN TAHAP ANALISIS DAN DATABASE SISTEM 2 APSI.pdfDAN DATABASE SISTEM 1.1 Tujuan Praktikum 1. Praktikan mampu memahami macam-macam perancangan obyek dan kelas di tahap analisis

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.