Mendefinisikan Kelas

6.1 Mendefinisikan Kelas

6.1.1 Pengantar

Kelas (Class) adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi

Diagram Kelas Diagram Kelas

Dalam pemodelan statis dari sebuah sistem, diagram kelas biasanya digunakan untuk memodelkan salah satu dari tiga hal di bawah ini :

a. Perbendaharaan dari sistem

b. Kolaborasi

c. Skema basisdata logical

Kelas memiliki tiga area pokok :

1. Nama (dan stereotype)

2. Atribut

3. Metode atau operasi Atribut dan metoda dapat memiliki salah satu sifat berikut :

1. Private, tidak dapat dipanggil dari luar class yang bersangkutan

2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya

3. Public, dapat dipanggil oleh siapa saja Kelas dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metode. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metoda pada saat run-time.

Nama Atribut

Operasi/ metode

Gambar 6-1 Contoh Kelas

6.1.2 Cara mendefinisikan kelas

Untuk mendefinisikan kelas sari suatu sistem dapat dimulai dari model use case yang sudah dibuat dengan cara menetapkan objek apa saja yang dibutuhkan di sistem. Objek dapat berupa orang, benda, kejadian, tempat, dll. Setiap objek mempunyai atribut-atribut dan metode/operasi-nya.

Diagram Kelas

Di bawah ini beberapa alternatif cara mendefinisikan kandidat kelas :

1. Mengidentifikasi kelas-kelas dan objek-objek yang ada dalam lingkup sistem:

a. Dari uraian pernyataan masalah

b. Secara menyeluruh pada lingkup kebutuhan sistem atau pengetahuan atas lingkup aplikasi.

c. Dari kebutuhan fungsional sistem dan atau kebutuhan pemakai

2. Kelas dan objek dapat diidentifikasi dari salah satu atau lebih hal berikut :

a. Entitas eksternal yang memproduksi dan memakai informasi yang akan digunakan oleh sistem berbasis komputer

b. sesuatu yang merupakan bagian dari wilayah informasi dari permasalahan

c. kejadian, misalnya proseduroperasional, yang muncul dalam lingkup operasional sistem

d. peran yang dimainkan oleh orang-orang yang berinteraksi dengan sistem

e. unit organisasi yang relevan dengan aplikasi dan perlu dikelola datanya

f. tempat yang menentukan ruang lingkup masalah dan seluruh fungsi sistem

g. struktur yang mendefinisikan kelas dari objek atau yang menghubungkan kelas-kelas objek

3. Abaikan kelas dan objek yang tidak tepat, karena : Redundan, tidak relevan, samar, lebih tepat berupa atribut, lebih tepat berupa operasi, lebih tepat berupa peran, atau lebih merupakan kontruksi implementasi

4. Setelah kelas terdefinisi, identifikasikan atribut dan metode setiap kelas. Atribut diidentifikasi dari elemen-elemen data yg dapat menggambarkan ciri-ciri sebuah objek secara utuh. Metode atau operasi atau layanan diidentifikasi dari perilaku, khususnya yang dapat menunjukkan peran dan tanggung jawab suatu objek.

5. Mendefinisikan hubungan (asosiasi atau koneksi) antar kelas, yaitu ketergantungan antar satu kelas atau lebih dengan kelas lainnya.

6.1.3 Multiplicity / Nilai Kardinalitas

Mutiplicity atau multiplisitas menunjukkan jumlah suatu objek yang bisa berhubungan dengan objek lain. Multiplisitas biasanya ditunjukkan dengan

Diagram Kelas

„satu‟ atau „banyak‟, tetapi secara khusus dapat ditunjukkan pula dengan bilangan integer lebih besar atau sama dengan nol.

Tabel 6-1 Jenis-jenis multiplicity : Indikator

Arti

Nol atau satu

1 Hanya satu

Nol atau lebih

Satu atau lebih

n Hanya n (dengan n > 1) 0..n

Nol sampai n (dengan n > 1) 1..n

Satu sampai n (dengan n > 1)

6.1.4 Contoh kasus

Misal akan dibuat sebuah sistem informasi yang dapat membantu kasir supermarket saat menghitung total pembayaran dari pelanggan yang membeli barang secara tunai. Sistem informasi yang akan dibuat tsb. minimal harus mampu memenuhi kebutuhan fungsional sebagai berikut :

1. Menginisialisasi identitas kasir dan lokasi cash register kasir

2. Mencatat/merekam data transaksi penjualan yang diketik melalui keyboard. Data yang dimasukkan adalah jumlah dan kode barang.

3. Menampilkan informasi nama barang, harga, dan jumlah begitu dt jumlah dan kode barang selesai diinput.

4. Mencatat data transaksi pembayaran. Data yang dimasukkan adalah jumlah uang yang dibayarkan dan dilakukan setelah data transaksi penjualan selesai dicatat. Informasi total jumlah dan jumlah kembalian harus ditampilkan saat proses pemasukan data.

5. Mencetak struk sebagai tanda bukti transaksi pembayaran.

6. Membuat laporan penjualan untuk Supervisor.

Definisikan kelas, atribut dan metode untuk sistem tersebut. Penyelesaian

1. Identifikasi kelas : cashRegister, Kelas barang, kelas Penjualan

2. Definisi kelas, atribut dan metode

a. Nama Kelas : cashRegister Atribut : No_CR, id_kasir, nama

Diagram Kelas

Metode/operasi : entriJual, EntriBayar, Cetak Struk, cetak laporan.

b. Nama Kelas : barang Atribut : kd_brg, nm_brg, harga, stok Operasi : initiate, search, updateStok

c. Nama Kelas : Penjualan Atribut : no_jual, banyak Operasi : RekamJual, RekamBayar

6.1.5 Latihan

Definisikan objek/kelas-kelas untuk kasus di bawah ini !

1. Sistem pengolahan nilai di lembaga pendidikan bahasa Asing. Lembaga ini menerima kursus bahasa Inggris, Mandarin, Jepang dan Perancis.

2. Kasus pembayaran sewa komputer di suatu rental komputer.

3. Kasus belanja online melalui internet. Toko online yang dikunjungi ada toko buku dari berbagai penerbit. Di sistem ini, bagi pelanggan yang mendaftar dapat memesan dan menentukan lokasi pengirimannya.

4. Kasus pemeriksaan pasien di poliklinik yang memiliki beberapa dokter. Setiap pasien dapat berobat ke suatu poliklinik lebih dari satu kali. Setelah diperiksa kesehatannya oleh dokter tertentu, pasien harus membayar pemeriksaan dan obat-obatan yang diterimanya.

5. Kasus pendaftaran ulang kuliah di Politeknik Telkom untuk semua jurusan (Sistem informasi, Teknik Komputer, dan Komputer Akuntansi).

6. Sistem perpustakaan yang memiliki kebutuhan sebagai berikut :

a. Perpustakaan memiliki koleksi buku, jurnal, majalah

b. Petugas perpustakaan dapat melayani peminjaman, pengembalian dan pemesanan buku yang sedang dipinjam, dan pencarian

c. Anggota perpustakaan (dosen dan mahasiswa) dapat mencari koleksi buku yang akan dipinjam

d. Setiap peminjam harus terdaftar menjadi anggota

Diagram Kelas