Anda di halaman 1dari 28

Analisis dan Desain Sistem Informasi

Program Studi Sistem Informasi


Modul Pendekatan Pemodelan Berorientasi Object

Dosen Pengampu Kelas [Nama Kelas]

Aryo Pinandito, ST, M.MT


NIK/NIP. 20112345671001

Penyusun

[Nama Kelompok]

Azhar Ogi - NIM. 155150400111044 - Azhar


I Gusti Ngurah A. - NIM. 155150401111046 - Ngurah
M. Faisal Abror - NIM. 155150401111043 - Faisal
Adithia Sandi Josua - NIM. 145150400111048 - Sandi

Asisten

Afifahlya Alif Rizyomi- NIM. 145150400111095


Ika Kurniawati - NIM. 145150401111084

Program Studi Sistem Informasi


Jurusan Sistem Informasi
Fakultas Ilmu Komputer
Universitas Brawijaya
2017
1. Abstrak
Level teknis pengembangan perangkat lunak dimulai pada fase pemodelan atau fase
desain. Fase desain membutuhkan input berupa definisi dan spesifikasi kebutuhan dari
aktivitas analisis kebutuhan. Fase desain menggabungkan kombinasi text dan diagram untuk
mendefinisikan kebutuhan dalam bentuk yang mudah dipahami. Diagram dan text ini dibagi
ke dalam komponen yang merepresentasikan behavior, struktur data dan fungsi dari
perangkat lunak yang akan dibangun. Artefak atau produk yang dihasilkan dari fase desain
adalah Data Object Description, Entity Relationship Diagram, Data Flow Diagrams, State
Transition Diagrams, Process Specification, Control Specification dan Arsitektur dan Struktur
Program.

2. Tujuan Praktikum
Tujuan dari pelaksanaan praktikum mata kuliah ADSI dengan materi desain terstruktur
antara lain:
a. Mahasiswa mampu memahami komponen-komponen penyusunan pada diagram desain
perangkat lunak dengan pendekatan berorientasi objek.
b. Mahasiswa mampu memahami aturan-aturan penyusunan komponen pada diagram yang
dibutuhkan untuk pengembangan perangkat lunak dengan pendekatan berorientasi
object.
c. Mahasiswa mampu mendesain perangkat lunak berdasarkan kebutuhan dengan
pendekatan object.

3. Dasar Teori
Berikut ini beberapa pengertian Rekayasa Perangkat Lunak
a. IEEE Computer Society : Rekayasa Perangkat Lunak sebagai penerapan suatu
pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan,
penggunaan dan pemeliharaan perangkat lunak, serta studi atas pendekatan-
pendekatan ini, yaitu penerapan pendekatan engineering atas perangkat lunak.
b. Roger R. Pressman: Rekayasa Perangkat Lunak adalah pengubahan perangkat lunak
itu sendiri guna mengembangkan, memelihara, dan membangun kembali dengan
menggunakan prinsip reakayasa untuk menghasilkan perangkat lunak yang dapat
bekerja lebih efisien dan efektif untuk pengguna.
3.1. Konsep Perancangan
Perancangan adalah sebuah proses mendefinisikan sesuatu yang akan dikerjakan dengan
teknik bervariasi serta di dalamnya melibatkan deskripsi mengenai arsitektur serta detail
komponen dan juga keterbatasan yang akan dialami dalam proses pengerjaannya (Rizky, 2011).
Menurut Pressman (2010), perancangan perangkat lunak adalah proses dimana analisis
diterjemahkan menjadi blueprint untuk membangun perangkat lunak. Awalnya, blueprint
menggambarkan pandangan menyeluruh perangkat lunak, yaitu desain pada abstraksi tingkat
tinggi yang dapat langsung ditelusuri pada sistem tertentu, objektif, data rinci, dan fungsionalitas.
Namun perbaikan berikutnya mengarah pada representasi desain dengan tingkat abstraksi yang
jauh lebih rendah.
3.2. Konsep OOAD
Menurut Kendall dan Kendall (2011), Object Oriented Analysis and Design merupakan sebuah
pendekatan untuk memikirkan suatu masalah dengan menggunakan model yang dibuat menurut konsep
sekitar dunia nyata. Dasar pembuatan adalah objek merupakan kombinasi antara struktur data dan
perilaku dalam satu entitas.
Beberapa konsep yang manjadi dasar dalam perancangan sistem dengan Object Oriented Analysis and
Design menurut Whitten dan Bentley (2007) adalah:
1. Objek adalah sesuatu yang ada atau dapat dilihat, disentuh, atau dirasakan dan pengguna menyimpan
data serta mencatat perilaku mengenai sesuatu itu.
2. Atribut adalah data yang mewakili karakterikstik tentang sebuah objek.
3. Object instance adalah setiap orang khusus, tempat, sesuatu, atau kejadian, dan juga nilai untuk
atribut dari objek.
4. Behavior adalah kumpulan dari sesuatu yang dapat dilakukan oleh objek dan terkait dengan fungsi-
fungsi yang bertindak pada data objek (atribut). Pada siklus berorientasi objek, perilaku objek merajuk
kepada metode, operasi, atau fungsi.
5. Enkapsulasi adalah pengemasan beberapa item ke dalam unit.
Pendekatan ini menggunakan sebuah standar untuk pemodelan sistem berorientasi objek yang
disebut UML (Unified Modeling Language). UML bukanlah sebuah metode untuk mengembangkan sistem,
melainkan hanya notasi yang saat ini menjadi standar untuk memodelkan desain berorientasi objek.
Berbagai diagram UML, antara lain: use case diagram, activity diagram, class diagram, object diagram,
state machine diagram, composite structure diagram, sequence diagram, communication diagram,
interaction overview diagram, timing diagram, component diagram, deployment diagram, dan package
diagram (Whitten dan Bentley, 2007).Unified Model Language (UML) adalah bahasa umum untuk :
 Memvisualisasikan grafis model yang tepat.
 Menetapkan model yang tepat, lengkap, dan tidak ambigu untuk mengambil
semua keputusan penting dalam analisis, desain dan implementasi.
 Membangun model yang dapat dihubungkan langsung dengan bahasa
pemrograman.
 Mendokumentasikan semua informasi yang dikumpulkan oleh tim sehingga
memungkinkan untuk berbagi informasi.
3.3. Diagram-diagram UML (Unified Modeling Language)
Unified Modeling Language (UML) memiliki beberapa diagram yang digunakan untuk menggambarkan
suatu sistem. Tujuan pembuatan diagram ini adalah agar sistem mudah dimengerti oleh semua pihak.
5. Use Case Diagram
Use case diagram dipakai untuk menggambarkan relasi antara sistem, sistem eksternal, dan user
dengan kasus yang disesuaikan dengan langkah-langkah yang telah ditentukan (Whitten dan Bentley,
2007). Use case diagram merupakan cara atau metode yang cocok untuk menggambarkan interaksi yang
jelas antara sistem dengan pengguna. Use case diagram tidak menjelaskan secara detail tentang
penggunaan use case, namun hanya memberi gambaran singkat hubungan antara use case, aktor, dan
sistem. Melalui use case diagram, dapat diketahui fungsi-fungsi apa saja yang ada pada sistem. Nama
suatu usecase harus didefinisikan sesederhana mungkin dan dapat dipahami.
Berikut ini adalah simbol-simbol dalam use case diagram yang terdapat pada Tabel 3.1.
Tabel 3.1 Simbol-simbol pada use case diagram
Simbol Deskripsi
Use case mendeskripsikan fungsi dari
sebuah sistem dilihat dari sudut pandang
pengguna.
Actors merupakan sesuatu yang
berinteraksi dengan sistem untuk saling
bertukar informasi. Actors tidak harus
berupa manusia, tetapi dapat berupa suatu
organisasi atau sistem informasi.

Communicates relationship diguankan untuk


menghubungkan aktor dengan use case.

Include relationship atau disebut juga uses


relationship menggambarkan situasi dalam
suatu use case yang termasuk dalam use
case lainnya. Bertujuan untuk mengurangi
redundansi di antara dua use case atau lebih
dengan menggabungkan langkah-langkah
yang sama tersebut Sebuah panah putus-
putus yang mengarah pada suatu use case
menandakan memiliki hubungan dengan
use case lainnya.

Extends relationship bertujuan untuk


menggambarkan situasi dimana sebuah use
case memiliki behavior yang memungkinkan
use case lain dapat menggunakannya
sebagai dasar variasi ataupun
pengecualian.

Generalizes relationship menunjukkan


bahwa satu hal lebih umum daripada hal
lain. Hubungan ini memungkinkan terjadi
antara dua aktor maupun dua use case.
Associations adalah sebuah relasi antara
seorang actor dengan sebuah use case di
mana terjadi interaksi antara mereka.
Asosiasi dengan panah tertutup (1) di ujung
yang menyentuh use case mengindikasikan
bahwa actor di ujung yang satu lagi
melakukan use case tersebut. Sedangkan
asosiasi tanpa panah (2) mengindikasikan
sebuah interaksi dari use case ke actor yang
menerima hasil dari use case tersebut.

Sumber: Kendall dan Kendall (2011)


5. Class Diagram
Menurut Whitten dan Bentley (2007), class diagram digunakan untuk menggambarkan struktur objek
statis dalam sebuah sistem, menunjukkan sistem tersusun dari kelas-kelas apa saja dan hubungan apa saja
yang terbentuk di antara kelas tersebut. Simbol-simbol dalam class diagram terdapat pada Tabel 3.2.
Tabel 3.2 Simbol-simbol pada class diagram
Simbol Deskripsi
Attribute adalah sekumpulan data
yang dimiliki oleh objek.
Behavior adalah kumpulan dari
sesuatu yang dapat dilakukan oleh
objek dan terkait dengan fungsi-fungsi
yang bertindak pada data objek
(atribut). Pada siklus berorientasi
objek, perilaku objek merajuk kepada
metode, operasi, atau fungsi.

Inheritance, menunjukkan bahwa


satu kelas merupakan turunan dari
kelas lain.

Association, menunjukkan bahwa


objek dari satu kelas berhubungan
dengan kelas lain.
Agregation, menunjukkan bahwa
contoh objek dari satu kelas terdiri dari
contoh objek dari kelas lain.
Composition, menunjukkan hubungan
dimana satu kelas bertanggung jawab
atas pembuatan dan perusakan
bagian-bagian dalam kelas lainnya.
Jika satu kelas rusak, maka kelas lain
juga rusak.
Sumber: Whitten dan Bentley (2007)
5. Activity Diagram
Menurut Whitten dan Bentley (2007), activity diagram merupakan gambaran dari alur yang
berurutan dari aktivitas use case atau proses bisnis. Activity diagram juga bisa dipakai untuk
memodelkan berbagai aksi yang dilakukan saat sebuah operasi dieksekusi, dan memodelkan
hasil dari aksi tersebut. Dari diagram ini, dapat dilihat bagaimana aktivitas dalam suatu sistem,
dari mulai hingga saat sistem berakhir. Activity diagram dibentuk oleh beberapa notasi, antara
lain initial node, actions, flow, decision, merge, fork, join, dan activity final. Swimlane terkadang
digunakan untuk mempartisi aksi yang terjadi berdasarkan pelaku. Activity diagram secara grafis
digunakan untuk menggambarkan rangkaian aliran aktivitas baik proses bisnis maupun use case.
Fungsi dari activity diagram antara lain :
 Menggambarkan proses bisnis dan urutan aktivitas dalam sebuah proses
 Memperlihatkan urutan aktifitas proses pada sistem
 Activity diagram dibuat berdasarkan sebuah atau beberapa use case pada use case
diagramSimbol-simbol dalam activity diagram terdapat pada Tabel 3.3.
Tabel 3.3 Simbol-simbol pada activity diagram
Simbol Deskripsi
Initial node berupa lingkaran penuh
yang menggambarkan titik mulai
suatu proses.
Actions adalah notasi yang
menggambarkan langkah-langkah
yang terjadi.
Flow (alur) merupakan panah
dalam diagram yang
mengindikasikan alur antar–
actions.
Decision memiliki bentuk seperti
wajik dengan satu alur masuk dan
resolved
dua atau lebih alur keluar, alur
Problem not resolved keluar ditentukan dengan kondisi
tertentu.
Merge adalah wajik dengan dua
atau lebih alur masuk dan satu alur
keluar untuk menggabungkan alur
yang sebelumnya terpisah oleh
decision.
Fork adalah bar hitam dengan satu
alur masuk dan dua atau lebih alur
keluar, aksi di bawah percabangan
dapat terjadi dalam urutan apapun
atau bahkan secara bersamaan.
Join adalah bar hitam dengan dua
atau lebih alur masuk dan satu alur
keluar untuk menyatukan lagi alur
aksi yang dipisahkan oleh fork.
Activity final berbentuk lingkaran
penuh dengan satu lingkaran di
luarnya untuk menggambarkan titik
akhir proses.
Sumber: Whitten dan Bentley (2007)
Sedangkan menurut Sugiarti (2013), activity diagram juga dapat digunakan untuk
memodelkan action yang akan dilakukan saat sebuah operasi dieksekusi, dan memodelkan hasil
dari action tersebut. Contoh activity diagram terdapat pada Gambar 3.1.
admin,Manager, bagian
pemasaran, dan bagian sistem
produksi
Mulai

pilih aktor menampilkan form login

input data

Data Tidak Valid

submit

Data Valid

menampilkan Home aktor

Selesai

Gambar 3.1 Activity diagram untuk memodelkan action


Sumber: Sugiarti (2013)
5. Sequence Diagram
Sequence diagram secara grafis menggambarkan bagaimana objek berinteraksi dengan satu
sama lain melalui pesan pada sekuensi sebuah use case atau operasi. Diagram ini
mengilustrasikan bagaimana pesan terkirim dan diterima oleh objek dalam sekuensi atau timing
(Sugiarti, 2013). Pesan dapat berupa sinyal atau panggilan terhadap suatu operasi. Notasi pesan
untuk panggilan terhadap suatu operasi dapat dituliskan dalam sintaks UML atau sintaks bahasa
pemrograman tertentu. Simbol-simbol dalam sequence diagram terdapat pada Tabel 3.4.
Tabel 3.4 Simbol-simbol pada sequence diagram
Simbol Deskripsi

Entity, entitas yang mempunyai atribut yang


atau memiliki data yang bisa direkam.

Boundary, menghubungkan user dengan


sistem.
Control, untuk mengontrol aktivitas-aktivitas
yang dilakukan oleh sebuah kegiatan.
Message, pengiriman pesan.
Return Values, ditampilkan dengan garis
panah terputus yang menggambarkan hasil
dari pengiriman pesan. Digambarkan arah dari
kanan ke kiri.
Garis kehidupan (Lifelines), Garis 8 ertical
putus-putus yang memanjang kebawah dari
simbol actor dan sistem yang
mengindikasikan urutan kehidupan.
Bar aktivasi, Bar didalam garis kehidupan
(lifetime) yang menunjukkan periode waktu
ketika peserta aktif dalam interaksi.
Menurut Pressman (2010), sequence diagram digunakan untuk menunjukkan komunikasi
dinamis antara objek selama pelaksanaan tugas. Contoh sequence diagram terdapat pada
Gambar 3.2.

login
Actor
memilih aktor user

tampilkan form login aktor yang dipilih

memasukkan username dan password

username dan password

cek data username dan password

username atau password salah

menampilkan pesan username atau password salah

username atau password benar

menampilkan home aktor

Gambar 3.2 Contoh model sequence diagram login


Sumber: Pressman (2010)

5. User Story
Sebuah perusahaan logistik ternama di Indonesia melayani jasa distribusi logistik nasional
dan internasional serta melayani jasa pengiriman barang pada beberapa situs jual beli online
populer di Indonesia seperti Bukalapak, Tokopedia, Blibli, dan Lazada. Perusahaan logistik
ini memiliki tiga jenis layanan distribusi barang dengan kecepatan waktu antar yang berbeda-
beda. Ketiga layanan tersebut antara lain Paket Ekonomi, Reguler, dan SuperCepat. Layanan
paket Ekonomi menjamin paket yang dikirimkan akan tiba dalam waktu kurang dari 1 minggu.
Layanan paket Reguler menjamin paket akan tiba dalam waktu kurang dari 3 hari. Sedangkan
paket SuperCepat menjamin pengiriman barang akan tiba keesokan harinya. Direktur utama
perusahaan logistik ini bermaksud untuk membangun sebuah sistem informasi berbasis
web/desktop/mobile untuk membantu memudahkan para stakeholder-nya dalam
mendapatkan informasi.
Untuk memudahkan para pelanggan dalam mengetahui berapa ongkos kirim yang harus
dibayarkan ketika membeli suatu barang dari salah satu situs jual beli online tersebut, maka
perusahaan perlu menyediakan sebuah layanan berbasis web (web service) yang dapat
berkomunikasi dengan server situs jual beli online tersebut dengan menggunakan protokol
tertentu. Web service yang disediakan dapat digunakan untuk mendapatkan ongkos kirim
yang harus dibayar oleh pengirim barang. Service tersebut menerima masukan volume atau
berat barang yang akan dikirim serta jenis paket layanan yang dipilih. Service tersebut dapat
diakses oleh web server situs jual beli online dengan menggunakan protokol HyperText
Transport Protocol (HTTP) dan menghasilkan sebuah dokumen dalam format Javascript
Object Notation (JSON).
Manajemen perusahaan berkeinginan untuk membangun sebuah aplikasi berbasis web yang
dapat memudahkan pelanggannya dalam mengetahui ongkos kirim ke suatu daerah di
Indonesia terhadap barang yang akan dikirim melalui aplikasi berbasis web-nya. Ongkos kirim
suatu barang ditentukan dan dihitung berdasarkan volume kemasan barang atau berat
barang--tergantung dari hasil perhitungan ongkos kirim mana yang lebih besar serta jenis
layanan yang dipilih. Ongkos tambahan dapat dibebankan kepada pelanggan jika pelanggan
berkeinginan untuk mengasuransikan barang yang dikirim dengan menambahkan biaya
asuransi sebesar 0,2% dari nilai pertanggungan barang.
Dalam proses pengiriman suatu barang dari penjual selaku pengirim barang kepada pembeli,
terdapat beberapa aktivitas yang dilakukan oleh operator dan pengirim barang. Pengirim
barang mendatangi salah satu kantor cabang dari perusahaan logistik ini kemudian berbicara
dengan salah satu petugas pengiriman barang yang ada di dalam kantor cabang tersebut
seraya menyerahkan barang yang akan dikirimkan, menyebutkan jenis layanan pengiriman
yang diinginkan, serta memberikan informasi alamat tujuan pengiriman barang tersebut.
Petugas pengiriman barang kemudian mengukur dimensi dan berat barang yang akan dikirim
dan menghitung biaya kirim yang harus dibayar sesuai dengan jenis layanan yang diminta
serta besarnya biaya premi asuransi yang harus dibayar jika pengirim barang menginginkan
barang yang dikirim tersebut diasuransikan.
Petugas pengiriman barang kemudian mencatat pengiriman barang tersebut ke dalam sistem
dan mencetak resi pengiriman barang yang berisi informasi detail terhadap pengiriman
barang tersebut beserta nomor resi yang dapat digunakan untuk menelusuri status suatu
pengiriman barang. Nomor resi antara setiap barang yang dikirim bersifat unik. Sehingga,
setiap barang yang dikirim akan memiliki nomor resi yang berbeda. Resi pengiriman barang
yang dihasilkan dicetak rangkap dua, satu diserahkan kepada pengirim barang, dan satu lagi
direkatkan di bagian luar kemasan barang yang dikirim.
Selama barang dikirimkan dari kota asal menuju kota tujuan, barang tersebut melalui
beberapa titik-titik checkpoint yang berada di kota dan lokasi yang berbeda-beda untuk
dilakukan penyortiran sampai ke kota tujuan. Setiap kali barang yang datang dan disortir di
titik checkpoint dicatat nomor resinya sehingga seluruh stakeholder yang terkait dengan
pengiriman suatu barang dapat mengetahui lokasi/posisi terakhir barang yang dikirimkan.
Setelah barang sampai di kota tujuan, barang tersebut diantar oleh seorang kurir hingga
sampai ke tempat tujuan. Di kota tujuan, sebelum barang diantarkan oleh kurir, nama kurir
dan nomor telepon kurir yang mengantarkan barang dicatat sehingga kurir yang
mengantarkan barang tersebut dapat dihubungi sewaktu-waktu. Sesampainya di tempat
tujuan pengiriman barang, antara kurir dan penerima barang melakukan aktivitas serah terima
barang, dimana penerima barang menuliskan nama dan menandatangani resi pengiriman
barang yang sebelumnya dilekatkan pada kemasan barang yang dikirim. Setelah
ditandatangani oleh penerima, resi yang dilekatkan tersebut dilepaskan oleh kurir untuk
dicatat bahwa barang telah diterima dengan baik dan proses pengiriman barang telah selesai
dilakukan.
Agar sistem dapat selalu berjalan dengan baik, seorang administrator melakukan proses
maintenance sistem secara berkala. Ketika seorang administrator melakukan proses
maintenance, status sistem diubah menjadi mode “maintenance” dimana seluruh aktivitas
proses bisnis yang melibatkan sistem informasi tidak dapat dilakukan. Dalam kondisi ini, jika
pengguna lain selain administrator menggunakan sistem, maka sistem akan menampilkan
pesan bahwa sistem sedang dilakukan perawatan. Setelah proses maintenance selesai
dilakukan oleh administrator, status sistem dapat dikembalikan ke dalam mode “normal” oleh
administrator dan seluruh fungsionalitas sistem yang melibatkan seluruh pengguna dapat
dipergunakan kembali.
Barang yang dikirim memiliki kemungkinan status berikut:
 Manifested: barang telah didaftarkan ke dalam sistem
 On Process: barang sedang dalam proses pengiriman atau sedang transit di kota lain.
 Received On Destination: barang telah tiba di kota tujuan dan disimpan di dalam
warehouse
 Delivered: barang telah diterima oleh penerima.
 Reroute: barang dialihkan ke kota lain.
Status perubahan barang tersebut hanya dapat dilakukan oleh petugas dari perusahaan
logistik. Namun informasi status barang tersebut dapat dilihat oleh si pengirim barang melalui
sistem informasi.
Manajemen perusahaan juga memiliki rencana untuk mempromosikan jasa pengiriman
barang yang ditawarkan melalui sistem informasi yang akan dibangun. Jika pengguna
mendaftarkan diri sebagai anggota melalui websitenya, maka pengguna akan diberikan
nomor anggota serta sebuah voucher diskon 50% biaya jasa pengiriman pertama dan diskon
75% untuk setiap pengiriman barang pada kelipatan ke-5 dalam bentuk voucher. Voucher
diskon hanya dapat dicetak oleh pengguna selaku pengirim barang setelah log in ke dalam
sistem informasi. Kode voucher akan diberikan secara acak ketika pengguna mencetak
voucher.
Sebelum petugas yang bekerja dalam perusahaan logistik tersebut dapat menggunakan
sistem dan memanfaatkan fungsionalitas yang disediakan oleh sistem informasi, terlebih
dahulu para petugas tersebut harus melakukan log in untuk diotentikasi oleh sistem. Menu-
menu yang ditampilkan oleh sistem hanya menu yang sesuai dengan pengguna yang telah
login ke dalam sistem.
5. Soal – Soal latihan
5.1 Tugas I: Pemodelan Use Case Diagram
Pada Pemodelan Use Case Diagram gambarkan Use Case Diagram dari kebutuhan
pengguna tersebut sesuai dengan teori use case diagram. Gunakan user story di atas serta
user story baru yang sudah Anda buat kemudian modelkan dengan use case diagram untuk
menentukan data aktor dan aktivitas yang dilakukan serta relasi antar aktivitas setelah itu
buatkan pula use case scenarionya.
Kode use
Aktor Aktivitas
case
Petugas 0010 Masuk ke dalam sistem
Petugas 0011 Memeriksa transaksi user
Petugas 0012 Melakukan update pada status transaksi user
Petugas 0013 Memeriksa status barang
Petugas 0014 Melakukan update pada status barang
Pengguna 0020 Masuk ke dalam sistem
Pengguna 0021 Melakukan transaksi
Pengguna 0022 Melakukan pembatalan transaksi

Analisis Use Case

Asosiasi
Aktivitas
Include Extend
Masuk ke dalam sistem Login
Memeriksa transaksi user Menampilkan Data User
Melakukan update pada status Menampilkan Status transaksi
transaksi user
Memeriksa status barang Sistem menampilkan status
barang
Melakukan update pada status Sistem dapat melakukan update
barang status
Masuk ke dalam sistem Sistem memiliki fitur login
Melakukan transaksi Sistem dapat melakukan
transaksi
Melakukan pembatalan Sistem dapat membatalkan
transaksi transaksi yang ada

Generalisasi Aktor

Aktor Aktor Generalisasi

Petugas Admin
Pengguna User

Use Case Specification

Use Case ID: 001


Use Case Name: Masuk ke dalam Sistem
Created By: Aditia Sandi J. Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:
Actor: Petugas
Description: Sistem memiliki fitur login
Preconditions:
Main Flow: Login
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

Use Case ID: 0011


Use Case Name: Memerika transaksi user
Created By: Aditia Sandi J. Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:

Actor: Petugas
Description: Sistem dapat menampilkan data transaksi user
Preconditions:
Main Flow: Menampilkan Status
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

Use Case ID: 0012


Use Case Name: Melakukan update pada status tranksaski user
Created By: Azhar Ogi Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:

Actor: Petugas
Description: Sistem dapat mengupdate status transaksi user
Preconditions:
Main Flow: Melakukan Uodate
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

Use Case ID: 0013


Use Case Name: Memeriksa Status barang
Created By: Azhar Ogi Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:
Actor: Petugas
Description: Sistem dapat menampilkan status barang
Preconditions:
Main Flow: Menampilkan Status Barang
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

Use Case ID: 0014


Use Case Name: Melakukan update status barang
Created By: M. Faisal Ab. Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:

Actor: Petugas
Description: Sistem dapat mengupdate status barang
Preconditions:
Main Flow: Melakukan update
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

Use Case ID: 0020


Use Case Name: Masuk ke dalam sistem
Created By: M. Faisal Ab Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:

Actor: Pengguna
Description: Sistem memiliki fitur login
Preconditions:
Main Flow: Login
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

Use Case ID: 0021


Use Case Name: Melakukan Transaksi
Created By: I Ngurah G. Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:
Actor: Pengguna
Description: Sistem dapat melakukan transaksi
Preconditions:
Main Flow: Melakukan transaksi
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

Use Case ID: 0022


Use Case Name: Melakukan Pembatalan Transaksi
Created By: I Gusti N. Last Updated By:
Date Created: 05 Mei 2017 Date Last Updated:

Actor: Pengguna
Description: Sistem dapat melakukan fungsi pembatalan transaksi
Preconditions:
Main Flow: Melakukan Pembatalan
Alternative Flow - 1:
Alternative Flow - 2:
Postconditions:

5.2 Tugas II: Pemodelan Activity Diagram


Berdasarkan pemodelan Use Case Diagram dan Use Case Scenario pada tugas I, buatlah
activity diagram dari use case tersebut berdasarkan use case scenario. Isikan data aktivitas
yang dilakukan pada scenario sesuai dengan urutan yang ada pada use case scenario pada
kolom activity, aktor yang melakukan dan jika dibutuhkan persyaratan pada aktivitas tersebut
tuliskan dalam kolom precondition activity.

Activity ID: 202


Activity title: Penerimaan resi barang
Use Case UC006
Scenario ID :
Created By: AO Last Updated By: AO
Date Created: 9 MEI 2017 Date Last Updated:
Main Flow
Precondition
Activity Aktor
Activity
Melakukan Penerima barang Barang sudah
Pembayaran dibayar
Memproses nomor Petugas
resi pengiriman barang
Cetak resi Petugas
pengiriman barang
Menerima nomor resi Penerima barang

Alternative Flow
Precondition
Activity Aktor
Activity
A

Activity ID: ACT003


Activity title: Mengirim barang ke alamat pengguna
Use Case UC003
Scenario ID :
Created By: AO Last Updated By: AO
Date Created: 9 Mei 2017 Date Last Updated:

Main Flow
Precondition
Activity Aktor
Activity
Mengirim barang ke Kurir Barang sudah
alamat penerima diterima oleh kurir
Melakukan serah Penerima barang
terima barang
Mengubah status Kurir
barang

Alternative Flow
Precondition
Activity Aktor
Activity
Mengambil barang di Penerima barang
kantor cabang

5.3 Tugas III : Pemodelan Sequence Diagram

Berdasarkan pemodelan Activity Diagram pada tugas II, buatlah sequence diagram dari
activity diagram tersebut. Isikan data sesuai dengan tabel dibawah ini yaitu aktor yang
melakukan, boundary kelas, entitas pada kelas yang berhubungan, control kelas sebagai
penghubung dengan boundary dan meesage sebagai pesan yang dikirimkan atau diterima.

Sequence ID: 101


Sequence title: TRANSAKSI
Activity Diagram 002
ID :
Created By: AZHAR OGI Last Updated By:
Date Created: 19 MEI 2017 Date Last Updated:

Sequence ID: 102


Sequence title: INPUT DAN CHECK RESI
Activity Diagram 0021
ID :
Created By: AZHAR OGI Last Updated By:
Date Created: 9 MEI 2017 Date Last Updated:

Aktor Boundary Entitas Control


Kelas Kelas Kelas
Pengguna Login Page login Controller
Pengguna Page Menu Object Controller
Pengguna Transfer Rekening Controller
Page
Pengguna Status Report Controller
Page

Aktor Boundary Entitas Control


Kelas Kelas Kelas
Petugas Order Object Controller
Page
Petugas Login Page Resi Controller
Petugas Status Report Controller
Page
Petugas Tracking Report Controller
Page
Seq.Diagram 1

Seq.Diagram 2

Analisis messages digunakan untuk memetakan messages yang digunakan pada sequence
diagram. Pemetaan meesages ini melibatkan object pada sequence, meesage yang dikirimkan,
parameter pada message, object tujuan dari messages dan return value dari messages tersebut.
Analisa messages dapat ditulisakan pada tabel berikut.

Tabel Analisis Messages

Message Object Asal Messages Data / Object Return Value


Number Parameter Tujuan
1 Actor Login() Pin Login Page
1.1 Login Page Selection() Pin Controller
2 Database Check() rsPin Controller nextPage()
3 Actor Choose() Object PageMenu
3.1 Page Menu Schoose() Object Controller
3.1.1 Controller menuV() Object Tranfer
Page
4 Actor InputRek() Rekening Transfer
Page
4.1 Tranfer sRek() Rekening Controller
Page
5. Database Rekening() Rekening Controller
5.1 Controller Done() Report Status
Page
5.1.1 Status statatusMssg() Report Actor MessageDone
Page

Message Object Asal Messages Data / Object Tujuan Return


Number Parameter Value
1 Actor Create() Order Order Page
1.1 orderPage inputOrder() Order DatabaseResi
2 Actor Login() Resi LoginPage
2.1 LoginPage Selection() Resi DatabseResi
2.1.1 DatabaseResi resiValid() Resport Status Page
2.1.1.1 Status Page returnStatus() Resport Actor Status
3 Actor ChooseMenu() Object StatusPage
3.1 Status Page chooseTracking() Object TrackingPage
3.1.1. TrackingPage Checking() Object DatabaseResi
3.1.1.1 DatabaseResi tTracking() Report TrackingPage
3,1,1.1.1 TrackingPage returnTracking() Report Actor Tracking
Status

5.4 Tugas IV : Pemodelan Class Diagram dan Package


Pada tugas sebelumnya telah dibuat sequence diagram untuk studi kasus ini, terdapat method-
method yang sudah dijelaskan sebelumnya. Pada tugas ini buatlah pemetaan class dan diagram
sesuai dengan tabel – tabel berikut.

Sequence 1 (101)
Customer
Sifat
Attribut Tipe data
Private Public Protected
Pin Integer -
Nominal Integer -
Saldo Integer -
NoRekening String
Method Param Return
getPIN - String +
getnoRekening - String +
getSaldo - Integer +
setnoRekening void - +

ATM
Sifat
Attribut Tipe data
Private Public Protected
PIN Integer -
Nominal Integer -
Saldo Integer -
No_Rek String -
Method Param Return
setPIN String Void +
setnominal Integer Void +
getSaldo - Integer +
GetNominal - Integer +
getNoRek - String +

Controller_ATM
Sifat
Attribut Tipe data
Private Public Protected
cPin String -
cNominal Integer +
cSaldo Integer +
cNorek String +
Method Param Return
checkPin - Void +
checkNoRek - Void +
checkSaldo - Integer +

Hubungan Antar Kelas


Nama Kelas I Nama Kelas II Modalitas Kardinalitas Relasi
Customer Controller_ATM Parsial One To Many
ATM Controller_ATM Semua One To Many
Website
Sifat
Attribut Tipe data
Private Public Protected
Resi String -
DataOrder Object -
Status Object -
Method Param Return
setResi String Void +
getResi - String +
setDataOrder Object Void +
getDataOrder - Object +

User
Sifat
Attribut Tipe data
Private Public Protected
Resi String -
DataOrder Object -
Method Param Return
setResi String Void +
getResi - String +
setDataOrder Object Void +
C_Database
Sifat
Attribut Tipe data
Private Public Protected
Resi String +
Nama String +
Alamat String +
Telpon String +
Total Integer +
Tanggal Date +
Status String +

Hubungan Antar Kelas


Nama Kelas I Nama Kelas II Modalitas Kardinalitas Relasi
User Website Parsial One to One
Website Database Semua One to One

5.5 Tugas V : Pemodelan Data


Tahapan berikutnya adalah membuat pemodelan data untuk kebutuhan implementasi pada
DBMS. Pada class diagram sudah dilakukan analisa atribut yang bisa digunakan sebagai acuan
penyusunan class diagram.

Nama Tabel Atribut Tipe Data Constraint


ID Integer PK
NO_REK Varchar
DATA_USER NAMA Varchar
SALDO Integer
PIN Varchar
ID_TRANSAKSI integer
ID_TRANSAKSI Integer PK
ID_TRANSAKSI TOTAL_TRANSFER Integer FK
TOTAL_TARIK_TUNAI Integer FK

Nama Tabel Atribut Tipe Data Constraint


ID_PENGIRIMAN Varchar PK
RESI Varchar
NAMA Text
ALAMAT Varchar
DATA_PENERIMA
TELPON Varchar
TOTAL Integer
TANGGAL Date
ID_STATUS integer
ID_STATUS Integer PK
ID_PENGIRIMAN integer FK
STATUS
TRACKING Varchar
STATUS_SENT Varchar

5.6 Tugas VI : Pembuatan Pseudo-Code


Pada komponen Class diagram terdapat beberapa method yang digunakan, untuk pseudo-code
hanya method yang digunakan pada controller bukan pada bagian user interface.

PC001

Class Controller_ATM
Deklarasi :
Variable cPin , cNominal , cSaldo : integer
Variable cNoRek : String
Call variable Customer.Pin
Call variable Customer.Saldo
Call variable Customer.Nominal
Call variable Customer.NoRekening
Deskripsi

Method checkPIN (pin)


If (pin = Customer.Pin)
Print Ok
Else
Print PIN SALAH
EndIf

Method checkSaldo (Customer.Saldo)


If(cNominal <= Customer.Saldo)
Print Ok
Else
Print Saldo Kurang
EndIf

Method checkNoRek (Customer.NoRekening)


If(cNorek <= Customer.NoRekening)
Print Ok
Else
Print NO.Rekening Tidak Valid
EndIf

Pseudo-Code ID: PC001


Pseudo-Code CHECK / VALIDASI PIN , NO.REKENING DAN KECUKUPAN NOMINAL
title: BERDASARKAN SALDO
Method Name - CheckPin
- CheckSaldo
Created By: Azhar Ogi Last Updated By:
Date Created: 28 Mei 2017 Date Last Updated:

Input - Pin
- Nominal
- No.Rekening
Proses - Validasi Pin
- Validasi Nominal to Saldo
- Validasi Nomor Rekening
Output - Laporan Sukses / Pin Salah
- Laporan Sukses / Saldo tidak Cukup
- Laporan Berhasil Transfer
PC002
Class Website
Deklarasi :
Variable Resi : String
Variable DataOrder , Status : Object
Call Objek -> Class Database

Deskripsi

Method getResi()
Return This Resi
Method setResi(Resi)
getResi() -> Database.Resi
Method getDataOrder()
Return This DataoOrder
Method setDataOrder (getDataOrder())
getDataOrder() -> Database
Object -> Database.Status

Pseudo-Code ID: PC001


Pseudo-Code MEMPORELAH RESI (OTOMATIS) , MEMASUKAN DATA ORDERAN BESERTA
title: RESI YANG TERKAIT
Method Name - getResi
- setResi
- getDataOrder
- setDataOrder
Created By: Azhar Ogi Last Updated By:
Date Created: 28 Mei 2017 Date Last Updated:

Input Data Orderan


Proses Memasukan Data Order ke Database
Output Rincian Data Order + Resi (Otomatis)

5.7 Tugas VIII : Sketsa UI

Anda mungkin juga menyukai