Modul Kuliah Chapter 1-2

Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

Modul Kuliah

ANALISIS DAN DESAIN BERORIENTASI


OBYEK MENGGUNAKAN UML

AGUS SASMITO ARIBOWO, S.KOM, M.CS

INFORMATIKA / SISTEM INFORMASI


UPN VETERAN YOGYAKARTA
BAB I.
PENDAHULUAN

1.1. Pengenalan UML


UML (Unified Modeling Language) merupakan cara pemodelan sistem
yang menganut pendekatan berorientasi objek yang muncul sekitar akhir tahun
80-an atau awal tahun 90-an. UML merupakan mencakup hal-hal yang lebih
luas daripada metode sebelumnya yaitu OOA&D. UML adalah bahasa
pemodelan, bukan pemrograman dan juga bukanlah suatu metode. Bahasa
pemodelan merupakan notasi dari metode yang digunakan untuk mendesain
secara cepat dan dipahami mudah oleh orang lain. UML menjadi bahasa standar
pemodelan pada masa yang akan datang.
Bahasa pemodelan lebih penting daripada metode karena merupakan
kunci untuk berkomunikasi dan berdiskusi tentang desain dengan seseorang.
Anda hanya membutuhkan bahasa pemodelan bukan proses yang digunakan untuk
mendapatkan desain. UML merupakan bahasa standar untuk penulisan blueprint
software yang digunakan untuk visualisasi, spesifikasi, pembentukan dan
pendokumentasian alat-alat dari perangkat lunak.

1.2. Pengertian UML


1.2.1. Pengertian Unified Modeling Language (UML)
UML adalah bahasa model untuk menspesifikasi, memvisualisasi,
membangun dan mendokumentasikan artifacts (bagian dari informasi yang
digunakan atau dihasilkan oleh proses pembuatan perangkat lunak, artifact
tersebut dapat berupa model, deskripsi atau perangkat lunak) dari sistem
perangkat lunak, seperti pada pemodelan bisnis dan sistem non perangkat
lunak lainnya [HAN98]. Selain itu UML adalah bahasa pemodelan yang
menggunakan konsep orientasi object. UML dibuat oleh Grady Booch , James
Rumbaugh , dan Ivar Jacobson di bawah bendera Rational Software Corp
[HAN98]. UML menyediakan notasi-notasi yang membantu memodelkan
sistem dari berbagai perspektif. UML tidak hanya digunakan dalam pemodelan
perangkat lunak, namun hampir dalam semua bidang yang membutuhkan
pemodelan..

1.2.2. Bagian-bagian Dari UML


Bagian-bagian utama dari UML adalah view, diagram, model element,
dan general mechanism.
1. View
View digunakan untuk melihat sistem yang dimodelkan dari beberapa aspek
yang berbeda. View bukan melihat grafik, tapi merupakan suatu abstraksi
yang berisi sejumlah diagram.
Beberapa jenis view dalam UML antara lain: use case view, logical view,
component view, concurrency view, dan deployment view.
2. Diagram
Diagram berbentuk grafik yang menunjukkan simbol elemen model yang
disusun untuk mengilustrasikan bagian atau aspek tertentu dari sistem. Sebuah
2
diagram merupakan bagian dari suatu view tertentu dan ketika digambarkan
biasanya dialokasikan untuk view tertentu. Adapun jenis diagram antara lain :
a. Use Case Diagram
b. Class Diagram
c. State Diagram
d. Sequence Diagram
e. Collaboration Diagram
f. Activity Diagram
g. Component Diagram
h. Deployment Diagram
i. Dan lain-lain

1.2.3. Gambaran dari UML


1. UML sebagai Bahasa Pemodelan
UML merupakan bahasa pemodelan yang memiliki pembendaharaan kata
dan cara untuk mempresentasikan secara fokus pada konseptual dan fisik dari
suatu sistem. Contoh untuk sistem software yang intensive membutuhkan bahasa
yang menunjukkan pandangan yang berbeda dari arsitektur sistem, ini sama seperti
menyusun/mengembangkan software development life cycle. Dengan UML akan
memberitahukan kita bagaimana untuk membuat dan membaca bentuk model
yang baik, tetapi UML tidak dapat memberitahukan model apa yang akan
dibangun dan kapan akan membangun model tersebut. Ini merupakan aturan dalam
software development process.
2. UML sebagai bahasa untuk Menggambarkan Sistem (Visualizing)
UML tidak hanya merupakan rangkaian simbol grafikal, cukup dengan tiap
symbol pada notasi UML merupakan penetapan semantik yang baik. Dengan
cara ini, satu pengembang dapat menulis model UML dan pengembang lain atau
perangkat yang sama lainnya dapat mengartikan bahwa model tersebut tidak
ambigu. Hal ini akan mengurangi error yang terjadi karena perbedaan bahasa
dalam komunikasi model konseptual dengan model lainnya. UML menggambarkan
model yang dapat dimengerti dan dipresentasikan ke dalam model tekstual
bahasa pemograman. Contohnya kita dapat menduga suatu model dari sistem yang
berbasis web tetapi tidak secara langsung dipegang dengan mempelajari code
dari sistem. Dengan model UML maka kita dapat memodelkan suatu sistem web
tersebut dan direpresentasikan ke bahasa pemrograman. UML merupakan suatu
model eksplisit yang menggambarkan komunikasi informasi pada sistem. Sehingga
kita tidak kehilangan informasi code implementasi yang hilang dikarenakan
developer memotong coding dari implementasi.
3. UML sebagai bahasa untuk Menspesifikasikan Sistem (Specifying)
Maksudnya membangun model yang sesuai, tidak ambigu dan lengkap. Pada
faktanya UML menunjukan semua spesifikasi keputusan analisis, desain dan
implementasi yang penting yang harus dibuat pada saat pengembangan dan
penyebaran dari system software intensif.
4. UML sebagai bahasa untuk Membangun Sistem (Constructing)
UML bukan bahasa pemograman visual, tetapi model UML dapat
dikoneksikan secara langsung pada bahasa pemograman visual. Maksudnya
membangun model yang dapat dimapping ke bahasa pemograman seperti java,
C++, VB atau tabel pada database relational atau penyimpanan tetap pada
database berorientasi object.
3
5. UML sebagai bahasa untuk Pendokumentasian Sistem (Documenting)
Maksudnya UML menunjukan dokumentasi dari arsitektur sistem dan
detail dari semuanya.UML hanya memberikan bahasa untuk memperlihatkan
permintaan dan untuk tes. UML menyediakan bahasa untuk memodelkan
aktifitas dari perencanaan project dan manajemen pelepasan (release
management).

1.2.4 Area Penggunaan UML


UML digunakan paling efektif pada domain seperti :
a. Sistem Informasi Perusahaan
b. Sistem Perbankan dan Perekonomian
c. Bidang Telekomunikasi
d. Bidang Transportasi
e. Bidang Penerbangan
f. Bidang Perdagangan
g. Bidang Pelayanan Elekronik
h. Bidang Pengetahuan
i. Bidang Pelayanan Berbasis Web Terdistribusi

Namun UML tidak terbatas untuk pemodelan software. Pada faktanya UML
banyak untuk memodelkan sistem non software seperti:
a. Aliran kerja pada sistem perundangan.
b. Struktur dan kelakuan dari Sistem Kepedulian Kesehatan Pasien
c. Desain hardware dll.

1.2.5. Tujuan Penggunaan UML


1. Memodelkan suatu sistem (bukan hanya perangkat lunak) yang
menggunakan konsep berorientasi object.
2. Menciptakan suatu bahasa pemodelan yang dapat digunakan baik oleh
manusia maupun mesin.

4
BAB II.
USE CASE DIAGRAM

2.1. Definisi :
Use Case Diagram adalah diagram pusat pemodelan fungsi sistem, subsistem,
dan kelas.
2.2. Kegunaan :
Diagram ini digunakan untuk :
1. Menjelaskan manfaat sistem jika ditinjau dari sudut pandang actor yang
menggunakan sistem (meninjau kasus-kasus penggunaan sistem oleh sejumlah
actor).
2. Menunjukkan apa saja fungsi sistem jika berinteraksi dengan dunia luar.
3. Merinci, menggambarkan, dan men-dokumentasikan kebutuhan user terhadap
fungsi sistem.
4. Memahami bagaimana seharusnya sistem bekerja.
5. Melacak kebutuhan fungsionalitas menjadi kelas-kelas aktual di sistem.

2.3. Komponen-komponen yang terlibat dalam use case diagram :


1. Actor
Pada dasarnya actor bukanlah bagian dari use case diagram, namun
untuk dapat terciptanya suatu use case diagram diperlukan beberapa actor
dimana actor tersebut mempresentasikan seseorang atau sesuatu (seperti
perangkat, sistem lain) yang berinteraksi dengan sistem. Sebuah actor mungkin
hanya memberikan informasi inputan pada sistem, hanya menerima informasi
dari sistem atau keduanya menerima dan memberi informasi pada sistem, actor
hanya berinteraksi dengan use case tetapi tidak memiliki kontrol atas use case.
Actor digambarkan dengan stick man. Actor dapat digambarkan secara secara
umum atau spesifik, dimana untuk membedakannya kita dapat menggunakan
relationship
Contoh :

Gambar 1.1 Actor

Siapa saja yang bisa menjadi actor? antara lain:


a. Yang berkepentingan terhadap sistem dimana adanya arus informasi baik
yang diterimanya maupun yang dia inputkan ke sistem.
b. Orang ataupun pihak yang akan mengelola sistem tersebut.
c. External resource yang digunakan oleh sistem. 55
d. Sistem lain yang berinteraksi dengan sistem yang akan dibuat.
Actor dapat menjadi kandidat kelas. Nama actor menyatakan peran yang
dimainkannya dalam sistem. Actor menyediakan, menggunakan, dan menghapus
informasi dari sistem.
Cara menemukan actor dengan menjawab pertanyaan :
a. ”Siapa yang mendukung dan memelihara sistem ?”
b. ”Apakah sistem menggunakan sumber daya dari luar ?”
c. ”Apakah sistem berinteraksi dengan sistem lama?”
2. Use Case Diagram
Use case diagram adalah gambaran fungsionalitas dari suatu sistem,
sehingga customer atau pengguna sistem paham dan mengerti mengenai
kegunaan sistem yang akan dibangun. Use case diagram adalah
penggambaran sistem dari sudut pandang pengguna sistem tersebut (user) ,
sehingga pembuatan use case lebih dititikberatkan pada fungsionalitas yang
ada pada sistem, bukan berdasarkan alur atau urutan kejadian.
Use-case adalah pekerjaan spesifik bagaimana cara aktor menggunakan
sistem.
Cara menentukan Use Case dalam suatu sistem:
a. Pola perilaku perangkat lunak aplikasi.
b. Gambaran tugas dari sebuah actor.
c. Sistem atau “benda” yang memberikan sesuatu yang bernilai kepada actor.
d. Apa yang dikerjakan oleh suatu perangkat lunak (* bukan bagaimana
cara mengerjakannya.).

Gambar 1.2 UseCase

3. Relasi dalam Use Case


Ada beberapa relasi yang terdapat pada use case diagram:
a. Association, menghubungkan link antar element.
b. Generalization, disebut juga inheritance (pewarisan), sebuah elemen
dapat merupakan spesialisasi dari elemen lainnya.
c. Dependency , sebuah element bergantung dalam beberapa cara ke element
lainnya.
d. Aggregation, bentuk assosiation dimana sebuah elemen berisi elemen lainnya.

Tipe relasi/ stereotype yang mungkin terjadi pada use case diagram:
a. Relasi <<include>> , yaitu kelakuan yang harus terpenuhi agar sebuah
event dapat terjadi, dimana pada kondisi ini sebuah use case adalah bagian
dari use case lainnya.
b. Relasi <<extends>> , kelakuan yang hanya berjalan di bawah kondisi tertentu
seperti menggerakkan alarm.
66
2.4. Use Case Diagram
Adalah gambaran graphical dari beberapa atau semua actor, use case,
dan interaksi diantaranya yang memperkenalkan suatu sistem.

CONTOH KASUS
Sebuah bank mengoperasikan ATM dan mengelola banyak tabungan, setiap nasabah
memiliki setidaknya satu rekening tabungan pada satu bank tertentu. Setiap
tabungan dapat diakses melalui kartu debit. Proses utama sistem ATM
berkomunikasi dengan pusat komputer dan didesain untuk menangani beberapa 77
transaksi. Setiap transaksi menunjuk sebuah tabungan tertentu. Suatu transaksi akan
menghasilkan satu dari dua hal berikut: transaksi diterima atau mengeluarkan pesan
penolakan transaksi".
Untuk melakukan sebuah transaksi akan melalui dua tahap: pengecekan tabungan
dan pemroses transaksi. Proses pengecekan tabungan akan menetapkan persetujuan
untuk proses transaksi. Jika persetujuan ditolak, ATM akan mengeluarkan pesan
penolakan, namun jika diterima, transaksi akan diproses de ngan menggunakan
nomor rekening tabungan dan ATM membaca dari kartu debit.

Pengecekan tabungan dilakukan bersamaan pada saat ATM memvalidasi kartu debit
dari bank yang bersangkutan. Jika kartu valid, password akan dicek dengan nasabah.

Log Out

Gambar 1.3 Use Case Diagram Studi Kasus ATM

Untuk memudahkan kita dalam menganalisa skenario yang akan kita gunakan
pada fase -fase selanjutnya maka kita dapat melakukan pemilahan terhadap
skenario tersebut, antara lain tentang scenario use case:

Skenario use case :

Nama use case : Authenticate user


Actor : User bank
Type : Primary
Tujuan : verifikasi user

USER MESIN ATM BANK


1. User memasukkan
kartu debit
2. ATM meminta
PIN dari user
3. User
memasukkan PIN
dan menekan OK
4. ATM memverifikasi dengan
Bank bahwa kartu dan PIN
adalah legal dari Rekening yang
benar 88
5. ATM
menampilkan
menu

Nama use case: Withdrawal


Actors : User, bank
Type : Primary
Tujuan : Penarikan uang secara cash
Deskripsi :
User datang ke ATM dengan kartu debit untuk melakukan penarikan tunai.
User memasukkan kartu ke ATM. ATM meminta user untuk memasukkan PIN.
User memasukkan PIN dan sistem mengotorisasi penarikan tunai. ATM
mengeluarkan uang dan mengeluarkan nota. ATM mengirim transaction
record ke bank untuk meng- update saldo tabungan. Setelah selesai, user
meninggalkan ATM dengan membawa uang dan nota tadi.

USER SISTEM ATM SISTEM BANK


1. User memilih menu
withdrawal
2. ATM meminta
jumlah uang yang
akan ditarik
3. User memasukkan
jumlah uang yang akan
ditarik
4. ATM mencek jumlah
uang yang akan ditarik
dengan saldo minimal
yang diperbolehkan pada
bank tersebut.
6. ATM 5. Update saldo
mengeluarkan uang
7. ATM
mencetak nota

Latihan :
Buatlah scenario usecase contoh-contoh berikut ini :
Contoh 1: Mesin Penjualan Minuman Soda Otomatis

99
Contoh 2 : Sistem Perbankan

Contoh 3 : Sistem Restoran

10
10
Catat Booking
Resepsionis <<include>>

<<include>>
Batalkan Booking

<<include>>
Tampilkan Info Booking
Staff

Transfer Meja <<include>>

<<include>>

Catat Meja

Pelayan

Catat Yang Langsung Datang

Contoh 4. Sistem OVO (dari sisi Pengguna/User)

11
11
Latihan 2.
Buatlah use case diagram untuk kasus : SISTEM PENJUALAN ITEM
SUPERMARKET Deskripsi :
Studi kasus ini mengembangkan desain sistem penjualan item
pada suatu supermarket. Sistem ini menangani sistem pemrosesan tersebar.

Business Rules
Item adalah barang yang dijual di supermarket dan harus terdaftar di dalam
sistem. Kasir menjual item kepada pembeli. Terdapat 2 jenis kasir, yaitu kasir biasa
dan kasir express. Kasir express hanya melayani penjualan max 5 item. Sistem
menangani penjualan item, pemasokan barang, penukaran item. Pada penukaran
item, item yang ditukarkan diusahakan merupakan item yang sama, namun jika
supplier tidak menyediakan lagi maka dapat ditukarkan dengan item yang lain
seharga item yang kadaluarsa atau sesuai dengan perjanjian.

Use case analysis


Menjual item
Memasok item
Menukarkan item (ke suplier)

Use case model


Skenario Penjualan Item
Sebuah kode item diidentifikasikan
Perhitungan total harga item yang dibeli
Kasir menjual item
Update persediaan item dan pendapatan supermarket
Skenario Pemasokan Item
Pemeriksaan jumlah item pada gudang
Item yang kurang diidentifikasikan
Lakukan pembelian item ya ng kurang pada supplier
Update persediaan item dan pendapatan
Skenario Pengembalian Item
Pemeriksaan status kadaluarsa item
Penukaran item kepada supplier
Update item dan status kadaluarsa item yang baru (setelah ditukarkan)

12
12

You might also like