0% menganggap dokumen ini bermanfaat (0 suara)
0 tayangan12 halaman

BAB 2

Dokumen ini membahas perancangan perangkat lunak dengan fokus pada pemodelan berorientasi objek menggunakan UML, termasuk penjelasan tentang sequence diagram dan class diagram. Mahasiswa diharapkan memahami konsep dan dapat mentransformasikan model kebutuhan ke dalam perancangan OO serta mempresentasikannya. Selain itu, dokumen ini juga mencakup rancangan algoritme dan antarmuka untuk aplikasi, dengan contoh kasus penggunaan seperti sistem ATM.

Diunggah oleh

sumantivivi755
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
0 tayangan12 halaman

BAB 2

Dokumen ini membahas perancangan perangkat lunak dengan fokus pada pemodelan berorientasi objek menggunakan UML, termasuk penjelasan tentang sequence diagram dan class diagram. Mahasiswa diharapkan memahami konsep dan dapat mentransformasikan model kebutuhan ke dalam perancangan OO serta mempresentasikannya. Selain itu, dokumen ini juga mencakup rancangan algoritme dan antarmuka untuk aplikasi, dengan contoh kasus penggunaan seperti sistem ATM.

Diunggah oleh

sumantivivi755
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

DAFTAR ISI

1. Tujuan ......................................................................................................................................... 3

2. Dasar Teori .................................................................................................................................. 3

2.1 Sequence Diagram .................................................................................................................... 3

2.2 Class Diagram ............................................................................................................................ 4

2.3 Bagian-bagian DPPL .................................................................................................................. 8

2.4 Penjelasan Kerangka ................................................................................................................. 9


PERANCANGAN PERANGKAT LUNAK
1. Tujuan
Setelah mengikuti praktikum ini mahasiswa diharapkan dapat:

a. Mahasiswa mampu memahami konsep pemodelan perancangan berorientasi objek


b. Mahasiswa mampu mentransformasikan model kebutuhan kedalam model perancangan OO
dengan UML
c. Mahasiswa mampu mempresentasikan hasil pemodelan perancangan

2. Dasar Teori
2.1 Sequence Diagram
Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem (termasuk
pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence
diagram terdiri atar dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).
Sequence diagram biasa digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah
yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari
apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal
dan output apa yang dihasilkan. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal.
Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya.

Pada fase desain berikutnya, message akan dipetakan menjadi operasi/ metoda dari class yang akan
dijelaskan pada sub bab berikutnya. Activation bar menunjukkan lamanya eksekusi sebuah proses,
biasanya diawali dengan diterimanya sebuah message. Untuk objek-objek yang memiliki sifat khusus,
standar UML mendefinisikan ikon khusus untuk objek boundary, controller dan persistent entity.

2.2 Class Diagram


Objek adalah gambaran dari entity, baik dunia nyata atau konsep dengan batasan batasan dan
pengertian yang tepat. Objek bisa mewakili sesuatu yang nyata seperti komputer, mobil atau dapat
berupa konsep seperti proses kimia, transaksi bank, permintaan pembelian, dll. Setiap objek dalam
sistem memiliki tiga karakteristik yaitu State (status), Behaviour (sifat) dan Indentity (identitas).

Cara mengidentifikasi objek:


1. pengelompokan berdasarkan kata/frase benda pada skenario.
2. berdasarkan daftar kategori object, antara lain:
• objek fisik, contoh:pesawat telepon
• spesifikasi/rancangan/deskripsi, contoh: deskripsi pesawat
• tempat, contoh:gudang
• transaksi, contoh: penjualan
• butir yang terlibat pada transaksi, contoh: barang jualan
• peran, contoh :pelanggan
• wadah, contoh : pesawat terbang
• piranti, contoh:PABX
• kata benda abstrak, contoh: kecanduan
• kejadian, contoh:pendaratan
• aturan atau kebijakan, contoh:aturan diskon
• catalog atau rujukan, contoh: daftar pelanggan
Klas adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek atau dengan
kata lain Klas merupakan template untuk membentuk object. Klas merupakan inti dari pengembangan
dan desain berorientasi objek. Klas menggambarkan keadaan (atribut/properti) suatu sistem,
sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/ fungsi).

Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu
sama lain seperti containment, pewarisan, asosiasi, dan lain-lain.

Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang
hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus
diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung
resolusi metoda pada saat run-time. Sesuai dengan perkembangan class model, class
dapat dikelompokkan menjadi package. Kita juga dapat membuat diagram yang terdiri
atas package.
Dalam Obyek Oriented Design, klas-klas yang terbentuk dapat memiliki hubungan satu
dengan yang lainnya, sesuai dengan kondisi dari klas-klas yang bersangkutan. Secara
umum, hubungan antar kelas dapat dibedakan menjadi Asosiasi, agregasi, komposisi,
dependency, inheritance, realization.

Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang
memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain.
Panah navigability menunjukkan arah query antar class.
Contoh :
Klas diagram dalam kasus “Dosen Mengajar Mahasiswa”. 1 Dosen dapat mengajar
banyak Mahasiswa. Dalam hubungan asosiasi, di dalam Klas Dosen ada link atribut nim
mahasiswa yg diperoleh dari Klas Mahasiswa.
Agregasi, yaitu hubungan yang menyatakan suatu klas adalah bagian (“terdiri atas
kumpulan”) dari klas yg lain, namun kedua klas ini bisa berdiri sendiri. Merupakan
hubungan yang lebih kuat dari hubungan asosiasi.
Contoh :
• Klas Jurusan menyimpan nilai atribut dari mahasiswa dengan tipe data Klas
bentukan “Mahasiswa”.
• Mahasiswa dapat memiliki objek sendiri
• Jurusan dapat memiliki objek sendiri
• Mahasiswa menjadi bagian dari jurusannya.
• 1 jurusan bisa memiliki banyak mahasiswa.

Komposisi, merupakan bentuk khusus dari Agregasi di mana kelas yang menjadi part
(bagian) baru dapat diciptakan setelah kelas yang menjadi whole (seluruhnya) dibuat dan
ketika kelas yang menjadi whole dimusnahkan, maka kelas yang menjadi part ikut
musnah.
Contoh :
• Hubungan komposisi antara sebuah laptop dengan komponennya.
• Contoh objek:
• Laptop Asus A43S memiliki CPU intel core i7; VGA Nvidia 2GB;
• Laptop Toshiba S006 memiliki CPU intel core i5; VGA Nvidia 2GB;
Nilai CPU dan VGA tidak bisa didapat jika tidak melalui nilai objek Laptop. Ada
ketergantungan penuh dari class CPU & VGA ke Laptop, dengan Kata lain jika Laptop tidak
ada maka CPU dan VGA juga tidak ada.

Dependency, yaitu hubungan dimana satu klas tergantung/menggunakan klas yang


lain secara langsung.
Contoh :
Klas Car menggunakan attribut atau method yang ada di Klas Wheel secara langsung
tanpa instansiasi objek Wheel.

Pewarisan (inheritance), yaitu hubungan hirarkis antar class. Class dapat diturunkan
dari class lain dan mewarisi semua atribut dan metoda class asalnya dan menambahkan
fungsionalitas baru, sehingga ia disebut anak (subclass) dari class yang diwarisinya
(superclass). Operasi pada superclass dapat di-override oleh subclass (konsep
polymorphism). Kebalikan dari pewarisan adalah generalisasi.
2.3 Bagian-bagian DPPL
Kerangka umum SKPL memuat hal-hal sebagai berikut:

Cover dokumen

Daftar Isi

A. Sequence Diagram Perancangan

B. Class Diagram Perancangan

C. Rancangan Algorithme

D. Rancangan Antarmuka
2.4 Penjelasan Kerangka
Cover dokumen

Daftar Isi

A. Sequence Diagram Perancangan

Sub bab ini menjelaskan sequence digram perancangan yang menggambarkan alur solusi dari
permasalahan yang didefinisikan pada sub bab C.3 (squence diagram analisis) pada modul 1. Dalam
sub bab ini digambarkan sequence diagram dalam tampilan detail yang siap untuk diimplementasikan.
Berikut ini (Gambar 2.1) adalah contoh tampilan squence diagram perancangan dari kasus ATM. Pada
sub bab ini dijelaskan semua squence diagram perancangan sistem.

Gambar 2. 1 Squence Diagram Perancangan Transfer


B. Class Diagram Perancangan

Class diagram pada sub bab 2.2 adalah class diagram yang nantinya akan siap diimplementasikan.
Terjadi penambahan-penambahan class untuk kebutuhan implementasi. Gambar 2.2 adalah contoh
class diagram perancangan untuk kasus ATM.

Gambar 2. 2 Class Diagram Perancangan ATM

C. Rancangan Algoritme

Rancangan algoritma diperlukan untuk mendefinisikan algoritma dari setiap method yang ada
pada setiap class di class diagram. Pada sub bab ini cukup 5 (lima) algoritma dari 5 method saja yang
perlu dicantumkan dalam laporan. Sebagai contoh pendefinisian algoritma dalam kasus ATM adalah
sebagai berikut ini. Dalam contoh ini akan didefinisikan algoritma dari method transferUang dari class
transfer_controller.

1 Function transferUang()
2 Begin
3 Float saldo_awal = get saldo awal
4 Float jml_transfer = get jml transfer
5 Char rek_tujuan = get rek tujuan
6 If (saldo_awal > jml_transfer) then
7 Saldo_awal = saldo_awal – jml_transfer
8 Kirim dana ke rek_tujuan sejumlah jml_transfer
9 else
10 pesan “Saldo tidak mencukupi”
11 endif
12 end
Gambar 2. 3 Pseudocode transferUang
D. Rancangan Antarmuka

Rancangan antarmuka menjelaskan tentang rancangan layout dari sistem aplikasi yang akan
dikerjakan. Dalam bab ini penjelasan rinci tentang bagian-bagian layout untuk aplikasi dari setiap
tampilan dijelaskan. Seluruh layout tampilan aplikasi dijelaskan (semua). Sebagai contoh, gambar 2.4
menunjukkan gambaran rancangan layout untuk kasus transfer pada aplikasi ATM.

Gambar 2. 4 Layout Transfer ATM

Keterangan masing-masing bagian pada Gambar 2.4 dijelaskan pada tabel 2.1 berikut ini.

Tabel 2. 1 Deskripsi Layout Form Trasnfer ATM

No. Keterangan
1 Label judul form
2 Isian atau field nomor rekening nasabah
3 Isian atau field Personal Indentification Number (PIN)
4 Isian atau field jumlah nominal transfer
5 Isian atau field nomor rekening tujuan
6 Tombol submit untuk proses melakukan transfer

Anda mungkin juga menyukai