Professional Documents
Culture Documents
Penyusun
[Nama Kelompok]
Asisten
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.
input data
submit
Data Valid
Selesai
login
Actor
memilih aktor user
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
Aktor Usecase
Usecase
Asosiasi
Aktivitas
Include Extend
A B
Generalisasi Aktor
Actor:
Description:
Usecase Goal:
Preconditions:
Main Flow:
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:
Activity title:
Use Case
Scenario ID :
Created By: Last Updated By:
Date Created: Date Last Updated:
Main Flow
Precondition
Activity Aktor
Activity
A
B
C Bergantung pada
proses A
Alternative Flow
Precondition
Activity Aktor
Activity
A
B
C Bergantung pada
proses A
GAMBAR ACTIVITY DIAGRAM
Sequence ID:
Sequence title:
Activity Diagram
ID :
Created By: Last Updated By:
Date Created: Date Last Updated:
Nama Kelas
Sifat
Attribut Tipe data
Private Public Protected
Berdasarkan kelas yang di gambarkan tersebut detailkan tabel berikut ini dan pastikan bahwa
tipe data yang ditentukan sesuai dengan contoh data yang diberikan pada setiap atribut yang di
uraikan.
Input
Proses
Output
UI-ID:
UI-title: Form - ABC
UI Function : Input / Output
Created By: Last Updated By:
Date Created: Date Last Updated: