Post on 19-Jan-2020
Selama tahap analisis, Perancang Sistem memusatkan perhatian pada pemahaman kepada Requirements Document untuk menghasilkan sebuah spesifikasi tingkat tinggi yang menggambarkan tentang apa yang harus dilakukan oleh Sistem.
Output dari tahap perancangan – sebuah Design Specification – harus menspesifikasikan secara jelas bagaimana sistem harus dibangun untuk memenuhi kebutuhan yang terdapat pada RD.
Sebuah Sistem adalah sekumpulan komponen yang
berinteraksi untuk memecahkan sebuah masalah.
Struktur Sistem menggambarkan Object dari Sistem
dan Interelasi.
Perilaku sistem menggambarkan bagaimana Sistem
berubah ketika object berinteraksi satu sama lain.
Setiap Sistem memiliki Struktur dan Perilaku – harus
dispesifikasikan oleh Perancang.
UML 2 Standard menentukan ada 13 jenis
diagram untuk mendokumentasikan Model
Sistem.
Setiap diagram memodelkan sebuah
karakteristik berbeda dari sebuah Struktur atau
Perilaku Sistem – enam diantaranya berkaitan
dengan Struktur Sistem, tujuh diantaranya
berkaitan dengan Perilaku Sistem.
Use Case diagrams memodelkan interaksi antara sebuah Sistem dan Entitas Luar (Aktor) dalam bentuk Use case.
Class diagrams memodelkan Class, atau ―blok pembangun‖, yang digunakan di dalam Sistem.
State diagrams memodelkan cara bagaimana sebuah Object berubah keadaannya (state). Sebuah state dari Object ditandai oleh nilai semua atributnya pada suatu waktu. Ketika object berubah state, ia dapat berperilaku berbeda di dalam Sistem.
Activity diagrams memodelkan aktifitas (activity) dari sebuah – Alur kerjanya (urutan dari kejadian) selama eksekusi program. Sebuah Activity diagram memodelkan aksi yang dijalankan Object dan menspesifikasikan urutan pengerjaanya.
Communication diagrams (Collaboration diagrams)
memodelkan interkasi antara Object di dalam sebuah
Sistem, dengan penekanan pada interaksi Apa yang
terjadi.
Sequence diagrams juga memodelkan interkasi
antara Object di dalam Sistem, tetapi penekanannya
kepada Kapan interaksi terjadi.
Identifikasi Class yang dibutuhkan dengan menganalisis analyzing kata benda dan frase kata benda yang muncuk pada RD.
Tinjau RD dan kenali kata benda kunci dan frase kata benda kunci untuk membantu mengenali Class yang membentuk Sistem ATM. Kita putuskan bahwa beberapa kata benda dan frase kata
benda adalah sebenarnya Atribut dari Class di dalam Sistem. Kita dapat simpulkan bahwa beberapa kata benda tidak
sesuai dengan bagian dari Sistem dan tidak dimodelkan sama sekali.
Class tambahan dapat menjadi jelas ketika kita melanjutkan proses Perancangan.
Kita buat class hanya untuk kata benda dan frase kata benda
yang memiliki Signifikansi (makna) di dalam Sistem ATM.
Meski pun RD sering menyebutkan sebuah ―transaction‖ di
dalam makna yang lebih umum, kita tidak memodelkan
gagasan yang lebih luas tentang transaksi keuangan saat ini.
Malahan, kita memodelkan tiga jenis transaksi, (yaitu,
―balance inquiry,‖ ―withdrawal‖ dan ―deposit‖) sebagai
class individu.
Ketiga Class tersebut memiliki atribut khusus yang
dibutuhkan untuk menjalankan transaksi.
Class:
1. ATM
2. screen
3. keypad
4. cash dispenser
5. deposit slot
6. account
7. bank database
8. balance inquiry
9. withdrawal
10. deposit
Setiap Class dimodelkan sebagai sebuah segi
empat dengan tiga ruang.
Bagian paling atas berisi Nama Class, terletak di
tengah horisontal, cetak tebal.
Bagian tengah berisi Atribut Class.
Bagian dasar berisi Operasi (method) milik Class.
Class diagram juga menunjukkan Relasi antar Class di
dalam Sistem.
Digram di bawah ini menggambarkan hubungan antara
Class ATM dan withdrawal.
Elided Diagram => Memudahkan pembacaan diagram.
Garis Solid yang menghubungkan adalah sebuah
Asosiasi — sebuah Relasi antara Class.
Angka di dekat ujung garis adalah Nilai Multiplicity,
yang menandakan berapa object dari tiap kelas
berpartisipasi di dalam asosiasi.
Pada tiap waktu, satu Object dari Class ATM berpartisipasi di
dalam sebuah asosiasi dengan salah satu dari nol atau satu
Object dari kelas Withdrawal –
0, jika User tidak melakukan sebuah transaksi Withdrawal
atau meminta sebuah transaksi jenis lain, dan 1 jika meminta
sebuah transaksi Withdrawal.
Sebuah asosiasi dapat diberi nama.
Kata Executes di atas garis penghubung Class ATM dan
Withdrawal adalah nama asosiasi.
Dibaca: ―satu Object dari Class ATM executes nol atau satu
Object dari Class Withdrawal.”
Nama asosiasi sesuai dengan arah, yang ditandai oleh
Anak Panah Penuh.
Kata currentTransaction pada ujung Class Withdrawal dari garis asosiasi adalah sebuah Role Name, menandakan Peran yang dimainkan dari Object Withdrawal di dalam Relasi dengan ATM.
Sebuah Role Name menambah makna kepada sebuah Asosiasi antara Class dengan mengidentifikasi peran dari sebuah class di dalam konteks asosiasi.
Sebuah Class dapat memiliki beberapa Peran berbeda di dalam Sistem yang sama.
Role names dapat dihilangkan jika arti dari asosiasi telah jelas tanpanya.
Sebagai tambahan untuk menandai relasi sederhana, asosiasi dapat menentukan relasi lebih rumit, seperti Object dari Sebuah Class tersusun atas Object dari Class lain.
Pada Gambar 12.9, berlian penuh terhubung kepada
garis asosiasi Class ATM, menandakan ATM memiliki
sebuah has a Relasi Komposisi dengan Class Screen,
Keypad, CashDispenser dan DepositSlot.
Komposisi mewakili Relai Keseluruhan/Bagian
(Whole/Part).
Class yang memiliki simbol Komposisi (berlian penuh)
pada ujung dari garis asosiasinya adalah Keseluruhan
(whole; ATM), dan Class di ujung lain adalah Bagian
(Part).
Relasi Komposisi memiliki Sifat:
Hanya sebuah Class di dalam Relasi dapat mewakili Keseluruhan
Bagian di dalam Relasi Komposisi hanya ada jika Keseluruhan ada,
dan Keseluruhan bertanggung jawab untuk pembuatan dan
penghapusan Bagian.
Sebuah Bagian hanya dapat dimiliki oleh satu Keseluruhan pada tiap
waktu, meski pun dapat dihapus dan dilektkan kepada Keseluruhan
lainnya.
Jika sebuah Relasi has-a tidak memenuhi satu atau lebih
kriteria ini, maka dapat menggunakan tanda Berlian
Hampa yang dilekatkan di ujung garis asosiasi sebagai
bentuk komposisi yang lebih lemah.
Class ATM memiliki sebuah Relasi One-to-One dengan Class BankDatabase – 1 Object ATM melakukan authenticates users against 1 Object dari Class BankDatabase.
Database milik Bank berisi informasi tentang banyak Rekening (accounts) – 1 Object BankDatabase berpartisipasi di dalam Relasi Komposisi dengan 0 atau Lebih Object dari Class Account.
Class BankDatabase memiliki sebuah Relasi One-to-Many dengan Class Account —BankDatabase berisi banyak Rekening (Accounts).
Class Account memiliki sebuah Relasi many-to-one dengan Class BankDatabase – terdapat banyak Accounts tersimpan di dalam BankDatabase.
Pada setiap waktu, terdapat 0 atau 1 Object dari Class
Withdrawal.
Jika user menjalankan sebuah Penarikan (withdrawal),
―sebuah Object dari Class Withdrawal melakukan
akses / mengubah sebuah Saldo Rekening (Account
Balance) melalui sebuah object dari Class
BankDatabase.‖
Semua Bagian dari Sistem harus berinteraksi dengan
database untuk memperoleh dan melakukan update
informasi rekening.
Class Memiliki Attributes (data) and Operations (perilaku).
Class Attributes diimplementasikan di dalam Java sebagai Fields, and Operations sebagai Methods.
Cari Kata Deskriptif dan Frase di dalam RD. Untuk setiap Kata Deskriptif dan Frase kita menemukan
yang memainkan sebuah peran penting di dalam Sistem ATM, kita buat sebuah Atribut dan tugaskan kepada satu atau lebih Class yang telah diidentifikasi sebelumnya.
Kita juga buat Atribut yang mewakili setiap data tambahan yang mungkin dibutuhkan Class, ketika kebutuhan tersebut menjadi jelas.
Untuk masalah nyata di dalam Industri, tidak
ada jaminan bahwa RD adalah cukup tepat
bagi Perancang Sistem Orientasi Objek untuk
menentukan semua Atribut atau bahkan Class.
Kebutuhan akan Class tambahan, Atribut dan
Perilaku dapat semakin jelas selama jalannya
proses perancangan
Class Diagram di dalam Gambar 12.12 menampilkan beberapa Atribut untuk Class di dalam Sistem kita – Kata Deskriptif dan Frase di dalam Gambar 12.11 membawa kita untuk mengenali Atribut ini.
Gambar. 12.12 tidak menunjukkan Asosiasi antara Class, demi alasan kesederhanaan; This is a common practice of systems designers when designs are being developed.
Sebuah Atribut dari Class ditempatkan di bagian tengah dari Segi Empat sebuah Class (Class’s rectangle).
Kita tampilkan setiap Nama dan Jenis Atribut yang dipisahkan dengan tanda ―:‖ (colon), di dalam beberapa kasus diikuti dengan tanda ―=― dan sebuah angka awal.
Attributes mewakili sebuah Keadaan (State).
Kita identifikasi beberapa We State Kunci yang dapat
dialami Object
Juga mendiskusikan bagaimana Object merubah State
sebagai respon kepada berbagai peristiwa yang terjadi
di dalam Sistem.
Juga diskusi tentang Workflow, atau Activities, yang
dilaksanakan Object di dalam Sistem ATM
Penyajian Activity dari Object transaksi dari Class
BalanceInquiry dan Withdrawal.
Setiap State dari sebuah Object ditandai dengan nilai Atributnya pada suatu waktu.
State Diagrams memodelkan beberapa State dari sebuah Object dan menunjukkan apa yang menyebabkan perubahan State dari sebuah Object Memodelkan beberapa Perilaku dari Sistem.
UML merepresentasikan setiap State di dalam sebuah State Diagram sebuah Persegi Panjang Bulat dengan nama dari State diletakkan di dalamnya.
Sebuah Lingkaran solid dengan sebuah garis panah menandakan Keadaan Awal (Initial State).
Anak panah menandakan Transisi di antara State.
Sebuah object dapat mengalami Transisi dari sebuah State ke State lain sebagai respon terhadap berbegai persitiwa yang terjadi di dalam Sistem.
Nama atau deskripsi dari peristiwa yang menyebabkan sebuah transisi ditulis dekat garis yang sesuai dengan transisi.