Post on 28-Jul-2018
32
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3. 1 Analisis Sistem
3. 1. 1 Riwayat Perusahaan
a. Tahun berdiri perusahaan, no akta, alamat dan bidang usaha
PT Mayora Indah Tbk. Berdiri pada tanggal 17 Februari 1977 dan
memiliki kantor pusat di JL. Tomang Raya No. 21-23 Jakarta Barat
dengan No. NPWP 1.146.631.5-054. Pabrik pertama di Jatake -
Tangerang, berkembang sampai didirikan pabrik ke-8 di kawasan
industri Cibitung, Bekasi dan terakhir di Pekayon – Bekasi.
Pada bulan Juli 1990 PT Mayora Indah Tbk terdaftar sebagai
public company di Bursa Efek Jakarta dan Bursa Efek Surabaya. PT
Mayora Indah Tbk memiliki cita-cita untuk memenuhi semua
persyaratan mutu/standar produk makanan internasional :
♦ Good Manufacturing Pratices
♦ Hazard Analysis Critical Control Point
♦ Sertifikat Halal
♦ Sertifikat Hygiene & Sanitasi
PT Mayora Indah memiliki Strategic Business Unit sebagai berikut :
Biscuit Business Unit
Contoh : Biskuit Marie Roma, Better, Milkuit
Candy Business Unit
Contoh : Kiss, Kopiko
33
Wafer Business Unit
Contoh : Sando, Beng-Beng
Chocolate Business Unit
Contoh : Choki-choki
Health Food Business Unit
Contoh : Energen Sereal
Noodle Business Unit
Contoh : Mi Gelas, Mi Duo
Coffee Business Unit
Contoh : Kopi Torabika
Beverage Business Unit
Contoh : Vitazone
3. 1. 2 Struktur Organisasi Perusahaan
Komisaris Utama JOGI HENDRA ATMADJA
Komisaris HENDRAWAN ATMADJA
Komisaris ( Independen) AGUSTIAN WIDJANARKO
KOMITE AUDIT (KETUA) AGUSTIAN WIDJANARKO
KOMITE AUDIT (ANGGOTA) DRS. THOMAS S.WIRAWAN
KOMITE AUDIT (ANGGOTA) BUDIONO DJUANDI SE, AK
Direktur Utama GUNAWAN ATMADJA
Direktur HERMAWAN LESMANA
Direktur ANDRE SUKENDRA
Direktur ONGKIE TEDJASURJA
34
Diagram Struktur Organisasi
Gambar 3. 1 Diagram Struktur Organisasi
35
3. 1. 3 Tata laksana prosedur yang sedang berjalan
Saat ini prosedur yang sedang berjalan dalam penyebaran berita
adalah melalui mulut ke mulut, sehingga kurang efisien dan berita
menjadi tidak jelas. Sedangkan distribusi SOP pada PT Mayora Indah
Tbk saat ini adalah dengan cara manual, yaitu dengan cara penyebaran
SOP melalui hardcopy. Cara ini dinilai tidak efisien karena meningkatkan
kebutuhan biaya operasional karena banyaknya masalah kehilangan
hardcopy dari SOP tersebut sehingga banyak karyawan yang meminta
hardcopy baru dari divisi Sistem Prosedur. Selain itu divisi Sistem
prosedur membutuhkan pembatasan hak akses dari SOP tertentu agar
tidak boleh di akses oleh pihak lain..
3. 1. 4 Analisa Kuisioner
Analisa kuisioner digunakan untuk menganalis kebutuhan sistem.
Kuisioner digunakan sebagai instrument penelitian untuk mendapatkan
data atau mengumpulkan data yang lebih efisien dari lingkungan bila
peneliti mengetahui dengan pasti dengan variabel yang akan diukur dan
tahu apa yang bisa diharapkan dari responden (Sugiyono, 2004 , pp135).
Dalam analisa kuisioner ini , terlebih dahulu didapatkan data dari
pengisian kuisioner. Data didapatkan sebanyak 42 responden dari 100
lembar form yang dibagikan.
Sebagian besar dari pertanyaan yang diberikan dalam form
kuisioner tersebut menggunakan skala likert , dimana jawaban setiap item
instrumen mempunyai gradasi dari yang sangat positif sampai sangat
negatif yang berupa kata-kata. Analisa yang digunakan adalah analisa
36
kuantitatif dimana setiap jawaban diberkan skor dan penilaian persentase
berdasarkan bobot jawaban. Dari pertanyaan yang ditanyakan berikut
merupakan daftar nilai skor yang diberikan pada setiap pilihan
1. Sangat Positif = 4
2. Positif = 3
3. Negatif = 2
4. Sangat Negatif = 1
Dan rumus yang digunakan dalam mengambil kesimpulan adalah
sebagai berikut :
KS = ∑ (Bobot x Responden) / ∑ Total Nilai Max
KS merupakan Kesimpulan , dan ∑ (Bobot x Responden)
merupakan jumlah dari perkalian banyaknya pemilih yang memilih item
tersebut dikalikan dengan skor nilai item tersebut. ∑ Total Nilai Max
merupakan nilai maksimum yang dicapai pemilih dengan asumsi pemilih
memilih pilihan skor yang tertinggi semua.
1. Pertanyaan Pertama :
Apa tingkat tingkat pendidikan terakhir anda
Dari hasil yang dibagikan hasil yang didapat 42 responden ,
ternyata semua memberikan hasil 3 jenis jawaban yaitu Sarjana
Muda / D3 , Sarjana Strata 1 , dan Sarjana Strata 2.
Dan responden Sarjana Strata 1 menempati persentase yang cukup
dominan yaitu 32 orang atau sekitar 76 persen. Berikut merupakan
hasil yang didapat :
37
Jawaban Responden Persentase
a. Sarjana Muda / D3 7 16,66%
b. Strata 1 32 76,19 %
c. Strata 2 3 7,15 %
Didapatkan parameter bahwa lingkungan Staff dalam gedung PT
Mayora mempunyai tingkat pendidikan yang sebagian besar bergelar
Strata 1.
2. Pertanyaan Kedua :
Berapakah umur anda sekarang
Dari jawaban para responden , dapat dilihat bahwa sekitar 42,85
persen memberikan pilihan pada range umur 26-30 tahun , masih
pada usia yang produktif dan dapat lebih mudah untuk
mempelajari software baru.
Jawaban Responden Persentase
a. 21-25 tahun 12 28.57 %
b. 26-30 tahun 18 42.85 %
c. 31-40 tahun 9 21.42 %
d. 41-50 tahun 3 7.14 %
38
3. Pertanyaan Ketiga :
Seberapa sering anda membutuhkan SOP untuk
pekerjaan anda?
Jawaban Responden Responden x Bobot
a. sering 8 32
b. tidak terlalu sering 22 66
c. jarang 7 14
d. sangat jarang 5 5
Total 117
Skor teratas adalah : 168
Skor terendah adalah : 42
Tingkat kebutuhan SOP terhadap pekerjaan adalah sebesar
KS = 117/168 * 100% = 69.64%
berdasarkan skala Likert
Dari jawaban yang diperoleh dari para responden, dapat diketahui
bahwa sekitar 69.64% responden menyatakan cukup sering
mengakses atau melihat SOP .
39
4. Pertanyaan Keempat :
Berapa lama waktu yang dibutuhkan untuk
mendapatkan SOP yang diinginkan?
Jawaban Responden Responden x Bobot
a. cepat (<10 menit) 2 8
b. sedang (10 menit - 1jam) 7 21
c. lama (1 jam-24jam) 28 56
d. lama sekali(>1 hari) 5 5
Total 90
Skor teratas adalah : 168
Skor terendah adalah : 42
Tingkat lamanya waktu yang dibutuhkan terhadap SOP yang
diinginkan adalah sebesar
KS = 90/168 * 100% = 53.57%
berdasarkan skala Likert
Dari jawaban para responden dapat disimpulkan bahwa rata-rata
waktu yang dibutuhkan untuk mendapat SOP yang diinginkan
berkisar antara range 1 jam sampai 24 jam.
40
5. Pertanyaan Kelima :
Bagaimana dengan kemudahan (birokrasi) anda
mendapatkan informasi SOP
Jawaban Responden Responden x Bobot
a. sangat mudah 3 12
b. mudah 9 27
c. sulit 17 34
d. sangat sulit(berbelit2) 13 13
Total 86
Skor teratas adalah : 168
Skor terendah adalah : 42
Tingkat kemudahan responden dalam mendapatkan SOP
adalah sebesar
KS = 86/168 * 100% = 51.19%
berdasarkan skala Likert
Dari jawaban para responden dapat disimpulkan bahwa sebagian
besar karyawan PT Mayora Indah Tbk. mengalami kesulitan
dalam hal birokrasi untuk mendapatkan SOP.
41
6. Pertanyaan Keenam :
Apakah anda membutuhkan fasilitas untuk
mendapatkan berita sekitar perusahaan?
Jawaban Responden Persentase
a. ya 34 80.95 %
b. tidak 8 19.05 %
Dari jawaban responden dapat diketahui secara eksplisit bahwa
sebagian besar karyawan PT Mayora Indah Tbk membutuhkan
fasilitas untuk mengetahui berita seputar perusahaan dengan
presentase yang menjawab ya mendekati 81%.
7. Pertanyaan Ketujuh :
Bagaimana dengan komunikasi yang selama ini
berjalan pada PT Mayora Indah Tbk
Jawaban Responden Persentase
a. lancar antar divisi 4 9.52 %
b. lancar hanya dalam wilayah
operasi 18 42.85 %
c. lancar hanya dalam 1 divisi 17 40.47 %
d. kurang lancar dalam
semuanya 3 7.14 %
Dari jawaban responden dapat diketahui bahwa komunikasi yang
berjalan selama ini hanya aktif terjadi dalam satu wilayah dan satu
42
divisi saja. Hubungan diluar divisi dan diluar wilayah operasi
mengalami kendala dalam komunikasi.
8. Pertanyaan Kedelapan :
Apakah anda puas dengan cara penyampaian SOP
secara manual seperti yang sedang berjalan?
Jawaban Responden Responden x Bobot
a. puas sekali 5 20
b. puas 8 24
c. tidak puas 22 44
d. sangat tidak puas 7 7
Total 95
Skor teratas adalah : 168
Skor terendah adalah : 42
Tingkat kepuasan dalam penyampaian SOP secara manual
adalah sebesar
KS = 95/168 * 100% = 56.54%
berdasarkan skala Likert
Dari jawaban para responden dapat diketahui bahwa 56.54%
responden menyatakan ketidakpuasannya atas cara
penyampaian.SOP secara manual yang sedang berjalan.
43
9. Pertanyaan Kesembilan :
Browser apakah yang sering anda gunakan?
Jawaban Responden Responden x Bobot
a. Internet Explorer 42 100.00 %
b. Mozilla Firefox 0 0.00 %
c. Opera 0 0.00 %
d. Netscape Navigator 0 0.00 %
Dari jawaban responden, dapat diketahui bahwa secara absolut
para responden menggunakan browser Internet Explorer.
10. Pertanyaan Kesepuluh :
Apakah anda menginginkan perubahan penyampaian
SOP secara manual menjadi digital?
Jawaban Responden Persentase
a. ya 32 76.19 %
b. tidak 10 13.81 %
Dari jawaban responden dapat diketahui bahwa sebagian besar
responden menginginkan perubahan cara penyampaian SOP yang
selama ini telah berjalan agar dapat meningkatkan efisiensi kerja
mereka.
44
3. 1. 5 Analisa Wawancara
Pada sub bab ini diberikan kesimpulan dari hasil wawancara yang telah
dilakukan terhadap narasumber yaitu Head Officer System Procedure dari
PT Mayora Indah Tbk.
1. Apa yang dikerjakan oleh bagian Sistem Prosedur berkenaan
dengan kontribusi yang diberikan kepada PT.Mayora Indah
Tbk ?
Dalam bagian ini Sistem Prosedur menghasilkan dokumen–
dokumen yang berhubungan dengan prosedur standar operasional
yang terjadi atau dilakukan didalam perusahaan dengan kata lain
menghasilkan prosedur – prosedur yang telah dan akan dibakukan
kedalam perusahaan PT.Mayora Indah Tbk.
2. Bagaimana cara pendistribusian / transaksi dokumen yang
selama ini berjalan ?
Dari jawaban yang didapat , disimpulkan bahwa langkah-langkah
mendapatkan dokumen yang diinginkan adalah dengan
menghubungi bagian Sistem Prosedur dan meminta dokumen
yang dicari , kemudian bagian sistem prosedur akan melihat
dokumen tersebut dan akan di print dalam bentuk lembaran kertas
. Atau dengan kata lain masih dalam keadaan manual based on
paper.
45
3. Bagaimana dengan transaksi dokumen yang dilakukan dari
luar wilayah Jakarta ?
Dalam hal ini jawaban narasumber lebih mengarah kepada
kendala yang dihadapi , yaitu masalah waktu. Karena dengan
sistem yang ada sekarang atau lebih tepatnya sistem based on
paper akan sangat merugikan dalam hal waktu , untuk
mengirimkan dokumen yang diinginkan keluar dari wilayah
jakarta yaitu jika ada permintaan dari luar wilayah. Dimana
wilayah jakarta (dalam hal ini Tomang) merupakan pusat dari
dokumen SOP yang ada. Dimana syarat yang diberikan adalah
jika dokumen yang diminta kurang dari 10 Megabyte maka
dokumen tersebut akan dikirim melalui internet , akan tetapi jika
lebih dari 10 Megabyte maka dokumen akan dicetak dalam
lembaran kertas atau di print out dan langsung dikirim.
4. Masalah apa yang biasanya muncul dan mengganggu kinerja
dari bagian Sistem Prosedur ?
Masalah yang disebutkan biasanya hanya seputar dalam hal
pengiriman dokumen yang telah di print out , dokumen yang telah
diberikan mengalami kerusakan atau juga kadang-kadang hilang ,
dan tentu saja ini berhubungan langsung dengan biaya operasional
perusahaan . Dan tidak adanya suatu media khusus dalam
pengeluaran / penyampaian dokumen prosedur standar
operasional PT.Mayora Indah Tbk ( baik yang lama atau yang
46
baru direvisi ) yang menyebabkan terus mengalirnya permintaan
informasi ke bagian Sistem Prosedur.
5. Bagaimana cara komunikasi antar staff dan karyawan
berkenaan dengan pekerjaan dalam lingkungan perusahaan ?
Dalam hal urusan pekerjaan , perusahaan tidak menyediakan suatu
tempat semacam call center untuk memenuhi kebutuhan
informasi contact person. Jadi yang terjadi dalam ruang lingkup
perusahaan adalah jika seorang staff atau karyawan membutuhkan
contact information dari karyawan A , maka orang yang mencari
informasi tersebut harus menghubungi bagian Human Resources
and Development (HRD) untuk mendapatkan contact information
dari staff atau karyawan.
3. 1. 6 Permasalahan Yang Dihadapi
Melihat pada hasil analisa di atas hal dan melalui
perkembangannya lebih lanjut , kurang lebih kendala yang sedang
dihadapi oleh PT Mayora Indah Tbk adalah pendistribusian file SOP ke
pihak-pihak yang membutuhkan SOP tersebut. Lalu dibutuhkan sebuah
fasilitas bagi PT Mayora Indah Tbk untuk menyebarkan berita internal
kepada para karyawannya, baik itu berita umum, contoh : pengumuman
awal libur, ucapan selamat berpuasa dan lain-lain, hingga berita khusus,
seperti laporan keuangan yang hanya dapat dilihat oleh Top Level
Management.
Selain itu sebuah forum juga dibutuhkan dalam menjalin
komunikasi antar karyawan dalam PT Mayora Indah Tbk. Forum ini
47
mempunyai fungsi ganda, yaitu sebagai tempat berkomunikasi antar
karyawan, transaksi file dan juga tempat dari suatu divisi untuk
memberikan masukkan kepada divisi lainnya. Lalu dibutuhkan juga
fasilitas untuk melihat data umum atau profile dari seorang karyawan,
sehingga memudahkan karyawan (terutama karyawan dinas luar) untuk
mencari atau mengenali PIC (Person-In-Charge) di cabang lain. Dalam
melihat profile ini hanya beberapa field yang dapat dilihat, yaitu : Foto,
Nama, Divisi, Posisi, Lokasi, No Telp dan No Extension.dari karyawan
tersebut.
3. 1. 7 Alternatif Penyelesaian Masalah
Karena cakupan masalah yang dihadapi sudah cukup luas, maka
PT Mayora Indah Tbk harus segera mengimplementasikan sebuah solusi
agar permasalahan yang dihadapi tidak semakin berlarut-larut.
Setelah dilakukan analisa terhadap data, melalui kuisioner yang telah
dibagikan pada PT Mayora Indah Tbk, maka suatu solusi dapat dirancang
untuk memenuhi permasalahan yang ada yaitu sebuah aplikasi berbasis
web untuk memudahkan implementasi karena tidak membutuhkan
instalasi independen di sisi klien. Selain itu aplikasi berbasiskan web
relatif lebih cepat di produksi daripada aplikasi desktop.
48
3. 2 Perancangan Sistem
3. 2. 1 Diagram UML
a.Use Case Diagram
Subsistem News
user admin
search news
add news
edit news
delete news
login
view news
<<include>>
<<extend>>
<<extend>>
<<extend>>
<<extend>>
logout
member
Gambar 3.2 Use Case Diagram Subsistem News
49
Subsistem Employee
edit employee
user
admin
search employee
add employee
delete employee
login
view employee
<<extend>>
<<include>>
<<extend>>
<<extend>>
<<extend>>
member
logout
Gambar 3.3 Use Case Diagram Subsistem Employee
50
Subsistem Forum
user
logoutreply message
edit message
quote message
login
add topik
search topik
edit topik
member
view message
<<include>>
<<extend>> <<include>>
delete topik
close topik
delete message
<<extend>>
view topik
<<extend>>
<<include>>
<<include>>
<<extend>>
<<extend>>
<<extend>>
<<include>>
open topik
<<extend>>
admin
Gambar 3.4 Use Case Diagram Subsistem Forum
51
Subsistem Member
user admin
change password
insert security question
login
forget password
view profile
<<extend>>
<<include>>
<<include>>
member
logout
Gambar 3.5 Use Case Diagram Subsistem Member
52
Subsistem SOP
user
admin
search SOP
add SOP
edit SOP
delete SOP
login
view SOP
<<extend>>
<<include>><<extend>>
<<extend>>
<<extend>>
member
logout
Gambar 3.6 Use Case Diagram Subsistem SOP
53
Subsistem User Management
search usertype
edit usertype
edit user
delete user
search user
view usertype
<<include>>
<<include>>
add usertype
<<include>>
<<include>>
login
view user
<<extend>>
<<include>>
<<include>>
<<include>>
add user
<<include>>
<<include>>
<<include>>
logout
admin
Gambar 3.7 Use Case Diagram Subsistem User Management
54
b. Class Diagram
NewsnewsID : Integertitle : Stringbody : Stringrelease : Stringstatus : StringpostDate : StringnamaFile : String
SOPsopid : Integer = 0idxGroup : Integer = 0idxSub : Integer = 0idxLamp : Integer = 0namaSOP : StringnamaFile : Stringrelease : Stringsummary : Stringstatus : StringviewLevel : Integer
ForumkdTopik : Integeruserid : String
Employeephoto : Stringposition : Stringlokasi : Stringtelephone : Stringextension : Integer
Memberuserid : Stringusername : Stringdivision : String
Usertypeid : Integerusertype : String
TopiknmTopik : Stringdivision : StringtglCreate : DatejmlReply : IntegerflagLock : StringcreatedBy : StringlastPostMsg : Date
MessagekdMessage : Integerusername : StringisiMsg : StringnamaFile : StringlastEdit : DatelastPost : Datequote : StringstatusEdit : String
Data
setAttribute()getAttribute()
DatabaseHandler
add()edit()delete()view()
*
*
*
*
UI_View
clickView()clickSearch()clickDelete()clickAdd()clickEdit()clickClose()clickLogout()clickOpen()
Userpassword : Stringusertype : Stringstatus : StringpaperStat : StringsecurityQuestion : StringsecurityAnswer : StringflagForgetPwd : StringlastDateVisit : Date
LogHandler
login()logout()
UI_Form
clickSubmit()clickCancel()clickReset()
ProcessHandler
checkAttribute()encrypt()
UI
click()inputData()
*1 *1
Gambar 3.8 Class Diagram
55
c. Sequence Diagram
Add Employee
: admin : UI_Form : DatabaseHandler : Employee
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
checkAttribute( )
result
add( )
result
Gambar 3.9 Diagram Sequence Add Employee
Add News
: admin : UI_Form : DatabaseHandler : News
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
checkAttribute( )
add( )result
result
Gambar 3.10 Diagram Sequence Add News
56
Add SOP
: admin : UI_Form : DatabaseHandler : SOP
inputData( )
clickSubmit( )checkAttribute( )
resultresult
setAttribute( )getAttribute( )
add( )
Gambar 3.11 Diagram Sequence Add SOP
57
Add Topik
: member : UI_Form : DatabaseHandler : Topik : Message
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )
setAttribute( )
getAttribute( )
getAttribute( )view( )
checkAttribute( )
resultresult
add( )
add( )
Gambar 3.12 Diagram Sequence Add Topik
58
Add User
: User : admin : UI_Form : DatabaseHandler
inputData( )
clickSubmit( )checkAttribute( )
encrypt( )
setAttribute( )getAttribute( )
view( ) checkAttribute( )
add( )result
result
Gambar 3.13 Diagram Sequence Add User
59
Add UserType
: admin : UI_Form : DatabaseHandler : Usertype
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
checkAttribute( )
add( )result
result
Gambar 3.14 Diagram Sequence Add UserType
ChangePassword
: User : member : UI_Form : DatabaseHandler
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
edit( )
encrypt( )
resultresult
Gambar 3.15 Diagram Sequence Change Password
60
Close Topik
: admin : UI_View : DatabaseHandler : Topik
clickClose( )checkAttribute( )
setAttribute( )getAttribute( )
edit( )
resultresult
Gambar 3.16 Diagram Sequence CloseTopik
Delete Employee
: admin : UI_View : DatabaseHandler : Employee
clickDelete( )checkAttribute( )
setAttribute( )
getAttribute( )
delete( )
result
result
Gambar 3.17 Diagram Sequence Delete Employee
61
Delete Message
: admin : UI_View : DatabaseHandler : Message
clickDelete( )checkAttribute( )
setAttribute( )getAttribute( )
delete( )
result
result
Gambar 3.18 Diagram Sequence Delete Message
Delete News
: admin : UI_View : DatabaseHandler : News
clickDelete( )checkAttribute( )
setAttribute( )
delete( )result
result
getAttribute( )
Gambar 3.19 Diagram Sequence Delete News
62
Delete SOP
: admin : UI_View : DatabaseHandler : SOP
clickDelete( )checkAttribute( )
setAttribute( )getAttribute( )
delete( )
view( )
edit( )result
result
Gambar 3.20 Diagram Sequence Delete SOP
Delete Topik
: admin : UI_View : DatabaseHandler : Topik : Message
clickDelete( )checkAttribute( )
setAttribute( )getAttribute( )
setAttribute( )getAttribute( )
delete( )
delete( )result
result
Gambar 3.21 Diagram Sequence Delete Topik
63
Delete User
: admin : UI_View : DatabaseHandler : User
clickDelete( )checkAttribute( )
setAttribute( )getAttribute( )
delete( )result
result
Gambar 3.22 Diagram Sequence Delete User
Edit Employee
: admin : UI_Form : DatabaseHandler : Employee
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )
getAttribute( )
view( )
checkAttribute( )
resultresult
edit( )
Gambar 3.23 Diagram Sequence Edit Employee
64
Edit Message
: member : UI_Form : DatabaseHandler : Message
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
checkAttribute( )
edit( )result
result
Gambar 3.24 Diagram Sequence Edit Message
Edit News
: admin : UI_Form : DatabaseHandler : News
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )
view( )
result
result
getAttribute( )
checkAttribute( )
edit( )
Gambar 3.25 Diagram Sequence Edit News
65
Edit SOP
: SOP : admin : UI_Form : DatabaseHandler
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
edit( )result
result
Gambar 3.26 Diagram Seuquence Edit SOP
66
Edit Topik
: member : UI_Form : DatabaseHandler : Message : Topik
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
setAttribute( )getAttribute( )
view( )
checkAttribute( )
edit( )
edit( )result
result
Gambar 3.27 Diagram Sequence Edit Topik
67
Edit User
: admin : UI_Form : DatabaseHandler : User
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )
getAttribute( )
view( )
encrypt( )
checkAttribute( )
edit( )result
result
Gambar 3.28 Diagram Sequence Edit User
68
Edit User Type
: admin : UI_Form : DatabaseHandler : Usertype
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
checkAttribute( )
edit( )
result
result
Gambar 3.29 Diagram Sequence Edit User Type
Forget Password
: member : UI_Form : DatabaseHandler : User
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )result
result
encrypt( )
Gambar 3.30 Diagram Sequence ForgetPassword
69
Insert Security Question
: member : UI_Form : DatabaseHandler : User
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
edit( )result
result
encrypt( )
Gambar 3.31 Diagram Sequence Insert Security Question
70
Login
: member : UI_Form : LogHandler : DatabaseHandler : User
inputData( )
clickSubmit( )login( )
checkAttribute( )
setAttribute( )
view( )
result
result
result
getAttribute( )
encrypt( )
Gambar 3.32 Diagram Sequence Login
71
Logout
: member : UI_View : LogHandler
clickLogout( )logout( )
result
result
Gambar 3.33 Diagram Sequence Logout
Open Topik
: admin : UI_View : DatabaseHandler : Topik
clickOpen( )checkAttribute( )
setAttribute( )getAttribute( )
edit( )result
result
Gambar 3.34 Diagram Sequence Open Topik
72
Quote Message
: member : UI_Form : DatabaseHandler : MessageinputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
checkAttribute( )
add( )
result
result
Gambar 3.35 Diagram Sequence Quote Message
Reply Message
: member : UI_Form : DatabaseHandler : Message
inputData( )
clickSubmit( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
result
result
checkAttribute( )
add( )
Gambar 3.36 Diagram Sequence Reply Message
73
Search Employee
: member : UI_View : DatabaseHandler : Employee
inputData( )
clickSearch( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
result
result
Gambar 3.37 Diagram Sequence Search Employee
Search News
: member : UI_View : DatabaseHandler : News
inputData( )
clickSearch( )checkAttribute( )
setAttribute( )getAttribute( )
view( )result
result
Gambar 3.38 Diagram Sequence Search News
74
Search SOP
: member : UI_View : DatabaseHandler : SOP
inputData( )
clickSearch( )checkAttribute( )
setAttribute( )getAttribute( )
view( )result
result
Gambar 3.39 Diagram Sequence Search SOP
Search Topik
: member : UI_View : DatabaseHandler : Topik
inputData( )
clickSearch( )checkAttribute( )
setAttribute( )getAttribute( )
view( )result
result
Gambar 3.40 Diagram Sequence Search Topik
75
Search User
: admin : UI_View : DatabaseHandler : User
inputData( )
clickSearch( )checkAttribute( )
setAttribute( )getAttribute( )
view( )result
result
Gambar 3.41 Diagram Sequence Search User
Search Usertype
: admin : UI_View : DatabaseHandler : Usertype
inputData( )
clickSearch( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
resultresult
Gambar 3.42 Diagram Sequence Search Usertype
76
View Employee
: member : UI_View : DatabaseHandler : Employee
clickView( )checkAttribute( )
setAttribute( )
view( )
getAttribute( )
resultresult
Gambar 3.43 Diagram Sequence View Employee
View Message
: member : UI_View : DatabaseHandler : Message : Topik
clickView( )checkAttribute( )
setAttribute( )
getAttribute( )
view( )
result
result
setAttribute( )getAttribute( )
view( )
Gambar 3.44 Diagram Sequence View Message
77
View News
: member : UI_View : DatabaseHandler : News
clickView( )checkAttribute( )
setAttribute( )
view( )result
result
getAttribute( )
Gambar 3.45 Diagram Sequence View News
View Profile
: member : UI_View : DatabaseHandler : User : Employee
clickView( )checkAttribute( )
setAttribute( )getAttribute( )
setAttribute( )getAttribute( )
view( )
view( )result
result
Gambar 3.46 Diagram Sequence View Profile
78
View SOP
: member : UI_View : DatabaseHandler : SOP
clickView( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
resultresult
Gambar 3.47 Diagram Sequence View SOP
View Topik
: member : UI_View : DatabaseHandler : Topik
clickView( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
result
result
Gambar 3.48 Diagram Sequence View Topik
79
View User
: admin : UI_View : DatabaseHandler : User
clickView( )checkAttribute( )
setAttribute( )getAttribute( )
view( )
resultresult
Gambar 3.49 Diagram Sequence View User
View Usertype
: admin : UI_View : DatabaseHandler : Usertype
clickView( )checkAttribute( )
setAttribute( )getAttribute( )
view( )result
result
Gambar 3.50 Diagram Sequence View Usertype
80
d. Activity Diagram
AddEmployee
mengisi form add employee
insert ke database (tabel dbemployee)
feedback
cek id di database (tabel dbemployee)
cek nama file di database (tabel dbemployee)
validasi salah
validasi benar dengan upload filevalidasi benar tanpa upload file
sudah ada di database
belum ada di database
Gambar 3.51 Diagram Activity AddEmployee
81
AddNews
mengisi form add news
feedback
insert ke database (tabel dbnews)
cek nama file di database (tabel dbnews)
nama file sudah ada di database
nama file belum ada di database
validasi salah
validasi benar dengan upload file
validasi benar tanpa upload file
Gambar 3.52 Diagram Activity AddNews
82
AddSOP
mengisi form add sop
insert ke database (tabel dbsop)
validasi salah
validasi benar
feedback
Gambar 3.53 Diagram Activity AddSOP
83
AddTopik
mengisi form add topik
insert ke database (tabel dbtopik)
insert ke database (tabel dbmessage)
feedback
cek nama file di database (tabel dbmessage)
nama file sudah ada di database
belum ada di database
validasi salah
validasi benar dengan upload filevalidasi benar tanpa upload file
Gambar 3.54 Diagram Activity AddTopik
84
AddUser
mengisi form add user
validasi salah
insert ke database (tabel dbuser)
feedback
cek id di database (tabel dbuser)
validasi benar
id sudah ada di database
id belum ada di database
Gambar 3.55 Diagram Activity AddUser
85
Add UserType
mengisi form add usertype
validasi salah
insert ke database (tabel dbusertype)
feedback
cek nama usertype di database (tabel dbusertype)
validasi benar
sudah ada di database
belum ada di database
Gambar 3.56 Diagram Activity Add UserType
86
Change Password
feedback
mengisi password
cek password di database (tabel dbuser)
data yang diisi salah
update password ke database (tabel dbuser)
data yang diisi benar
Gambar 3.57 Diagram Activity Change Password
87
Close Topik
feedback
mengambil id topik yang mau di close
update ke database (tabel dbtopik)
Gambar 3.58 Diagram Activity Close Topik
88
Delete Employee
feedback
mengambil id employee yang akan di delete
delete ke database (tabel dbemployee)
yes
no
Gambar 3.59 Diagram Activity Delete Employee
89
Delete Message
feedback
mengambil id message yang akan di delete
delete ke database (tabel dbmessage)
yes
no
Gambar 3.60 Diagram Activity Delete Message
90
Delete News
mengambil id news yang akan di delete
delete ke database (tabel dbnews)
feedback
yes
no
Gambar 3.61 Diagram Activity Delete News
91
Delete SOP
feedback
mengambil id SOP yang akan di delete
delete ke database (tabel dbsop)
yes
no
Gambar 3.62 Diagram Activity Delete SOP
92
Delete Topik
mengambil id topik yang akan di delete
feedback
delete ke database (tabel dbtopik)
delete ke database (tabel dbmessage)
yes
no
Gambar 3.63 Diagram Activity Delete Topik
93
Delete User
feedback
mengambil id user yang akan di delete
delete ke database (tabel dbuser)
yes
no
Gambar 3.64 Diagram Activity Delete User
94
Edit Employee
feedback
mengambil id employee yang akan di edit
edit data employee ke database (tabel dbemployee)
cek nama file di database (tabel dbemployee)
mengisi form edit employee
belum ada di database
sudah ada di database
validasi benar dengan upload file
validasi salah
validasi benar tanpa upload file
Gambar 3.65 Diagram Activity Edit Employee
95
Edit Message
feedback
mengambil id message yang akan di edit
mengisi form edit message
cek nama file di database (tabel dbmessage)
sudah ada di database
edit data message ke database (tabel dbmessage)
belum ada di database
validasi salah
validasi benar dengan upload file
validasi benar tanpa upload file
Gambar 3.66 Diagram Activity Edit Message
96
Edit News
feedback
mengambil id news yang akan di edit
mengisi form edit news
cek nama file di database (tabel dbnews)
edit data news ke database (tabel dbnews)
sudah ada di database
belum ada di database
validasi salah
validasi benar dengan upload file validasi benar tanpa upload file
Gambar 3.67 Diagram Activity Edit News
97
Edit SOP
mengambil id SOP yang akan di edit
mengisi form edit SOP
edit data SOP ke database (tabel dbsop)
feedback
validasi salah
validasi benar
Gambar 3.68 Diagram Activity Edit SOP
98
Edit Topik
mengambil id topik yang akan di edit
mengisi form edit topik
cek nama file di database (tabel dbmessage)
edit data topik ke database (tabel dbtopik)
edit data message ke database (tabel dbmessage)
feedback
sudah ada di database
belum ada di database
validasi salah
validasi benar dengan upload filevalidasi benar tanpa upload file
Gambar 3.69 Diagram Activity Edit Topik
99
Edit User
mengambil id user yang akan di edit
mengisi form edit user
edit user ke database (tabel dbuser)
feedback
validasi salah
validasi benar
Gambar 3.70 Diagram Activity Edit User
100
Edit UserType
feedback
mengambil id usertype yang akan di edit
mengisi form edit usertype
validasi salah
cek nama usertype di database (tabel dbusertype)
validasi benarsudah ada di database
edit data usertype ke database (tabel dbusertype)
belum ada di database
Gambar 3.71 Diagram Activity Edit UserType
101
Open Topik
feedback
update ke database (tabel dbtopik)
mengambil id topik yang akan di open
Gambar 3.72 Diagram Activity Open Topik
102
Forget Password
mengisi form forget password
username tidak ada
menjawab security question
username ada
memberikan password sementara
mengubah nilai forget password user dalam database
jawaban salah
Feedback
jawaban benar
Gambar 3.73 Diagram Activity Forget Password
103
Insert Security Question
mengisi form insert security question
insert ke database (tabel dbuser)
Feedback
validasi salah
validasi benar
Gambar 3.74 Diagram Activity Insert Security Question
104
Login
mengisi form login
pindah halaman home
tidak ada dalam database
ada dalam database
Gambar 3.75 Diagram Activity Login
Logout
mematikan semua sesion
pindah ke halaman login
Gambar 3.76 Diagram Activity Logout
105
Quote Message
mengambil text dari post user dalam database (tabel dbmessage)
memasukan text quote dalam session
mencetak isi session quote dalam textarea reply
mengambil nilai parameter kode topik dan kode message yang akan diquote
mengisi form reply message
validasi salah
cek nama file di database (tabel dbmessage)
validasi benar dengan upload file
insert ke database (tabel dbmessage)
validasi benar tanpa upload file
belum ada di database
sudah ada di database
Feedback
Gambar 3.77 Diagram Activity Quote Message
106
Reply Message
mengambil parameter kodetopik
Feedback
insert ke database (tabel dbmessage)
mengisi form reply message
cek nama file di database (tabel dbmessage)
belum ada di database
sudah ada di database
validasi salah
validasi benar dengan upload file
validasi benar tanpa upload file
Gambar 3.78 Diagram Activity Reply Message
107
Search Employee
mengisi form search employee
mencari keyword dalam database (dbemployee)
Feedback
Gambar 3.79 Diagram Activity Search Employee
Search News
mengisi form search news
mencari keyword dalam database (db news)
Feedback
Gambar 3.80 Diagram Activity Search News
108
Search SOP
mengisi form search SOP
mencari keyword dalam database (dbSOP)
Feedback
Gambar 3.81 Diagram Activity Search SOP
Search Topik
mengisi form search topik
mencari keyword dalam database (dbtopik)
Feedback
Gambar 3.82 Diagram Activity Search Topik
109
Search User
mengisi form search user
mencari keyword dalam database (dbuser)
Feedback
Gambar 3.83 Diagram Activity Search User
Search User Type
mengisi form search usertype
mencari keyword dalam database (dbusertype)
Feedback
Gambar 3.84 Diagram Activity Search User Type
110
View Employee
load data awal employee dari database (dbemployee)
Feedback
Gambar 3.85 Diagram Activity View Employee
View Message
load data awal message dari database (dbmessage) sesuai divisi dan hak akses
periksa divisi dan hak akses user
Feedback
Gambar 3.86 Diagram Activity View Message
111
View News
memeriksa hak akses user terhadap selected paper
load data news saja dari database (db news)
tidak punya akses
load data news dan selected paper dari database (db news)
punya akses
Feedback
Gambar 3.87 Diagram Activity View News
View Profile
mengambil data user dari database (dbuser dan dbemployee) sesuai dengan userid
Feedback
mengambil session userid
Gambar 3.88 Diagram Activity View Profile
112
View SOP
memeriksa hak akses user terhadap SOP
mengambil data SOP yang relevan dengan hak akses user dari database (dbSOP)
Feedback
Gambar 3.89 Diagram Activity View SOP
View Topik
memeriksa hak akses user terhadap topik forum
mengambil data topik yang dapat diakses oleh user dari database (dbtopik)
Feedback
Gambar 3.90 Diagram Activity View Topik
113
View User
memeriksa tipe user
bukan admin
load semua data user dari database (dbuser)
admin
Feedback
Gambar 3.91 Diagram Activity View User
View User Type
memeriksa tipe user
bukan admin
mengambil data usertype dari database (dbusertype)
admin
Feedback
Gambar 3.92 Diagram Activity View User Type
114
3. 2. 2 Sistem Data
a. Struktur Database
1. Dbemployee ( Primary key adalah userid )
Tabel 3.1 Tabel DBEmployee
Field Tipe Panjang Deskripsi
userid varchar 50 Menyimpan nomor induk karyawan
name varchar 50 Nama karyawan
photo varchar 255 Menyimpan alamat file karyawan
position varchar 50 Posisi karyawan
location varchar 50 Lokasi dari karyawan
telephone varchar 20 Nomor telepon dari karyawan
extension integer 6 Nomor extension dari yang dimiliki karyawan
division varchar 50 Menyimpan divisi dari karyawan
2. Dbmessage ( Primary key adalah kdmessage )
Tabel 3. 2 Tabel DBMessage
Field Tipe Panjang Deskripsi Extra kdmessage integer 11 Menyimpan kode message Auto increment
kdtopik integer 11 Menyimpan kode topik
dimana message diposting
userid varchar 255 Kode user
username varchar 255 Nama user
message longtext > 4 M Isi pesan
115
file varchar 255 Alamat dari file attachment
lastpos datetime Waktu terakhir posting pesan
lastedit datetime Waktu terakhir edit pesan
quote longtext > 4 M Isi kutipan dari posting yang
sudah ada
3. Dbnews ( Primary key adalah newsid )
Tabel 3. 3 Tabel DBNews
Field Tipe Panjang Deskripsi Extra
newsid integer 11 Kode dari berita Auto increment
title varchar 150 Judul berita
body longtext > 4 M Isi dari berita
release varchar 25 Tanggal rilis berita
status varchar 4 Status aktif dari berita
postdate varchar 25 Tanggal posting berita
file varchar 255 Alamat file attachment
4. Dbsop ( Primary key adalah sopid )
Tabel 3. 4 Tabel DBSOP
Field Tipe Panjang Deskripsi
Sopid integer 11 Kode dari SOP
idxGroup integer 11 Index grup dari SOP
idxSub integer 11 Index sub grup dari SOP
116
idxLamp integer 11 Index lampiran SOP
namaSop varchar 150 Nama dari SOP
namaFile varchar 255 Alamat file SOP
release varchar 25 Tanggal penerbitan SOP
summary varchar 255 Ringkasan dari SOP, berguna dalam searching
status varchar 7 Status aktif SOP
viewLevel integer 11 Tingkatan dari SOP
5. Dbtopik ( Primary key adalah kdtopik )
Tabel 3. 5 Tabel DBTopik
Field Tipe Panjang Deskripsi Extra
kdtopik integer 11 Kode dari sebuah topik Auto increment
nmtopik varchar 100 Nama dari topik
division varchar 50 Divisi dimana topik ini dapat
dilihat
tglcreate datetime Tanggal pembuatan topik
jmlreply Integer 11 Jumlah balasan dari user lain
flagLock varchar 4 Menentukan apakah sebuah
topik dikunci atau tidak
createdby varchar
80 Menyimpan nama pencipta
topik
lastpostmsg datetime Menyimpan tanggal terakhir
topik tersebut dibalas
117
userid varchar 50 Menyimpan userid yang
membuat topik tersebut
6. Dbuser ( Primary key adalah userid )
Tabel 3. 6 Tabel DBUser
Field Tipe Panjang Deskripsi
userid varchar 50 Kode user
username varchar 50 Nama user
password varchar 255 Password user
usertype varchar 100 Tipe user
status varchar 7 Status aktif user
paperStat varchar 4 Status apakah user dapat melihat selected paper
atau tidak
security_qu
estion varchar
255 Pertanyaan untuk mendapatkan password jika
lupa password
security_ans
wer
varchar 255 Jawaban dari security question
forget_pass
word
varchar 4 Status apakah seorang user telah melakukan
pengambilan password dari fitur forget
password
lastdatevisit datetime Waktu terakhir kali login dari user
divison varchar 50 Divisi tempat user
118
7. Dbusertype ( Primary key adalah id )
Tabel 3. 7 Tabel DBusertype
Field Tipe Panjang Deskripsi Extra
id integer 11 Nomor kode dari usertype Auto increment
usertype varchar
100 Nama yang menunjuk kepada
kode user, usertype yang akan
ditampilkan dalam pemilihan
usertype
b. Relasi Antar Database
dbtopik dbmessage1...* 1...*
dbuser dbusertype1...* 0...*
dbemployee
0...*
0...*
dbnews dbsop
Gambar 3. 93 Relasi Antar Database
119
3. 2. 3 Struktur Menu
a. Struktur menu sebelum login
Gambar 3.94 Struktur menu sebelum login
b. Struktur menu user setelah login
Gambar 3. 95 Struktur menu user setelah login
120
c. Struktur menu admin setelah login
Gambar 3. 96 Struktur menu admin setelah login
121
3. 2. 4 Spesifikasi Modul
a. Spesifikasi Modul Member
Berikut ini adalah spesifikasi modul bagi member :
Modul loginHandler
Awal modul
Buka koneksi database
Inisialisasi userid = kiriman parameter userid
Inisialisasi password = kiriman parameter password
Jika userid kosong atau password kosong maka
Kembali ke halaman index.jsp dengan memberikan pesan error
Selain itu
Buka dbuser untuk userid dan password yang diinput
Akhir jika
Jika inputan userid dan password tidak ada di dalam dbuser maka
Kembali ke halaman index.jsp dengan memberikan pesan error
Selain itu
get ForgetPassword untuk mendapatkan status forget password
ambil usertype, username, userid, paperStat dari dbuser
set session untuk usertype
set session untuk username
set session untuk userid
set session untuk paperStat
Jika forgetPassword = “no” maka
Ke halaman home.jsp
122
Selain itu
Ke halaman myprofile.jsp
Akhir jika
Akhir jika
Tutup koneksi database
Akhir modul
Modul logout
Awal modul
Hapus semua session yang dibuat
Kembali ke halaman index.jsp
Akhir modul
Modul changePassword
Awal modul
Buka koneksi database
Inisialisasi flag=0
Inisialisasi flagChPs=0
Inisialisasi flagConfPs=0
Inisialisasi userid
Set userid = ambil userid dari session
Inisialisasi oldPassword = kiriman parameter oldPassword
Inisialisasi chPassword = kiriman parameter chPassword
Inisialisasi confPassword = kiriman parameter confPassword
123
Jika forgetPassword = “yes” maka
oldPassword yang diinput berupa enkripsi dan tidak akan di enkrip kembali
Selain itu
oldPassword yang diinput bukan enkripsi tetapi akan dienkrip
Akhir jika
Jika chPassword kosong maka
Flag =1
Set session untuk pesan error
Selain itu
Inisialisasi i = 0
Repeat
Jika chPassword mengandung ’ , ” , \ maka
Flag = 1
Set session untuk pesan error chPassword
flagChPs=1
Akhir jika
Jika flagChPs=1 maka
Keluar dari perulangan
Akhir jika
Tambah i
Until i < panjang chPassword
Akhir jika
Jika confPassword kosong maka
Flag=1
124
Set session untuk pesan error
Selain itu
Inisialisasi i = 0
Repeat
Jika confPassword mengandung ’ , ” , \ maka
Flag = 1
Set session untuk pesan error confPassword
flagConfPs=1
Akhir jika
Jika flagConfPs=1 maka
Keluar dari perulangan
Akhir jika
Tambah i
Until i < panjang confPassword
Akhir jika
Jika flag tidak bernilai 1 maka
Buka dbuser untuk oldPassword yang diinput
Jika oldPassword ada di dalam dbuser maka
Jika chPassword sama dengan confPassword maka
Update oldPassword dan jadikan forgetPassword berisi ”no”
berdasarkan userid di dbuser
Kemudian ke halaman feedBackUser.jsp
Selain itu
Flag=1
Set session untuk pesan error
Akhir jika
125
Selain itu
Flag=1
Set session untuk pesan error
Akhir jika
Selain itu
Set session untuk isi oldPassword
Set session untuk isi chPassword
Set session untuk isi confPassword
Kembali ke halaman myprofile.jsp dengan pesan error
Akhir jika
Tutup koneksi database
Akhir modul
Modul addTopic
Awal modul
Buka koneksi database
Inisialisasi flag=0
Inisialisasi namaFile
Inisialisasi nmtopik
Inisialisasi division
Inisialisasi message
Inisialisasi tanggal
Set tanggal = ambil tanggal dan waktu dari system
Inisialisasi userid
Inisialisasi username
126
Inisialisasi namaTipe
Set userid = ambil userid dari session
Set username = ambil username dari session
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Buka dbmessage untuk ambil sameFile untuk mengecek namaFile sebelumnya
Sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag=1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat, *.jar atau *.html maka
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/Forum Files yang
ada di server
Jika ukuran file > 0 kb dan ukuran file <= 1 MB maka
Flag=0
Selain itu, Jika ukuran file > 1 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
127
Flag=1
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag=2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set nmtopik = kiriman parameter nmtopik
Set division = kiriman parameter divisi
Set message = kiriman parameter message
Akhir jika
Akhir while
Jika nmtopik kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika message kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk pesan isi nm topik
Set session untuk pesan isi message
128
Ke halaman newTopic.jsp dengan pesan error
Selain itu
Inisialisasi a=0
Inisialisasi b=0
repeat
jika nmtopik mengandung tanda petik tunggal maka
isi nmtopik beserta dengan tanda petik tunggalnya
selain itu, jika nmtopik mengandung tanda \ (backslash) maka
isi nmtopik beserta dengan tanda \
akhir jika
tambah a
until a < panjang nmtopik
repeat
jika message mengandung tanda petik tunggal maka
isi message beserta dengan tanda petik tunggalnya
selain itu, jika message mengandung tanda \ (backslash) maka
isi message beserta dengan tanda \
akhir jika
tambah b
until b < panjang message
insert userid,username,nmtopik, division dan tanggal ke dalam dbtopik
jika flag = 0 maka
insert userid,username,message, namaFile dan tanggal ke dalam dbmessage
akhir jika
129
jika flag = 2 maka
insert userid,username,message dan tanggal ke dalam dbmessage
akhir jika
ke halaman forum.jsp
Akhir jika
Tutup koneksi database
Akhir modul
Modul replyTopic
Awal modul
Buka koneksi database
Inisialisasi flag = 0
Inisialisasi tanggal
Set tanggal = = ambil tanggal dan waktu dari system
Inisialisasi message
Inisialisasi namaFile
Inisialisasi kdtopic
Inisialisasi kdmessage
Inisialisasi flagTopic
Inisialisasi userid
Inisialisasi username
Inisialisasi namaTipe
Set userid=ambil userid dari session
Set username=ambil username dari session
130
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Buka dbmessage untuk ambil sameFile untuk mengecek namaFile sebelumnya
sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag=1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat, *.jar atau *.html maka
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/Forum Files yang
ada di server
Jika ukuran file > 0 kb dan ukuran file <= 1 MB maka
Flag=0
Selain itu, Jika ukuran file > 1 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag=1
Set session untuk pesan error
Akhir jika
131
Akhir jika
Selain itu
Flag=2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set message = kiriman parameter message
Set kdtopic = kiriman parameter kdtopic
Set flagTopic = kiriman parameter flagTopic
Set kdmessage = kiriman parameter kdmessage
Akhir jika
Akhir while
Jika message kosong maka
Flag=1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk isi reply message
Jika flagTopic = ”reply” maka
Ke halaman replyTopic.jsp dengan pesan error
Selain itu, jika flagTopic = ”quote” maka
Ke halaman quote.jsp dengan pesan erorr
Akhir jika
132
Selain itu
Inisialisasi a = 0
Repeat
Jika message mengandung tanda petik tunggal maka
Isi message beserta dengan tanda petik tunggalnya
Selain itu, jika message mengandung tanda \ maka
Isi message beserta dengan tanda \
Akhir jika
Tambah a
Until a < panjang message
Ambil jml reply dari dbtopik berdasarkan kdtopic-nya kemudian jmlreply ditambah 1
Update jml reply dan tanggal reply berdasarkan kdtopic di dbtopik
Jika flag = 0 maka
Insert userid,username,message,kdtopic,tanggal,file ke dalam dbmessage
Selain itu, jika flag = 2 maka
Insert userid,username,message,kdtopic, tanggal ke dalam dbmessage
Akhir jika
Ke halaman topic.jsp
Akhir jika
Tutup koneksi database
Akhir modul
133
Modul editReply
Awal modul
Buka koneksi database
Inisialisasi message
Inisialisasi namaFile
Inisialisasi kdmessage
Inisialisasi kodetpk
Inisialisasi tanggal
Inisialisasi flag = 0
Inisialisasi flagAdmin
Inisialisasi namaTipe
Set tanggal = ambil tanggal dan waktu dari system
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Buka dbmessage untuk ambil sameFile untuk mengecek namaFile sebelumnya
sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag=1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat, *.jar atau *.html maka
Flag = 1
134
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/Forum Files yang
ada di server
Jika ukuran file > 0 kb dan ukuran file <= 1 MB maka
Flag=0
Selain itu, Jika ukuran file > 1 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag=1
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag = 2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set message = kiriman parameter message
Set kdmessage = kiriman parameter kdmessage
Set kodetpk = kiriman parameter kodetpk
Set flagAdmin = kiriman parameter flagAdmin
Akhir jika
Akhir while
Jika message kosong maka
135
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk isi message error
Ke halaman editReply.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
Repeat
Jika message mengandung tanda petik tunggal maka
Isi message beserta dengan tanda petik tunggalnya
Selain itu, jika message mengandung \ maka
Isi message beserta dengan tanda \
Akhir jika
Tambah a
Until a < panjang message
Jika flag = 0 maka
Jika flagAdmin = null
Update message, namaFile, tanggal, statusEdit=”Moderator”
berdasarkan kdmessage di dbmessage
Selain itu
Update message, namaFile, tanggal, statusEdit=”NULL”
berdasarkan kdmessage di dbmessage
Akhir jika
Selain itu, jika flag = 2 maka
Jika flagAdmin = null
136
Update message, tanggal, statusEdit=”Moderator”
berdasarkan kdmessage di dbmessage
Selain itu
Update message, tanggal, statusEdit=”NULL”
berdasarkan kdmessage di dbmessage
Akhir jika
Akhir jika
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi
Akhir modul
Modul searchNews
Awal modul
Inisialisasi key2 = kiriman parameter key2
Inisialisasi key=kiriman parameter key
Inisialisasi status=kiriman parameter status
Inisialisasi i =0
Repeat
Jika key mengandung tanda petik tunggal maka
Isi key beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < panjang key
137
Jika status = ”no” maka
Set session untuk keyNews
Set session untuk keyNews2
Selain itu, jika status = ”yes” maka
Set session untuk keyPaper
Set session untuk keyPaper2
Akhir jika
Kembali ke halaman home.jsp
Akhir modul
Modul searchSop
Awal modul
Inisialisasi keySop=kiriman parameter keySop
Inisialisasi keysop2=kiriman parameter keySop2
Inisialisasi keySop2 = ”namaSop”
Jika keySop tidak kosong maka
Inisialisasi i =0
Repeat
Jika keySop mengandung tanda petik tunggal maka
Isi keySop beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < panjang keySop
Jika keysop2 = 1 maka
138
Set keySop2 = ”namaSop”
Selain itu, jika keysop2 = 2 maka
Set keySop2 = ”release”
Selain itu, jika keysop2 = 3 maka
Set keySop2 = ”status”
Selain itu, jika keysop2 = 4 maka
Set keySop2 = ”viewLevel”
Selain itu, jika keysop2 = 5 maka
Set keySop2 = ”summary”
Akhir jika
Akhir jika
Jika keysop2 = 4 maka
Buka koneksi database
Buka dbusertype untuk mendapatkan id usertype
Set keySop = ambil id dari dbusertype
Tutup koneksi database
Akhir jika
Set session untuk keySop
Set session untuk keySop2
Kembali ke halaman sop.jsp
Akhir modul
Modul searchForum
Awal modul
Inisialisasi keyForum = kiriman parameter keyForum
Inisialisasi keyforum2 = kiriman parameter keyforum2
139
Inisialisasi keyForum2 = ”nmtopik”
Jika keyForum tidak kosong maka
Inisialisasi i =0
Repeat
Jika keyForum mengandung tanda petik tunggal maka
Isi keyForum beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < panjang keyForum
Jika keyforum2 = 1 maka
Set keyForum2 = ”nmtopik”
selain itu, jika keyforum2 = 2 maka
Set keyForum2 = ”createdby”
selain itu, jika keyforum2 = 3 maka
Set keyForum2 = ”division”
Akhir jika
Akhir jika
Set session untuk keyForum
Set session untuk keyForum2
Kembali ke halaman forum.jsp
Akhir modul
140
Modul searchEmployee
Awal modul
Inisialisasi keyEmployee = kiriman parameter keyEmployee
Inisialisasi keyemployee = kiriman parameter keyemployee
Inisialisasi keyEmployee = ”name”
Jika keyEmployee tidak kosong maka
Inisialisasi i =0
Repeat
Jika keyEmployee mengandung tanda petik tunggal maka
Isi keyEmployee beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < keyEmployee
Selain itu, jika keyemployee2 = 1 maka
keyEmployee2 = ”name”
Selain itu, jika keyemployee2 = 2 maka
keyEmployee2 = ”division”
Selain itu, jika keyemployee2 = 3 maka
keyEmployee2 = ”position”
Selain itu, jika keyemployee2 = 4 maka
keyEmployee2 = ”location”
Selain itu, jika keyemployee2 = 5 maka
keyEmployee2 = ”telephone”
Selain itu, jika keyemployee2 = 6 maka
keyEmployee2 = ”extension”
141
Akhir jika
Akhir jika
Set session untuk keyEmployee
Set session untuk keyEmployee2
Kembali ke halaman employee.jsp
Akhir modul
Modul secureQuest
Awal modul
Buka koneksi database
Inisialisasi security_question = kiriman parameter security_question
Inisialisasi security_answer = kiriman parameter security_answer
Inisialisasi flag = 0
Inisialisasi userid = ambil userid dari session
Jika security_question kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika security_answer kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
142
Set session untuk isi pesan security_question
Set session untuk isi pesan security_answer
Ke halaman security.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
Inisialisasi b = 0
Repeat
Jika security_question mengandung tanda petik tunggal maka
Isi security_question beserta dengan tanda petik tunggalnya
Selain itu, jika security_question mengandung tanda \ maka
Isi security_question beserta dengan tanda \
Akhir jika
Until a < panjang security_question
Repeat
Jika security_answer mengandung tanda petik tunggal maka
Isi security_answer beserta dengan tanda petik tunggalnya
Selain itu, jika security_answer mengandung tanda \ maka
Isi security_answer beserta dengan tanda \
Akhir jika
Tambah b
Until b < panjang security_answer
Update security_question dan security_answer berdasarkan userid di dbuser
Set session untuk flg
Ke halaman feedBackUser.jsp
Akhir jika
143
Tutup koneksi database
Akhir modul
b. Spesifikasi Modul Admin
Berikut ini adalah spesifikasi modul bagi admin :
Modul loginHandler
Awal modul
Buka koneksi database
Inisialisasi userid = kiriman parameter userid
Inisialisasi password = kiriman parameter password
Jika userid kosong atau password kosong maka
Kembali ke halaman index.jsp dengan memberikan pesan error
Selain itu
Buka dbuser untuk userid dan password yang diinput
Akhir jika
Jika inputan userid dan password tidak ada di dalam dbuser maka
Kembali ke halaman index.jsp dengan memberikan pesan error
Selain itu
get ForgetPassword untuk mendapatkan status forget password
set session untuk usertype
set session untuk username
set session untuk userid
set session untuk paperStat
144
Jika forgetPassword = “no” maka
Ke halaman home.jsp
Selain itu
Ke halaman myprofile.jsp
Akhir jika
Akhir jika
Tutup koneksi database
Akhir modul
Modul logout
Awal modul
Hapus semua session yang dibuat
Kembali ke halaman index.jsp
Akhir modul
Modul changePassword
Awal modul
Buka koneksi database
Inisialisasi flag=0
Inisialisasi flagChPs=0
Inisialisasi flagConfPs=0
Inisialisasi userid
Set userid = ambil userid dari session
145
Inisialisasi oldPassword = kiriman parameter oldPassword
Inisialisasi chPassword = kiriman parameter chPassword
Inisialisasi confPassword = kiriman parameter confPassword
Jika forgetPassword = “yes” maka
oldPassword yang diinput berupa enkripsi dan tidak akan di enkrip kembali
Selain itu
oldPassword yang diinput bukan enkripsi tetapi akan dienkrip
Akhir jika
Jika chPassword kosong maka
Flag =1
Set session untuk pesan error
Selain itu
Inisialisasi i = 0
Repeat
Jika chPassword mengandung ’ , ” , \ maka
Flag = 1
Set session untuk pesan error chPassword
flagChPs=1
Akhir jika
Jika flagChPs=1 maka
Keluar dari perulangan
Akhir jika
Tambah i
Until i < panjang chPassword
Akhir jika
146
Jika confPassword kosong maka
Flag=1
Set session untuk pesan error
Selain itu
Inisialisasi i = 0
Repeat
Jika confPassword mengandung ’ , ” , \ maka
Flag = 1
Set session untuk pesan error confPassword
flagConfPs=1
Akhir jika
Jika flagConfPs=1 maka
Keluar dari perulangan
Akhir jika
Tambah i
Until i < panjang confPassword
Akhir jika
Jika flag tidak bernilai 1 maka
Buka dbuser untuk oldPassword yang diinput
Jika oldPassword ada di dalam dbuser maka
Jika chPassword sama dengan confPassword maka
Update oldPassword dan jadikan forgetPassword berisi ”no”
berdasarkan userid di dbuser
Kemudian ke halaman feedBackUser.jsp
Selain itu
147
Flag=1
Set session untuk pesan error
Akhir jika
Selain itu
Flag=1
Set session untuk pesan error
Akhir jika
Selain itu
Set session untuk isi oldPassword
Set session untuk isi chPassword
Set session untuk isi confPassword
Kembali ke halaman myprofile.jsp dengan pesan error
Akhir jika
Tutup koneksi database
Akhir modul
Modul addTopic
Awal modul
Buka koneksi database
Inisialisasi flag=0
Inisialisasi namaFile
Inisialisasi nmtopik
Inisialisasi division
Inisialisasi message
Inisialisasi tanggal
Set tanggal = ambil tanggal dan waktu dari system
148
Inisialisasi userid
Inisialisasi username
Inisialisasi namaTipe
Set userid = ambil userid dari session
Set username = ambil username dari session
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Buka dbmessage untuk ambil sameFile untuk mengecek namaFile sebelumnya
Sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag=1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat, *.jar atau *.html maka
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/Forum Files yang
ada di server
Jika ukuran file > 0 kb dan ukuran file <= 1 MB maka
Flag=0
Selain itu, Jika ukuran file > 1 MB maka
Set session untuk flg
149
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag=1
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag=2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set nmtopik = kiriman parameter nmtopik
Set division = kiriman parameter divisi
Set message = kiriman parameter message
Akhir jika
Akhir while
Jika nmtopik kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika message kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
150
Set session untuk pesan isi nm topik
Set session untuk pesan isi message
Ke halaman newTopic.jsp dengan pesan error
Selain itu
Inisialisasi a=0
Inisialisasi b=0
repeat
jika nmtopik mengandung tanda petik tunggal maka
isi nmtopik beserta dengan tanda petik tunggalnya
selain itu, jika nmtopik mengandung tanda \ (backslash) maka
isi nmtopik beserta dengan tanda \
akhir jika
tambah a
until a < panjang nmtopik
repeat
jika message mengandung tanda petik tunggal maka
isi message beserta dengan tanda petik tunggalnya
selain itu, jika message mengandung tanda \ (backslash) maka
isi message beserta dengan tanda \
akhir jika
tambah b
until b < panjang message
insert userid,username,nmtopik, division dan tanggal ke dalam dbtopik
jika flag = 0 maka
151
insert userid,username,message, namaFile dan tanggal ke dalam dbmessage
akhir jika
jika flag = 2 maka
insert userid,username,message dan tanggal ke dalam dbmessage
akhir jika
ke halaman forum.jsp
Akhir jika
Tutup koneksi database
Akhir modul
Modul replyTopic
Awal modul
Buka koneksi database
Inisialisasi flag = 0
Inisialisasi tanggal
Set tanggal = ambil tanggal dan waktu dari system
Inisialisasi message
Inisialisasi namaFile
Inisialisasi kdtopic
Inisialisasi kdmessage
Inisialisasi flagTopic
Inisialisasi userid
Inisialisasi username
Inisialisasi namaTipe
152
Set userid=ambil userid dari session
Set username=ambil username dari session
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Buka dbmessage untuk ambil sameFile untuk mengecek namaFile sebelumnya
sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag=1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat, *.jar atau *.html maka
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/Forum Files yang
ada di server
Jika ukuran file > 0 kb dan ukuran file <= 1 MB maka
Flag=0
Selain itu, Jika ukuran file > 1 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag=1
153
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag=2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set message = kiriman parameter message
Set kdtopic = kiriman parameter kdtopic
Set flagTopic = kiriman parameter flagTopic
Set kdmessage = kiriman parameter kdmessage
Akhir jika
Akhir while
Jika message kosong maka
Flag=1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk isi reply message
Jika flagTopic = ”reply” maka
Ke halaman replyTopic.jsp dengan pesan error
Selain itu, jika flagTopic = ”quote” maka
Ke halaman quote.jsp dengan pesan erorr
154
Akhir jika
Selain itu
Inisialisasi a = 0
Repeat
Jika message mengandung tanda petik tunggal maka
Isi message beserta dengan tanda petik tunggalnya
Selain itu, jika message mengandung tanda \ maka
Isi message beserta dengan tanda \
Akhir jika
Tambah a
Until a < panjang message
Ambil jml reply dari dbtopik berdasarkan kdtopic-nya kemudian jmlreply ditambah 1
Update jml reply dan tanggal reply berdasarkan kdtopic di dbtopik
Jika flag = 0 maka
Insert userid,username,message,kdtopic,tanggal,file ke dalam dbmessage
Selain itu, jika flag = 2 maka
Insert userid,username,message,kdtopic, tanggal ke dalam dbmessage
Akhir jika
Ke halaman topic.jsp
Akhir jika
Tutup koneksi database
Akhir modul
155
Modul editReply
Awal modul
Buka koneksi database
Inisialisasi message
Inisialisasi namaFile
Inisialisasi kdmessage
Inisialisasi kodetpk
Inisialisasi tanggal
Inisialisasi flag = 0
Inisialisasi flagAdmin
Inisialisasi namaTipe
Set tanggal = ambil tanggal dan waktu dari system
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Buka dbmessage untuk ambil sameFile untuk mengecek namaFile sebelumnya
sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag=1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat, *.jar atau *.html maka
156
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/Forum Files yang
ada di server
Jika ukuran file > 0 kb dan ukuran file <= 1 MB maka
Flag=0
Selain itu, Jika ukuran file > 1 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag=1
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag = 2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set message = kiriman parameter message
Set kdmessage = kiriman parameter kdmessage
Set kodetpk = kiriman parameter kodetpk
Set flagAdmin = kiriman parameter flagAdmin
Akhir jika
Akhir while
157
Jika message kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk isi message error
Ke halaman editReply.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
Repeat
Jika message mengandung tanda petik tunggal maka
Isi message beserta dengan tanda petik tunggalnya
Selain itu, jika message mengandung \ maka
Isi message beserta dengan tanda \
Akhir jika
Tambah a
Until a < panjang message
Jika flag = 0 maka
Jika flagAdmin = null
Update message, namaFile, tanggal, statusEdit=”Moderator”
berdasarkan kdmessage di dbmessage
Selain itu
Update message, namaFile, tanggal, statusEdit=”NULL”
berdasarkan kdmessage di dbmessage
Akhir jika
Selain itu, jika flag = 2 maka
158
Jika flagAdmin = null
Update message, tanggal, statusEdit=”Moderator”
berdasarkan kdmessage di dbmessage
Selain itu
Update message, tanggal, statusEdit=”NULL”
berdasarkan kdmessage di dbmessage
Akhir jika
Akhir jika
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi
Akhir modul
Modul searchNews
Awal modul
Inisialisasi key2 = kiriman parameter key2
Inisialisasi key=kiriman parameter key
Inisialisasi status=kiriman parameter status
Inisialisasi i =0
Repeat
Jika key mengandung tanda petik tunggal maka
Isi key beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < panjang key
159
Jika status = ”no” maka
Set session untuk keyNews
Set session untuk keyNews2
Selain itu, jika status = ”yes” maka
Set session untuk keyPaper
Set session untuk keyPaper2
Akhir jika
Kembali ke halaman home.jsp
Akhir modul
Modul searchSop
Awal modul
Inisialisasi keySop=kiriman parameter keySop
Inisialisasi keysop2=kiriman parameter keySop2
Inisialisasi keySop2 = ”namaSop”
Jika keySop tidak kosong maka
Inisialisasi i =0
Repeat
Jika keySop mengandung tanda petik tunggal maka
Isi keySop beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < panjang keySop
160
Jika keysop2 = 1 maka
Set keySop2 = ”namaSop”
Selain itu, jika keysop2 = 2 maka
Set keySop2 = ”release”
Selain itu, jika keysop2 = 3 maka
Set keySop2 = ”status”
Selain itu, jika keysop2 = 4 maka
Set keySop2 = ”viewLevel”
Selain itu, jika keysop2 = 5 maka
Set keySop2 = ”summary”
Akhir jika
Akhir jika
Jika keysop2 = 4 maka
Buka koneksi database
Buka dbusertype untuk mendapatkan id usertype
Set keySop = ambil id dari dbusertype
Tutup koneksi database
Akhir jika
Set session untuk keySop
Set session untuk keySop2
Kembali ke halaman sop.jsp
Akhir modul
Modul searchForum
Awal modul
Inisialisasi keyForum = kiriman parameter keyForum
161
Inisialisasi keyforum2 = kiriman parameter keyforum2
Inisialisasi keyForum2 = ”nmtopik”
Jika keyForum tidak kosong maka
Inisialisasi i =0
Repeat
Jika keyForum mengandung tanda petik tunggal maka
Isi keyForum beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < panjang keyForum
Jika keyforum2 = 1 maka
Set keyForum2 = ”nmtopik”
selain itu, jika keyforum2 = 2 maka
Set keyForum2 = ”createdby”
selain itu, jika keyforum2 = 3 maka
Set keyForum2 = ”division”
Akhir jika
Akhir jika
Set session untuk keyForum
Set session untuk keyForum2
Kembali ke halaman forum.jsp
Akhir modul
162
Modul searchEmployee
Awal modul
Inisialisasi keyEmployee = kiriman parameter keyEmployee
Inisialisasi keyemployee = kiriman parameter keyemployee
Inisialisasi keyEmployee = ”name”
Jika keyEmployee tidak kosong maka
Inisialisasi i =0
Repeat
Jika keyEmployee mengandung tanda petik tunggal maka
Isi keyEmployee beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < keyEmployee
Selain itu, jika keyemployee2 = 1 maka
keyEmployee2 = ”name”
Selain itu, jika keyemployee2 = 2 maka
keyEmployee2 = ”division”
Selain itu, jika keyemployee2 = 3 maka
keyEmployee2 = ”position”
Selain itu, jika keyemployee2 = 4 maka
keyEmployee2 = ”location”
Selain itu, jika keyemployee2 = 5 maka
keyEmployee2 = ”telephone”
Selain itu, jika keyemployee2 = 6 maka
163
keyEmployee2 = ”extension”
Akhir jika
Akhir jika
Set session untuk keyEmployee
Set session untuk keyEmployee2
Kembali ke halaman employee.jsp
Akhir modul
Modul secureQuest
Awal modul
Buka koneksi database
Inisialisasi security_question = kiriman parameter security_question
Inisialisasi security_answer = kiriman parameter security_answer
Inisialisasi flag = 0
Inisialisasi userid = ambil userid dari session
Jika security_question kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika security_answer kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
164
Jika flag = 1 maka
Set session untuk isi pesan security_question
Set session untuk isi pesan security_answer
Ke halaman security.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
Inisialisasi b = 0
Repeat
Jika security_question mengandung tanda petik tunggal maka
Isi security_question beserta dengan tanda petik tunggalnya
Selain itu, jika security_question mengandung tanda \ maka
Isi security_question beserta dengan tanda \
Akhir jika
Until a < panjang security_question
Repeat
Jika security_answer mengandung tanda petik tunggal maka
Isi security_answer beserta dengan tanda petik tunggalnya
Selain itu, jika security_answer mengandung tanda \ maka
Isi security_answer beserta dengan tanda \
Akhir jika
Tambah b
Until b < panjang security_answer
Update security_question dan security_answer berdasarkan userid di dbuser
Set session untuk flg
Ke halaman feedBackUser.jsp
165
Akhir jika
Tutup koneksi database
Akhir modul
Modul newsHandler
Awal modul
Inisialisasi postdate = ambil tanggal dari system
Inisialisasi title
Inisialisasi body
Inisialisasi stat
Inisialisasi namaFile
Inisialisasi status
Inisialisasi flag = 0
Inisialisasi tanggal
Inisialisasi bulan
Inisialisasi tahun
Inisialisasi usertype = ambil usertype dari session
Inisialisasi namaTipe
Jika usertype adalah admin maka
Buka koneksi database
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Buka dbnews untuk ambil sameFile untuk mengecek namaFile sebelumnya
166
sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag = 1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat , *.jar atau *.html maka
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/News Files yang ada
di server
Jika ukuran file > 0 kb dan ukuran file <= 10 MB maka
Flag = 0
Selain itu, jika ukuran file > 10 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag = 2
Akhir jika
Akhir jika
167
Selain itu, jika inputan berupa parameter maka
Set tanggal = kiriman parameter tanggal
Set bulan = kiriman parameter bulan
Set tahun = kiriman parameter tahun
Set title = kiriman parameter title
Set body = kiriman parameter body
Set stat = kiriman parameter stat
Akhir jika
Akhir while
Jika stat = 1 maka
Set status = ”no”
Selain itu, jika stat = 2 maka
Set status = ”yes”
Akhir jika
Jika title kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika body kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika tanggal = 0 atau bulan = 0 atau tahun = 0 maka
168
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk isi pesan title
Set session untuk isi pesan body
Ke halaman addNews.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
Repeat
Jika title mengandung tanda petik tunggal maka
Isi title beserta dengan tanda petik tunggal
Selain itu, jika title mengandung tanda \ maka
Isi title beserta dengan tanda \
Akhir jika
Tambah a
Until a < panjang title
Inisialisasi b = 0
Repeat
Jika body mengandung tanda petik tunggal maka
Isi body beserta dengan tanda petik tunggal
Selain itu, jika body mengandung tanda \ maka
Isi body beserta dengan tanda \
Akhir jika
Tambah b
Until b < panjang title
169
Inisialisasi release = gabung tanggal, bulan, tahun
Jika flag = 0 maka
Insert title, body, release, status, postdate dan namaFile ke dalam dbnews
Selain itu, jika flag = 2 maka
Insert title, body, release, status, postdate ke dalam dbnews
Akhir jika
Ke halaman addNews.jsp dengan pesan ”successful”
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul editNews
Awal modul
Inisialisasi tanggal
Inisialisasi bulan
Inisialisasi tahun
Inisialisasi title
Inisialisasi body
Inisialisasi stat
Inisialisasi namaFile
170
Inisialisasi status
Inisialisasi idx
Inisialisasi flag = 0
Inisialisasi usertype = ambil usertype dari session
Inisialisasi namaTipe
Jika usertype adalah admin maka
Buka koneksi database
While inputan tidak null
Jika inputan berupa file maka
Set namaFile = file
Set namaTipe = contentType
Buka dbnews untuk ambil sameFile untuk mengecek namaFile sebelumnya
sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag = 1
Set session untuk pesan error
Selain itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat , *.jar atau *.html maka
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/News Files yang ada
di server
Jika ukuran file > 0 kb dan ukuran file <= 10 MB maka
171
Flag = 0
Selain itu, jika ukuran file > 10 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag = 2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set tanggal = kiriman parameter tanggal
Set bulan = kiriman parameter bulan
Set tahun = kiriman parameter tahun
Set title = kiriman parameter title
Set body = kiriman parameter body
Set stat = kiriman parameter stat
Set idx = kiriman parameter idx
Akhir jika
Akhir while
Jika stat = 1 maka
Set status = ”no”
Selain itu, jika stat = 2 maka
172
Set status = ”yes”
Akhir jika
Jika title kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika body kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika tanggal = 0 atau bulan = 0 atau tahun = 0 maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk isi pesan title
Set session untuk isi pesan body
Ke halaman editNews.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
Inisialisasi b = 0
Repeat
Jika title mengandung tanda petik tunggal maka
173
Isi title beserta dengan tanda petik tunggal
Selain itu, jika title mengandung tanda \ maka
Isi title beserta dengan tanda \
Akhir jika
Tambah a
Until a < panjang title
Repeat
Jika body mengandung tanda petik tunggal maka
Isi body beserta dengan tanda petik tunggal
Selain itu, jika body mengandung tanda \ maka
Isi body beserta dengan tanda \
Akhir jika
Tambah b
Until b < panjang body
Inisialisasi release = gabung tanggal, bulan, tahun
Jika flag = 0 maka
Update title, body, release, status, file berdasarkan newsid di dbnews
Selain itu, jika flag = 2 maka
Update title, body, release, status berdasarkan newsid di dbnews
Akhir jika
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi database
174
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul deleteNews
Awal modul
Inisialisasi id = kiriman parameter index
Inisialisasi usertype = ambil usertype dari session
Jika usertype adalah admin maka
Buka koneksi database
Jika id kosong maka
Ke halaman home.jsp
Selain itu
Delete news berdasarkan newsid di dbnews
Ke halaman home.jsp
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
175
Modul addSop
Awal modul
Inisialisasi namaSop
Inisialisasi idxGroup
Inisialisasi idxSub
Inisialisasi idxLamp
Inisialisasi releaseDate
Inisialisasi releaseMonth
Inisialisasi releaseYear
Inisialisasi summary
Inisialisasi viewLevel
Inisialisasi namaFile
Inisialisasi flgSub
Inisialisasi flag = 0
Inisialisasi namaTipe
Inisialisasi usertype = ambil usertype dari session
Jika usertype adalah admin maka
Buka koneksi database
While inputan tidak null
Jika inputan berupa file maka
Set namaFile=file
Set namaTipe=contentType
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.pdf maka
176
Pindahkan file ke folder FLS/PDF Files yang ada di server
Jika ukuran file > 0 kb dan ukuran file <= 10 MB maka
Flag = 0
Selain itu, jika ukuran file > 10 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set namaSop = kiriman parameter namaSop
Set idxGroup = kiriman parameter idxGroup
Set idxSub = kiriman parameter idxSub
Set idxLamp = kiriman parameter idxLamp
Set releaseDate = kiriman parameter releaseDate
Set releaseMonth = kiriman parameter releaseMonth
Set releaseYear = kiriman parameter releaseYear
Set summary = kiriman parameter summary
Set viewLevel = kiriman parameter viewLevel
177
Set flgSub = kiriman parameter flgSub
Akhir jika
Akhir while
Jika namaSop kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika releaseDate = 0 atau releaseMonth = 0 ataua releaseYear = 0 maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika summary kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Inisialisasi release = gabung releaseDate, releaseMonth, releaseYear
Inisialisasi sopid= (idxGroup * 100000) + (idxSub*100) + idxLamp
Jika flag = 1 maka
Set session untuk isi pesan namaSop
Set session untuk isi pesan summary
Ke halaman addSop.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
178
Inisialisasi b = 0
Repeat
Jika namaSop mengandung tanda petik tunggal maka
Isi namaSop beserta dengan tanda petik tunggalnya
Selain itu, jika namaSop mengandung tanda \ maka
Isi namaSop beserta dngan tanda \
Akhir jika
Tambah a
Until a < panjang namaSop
Repeat
Jika summary mengandung tanda petik tunggal maka
Isi summary beserta dengan tanda petik tunggalnya
Selain itu, jika summary mengandung tanda \ maka
Isi summary beserta dengan tanda \
Akhir jika
Tambah b
Until b < panjang summary
Insert sopid, idxGroup, idxSub, idxLamp, namaSop, namaFile, release, summary,
viewlevel ke dalam dbsop
ke halaman sop.jsp
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
179
Akhir modul
Modul editSop
Awal modul
Inisialisasi idxGroup
Inisialisasi idxSub
Inisialisasi idxLamp
Inisialisasi flag = 0
Inisialisasi flagClass
Inisialisasi namaSop
Inisialisasi releaseDate
Inisialisasi releaseMonth
Inisialisasi releaseYear
Inisialisasi summary
Inisialisasi status
Inisialisasi viewLevel
Inisialisasi namaFile
Inisialisasi namaTipe
Inisialisasi namaStatus
Inisialisasi release
Inisialisasi usertype = ambil usertype dari session
Jika usertype adalah admin maka
Buka koneksi database
While inputan tidak null
Jika inputan berupa file maka
Set namaFile = file
Set namaTipe = contentType
180
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.pdf maka
Pindahkan file ke dalam folder FLS/PDF Files
yang ada di server
Jika ukuran file > 0 kb dan ukuran file <= 10 MB maka
Flag = 0
Selain itu, jika ukuran file > 10 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 2
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set namaSop = kiriman parameter namaSop
Set idxGroup = kiriman parameter idxGroup
Set idxSub = kiriman parameter idxSub
Set idxLamp = kiriman parameter idxLamp
Set flagClass = kiriman parameter flagClass
Set releaseDate = kiriman parameter releaseDate
Set releaseMonth = kiriman parameter releaseMonth
181
Set releaseYear = kiriman parameter releaseYear
Set summary = kiriman parameter summary
Set viewLevel = kiriman parameter viewLevel
Set status = kiriman parameter status
Akhir jika
Akhir while
Jika namaSop kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika releaseDate = 0 atau releaseMonth = 0 atau releaseYear = 0 maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika summary kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag = 1 maka
Set session untuk isi pesan namaSop
Set session untuk isi pesan summary
Ke halaman editSop.jsp dengan pesan error
Selain itu
Jika status = 1 maka
182
Set namaStatus = ”aktif”
Selain itu, jika status = 2 maka
Set namaStatus = ”pasif”
Akhir jika
Set release = gabung releaseDate, releaseMonth, releaseYear
Inisialisasi sopid = (idxGroup * 10000) + (idxSub * 100) + idxLamp
Inisialisasi a = 0
Inisialisasi b = 0
Repeat
Jika namaSop mengandung tanda petik tunggal maka
Isi namaSop beserta dengan tanda petik tunggalnya
Selain itu, jika namaSop mengandung tanda \ maka
Isi namaSop beserta dengan tanda \
Akhir jika
Tambah a
Until a < panjang namaSop
Repeat
Jika summary mengandung tanda petik tunggal maka
Isi summary beserta dengan tanda petik tunggalnya
Selain itu, jika summary mengandung tanda \ maka
Isi summary beserta dengan tanda \
Akhir jika
Tambah b
Until b < panjang summary
183
Jika flagClass = 1 maka
Buka dbsop untuk mengambil jmlSop berdasarkan kategori atau idxGroup
Jika status = 2 maka
Buka dbsop untuk mengambil jmlStatus berdasarkan kategori atau
idxGroup
jmlStatus yang diambil hanya status yang pasif saja
Akhir jika
Selain itu, jika flagClass = 2 maka
Buka dbsop untuk mengambil jmlSop berdasarkan sub kategori atau idxSub
Jika status = 2 maka
Buka dbsop untuk mengambil jmlStatus berdasarkan sub kategori atau
idxSub
jmlStatus yang diambil hanya status yang pasif saja
Akhir jika
Akhir jika
Jika jmlSop tidak kosong maka
Inisialisasi i = 0
Repeat
Update viewLevel berdasarkan sopid di dbsop
Tambah i
Until i < jmlSop
Akhir jika
184
Jika jmlStatus tidak kosong maka
Inisialisasi a = 0
Repeat
Update namaStatus menjadi pasif berdasarkan sopid yang ada
di dbsop
Until a < jmlStatus
Akhir jika
Jika flag = 0 maka
Update namaSop, namaFile, release, summary, namaStatus, viewLevel
berdasarkan sopid di dbsop
Selain itu, jika flag = 2 maka
Update namaSop, release, summary, namaStatus, viewLevel berdasarkan sopid
di dbsop
Akhir jika
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul deleteSOP
Awal modul
185
Inisialisasi flag = kiriman parameter flag
Inisialisasi idxGroup = kiriman parameter idxGroup
Inisialisasi idxSub = kiriman parameter idxSub
Inisialisasi idxLamp = kiriman parameter idxLamp
Inisialisasi usertype = ambil usertype dari session
Inisialisasi sopid = 0
Inisialisasi tempIdxGroup = 0
Jika usertype adalah admin maka
Buka koneksi database
Jika flag = 1 maka
Delete dbsop berdasarkan idxGroup, idxSub >= idxSub saat ini,
idxLamp >= idxLamp saat ini
Buka dbsop berdasarkan idxGroup > idxGroup saat ini untuk mendapatkan
idxGroup, idxSub, idxLamp yang ada di dbsop
sopid = ( (idxGroup yang ada di dbsop – 1)*10000) +
((idxSub yang ada di dbsop – 1)*100) + idxLamp yang ada di dbsop
Update idxGroup=idxGroup-1, sopid berdasarkan sopid di dbsop
tempIdxGroup = idxGroup yang ada di dbsop – 1
jika idxGroup <= tempIdxGroup maka
ke halaman sop.jsp dengan halaman sekarang sesuai dengan idxGroup
selain itu
ke halaman sop.jsp dengan halaman sekarang dengan idxGroup-1
akhir jika
186
Selain itu, jika flag = 2 maka
Delete dbsop berdasarkan idxGroup, idxSub dan idxLamp >= idxLamp saat ini
Buka dbsop berdasarkan idxGroup, idxSub > idxSub saat ini dan idxLamp
Sopid= (idxGroup yang ada di dbsop *10000) +
((idxSub yang ada di dbop-1)*100) + idxLamp yang ada di dbsop
Update idxSub=idxSub-1, sopid berdasarkan sopid di dbsop
Ke halaman sop.jsp dengan halaman sekarang = idxGroup
Selain itu, jika flag = 3 maka
Delete dbsop berdasarkan idxGroup, idxSub dan idxLamp
Buka dbsop berdasarkan idxGroup, idxSub, idxLamp > idxLamp saat ini
Sopid= (idxGroup yang ada di dbsop *10000) +
(idxSub yang ada di dbop*100) + idxLamp yang ada di dbsop - 1
Update idxLamp=idxLamp-1, sopid berdasarkan sopid di dbsop
Ke halaman sop.jsp dengan halaman sekarang = idxGroup
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul editTopic
Awal modul
187
Inisialisasi nmtopik
Inisialisasi division
Inisialisasi namaFile
Inisialisasi message
Inisialisasi kdtopik
Inisialisasi flag = 0
Inisialisasi namaTipe
Buka koneksi database
While inputan tidak null
Jika inputan berupa file maka
Set namaFile = file
Set namaTipe = contentType
Buka dbmessage untuk ambil sameFile untuk mengecek namaFile sebelumnya
sudah ada di database atau belum
Jika sameFile = ”yes” maka
Flag = 1
Set session untuk pesan error
Selai n itu
Jika namaFile tidak kosong maka
Jika namaTipe adalah *.exe , *.bat , *.jar atau *.html maka
Flag = 1
Set session untuk pesan error
Selain itu
Pindahkan file ke dalam folder FLS/Forum Files yang
ada di server
188
Jika ukuran file > 0 kb dan ukuran file <= 1 MB maka
Flag = 0
Selain itu, jika ukuran file > 1 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
Selain itu
Flag = 2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set nmtopik = kiriman parameter nmtopik
Set kdtopik = kiriman parameter kdtopik
Set division = kiriman parameter divisi
Set message = kiriman parameter message
Akhir jika
Akhir while
Jika nmtopik kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
189
Jika message kosong maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika flag =1 maka
Set session untuk isi pesan nmtopik
Set session untuk isi pesan message
Ke halaman editTopic.jsp dengan pesan error
Selain itu
Inisialisasi a = 0
Inisialisasi b = 0
Repeat
Jika nmtopik mengandung tanda petik tunggal maka
Isi nmtopik beserta dengan tanda petik tunggalnya
Selain itu, jika nmtopik mengandung tanda \ maka
Isi nmtopik dengan tanda \
Akhir jika
Tambah a
Until a < panjang nmtopik
Repeat
Jika message mengandung tanda petik tunggal maka
Isi message beserta dengan tanda petik tunggalnya
Selain itu, jika message mengandung tanda \ maka
Ini message dengan tanda \
Akhir jika
190
Tambah b
Until a < panjang message
Update nmtopik, division berdasarkan kdtopik di dbtopik
Buka dbtopik untuk mengambil tglCreate dan waktuCreate
Inisialisasi lastpost = gabung tglCreate dan waktuCreate
Jika flag = 0 maka
Update message, namaFile, berdasarkan kdtopik dan lastpost di dbmessage
Selain itu, jika flag = 2 maka
Update message berdasarkan kdtopik dan lastpost di dbmessage
Akhir jika
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi database
Akhir modul
Modul lock
Awal modul
Inisialisasi kodetopik = kiriman parameter kdtopik
Inisialisasi flagLock = kiriman parameter flagLock
Buka koneksi database
Inisialisasi usertype = ambil usertype dari session
191
Jika usertype = ”admin” maka
Jika kodetopik kosong atau flagLock kosong maka
Ke halaman forum.jsp
Selain itu
Buka dbtopik untuk mengambil flagKdTopik untuk mengecek apakah topik ini
ada di database atau tidak
Jika flagKdTopik = ”yes” maka
Ke halaman forum.jsp
Selain itu
Jika flagLock = ”no” atau flagLock = yes maka
Update flagLock berdasarkan kodetopik
Ke halaman forum.jsp
Selain itu
Ke halaman forum.jsp
Akhir jika
Akhir jika
Akhir jika
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Tutup koneksi database
Akhir modul
192
Modul deleteTopic
Awal modul
Inisialisasi kdtpk = kiriman parameter kdtopik
Inisialisasi usertype = ambil usertype dari session
Jika usertype = admin maka
Jika kdtpk kosong maka
Ke halaman forum.jsp
Selain itu
Buka koneksi database
Buka dbtopik untuk mengambil flagKdTopik untuk mengecek apakah topik ini
ada di database atau tidak
Jika flagKdTopik = ”yes” maka
Ke halaman forum.jsp
Selain itu
Delete dbtopik berdasarkan kdtpk
Delete dbmessage berdasarkan kdtpk
Ke halaman forum.jsp
Akhir jika
Tutup koneksi database
Akhir jika
Selain itu
Ke halaman index.jsp
Akhir jika
193
Akhir modul
Modul deleteMessage
Awal modul
Inisialisasi usertype = ambil usertype dari session
Jika usertype adalah admin maka
Buka koneksi database
Inisialisasi kdmessage = kiriman parameter kdmessage
Buka dbmessage untuk mendapatkan kdtopik berdasarkan kdmessage
Delete dbmessage berdasarkan kdmessage
Update jmlReply = jmlReply – 1 berdasarkan kdtopik di dbtopik
Ke halaman topic.jsp berdasarkan kdtopik
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul addEmployee
Awal modul
Inisialisasi nik
Inisialisasi name
Inisialisasi position
Inisialisasi location
Inisialisasi telephone
Inisialisasi extension
Inisialisasi photo
194
Inisialisasi namaTipe
Inisialisasi division
Inisialisasi flag = 0
Inisialisasi flagAngka = 0
Inisialisasi flagBukanAngka = 0
Inisialisasi flagAngka2 = 0
Inisialisasi flagBukanAngka2 = 0
Inisialisasi flagNik = 0, flagName = 0, flagPos = 0, flagLoc = 0, flagDiv = 0
Inisialisasi usertype = ambil usertype dari session
Jika usertype adalah admin maka
Buka koneksi database
While inputan tidak null
Jika inputan berupa file maka
Set photo = file photo
Buka dbemployee untuk mengambil samePhoto untuk mengecek apakah photo
sudah ada di database atau belum
Jika samePhoto = ”yes” maka
Flag = 1
Set session untuk pesan error
Selain itu
Set namaTipe = contentType
Jika photo tidak kosong maka
Jika namaTipe *.jpeg atau *.gif atau *.pjpeg maka
Flag = 0
Pindahkan file photo ke folder images employee
195
yang ada di server
Jika ukuran file>0kb dan ukuran file<=10 MB maka
Flag = 0
Selain itu, jika ukuran file > 10 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan
pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set nik = kiriman parameter nik
Set name = kiriman parameter name
Set position = kiriman parameter position
Set location = kiriman parameter location
Set telephone = kiriman parameter telephone
Set extension = kiriman parameter extension
Set division = kiriman parameter division
196
Akhir jika
Akhir while
Buka dbemployee untuk mengecek nik yang diinput apakah sudah ada di database
atau belum
Jika nik sudah ada di database sebelumnya maka
Flag = 1
Set session untuk pesan error
Akhir jika
Jika nik kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi x = 0
Repeat
Jika nik mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagNik = 1
Akhir jika
Jika flagNik = 1 maka
Keluar dari perulangan
Akhir jika
Tambah x
Until x < panjang nik
Akhir jika
197
Jika name kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi y = 0
Repeat
Jika name mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagName = 1
Akhir jika
Jika flagName = 1 maka
Keluar dari perulangan
Akhir jika
Tambah y
Until y < panjang name
Akhir jika
Jika position kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi z = 0
Repeat
Jika position mengandung tanda \ , ” , ’ maka
Flag = 1
198
Set session untuk pesan error
flagPos = 1
Akhir jika
Jika flagPos = 1 maka
Keluar dari perulangan
Akhir jika
Tambah z
Until z < panjang position
Akhir jika
Jika location kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi c = 0
Repeat
Jika location mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagLoc = 1
Akhir jika
Jika flagLoc = 1 maka
Keluar dari perulangan
Akhir jika
Tambah c
Until c < panjang location
199
Akhir jika
Jika telephone kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Jika telephone >= 6 digit maka
Inisialisasi i = 0
Repeat
Jika telephone yang diinput bukan angka, ’-’, ’/’ maka
Tambah flagBukanAngka
Selain itu
Tambah flagAngka
Akhir jika
Tambah i
Until i < panjang telephone
Jika nilai flagAngka tidak sama dengan panjang telephone angka maka
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
Jika extension kosong maka
200
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi a = 0
Repeat
Jika extension yang diinput bukan angka maka
Tambah flagBukanAngka2
Selain itu
Tambah flagAngka2
Akhir jika
Tambah a
Until a < panjang extension
Jika nilai flagAngka2 tidak sama dengan panjang extension maka
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
Jika division kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi d = 0
Repeat
Jika division mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
201
flagDiv = 1
Akhir jika
Jika flagDiv = 1 maka
Keluar dari perulangan
Akhir jika
Tambah d
Until d < panjang division
Akhir jika
Jika flag = 1 maka
Set session untuk isi pesan nik
Set session untuk isi pesan name
Set session untuk isi pesan position
Set session untuk isi pesan location
Set session untuk isi pesan telephone
Set session untuk isi pesan extension
Set session untuk isi pesan division
Ke halaman addEmployee.jsp dengan pesan error
Selain itu
Jika flag = 0 maka
Insert nik dengan huruf besar semua, name dengan huruf besar semua, photo,
position, location, telephone, extension, division dengan huruf besar semua ke
ke dalam dbemployee
Selain itu, jika flag = 2 maka
Insert nik dengan huruf besar semua, name dengan huruf besar semua,
position, location, telephone, extension, division dengan huruf besar semua ke
ke dalam dbemployee
202
Akhir jika
Ke halaman addEmployee.jsp dengan pesan ”successful”
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul editEmployee
Awal modul
Inisialisasi nik
Inisialisasi name
Inisialisasi position
Inisialisasi location
Inisialisasi telephone
Inisialisasi extension
Inisialisasi photo
Inisialisasi division
Inisialisasi namaTipe
Inisialisasi flag = 0, flagAngka = 0, flagBukanAngka = 0, flagAngka2 = 0, flagBukanAngka2 = 0
Inisialisasi flagName = 0, flagPos = 0, flagLoc = 0, flagDiv = 0
Inisialisasi usertype = ambil usertype dari session
Jika usertype adalah admin maka
203
Buka koneksi database
While inputan tidak null
Jika inputan berupa file maka
Set photo = file photo
Buka dbemployee untuk mengambil samePhoto untuk mengecek apakah photo
sudah ada di database atau belum
Jika samePhoto = ”yes” maka
Flag = 1
Set session untuk pesan error
Selain itu
Set namaTipe = contentType
Jika photo tidak kosong maka
Jika namaTipe *.jpeg atau *.gif atau *.pjpeg maka
Flag = 0
Pindahkan file photo ke folder images employee
yang ada di server
Jika ukuran file>0kb dan ukuran file<=10 MB maka
Flag = 0
Selain itu, jika ukuran file > 10 MB maka
Set session untuk flg
Ke halaman feedBackUser.jsp dengan
pesan error
Selain itu, jika ukuran file = 0 kb maka
Flag = 1
Set session untuk pesan error
204
Akhir jika
Selain itu
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 2
Akhir jika
Akhir jika
Selain itu, jika inputan berupa parameter maka
Set nik = kiriman parameter nik
Set name = kiriman parameter name
Set position = kiriman parameter position
Set location = kiriman parameter location
Set telephone = kiriman parameter telephone
Set extension = kiriman parameter extension
Set division = kiriman parameter division
Akhir jika
Akhir while
Jika name kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi x = 0
Repeat
Jika name mengandung tanda \ , ” , ’ maka
Flag = 1
205
Set session untuk pesan error
flagName = 1
Akhir jika
Jika flagName = 1 maka
Keluar dari perulangan
Akhir jika
Tambah x
Until x < panjang name
Akhir jika
Jika division kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi y = 0
Repeat
Jika division mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagDiv = 1
Akhir jika
Jika flagDiv = 1 maka
Keluar dari perulangan
Akhir jika
Tambah y
Until y < panjang division
206
Akhir jika
Jika position kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi z = 0
Repeat
Jika position mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagPos = 1
Akhir jika
Jika flagPos = 1 maka
Keluar dari perulangan
Akhir jika
Tambah z
Until z < panjang position
Akhir jika
Jika location kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi c = 0
Repeat
Jika location mengandung tanda \ , ” , ’ maka
207
Flag = 1
Set session untuk pesan error
flagLoc = 1
Akhir jika
Jika flagLoc = 1 maka
Keluar dari perulangan
Akhir jika
Tambah c
Until c < panjang location
Akhir jika
Jika telephone kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Jika telephone >= 6 digit maka
Inisialisasi d = 0
Repeat
Jika telephone yang diinput bukan angka, ’-’, ’/’ maka
Tambah flagBukanAngka
Selain itu
Tambah flagAngka
Akhir jika
Tambah d
Until d < panjang telephone
Jika nilai flagAngka tidak sama dengan panjang telephone angka maka
208
Flag = 1
Set session untuk pesan error
Akhir jika
Selain itu
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
Jika extension kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi e = 0
Repeat
Jika extension yang diinput bukan angka maka
Tambah flagBukanAngka2
Selain itu
Tambah flagAngka2
Akhir jika
Tambah e
Until e < panjang extension
Jika nilai flagAngka2 tidak sama dengan panjang extension maka
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
209
Jika flag = 1 maka
Set session untuk isi pesan nik
Set session untuk isi pesan name
Set session untuk isi pesan position
Set session untuk isi pesan location
Set session untuk isi pesan telephone
Set session untuk isi pesan extension
Set session untuk isi pesan division
Ke halaman editEmployee.jsp dengan pesan error
Selain itu
Jika flag = 0 maka
Update name, photo, position, location, telephone, extension, division
berdasarkan userid (nik) di dbemployee
Selain itu, jika flag = 2 maka
Update name, position, location, telephone, extension, division berdasarkan
userid (nik) di dbemployee
Akhir jika
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
210
Modul deleteEmployee
Awal modul
Inisialisasi nik = kiriman parameter nik
Inisialisasi usertype = kiriman parameter usertype
Jika usertype adalah admin maka
Buka koneksi database
Delete dbemployee berdasarkan userid (nik)
Ke halaman employee.jsp
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul insertUser
Awal modul
Jika admin maka
Inisialisasi userid = kiriman parameter userid
Inisialisasi username = kiriman parameter username
Inisialisasi password = kiriman parameter password
Inisialisasi division = kiriman parameter division
Inisialisasi id = kiriman parameter usertype
Buka koneksi database
Inisialisasi flagId = 0
Inisialisasi flagUsr = 0
211
Inisialisasi flagPs = 0
Inisialisasi flagDiv = 0
Inisialisasi flag = 0
Inisialisasi i = 0
Repeat
Jika userid mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagId = 1
Akhir jika
Jika flagId = 1 maka
Keluar dari perulangan
Akhir jika
Tambah i
Until i < panjang userid
Jika flag bukan 1 maka
Cek dbuser berdasarkan userid
Jika userid telah ada di dbuser sebelumnya maka
Flag = 1
Set session untuk pesan error
Akhir jika
Akhir jika
Jika userid kosong maka
Flag = 1
212
Set session untuk pesan error
Akhir jika
Jika username kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi x = 0
Repeat
Jika username mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagUsr = 1
Akhir jika
Jika flagUsr = 1 maka
Keluar dari perulangan
Akhir jika
Tambah x
Until x < panjang username
Akhir jika
Jika password kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi y = 0
Repeat
213
Jika password mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagPs = 1
Akhir jika
Jika flagPs = 1 maka
Keluar dari perulangan
Akhir jika
Tambah y
Until y < panjang password
Akhir jika
Jika division kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi z = 0
Repeat
Jika division mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagDiv = 1
Akhir jika
Jika flagDiv = 1 maka
Keluar dari perulangan
Akhir jika
214
Tambah z
Until z < panjang division
Akhir jika
Jika flag = 1 maka
Set session untuk isi pesan userid
Set session untuk isi pesan username
Set session untuk isi pesan division
Ke halaman addUser.jsp dengan pesan error
Selain itu
Cek dbusertype berdasarkan id untuk mendapatkan nilai usertype
Jika usertypenya admin maka
Insert userid, username, password, usertype, status, paperStat=”yes”
forget_password=”no”, lastDateVisit, division ke dalam dbuser
selain itu
Insert userid, username, password, usertype, status, paperStat=”no”
forget_password=”no”, lastDateVisit, division ke dalam dbuser
Akhir jika
Ke halaman addUser.jsp
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul editUser
215
Awal modul
Jika admin maka
Inisialisasi userid = kiriman parameter userid
Inisialisasi username = kiriman parameter username
Inisialisasi id = kiriman parameter usertype
Inisialisasi stat = kiriman parameter status
Inisialisasi paperStat = kiriman parameter paperStat
Inisialisasi division = kiriman parameter division
Inisialisasi status
Inisialisasi paperStatus
Inisialisasi flag = 0
Inisialisasi flagDiv = 0
Buka koneksi database
Jika division kosong maka
Flag = 1
Set session untuk pesan error
Selain itu
Inisialisasi i = 0
Repeat
Jika division mengandung tanda ’ , \ , ” maka
Flag = 1
Set session untuk pesan error
flagDiv = 1
Akhir jika
Jika flagDiv = 1
Keluar dari perulangan
216
Akhir jika
Tambah i
Until i < panjang division
Akhir jika
Jika flag = 1 maka
Set session untuk isi pesan division
Ke halaman edirUser.jsp dengan pesan error
Selain itu
Jika stat = 1 maka
Status = ”aktif”
Selain itu, jika stat = 2 maka
Status = ”pasif”
Akhir jika
Jika paperStat = 1 maka
paperStatus = ”yes”
selain itu, jika paperStat = 2 maka
paperStatus = ”no”
Akhir jika
Ambil usertype dari dbusertype berdasarkan id
Update usertype dan dienkrip juga, status, paperStatus, division dan dijadikan
huruf besar semua berdasarkan userid di dbuser
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi database
Selain itu
217
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul deleteUser
Awal modul
Inisialisasi userid = kiriman parameter userid
Inisialisasi usertype = ambil usertype dari session
Jika usertype adalah admin maka
Jika userid kosong maka
Ke halaman viewUser.jsp
Selain itu
Buka koneksi database
Delete dari dbuser berdasarkan userid
Ke halaman viewUser.jsp
Tutup koneksi database
Akhir jika
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul searchUser
218
Awal modul
Inisialisasi keyUser = kiriman parameter keyUser
Inisialisasi keyuser2 = kiriman parameter keyUser2
Inisialisasi keyUser2 = ”userid”
Jika keyUser tidak kosong maka
Inisialisasi i = 0
Repeat
Jika keyUser mengandung tanda petik tunggal maka
Isi keyUser beserta dengan tanda petik tunggalnya
Akhir jika
Tambah i
Until i < panjang keyUser
Jika keyuser2 = 1 atau kosong maka
keyUser2=”userid”
Selain itu, jika keyuser2 = 2 maka
keyUser2=”username”
Selain itu, jika keyuser2 = 3 maka
keyUser2=”division”
Selain itu, jika keyuser2 = 4 maka
keyUser2=”status”
Selain itu, jika keyuser2 = 5 maka
keyUser2=”usertype”
Selain itu, jika keyuser2 = 6 maka
keyUser2=”paperStat”
Akhir jika
Akhir jika
219
Jika keyUser2 = ”usertype” maka
Jika keyUser bukan admin maka
Set session untuk isi keyUser dienkrip dan menjadi huruf besar semua
Selain itu
Set session untuk isi keyUser dienkrip
Akhir jika
Selain itu
Set session untuk isi keyUser
Akhir jika
Set session untuk isi keyUser2
Ke halaman viewUser.jsp
Akhir modul
Modul insertUsertype
Awal modul
Jika admin maka
Inisialisasi usertype = kiriman parameter usertype
Inisialisasi flagUT = 0
Jika usertype kosong maka
Ke halaman addUserType.jsp dengan pesan error
Selain itu
Inisialisasi i = 0
Repeat
Jika usertype mengandung tanda ’ , \ , ” maka
flagUT = 1
220
keluar dari perulangan
Akhir jika
Tambah i
Until i < panjang usertype
Jika flagUT = 1 maka
Ke halaman addUsertype.jsp dengan pesan error
Selain itu
Buka koneksi database
Ambil usertype dari dbusertype berdasarkan usertype sekarang
Jika usertype yang diinput sudah ada di database sebelumnya maka
Ke halaman addUserType.jsp dengan pesan error
Selain itu
Insert usertype dengan menjadikan semua hurufnya menjadi
besar ke dalam dbusertype
ke halaman addUserType.jsp dengan pesan ”successful”
Akhir jika
Tutup koneksi database
Akhir jika
Akhir jika
Selain itu
Ke halaman index.jsp dengan pesan error
Akhir jika
Akhir modul
Modul editUsertype
Awal modul
221
Jika admin maka
Inisialisasi id = kiriman parameter id
Inisialisasi usertypeBaru = kiriman parameter usertypeBaru
Inisialisasi usertypeLama = kiriman parameter usertypeLama
Inisialisasi flag = 0, flagUT = 0
Buka koneksi database
Jika usertype baru kosong maka
Flag = 1
Set session untuk pesan baru
Selain itu
Inisialisasi i = 0
Repeat
Jika usertypeBaru mengandung tanda \ , ” , ’ maka
Flag = 1
Set session untuk pesan error
flagUT = 1
keluar dari perulangan
Akhir jika
Tambah i
Until i < panjang usertypeBaru
Jika flagUT bukan 1 maka
Cek dbusertype berdasarkan usertypeBaru
Jika usertypeBaru sudah ada di database sebelumnya maka
Flag = 1
Set session untuk pesan baru
222
Akhir jika
Akhir jika
Akhir jika
Jika flag = 1 maka
Ke halaman editUsertype.jsp dengan pesan error
Selain itu
Update usertype berdasarkan id pada dbusertype
Update usertype berdasarkan usertypeLama pada dbuser
Ke halaman feedBackUser.jsp
Akhir jika
Tutup koneksi database
Selain itu
Ke halaman index.jsp
Akhir jika
Akhir modul
Modul searchUsertype
Awal modul
Inisialisasi keyUserType = kiriman parameter keyUserType
Inisialisasi keyusertype2 = kiriman parameter keyUserType2
Inisialisasi keyUserType2 = ”id”
Jika keyUserType tidak kosong maka
Inisialisasi i = 0
Repeat
Jika keyUserType mengandung tanda petik tunggal maka
Isi keyUserType beserta dengan tanda petik tunggalnya
223
Akhir jika
Tambah i
Until i < panjang keyUserType
Jika keyusertype2 = 1 atau kosong maka
keyUserType2 = ”id”
Selain itu, jika keyusertype2 = 2 maka
keyUserType2 = ”usertype”
Akhir jika
Akhir jika
Set session untuk isi pesan keyUserType
Set session untuk isi pesan keyUserType2
Ke halaman addUserType.jsp
Akhir modul
224
3. 2. 5 Perancangan Layar
a. Perancangan Layar User
• Login
Gambar 3. 97 Rancangan layar login
Pada halaman login ini, user dapat melakukan aktivitas login dan
mendapatkan akses jika terjadi lupa password yaitu dengan
mengklik link Forget Password. Jika link Forget Password dipilih,
maka akan ditampilkan rancangan layar sebagai berikut
225
Forget Password
User ID : Back to Login Page:
Submit Reset
Gambar 3. 98 Rancangan layar forget password
Setelah mengisi userID, maka rancangan layar berikutnya adalah
Forget Password
Security Question : what is your favorite colour?Security Answer :
Back to Login Page: Submit Reset
Gambar 3. 99 Rancangan layar fotget password 2
Jika user yang kehilangan password dapat mengisi
pertanyaan pribadi yang telah ia isi sebelumnya, maka password
sementara akan di berikan kepada user untuk sekali login dan
segera mengubah password.
226
Your temporary password is *new Password*Insert your temporary password into login page
Click here to re-login
Gambar 3. 100 Rancangan layar konfirmasi forget password
227
• Home
Untuk user yang tidak memiliki hak akses terhadap Selected
Paper, maka tampilan layar menu Home bagi user adalah sebagai
berikut :
Gambar 3. 101 Rancangan layar home user
Jika salah satu link News dipilih / diklik, maka rancangan layar
yang akan ditampilkan adalah sebagai berikut
228
Gambar 3. 102 Rancangan layar view news
Sedangkan untuk user dengan hak akses terhadap Selected Paper
maka tampilan Home untuk user tersebut adalah sebagai berikut
Gambar 3. 103 Rancangan layar home user dengan selected paper
229
Jika salah satu link Selected Paper dipilih / diklik, maka
rancangan layar yang akan ditampilkan adalah sebagai berikut
Gambar 3. 104 Rancangan layar view selected paper
230
• Business System
Home
Business System
Forum
Employee Profile
My Profile
Date :: Username LogoutView SOP Search by :
Example v GO
Index Category SOP Name summary
Index SubCategory SOP Name summary
Index Attachment SOP NamesummaryIndex Attachment SOP NamesummaryIndex Attachment SOP NamesummaryIndex Attachment SOP Namesummary
Index SubCategory SOP Name summary
Index Attachment SOP NamesummaryIndex Attachment SOP NamesummaryIndex Attachment SOP Namesummary
Index SubCategory SOP Name summary
Index Attachment SOP NamesummaryIndex Attachment SOP NamesummaryIndex Attachment SOP NamesummaryIndex Attachment SOP Namesummary
prev | next
Business System
Gambar 3. 105 Rancangan layar SOP user
Jika salah satu link SOP dipilih / diklik, maka PDF yang
bersangkutan akan muncul dalam pop-up Internet Explorer
231
• Forum
Gambar 3. 106 Rancangan layar forum user
Di dalam rancangan layar menu Forum untuk member terdapat
beberapa link yaitu link View Forum, untuk menampilkan semua
forum setelah dilakukan pencarian dan link New Topic yaitu link
untuk menambah topik baru bagi member yang akan memposting
ide, saran atau kritik kepada publik dalam PT Mayora Indah Tbk.
Setelah link New Topik di pilih, maka akan ditampilkan layar
dengan rancangan sebagai berikut
232
Home
Business System
Forum
Employee Profile
My Profile
Date :: Username Logout
New Topic
Topic Name :Topic Specialty :Upload File : Message :
Back
Browse
Submit Reset
Gambar 3. 107 Rancangan layar create topik
233
• Employee Profile
Gambar 3. 108 Rancangan layar employee profile user
Di dalam rancangan layar menu Employee Profile untuk member
terdapat beberapa link yaitu link View Employee, untuk
menampilkan data semua karyawan setelah dilakukan pencarian
234
• My Profile
Gambar 3. 109 Rancangan layar my profile
Pada rancangan layar menu My Profile, seorang user dapat
mengubah password dan mengisi Security Question. Security
Question digunakan sebagai sarana konfirmasi user jika ia
kehilangan atau lupa password yang ia miliki.
235
b. Perancangan Layar Admin
• Login
Gambar 3. 110 Rancangan layar login
Pada halaman login ini, admin dapat melakukan aktivitas login
dan mendapatkan akses jika terjadi lupa password yaitu dengan
mengklik link Forget Password.
236
Jika link Forget Password dipilih, maka akan ditampilkan
rancangan layar sebagai berikut
Forget Password
User ID : Back to Login Page:
Submit Reset
Gambar 3. 111 Rancangan layar forget password
Setelah mengisi userID, maka rancangan layar berikutnya adalah
Forget Password
Security Question : what is your favorite colour?Security Answer :
Back to Login Page: Submit Reset
Gambar 3. 112 Rancangan layar forget password 2
Jika admin yang kehilangan password dapat mengisi
pertanyaan pribadi yang telah ia isi sebelumnya, maka password
237
sementara akan di berikan kepada admin untuk sekali login dan
segera mengubah password.
Gambar 3. 113 Rancangan layar konfirmasi forget password
• Home
Gambar 3. 114 Rancangan layar home admin
Pada rancangan layar ini, seorang admin dapat menambah News
dan Selected Paper juga mengedit dan delete News atau Selected
238
Paper yang sudah pernah di posting. Rancangan layar untuk
menambah News dan Selected Paper adalah sebagai berikut
Gambar 3. 115 Rancangan layar add news / selected paper admin
Sedangkan rancangan layar untuk mengedit News atau Selected
Paper adalah sebagai berikut.
239
Gambar 3. 116 Rancangan layar edit news admin
240
• Business System
Berikut ini adalah rancangan untuk menu Business System
Gambar 3. 117 Rancangan layar SOP admin
Rancangan layar untuk link Add Category, Add SubCategory dan
Add Attachment adalah sebagai berikut
241
Gambar 3. 118 Rancangan layar add SOP admin
242
Dan rancangan layar untuk mengedit SOP yang telah dipost
adalah sebagai berikut
Gambar 3.119 Rancangan layar edit SOP admin
243
• Forum
Berikut ini adalah rancangan layar untuk menu Forum
Gambar 3. 120 Rancangan layar forum admin
Didalam rancangan layar Forum ini terdapat link untuk menutup
dan menghapus topik yang sudah diposting
244
• Employee Profile
Gambar 3. 121 Rancangan layar employee profile admin
Didalam rancangan layar menu Employee Profile terdapat menu
untuk menambah profile karyawan, rancangan layar untuk
menambah profile karyawan adalah sebagai berikut
245
Gambar 3. 122 Rancangan layar add employee profile
• My Profile
Gambar 3. 123 Rancangan layar my profile
246
Pada rancangan layar menu My Profile, seorang admin dapat
mengubah password dan mengisi Security Question. Security
Question digunakan sebagai sarana konfirmasi user jika ia
kehilangan atau lupa password yang ia miliki
• User Management
Rancangan layar untuk menu View User pada menu User
Management
Gambar 3. 124 Rancangan layar user management admin
Pada rancangan layar ini, seorang admin dapat mengedit profile
umum user, berikut adalah rancangan layar Edit User.
247
Gambar 3. 125 Rancangan layar edit user admin
Rancangan layar sub menu Add User pada menu User Management
Gambar 3.126 Rancangan layar add user admin
248
Jika link Add Usertype dipilih maka akan memunculkan layar baru
untuk menambah usertype dengan rancangan sebagai berikut
Gambar 3. 127 Rancangan layar user management admin