LEMBAR PENGESAHAN
Batam, 22 Februari 2006
Pembimbing I,
Hilda Widyastuti, ST
NIK. 102020
Pembimbing II,
Ari Wibowo, ST
NIK. 100012
Abstraksi
Prototipe Sistem Laboratorium Bahasa
Prototipe Sistem Laboratorium Bahasa adalah suatu aplikasi yang dikembangkan dengan menggunakan bahasa pemrograman Java. Untuk menjalankan aplikasi, sebaiknya menggunakan JRE 1.4.2_04. Sifat dari aplikasi ini adalah client-server. Selain menggunakan Java, aplikasi ini juga terhubung dengan database MySQL yang harus tersedia dikomputer server. Pada saat pengembangan, versi MySQL yang digunakan adalah MySQL 3.23.47-nt.
Aplikasi ini menangani pengelolaan data user, pengelolaan kondisi bicara, tampil pengguna komputer, dan tentu saja pengelolaan untuk login dan tampil menu untuk server dan client.
Kata Pengantar
Puji dan Syukur kehadirat Tuhan Yang Maha Esa penulis ucapkan, karena atas berkat dan rahmatNya, penulis selaku peserta Tugas Akhir APL-0506-3.4 dapat menyelesaikan Laporan Tugas Akhir “Prototipe Sistem Laboratorum Bahasa”.
Prototipe Sistem Laboratorum Bahasa ini merupakan suatu aplikasi yang dikembangkan dengan menggunakan bahasa pemrograman Java. Sifat dari aplikasi ini adalah client-server dan server terhubung dengan database MySQL.
Penulis juga mengucapkan terima kasih kepada pihak – pihak yang telah turut berpartisipasi dalam proses penyusunan dan memberikan saran konstruktif dalam proses penyempurnaan Laporan dan Pembuatan Aplikasi ini. Penulis mengucapkan terima kasih atas bimbingan, bantuan dan dukungan kepada yang terhormat :
1. Bapak Dr. Ir. Priyono Eko Sanyoto selaku Direktur Politeknik Batam. 2. Bapak Uuf Brajawidagda, ST selaku Koordinator Tugas Akhir.
3. Ibu Hilda Widyastuti, ST selaku Dosen Pembimbing I yang telah membantu dalam memberikan bimbingan, ide, saran, penjelasan, tutorial dan lainnya.
4. Bapak Ari Wibowo, ST selaku Dosen Pembimbing II yang telah membantu dalam memberikan bimbingan, ide, saran, penjelasan, dan lainnya.
5. Bapak Basuki Winoto, ST selaku Ketua Program Studi Aplikasi Perangkat Lunak yang telah membantu dalam memberikan bimbingan, ide, saran, penjelasan, dukungan, tutorial, dan lainnya.
6. Seluruh dosen APL yang telah memberikan ide dan saran konstruktif untuk Prototipe Sistem Laboratorium Bahasa.
7. Teman-teman yang telah memberikan dukungan semangat dan moral, khususnya Siska (APL 03) yang telah bersedia bersama-sama mengerjakan TA hingga malam hari sampai selesai, teman-teman Program Khusus, yaitu Weldy Sujarmanto, Franciska Irma Romida, M. Taufik Hidayat, Isabela Setia Handayani, Giantoro Rudiman, dan Arifin (APL 03) terima kasih atas ide-ide kreatifnya untuk perkembangan Prototipe Sistem Laboratorium Bahasa ini, serta teman-teman seperjuangan APL 2003 yang tak mungkin penulis ucapkan satu persatu, terima kasih untuk semuanya.
Penulis juga menyadari masih banyak kekurangan di dalam penyusunan laporan dan pembuatan Prototipe Sistem Laboratorium Bahasa ini. Oleh karena itu, segala saran dan kritik yang bersifat membangun sangat diharapkan oleh penulis untuk revisi di masa yang akan datang.
Batam, 22 Februari 2006
DAFTAR ISI
ABSTRAKSI ...II KATA PENGANTAR ...III DAFTAR ISI... IV DAFTAR TABEL ...VII DAFTAR GAMBAR ... VIII
BAB 1 PENDAHULUAN...1
1.1 LATAR BELAKANG...1
1.2 TUJUAN...1
1.3 BATASAN MASALAH...1
1.4 IKHTISAR BUKU...2
BAB 2 DESKRIPSI UMUM SISTEM...3
2.1 DESKRIPSI UMUM SISTEM...3
2.2 KARAKTERISTIK PENGGUNA...3
2.3 BATASAN...4
2.4 LINGKUNGAN OPERASI DAN PENGEMBANGAN...4
2.4.1 Lingkungan Operasional...4 2.4.2 Lingkungan pengembangan ...5 2.5 ATURAN PENOMORAN...5 BAB 3 ANALISIS ...6 3.1 DESKRIPSI FUNGSIONAL...6 3.1.1 Context Diagram ...6
3.2 ANALISIS KEBUTUHAN DATA...8
3.2.1 E-R diagram ...8
BAB 4 DESKRIPSI PERANCANGAN...9
4.1 DESKRIPSI DATA...9
4.1.1 Definisi Domain / Type ...9
4.1.2 Daftar Tabel Aplikasi ...9
4.2 DEKOMPOSISI FUNGSIONAL MODUL...10
4.3 SPESIFIKASI KEBERGANTUNGAN ANTAR LAYAR...11
4.4 STRUKTUR MENU...11
BAB 5 IMPLEMENTASI DAN PENGUJIAN...12
5.1 SPESIFIKASI KEBERGANTUNGAN ANTAR MODUL...12
5.2 STRUKTUR DIREKTORI DAN DESKRIPSI FILE...12
5.3 PENGUJIAN DAN HASILNYA...12
BAB 6 KESIMPULAN DAN SARAN ...13
6.1 KESIMPULAN...13
6.2 SARAN...13
LAMPIRAN A PERANCANGAN RINCI TABEL...14
A.1 SPESIFIKASI TABEL T_USER...14
A.2 SPESIFIKASI TABEL T_KOMPUTER...14
LAMPIRAN B PERANCANGAN RINCI FUNGSIONAL...15
B.1.SPESIFIKASI FUNGSI/PROSES 1...15
B.1.1. Spesifikasi Tabel Input ...15
B.1.2. Spesifikasi Table Output...15
B.1.4. Spesifikasi Query ...15
B.1.5. Spesifikasi Field Data Pada Layar ...16
B.1.6. Spesifikasi Function Key/Objek-Objek Pada Layar...16
B.1.7. Spesifikasi Layar Pesan...16
B.1.8. Spesifikasi Proses/Algoritma ...16
B.1.9. Spesifikasi Report ...16
B.2.SPESIFIKASI FUNGSI/PROSES 2...17
B.2.1. Spesifikasi Tabel Input ...17
B.2.2. Spesifikasi Table Output...17
B.2.3. Spesifikasi Layar Utama ...17
B.2.4. Spesifikasi Query ...18
B.2.5. Spesifikasi Field Data Pada Layar ...18
B.2.6. Spesifikasi Function Key/Objek-Objek Pada Layar...18
B.2.7. Spesifikasi Layar Pesan...18
B.2.8. Spesifikasi Proses/Algoritma ...18
B.2.9. Spesifikasi Report ...18
B.3.SPESIFIKASI FUNGSI/PROSES 3.2...19
B.3.1. Spesifikasi Tabel Input ...19
B.3.2. Spesifikasi Table Output...19
B.3.3. Spesifikasi Layar Utama ...19
B.3.4. Spesifikasi Query ...19
B.3.5. Spesifikasi Field Data Pada Layar ...19
B.3.6. Spesifikasi Function Key/Objek-Objek Pada Layar...20
B.3.7. Spesifikasi Layar Pesan...20
B.3.8. Spesifikasi Proses/Algoritma ...20
B.3.9. Spesifikasi Report ...20
B.4.SPESIFIKASI FUNGSI/PROSES 3.3...21
B.4.1. Spesifikasi Tabel Input ...21
B.4.2. Spesifikasi Table Output...21
B.4.3. Spesifikasi Layar Utama ...21
B.4.4. Spesifikasi Query ...22
B.4.5. Spesifikasi Field Data Pada Layar ...22
B.4.6. Spesifikasi Function Key/Objek-Objek Pada Layar...22
B.4.7. Spesifikasi Layar Pesan...22
B.4.8. Spesifikasi Proses/Algoritma ...22
B.4.9. Spesifikasi Report ...23
B.5.SPESIFIKASI FUNGSI/PROSES 3.4...24
B.5.1. Spesifikasi Tabel Input ...24
B.5.2. Spesifikasi Table Output...24
B.5.3. Spesifikasi Layar Utama ...24
B.5.4. Spesifikasi Query ...24
B.5.5. Spesifikasi Field Data Pada Layar ...24
B.5.6. Spesifikasi Function Key/Objek-Objek Pada Layar...24
B.5.7. Spesifikasi Layar Pesan...25
B.5.8. Spesifikasi Proses/Algoritma ...25
B.5.9. Spesifikasi Report ...25
B.6.SPESIFIKASI FUNGSI/PROSES 3.5 DAN PROSES 3.6 ...26
B.6.1. Spesifikasi Tabel Input ...26
B.6.2. Spesifikasi Table Output...26
B.6.3. Spesifikasi Layar Utama ...26
B.6.4. Spesifikasi Query ...26
B.6.5. Spesifikasi Field Data Pada Layar ...27
B.6.6. Spesifikasi Function Key/Objek-Objek Pada Layar...27
B.6.7. Spesifikasi Layar Pesan...27
B.6.8. Spesifikasi Proses/Algoritma ...27
B.6.9. Spesifikasi Report ...27
B.7.SPESIFIKASI FUNGSI/PROSES 4.2 DAN 4.3...28
B.7.1. Spesifikasi Tabel Input ...28
B.7.2. Spesifikasi Table Output...28
B.7.4. Spesifikasi Query ...29
B.7.5. Spesifikasi Field Data Pada Layar ...29
B.7.6. Spesifikasi Function Key/Objek-Objek Pada Layar...29
B.7.7. Spesifikasi Layar Pesan...29
B.7.8. Spesifikasi Proses/Algoritma ...29
B.7.9. Spesifikasi Report ...30
B.8SPESIFIKASI FUNGSI/PROSES 5...31
B.8.1. Spesifikasi Tabel Input ...31
B.8.2. Spesifikasi Table Output...31
B.8.3. Spesifikasi Layar Utama ...31
B.8.4. Spesifikasi Query ...31
B.8.5. Spesifikasi Field Data Pada Layar ...31
B.8.6. Spesifikasi Function Key/Objek-Objek Pada Layar...31
B.8.7. Spesifikasi Layar Pesan...31
B.8.8. Spesifikasi Proses/Algoritma ...32
B.8.9. Spesifikasi Report ...32
LAMPIRAN C DAFTAR RINCI FILE DAN DATA...33
C.1. STRUKTUR DIREKTORI...33
C.1.1. Direktori Pengembangan ...33
C.1.2. Direktori Operasional ...33
C.2. ISI DIREKTORI...34
C.3. FILE INSTALASI...35
LAMPIRAN D DOKUMEN RINCI TESTING...36
D.1. TIM PENGUJI...36
D.2. HASIL RINCI PENGUJIAN...36
LAMPIRAN E METODE PENANGANAN SUARA DENGAN JAVA ...41
DAFTAR TABEL
TABEL 2.2.1KATEGORI PENGGUNA SISTEM LABORATORIUM BAHASA...4
TABEL 4.1DESKRIPSI DATA...9
TABEL 4.2DAFTAR TABEL BASISDATA SISTEM LABORATORIUM BAHASA...9
TABEL 4.3INPUT-PROSES-OUTPUT SISTEM LABORATORIUM BAHASA...10
DAFTAR GAMBAR
GAMBAR 2.1DESKRIPSI UMUM SISTEM LABORATORIUM BAHASA...3
GAMBAR 3.1CONTEX DIAGRAM...6
GAMBAR 3.2DFDLEVEL 1SISTEM LABORATORIUM BAHASA...7
GAMBAR 3.4DFDLEVEL 2PENGELOLAAN DATA USER...7
GAMBAR 3.5DFDLEVEL 2PENGELOLAAN KONDISI BICARA...8
GAMBAR 3.6E-RDIAGRAM...8
GAMBAR 4.1KEBERGANTUNGAN ANTAR LAYAR...11
GAMBAR 4.2FORM LOGIN –SERVER DAN CLIENT...15
GAMBAR 4.3FORM TAMPIL MENU -SERVER...17
GAMBAR 4.4FORM TAMPIL MENU-CLIENT...17
GAMBAR 4.5FORM PENAMBAHAN DATA USER -SERVER...19
GAMBAR 4.6FORM UBAH DATA USER - SERVER...21
GAMBAR 4.7FORM UBAH PASSWORD DATA USER - CLIENT...21
GAMBAR 4.8FORM HAPUS DATA USER - SERVER...24
GAMBAR 4.9FORM CARI DAN LIHAT DATA USER –SERVER...26
GAMBAR 4.10FORM LIHAT DATA USER –CLIENT...26
GAMBAR 4.11FORM LET'S TALK –SERVER...28
GAMBAR 4.12FORM REQUEST UNTUK BICARA -CLIENT...29
Bab 1 Pendahuluan
1.1 Latar
Belakang
Laboratorium bahasa adalah salah satu bagian dari sarana dan prasarana yang ada dalam sebuah institusi pendidikan. Biasanya laboratorium ini digunakan untuk mendukung proses belajar mengajar di pelajaran Bahasa Inggris. Dalam proses belajar, peserta didik dan pengajar menggunakan headset, tape ricorder untuk masing-masing peserta didik dan ada sebuah alat pengontorol yang digunakan oleh pengajar. Peralatan ini begitu spesifik dan hanya bisa digunakan di laboratorium bahasa saja. Sehingga apabila akan diadakan penambahan unit perangkat untuk laboratorium bahasa, maka pihak institusi pendidikan perlu melakukan pembelian perangkat tersebut kembali.
Untuk mengatasi hal tersebut diatas, apabila sebuah institusi pendidikan telah memiliki laboratorium komputer, maka laboratorium tersebut bisa dimultifungsikan sebagai laboratorium komputer dan juga laboratorium bahasa.
Alternatif laboratorium bahasa tersebut cukup diwujudkan dengan laboratorium komputer yang dilengkapi dengan sistem yang fungsinya mirip laboratorium bahasa.
1.2 Tujuan
Membangun sebuah sistem laboratorium bahasa yang memiliki tujuan-tujuan sebagai berikut : 1. Memultifungsikan penggunaan laboratorium komputer menjadi laboratorium bahasa.
2. Penambahan unit untuk perangkat laboratorium komputer yang akan dimultifungsikan, menjadi lebih mudah karena tidak memerlukan perangkat yang spesifik.
Dengan adanya tujuan-tujuan yang telah disebutkan diatas, diharapkan penggunaan laboratorium bahasa dapat lebih dimaksimalkan lagi. Selain itu juga, diharapkan pengguna dari laboratorium bahasa ini dapat lebih mengenal (lebih familiar) dengan jenis perangkat laboratorium yang digunakan.
1.3 Batasan Masalah
Membangun sebuah sistem laboratorium bahasa berbasis komputer, yang memiliki cakupan informasi yang akan ditangani yaitu :
1. Sistem ini menangani komunikasi dari server ke client, client ke server dan client ke client. 2. Server dapat melakukan broadcast ke semua client atau hanya ke client tertentu saja.
3. Client dapat saling berkomunikasi dengan client yang lain atau server apabila server mengizinkannya.
4. Kontrol sepenuhnya berada di server.
5. Untuk proses perekaman (record) tidak ditangani dalam sistem ini. 6. Client yang dapat terhubung ke server hanya 35 client saja.
Dengan begitu, sistem laboratorium bahasa ini akan difokuskan pembuatannya pada proses percakapan antara server dan client, client dan server atau dari client ke client.
1.4 Ikhtisar
Buku
1. Bab 1 Pendahuluan yang terdiri dari latar belakang pembuatan sistem, tujuan pembuatan sistem, batasan masalah dalam sistem, dan iktisar buku yang merupakan deskripsi umum setiap Bab. 2. Bab 2 Deskripsi Umum Sistem yang terdiri dari deskripsi umum sistem yaitu gambaran secara
umum tentang proses sistem, karakteristik pengguna sistem, batasan yaitu ketergantungan sistem dengan software atau hardware lain, serta lingkungan pengembangan operasional sistem sistem.
3. Bab 3 Analisis yang terdiri dari deskripsi fungsional yaitu penjelasan kontext diagram sistem, analisis kebutuhan data yaitu berupa diagram Entity Relationship.
4. Bab 4 Deskripsi Perancangan yang terdiri dari deskripsi data tabel-tabel basisdata, dekomposisi fungsional modul misalnya untuk proses-proses yang mewakili suatu library umum, spesifikasi kebergantungan antarlayar dan struktur menu.
5. Bab 5 Implementasi dan Pengujian yang terdiri dari penjelasan spesifikasi kebergantungan antarmodul, struktur direktori dan deskripsi file, pengujian dan hasil berupa keterangan singkat mengenai rancangan dan pelaksanaan pengujian.
6.
Bab 6 Kesimpulan dan Saran yang berisi kesimpulan mengenai sistem yang dibuat dan saran perbaikan / penyempurnaan / ide yang dapat dilakukan terhadap sistem.Bab 2 Deskripsi Umum Sistem
2.1 Deskripsi Umum Sistem
Gambar 2. 1 Deskripsi Umum Sistem Laboratorium Bahasa
Sistem ini terdiri dari server dan client. Server dapat melakukan komunikasi dengan client yang diinginkan olehnya melalui IP address yang dimiliki oleh client tersebut atau server dapat melakukan broadcast ke semua client, sehingga client dapat mendengarkan suara dari user di server. Komunikasi yang bisa dilakukan tidak hanya dari server ke client, tetapi juga bisa dari client ke server atau dari client ke client.
Ada dua jenis komunikasi yang dapat dilakukan, yaitu :
1. Kondisi komunikasi all. Menandakan bahwa, server menginginkan agar semua client dan server dapat mendengarkan semua pembicaraan yang terjadi.
2. Kondisi komunikasi individual. Menandakan bahwa, server menginginkan agar percakapan
tersebut hanya didengarkan oleh server dan client tertentu. Misalnya yang sedang berkomunikasi hanya antara server dan client A, maka yang bisa mendengar dan melakukan percakapan hanya server dan client A saja.
2.2 Karakteristik
Pengguna
Pengguna sistem laboratorium bahasa ini nantinya adalah pengajar dan para peserta didik yang memiliki spesifikasi hak akses sebagai berikut :
Tabel 2.2. 1 Kategori Pengguna Sistem Laboratorium Bahasa
Kategori
Pengguna
Tugas Hak
sistem
Akses
ke
Jabatan
Administrator Melakukan
pengontrolan
terhadap sistem
Memberikan izin
kepada client yang
ingin berbicara, bisa
menentukan jenis
kondisi komunikasi
mana yang akan
dipilih dan bisa
menentukan dengan
client mana ia akan
berbicara
Pengajar
User Melakukan
permintaan
request untuk
berkomunikasi
Melakukan permintaan
request ke server jika
ingin berbicara dan
melakukan
komunikasi
(percakapan) jika
server menunjuknya
Peserta Didik
2.3 Batasan
a.
Dikembangkan dengan aplikasi NetBeans IDE 4.1 beserta JRE 1.4.2_04.
b.
Basis data yang digunakan adalah MySQL 3.23.47-nt
c.
Menggunakan driver JDBC (Java Database Connectivity) mm.mysql-2.0.4-bin.jar.
d.
Perangkat menggunakan sistem client dan server.
2.4 Lingkungan
Operasi
dan Pengembangan
Lingkungan operasi dibagi dalam 2 bagian yaitu :
a.
Lingkungan operasional, dan
b.
Lingkungan pengembangan
2.4.1 Lingkungan Operasional
Client
:
a. Prosesor
: Intel Pentium III atau spesifikasi yang lebih tinggi
b. kebutuhan memori utama minimal
: 128 Mb
c. Operating sistem
: Ms Windows 98 keatas
d. Program/utilities lain
: JRE 1.4.2_04
e. Perangkat lain yang dibutuhkan
: Sound card, microphone
Server :
a. Prosesor
: Intel Pentium III atau spesifikasi yang lebih tinggi
b. kebutuhan memori utama minimal
: 128 Mb
c. Operating sistem
: Ms Windows 98 keatas
d. DBMS
:
MySQL
3.23.47-nt
e. JDBC
:
mm.mysql-2.0.4-bin.jar
f. Program/utilities lain
: JRE 1.4.2_04
2.4.2 Lingkungan pengembangan
Client :
a. Prosesor
:
Pentium
IV
b. Kebutuhan memori utama minimal
: 256 Mb
c. Operating sistem
: Ms Windows XP Profesional
d. Program/utilities lain
: JDK1.4.2
e. Perangkat lain yang dibutuhkan
: Sound card, microphone
Server :
a. Prosesor
:
Pentium
IV
b. Kebutuhan memori utama minimal
: 256 Mb
c. Operating sistem
: Ms Windows XP Profesional
d. DBMS
:
MySQL
3.23.47-nt
e. JDBC
:
mm.mysql-2.0.4-bin.jar
f. Program/utilities lain
: JDK1.4.2
g. Perangkat lain yang dibutuhkan
: Sound card, microphone
2.5 Aturan
Penomoran
a.
Penamaan button dimulai dengan inisial “Button” dan diikuti dengan nama Button.
b.
Penamaan textbox dimulai dengan inisial “Field” dan diikuti dengan nama Textbox.
c.
Penamaan textarea dimulai dengan inisial “Field” dan diikuti dengan nama Textarea.
d.
Penamaan tabel dimulai dengan inisial “Tabel” dan diikuti dengan nama Tabel.
e.
Penamaan gambar dimulai dengan inisial “g” dan diikuti dengan nama Gambar.
APL-0506-3.4 Sistem Laboratorium Bahasa Berbasis Komputer 1
Bab 3 Analisis
3.1 Deskripsi
Fungsional
Sistem laboratorium bahasa ini berfungsi untuk memultifungsikan laboratorium komputer, juga sebagai laboratorium bahasa. Selain itu juga mencoba memberikan alternatif perangkat untuk laboratorium bahasa, dari perangkat yang begitu spesifik menjadi perangkat yang lebih dikenal lagi oleh pengguna dari laboratorium bahasa ini. Pengguna dari sistem ini adalah pengajar (guru atau dosen) dan para peserta didik. Berikut adalah pembagian kerja yang dapat dilakukan oleh masing-masing pengguna, yaitu :
a. Pengajar : memberikan izin kepada client yang ingin berbicara, menentukan jenis kondisi
komunikasi mana yang akan dipilih (kondisi all atau individual) dan menentukan dengan client mana ia akan berbicara.
b. Peserta didik : melakukan request ke pengajar jika ingin berbicara dan melakukan komunikasi (percakapan) jika pengajar menunjuknya.
3.1.1 Context Diagram
User yang berperan penting pada sistem ini adalah user yang memiliki aliran data berupa id user, password dan hak akses (info data user). Sehingga dengan adanya aliran data tersebut dapat ditentukan otoritas penggunaan yang bisa diakses oleh user tersebut. Selanjutnya sistem ini akan memberikan data keluaran berupa hasil pemrosesan dari semua proses yang ada didalam sistem laboratorium bahasa ini.
Gambar 3. 1 Contex Diagram
3.1.1.1 DFD Level 1
Ada 5 proses utama dalam sistem ini, yaitu verifikasi dan validasi user, tampil menu untuk server dan client, pengelolaan data user, pengelolaan kondisi bicara dan tampil data pengguna komputer. DFD level 1 untuk Sistem Laboratorium Bahasa dapat dilihat di bawah ini.
APL-0506-3.4 Sistem Laboratorium Bahasa Berbasis Komputer 2
Gambar 3. 2 DFD Level 1 Sistem Laboratorium Bahasa
3.1.1.2 DFD Level 2
Proses yang dilakukan pada level ini adalah melakukan pengelolaan terhadap data user yang akan menggunakan sistem ini. Selanjutnya didalam proses ini juga terdapat pembagian jenis kondisi bicara yang dapat dipilih oleh administrator, yaitu kondisi komunikasi all atau individual. Berikut adalah proses DFD level 2, yaitu :
a. Pengelolaan Data User
APL-0506-3.4 Sistem Laboratorium Bahasa Berbasis Komputer 3
1.
Masukan : info data user
2.
Keluaran : hasil pemrosesan.
3.
Deskripsi proses : user memasukkan data pada sistem. Sistem akan melakukan proses sesuai dengan
yang diinginkan user.
b.
Pengelolaan Kondisi Bicara
Gambar 3. 4 DFD Level 2 Pengelolaan Kondisi Bicara
1.
Masukan : kondisi dengar, suara, request bicara, allow bicara dan stop bicara.
2.
Keluaran : tanda bicara dan suara
3.
Deskripsi proses : user memasukkan data pada sistem. Sistem akan melakukan proses sesuai dengan
yang diinginkan user.
3.2 Analisis
Kebutuhan Data
Sistem Laboratorium Bahasa ini memiliki beberapa tabel untuk melakukan penyimpanan terhadap data user
dan data komputer. E-R pada sistem ini memiliki 2 entitas, yaitu entitas user dan entitas komputer. E-R ini
juga memiliki relationship yang bernama menggunakan.
3.2.1 E-R diagram
Bab 4 Deskripsi Perancangan
4.1 Deskripsi
Data
Tabel 4. 1 Deskripsi Data
Nama Tabel
Deskripsi
Jenis
Volume
Laju
Primary
Key
Contraint
Integrity
t_user Data
user
pengguna dari
sistem ini
Master
± 270
record
± 300 record per
tahun
id_user -
t_komputer Data
komputer
yang digunakan
oleh user
Master
± 30
record
± 30 record per sesi
mata pelajaran
Bahasa Inggris
IP id_user
foreign
key terhadap
t_user
Deskripsi rincian tabel secara lengkapnya ada pada lampiran A.
4.1.1 Definisi Domain / Type
Tidak ada.
4.1.2 Daftar Tabel Aplikasi
Tabel 4. 2 Daftar Tabel Basisdata Sistem Laboratorium Bahasa
No Nama
Tabel
Primary
key
Data Store
E/R
Deskripsi isi
1 T_user
id_user
Berisi data user
yang akan
menggunakan
sistem ini
2 T_komputer IP
Berisi data
komputer yang
ditempati oleh
user
4.2 Dekomposisi
Fungsional Modul
Tabel 4. 3 Input-Proses-Output Sistem Laboratorium Bahasa
No No.
Fungsi
Fungsi/Proses Tabel
Input
Data Input
Tabel
Output
Data output
Keterangan
1 1
Verifikasi
dan
validasi user
t_user id_user,
password,
hak_akses, IP
t_kompu
ter
nama,
hak_akses,
IP,
waktu_login
-
2 2
Tampil
menu
untuk server
dan client
t_user,
t_kompu
ter
id_user, password,
hak_akses, IP
- tampil
menu
-
3 3.2
Tambah
data
user
- id_user,
password,
nama,
hak_akses
t_user
id_user,
nama,
password,
hak_akses
-
4
3.3
Ubah data user
t_user
id_user, nama,
password,
hak_akses
t_user
nama,
password,
hak_akses
-
5
3.4
Hapus data user t_user
id_user
t_user
-
-
6
3.5
Lihat data user
t_user
Pilihan menu
-
id_user,
nama,
password,
hak_akses
-
7
3.6
Cari data user
t_user
id_user, nama,
password,
hak_akses
- id_user,
nama,
password,
hak_akses
-
8 4.2
Kondisi
bicara
dengan status
komunikasi
ALL
- kondisi
dengar,
suara, request
bicara, allow bicara,
stop bicara
- tanda
bicara,
suara
-
9. 4.3
Kondisi
bicara
dengan status
komunikasi
INDIVIDUAL
- kondisi
dengar,
suara, request
bicara, allow bicara,
stop bicara
- tanda
bicara,
suara
-
10. 5
Tampil
data
pengguna
komputer
t_user,
t_kompu
ter
id_user, IP
-
nama user,
IP, waktu
login, waktu
logout dan
lama pakai
4.3 Spesifikasi
Kebergantungan Antar Layar
Gambar 4. 1 Kebergantungan Antar Layar
Tampilan utama sistem ini adalah layar login. Jika login berhasil, akan muncul form menu untuk client dan
server di sisi client dan server. Kemudian server dapat melakukan proses selanjutnya untuk pengelolaan
data user dan pengelolaan kondisi bicara serta tampil data pengguna komputer. Di layar pengelolaan
kondisi bicara ini, server melakukan proses untuk memperbolehkan client berbicara dan memberhentikan
client bicara dengan status komunikasi all atau individual. Sedangkan client hanya melakukan request
kepada server agar diperbolehkan untuk bicara pada layar pengelolaan kondisi bicara ini.
4.4 Struktur
Menu
Berikut adalah struktur pengolahan pilihan menu :
a. Disisi Server
Sistem Laboratorium Bahasa
Masuk--- menu Online
--- menu Pengelolaan Data user ---- Tambah Data User ---- Ubah Data User ---- Hapus Data User ---- Lihat Data User
--- menu Pengelolaan Kondisi Bicara ---- Pilihan kondisi komunikasi All
---- Pilihan kondisi komunikasi INDIVIDUAL Keluar
b. Disisi Client
Sistem Laboratorium Bahasa
Masuk--- menu Pengelolaan Data user ---- Tambah Data User ---- Ubah Data User ---- Lihat Data User
--- menu Pengelolaan Kondisi Bicara Keluar
Bab 5 Implementasi dan Pengujian
5.1 Spesifikasi
Kebergantungan Antar Modul
Tidak ada
5.2 Struktur
Direktori dan Deskripsi File
Tabel 5. 1 Daftar Direktori dan file Sistem Laboratorium Bahasa
Nama
Direktori
Nama
Subdirektori
Nama File
Nama
Modul
Nama
Fungsi
Keterangan
- login_aplikasi.java
-
1
Sebuah file yang terdiri 1 fungsi
(untuk client dan server)
- welcome_server.java -
2, 3, 4, 5
Sebuah file yang terdiri 4 fungsi
besar yang terdiri dari tampil
menu untuk server, pengelolaan
data user, pengelolaan kondisi
bicara, dan tampil data pengguna
komputer. Beberapa dari fungsi
ini jika di breakdown, akan berisi
fungsi lagi yaitu :
Pengelolaan data user : berisi
fungsi tambah, ubah, hapus,
lihat, dan cari data user.
Pengelolaan kondisi bicara :
berisi fungsi kondisi bicara
dengan status komunikasi ALL
dan berisi fungsi kondisi bicara
dengan status komunikasi
INDIVIDUAL
Æ disisi server
LabBahasa\src\l
abbahasa
- welcome_client.java -
2, 3, 4
Sebuah file yang terdiri 3 fungsi
besar yang terdiri dari tampil
menu client, pengelolaan data
user, dan pengelolaan kondisi
bicara. Beberapa dari fungsi ini
jika di breakdown, akan berisi
fungsi lagi yaitu :
Pengelolaan data user : berisi
fungsi ubah dan lihat data user.
Pengelolaan kondisi bicara :
berisi fungsi untuk melakukan
request ke server, jika ingin
berbicara/berkomunikasi.
Æ disisi client
Daftar rinci direktori dan file aplikasi ada pada Lampiran C.
5.3 Pengujian
dan
Hasilnya
Implementasi yang dilakukan tidak semuanya sesuai dengan deskripsi perancangan. Untuk rincian tabel
pelaksanaan dan hasil pengujian dapat dilihat pada lampiran D.
Kesimpulan dan Saran
6.1 Kesimpulan
Dari proses pembuatan Sistem Laboratorium Bahasa yang telah dilakukan, maka dapat ditarik
kesimpulan bahwa :
1.
Fungsi-fungsi dari Sistem Laboratorium Bahasa ini melakukan koneksi dengan database
MySql di sebuah komputer yang nantinya akan dijadikan server (di salah satu komputer
yang terdapat di dalam laboratorium komputer) untuk melakukan proses penyimpanan data,
pengubahan, penghapusan dan pencarian data.
2.
Sistem Laboratorium Bahasa ini juga terhubung ke jaringan LAN, karena Sistem ini
bersifat client – server.
3.
Fitur-fitur yang dapat diimplementasikan saat ini adalah fitur-fitur pendukung dari server
seperti login, tampil menu untuk server dan client, pengelolaan data user, dan tampil
pengguna komputer. Untuk pengelolaan kondisi bicara masih dalam tahap pengembangan.
4.
fitur-fitur yang belum dapat diimplementasikan adalah pengelolaan kondisi bicara di sisi
client dan server.
6.2 Saran
Adapun saran untuk pengembangan Sistem Laboratorium Bahasa, antara lain :
1.
Diharapkan dalam pengembangan Sistem Laboratorium Bahasa selanjutnya, memiliki
interface yang lebih baik lagi. Terutama di bagian proses Pengelolaan Kondisi Bicara.
2.
Bisa menambahkan fungsi-fungsi lain yang belum dapat diimplementasikan, seperti
merekam suara.
Lampiran A Perancangan Rinci Tabel
A.1 Spesifikasi
Tabel t_user
Nama tabel
: t_user
Deskripsi isi
: Data induk peserta didik
Primary Key
: id_user
Volume
:
± 270 record
Perkiraan Laju : ± 300 record per tahun
Daftar Field
Nama field
Deskripsi Isi
Type & Length
NULL
Boleh
Default Keterangan
lain
id_user
Berisi nomor atau
kode tanda pengenal
user
Varchar(255) Tidak -
PK
nama
Berisi nama dari
peserta didik dan
pengajar
Varchar(255) Tidak -
-
password
Berisi kata kunci
untuk masuk kedalam
sistem
Varchar(255) Tidak -
-
hak_akses
Berisi hak otoritas
dari masing-masing
pengguna, yaitu
sebagai user biasa
atau sebagai
administrator
Varchar(255) Tidak -
-
A.2
Spesifikasi Tabel t_komputer
Nama tabel
: t_komputer
Deskripsi isi
: Berisi data komputer yang digunakan oleh user
Primary Key
: IP
Volume
:
± 30 record
Perkiraan Laju : ± 30 record per sesi mata pelajaran Bahasa Inggris
Daftar Field
Nama field
Deskripsi Isi
Type & Length
NULL
Boleh
Default Keterangan
lain
IP
Berisi IP komputer
yang sedang
digunakan oleh user
Varchar(255) Tidak -
PK
id_user
Berisi nomor atau kode
tanda pengenal user
Varchar(255) Tidak -
-
waktu_login
Berisi waktu pada saat
user melakukan login
ke dalam sistem
Varchar(255) Tidak -
-
waktu_logout
Berisi waktu pada saat
user keluar dari sistem
Varchar(255) Tidak -
-
lama_pakai
Berisi waktu berapa
lama user tersebut
menggunakan sistem
Lampiran B Perancangan Rinci Fungsional
B.1. Spesifikasi Fungsi/Proses 1
Identifikasi/Nama : Validasi dan varifikasi user
Deskripsi Isi : Validasi id user, nama, password, dan hak akses
Jenis : Form Entry Columnar
B.1.1. Spesifikasi Tabel Input
Nama Tabel : t_user
B.1.2. Spesifikasi Table Output
Nama Tabel : t_komputer
B.1.3. Spesifikasi Layar Utama
Gambar 4. 2 Form Login – Server dan Client
B.1.4. Spesifikasi Query
Query :
• select * from t_user where id_user = ‘FieldID’ and password = ‘FieldPasswd’
• insert into t_komputer values (“’ + FieldID.getText() + ‘”,”’ + FieldIP.getText() + ‘”, “’ + FieldLogin.getText() + ‘”)
B.1.5. Spesifikasi Field Data Pada Layar
B.1.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis Keterangan
FieldID JTextField Diisi dengan id user
FieldPasswd JTextField Diisi dengan password
FieldCombo JComboBox Dipilih salah satu, user atau
administrator
ip_server JTextField Diisi dengan IP computer server yang
akan dituju
ButtonOK JButton Diklik, untuk masuk ke dalam
aplikasi
B.1.7. Spesifikasi Layar Pesan
No Kasus Pesan
1. Login dan password salah Data yang Anda masukkan SALAH!!! (server) dan Anda tidak berhasil LOGIN, silakan ULANGI!!! (client)
2. Hak Akses tidak dipilih Hak akses Anda Salah!
3. Client salah memasukkan IP server yang sedang listening Ada tidak terkoneksi denga server
B.1.8. Spesifikasi Proses/Algoritma
Initial State Muncul layar login Final State
Muncul menu sesuai dengan hak akses Spesifikasi Proses/Algoritma
User memasukkan id_user, password dan hak_akses If hak_akses = ‘Administrator’ then
Select * from t_user where id_user = ‘id_user’ and password = ‘password’ and hak_akses = ‘hak_akses’
If ada then
Tampil menu untuk server Else
Muncul pesan kesalahan End if
Else if hak_akses = ’User’ then
Field ip_server akan aktif(enable).
Select * from t_user where id_user = ‘id_user’ and password = ‘password’ and hak_akses = ‘hak_akses’
If ada then
Insert IP, id_user dan waktu_login kedalam tabel t_komputer Tampil menu untuk client
Else
Muncul pesan kesalahan End if
End If
B.1.9. Spesifikasi Report
Tidak adaLabel Field Tabel/Query I/O Format Validasi Keterangan
ID User id_user t_user I text - -
Password password t_user I text - -
Hak Akses hak_akses t_user I text - -
Melakuka Koneksi ke Server dengan IP
B.2. Spesifikasi Fungsi/Proses 2
Identifikasi/Nama : Tampil menu untuk server dan client
Deskripsi Isi : Menampilkan menu-menu yang dapat dipilih oleh user
Jenis : Form Entry Columnar
B.2.1. Spesifikasi Tabel Input
Nama Tabel : t_user, t_komputer
B.2.2. Spesifikasi Table Output
Tidak adaB.2.3. Spesifikasi Layar Utama
Gambar 4. 3 Form Tampil Menu - Server
B.2.4. Spesifikasi Query
Tidak adaB.2.5. Spesifikasi Field Data Pada Layar
Tidak adaB.2.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis Keterangan
MenuKom JMenuBar Jika diklik, akan menampilkan dropdown
yang isinya online, let’s talk dan keluar untuk menu server. Sedangkan client akan menampilkan dropdon yang isinya let’s talk dan keluar.
MenuUser JMenuBar Jika diklik, akan menampilkan dropdown
yang isinya tambah, ubah, hapus dan lihat data user, untuk server. Sedangkan MenuUser untuk client jika diklik akan menampilkan dropdown yang isinya ubah password dan about user
B.2.7. Spesifikasi Layar Pesan
Tidak adaB.2.8. Spesifikasi Proses/Algoritma
Tidak adaB.2.9. Spesifikasi Report
Tidak adaB.3. Spesifikasi Fungsi/Proses 3.2
Identifikasi/Nama : Tambah data User
Deskripsi Isi : Menampilkan menu untuk melakukan proses penambahan data user
Jenis : Form Entry Columnar
B.3.1. Spesifikasi Tabel Input
Tidak adaB.3.2. Spesifikasi Table Output
Nama Tabel : t_user
B.3.3. Spesifikasi Layar Utama
Gambar 4. 5 Form Penambahan Data User - Server
B.3.4. Spesifikasi Query
Query :
• insert into t_user values (’” + FieldID.getText() + ‘”, ‘” + FieldNama.getText() + ‘”, ‘” + FieldPasswd.getText() + ‘”, ‘” + FieldAkses.getText() + ‘” )
B.3.5. Spesifikasi Field Data Pada Layar
Label Field Tabel/Query I/O Format Validasi Keterangan
ID User id_user t_user,
t_komputer I text - -
Nama nama t_user I text - -
Password password t_user I text - -
B.3.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis Keterangan
FieldID JTextField Diisi dengan id user
FieldNama JTextField Diisi dengan nama user
FieldPasswd JTextField Diisi dengan password
ComboAkses JComboBox Pilih hak akses untuk user
ButtonTambah JButton Jika diklik, akan mengaktifkan proses Algobuku 1
ButtonBatal JButton Jika diklik, akan mengaktifkan proses Algobuku 2
ButtonKeluar JButton Jika diklik, akan mengaktifkan proses Algobuku 3
B.3.7. Spesifikasi Layar Pesan
No Kasus Pesan
1. Menekan button “tambah” dan semua field telah terisi Semua data telah berhasil ditambah 2. Menekan button “tambah” dan salah satu field masih ada yang
kosong Ada data yang masih KOSONG!
B.3.8. Spesifikasi Proses/Algoritma
B.3.8.1 <001> : Algobuku1Objek terkait : ButtonTambah
Event : Menambah data user
Initial State
Jumlah data dalam tabel t_user dan t_komputer tetap Final State
Jumlah data dalam tabel t_user dan t_komputer akan bertambah 1 Spesifikasi Proses/Algoritma
User memasukkan id_user, nama, password dan hak_akses pada text box If ButtonTambah diklik then
Simpan data-data pada textbox kedalam tabel t_user dan t_komputer End If
B.3.8.2 <002> : Algobuku2
Objek terkait : ButtonBatal
Event : Mengosongkan textbox
Initial State
Text box terisi data Final State
Text box kosong
Spesifikasi Proses/Algoritma If ButtonBatal diklik then Text box akan kosong End If
B.3.8.3 <003> : Algobuku3
Objek terkait : ButtonKeluar
Event : Keluar dari menu yang sedang aktif
Initial State
Masih berada pada menu yang sedang aktif Final State
Berada pada tampil menu untuk server atau client Spesifikasi Proses/Algoritma
If ButtonKeluar diklik then
Tampil menu untuk server atau client End If
B.3.9. Spesifikasi Report
Tidak adaB.4. Spesifikasi Fungsi/Proses 3.3
Identifikasi/Nama : Ubah Data User
Deskripsi Isi : Melakukan proses pengubahan data user
Jenis : Form Entry Columnar
B.4.1. Spesifikasi Tabel Input
Nama Tabel : t_user
B.4.2. Spesifikasi Table Output
Nama Tabel : t_user
B.4.3. Spesifikasi Layar Utama
Gambar 4. 6 Form Ubah Data User - Server
B.4.4. Spesifikasi Query
Query untuk gambar4.6 :• update t_user set nama = ‘FieldNama’, password = ‘FieldPasswd’, hak_akses = ‘ComboAkses’ + “where id_user = ‘FieldID’”
Query untuk gambar4.7 :
• update t_user set password = ‘FieldPasswd’ + “where id_user = ‘FieldID’”
B.4.5. Spesifikasi Field Data Pada Layar
B.4.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis Keterangan
FieldID JTextField Diisi dengan id user
FieldNama JtextField Diisi dengan nama user
FieldPasswd JtextField Diisi dengan password
ComboAkses JcomboBox Pilih hak akses untuk user
ButtonUbah Jbutton Jika diklik, akan mengaktifkan proses Algobuku 4
ButtonBatal Jbutton Jika diklik, akan mengaktifkan proses Algobuku 2
ButtonKeluar Jbutton Jika diklik, akan mengaktifkan proses Algobuku 3
ButtonRefresh Jbutton Jika diklik, akan mengaktifkan proses Algobuku 5
TabelCari JTable Jika diklik, akan mengaktifkan proses Algobuku 6
B.4.7. Spesifikasi Layar Pesan
No Kasus Pesan
1. Menekan button “tambah” dan semua field telah terisi Semua data telah berhasil diubah 2. Menekan button “ubah” dan salah satu field masih ada yang
kosong Ada data yang masih KOSONG!
B.4.8. Spesifikasi Proses/Algoritma
B.4.8.1 <001> : Algobuku4Objek terkait : ButtonUbah
Event : Mengubah data dalam tabel t_user
Initial State
Data dalam tabel t_user tetap Final State
Data dalam tabel t_user berubah berdasarkan id_user yang telah dimasukkan Spesifikasi Proses/Algoritma
Text field teleh berisi data id_user, nama, password dan hak_akses If ButtonUbah diklik then
Data dalam tabel t_user akan mengalami perubahan berdasarkan id_user yang telah dimasukkan
End If
Label Field Tabel/Query I/O Format Validasi Keterangan
ID User id_user t_user I text - -
Nama nama t_user I text - -
Password password t_user I text - -
B.4.8.2 <002>
: Algobuku5
Objek terkait
: ButtonRefresh
Event
: Menampilkan data dalam database yang terbaru ke tabel
Initial StateTabelCari masih menampilkan data yang belum terupdate maupun telah terupdate
Final State
TabelCari akan berisi data-data user yang telah terupdate dari database
Spesifikasi Proses/Algoritma
If ButtonRefresh diklik then
Tabelcari berisi data-data user yang telah terupdate dari database Else
TabelCari berisi data-data user yang telah terupdate atau belum terupdate
End if
B.4.8.2 <003>
: Algobuku6
Objek terkait
: TabelCari
Event
: Memindahkan isi satu row pada tabel ke text field
Initial StateTabelCari belum diklik oleh user
Final State
TabelCari telah diklik oleh user dan data satu row dari Tabel (berdasarkan arah pointer mouse) akan pindah ke text field
Spesifikasi Proses/Algoritma
TebelCari telah berisi data user yang berasal dari database If satu row dari tabel diklik then
Data satu row dari tabel akan pindah ke text field Else
Text field tidak berisi data End if
B.4.9. Spesifikasi Report
Tidak ada
B.5. Spesifikasi Fungsi/Proses 3.4
Identifikasi/Nama
: Hapus Data User
Deskripsi Isi
: Melakukan proses penghapusan data user
Jenis
: Form Entry Columnar
B.5.1. Spesifikasi Tabel Input
Nama Tabel
: t_user, t_komputer
B.5.2. Spesifikasi Table Output
Nama Tabel
: t_user, t_komputer
B.5.3. Spesifikasi Layar Utama
Gambar 4. 8 Form Hapus Data user - Server
B.5.4. Spesifikasi Query
Query:
• delete from t_user where id_user = ‘FieldID’
• delete from t_komputer where id_user = ‘FieldID’
B.5.5. Spesifikasi Field Data Pada Layar
B.5.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis
Keterangan
FieldID
JTextField
Diisi dengan id user
ButtonHapus
JButton
Jika diklik, akan mengaktifkan proses Algobuku 7
Label Field
Tabel/Query
I/O
Format
Validasi
Keterangan
ButtonKeluar
JButton
Jika diklik, akan mengaktifkan proses Algobuku 3
TabelCari
JTable
Jika diklik, akan mengaktifkan proses Algobuku 6
ButtonRefresh
Jbutton
Jika diklik, akan mengaktifkan proses Algobuku 5
B.5.7. Spesifikasi Layar Pesan
No Kasus
Pesan
1.
Menekan button “hapus” dan
salah satu field masih ada yang
kosong
Data ID User masih KOSONG, Silakan Ulangi!
B.5.8. Spesifikasi Proses/Algoritma
B.5.8.1 <001>
: Algobuku7
Objek terkait
: ButtonHapus
Event
: Menghapus data dalam tabel t_user berdasarkan id_user
Initial StateJumlah data dalam tabel t_user dan t_komputer tetap
Final State
Jumlah data dalam tabel t_user dan t_komputer berkurang 1
Spesifikasi Proses/Algoritma
User memasukkan id_user kedalam text box FieldID atau text box FieldID telah terisi
If ButtonHapus diklik then
Data dalam tabel t_user dan t_komputer akan terhapus sebanyak 1 record berdasarkan id_user yang telah telah dimasukkan oleh user
End If
B.5.9. Spesifikasi Report
Tidak ada
B.6. Spesifikasi Fungsi/Proses 3.5 dan proses 3.6
Identifikasi/Nama
: Cari dan lihat Data User
Deskripsi Isi
: Melakukan proses pencarian dan lihat data user
Jenis
: Form Entry Columnar
B.6.1. Spesifikasi Tabel Input
Nama Tabel
: t_user
B.6.2. Spesifikasi Table Output
Tidak ada
B.6.3. Spesifikasi Layar Utama
Gambar 4. 9 Form Cari dan lihat Data User – Server
Gambar 4. 10 Form Lihat Data User – Client
B.6.4. Spesifikasi Query
Query untuk gambar 4.9 :
• select * from t_user where id_user like ‘FieldCari’ and password like ‘FieldCari’ and nama like
‘FieldCari’ and hak_akses like ‘FieldCari’ order by id_user
Query untuk gambar 4.10 :
select * from t_user where id_user = ‘FieldID’
B.6.5. Spesifikasi Field Data Pada Layar
B.6.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis
Keterangan
FieldCari
JTextField
Diisi dengan data-data yang terdapat pada tabel t_user
TabelCari
JTable
Akan berisi data-data user berdasarkan kata-kata yang dicari
pada FieldCari
TabelLihat
JTable
Akan menampilkan semua data dalam t_user
ButtonKeluar
JButton
Jika diklik, akan mengaktifkan proses Algobuku 3
ButtonCari
JButton
Jika diklik, akan mengaktifkan proses Algobuku 8
B.6.7. Spesifikasi Layar Pesan
Tidak ada
B.6.8. Spesifikasi Proses/Algoritma
B.6.8.1 <001>
: Algobuku8
Objek terkait
: ButtonCari
Event
: Mencari data user dalam tabel t_user
Initial StateTabelLihat berisi semua data yang ada didalam tabel t_user
Final State
TabelLihat akan berisi data-data user dari tabel t_user berdasarkan kata-kata yang dicari dari FieldCari
Spesifikasi Proses/Algoritma
Memasukkan kata-kata pada FieldCari
Lakukan pencocokan setiap kata yang ada pada FieldCari di tabel t_user If ada then
Menampilkan data-data user yang dicari berdasarkan kata-kata yang telah dimasukkan kedalam FieldCari
Else
TabelLihat akan tetap kosong End if
B.6.9. Spesifikasi Report
Tidak ada
Label Field
Tabel/Query
I/O
Format
Validasi
Keterangan
Pencarian
Id_user, nama,
password,
hak_akses
t_user I
Text
- -
ID User
id_user
t_user,
t_komputer
O text
-
-
Nama nama t_user
O
text -
-
Password password t_user
O text
-
-
B.7. Spesifikasi Fungsi/Proses 4.2 dan 4.3
Identifikasi/Nama
: Kondisi bicara dengan status komunikasi all atau individual
Deskripsi Isi
: Menentukan jenis status komunikasi
Jenis
: Form Entry Columnar
B.7.1. Spesifikasi Tabel Input
Tidak ada
B.7.2. Spesifikasi Table Output
Tidak ada
B.7.3. Spesifikasi Layar Utama
Let’s Talk – Sistem Laboratorium Bahasa Berbasis Komputer Komunikasi User
Status Komunikasi
ALL INDIVIDUAL
Talk Request Talk Request Talk Request Talk Request Talk Request
Talk Request Talk Request Talk Request Talk Request Talk Request
Talk Request Talk Request Talk Request Talk Request Talk Request OK STOP OK STOP OK STOP OK STOP OK STOP
OK STOP OK STOP OK STOP OK STOP OK STOP
OK STOP OK STOP OK STOP OK STOP OK STOP
<nama user> <nama user> <nama user> <nama user> <nama user>
<nama user> <nama user> <nama user> <nama user> <nama user>
<nama user> <nama user> <nama user> <nama user> <nama user>
Talk Request Talk Request Talk Request Talk Request Talk Request
Talk Request Talk Request Talk Request Talk Request Talk Request OK STOP OK STOP OK STOP OK STOP OK STOP
OK STOP OK STOP OK STOP OK STOP OK STOP
<nama user> <nama user> <nama user> <nama user> <nama user>
<nama user> <nama user> <nama user> <nama user> <nama user>
Talk Request Talk Request
OK STOP OK STOP
<nama user> <nama user>
Talk Request Talk Request
OK STOP OK STOP
<nama user> <nama user>
Talk Request Talk Request
OK STOP OK STOP
<nama user> <nama user>
Talk Request Talk Request
OK STOP OK STOP
<nama user> <nama user>
Talk Request Talk Request
OK STOP OK STOP
<nama user> <nama user>
Keluar Refresh
Gambar 4. 12 Form Request untuk Bicara - Client
B.7.4. Spesifikasi Query
Query : select a.nama from t_user a, t_komputer b where a.id_user = b.id_user
B.7.5. Spesifikasi Field Data Pada Layar
Tidak ada
B.7.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis
Keterangan
RadioAll
JRadioButton
Jika dipilih, akan mengaktifkan proses Algobuku 9
RadioInd
JRadioButton
Jika dipilih, akan mengaktifkan proses Algobuku 10
ButtonOK
JButton
Jika diklik, akan mengaktifkan proses Algobuku 11
ButtonSTOP
JButton
Jika diklik, akan mengaktifkan proses Algobuku 12
ButtonKeluar
JButton
Jika diklik, akan mengaktifkan proses Algobuku 3
ButtonBicara
JButton
Jika diklik, akan mengaktifkan proses Algobuku 13
ButtonRefresh
JButton
Jika diklik, akan mengaktifkan proses Algobuku 5
B.7.7. Spesifikasi Layar Pesan
Tidak ada
B.7.8. Spesifikasi Proses/Algoritma
B.7.8.1 <001>
: Algobuku9
Objek terkait
: RadioAll
Event
: Memperbolehkan semua user untuk mendengarkan percakapan yang terjadi
Initial StateSecara default RadioAll ini telah terpilih
Final State
RadioAll terpilih
Spesifikasi Proses/Algoritma
If RadioAll dipilih then
Seluruh user dapat mendengarkan semua percakapan yang terjadi End If
B.7.8.2 <002>
: Algobuku10
Objek terkait
: RadioInd
Event : Memperbolehkan hanya sebagian user saja yang dapat mendengarkan
percapakan yang terjadi
Initial State
RadioAll terpilih
Final State
RadioInd terpilih
If RadioInd dipilih then
Hanya sebagian user saja yang dapat mendengarkan semua percakapan yang terjadi
End If
B.7.8.3 <003>
: Algobuku11
Objek terkait
: ButtonOK
Event : Memperbolehkan user tersebut untuk berbicara
Initial StateUser tersebut belum diperbolehkan untuk bicara
Final State
User tersebut diperbolehkan untuk berbicara
Spesifikasi Proses/Algoritma
If ButtonOK diklik then
User tersebut dapat berbicara dan suaranya bisa didengarkan oleh user lain tergantung dari jenis komunikasi yang dipilih oleh server, all atau individual.
End If
B.7.8.4 <004>
: Algobuku12
Objek terkait
: ButtonSTOP
Event : Memutuskan otoritas user untuk berbicara
Initial StateUser masih dapat berbicara dan suaranya dapat didengarkan oleh user lainnya
Final State
User tersebut tidak dapat berbicara lagi
Spesifikasi Proses/Algoritma
If ButtonSTOP diklik then
User tersebut yang awalnya bisa berbicara dan suaranya dapat didengarkan oleh user lainnya, tetapi setelah meng-klik ButtonSTOP otoritas user tersebut untuk berbicara telah dicabut dan suaranya pun tidak akan terdengar lagi oleh user lainnya.
End If
B.7.8.5 <005>
: Algobuku13
Objek terkait
: ButtonBicara
Event : Melakukan request kepada server untuk berbicara
Initial StateUser masih belum diperbolehkan untuk berbicara
Final State
User bisa berbicara ketika server memperbolehkan
Spesifikasi Proses/Algoritma
If ButtonBicara diklik then
Ketika user meng-klik ButtonBicara, maka tulisan “Request” pada layar akan berubah warna. Untuk menandakan bahwa user tersebut melakukan request untuk bicara. Jika server mengizinkan user tersebut untuk berbicara, maka tulisan “Talk” pada layar akan berubah warna juga End If
B.7.9. Spesifikasi Report
Tidak ada
B.8 Spesifikasi Fungsi/Proses 5
Identifikasi/Nama
: Tampil data pengguna komputer
Deskripsi Isi
: Menampilkan data pengguna komputer yang sedang terhubung ke server
Jenis
: Form Entry Columnar
B.8.1. Spesifikasi Tabel Input
Nama Tabel
: t_user dan t_komputer
B.8.2. Spesifikasi Table Output
Tidak ada
B.8.3. Spesifikasi Layar Utama
Gambar 4. 13 Form Online
B.8.4. Spesifikasi Query
Query : select a.nama from t_user a, t_komputer b where a.id_user = b.id_user
B.8.5. Spesifikasi Field Data Pada Layar
Tidak ada
B.8.6. Spesifikasi Function Key/Objek-Objek Pada Layar
Id_Objek Jenis
Keterangan
ButtonKeluar
JButton
Jika diklik, akan mengaktifkan proses Algobuku 3
ButtonRefresh
JButton
Jika diklik, akan mengaktifkan proses Algobuku 5
TabelOnline JTable
Akan berisi data-data user yang telah melakukan login dan
masuk kedalam aplikasi, lihat Algobuku 14
B.8.7. Spesifikasi Layar Pesan
B.8.8. Spesifikasi Proses/Algoritma
B.8.8.1 <001>
: Algobuku14
Objek terkait
: TabelOnline
Event
: menampilkan nama-nama user yang telah melakukan login kedalam aplikasi
Initial StateTabelOnline masih kosong karena belum ada yang melakukan login
Final State
TabelOnline terisi oleh data-data user yang telah melakukan login
Spesifikasi Proses/Algoritma
if user melakukan login then
insert IP, waktu_login dan id_user ke dalam tabel t_komputer tampilkan IP, waktu_login dan nama user kedalam TabelOnline Endif
If user melakukan logout then
lakukan perhitungan waktu_login dan waktu_logout untuk mendapatkan lama_pakai update tabel t_komputer dengan memasukkan waktu_logout dan lama_pakai kedalam TabelOnline berdasarkan id_user tertentu
Endif
B.8.9. Spesifikasi Report
Tidak ada
Lampiran C Daftar Rinci File dan Data
C.1. Struktur
Direktori
C.1.1. Direktori Pengembangan
Direktori yang digunakan dalam pengembangan Sistem Laboratorium Bahasa ini adalah :
• Direktori LabBahasa berisi build, nbproject, src dan test. Direktori tersebut merupakan direktori default yang
terbentuk saat menggunakan software Netbeans dalam proses pengembangan Sistem Laboratorium Bahasa.
File-file coding secara default juga, diletakkan di dalam direktori \src\labbahasa.
C.1.2. Direktori Operasional
Direktori yang digunakan di lingkungan operasional adalah :
• Berisi file *.class :
Volume in drive C has no label. Volume Serial Number is 2826-D087
Directory of C:\Documents and Settings\magang\My Documents\TA\source\LabBahasa\build\classes\labbahasa 02/07/2006 03:07 PM <DIR> . 02/07/2006 03:07 PM <DIR> .. 01/09/2006 09:14 PM 2,874 dbLabBahasa.class 02/04/2006 10:27 AM 3,340 dbLihatClient.class 01/29/2006 02:51 PM 4,486 dbLogin.class 01/31/2006 08:26 PM 4,345 dbUbahPass.class 02/03/2006 09:56 PM 1,290 EX_ipServer.class 02/04/2006 10:19 AM 1,294 EX_showClient.class 01/26/2006 09:00 PM 1,351 EX_tampil.class 10/19/2005 06:18 AM 486 lihat_server$1.class 10/19/2005 06:18 AM 3,404 lihat_server.class 01/26/2006 08:06 PM 708 Listen$1.class 01/26/2006 08:06 PM 462 Listen$2.class 01/26/2006 08:06 PM 3,091 Listen.class 02/03/2006 09:53 PM 764 login_aplikasi$1.class 02/03/2006 09:53 PM 764 login_aplikasi$2.class 02/03/2006 09:53 PM 757 login_aplikasi$3.class 02/03/2006 09:53 PM 494 login_aplikasi$4.class 01/17/2006 09:16 PM 494 login_aplikasi$5.class 02/03/2006 09:53 PM 11,969 login_aplikasi.class 01/11/2006 04:58 AM 750 login_server$1.class 01/11/2006 04:58 AM 486 login_server$2.class 01/09/2006 08:51 PM 486 login_server$3.class 01/11/2006 04:58 AM 8,009 login_server.class 10/16/2005 08:30 PM 379 Main.class 10/18/2005 06:10 AM 490 online_server$1.class 10/18/2005 06:10 AM 2,482 online_server.class 01/18/2006 06:40 AM 2,121 TabelCari_Ubah.class 01/17/2006 09:50 PM 2,483 tabelOnline_Refresh.class 01/08/2006 08:21 AM 1,221 temp.class 01/11/2006 04:37 AM 1,046 temp_login.class 01/09/2006 04:55 PM 450 tes$1.class 01/09/2006 04:55 PM 1,168 tes.class 01/08/2006 09:19 AM 2,365 validLabBahasa.class 01/11/2006 05:48 AM 2,591 validLogin.class 02/01/2006 10:06 AM 4,231 valid_login.class 02/04/2006 11:11 AM 764 welcome_client$1.class 02/04/2006 11:11 AM 766 welcome_client$10.class 02/04/2006 11:11 AM 767 welcome_client$11.class 02/04/2006 11:11 AM 496 welcome_client$12.class 02/04/2006 11:11 AM 1,359 welcome_client$2.class 02/04/2006 11:11 AM 764 welcome_client$3.class 02/04/2006 11:11 AM 764 welcome_client$4.class 02/04/2006 11:11 AM 764 welcome_client$5.class 02/04/2006 11:11 AM 1,359 welcome_client$6.class 02/04/2006 11:11 AM 764 welcome_client$7.class 02/04/2006 11:11 AM 764 welcome_client$8.class 02/04/2006 11:11 AM 764 welcome_client$9.class 02/04/2006 11:11 AM 14,904 welcome_client.class
01/23/2006 05:12 AM 736 welcome_server$1.class 01/23/2006 05:12 AM 766 welcome_server$10.class 01/23/2006 05:12 AM 1,362 welcome_server$11.class 01/23/2006 05:12 AM 735 welcome_server$12.class 01/23/2006 05:12 AM 767 welcome_server$13.class 01/23/2006 05:12 AM 767 welcome_server$14.class 01/23/2006 05:12 AM 767 welcome_server$15.class 01/23/2006 05:12 AM 1,362 welcome_server$16.class 01/23/2006 05:12 AM 767 welcome_server$17.class 01/23/2006 05:12 AM 767 welcome_server$18.class 01/23/2006 05:12 AM 1,362 welcome_server$19.class 01/23/2006 05:12 AM 1,359 welcome_server$2.class 01/23/2006 05:12 AM 767 welcome_server$20.class 01/23/2006 05:12 AM 767 welcome_server$21.class 01/23/2006 05:12 AM 767 welcome_server$22.class 01/23/2006 05:12 AM 767 welcome_server$23.class 01/23/2006 05:12 AM 767 welcome_server$24.class 01/23/2006 05:12 AM 735 welcome_server$25.class 01/23/2006 05:12 AM 767 welcome_server$26.class 01/23/2006 05:12 AM 767 welcome_server$27.class 01/23/2006 05:12 AM 767 welcome_server$28.class 01/23/2006 05:12 AM 767 welcome_server$29.class 01/23/2006 05:12 AM 732 welcome_server$3.class 01/23/2006 05:12 AM 767 welcome_server$30.class 01/23/2006 05:12 AM 767 welcome_server$31.class 01/23/2006 05:13 AM 729 welcome_server$32.class 01/22/2006 01:28 PM 729 welcome_server$33.class 01/23/2006 05:12 AM 764 welcome_server$4.class 01/23/2006 05:12 AM 764 welcome_server$5.class 01/23/2006 05:12 AM 764 welcome_server$6.class 01/23/2006 05:12 AM 764 welcome_server$7.class 01/23/2006 05:12 AM 764 welcome_server$8.class 01/23/2006 05:12 AM 764 welcome_server$9.class 01/23/2006 05:13 AM 63,341 welcome_server.class 81 File(s) 188,934 bytes
2 Dir(s) 1,058,365,440 bytes free
• Berisi file *.jar
Volume in drive C has no label. Volume Serial Number is 2826-D087
Directory of C:\Documents and Settings\magang\My Documents\TA\source\LabBahasa\dist
02/07/2006 03:15 PM <DIR> . 02/07/2006 03:15 PM <DIR> ..
02/01/2006 09:57 PM 200,972 LabBahasa.jar 02/07/2006 03:15 PM <DIR> javadoc 1 File(s) 200,972 bytes 3 Dir(s) 1,058,365,440 bytes free
C.2. Isi
Direktori
Volume in drive C has no label. Volume Serial Number is 2826-D087
Directory of C:\Documents and Settings\magang\My Documents\TA\source\LabBahasa\src\labbahasa 02/07/2006 03:15 PM <DIR> . 02/07/2006 03:15 PM <DIR> .. 02/04/2006 10:27 AM 4,530 dbLihatClient.java 01/29/2006 02:51 PM 8,871 dbLogin.java 01/31/2006 08:26 PM 6,310 dbUbahPass.java 02/03/2006 09:56 PM 974 EX_ipServer.java 02/04/2006 10:18 AM 1,319 EX_showClient.java 01/26/2006 09:00 PM 1,764 EX_tampil.java 01/26/2006 08:06 PM 2,576 Listen.form 01/26/2006 08:06 PM 3,019 Listen.java 02/03/2006 09:53 PM 11,125 login_aplikasi.form 02/03/2006 09:53 PM 21,916 login_aplikasi.java 10/16/2005 04:24 PM 619 Main.java 01/18/2006 06:40 AM 2,559 TabelCari_Ubah.java 01/17/2006 09:50 PM 2,755 tabelOnline_Refresh.java 01/08/2006 08:21 AM 1,502 temp.java 01/11/2006 04:37 AM 1,775 temp_login.java 01/08/2006 09:19 AM 2,096 validLabBahasa.java
02/01/2006 10:06 AM 7,448 valid_login.java 02/04/2006 11:11 AM 27,246 welcome_client.form 02/04/2006 11:11 AM 26,486 welcome_client.java 01/23/2006 05:12 AM 373,519 welcome_server.form 01/23/2006 05:12 AM 148,686 welcome_server.java 21 File(s) 657,095 bytes
2 Dir(s) 1,058,365,440 bytes free