Membuat Model Proses dan Use Case Sederhana (Part 2)

Faisal Wilmar
ecomindo-dev
Published in
6 min readNov 10, 2020

Ditulis oleh Faisal Wilmar, Annisa Pramita NP, dan Diana Nur Amalina.

Photo by You X Ventures on Unsplash

Pada artikel part 2 ini, akan dibahas mengenai cara membuat Model Use Case dari Model Proses yang sudah dibuat pada artikel part 1.

Model Use Case

Model Use Case menggambarkan bagaimana berbagai macam pengguna berinteraksi dengan sistem untuk menyelesaikan masalah. Tujuan dari Model Use Case adalah memberikan high level view mengenai sistem dan menggambarkan requirements terhadap apa yang bisa dilakukan oleh sistem. Model Use Case ini nantinya dapat diterjemahkan menjadi Interaction / Sequence Diagram.

Model Use Case sebagai high level view terhadap sistem harus mampu menggambarkan semua requirements yang tertera pada narasi pengguna. Apabila kita merasa ada Use Case yang kurang namun hal tersebut tidak terdapat dalam narasi, kita dapat menambah Use Case baru sebagai sebuah asumsi. Namun, pastikan kita sudah melakukan konfirmasi kepada pengguna atau customer terkait asumsi Use Case tersebut sebelum melakukan perancangan lebih lanjut.

Model Use Case memiliki beberapa elemen dan notasi, yaitu:

1. System Boundary. Elemen non-UML yang menggambarkan batas dari Model Use Case.

2. Actor. Merepresentasikan setiap aktor yang berinteraksi dengan sistem. Aktor adalah sebuah entitas yang dapat melakukan trigger terhadap suatu aktivitas. Sistem dapat dijadikan aktor apabila sistem melakukan trigger terhadap suatu aktivitas.

3. Use Case. Use Case menggambarkan tujuan utama dari aktor berinteraksi dengan sistem. Sebuah Use Case bisa menggambarkan banyak aktivitas selama aktivitas tersebut memiliki tujuan yang sama.

4. Association. Association menggambarkan hubungan/relasi antara Use Case dengan aktor.

Notasi pada Use Case Diagram

Bagaimana Cara Membuat Model Use Case?

Model use case yang akan kita buat memiliki bentuk yang sedikit berbeda dengan model use case pada umumnya. Hal tersebut dikarenakan kita perlu melakukan penyesuaian berdasarkan model proses yang dibuat sebelumnya, yaitu:

1. Biasanya Use Case hanya memiliki satu kotak container yang menggambarkan bahwa itu adalah satu sistem. Namun, dalam Model Use Case yang akan kita buat, satu kotak menggambarkan satu aktivitas di Model Proses yang atomicity-nya sudah disesuaikan dengan kebutuhan.

2. Use Case menggambarkan tujuan utama dari aktor, yaitu berinteraksi dengan sistem. Namun, pada model use case yang akan kita buat, hal tersebut digambarkan dalam level yang lebih detail. Hal ini akan mempermudah penerjemahan Use Case menjadi Interaction Diagram bila diperlukan.

3. Sama seperti di artikel sebelumnya, model proses yang dibuat disederhanakan agar mampu merespon cepat terhadap perubahaan, maka model use case kali ini juga dilakukan dengan tujuan yang sama. Jika sewaktu-waktu model proses berubah, maka model use case tentu saja akan berubah menyesuaikan dari model proses yang ada.

Sebuah Model Use Case dapat dibagi ke dalam sejumlah Diagram Use Case. Kita akan menggunakan contoh kasus REMO dan Model Proses yang telah dibuat pada artikel sebelumnya untuk mempermudah dalam memahami Model Use Case. Berikut narasi kasus REMO:

REMO adalah sebuah perusahaan rental mobil yang ingin membangun sistem untuk mengelola proses penyewaan. REMO memiliki dua jenis pelanggan, yaitu pelanggan individual dan pelanggan korporat. Pelanggan lama dapat memesan via website dengan memasukkan nama dan nomor telepon yang telah terdaftar. Sistem akan membuat pesanan dan mengirimkan SMS berisi kode konfirmasi, yang harus diisi oleh pelanggan untuk melakukan proses. Pesanan yang berhasil terkonfirmasi akan tersimpan di database dan sistem akan mengirimkan kode pesanan via SMS dan e-mail. Ketika pelanggan hendak mengambil mobil sewaan, pelanggan wajib menunjukkan kode pesanan tersebut. Petugas lapangan akan memasukkan kode pesanan ke sistem, mencatat statusnya sebagai tersewa, dan menyerahkan mobil kepada pelanggan. Jika batas waktu penyewaan sudah hampir berakhir atau sudah berlalu, maka sistem secara otomatis mengirimkan pesan via SMS kepada pelanggan bahwa ia harus mengembalikan mobilnya pada waktu yang ditentukan.

Langkah-langkah yang harus dilakukan dalam membuat Use Case yang dapat diambil dari artikel part 1:

1. Buat daftar proses (aktivitas) yang akan dibuatkan Use Case-nya.

· Memesan Mobil

· Konfirmasi Pesanan

· Alokasi Mobil

· Mengembalikan Mobil

· Mengirim SMS Konfirmasi

· Mengirim Peringatan Pengembalian Mobil

2. Tentukan Aktor. Beberapa aktor yang dimiliki, yaitu:

· Pelanggan

· Petugas Lapangan

· Sistem

3. Buat Use Case untuk setiap aktivitas.

4. Tentukan relasi antar Use Case.

Berikut contoh pembuatan use case untuk kasus REMO:

Use Case untuk Memesan Mobil

Use case untuk memesan mobil merupakan turunan dari proses memesan mobil yang ada pada model proses (artikel part 1). Jika membaca pada narasi kasus REMO, masukan identitas diri adalah salah satu yang tercantum dalam narasi. Oleh sebab itu, perlu dimasukkan ke dalam salah satu bagian dari use case untuk memesan mobil. Untuk hal-hal yang tidak tercantum dalam narasi, seperti pilih mobil dan pilih jadwal, namun dirasa penting untuk dimasukkan, bisa kita jadikan sebagai “asumsi” sehingga hal tersebut menjadi boleh ditambahkan. Namun, kita harus melakukan konfirmasi pada pengguna untuk setiap asumsi yang kita berikan.

Use Case untuk Mengirim SMS Konfirmasi

Untuk gambar use case di atas, hanya terdapat satu use case yang di mana aktivitasnya di-trigger oleh sistem secara otomatis dengan mengirimkan SMS yang berisi kode konfirmasi. Asosiasi aktor terhadap use case berupa tanda panah menunjukkan bahwa aktor secara langsung melakukan trigger agar use case berjalan, meskipun hal tersebut dilakukan oleh sistem.

Use Case untuk Konfirmasi Pesanan

Untuk proses konfirmasi pesanan, use case yang terbentuk hanya satu alur yaitu pelanggan memasukkan kode konfirmasi pesanan, lalu kode konfirmasi tersebut akan diverifikasi untuk dapat lanjut ke proses selanjutnya yaitu mencatat konfirmasi pesanan. Asosiasi berupa include digunakan untuk menunjukkan bahwa use case tersebut merupakan bagian dari use case lainnya, dan tidak dapat berjalan apabila use case sebelumnya tidak dilakukan. Use case yang memiliki asosiasi include namun tidak memiliki asosiasi dari aktor menunjukkan bahwa use case tersebut berjalan secara langsung setelah use case sebelumnya selesai.

Use Case untuk Alokasi Mobil

Dalam use case untuk alokasi mobil, petugas memasukkan kode pesanan yang juga include verifikasi kode pesanan. Kemudian petugas juga dapat mencatat status pesanan menjadi tersewa ketika mobil telah diserahkan kepada pelanggan. Menyerahkan surat-surat dan menyerahkan mobil juga termasuk ke dalam proses alokasi mobil, namun karena merupakan proses manual maka tidak perlu dimasukkan ke dalam use case.

Use Case untuk Mengirim Peringatan Pengembalian Mobil

Untuk proses mengirim peringatan pengembalian mobil, aktivitas di-trigger oleh sistem secara otomatis untuk mengirim SMS berisi peringatan.

Use Case untuk Mengembalikan Mobil

Use case untuk mengembalikan mobil dilakukan oleh dua aktor yaitu pelanggan dan petugas. Dalam proses ini, pelanggan dapat melakukan pengembalian mobil dan mengembalikan surat-surat. Petugas dapat melakukan pemeriksaan keadaan mobil. Apabila kondisi mobil dalam keadaan baik, maka petugas dapat meminta pelanggan untuk memasukkan kode penyelesaian. Dari aktivitas tersebut, sistem melakukan verifikasi kode penyelesaian dan secara otomatis mencatat status bahwa mobil sudah dikembalikan oleh pelanggan.

Demikian rangkaian artikel mengenai membuat model proses dan use case sederhana. Semoga bermanfaat!

Editor: AF

--

--