BAB III ANALISIS DAN PERANCANGAN
3.3 Iteration to Release Phase
3.3.3 Iterasi Pertemanan
Pada tabel 3.19 akan ditampilkan tentang hak akses dari setiap pengguna dalam use case modul pertemanan ini.
Tabel 3.19 Hak akses use case modul pertemanan
Karyawan Guru Murid Orangtua Admin
Melihat daftar teman √ √ √ √ √
Menghapus teman √ √ √ √ √
Melihat daftar permintaan teman
√ √ √ √ √
Konfirmasi pertemanan √ √ √ √ √
Meminta pertemanan √ √ √ √ √
Mencari pengguna lain √ √ √ √ √
A. Diagram Use Case Modul Pertemanan
Pada gambar 3.20 merupakan gambar dari use case pada modul pertemanan. Dalam use case ini terdapat 5 aktor, yaitu admin, guru, orangtua, murid dan guru yang memiliki sifat yang sama, kemudian digeneralisasi menjadi aktor pengguna. Selain itu juga terdapat 6 use case dalam modul pertemanan dan 5 use case lain diluar modul pertemanan yang berinteraksi dengan modul ini. 6
use case dalam modul pertemanan adalah:
a. Melihat daftar teman, pada use case ini memungkinkan aktor untuk melihat
daftar siapa saja user yang sudah menjadi temannya.
b. Menghapus teman, pada use case ini memungkinkan aktor untuk menghapus
relasi pertemanan dengan user lain.
c. Melihat daftar permintaan teman, pada use case ini memungkinkan aktor
d. Konfirmasi pertemanan, pada use case ini memungkinkan aktor untuk menerima atau menolak pertemanan yang diminta oleh user lain.
e. Meminta pertemanan, pada use case ini memungkinkan aktor untuk meminta
pertemanan pada user lain.
f. Mencari pengguna lain, pada use case ini memungkinkan aktor untuk mencari
pengguna atau user lain yang juga menggunakan social netowork ini.
Gambar 3.20 Use case modul pertemanan
B. Flow of Event Modul Pertemanan
1. Flow of events melihat daftar teman
Flow of event untuk use case melihat daftar teman dapat dilihat pada tabel
3.19.
uc Use Case Model
Pertemanan Guru Karyaw an Orangtua Murid Admin Mencari Pengguna
lain Meminta pertemanan Menghapus teman
Melihat daftar permintaan teman Melihat daftar teman
Konfirmasi pertemanan Pengguna
membuat pesan w all
Mengirim pesan Mengundang teman Tambah member group «extend» «extend» «extend» «extend» «extend» «extend» «extend» «extend»
Tabel 3.19 Flow of event melihat daftar teman
Diskripsi
Use Case Detail
Keterangan Deskripsi Use case untuk melihat daftar teman.
Tujuan Pengguna bisa melihat daftar pengguna yang telah menjadi teman
Prasyarat Login
Kondisi akhir sukses
Pengguna mengetahui siapa saja pengguna yang telah menjadi teman
Kondisi akhir gagal
Jika terjadi kesalahan koneksi database, maka proses melihat daftar teman tidak bisa dilakukan
Aktor utama Pengguna Aktor sekunder Tidak ada
Pemicu Pengguna berada pada halam profil dan memilih menu teman
Alur utama
Langkah Aktor
1
Use case dimulai ketika pengguna memilih menu
daftar teman
2
Sistem melakukan koneksi database dan menampilkan daftar teman yang dimiliki, jika tidak ada teman dalam daftar maka akan melakukan langkah 2.1, jika terjadi kesalahan dalam koneksi database maka akan melakukan langkah 2.2
Alur alternatif
Langkah Aksi percabangan
2.1
Jika tidak memiliki teman sama sekali, maka sistem akan menampilkan pesan “Tidak ada teman”
Alur Error
Langkah Aksi percabangan
2.2 Jika terjadi kesalahan dalam pengiriman data atau
koneksi data, maka akan kembali ke langkah 1
2. Flow of events menghapus teman
Flow of event untuk use case menghapus teman dapat dilihat pada tabel 3.20
Tabel 3.20 Flow of event menghapus teman
Diskripsi
Use Case Detail
Keterangan Deskripsi Use case untuk menghapus teman.
Diskripsi
Use Case Detail
Keterangan
Tujuan Pengguna bisa menghapus relasi pertemanan yang dimiliki
Prasyarat Login
Kondisi akhir sukses
Pengguna bisa menghapus teman
Kondisi akhir gagal
Jika terjadi kesalahan koneksi database, maka proses melihat daftar teman tidak bisa dilakukan
Aktor utama Pengguna Aktor sekunder Tidak ada
Pemicu Pengguna berada profil pengguna dan menekan hapus teman
Alur utama
Langkah Aktor
1
Use case dimulai ketika pengguna memilih pilihan
menghapus teman dengan memilih group yang akan dihapus
2 Sistem manmpilkan pesan ”Hapus pertemanan?”
3 Pengguna melakukan konfirmasi penghapusan
4
Jika memilih “Ok”, sistem akan melakukan koneksi
database dan akan menghapus teman yang dipilih, jika
memilih “Cancel” akan melakukan langkah 2.1. Jika
terjadi kesalahan koneksi database maka akan melakukan langkah 2.2
Alur alternatif
Langkah Aksi percabangan
2.1
Jika Menghapus komentar dibatalkan. Kembali ke langkah 1.
Aksi Error
Langkah Aksi percabangan
2.2 Jika terjadi kesalahan dalam pengiriman data atau
koneksi data, maka akan kembali ke langkah 1
3. Flow of events melihat daftar permintaan teman
Flow of event untuk use case melihat daftar permintaan teman dapat dilihat
pada tabel 3.21.
Tabel 3.21 Flow of event melihat daftar permintaan teman
Diskripsi
Use Case Detail
Keterangan
Deskripsi Use case untuk melihat daftar permintaan pertemanan
Diskripsi
Use Case Detail
Keterangan
dikirimkan oleh pengguna lain
Prasyarat Login
Kondisi akhir sukses
Pengguna bisa melihat daftar permintaan teman
Kondisi akhir gagal
Jika terjadi kesalahan koneksi database, maka proses melihat daftar permintaan teman tidak bisa dilakukan
Aktor utama Pengguna Aktor sekunder Tidak ada
Pemicu Pengguna memilih menu daftar permintaan teman
Alur utama
Langkah Aktor
1
Use case dimulai ketika pengguna memilih menu
daftar permintaan teman
2
Sistem melakukan koneksi database dan
menampilkan daftar permintaan teman. Jika tidak ada permintaan teman, maka akan melakukan langkah 2.1, dan jika terjadi kesalahan dalam koneksi makan akan melakukan langkah 2.2
Alur alternatif
Langkah Aksi percabangan
2.1
Jika tidak ada permintaan teman, maka sistem akan menampilkan pesan “Tidak ada permintaan teman”
Alur Error
Langkah Aksi percabangan
2.2 Jika terjadi kesalahan dalam pengiriman data atau
koneksi data, maka akan kembali ke langkah 1
4. Flow of events konfirmasi pertemanan
Flow of event untuk use case melihat daftar permintaan teman dapat dilihat
pada tabel 3.22.
Tabel 3.22 Flow of event konfirmasi permintaan pertemanan
Diskripsi
Use Case Detail
Keterangan
Deskripsi Use case untuk mengonfirmasi permintaan pertemanan yang telah
diajukan oleh pengguna lain
Tujuan Pengguna bisa menerima atau menolak permintaan pertemanan
Diskripsi Use Case Detail Keterangan Kondisi akhir sukses
Pengguna bisa menerima atau menolak permintaan pertemanan
Kondisi akhir gagal
Jika terjadi kesalahan koneksi database, maka proses konfirmasi permintaan teman tidak bisa dilakukan
Aktor utama Pengguna Aktor sekunder Tidak ada
Pemicu Pengguna berada pada daftar permintaan pertemanan
Alur utama
Langkah Aktor
1
Memilih pilihan merima permintaan pertemanan atau menolak pertemanan dari pengguna lain.
2
Jika memilih “Terima”, sistem akan menrima teman
dan menghapus daftar permintaan pertemanan, jika
memilih “Tolak” akan melakukan langkah 2.1, dan
jika terjadi kesalahan dalam koneksi database maka akan melakukan langkah 2.2
Alur alternatif
Langkah Aksi percabangan
1.1
Menolak penerimaan pertemanan dan akan
memperbaruhi daftar permintaan pertemanan
Alur Error
Langkah Aksi percabangan
2.2 Jika terjadi kesalahan dalam pengiriman data atau
koneksi data, maka akan kembali ke langkah 1
5. Flow of events meminta pertemanan
Flow of event untuk use case meminta pertemanan dapat dilihat pada tabel
3.23.
Tabel 3.23 Flow of event meminta pertemanan
Diskripsi
Use Case Detail
Keterangan
Deskripsi Use case untuk mengirimkan permintaan pertemanan kepada
pengguna lain.
Tujuan Pengguna bisa mengirimkan permintaan pertemanan kepada
pengguna lain
Prasyarat Login
Diskripsi
Use Case Detail
Keterangan akhir sukses pengguna lain
Kondisi akhir gagal
Jika terjadi kesalahan koneksi database, maka proses permintaan pertemanan tidak bisa dilakukan
Aktor utama Pengguna Aktor
sekunder
Tidak ada
Pemicu Pengguna berada pada kolom pencarian atau berada halaman
profil dari pengguna lain yang belum menjadi teman
Alur utama
Langkah Aktor
1 Mengklik tombol “tambah teman”
2 Menampilkan pesan konfirmasi “Menambahkan
pengguna ke list teman?”
3 Mengonfirmasi menambah pertemanan
4
Jika memilih “ya”, sistem akan mengirimkan daftar
pertemanan, jika memilih “tidak” akan melakukan
langkah 4.1, jika terjadi kesalahan dalam koneksi database maka akan melakukan langkah 4.2
Alur alternatif
Langkah Aksi percabangan
4.1
Jika tidak maka sistem tidak akan mengirimkan permintaan pertemanan
Alur Error
Langkah Aksi percabangan
4.2 Jika terjadi kesalahan dalam pengiriman data atau
koneksi data, maka akan kembali ke langkah 1
6. Flow of events mencari pengguna lain
Flow of event untuk use case mencari pengguna lain dapat dilihat pada tabel
3.24.
Tabel 3.24 Flow of event mencari pengguna lain
Diskripsi
Use Case Detail
Keterangan
Deskripsi Use case untuk mencari pengguna yang terdapat dalam social network.
Tujuan Pengguna bisa mencari pengguna lain yang yang juga
menggunakan aplikasi schoool social network
Prasyarat Login
Kondisi akhir sukses
Diskripsi Use Case Detail Keterangan Kondisi akhir gagal
Jika terjadi kesalahan koneksi database, maka mencari teman tidak bisa dilakukan Aktor utama Pengguna Aktor sekunder Tidak ada
Pemicu Aktor berada kolom search
Alur utama
Langkah Aktor
1 Pengguna berada pada kolom search dan mengetikkan nama pengguna yang ingin dicari
2
Menampilkan pengguna yang sesuai dengan keyword yang dimasukan oleh pengguna, jika keyword yang dicari tidak ditemukan maka akan melakukan langkah alternatif 1.1, dan jika terjadi kesalahan dalam koneksi database maka akan melakukan langkah 2.2
Alur Alternatif
Langkah Aksi percabangan
2.1 Menampilkan pesan “User tidak ditemukan”.
Alur Error
Langkah Aksi percabangan
2.2 Jika terjadi kesalahan dalam pengiriman data atau
koneksi data, maka akan kembali ke langkah 1
C. Sequence Modul Pertemanan
Sequence diagram untuk use case melihat daftar teman terdapat pada
gambar 3.21.
Gambar 3.21 Sequence diagram melihat daftar teman
sd Interaction
Pengguna
Teman_v iew Friend friendship
listfriend(id) getfriend(id) getfriend(id) result() :array result() :array displayListfriend()
Sequence diagram untuk use case mencari pengguna lain terdapat pada
gambar 3.22.
Gambar 3.22 Sequence diagram mencari pengguna lain teman
Sequence diagram untuk use case meminta permintaan teman terdapat
pada gambar 3.23.
Gambar 3.23 Sequence diagram meminta pertemanan
Sequence diagram untuk use case konfirmasi permintaan pertemanan
terdapat pada gambar 3.24.
sd Interaction
Pengguna
Teman_v iew Friend Users
search(name) search(name) getsearch(nama) result() :array result() :array displaysearch() sd Interaction Pengguna
teman_v iew friend friendship
addfriend(id)
addfriend(id)
Gambar 3.24 Sequence diagram konfirmasi permintaan pertemanan
D. Class Diagram Modul Pertemanan
Relasi antar class pada modul pertemanan ditunjukkan oleh gambar 3.25.
Gambar 3.25 Class diagram use case pertemanan
sd Interaction
Pengguna
teman_v iew friend friendship
alt [konfirmasi="Terima"] [konfirmasi="Tolak"] listFriendReq() displayFriendReq() konfirmasi() appvfriend(id) putFriend(id) delFriend(id) deletefriend(id)
class Class Model
Friendship - approvalstatus: int - approve_time: int - idfriend: int - send_time: int - sender: int - udi2: int - uid1: int + delfriend(int) : array + getmutual(int, int) : array + getPendingTeman(int) : array + getPermintaanTeman(int) : array + postnewfriend(int) : array + putfriend(int) : array Teman + addfriend() : array + appvfriend() : array + delfriend() : array + friendreq() : array + search() : array Users - avatar: char - iduser: int - nama: int - password: username - usertype: char + getSearch(char) : array + getUser() : array teman_v iew - avatar: string - uid: int - uname: int - utype: char + addfriend() : void + konfirmasi() : void + listfriend() : void + search() : void
E. Desain Interface Modul Pertemanan
Untuk mempermudah pencarian teman dan hubungan pertemanan maka disediakan fitur search pada aplikasi social network for school ini, desain interface halaman pencarian terdapat pada gambar 3.26
Gambar 3.26 Desain interface halaman pencarian
F. Unit Testing Modul Pertemanan
Desain uji coba modul pertemanan untuk menguji apakah fungsi melakukan modul pertemanan dapat berjalan sesuai yang diharapkan. Desain uji coba modul pertemanan dapat dilihat pada tabel 3.25.
Tabel 3.25 Uji coba pertemanan
Test Case ID
Tujuan Input Output yang
diharapkan User
Stories
Status
1 Mencari
pengguna Nama pengguna
Sistem menampilkan daftar teman yang sesuai dengan pencarian T21 Sukses, dibuktikan pada gambar 3.27
Test Case ID
Tujuan Input Output yang
diharapkan User Stories Status 2 Meminta pertemanan Pengguna menekan tombol “Tambah sebagai teman” Tombol berubah menjadi “Pending” T20 Sukses, dibuktikan pada gambar 3.28 3 Hapus pertemanan Pengguna menekan tombol “Hapus Pertemanan” Tombol berubah menjadi “Tambah sebagai teman” T17 Sukses, dibuktikan pada gambar 3.29 4 Konfirmasi pertemanan Pengguna menekan tombol “terima” atau “tolak” Status pertemanan berubah T19 Sukses, dibuktikan pada gambar 3.30
Output unit testing pada class Friendtest adalah melakukan testing pada class Teman, Friendship dan Users. Output Unit testing ditunjukkan pada tabel 3.26
Tabel 3.26 Output unit tes class friendtest
No Tes Status
1 advancesearch_test Passed
2 friendreq_test Passed
3 delfriend_test Passed
4 addfriend_test Passed
Gambar 3.28 Unit test meminta pertemanan
Gambar 3.29 Unit test hapus pertemanan
Gambar 3.30 Unit test konfirmasi pertemanan