Penggunaan framework zk pada pembuatan aplikasi web penilaian siswa (studi kasus: SMA Manba'ul, Batu Ceper-Tangerang)
PENGGUNAAN FRAMEWORK ZK PADA PEMBUATAN
APLIKASI WEB PENILAIAN SISWA
(Studi Kasus: SMA Manba’ul Ulum, Batu Ceper -Tangerang)
Skripsi
Diajukan untuk Memenuhi Persyaratan Memperoleh Gelar Sarjana Komputer (S.Kom)
Oleh
Sufyan Sidqy
107091003042
COVER
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
(2)
ii
LEMBAR PERNYATAAN
Dengan ini saya menyatakan bahwa:
1. Skripsi ini merupakan hasil karya asli saya yang diajukan untuk memenuhi salah satu persyaratan memperoleh gelar strata 1 di UIN Syarif Hidayatullah Jakarta.
2. Semua sumber yang saya gunakan dalam penulisan ini telah saya cantumkan sesuai dengan ketentuan yang berlaku di UIN Syarif Hidayatullah Jakarta.
3. Jika di kemudian hari terbukti bahwa hasil karya ini bukan hasil karya asli saya atau merupakan hasil jiplakan dari hasil karya orang lain, maka saya bersedia menerima sanksi yang berlaku di UIN Syarif Hidayatullah Jakarta.
Ciputat,
(3)
iii
LEMBAR PENGESAHAN PEMBIMBING
PENGGUNAAN FRAMEWORK ZK PADA PEMBUATAN APLIKASI WEB
PENILAIAN SISWA
(Studi Kasus: SMA Manba’ul Ulum, Batu Ceper -Tangerang)
Skripsi
Diajukan untuk Memenuhi Persyaratan Memperoleh Gelar Sarjana Komputer (S.Kom)
Oleh
Sufyan Sidqy
107091003042
Pembimbing I, Pembimbing II,
Fitri Mintarsih M.Kom Fenty Eka Muzayyana A, M.Kom
NIP. 1972 1223 2007 10 2004 NIP. 19760805 200912 2 003
Mengetahui
Ketua Program Studi Teknik Informatika
Yusuf Durrachman, MIT., M.Sc.
(4)
iv
PENGESAHAN UJIAN
Skripsi yang berjudul ―Penggunaan Framework ZK pada Pembuatan Aplikasi Web Penilaian Sekolah, Studi Kasus: SMA Manbaul Ulum, Batu Ceper-Tangerang‖, telah diuji dan dinyatakan lulus dalam Sidang Munaqosah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta, pada 29 November 2011. Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Program Teknik Informatika.
Jakarta, Desember 2011 Tim Penguji,
Khodijah Hulliyah, M.Si Ria Hari Gusmita, M. Kom
NIP. 1973 0402 2001 12 2001 NIP. 1982 0817 2009 12 2002 Tim Pembimbing,
Pembimbing I Pembimbing II
Fitri Mintarsih, M.Kom Fenty Eka Muzayyana A, M.Kom
NIP. 1972 1223 2007 10 2004 NIP. 19760805 200912 2 003 Mengetahui,
Dekan Ketua Program Studi
Fakultas Sains dan Teknologi Teknik Informatika
(5)
v
ABSTRAK
Sufyan Sidqy, Penggunaan Framework ZK pada Pembuatan Aplikasi Web
Penilaian Sekolah (Studi Kasus: SMA Manbaul Ulum, Batu Ceper-Tangerang), dibimbing oleh Fitri Mintarsih, M.Kom dan Fenty Eka Muzayyana Agustin, M.Kom.
Aplikasi web penilaian siswa adalah aplikasi yang membantu melakukan proses penilaian di SMA Manbaul Ulum yang sebelumnya dilakukan secara manual. Sebelumnya proses mencetak rapor, di SMA Manbaul Ulum masih mengandalkan sistem atau aplikasi dari luar sekolah. SMA Manbaul Ulum yang berada pada lingkup pondok pesantren Asshiddiqiyah memiliki siswa yang tersebar dari beberapa wilayah di Indonesia. Hal tersebut yang mendorong di buatnya sebuah aplikasi web yang dapat menghasilkan rapor sehingga jika terjadi kesalahan dapat langsung di perbaiki, selain itu aplikasi ini dibuat bertujuan agar informasi tentang siswa dapat disampaikan ke orang tua/wali siswa tanpa harus datang ke SMA Manbaul Ulum. Dalam pembuatan aplikasi web ini penulis menggunakan metode pengembangan aplikasi Rational Unified Process (RUP) dan untuk pembuatan aplikasi menggunakan Framework ZK.
(6)
vi
KATA PENGANTAR
Bismilllahirrahmanirrahmin, Puji syukur kehadirat Allah SWT yang telah memberikan begitu banyak nikmat, diantaranya nikmat iman, Islam, dan kesehatan sehingga penulis dapat menyelesaikan skripsi ini dengan baik. Salawat serta salam tak lupa pula penulis panjatkan kepada junjungan Nabi besar Muhammad SAW.
Skripsi ini tidak akan bisa terselesaikan tanpa bantuan, bimbingan, arahan, dukungan serta kontribusi dari banyak pihak. Oleh karena itu, penulis ingin mengucapkan terima kasih terutama kepada orang tua penulis yaitu H. Abdul
Rasyid Saum (alm) terimakasih telah memberikan kasih sayang kepada penulis
sampai akhir hayat, dan kepada Mandu Khaeroni yang selalu mengingatkan penulis untuk segera menyelesaikan skripsi dan juga terimakasih atas dukungan baik moril maupun materil. Terima kasih untuk cinta kasih yang tidak pernah berhenti diberikan kepada penulis. Penulis juga ingin mengucapkan terima kasih kepada:
1. Dekan Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta.
2. Ketua Jurusan Teknik Informatika, serta Sekretaris Jurusan Teknik Informatika.
3. Ibu Fitri Mintarsih M.Kom, selaku dosen pembimbing pertama dan Fenty
(7)
vii
banyak membantu penulis dalam menyelesaikan penyusunan skripsi ini dengan baik dan benar.
4. Seluruh dosen Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta atas segala ilmu pengetahuan yang diberikan kepada penulis. Beserta seluruh staff akademik Fakultas Sains dan Teknologi UIN Syarif Hidayatullah Jakarta.
5. Bpk Zainuri Yasmin selaku Kepala Sekolah SMA Manbaul Ulum yang telah
mengizinkan penulis untuk melakukan penelitian di sekolah tempat beliau memimpin. Juga kepada Bpk. Yunda Kurniawan serta Bpk. Ginting
Hartanto.
6. Ahmad Taqiyuddin Subki dan Hassan Hadi, kakak dan adik penulis yang
telah mendukung penulis dalam menyelesaikan skripsi ini.
7. Ayu Saidah, orang terpenting di dalam hidup penulis yang telah banyak
memberikan masukan, kritikan, dan semangat sehingga penulis dapat menyelesaikan skripsi ini.
8. Teman-teman penulis, Hendra Kurniawan, terimakasih telah meluangkan waktu dan fikiran untuk mengajari penulis menggunakan framework ZK, Syifa
U Rachman, yang telah mengajari sedikit banyak tentang jasper report,
walaupun gagal tapi itu awal dari keberhasilan penulis membuat report,
Muchammad Dwiharyanto , terimakasih telah memberikan jawaban atas
pertanyaan mendasar dari penulis, Ahmad Maulana, terimakasih untuk logika
nested if Fauzi Rahman, atas akses ke puskom UIN sehingga bisa
menyelesaikan modul terpenting yang sudah lama terbengkalai, walaupun dapat teguran dan A. Bambang S, teman yang selalu ada untuk share opini
(8)
viii
. Terimakasih atas masukan dari kalian semua, berkat kalian skripsi ini dapat selesai. Thanks guys!
9. Teman-teman seperjuangan TI 2007 yang telah banyak memberikan inspirasi, motivasi untuk segera menyelesaikan tugas akhir ini, dan pengalaman berharga bagi penulis selama masa kuliah.
10. JUG Indonesia, milis yang berisi para master Java, yang sangat membantu penulis tentang konsep pemrograman melalui email-email mereka kepada penulis, tejo.ak@gmail.com, lesmana.reza@gmail.com, aditya.lukman@gmail.com. Thanks for your helping even we never met before..
Akhirnya, penulis menyadari masih banyak terdapat kekurangan dalam penelitian dan penyusunan skripsi ini, karena terbatasnya ilmu yang penulis miliki. Oleh karena itu penulis mengharapkan saran dan kritik yang membangun agar skripsi ini bisa menjadi lebih baik lagi. berharap semoga Allah swt, memberikan balasan yang lebih dari semua pihak pada umumnya.
Ciputat, Desember 2011
(9)
ix
DAFTAR ISI
COVER ... i
LEMBAR PERNYATAAN ... ii
LEMBAR PENGESAHAN PEMBIMBING ... iii
PENGESAHAN UJIAN... iv
ABSTRAK ... v
KATA PENGANTAR ... vi
DAFTAR ISI ... ix
DAFTAR GAMBAR ... xii
DAFTAR TABEL ... xv
BAB I PENDAHULUAN ... 1
1.1. Latar Belakang ... 1
1.2. Identifikasi Masalah ... 3
1.3. Rumusan Masalah ... 4
1.4. Batasan Masalah... 4
1.5. Tujuan Penelitian ... 4
1.6. Manfaat Penelitian... 5
1.7. Metodologi Penelitian ... 6
1.8. Sistematika Penulisan ... 7
BAB II LANDASAN TEORI ... 9
2.1. Software ... 9
2.1.1. Bidang Aplikasi Software ... 9
2.1.2. WebApps ... 12
2.2. Basis Data (Database) ... 14
2.2.1. Keunggulan dan Kelemahan DBMS ... 14
2.2.2. MySQL ... 16
2.3. Unified Modeling Language (UML) ... 17
(10)
x
2.5. Framework ... 23
2.5.1. ZK ... 24
2.5.2. Hibernate ... 27
2.6. Ajax ... 28
2.7. RationalUnifiedProcess (RUP) ... 29
2.7.1. Pengertian ... 29
2.7.2. Struktur Dinamis ... 30
2.7.3. Struktur Statis... 32
2.8. Blackbox Testing ... 34
BAB III METODOLOGI PENELITIAN... 35
3.1. Metode Pengumpulan Data ... 35
3.2. Metode Pengembangan Aplikasi ... 37
3.2.1. RUP ... 37
3.2.2. Blackbox ... 38
BAB IV PEMBAHASAN ... 39
4.1. Profil SMA Manbaul Ulum ... 39
4.2. InceptionFase (Fase Permulaan) ... 45
4.2.1. Business Modeling Workflow ... 45
a. Identifikasi sistem berjalan ... 45
b. Identifikasi masalah... 47
c. Alternatif pemecahan masalah ... 48
4.2.2. Requirement Workflow ... 49
a. Identifikasi lingkup sistem ... 49
b. Identifikasi Analisis Persyaratan Sistem ... 51
c. Estimasi Resiko ... 57
d. Kekurangan dan kelebihan sistem ... 58
4.3. ElaborationPhase (Fase Pembangunan) ... 60
4.3.1. Analysis and Design Workflow ... 61
a. Analisa Kebutuhan User ... 62
b. Rancangan UserInterface ... 64
c. Desain Model Berorientasi Objek ... 73
(11)
xi
4.4. Construction Phase (Fase Konstruksi) ... 136
4.4.1. Implementation Workflow... 136
4.4.2. Test Workflow ... 159
a. Modul-modul yang diuji ... 159
b. Cara menguji modul ... 160
4.5. Transition Phase ... 160
4.5.1. Deployment workflow ... 160
BAB V PENUTUP ... 161
5.1. Kesimpulan ... 161
5.2. Saran ... 162
DAFTAR PUSTAKA ... 163
(12)
xii
DAFTAR GAMBAR
Gambar 2. 1 Mekanisme ZK Framework ... 25
Gambar 2. 2 Metode RUP ... 29
Gambar 2. 3 Struktur Dinamis RUP ... 30
Gambar 2. 4 Struktur Statis RUP ... 33
Gambar 4. 1 Struktur Organisasi ... 43
Gambar 4. 2 Workflow Sistem Penilaian Berjalan... 45
Gambar 4. 3 Sistem Usulan ... 61
Gambar 4. 4 Rancangan User Interface―Login‖ ... 64
Gambar 4. 5 Rancangan User Interface―User, Wali Kelas, Guru‖ ... 65
Gambar 4. 6 Rancangan User Interface "User - Siswa" ... 65
Gambar 4. 7 Rancangan User Interface―PageManagement‖ ... 66
Gambar 4. 8 Rancangan User Interface "Input Data Pelajaran" ... 67
Gambar 4. 9 Rancangan User Interface "Input Data Kelas" ... 68
Gambar 4. 10 Rancangan User Interface "Input Data Siswa" ... 69
Gambar 4. 11 Rancangan User Interface "Input Nilai Akademik" ... 70
Gambar 4. 12 Rancangan User Interface "Input Pelanggaran" ... 70
Gambar 4. 13 Rancangan User Interface―Input Prestasi" ... 71
Gambar 4. 14 Rancangan User Interface "Cetak Rapor" ... 71
Gambar 4. 15 Rancangan User Interface Pindah Kelas" ... 72
Gambar 4. 16 Rancangan User Interface "NotAllowed" ... 72
Gambar 4. 17 Activity Diagram - ManagementUser (Input) ... 73
Gambar4. 18 Activity Diagram - Management User (Update) ... 74
Gambar 4. 19 Activity Diagram - Management User (Delete) ... 75
Gambar 4. 20 Activity Diagram - Page Management (Userrole) ... 76
Gambar 4. 21 Activity Diagram - PageManagement (Page) ... 77
Gambar 4. 22 Activity Diagram - Data Kelas (Input) ... 79
Gambar 4. 23 Activity Diagram - Data Kelas (Update) ... 80
Gambar 4. 24 Activity Diagram - Data Kelas (Delete) ... 81
(13)
xiii
Gambar 4. 26 Activity Diagram - Data Kelas (Update) ... 83
Gambar 4. 27 Activity Diagram - Data Kelas (Delete) ... 84
Gambar 4. 28 Activity Diagram - Data Siswa (Input) ... 85
Gambar 4. 29 Activity Diagram - Data Siswa (Lihat) ... 86
Gambar 4. 30 Activity Diagram - Data Siswa (Update) ... 87
Gambar 4. 31 Activity Diagram - Data Siswa (Delete) ... 88
Gambar 4. 32 Activity Diagram - Input Nilai ... 89
Gambar 4. 33 Activity Diagram - Cetak Rapor ... 90
Gambar 4. 34 Use casePageManagement... 96
Gambar 4. 35 Use case Data Kelas, Pelajaran dan Siswa ... 97
Gambar 4. 36 Use caseManage Password ... 97
Gambar 4. 37 Use case Penilaian ... 98
Gambar 4. 38 Sequence DiagramAdmin - Data Kelas ... 111
Gambar 4. 39 Sequence DiagramAdmin - Data Pelajaran ... 112
Gambar 4. 40 Sequence DiagramAdmin - Data Siswa ... 113
Gambar 4. 41 Sequence DiagramAdmin - Input Nilai ... 114
Gambar 4. 42 Sequence DiagramAdmin - Cetak Rapor ... 115
Gambar 4. 43 Sequence DiagramAdmin - ManagementUser ... 116
Gambar 4. 44 Sequence Diagram Kepala Sekolah - Lihat Data Siswa ... 117
Gambar 4. 45 Sequence Diagram Kepala Sekolah - Lihat Nilai Siswa... 118
Gambar 4. 46 Sequence Diagram Tata Usaha - Input Data Siswa ... 119
Gambar 4. 47 Sequence Diagram Tata Usaha - Input Nilai... 120
Gambar 4. 48 Sequence Diagram Wali Siswa - Lihat Data Siswa ... 121
Gambar 4. 49 Sequence Diagram Wali Siswa - Lihat Nilai Siswa ... 122
Gambar 4. 50 Sequence Diagram Siswa - Lihat Data Siswa ... 123
Gambar 4. 51 Sequence Diagram Siswa - Lihat Nilai Siswa ... 124
Gambar 4. 52 ClassDiagram ... 125
Gambar 4. 53 Entity Relational Diagram ... Error! Bookmark not defined. Gambar 4. 54 Logical Record Structure ... Error! Bookmark not defined. Gambar 4. 55 Struktur Tabel Account ... 126
(14)
xiv
Gambar 4. 57 Struktur Tabel User ... 126
Gambar 4. 58 Struktur Tabel Siswa ... 127
Gambar 4. 59 Struktur Tabel Pelajaran ... 128
Gambar 4. 60 Struktur Tabel Kelas ... 128
Gambar 4. 61 Struktur Tabel NilaiAkademik ... 128
Gambar 4. 62 Struktur Tabel NilaiAkhir ... 129
Gambar 4. 63 Struktur Tabel Pelanggaran ... 129
Gambar 4. 64 Struktur Tabel prestasi ... 129
Gambar 4. 65 Struktur Tabel pengembanganDiri ... 130
Gambar 4. 66 Struktur Tabel ketidakhadiran ... 130
Gambar 4. 67 Struktur Tabel komentar ... 131
Gambar 4. 68 Struktur Tabel kepribadian ... 131
Gambar 4. 69 Struktur Tabel Mengasuh ... 131
Gambar 4. 70 Struktur Tabel persentase ... 132
Gambar 4. 71 Struktur Tabel pageManagement ... 132
Gambar 4. 72 Struktur Tabel Mengajar ... 132
Gambar 4. 73 User Interface―Login‖... 147
Gambar 4. 74 User Interface―User‖ ... 148
Gambar 4. 75 User Interface―User‖ ... 148
Gambar 4. 76 User Interface "User - Siswa" ... 149
Gambar 4. 77 User Interface―Page Management‖ ... 149
Gambar 4. 78 User Interface "Input Data Pelajaran" ... 150
Gambar 4. 79 User Interface "Input Data Kelas" ... 150
Gambar 4. 80 User Interface "Input Data Siswa" ... 151
Gambar 4. 81 User Interface "Input Nilai Akademik" ... 151
Gambar 4. 82 User Interface "Input Pelanggaran" ... 152
Gambar 4. 83 User Interface―Input Prestasi" ... 152
Gambar 4. 84 User Interface "Cetak rapor" ... 153
Gambar 4. 85 User Interface―Pindah Kelas" ... 153
(15)
xv
DAFTAR TABEL
Tabel 3. 1 Studi Pustaka ... 35
Tabel 4. 1 Staf Personalia ... 44
Tabel 4. 2 Kelebihan dan Kekurangan Sistem Berjalan ... 59
Tabel 4. 3 Kelebihan dan Kekurangan Sistem Usulan ... 59
Tabel 4. 4 Perbandingan Sistem Berjalan dan Sistem Usulan ... 60
Tabel 4. 5 ActorDescription ... 91
Tabel 4. 6 Requirement dan Use casePageManagement ... 93
Tabel 4. 7 Requirement dan Use case Data Kelas, Pelajaran dan Siswa ... 93
Tabel 4. 8 Requirement dan Use caseManage Password ... 94
Tabel 4. 9 Requirement dan Use case Penilaian ... 95
Tabel 4. 10 Use casescenario Manage Userrole ... 99
Tabel 4. 11 Use casescenario Manage Accessible Page ... 100
Tabel 4. 12 Use casescenario Manage data kelas ... 101
Tabel 4. 13 Use casescenario Manage data pelajaran ... 102
Tabel 4. 14 Use casescenario Manage data siswa ... 103
Tabel 4. 15 Use casescenario Manage Password ... 104
Tabel 4. 16 Use casescenario Manage Data User ... 105
Tabel 4. 17 Use casescenario Manage Guru ... 106
Tabel 4. 18 Use casescenario Manage Wali Kelas ... 107
Tabel 4. 19 Use casescenarioManage Persentase ... 108
Tabel 4. 20 Use casescenario Input Nilai ... 109
Tabel 4. 21 Use casescenario cetak rapor ... 109
Tabel 4. 22 Use casescenario lihat nilai ... 110 Tabel 4. 24 Bentuk Tidak Normal ... Error! Bookmark not defined.
Tabel 4. 25 Bentuk Normal Pertama (1NF) ... Error! Bookmark not defined.
Tabel 4. 26 Bentuk Normal Kedua (2NF) ... Error! Bookmark not defined.
(16)
1
BAB I PENDAHULUAN
BAB I PENDAHULUAN
1.1.Latar Belakang
Perkembangan dalam bidang komputer pada saat ini telah terjadi hampir di semua daerah. Dengan menggunakan komputer, manusia akan sangat terbantu dalam menyelesaikan pekerjaan mereka, baik yang bergerak di bidang ekonomi, pemerintahan, keilmuan dan sebagainya. Sebelum datang era komputer, kebanyakan dari user menyelesaikan pekerjaannya secara manual. Tetapi saat ini user dapat menggunakan komputer dalam mengerjakan berbagai tugasnya dengan cepat, tepat dan efisien. Hal ini dikarenakan di dalam komputer tersebut terdapat bermacam-macam aplikasi, baik berbasis desktop maupun berbasis web, yang bisa digunakan, sehingga user mendapatkan kemudahan dalam menyelesaikan pekerjaannya.
Dalam era komputerisasi ini pengolahan data dan penyebaran informasi dirasakan kurang efektif dan efisien apabila sumber itu dalam bentuk kertas yang sifatnya statis atau mengandalkan memori seseorang sebagai media penyimpanannya. Penataan informasi yang dilakukan secara teratur, jelas dan cepat serta dapat disajikan dalam bentuk sebuah laporan tentunya sangat mendukung kelancaran operasional sebuah organisasi.
SMA Manba‘ul Ulum adalah sekolah yang berada dalam lingkup Pondok Pesantren Asshiddiqiyah II Tangerang. Sekolah tersebut masih menggunakan cara manual dalam pengolahan informasi yang berkaitan
(17)
dengan siswa yang bersekolah di sekolah tersebut. Dengan cara manual seperti itu dapat mengakibatkan data yang di olah akan beresiko hilang atau rusak karena keterbatasan sumber daya manusia yang ada. Masalah lain yang muncul dengan cara manual tersebut adalah karena kurang adanya kontrol pihak sekolah kepada guru tentang waktu penyerahan nilai, yang terjadi adalah guru kurang menepati waktu yang di tetapkan untuk menyerahkan nilai kepada tata usaha, sehingga tata usaha akan meminta nilai terus menerus kepada guru.
Dalam kegiatan belajar mengajar, perlu adanya evaluasi hasil belajar siswa yang hasilnya harus diketahui oleh wali siswa untuk memantau perkembangan anaknya. Dalam memproses nilai menjadi laporan hasil belajar siswa berupa lembaran rapor, sekolah masih mengandalkan sistem dari luar sekolah sehingga akan menyulitkan dalam proses perbaikan jika ada kesalahan. Dalam lingkup Pondok Pesantren Asshiddiqiyah juga ada catatan beberapa pelanggaran yang harus disampaikan Terlebih kadang rapor yang seharusnya di berikan kepada wali siswa/orang tua tidak sampai karena adanya beberapa faktor, karena jarak orang tua dari sekolah atau karena siswa yang tidak memberikan rapor kepada orang tuanya ketika rapor sudah dibagikan.
Framework ZK ada salah satu FrameworkJava Script untuk Java Web,
yang dibangun di atas arsitektur Direct RIA (Rich Internet Applications), sehingga bisa mengimplementasikan aplikasi yang full Ajax di layer UI (User
(18)
Java Script itu sendiri, yang singkat kata dengan ZK kita bisa membuat antarmuka yang bagus. Pada sisi client, aplikasi berbasis ZK pun akan menjadi mudah dipelajari karena tampilan yang dihasilkan mirip dengan aplikasi berbasis desktop.
Dengan ZK pekerjaan kita sangat dipermudah, khususnya untuk urusan antar muka penggunanya. Komponen-komponen yang disediakan terbilang cukup lengkap & bisa mengakomodasi untuk membangun aplikasi berbasis
web. Coding di antarmuka pengguna bisa juga dengan menggunakan tag-tag
container bawaan ZK yang hampir mirip seperti cara coding tag di HTML,
tentunya hal ini telah mempermudah dalam proses belajarnya.
Berdasarkan penjelasan di atas, penulis tertarik untuk melakukan
penelitian dengan tema ―PENGGUNAAN FRAMEWORK ZK PADA
PEMBUATAN APLIKASI WEB PENILAIAN SISWA. Studi Kasus SMA
Manba‘ul Ulum, Batu Ceper –Tangerang.‖
1.2.Identifikasi Masalah
Memperhatikan latar belakang diatas maka penulis mengidentifikasi masalah sebagai berikut :
a. Proses pengolahan nilai ujian siswa yang masih manual.
b. Proses mencetak lembaran rapor masih mengandalkan aplikasi dari luar sekolah sehingga memakan waktu banyak.
c. Belum ada sarana untuk menyampaikan informasi siswa di SMA Manbaul Ulum kepada wali siswa.
(19)
1.3.Rumusan Masalah
a. Bagaimana merancang dan membuat software yang dapat mengolah data siswa?
b. Bagaimana merancang dan membuat software yang dapat digunakan untuk memproses nilai siswa?
c. Bagaimana merancang dan membuat software yang dapat digunakan untuk mencetak rapor siswa?
1.4.Batasan Masalah
Berdasarkan uraian rumusan masalah, dalam penyusunan skripsi ini, penulis membatasi masalah pada:
1. Analisis dan perancangan proses bisnis yang akan digunakan pada sistem yang disesuaikan dengan proses bisnis yang ada di SMA Manbaul Ulum
2. Software dapat menyimpan data pribadi siswa serta data yang diperlukan
untuk rapor (nilai akademik, kepribadian, pengembangan diri, kehadiran dan komentar) di SMA Manbaul Ulum dan data pelanggaran siswa.
3. Software dapat memberikan output berupa rapor dalam bentuk pdf.
4. Database yang digunakan adalah MySQL.
5. Pengembangan aplikasi web penilaian siswa ini menggunakan Framework ZK.
6. Pengguna aplikasi web penilaian siswa ini nantinya adalah Kepala Sekolah, Tata Usaha, Kurikulum, Wali Siswa, Guru dan siswa itu sendiri.
1.5.Tujuan Penelitian
(20)
a. Menganalisa sistem yang sudah berjalan.
b. Merancang dan membuat aplikasi web penilaian siswa di SMA Manbaul Ulum yang dapat mencatat informasi seputar proses akademik siswa.
c. Untuk melaksanakan kegiatan pengelolaan data yang terkomputerisasi sehingga menjadi sebuah informasi.
d. Agar terjadinya efesiensi waktu dan biaya dalam peyebaran informasi.
1.6.Manfaat Penelitian
Manfaat yang ingin di capai dalam pembuatan aplikasi ini adalah :
a. Bagi User (Kepala Sekolah, Kurikulum, Tata Usaha, Wali Kelas, Guru dan Siswa)
1. Memudahkan dalam penyimpanan data siswa untuk pengarsipan. 2. Memudahkan dalam mengolah nilai siswa.
3. Kemudahan dalam menyediakan laporan nilai pada akhir semester 4. Mudah dalam menyampaikan informasi tantang siswa yang
bermasalah di sekolah kepada wali siswa.
5. Tidak perlu untuk datang langsung ke sekolah untuk mengetahui semua informasi tentang anaknya di SMA Manbaul Ulum
b. Bagi Penulis
1. Memberikan kontribusi ke tempat asal sekolah penulis di bidang teknologi informasi.
2. Mengaplikasikan teori-teori yang telah di dapat selama masa perkuliahan.
(21)
3. Mengidentifikasi masalah dan memecahkannya dengan membuat aplikasi web penilaian siswa ini.
c. Bagi Universitas
1. Sebagai bahan referensi atau bahan acuan bagi penelitian berikutnya.
2. Sebagai bahan tambahan ilmu pengetahuan teknologi informasi pada universitas
1.7.Metodologi Penelitian
Untuk memperoleh data yang dapat menunjang pembuatan skripsi ini, maka di perlukan data teoritis dan data lapangan untuk mendapatkan data dan informasi yang berhubungan dengan judul skripsi ini.
Adapun penulis melakukan beberapa penelitian yang dilakukan dengan :
a. Metode Pengumpulan Data
Dalam proses penulisan skripsi ini, bentuk metodologi pengumpulan data yang akan dilakukan antara lain:
1. Studi Pustaka (Literatur), metode pencarian data dari buku,
browsing internet atau literatur-literatur lain yang berkaitan
dengan teori dasar yang berkaitan dengan aplikasi yang sedang dibuat, dan dokumen yang berkaitan dengan data yang di perlukan untuk penelitian maupun perancangan aplikasi web penilaian siswa ini.
2. Wawancara, yakni mengumpulkan data melalui pertanyaan- pertanyaan dalam bentuk lisan secara terstruktur dan sistematis
(22)
yang dilakukan kepada Bagian Tata Usaha dan Bagian Kurikulum.
b. Metode Pengembangan Aplikasi
Metode yang penulis gunakan dalam pengembangan aplikasi web penilaian siswa ini adalah Rational Unified Process (RUP). Pada metode RUP terdapat beberapa tahapan, yaitu :
1. InceptionFase (Fase Permulaan)
a. Business Modeling Workflow
b. Requirement Workflow
2. ElaborationPhase (Fase Pembangunan)
a. Analysis and Design Workflow
b. Implementation Workflow
c. Test Workflow
3. Construction Phase (Fase Konstruksi)
a. Implementation Workflow
b. Test Workflow
c. Deployment workflow
4. Transition Phase
a. Deployment workflow
1.8.Sistematika Penulisan
Dalam penyusunan skripsi ini akan diuraikan dalam bentuk bab, dan masing-masing bab akan dipaparkan dalam beberapa sub bab, diantaranya :
(23)
BAB I. PENDAHULUAN
Dalam bab ini akan menjelaskan latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat, metode penelitian dan sistematika penulisan laporan skripsi.
BAB II. LANDASAN TEORI
Dalam bab ini akan membahas dan menjelaskan mengenai dasar teoritis yang menjadi landasan dan mendukung pelaksanaan penulisan skripsi ini.
BAB III. METODOLOGI PENELITIAN
Bab ini membahas tentang metode-metode yang digunakan penulis dalam melakukan penelitian sesuai dengan metode yang diusulkan.
BAB IV.PEMBAHASAN
Bab ini akan diuraikan dan membahas analisis terhadap kebutuhan sistem, serta implementasi perancangan sistem. Bab ini juga akan membahas implementasi dan pengujian yang penulis lakukan terhadap aplikasi ini apakah aplikasi dapat berjalan sesuai dengan yang diharapkan penulis dan user.
BAB V. KESIMPULAN DAN SARAN
Dalam bab ini akan disampaikan kesimpulan dari semua pembahasan dari bab-bab sebelumnya serta saran-saran yang diharapkan dapat digunakan bagi pengembangan aplikasi sejenis lainnya.
(24)
9
BAB II
LANDASAN TEORI
BAB II LANDASAN TEORI
2.1. Software
Menurut Roger S Pressman dalam buku Software Engineer edisi ke 7,
―Software is: (1) instructions (computer programs) that when executed
provide desired features, function, and performance; (2) data structures that enable the programs to adequately manipulate information, and (3) descriptive information in both hard copy and virtual forms that describes the
operation and use of the programs‖. Software adalah perintah (program
komputer) yang ketika di jalankan menyediakan kemampuan, fungsi dan hasil yang di inginkan. Software juga bisa di artikan sebagai struktur data yang memungkinkan sebuah program untuk cukup memanipulasi informasi, dan informasi deskriptif dalam hard copy dan bentuk virtual yang menjelaskan operasi dan kegunaan dari program.
2.1.1. Bidang Aplikasi Software
Dalam bukunya Pressman lebih lanjut disebutkan bahwa software dikategorikan menjadi 7 kategori, yaitu:
a. SystemSoftware
Gabungan beberapa program yang di tulis untuk melayani program lain. Beberapa system Software (seperti
(25)
kompleks, tapi menentukan, struktur informasi. Aplikasi sistem yang lain (seperti komponen sistem operasi, driver, Software jaringan).
Pada kasus lain, wilayah systems Software di golongkan oleh banyaknya interaksi dengan perangkat keras komputer, banyak penggunaan oleh beberapa pengguna, operasi yang bersamaan yang membutuhkan penjadwalan, pembagian resource, dan Management proses yang canggih, data struktur dan kompleks, dan banyak antar muka eksternal.
b. ApplicationSoftware
Program yang berdiri sendiri (stand-alone) yang menyelesaikan kebutuhan bisnis yang spesifik. Tambahan untuk aplikasi yang memproses data secara konvensional, application
Software digunakan untuk mengontrol fungsi bisnis di waktu
yang nyata (e.g., point-of-sale transaction processing, real-time manufacturing process control).
c. Engineering/scientificSoftware
Engineering/scientific Software telah di golongkan oleh algoritma ―numbercrunching‖. Lingkup aplikasi ini mulai dari astronomi sampai vulkanologi, dari analisis otomotif sampai dinamika orbit pesawat luar angkasa, dan dari biologi molecular sampai pabrik yang sudah diotomatisasi.
(26)
d. EmbeddedSoftware
Embedded Software terletak pada kedalaman sebuah
produk atau sistem dan di gunakan untuk menjalankan dan mengontrol kegunaan dan fungsi untuk pengguna dan untuk sistem itu sendiri. Embedded Softwarebisa menampilkan fungsi yang terbatas dan hanya diketahui oleh orang tertentu saja (e.g., tombol kontrol untuk oven microwave) atau memberikan fungsi yang signifikan dan kemampuan mengontrol. (e.g., fungsi digital dalam mobil seperti kontrol bahan bakar, petunjuk di dashboard, dan sistem pengereman).
e. Product-lineSoftware
Product-line Software di rancang untuk menyediakan kemampuan yang spesifik untuk digunakan oleh pelanggan yang berbeda.
f. Webapplications
Web Application disebut juga ―WebApps,‖ ini adalah kategori Software network-centric. Dalam bentuk yang paling sederhana, WebApps lebih dari sekedar kumpulan dari file hypertext yang terhubung yang menyediakan informasi menggunakan teks dan grafik yang terbatas. Akan tetapi, dengan kemunculan Web 2.0, WebApps dikembangkan ke dalam lingkungan komputer yang rumit yang tidak hanya menyediakan kegunaan stand-alone, fungsi perhitungan, dan isi kepada
(27)
pengguna, tapi juga terintegrasi dengan database perusahaan da aplikasi bisnis.
g. ArtificialintelligenceSoftware
Pembuatan artificial intelligenceSoftware menggunakan algoritma non-numerical untuk memecahkan masalah yang kompleks yang tidak bisa untuk di lakukan perhitungan atau analisis langsung. Aplikasi yang termasuk area ini adalah
robotics, expert systems, pattern recognition (gambar dan
suara).
2.1.2. WebApps
Aplikasi Web adalah sebuah sistem informasi yang mendukung interaksi pengguna melalui antarmuka berbasis Web. Fitur-fitur aplikasi Web biasanya berupa data persistence, mendukung transaksi dan komposisi halaman Web dinamis yang dapat dipertimbangkan sebagai hibridisasi, antar hipermedia dan sistem informasi. (Simarmata 2010)
Aplikasi Web adalah bagian dari client-side yang dapat dijalankan oleh browser Web. Client-side mempunyai tanggung jawab untuk pengeksekusian proses bisnis. Interaksi Web dibagi ke dalam tiga langkah, yaitu permintaan, pemrosesan dan jawaban.
1. Permintaan
Penggunaan mengirimkan permintaan ke server Web, biasanya via halaman Web yang ditampilkan pada browser Web.
(28)
2. Pemrosesan
Server Web menerima permintaan yang dikirimkan oleh
pengguna, kemudian memproses permintaan tersebut.
3. Jawaban
Browser menampilkan hasil dari permintaan pada jendela
browser.
Halaman Web bisa terdiri dari beberapa jenis informasi grafis (tekstual dan multimedia). Kebanyakan komponen grafis dihasilkan dengan kakas (tools) khusus, menggunakan manipulasi langsung dan
editor WYSIWIG.
Halaman Web juga dapat dibuat dengan menggunakan berbagai program agar dapat menampilkan suatu informasi di dalam
browser (misalnya, Java atau PHP). Pembangunan aplikasi Web
membutuhkan beberapa kualifikasi yang berbeda. Biasanya, para
developer dalam pembangunan Web akan memegang peranan
berikut:
1. Pemasaran, untuk menetapkan target pengunjung Web dan
konten untuk diserahkan.
2. Perancangan grafis, untuk menetapkan tampilan visual
(meliputi tata letak halaman, huruf, warna, gambar dan film).
(29)
4. Pemrogram, untuk menulis program (di dalam Java, PHP atau bahasa pemrograman lainnya, yang dapat dikombinasikan dengan HTML).
2.2.Basis Data (Database)
Menurut (Hariyanto 2004), basis data adalah kumpulan data (elementer) yang secara logik berkaitan dalam merepresentasikan fenomena/fakta secara terstruktur dalam domain tertentu untuk mendukung aplikasi pada sistem tertentu.
Untuk kepentingan menangani database, tersedia sejumlah DBMS. DBMS (Database Management System) adalah perangkat lunak untuk mendefinisikan, menciptakan, mengelola dan mengendalikan pengaksesan basis data. DBMS menyediakan lingkungan yang nyaman dan efisien untuk penyimpanan dan pengambilan data dari basis data.
2.2.1. Keunggulan dan Kelemahan DBMS
Sisi keunggulan dari Database Management System (DBMS), sebagai berikut :
a. Mengurangi duplikasi data.
b. Menjaga konsistensi dan integritas data.
c. Memudahkan pemerolehan informasi yang lebih banyak dari data yang sama disebabkan data dari berbagai bagian dalam organisasi dikumpulkan menjadi satu.
d. Meningkatkan keamanan data dari orang yang tak berwenang. e. Penerapan standar.
(30)
f. Menghemat biaya karena dapat dipakai oleh banyak departemen.
g. Menanggulangi konflik kebutuhan antar pemakai karena basis data di bawah kontrol administrator basis data.
h. Meningkatkan tingkat respon dan kemudahan akses bagi pemakai akhir.
i. Meningkatkan produktivitas pemrogram.
j. Meningkatkan pemeliharaan melalui independensi data.
k. Meningkatkan konkurensi (pemakai data oleh sejumlah data) tanpa menimbulkan masalah kehilangan informasi atau integritas.
l. Meningkatkan layanan backup dan recovery.
Sedangkan kelemahan yang terdapat dalam DBMS, yakni :
a. Kompleksitas yang tinggi membuat administrator dan pemakai akhir harus benar-benar memahami fungsi-fungsi dalam DBMS agar dapat diperoleh manfaat yang optimal.
b. Ukuran penyimpan yang dibutuhkan oleh DBMS sangat besar dan memerlukan memori yang besar agar bekerja secara efisien. c. Rata-rata harga DBMS yang handal sangat mahal.
d. Terkadang DBMS meminta kebutuhan perangkat keras dengan spesifikasi tertentu sehingga diperlukan biaya tambahan.
e. Biaya konversi sistem lama ke sistem baru yang menggunakan DBMS terkadang sangat mahal.
(31)
f. Kinerjanya terkadang kalah dengan sistem yang sistem berbasis berkas.
g. Dampak kegagalan menjadi lebih tinggi karena semua pemakai bergantung pada ketersediaan DBMS.
Contoh-contoh DBMS yang terkenal dan umum digunakan oleh pemakai dalam pengelolaan data :
a. Microsoft Access
b. Microsoft SQL Server 2007 c. MySQL
d. Oracle 9i e. PostgreSQL
2.2.2. MySQL
MySQL bukan lingkungan pengembangan aplikasi basisdata, tapi satu DBMS kecil dan kompak. MySQL cocok untuk aplikasi berbasis web dengan keperluan minimal dan menengah. MySQL ideal untuk aplikasi berukuran kecil dan menengah, namun telah menjanjikan untuk penggunaan besar. (Hariyanto 2004)
Beberapa alasan memilih MySQL adalah: 1. Kecepatan
2. Kemudahan penggunaan 3. Ongkos
4. Dukungan bahasa query 5. Kapabilitas
(32)
6. Konektivitas dan keamanan 7. Portabilitas
8. Distribusi terbuka
Aplikasi basis data berbasiskan pada bahasa SQL (Structured
Query Language). Menurut Abdul Kadir (2003) pengertian SQL
adalah bahasa yang digunakan untuk mengakses basis data yang tergolong relasional. SQL dapat melakukan pengambilan data
(query), membuat tabel, menghapus tabel, menambahkan data ke
tabel, menghapus data pada tabel, mengganti data pada tabel, dan berbagai operasi lainnya.
2.3. Unified Modeling Language (UML)
Menurut (Fowler 2004) UML adalah keluarga notasi grafis yang di dukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang di bangun menggunakan pemrograman berorientasi objek (OO).
Menurut (Dharwiyanti 2009), Unified Modeling Language (UML) adalah sebuah "bahasa" yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.
Sedangkan menurut (Nugroho, Rekayasa Perangkat Lunak Berorientasi Objek dengan Metode USDP (Unified Software Development Process) 2010), UML adalah ‗bahasa‘ pemodelan untuk sistem atau perangkat lunak yang berparadigma berorientasi objek.
(33)
Dari pengertian di atas dapat disimpulkan, bahwa dengan menggunakan UML sebuah model untuk semua jenis aplikasi piranti lunak dapat dibuat. Aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. UML lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Hal tersebut dikarenakan ia menggunakan class dan operation dalam konsep dasarnya. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.
Berikut adalah diagram pada UML yang digunakan pada penulisan skripsi ini.
a. Activity Diagram
Activity Diagrams menggambarkan berbagai alir aktivitas dalam
sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity
Diagram juga dapat menggambarkan proses paralel yang mungkin terjadi
pada beberapa eksekusi.
Diagram ini merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu
Activity Diagram tidak menggambarkan behavior internal sebuah sistem
(dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum.
(34)
Sebuah aktivitas dapat direalisasikan oleh satu Use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara Use case menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas.
b. Class Diagram
Class adalah sebuah spesifikasi yang jika di instansiasi akan
menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Diagram ini menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metoda/fungsi). Class memiliki tiga area pokok:
1. Nama, merupakan nama dari sebuah kelas
2. Atribut, merupakan properti dari sebuah kelas. Atribut melambangkan batas nilai yang mungkin ada pada obyek dari class 3. Operasi, adalah sesuatu yang bisa dilakukan oleh sebuah class atau
yang dapat dilakukan oleh class lain terhadap sebuah class Atribut dan metoda dapat memiliki salah satu sifat berikut :
1. Private, tidak dapat dipanggil dari luar class yang bersangkutan
2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan
anak-anak yang mewarisinya
3. Public, dapat dipanggil oleh siapa saja
4. Package, hanya dapat dipanggil oleh instance sebuah class pada
(35)
Menurut (Connolly and Begg 2005) pada halaman 826 di jelaskan, untuk memetakan class menjadi relation (sebuah tabel dengan kolom-kolom dan baris-baris), ada 3 cara, yaitu (1) memetakan setiap class atau sub
class menjadi relation, (2) memetakan setiap subclass saja untuk
menjadi sebuah relation, dan (3) memetakan seluruh hirarki pada class menjadi sebuah relation tunggal.
c. Use caseDiagram
Use case adalah rangkaian/uraian sekelompok yang saling terkait
dan membentuk sistem secara teratur yang dilakukan atau diawasi oleh sebuah aktor. ‗Use case‘ digunakan untuk membentuk tingkah-laku benda/ things dalam sebuah model serta di realisasikan oleh sebuah collaboration. Umumnya ‗Use case‘ digambarkan dengan sebuah ‗elips‘ dengan garis yang solid, biasanya mengandung nama.
Use case menggambarkan proses sistem (kebutuhan sistem dari
sudut pandang user). Secara umum Use case adalah: 1. Pola perilaku sistem
2. Urutan transaksi yang berhubungan yang dilakukan oleh satu actor
3. Use case diagram terdiri dari
a) Use case
b) Actors
c) Relationship
d) System boundary boxes (optional)
(36)
d. Sequence Diagram
Sequence Diagram (diagram urutan) adalah suatu diagram yang
memperlihatkan atau menampilkan interaksi-interaksi antar objek di dalam sistem yang disusun pada sebuah urutan atau rangkaian waktu. Interaksi antar objek tersebut termasuk pengguna, display, dan sebagainya berupa pesan/message.
Sequence Diagram digunakan untuk menggambarkan skenario
atau rangkaian langkah-langkah yang dilakukan sebagai sebuah respon dari suatu kejadian/even untuk menghasilkan output tertentu. Sequence
Diagram diawali dari apa yang me-trigger aktivitas tersebut, proses dan
perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
2.4.Java
Java dikenal sebagai bahasa pemrograman tingkat tinggi. Java mudah dipelajari terutama bagi programmer yang telah mengenal C/C++. Java merupakan pemrograman berorientasi objek yang merupakan paradigma pemrograman masa depan.
Sebagai bahasa pemrograman, java dirancang agar dapat berjalan di semua platform dan juga dirancang untuk menghasilkan aplikasi-aplikasi dengan performansi yang terbaik. Sebagai sebuah platform, java terdiri atas dua bagian utama, yaitu:
1. Java Virtual Machine (JVM)
(37)
Sun membagi arsitektur Java menjadi tiga bagian, yaitu:
1. Enterprise Edition (J2EE) untuk aplikasi berbasis web, aplikasi sistem
tersebar dengan beraneka ragam klien dengan kompleksitas yang tinggi.
2. Standard Edition (J2SE) adalah bahasa untuk pemrograman berbasis
desktop yang sering dikenal sebagai bahasa Java.
3. Micro Edition (J2ME) adalah bahasa pemrograman untuk aplikasi
berbasis mobile
Dalam pembuatan aplikasi web ini, penulis menggunakan JavaEE. Alasan menggunakan JavaEE, menurut (Mukhar, et al. 2006) JavaEE menyediakan sebuah platform untuk mengembangkan dan menyebarkan aplikasi multitier (client-server arsitektur yang menjadikan aplikasi dibagi menjadi beberapa bagian yang menjalankan fungsi masing-masing, sehingga membuat aplikasi fleksibel dan reusable).
Ada banyak urusan infrastruktur yang dibutuhkan untuk membuat aplikasi kelas enterprise. Beberapa dari bagian penting dari infrastruktur tersebut termasuk keamanan (security), akses database dan kontrol transaksi. Keamanan memastikan bahwa user yang bisa mengakses adalah mereka yang memiliki hak untuk mengakses. Akses database juga sebuah komponen yang mendasar sehingga aplikasi yang kita buat bisa menyimpan dan mengambil data. Dukungan transaksi (transaction) dibutuhkan untuk memastikan bahwa data yang tepat di-update pada waktu yang tepat.
Sama seperti gedung kantor yang memerlukan banyak infrastruktur yang disembunyikan di dalam pipa-pipa, kabel listrik dan telekomunikasi,
(38)
aplikasi dengan skala besar membutuhkan dukungan sebuah infrastruktur yang hebat. Infrastruktur tersebut termasuk akses database, dukungan transaction dan keamanan. JavaEE menyediakan infrastruktur tersebut sehingga kita bisa fokus pada pembuatan aplikasi. Terlebih pada java sudah terdapat banyak library pendukung sehingga memudahkan dalam pengembangan.
2.5. Framework
Framework adalah kumpulan fungsi-fungsi dan class untuk tujuan
tertentu yang sudah siap pakai sehingga lebih memudahkan pekerjaan pemrograman. Framework dalam dunia komputer digunakan sebagai sebuah acuan utama berupa kerangka program yang bersifat global yang dapat disesuaikan dengan keinginan penggunanya. Framework yang dikembangkan saat ini mencakup berbagai macam pemrograman.
Pada pemrograman web, Framework telah dikembangkan untuk bahasa pemrograman antara lain PHP dan Java. Untuk PHP, Framework yang banyak digunakan misalnya Zend yang dikembangkan oleh Zend Technologies, CodeIgniter yang dikembangkan oleh Ellislb Inc., dan Seagull yang memiliki lisensi di bawah BSD (lisensi yang memungkinkan setiap orang bebas melakukan pengembangan, dan menggunakan kode sumber BSD). Sedangkan untuk bahasa pemrograman Java, Framework yang tersedia sangat banyak, diantaranya hibernate, struts, spring, ZK.
(39)
2.5.1. ZK
ZK adalah Framework berbasis komponen (component
based) yang menyediakan tampilan antar muka yang kaya, dinamis
dan interaktif bagi pengembangan web aplikasi. ZK menyediakan sebuah event-driven berbasis Ajax, yaitu sekumpulan komponen-komponen beraneka ragam (rich) yang terdiri dari XML User
InterfaceLanguage (XUL), XHTML dan ZK UserInterface Markup
Language (ZUML). Event-driven sendiri merupakan sebuah engine
yang memungkinkan untuk melakukan model pemrograman desktop yang intuitif (melakukan sesuatu dengan cepat tanpa pengetahuan yang dimiliki sebelumnya) ke model pemrograman web. Maksudnya, konsep-konsep pemrograman pada aplikasi desktop yang dilakukan dengan cepat dan mudah, dapat dilakukan pada lingkungan web. Para programmer dapat menampilkan aplikasinya dalam fitur komponen rich XUL dan XHTML. Bahasa markup ZUML membuat antar muka pengguna yang kaya se simpel menulis halaman HTML.
ZK mencakup sebuah mekanisme berbasis Ajax untuk mengotomatisasi antar aktifitas, sekumpulan komponen berbasis
XUL untuk memperkaya kegunaannya, dan sebuah bahasa ―markup‖
untuk memudahkan dalam pengembangan.
Mekanisme ZK berbasis Ajax terdiri dari 3 bagian yang dibagi menjadi ZK Loader, ZK AU Engine dan ZK ClientEngine.
(40)
Gambar 2. 1 Mekanisme ZK Framework
Berdasarkan pada permintaan user, ZK Loader me-load halaman ZK, menerjemahkannya dan me-render hasilnya ke halaman HTML pada respon untuk permintaan URL. Sebuah halaman ZK ditulis dalam sebuah bahasa markup yang disebut ZUML. ZUML, seperti HTML, digunakan untuk menjelaskan komponen apa yang akan diciptakan dan bagaimana menampilkannya. Komponen tersebut, sekali diciptakan, akan terus ada sampai session berakhir.
Pada gambar 2.1 dijelaskan bagaimana proses sebuah halaman ditampilkan. Alurnya adalah sebagai berikut:
1. Ketika ada user yang mengetik URL atau meng-klik sebuah
hyperlink pada browser, sebuah permintaan dikirimkan ke web
server. ZK Loader kemudian terlibat untuk menyediakan
permintaan tersebut, jika URL cocok dengan ZK yang telah di konfigurasi.
(41)
2. ZK Loader me-load halaman tersebut dan menerjemahkannya untuk menciptakan komponen yang sesuai.
3. Setelah menerjemahkan semua halaman, ZK Loader me-render hasilnya ke halaman HTML. Halaman HTML kemudian dikirim balik ke browser disertai dengan ZK ClientEngine.
4. ZK Client Engine berada di browser untuk men-detect apa saja event yang terjadi berdasarkan kegiatan user seperti menggerakkan mouse atau merubah sebuah nilai. Sekali terdeteksi, ZK Client memberitahu ZK AU Engine dengan mengirimkan sebuah ZK request.
5. Ketika menerima ZK requests dari Client Engine, AU Engine meng-update isi komponen yang cocok, jika dibutuhkan. Kemudian, AU Engine memberitahu aplikasi dengan melibatkan
eventhandlers yang cocok, jika ada.
6. Jika aplikasi memilih untuk merubah isi dari komponen, menambah atau memindahkan komponen, AU Engine mengirimkan isi yang baru ke komponen yang dibuang ke Client
Engine dengan menggunakan ZK Responses.
7. ZK Responses tersebut sebenarnya perintah untuk meminta
Client Engine bagaimana untuk meng-update DOM sesuai
(42)
2.5.2. Hibernate
Dari penjelasan tentang DBMS di atas ada model data berbasis objek. Menurut Abdul Kadir (2003), model data berbasis objek adalah model data yang menerapkan teknik pemrograman berorientasi objek. Model data ini memungkinkan data dikemas dan fungsi akses datanya ke dalam bentuk objek. Dalam bahasa lain biasa dikenal dengan (Object Oriented Database Management
System) OODBMS.
ORM atau Object Relational Mapping merupakan aplikasi dari OODBMS. Menurut Christian Baver dan Gavin King (2007 : 25) ORM adalah otomatisasi persistence objek-objek pada aplikasi Java untuk merelasikan basis data, menggunakan metadata guna menggambarkan pemetaan (mapping) antara objek (java) dengan basis data. Mark Fussel (1997) seorang pengembang ORM, mendefinisikan empat tingkatan kualitas ORM, yakni :
1. Pure Relational
2. Light object mapping
3. Medium object mapping
4. Full object mapping
Untuk mendefinisikan ORM, digunakan hibernate yaitu tool yang menyediakan segala keuntungan dari penggunaan metode ORM sebagai pemrosesan basis data. Adapun keuntungan-keuntungan ORM tersebut adalah produktivitas akan baris program
(43)
yang lebih sederhana dibandingkan dengan menuliskan query, pemeliharaan dan performa ORM yang mudah dan memungkinkan pengguna common agar lebih cepat dalam implementasi program.
Hibernate biasanya berbasiskan bahasa pemrograman XML.
Pemetaan (mapping) kelas pada java ke tabel database bisa dilakukan dengan cara konfigurasi file XML atau dengan menggunakan Java Annotation (bentuk khusus dari syntax yang dapat ditambahkan pada code java sebagai pengenal). Ketika menggunakan file XML, hibernate dapat menghasilkan inti source code untuk kelas persistence dan membuat skema database, begitupun dengan menggunakan annotation.
2.6.Ajax
Menurut (Saerang 2007), istilah AJAX (Asynchronous JavaScript and XML) dalam pengembangan web menjadi populer pada beberapa tahun belakangan. AJAX sendiri bukan merupakan bahasa pemrograman baru, AJAX hanya sebuah teknik pemanfaatan XMLHttpRequest dengan JavaScript untuk berkomunikasi dengan server secara asynchronous, dengan pemanfaatan objek XMLHttpRequest ini kita dapat membuat proses berjalan secara background atau bekerja di belakang layar sementara user tetap dapat berinteraksi dengan halaman web yang ada. Pemanfaatan teknik
asynchronous ini juga lah yang telah mendorong pengembangan web menjadi
lebih kaya atau banyak yang menulisnya dengan istilah pengembangan Rich
(44)
2.7. RationalUnifiedProcess (RUP)
2.7.1. Pengertian
Rational Unified Process atau RUP adalah suatu metode
pengembangan perangkat lunak yang banyak digunakan di dunia. RUP menawarkan fleksibilitas yang tinggi, yang merupakan karakteristik penting dalam pengembangan perangkat lunak dari skala kecil sampai skala besar, dari perangkat lunak yang relatif sederhana sampai perangkat lunak yang sangat kompleks. RUP juga menyediakan tahapan-tahapan yang sistematis dalam pengembangan perangkat lunak sehingga dapat digunakan sebagai referensi untuk pengembangan perangkat lunak sebenarnya. (Suryana 2006)
Sedangkan menurut (Kruchten 2003) RUP adalah sebuah proses pengembangan software yang menutup seluruh siklus pengembangan software.
Gambar 2. 2 Metode RUP
Dilihat dari gambar 2.2, menurut (Kroll and Kruchten 2003), proses RUP memiliki dua struktur atau dua dimensi, yaitu:
(45)
1. Struktur Dinamis
Dimensi horizontal yang mewakili struktur dinamis atau dimensi waktu dari proses. Dimensi in menunjukkan bagaimana prosesnya, dinyatakan dalam sebuah lingkaran, fase, iterasi dan milestone, yang terjadi selama siklus dari sebuah proyek
2. Struktur Statis
Dimensi vertikal mewakili struktur statis dari proses. Dimensi ini menjelaskan bagaimana elemen proses (aktifitas, disiplin, artifak dan role) secara logic di kelompokkan ke dalam disiplin proses inti (atau alur kerja)
2.7.2. Struktur Dinamis
Struktur dinamis berurusan dengan siklus atau dimensi waktu dari sebuah proyek. RUP menyediakan sebuah pendekatan struktur ke pengembangan iteratif, membagi sebuah proyek ke dalam 4 fase yaitu
Inception, Elaboration, Construction dan Transition.
Gambar 2. 3 Struktur Dinamis RUP
Gambar di atas menggambarkan tujuan untuk fase siklus di RUP. Setiap 4 fase RUP memiliki tujuan yang di definisikan dengan baik. Gunakan tujuan di atas sebagai tuntunan untuk menentukan
(46)
aktifitas apa yang akan dilakukan dan artifak apa yang akan di hasilkan.
Setiap fase mengandung satu atau lebih iterasi, yang fokus pada menghasilkan kebutuhan teknis untuk mencapai objektif bisnis dari fase tersebut. Jika objektif tidak bisa diberikan fase perencanaan, iterasi lain harus di tambahkan pada fase tersebut (yang akan menunda proyek). Untuk menghindari ini, pastikan bahwa setiap iterasi di fokuskan pada apa yang dibutuhkan untuk mencapai objektif bisnis dari fase tersebut. (Kroll and Kruchten 2003)
1. Inception
Menetapkan sebuah pemahaman yang baik dari sistem apa yang akan dibangun dengan mendapatkan sebuah pemahaman level tinggi dari semua kebutuhan dan menetapkan lingkup dari sistem tersebut.
Tujuan: memahami lingkup proyek, membangun kasus bisnis
dan meminta stakeholder untuk bergerak.
2. Elaboration
Mengurus banyak tugas teknis yang sulit: rancang, implementasi, test dan dasar dari sebuah arsitektur yang bisa di jalankan, termasuk sub sistem beserta tampilannya, komponen kunci dan mekanisme arsitektur.
(47)
Tujuan: mengurangi resiko teknis utama, membuat arsitektur dasar dan memahami apa yang dibutuhkan untuk membangun sistem.
3. Construction
Melakukan hampir semua proses implementasi setelah selesai mengerjakan arsitektur yang dapat di eksekusi ke versi operasional yang pertama dari sistem. Menyebarkan beberapa release internal dan alpha untuk memastikan bahwa sistem dapat digunakan dan sesuai dengan kebutuhan user. Akhir dari fase ini dengan menyebarkan sebuah versi beta fungsional dari sistem, termasuk instalasi dan dokumentasi pendukung serta materi pelatihan.
Tujuan: membangun versi operasional pertama dari produk
4. Transition
Memastikan bahwa software sesuai dengan kebutuhan dari user. Ini termasuk testing/pengujian produk dalam persiapan release dan membuat sedikit penyesuaian berdasarkan umpan balik dari user. Pada poin siklus ini, umpan balik dari user terfokus pada konfigurasi, instalasi dan masalah kegunaan.
Tujuan: membangun versi final dari produk dan memberikannya
ke pelanggan.
2.7.3. Struktur Statis
(48)
(aktifitas, disiplin, artifak dan role) secara logic di kelompokkan ke dalam disiplin inti proses (atau alur kerja). Sebuah proses mendeskripsikan siapa melakukan apa, bagaimana dan kapan.
Gambar 2. 4 Struktur Statis RUP
Pada gambar di atas menjelaskan siapa (individu atau grup) melakukan sebuah pekerjaan, sebuah aktifitas menjelaskan bagaimana pekerjaan di lakukan dan sebuah artifak menangkap apa yang di lakukan. (Kroll and Kruchten 2003)
1. Role
Pada RUP role didefinisikan bagaimana seorang individu harus melakukan kerja, dan menspesifikasikan kompetensi dan tanggung jawab yang individu tersebut harus kerjakan. Satu orang biasanya menjalankan satu atau banyak role dan beberapa orang bisa menjalankan role yang sama.
2. Aktifitas
Sebuah aktifitas dari role tertentu adalah sebuah unit kerja yang seorang individu dalam role tersebut mungkin diminta untuk
(49)
melaksanakannya. 3. Artifak
Artifak adalah sebuah bagian dari informasi yang di hasilkan, modifikasi atau yang di gunakan oleh sebuah proses.
2.8. Blackbox Testing
Menurut (Pressman 2010) black-box adalah sebuah metode yang digunakan untuk menguji sebuah software pada level interface. Metode ini menguji beberapa aspek mendasar dari sebuah software dengan sedikit memperhatikan struktur logic dasar dari software tersebut.
Metode pengujian black-box disebut juga pengujian perilaku
(behavioral testing), pengujian ini fokus kepada kebutuhan fungsional dari
software. Jadi, teknik pengujian black-box memungkinkan seseorang untuk
memperoleh kumpulan dari kondisi masukan yang benar-benar akan menguji semua kebutuhan fungsional dari sebuah program.
Pengujian black-box berusaha untuk menemukan kesalahan pada beberapa kategori, yaitu (1) fungsi yang tidak benar atau hilang, (2) kesalahan interface, (3) kesalahan dalam struktur data atau akses database eksternal, (4) kesalahan perilaku atau kinerja, dan (5) kesalahan inisialisasi atau terminasi.
(50)
35
BAB III
METODOLOGI PENELITIAN
BAB III METODOLOGI PENELITIAN
3.1.Metode Pengumpulan Data
Dalam melakukan pengumpulan data, penulis menggunakan tiga macam teknik untuk mendapatkan bahan - bahan sebagai dasar penelitian, yaitu studi pustaka, observasi dan wawancara.
a. Studi Pustaka
Pada tahapan ini penulis melakukan pengumpulan data yang terkait dari berbagai sumber. Sumber bacaan berasal dari buku-buku ilmu komputer, jurnal, karya ilmiah, dan buku elektronik yang berstandar. Adapun buku-buku yang dipelajari dan situs-situs internet yang berkaitan dengan judul yang penulis ambil dan dapat dilihat pada daftar pustaka.
Tabel 3. 1 Studi Pustaka
Nama Judul Kekurangan Kelebihan
Nendy Subhansyah
UIN Syarif
Hidayatullah
Perancangan Akademik Sekolah berbasis Teknologi Mobile Web
Tidak ada fitur untuk mencetak laporan hardcopy
Sistem dapat diakses secara mobile
(51)
UIN Syarif Hidayatullah
Informasi Akademik berbasis Client Server
bisa diakses pada 1 tempat karena menggunakan jaringan intranet
laporan dalam bentuk hardcopy
Indah Dwijayanthi Nirmala
UIN Syarif
Hidayatullah
Pengembangan Perangkat
Lunak Sistem Informasi
Akademik SD Standar
Nasional
Rajawati 08 Pagi berbasis Jaringan WLAN dengan
menggunakan Infrastruktur ad-hoc
Tidak bisa diakses di luar jangkauan
WLAN Memerlukan
setting yang rumit untuk pengguna awam
Dapat diakses oleh beberapa user sekaligus Diakses oleh
jaringan WLAN
b. Observasi
Observasi dilakukan untuk mengumpulkan informasi mengenai kebutuhan sistem (system requirements). Tempat observasi dilakukan di SMA Manbaul Ulum Batu Ceper-Tangerang.
(52)
c. Wawancara
Konsultasi tanya jawab langsung dengan staf terkait di sekolah SMA Manbaul Ulum untuk mendapatkan penjelasan mengenai sistem yang sedang berjalan di sekolah.
Proses tanya jawab secara lisan dilakukan dengan harapan agar penulis mendapatkan data yang dibutuhkan untuk sistem yang dibutuhkan user. Dari hasil wawancara diperoleh sistem yang sedang berjalan dan data-data dari hasil wawancara digunakan untuk mengidentifikasi kebutuhan-kebutuhan pengguna akan aplikasi web penilaian siswa. Hasil wawancara disajikan pada bagian lampiran.
3.2.Metode Pengembangan Aplikasi
Dalam proses pembuatan aplikasi web penilaian siswa ini, penulis menggunakan metode RUP (Rational Unified Process) dan untuk pengujian penulis menggunakan metode Blackbox.
3.2.1. RUP
Penulis menggunakan metode RUP ini karena aplikasi yang dibangun belum pernah ada sebelumnya di sekolah tersebut, user tidak bisa menjelaskan secara langsung apa yang menjadi kebutuhan dalam proses penilaian siswa untuk di terapkan dalam sebuah aplikasi, aplikasi yan dibangun merupakan kebutuhan dari user, oleh karena itu user terlibat dalam pengembangan aplikasi dari awal sampai akhir dan aplikasi yang dibangun membutuhkan waktu relatif lama.
(53)
Karakteristik aplikasi yang penulis buat sesuai dengan karakteristik yang ada di metode ini, yaitu metode ini mendukung proses perulangan atau iterasi dan metode ini mendukung agar stakeholder terus memberikan masukan terhadap aplikasi yang di bangun.
3.2.2. Blackbox
Aplikasi ini baru pertama kali diterapkan pada SMA Manbaul Ulum, dan sebelumnya belum ada sama sekali aplikasi sejenis yang digunakan. Agar user mengetahui apakah aplikasi yang sudah di buat sudah bisa menggantikan atau sudah bisa mengakomodir sistem penilaian yang sebelumnya dilakukan secara manual atau belum, maka penulis menggunakan metode pengujian blackbox.
(54)
39
BAB IV PEMBAHASAN
BAB IV PEMBAHASAN
4.1. Profil SMA Manbaul Ulum
a. Latar belakang
Menjadi umat terbaik dari sebuah bangsa yang besar merupakan harapan dan cita-cita setiap pribadi muslim. Untuk mencapai harapan dan cita-cita tersebut maka peran umat Islam sebagai hamba Allah dan khalifah Allah di muka bumi harus selalu ditingkatkan.
Agar tujuan tersebut bisa tercapai, maka secara kelembagaan, pondok pesantren harus terus menerus mampu meningkatkan dan mengembangkan diri baik melalui sistem, konsep, pendanaan, pengorganisaian, pelaksanaan, dan pengkaderan yang mampu menumbuhkan individu berkualitas; secara keimanan dan ketaqwaan, serta keilmuan dan keterampilan.
Dengan segala pengharapan akan cita-cita yang luhur, mempersiapkan generasi mendatang menjadi lebih baik, maka Pondok Pesantren Asshiddiqiyah menghadirkan SMA Manba‘ul Ulum Asshiddiqiyah Kota Tangerang dengan konsep pendidikan menyeluruh dan berkesinambungan dalam sebuah Islamic Boarding School.
Ada empat aspek penting yang menjadi perhatian utama dalam pendirian SMA Manba‘ul Ulum Asshiddiqiyah Kota Tangerang. Pertama, adanya konsep dan sistem pendidikan yang secara sadar
(55)
diderivasikan dari ajaran Islam dengan tetap memenuhi kriteria pendidikan nasional. Kedua, adanya manajemen dan tenaga pengelola dan pengajar yang memiliki visi dan misi keagamaan dan kapabilitas akademik. Ketiga, adanya raw Input yang telah memiliki dasar pengetahuan dan keagamaan dalam memahami pendidikan tingkat menengah. Keempat, adanya pendanaan operasional dan ketersediaan sarana prasarana pendidikan dan keagamaan yang memadahi.
b. Logo Sekolah
c. Visi misi
Dari visi misi serta tujuan dan dari orientasi pendidikan serta konsepsi nilai maka dibuatlah visi misi dan tujuan SMA Manba‘ul Ulum Kota Tangerang sebagai berikut :
1. Visi
Menjadi Sekolah Menengah terpercaya dalam membangun sumber daya manusia unggul pada bidang keilmuan, peka terhadap masalah sosial, dan apresiatif akan nilai-nilai keagamaan dan perkembangan budaya.
(56)
2. Misi
a. Menyelenggarakan pendidikan dan pengajaran yang dinamis dan inovatif dengan pola manajemen memelihara tradisi lama yang positif serta mengambil nilai-nilai baru yang konstruktif,
b. Mengembangkan materi dan sistem pendidikan yang menyeluruh, berkesinambungan, relevan dengan kebutuhan masyarakat dan dunia global,
c. Meningkatkan proses pembelajaran yang mampu mengembangkan potensi, kreasi, dan kompetisi siswa,
d. Meningkatkan kompetensi dan profesionalisme guru dan pengelola pendidikan,
e. Meningkatkan dan mengembangkan sarana prasarana pendidikan berbasis teknologi modern dan berkultur pesantren.
Sehingga mampu membentuk siswa-siswi SMA memiliki keilmuan yang berimbang antara konsepsi keagamaan dan sain modern mampu mengkomunikasikan ilmunya ke dalam bahasa masyarakat global, dan mampu mengaplikasikan ilmunya dengan pelanggaran akhlak mulia.
d. Tujuan
(57)
1. Meningkatkan keimanan dan ketakwaan siswa-siswi SMA agar mampu mengimplementasikan ajaran agama secara dinamis sehingga dapat memberikan manfaat dan pengaruh positif bagi lingkungannya. Indikator utamanya adalah menjadi rujukan dan teladan bagi masyarakat sekitarnya.
2. Meningkatkan keilmuan dan intelektualitas siswa-siswi SMA agar mampu mengembangkan pengetahuannya secara mandiri atau dapat melanjutkan pendidikannya pada jenjang perguruan tinggi yang berkualitas baik. Indikator utamanya adalah ketercapaian nilai ujian akhir yang tinggi dan bisa memasuki perguruan tinggi melalui jalur PMDK atau SPMB Nasional 3. Meningkatkan keterampilan dan kemampuan siswa-siswi SMA
sebagai anggota masyarakat agar mampu berinteraksi di lingkungan sosialnya dengan baik, dan memiliki keterampilan hidup yang bisa dikembangkan di tengah-tengah komunitasnya. Indikator utamanya adalah kemampuan berorganisasi, mengajar, bekerja atau berwirausaha dengan tetap mengemban misi berdakwah di tengah-tengah masyarakat global.
(58)
e. Struktur organisasi
YAYASAN PONDOK PESANTREN ASSHIDDIQIYAH
Zainuri Yasmin, S.Ag KEPALA SEKOLAH
KOMITE SEKOLAH Dinas Pendidikan Kota/Provinsi
TATA USAHA
Yunda Kurniawan, S.Pd WAKASEK KURIKULUM
Siti Umayah, S.Ag WAKASEK KESISWAAN
KETUA KETUA JURUSAN
DEWAN GURU/ WALIKELAS
OSIS
SISWA-SISWI
DR. KH. Noer Muhammad Iskandar, SQ PENGASUH PESANTREN
Garis Instruksi Garis Koordinasi
(59)
Tabel 4. 1 Staf Personalia
1 . Ketua Yayasan : Dr. KH. Noer Muhammad Iskandar, SQ 2 . Ketua Komite Sekolah : Drs. Agus Wijaya
3 . Kepala Sekolah : Zainuri Yasmin, S. Ag 4 . Wakasek. Bid. Kurikulum : Yunda Kurniawan, S.Pd. 5 . Wakasek. Bid. Kesiswaan : Siti Umayah, S.Ag 6 . Bendahara : Miftah, S. Ag 7 . Staff TU : G. Hartanto 8 . Staff TU : Irma Farhana 9 . Staff TU : Vika Susanti, S.Pd 10 . Piket (koor) : Tulus Mulyono, S.Pd.I 11 . Piket Putra : Matnajih, S. Sos 12 . Piket Putri : Hikmah Ulwiyah 13 . Piket Putri : Mazidah 14 . Wali Kelas X.1 : G. Hartanto
15 . Wali Kelas X.2 : Saiful Nur Hidayat, M.Pd. 16 . Wali Kelas X.3 : Siti Umayah, S.Ag 16 . Wali Kelas X.4 : Khuzaimah, S.Pd.I 18 . Wali Kelas XI.IPA 1 : Matnajih, S. Sos 19 . Wali Kelas XI.IPS 1 : M. Sholihun Amin 20 . Wali Kelas XI.IPA 2 : Fatwa Aulia, S.Pd 21 . Wali Kelas XI.IPS 2 : Martini
22 . Wali Kelas XII.IPA 1 : Nur Khamidi, S. Ag 23 . Wali Kelas XII.IPS1 : Tulus Mulyono, S.Pd.I 24 . Wali Kelas XII.IPA 2 : Dra. Suratmini 25 . Wali Kelas XII.IPS 2 : Arin Setyorini, S. Sos
26 . BP/BK : Drs. H. Abdul Choliq Mahfudz 27 . Pustakawan : Alfina Sari, S.Pd.
28 . Laboran Biologi : Dra. Suratmini 29 . Laboran Kimia : Vika Susanti, S.Pd 30 . Laboran Fisika : Syaiful Nurhidayat 31 . Laboran Komputer : Ahmad Hapij, S. Kom 32 . Laboran Bahasa : Moh. Kholis Nurohman, SS
Tangerang, 21 Juli 2010 STAF PERSONALIA SMA MANBA`UL ULUM
PONDOK PESANTREN ASSHIDDIQIYYAH 2 TANGERANG TAHUN PELAJARAN 2009/2011
(60)
4.2. InceptionFase (Fase Permulaan)
Dalam tahap ini terdapat beberapa langkah yang perlu dilakukan di dalam pembangunan aplikasi web pada skripsi ini:
4.2.1. Business Modeling Workflow
a. Identifikasi sistem berjalan
Gambar 4. 2 Workflow Sistem Penilaian Berjalan
Gambar 4.2 di atas menjelaskan tentang sistem proses penilaian yang sedang berjalan, dengan penjelasan sebagai berikut
(61)
a. Sebelum melakukan penilaian terhadap siswa, guru meminta blanko penilaian kosong kepada Tata Usaha
b. Setelah mendapat blanko, guru melaksanakan ujian, soal diberikan kepada siswa.
c. Setelah selesai melaksanakan ujian, ujian dikoreksi dkemudian nilai siswa di masukkan ke dalam blanko nilai tersebut,
d. Guru memberikan kepada Tata Usaha untuk direkap.
e. Tata Usaha memasukkan data nilai siswa di buku rekap siswa sesuai dengan kelas masing-masing. Hal ini bertujuan agar sekolah memiliki arsip nilai siswa.
f. Setelah nilai di rekap, Tata Usaha mengembalikan blanko nilai tersebut ke guru yang bersangkutan. Proses ini dilakukan untuk ujian harian, ujian tengah semester dan ujian akhir semester. g. Nilai di simpan oleh guru sebagai arsip.
h. Setelah nilai uas diberikan dan direkap oleh Tata Usaha, nilai diberikan kepada operator SAS (Sistem Administrasi Sekolah). Operator SAS memasukkan nilai tersebut kedalam sistem untuk kemudian di buat dalam bentuk file dengan format .pdf.
i. File rapor dengan format .pdf diberikan kepada sekolah j. Tata Usaha mencetak file tersebut
k. Rapor diserahkan kepada wali kelas untuk di tanda tangani l. Rapor diserahkan kepada kepala sekolah untuk ditanda tangani, m. setelah ditanda tangani diberikan kembali kepada wali kelas.
(62)
n. Rapor diberikan kepada siswa pada akhir semester.
o. Siswa memberikan kepada wali siswa untuk dilihat dan ditanda tangani.
b. Identifikasi masalah
Berdasarkan identifikasi dari hasil wawancara dengan pihak sekolah dan identifikasi dari gambar workflow di atas, penulis menemukan beberapa masalah yang dihadapi sekolah dalam pelaksanaan sistem yang sudah berjalan, diantaranya adalah:
a. Tahapan yang berulang-ulang, hal ini menyebabkan kurang efektif karena akan memakan waktu yang banyak dalam memproses nilai.
b. Kurangnya kontrol terhadap peraturan penyerahan nilai dari guru mata pelajaran kepada Tata Usaha. Hal ini akan menyebabkan ketidakdisiplinan guru.
c. Proses yang panjang dalam mencetak rapor. Terjadi karena sekolah masih bergantung kepada sistem lain atau karena tidak mempunyai sistem sendiri yang berbasis komputer, masalah akan timbul jika ada kesalahan data pada rapor, maka sekolah harus mengurus ke operator SAS dan membutuhkan waktu beberapa hari sampai rapor yang baru keluar.
d. Setelah rapor sudah diberikan ke siswa, harusnya rapor diberikan kepada wali siswa/orang tua. Namun ada kalanya siswa tidak menyerahkan rapor kepada wali siswa padahal rapor
(63)
merupakan laporan hasil belajar siswa untuk diketahui oleh wali siswa.
e. Tidak sedikit wali siswa yang bertempat tinggal jauh kerena SMA Manbaul Ulum termasuk ke dalam yayasan Pondok Pesantren Asshiddiqiyah, sehingga siswa yang bersekolah berasal bisa dari berbagai daerah di Indonesia. Hal ini menyebabkan informasi yang seharusnya diketahui wali siswa (nilai, pelanggaran dan prestasi) tidak selalu bisa disampaikan karena jarak wali siswa dan sekolah yang relatif jauh.
c. Alternatif pemecahan masalah
Dari identifikasi masalah, penulis mencoba menguraikan alternatif yang dapat mengatasi masalah-masalah yang dihadapi ketika user menggunakan sistem lama. Alternatif pemecahan masalah penulis uraikan menjadi beberapa poin, yaitu :
a. Membuat aplikasi agar proses penilaian dapat dilakukan langsung tanpa perlu dilakukan perekapan nilai secara manual oleh Tata Usaha dan dilakukan secara berulang-ulang.
b. Membuat aplikasi yang dapat diakses oleh guru mata pelajaran untuk memasukkan nilai siswa.
c. Membuat aplikasi yang dapat menggantikan fungsi SAS sebagai sarana mencetak rapor, sehingga jika ada kesalahan di rapor, sekolah tidak perlu mengurus ke luar sekolah karena sudah memiliki sistem sendiri.
(64)
d. Membuat sistem yang dapat di akses wali siswa. Sehingga informasi mengenai anaknya dapat diketahui.
4.2.2. Requirement Workflow
a. Identifikasi lingkup sistem
Berikut adalah kriteria-kriteria yang menjadi acuan dalam penilaian di rapor akademik di SMA Manbaul Ulum.
a. Terdapat 3 nilai pada rapor, yaitu nilai pengetahuan, nilai praktik dan nilai sikap.
b. Nilai pengetahuan merupakan hasil penjumlahan dari nilai kehadiran, nilai rata-rata harian, nilai ujian tengah semester dan ujian akhir semester.
c. Nilai rata-rata harian berasal dari nilai rata-rata tugas dan nilai ulangan yang dilakukan sebanyak 4 kali selama 1 semester. d. Nilai rata-rata harian berasal dari penilaian sehari-hari seorang
guru kepada siswa. Nilai di berikan berdasarkan tingkat keaktifan dan kerajinan di dalam kelas.
e. Nilai praktik berasal dari penilaian guru pada saat melakukan praktik. Praktik dilakukan sebanyak 3 kali selama 1 semester. f. Rumus mendapatkan nilai akhir
� +
� × % + K × % + (UTS × % ) + (UAS × %) U = nilai ulangan harian
nU = jumlah ulangan harian T = Nilai tugas harian
(65)
nT = jumlah tugas harian K = nilai kehadiran
UTS = nilai Ulangan Tengah Semester UAS = nilai Ulangan Akhir Semester % = persentase jenis nilai
Agar user yang terlibat dapat melakukan tugas-tugasnya, ada beberapa kriteria:
a. Kepala sekolah, kurikulum, tata usaha, wali kelas, guru dan siswa harus login terlebih dahulu sebelum melakukan aktifitas di aplikasi web penilaian.
b. Admin perlu mengatur halaman apa saja yang bisa di akses oleh
Kepala sekolah, kurikulum, tata usaha, wali kelas, guru dan siswa. Sehingga ketika user telah login, menu yang muncul adalah menu yang telah di atur oleh Admin.
c. Admin perlu menambahkan data kepala sekolah, kurikulum, tata usaha, wali kelas, guru agar bisa mengakses ke dalam sistem. d. Admin/Kurikulum perlu menambahkan kelas apa saja yang ada
di SMA Manbaul Ulum.
e. Admin/Kurikulum perlu menambahkan pelajaran apa saja yang ada di SMA Manbaul Ulum.
f. Admin/Kurikulum perlu mengatur kelas dimana seorang wali kelas menjadi wali, sehingga wali kelas hanya dapat mengakses data siswa yang berada di kelas yang di asuhnya.
(1)
232
return this.siswa;}
public void setSiswa(Siswa siswa) { this.siswa = siswa;
}
@ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "id_kelas") public Kelas getKelas() {
return this.kelas; }
public void setKelas(Kelas kelas) { this.kelas = kelas;
}
@Column(name = "nilaiPengetahuan") public Integer getNilaiPengetahuan() {
return this.nilaiPengetahuan;
}
public void setNilaiPengetahuan(Integer nilaiPengetahuan) {
this.nilaiPengetahuan = nilaiPengetahuan;
}
@Column(name = "nilaiPraktik") public Integer getNilaiPraktik() {
return nilaiPraktik; }
public void setNilaiPraktik(Integer nilaiPraktik) {
this.nilaiPraktik = nilaiPraktik; }
@Column(name = "semester") public String getSemester() {
(2)
233
return this.semester;}
public void setSemester(String semester) { this.semester = semester;
}
public String getSikap() { return sikap;
}
public void setSikap(String sikap) { this.sikap = sikap;
}
public String getTh1() { return th1;
}
public void setTh1(String th1) { this.th1 = th1;
}
public String getTh2() { return th2;
}
public void setTh2(String th2) { this.th2 = th2;
}
(3)
234
inputNilaiAkademik.zul
<?page title="new page title"
contentType="text/html;charset=UTF-8"?> <zk>
<style>
.GridLayoutNoBorder tr.z-row td.z-row-inner, tr.z-row .z-cell,
div.z-grid{--> border: none; overflow: hidden; zoom: 1;
background: white; border-top: none; border-left: none;
border-right: none; border-bottom: none; } .z-label{ font-size:
12px; } </style> <?init
class="org.zkoss.zkplus.databind.AnnotateDataBinde rInit"?>
<window title="" border="none" width="" apply="org.sia.action.ActInputNilaiAkademik"
sclass="GridLayoutNoBorder"> <div align="center">
<label value="NILAI AKADEMIK" style="font-size: 14px; color:#008BB6;
weight:bold; font-family: Verdana;" />
</div> <grid>
<rows> <row>
<toolbar width=""> <groupbox> <hlayout>
<div align="center"> Mata Pelajaran
<combobox width="150px"
id="pelajaranCbx" mold="rounded" constraint="no empty: Tidak boleh kosong"
value="@{win$composer.selected.pelajaran }"
/>
Kelas
<combobox width="150px"
mold="rounded" constraint="no empty: Tidak boleh kosong"
id="kelasCbx"
value="@{win$composer.selected.kelas }" /> Semester
(4)
235
mold="rounded" constraint="no empty: Tidak boleh kosong"
id="semesterCbx"
value="@{win$composer.selected.semester }"> <comboitem value="1" label="1" /> <comboitem value="2" label="2" /> </combobox>
Jenis
<combobox width="150px"
mold="rounded" constraint="no empty: Tidak boleh kosong"
id="jenisCbx"
value="@{win$composer.selected.jenis }"> <comboitem value="Tugas"
label="Tugas" /> <comboitem value="Kehadiran"
label="Kehadiran" /> <comboitem value="ulangan"
label="Ulangan" />
<comboitem value="praktik" label="Praktik" /> <comboitem value="sikap"
label="Sikap" /> <comboitem value="uts"
label="UTS" /> <comboitem value="UAS"
label="UAS" /> </combobox>
</div>
<div align="">
<button label="INPUT" onClick="" id="inputBtn"
image="/img/button/add.png"/>
<button label="EDIT" onClick="" image="/img/button/update.png"
(5)
236
<button label="CANCEL" onClick=""image="/img/button/cancel.png" id="cancelBtn" /> </div>
</hlayout>
</groupbox> </toolbar>
</row> </rows> </grid>
<grid style="overflow:auto"> <rows>
<row>
<div align="center"> <groupbox
id="gbxForm" mold="3d" width="">
<panel> <panelchildren>
<div align="center">
<listbox id="listbox"> <auxhead>
<auxheader label="NIS" align="center" />
<auxheader
label="Nama Siswa" align="center" />
<auxheader label="Nilai" align="center" /> </auxhead>
<listhead>
<listheader
width="200px" /> <listheader />
<listheader
width="200px" /> </listhead>
<listitem>
<listcell label="" /> </listitem>
</listbox> </div>
(6)
237
</panelchildren></panel> <div
align="center">
<button label="SUBMIT" onClick="" image="/img/button/update2.png"
id="submitForm" />
<button label="UPDATE" onClick="" image="/img/button/update2.png"
id="updateForm" />
<button label="CANCEL" onClick="" image="/img/button/cancel.png"
id="cancelForm" />
</div> </groupbox> </div>
</row> </rows> </grid>
</window> </zk>