8385 Rabin
enkripsi n : 180577 TPP 1
Pengirim 63772
63772 RSA
enkripsi e : 73295
n : 180577 TPP 2
Penerima 123934
123934 Rabin
dekripsi p : 359
q : 503 TPP 3
Pengirim •
25164 •
120231 •
60346 •
155413 •
25164 •
120231 •
60346 •
155413 RSA
dekripsi d : 118807 -
Penerima •
132958 = 100000011101011110
• 172192 =
101010000010100000 •
8385 = 10000011000001
1000001 = 65 = A •
47619 = 1011101000000011
3.1.4 Pemodelan Sistem
Pemodelan sistem bertujuan menggambarkan peran user terhadap sistem yang akan dibangun. Beberapa pemodelan sistem yang digunakan dalam perancangan sistem
yaitu use case diagram, activity diagram dan sequence diagram.
3.1.4.1 Use Case Diagram
Use case diagram merupakan bentuk pemodelan dari sistem yang menggambarkan
functional requirement dari sistem. Menggambarkan hubungan dan interaksi antara
sistem dengan pengguna. Use case diagram dari sistem yang dibangun dapat dilihat pada Gambar 3.2
SenderReceiver Register
Register to server
include
Sing in using Google
extend include
Login to server
include
Login
extend include
Show Contact Show Chat
Room List Chat Room
Chat Encrypt Process Detail
include include
include include
Manual Simulation Logout
Send Chat
include
Generate Simulation Key
Three Pass Process Generate Key
Send Three-Pass Chat 1
Send Three-Pass Chat 2
Send Three-Pass Chat 3
include extend
extend extend
include
Receive Chat
include include
Gambar 3.2. Use case diagram
Pada use case diagram diatas terdapat dua aktor yang akan berperan menjadi user
. Sebelum dapat melakukan pengiriman pesan, penggunaharus melakukan register atau log in ke dalam sistem. Login atau register dapat dilakukan dengan menggunakan
email atau pun menggunakan akun Google pengguna. Setelah login atau register, maka penggunadapat mengggunakan aplikasi seperti mengirimkan pesan, melihat
kontak, melakukan simulasi manual dan lainnya. Dokumen naratif use case Register dapat dilihat pada Table 3.5.
Tabel 3.5. Dokumentasi Naratif Use Case Register
Nama Use Case Register
Actor PenerimaPengirim
Deskripsi Pengguna melakukan registrasi ke sistem
Basic Flow Pengguna memasukkan email dan password atau pun menggunakan
google account untuk register Alternate Flow
-
Pre-Condition Aplikasi dijalankan dan memunculkan halaman login
Typical course of Event
Kegiatan User Respon Sistem
1. Pengguna mengklik tombol
register di bawah halaman login.
2. Memasukkan email dan
password kemudian menekan tombol daftar.
3. Jika ingin menggunakan
akun google, tekan tombol sign in with google
. 1.
Aplikasi menampilkan halaman login.
2. Sistem mengirimkan email
dan password kemudian jika data valid disimpan
kedalam sistem. 3.
Sistem akan melakukan verifikasi akun google
yang terdaftar pada perangkat, kemudian
mengirimkan google token dan mendaftarkan data
tersebut ke sistem. Pasca kondisi
Pengguna masuk ke dalam sistem adan akan menampilkan halaman pengguna
Selain use case register, terdapat juga use case Show Contact dimana pada use case tersebut terdapat juga di dalamnya use case login, sign in using google dan login to
server. Untuk penjelasannya dapat dilihat pada Table 3.6.
Tabel 3.6. Dokumentasi Naratif Use Case Show Contact
Nama Use Case Show Contact
Actor PenerimaPengirim
Deskripsi Pengguna membuka tab kontak untuk mendapatkan daftar kontak
yang terdapat dalam sistem. Basic Flow
Pengguna masuk ke dalam sistem dan sistem masuk ke halam utam.
Alternate Flow -
Pre-Condition Pengguna masuk ke dalam sistem
Typical course of Eventx
Kegiatan User Respon Sistem
1. Pengguna masuk ke dalam
sistem. 2.
Pengguna memilih tab 1.
Aplikasi mengirimkan data login pengguna, jika benar
akan masuk ke dalam
contact sistem.
2. Sistem mengirimkan
request kontak ke server
dan menampilkan daftar kontak.
Pasca kondisi Ditampilkan daftar kontak
Use case show chat room list adalah proses dimana sistem akan menampilkan dafar
percakapan yang pengguna lakukan dengan pengguna lain. Untuk penjelasannya dapat dilihat pada Tabel 3.7.
Tabel 3.7. Dokumentasi Naratif Use Case Show Chat Room List
Nama Use Case Show Chat Room List
Actor PenerimaPengirim
Deskripsi Pengguna membuka tab chat untuk mendapatkan daftar chat yang
terdapat dalam sistem. Basic Flow
Pengguna masuk ke dalam sistem dan sistem masuk ke halam utama sistem.
Alternate Flow -
Pre-Condition Pengguna masuk ke dalam sistem dan sedang membuka tab kontak
Typical course of Eventx
Kegiatan User Respon Sistem
1. Pengguna masuk ke dalam
sistem. 2.
Pengguna memilih tab chat 1.
Aplikasi mengirimkan data login pengguna, jika benar
akan masuk ke dalam sistem.
2. Sistem mengambil daftar
chat yang dilakukan
pengguna di database lokal yang terdapat pada
perangkat smartphone. Pasca kondisi
Ditampilkan daftar chat
Use case chat room adalah proses dimana pengguna ingin melihat daftar pesan yang
dikirimkan dan diterima pengguna dengan pengguna lain. Proses ini hanya
menampilkan pesan yang disimpan dalam database lokal pada perangkat. Untuk penjelasannya dapat dilihat pada Tabel 3.8.
Tabel 3.8. Dokumentasi Naratif Use Case Chat Room
Nama Use Case Show Chat Room
Actor PenerimaPengirim
Deskripsi Sistem menampilkan daftar percakapan antar satu pengguna dengan
pengguna lainnya. Basic Flow
Pengguna masuk ke dalam sistem dan memilih salah satu daftar pada tab chat untuk melihat percakapan user tersebut dengan
pengguna lain yang dipilih. Alternate Flow
Pengguna memilih salah satu kontak Pre-Condition
Pengguna masuk ke dalam sistem dan memilih tab chat Typical course of
Eventx Kegiatan User
Respon Sistem 1.
Pengguna memilih tab
chat .
2. Pengguna memilih salah
satu list pada daftar chat room list
. 1.
Aplikasi menampilkan
daftar chat yang disimpan pada database.
2. Sistem menampilkan daftar
pesan pada chat room yang dipilih.
Pasca kondisi Ditampilkan daftar pesan yang dikirimkan atara pengirim dan
penerima pesan.
Use case send chat adalah proses yang terjadi pada saat pengirim mengirimkan pesan
ke pengguna lain. Pada proses ini akan terjadi pembangkita kunci untuk pengirim pesan dan dilakukan proses three-pass protocol. Untuk penjelasannya dapat dilihat
pada Tabel 3.9.
Tabel 3.9. Dokumentasi Naratif Use Case Send Chat
Nama Use Case Send Chat
Actor Pengirim
Deskripsi Penguna ingin mengirimkan pesan ke pengguna lain. Dilakukan
pada melalui halaman chat room. Basic Flow
Pengguna memasukkan pesan dan menekan tombol kirim untuk mengirimkan pesan.
Alternate Flow -
Pre-Condition Pengguna memilih salah satu chat room
Typical course of Eventx
Kegiatan User Respon Sistem
1. Pengguna memilih salah
satu chat room. 2.
Pengguna memasukan pesan
yang ingin dikirimkan dan mengklik
tombol kirim. 1.
Aplikasi menampilkan halaman chat room.
2. Sistem membangkitkan
kunci untuk pengiriman pesan. Jika kunci sudah
pernah dibangkiat, sistem akan menggunakan kunci
tersebut. Kemudian sistem melakukan proses three-
pass yang pertama . jika
pesan diterima kembali dari penerima, akan
dilakukan proses three- pass
yang ketiga. Pasca kondisi
Pesan dikirimkan ke pengguna yang dituju
Sama halnya dengan use case send chat, use case receive chat juga melakukan proses three-pass protocol
tetapi yang kedua dan terakhir, saat pesan asli akan dikembalikan. Proses ini terjadi pada background process sistem. Untuk penjelasannya dapat dilihat
pada Tabel 3.10.
Tabel 3.10. Dokumentasi Naratif Use Case Receive Chat
Nama Use Case Receive Chat
Actor Penerima
Deskripsi Sistem menerima pesan dan mengirimkan kembali pesan three-pass
yang kedua. Jika pesan yang diterima adalah pesan three-pass yang ketiga, makan sistem akan mendekripsi pesan untuk mendapatkan
pesan asli. Basic Flow
Proses ini terjadi pada background process, jika pesan asli berhasil diperoleh, akan muncul notifikasi pesan baru.
Alternate Flow -
Pre-Condition -
Typical course of Eventx
Kegiatan User Respon Sistem
- 1.
Aplikasi menerima pesan dari pengirim pesan.
2. Dilakukan pengecekan
pesan yang diterima, jika pengguna belum pernah
melakukan percakapan, sistem akan
membangkitkan kunci pengirim.
3. Jika pesan yang diterima
adalah pesan three-pass pertama, maka sistem
melakukan three-pass
kedua 4.
Jika pesan yang diterima adalah pesan three-pass
ketiga, makan sistem akan mendekripsi pesan untuk
mendapatkan pesan asli. Pasca kondisi
Ditampilkan notifikasi pesan baru
Use case manual simulasi adalah proses untuk melakukan simulasi manual proses
tree-pass protocol . Proses ini tidak melakukan prose pengiriman pesan. Untuk
penjelasannya dapat dilihat pada Tabel 3.11.
Tabel 3.11. Dokumentasi Naratif Use Case Manual Simulation
Nama Use Case Manual Simulation
Actor PenerimaPengirim
Deskripsi Proses dimana pengguna dapat melakukan simulasi manual proses
three-pass protocol yang terjadi pada sistem tanpa melakukan
pengiriman pesan. Basic Flow
Pengguna membuka halaman utama dan memilih menu simulasi manual pada daftar menu.
Alternate Flow -
Pre-Condition Sistem menampilkan halaman utama
Typical course of Eventx
Kegiatan User Respon Sistem
1. Pengguna mengklik tombol
menu pada actionbar sistem.
2. Memilih menu simulasi
manual 3.
Mengklik tombol generate key
4. Memasukkan pesan dan
mengklik tombol OK. 1.
Sistem menampilkan daftar menu.
2. Menampilkan halaman
simulasi manual 3.
Sistem membangkitkan kunci RSA dan Rabin,
kemudian ditampilkan. 4.
Sistem menerima pesan dan melakukan proses
three-pass protocol kemudian menampilkan
pesan dari tiap proses three-pass
yang dilakukan. Pasca kondisi
Ditampilkan kunci yang dibangkitkan dan pesan yang mengalami proses three-pass protocol.
Use case logout adalah proses dimana pengguna keluar dari sistem. Proses ini akan
menghapus semua data pada database lokal. Untuk penjelasannya dapat dilihat pada Tabel 3.12.
Tabel 3.12. Dokumentasi Naratif Use Case Logout
Nama Use Case Logout
Actor PenerimaPengirim
Deskripsi Proses dimana pengguna keluar dari sistem.
Basic Flow Pengguna membuka halaman utama dan memilih menu logout
pada daftar menu. Alternate Flow
- Pre-Condition
Sistem menampilkan halaman utama Typical course of
Eventx Kegiatan User
Respon Sistem 1.
Pengguna mengklik tombol menu pada actionbar
sistem. 2.
Memilih menu logout 1.
Sistem menampilkan daftar menu.
2. Mengirimkan request ke
server untuk menghapus
token pada server 3.
Seletelah request selesai, sistem menghapus
database lokal dan menampilkan halaman
login .
Pasca kondisi Ditampilkan halaman login sistem.
3.1.4.2 Activity Diagram