Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
PENDAFTARAN KERJA PRAKTEK MENGGUNAKAN JSP
DENGAN FRAMEWORK APACHE STRUTS
Studi Kasus pada Teknik Informatika Universitas Sanata Dharma
SKRIPSI
Ditujukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Jurusan Teknik Informatika
Oleh :
Yustinus Nugroho
035314020
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2009
i
APPRENTICE REGISTRATION USE JSP
WITH APACHE STRUTS FRAMEWORK
Case in Informatics Engineering Sanata Dharma University
A Thesis
Presented as Partial Fulfillment of the Requirements
To Obtain the Sarjana Teknik Degree
In Informatics Engineering
By :
Yustinus Nugroho
035314020
DEPARTMENT OF INFORMATICS ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2009
ii
iii
v
vii
HALAMAN PERSEMBAHAN
Karya ini ku persembahkan untuk :
Tuhan Yesus, atas segala rahmat yang diberikan kepada saya
Kedua orang tua-ku yang telah merawat dan membimbingku selama ini
Kedua adikku, Yohan dan Agnes, untuk semua perhatian kalian
Teman-teman Teknik informatika 2003, Terima kasih atas kegembiraan dan segala
yang kalian berikan
Teman teman SMU 7 X2D, Terima kasih karena telah menjadi teman yang hebat
ivii
HALAMAN MOTTO
Nothing can be done without hope and confidence.
Don’t give up.....
Don’t give up.....
Don’t give up…..
viii
ABSTRAKSI
Tugas akhir ini bertujuan untuk membangun system informasi
menggunakan bahasa server side JSP dengan framework Apache Struts.
Sistem ini digunakan untuk mengolah data mahasiswa yang mengambil
mata kuliah Kerja Praktek (KP) pada Teknik Informatika Universitas Sanata
Dharma dari mulai saat pendaftaran hingga melakukan seminar Kerja Praktek.
Dengan menggunakan framework Apache Struts, aplikasi yang dibangun
menjadi lebih aman dan mudah untuk dikembangkan dari sisi tampilan maupun
logika program karena keduanya dipisahkan secara jelas menggunakan konsep
MVC (Model-View-Controller).
ix
ABSTRACT
The purpose of the final assignment is to build information system use
JSP and Apache Struts frameworks.
This system is use for processing data of university student whose take
apprentice class in Sanata Dharma University Informatics Engineering from
registration session until presentation session.
With Apache Struts frameworks, system goes more secure and easy to
develops in presentation layer and business logic because both clearly separated
with MVC (Model-View-Controller) concept.
x
KATA PENGANTAR
Puji syukur saya haturkan kepada Tuhan Yesus yang telah mengaruniakan
berkat dan rahmat-Nya sehingga saya dapat menyelesaikan Laporan Tugas Akhir
ini.
Banyak pihak yang telah membatu saya dalam penulisan tugas akhir ini.
Oleh karena itu pada kesempatan ini saya ingin mengucapkan terima kasih atas
bantuan, cinta, kasih sayang, semangat, perhatian, kritik dan saran yang telah
dicurahkan kepada saya. Ucapan terima kasih ini saya sampaikan antara lain
kepada :
1. Bapak Yosef Agung Cahyanta, S.T., M.T., selaku Dekan Fakultas Sains dan
Teknologi Universitas Sanata Dharma Yogyakarta.
2. Bapak Puspaningtyas Sanjaya Adi, S.T., M.T., selaku Ketua Jurusan Teknik
Informatika Universitas Sanata Dharma.
3. Ibu Ridowati Gunawan, S.Kom., M.T., selaku Dosen Pembimbing Akademik
Teknik Informatika angkatan 2003 dan dosen pembimbing TA.
Terima kasih atas bimbingan yang diberikan selama saya mengerjakan
Laporan Skripsi ini.
4. Kedua orangtua, terima kasih atas dukungan, kasih sayang dan semangat yang
tiada henti sehingga saya dapat menyelesaikan Tugas Akhir ini.
5. Seluruh pihak yang membantu saya baik secara langsung maupun tidak
langsung, yang tidak dapat saya sebutkan satu persatu.
xi
Dengan rendah hati saya menyadari tulisan ini jauh dari sempurna dan
masih terdapat banyak kekurangan. Saran dan kritik selalu saya harapkan dari
pembaca untuk perbaikan–perbaikan di masa yang akan datang.
Akhir kata, semoga tulisan ini dapat bermanfaat bagi semua pihak.
Yogyakarta, April 2009
Penulis
xii
DAFTAR ISI
HALAMAN JUDUL
HALAMAN PERSETUJUAN
HALAMAN PENGESAHAN
PERNYATAAN KEASLIAN KARYA
PERNYATAAN PUBLIKASI KARYA
HALAMAN PERSEMBAHAN
HALAMAN MOTTO
ABSTRAKSI
ABSTRACT
KATA PENGANTAR
DAFTAR ISI
DAFTAR GAMBAR
DAFTAR TABEL
i
ii
iii
iv
v
vi
vii
viii
ix
x
xii
xv
xix
BAB I. PENDAHULUAN
1.1 Latar Belakang Masalah
1.2 Rumusan Masalah
1.3 Batasan Masalah
1.4 Tujuan dan Manfaat Penelitian
1.5 Metodologi Penelitian
1.6 Sistematika Penulisan
1
2
2
2
2
4
BAB II. LANDASAN TEORI
2.1 Konsep Dasar Sistem Informasi
2.2 Pemrograman Berorientasi Objek
2.3 JDBC
2.4 MySql
2.5 MVC Model
2.6 JSP / Servlet
2.7 Apache Struts
5
5
8
9
11
12
18
xiii
BAB III. ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Kebutuhan
3.1.1 Mata Kuliah Khusus Kerja Praktek Teknik Informatika Sanata
Dharma
3.1.2 Deskripsi Umum Sistem
3.1.3 Fungsi Utama Perangkat Lunak
3.1.4 Use Case Model
3.1.4.1 Use Case Diagram
3.1.4.1.1 Use Case diagram Petugas Sekretariat
3.1.4.1.2 Use Case diagram User
3.1.4.1.3 Use Case diagram Mahasiswa
3.1.4.1.4 Use Case diagram Dosen
3.1.4.2 Definisi Aktor
3.1.4.3 Definisi Use Case
3.1.4.4 Skenario Use Case
3.2 Analisis Sistem
3.2.1 Realisasi Use Case
3.2.2 Diagram Kelas Keseluruhan
3.3 Desain Sistem
3.3.1 Kelas Perancangan
3.3.2 Prototype antarmuka
3.3.3 Atribut dan Method
3.3.4 Perancangan Tabel
19
19
23
25
26
26
26
27
27
28
28
29
30
31
31
31
32
32
39
40
40
BAB IV. IMPLEMENTASI SISTEM
4.1 Karakteristik Umum
4.2 Perangkat Lunak yang Digunakan
4.3 Implementasi Antarmuka / View
4.4 Implementasi Kontrol
4.5 Implementasi Model
4.6 Implementasi Entity / Tabel
44
44
45
49
50
51
xiv
BAB V. ANALISIS HASIL IMPLEMENTASI
5.1 .Hasil Pengujian Sistem
5.2 .Kelebihan Sistem
5.3 .Kekurangan Sistem
52
52
53
BAB VI PENUTUP
6.1 Kesimpulan
6.2 Saran
54
54
LAMPIRAN 1
LAMPIRAN 2
LAMPIRAN 3
LAMPIRAN 4
LAMPIRAN 5
55
77
113
140
148
DAFTAR PUSTAKA 166
xv
DAFTAR GAMBAR
Gambar 1 Pemrosesan servlet oleh web server 14
Gambar 2 Flowchart prosedur KP 22
Gambar 3 Flowchart sistem yang baru 24
Gambar 4 Use Case diagram petugas sekretariat 26
Gambar 5 Use Case diagram user 27
Gambar 6 Use Case diagram mahasiswa 27
Gambar 7 Use Case diagram dosen 28
Gambar 8 Definisi aktor 29
Gambar 9 Relasi tabel 41
Gambar 10 Realisasi Use Case login 77
Gambar 11 Sequence diagram login administrator 77
Gambar 12 Sequence diagram login mahasiswa / dosen 78
Gambar 13 Realisasi use case cetak surat permohonan KP 78
Gambar 14 Sequence diagram use case cetak surat permohonan KP 79
Gambar 15 Realisasi use case input surat balasan instansi 80
Gambar 16 Sequence diagram use case input surat balasan instansi 81
Gambar 17 Realisasi use case cetak surat Tugas KP 82
Gambar 18 Sequence diagram use case cetak surat tugas KP 83
Gambar 19 Realisasi use case cetak surat permohonan KP 84
Gambar 20 Sequence diagram use case cetak surat permohonan seminar KP 85
Gambar 21 Realisasi use case cetak berita acara 86
Gambar 22 Sequence diagram use case cetak berita acara 87
Gambar 23 Realisasi use case update informasi mahasiswa 88
Gambar 24 Sequence diagram tambah mahasiswa 88
Gambar 25 Sequence diagram edit mahasiswa 89
Gambar 26 Sequence diagram hapus mahasiswa 90
Gambar 27 Realisasi use case update informasi dosen 90
Gambar 28 Sequence diagram tambah dosen 91
xvi
Gambar 29 Sequence diagram edit dosen 91
Gambar 30 Sequence diagram hapus dosen 92
Gambar 31 Realisasi use case update informasi instansi 92
Gambar 32 Sequence diagram tambah instansi 93
Gambar 33 Sequence diagram edit instansi 93
Gambar 34 Sequence diagram hapus instansi 94
Gambar 35 Realisasi use case update pengumuman 94
Gambar 36 Sequence diagram tambah pengumuman 95
Gambar 37 Sequence diagram edit pengumuman 96
Gambar 38 Sequence diagram hapus pengumuman 97
Gambar 39 Realisasi use case daftar KP 97
Gambar 40 Sequence diagram use case daftar KP 98
Gambar 41 Realisasi use case cinput data instansi 99
Gambar 42 Sequence diagram use case input data instansi 100
Gambar 43 Realisasi use case daftar seminar KP 101
Gambar 44 Sequence diagram use case daftar seminar KP 102
Gambar 45 Realisasi use case lihat informasi mahasiswa 103
Gambar 46 Sequence diagram use case lihat informasi mahasiswa 103
Gambar 47 Realisasi use case lihat informasi dosen 104
Gambar 48 Sequence diagram use case lihat informasi dosen 104
Gambar 49 Realisasi use case lihat informasi instansi 105
Gambar 50 Sequence diagram use case lihat informasi instansi 105
Gambar 51 Realisasi use case lihat pengumuman 106
Gambar 52 Realisasi use case input nilai seminar 108
Gambar 53 Sequence diagram use case input nilai seminar KP 109
Gambar 54 Realisasi use case posting pengumuman 110
Gambar 55 Sequence diagram use case posting pengumuman 111
Gambar 56 Class diagram 112
Gambar 57 Design Halaman Login 113
Gambar 58 Design Halaman Utama 113
Gambar 59 Design Halaman Menu Admin 113
xvii
Gambar 60 Design Halaman Personal 114
Gambar 61 Design Halaman Daftar KP 114
Gambar 62 Design Halaman Tampilan Surat 115
Gambar 63 Design Halaman Surat Permohonan KP 116
Gambar 64 Design Halaman Surat Balasan 116
Gambar 65 Design Form Surat Balasan 117
Gambar 66 Design Halaman Cetak Surat Tugas 117
Gambar 67 Design Form Cetak Surat Tugas 118
Gambar 68 Design Halaman Surat Tugas KP 118
Gambar 69 Design Halaman Daftar Seminar KP 119
Gambar 70 Design Halaman Konfirmasi Data Seminar 119
Gambar 71 Design Halaman Konfirmasi Seminar 120
Gambar 72 Design Halaman Cetak Surat Seminar 120
Gambar 73 Design Form Cetak Surat Seminar 121
Gambar 74 Design Halaman Surat Permiohonan Seminar KP 121
Gambar 75 Design Halaman Mahasiswa Bimbingan 122
Gambar 76 Design Halaman Detail Mahasiswa Bimbingan 122
Gambar 77 Design Halaman Cetak Berita Acara 123
Gambar 78 Design Form Cetak Berita Acara 123
Gambar 79 Design Halaman Berita Acara 124
Gambar 80 Design Halaman Administrator Informasi Mahasiswa 124
Gambar 81 Design Halaman Mahasiswa Informasi Mahasiswa 125
Gambar 82 Design Halaman Dosen Informasi Mahasiswa 125
Gambar 83 Design Halaman Administrator Detail Mahasiswa 126
Gambar 84 Design Halaman Mahasiswa Detail Mahasiswa 126
Gambar 85 Design Halaman Dosen Detail Mahasiswa 127
Gambar 86 Design Form Mahasiswa Baru 127
Gambar 87 Design Halaman Administrator Informasi Dosen 128
Gambar 88 Design Halaman Mahasiswa Informasi Dosen 128
Gambar 89 Design Halaman Dosen Informasi Dosen 129
Gambar 90 Design Halaman AdministratorDetail Dosen 129
xviii
Gambar 91 Design Halaman Mahasiswa DetailDosen 130
Gambar 92 Design Halaman Dosen DetailDosen 130
Gambar 93 Design Form Dosen Baru 131
Gambar 94 Design Administrator Informasi Instansi 131
Gambar 95 Design Mahasiswa Informasi Instansi 132
Gambar 96 Design Dosen Informasi Instansi 132
Gambar 97 Design Administrator Detail Instansi 133
Gambar 98 Design Mahasiswa Informasi Instansi 133
Gambar 99 Design Dosen Informasi Instansi 134
Gambar 100 Design Administrator Form Instansi Baru 134
Gambar 101 Design Mahasiswa Form Instansi Baru 135
Gambar 102 Design Administrator Halaman Pengumuman 135
Gambar 103 Design Mahasiswa Halaman Pengumuman 136
Gambar 104 Design Dosen Halaman Pengumuman 136
Gambar 105 Design Administrator Halaman Detail Pengumuman 137
Gambar 106 Design Mahasiswa Halaman Detail Pengumuman 137
Gambar 107 Design Dosen Halaman Detail Pengumuman 138
Gambar 108 Design Administrator Form Pengumuman Baru 138
Gambar 109 Design Dosen Form Pengumuman Baru 139
xxiv
DAFTAR TABEL
Tabel 1 Tipe data numerik pada MySql 10
Tabel 2 Tipe data string pada MySql 10
Tabel 3 Tipe data time pada MySql 11
Tabel 4 Atribut page directive 15
Tabel 5 Atribut action 17
Tabel 6 Fungsi utama Perangkat Lunak 25
Tabel 7 Definisi aktor 28
Tabel 8 Definisi Use Case 29
Tabel 9 Skenario Use Case 30
Tabel 10 Realisasi Use Case 31
Tabel 11 Kelas Perancangan 32
Tabel 12 Prototype antarmuka 39
Tabel 13 Atribut dan Method 40
Tabel 14 Struktur tabel mahasiswa 40
Tabel 15 Struktur tabel dosen 40
Tabel 16 Struktur tabel instansi 41
Tabel 17 Struktur tabel kp 41
Tabel 18 Struktur tabel detail_kp 41
Tabel 19 Struktur tabel seminar 42
Tabel 20 Struktur tabel detail_seminar 42
Tabel 21 Struktur tabel pengumuman 42
Tabel 22 Struktur tabel administrator 42
Tabel 23 Implementasi antarmuka 45
Tabel 24 Implementasi kontrol 49
Tabel 25 Implementasi model 50
Tabel 26 Implementasi entity / tabel 51
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Secara garis besar KP (Kerja Praktek) di Teknik Informatika Universitas
Sanata Dharma dapat di bagi menjadi 2 bagian, yaitu KP itu sendiri dan seminar
KP. Untuk dapat melaksanakan KP, mahasiswa mencari dan menentukan sendiri
waktu dan tempat KP dilaksanakan. Petugas sekretariat akan mencatat dan
membuatkan berkas (surat) yang diperlukan mahasiswa. Seminar KP
dilaksanakan setelah mahasiswa selesai KP. Mahasiswa perlu mendaftarkan diri
dahulu agar petugas sekretariat dapat mencatat dan membuatkan berkas-berkas
yang dibutuhkan.
Semua pencatatan yang dilakukan petugas sekretariat dilakukan dengan
menggunakan bantuan Microsoft Exel dan Microsoft Word. Banyaknya data
yang telah disimpan membuat kesulitan pada saat mencari data tertentu.
Kesulitan juga terjadi ketika banyak mahasiswa yang mendaftar KP secara
bersamaan karena hanya ada satu petugas yang menangani. Terdapat juga
potensi human-error pada saat penentuan nomor surat karena data diinputkan
secara manual.
1.2 Rumusan Masalah
Berdasarkan latar belakang di atas, maka dapat dibuat suatu rumusan
masalah yaitu :
1. Bagaimana menganalisa, mendesain, dan mengimplementasikan sebuah
Sistem Informasi Pedaftaran Kerja Praktek berbasis web?
2
2. Bagaimana membuat data lebih terorganisir sehingga mudah untuk
digunakan?
3. Bagaimana membuat otomatisasi pembuatan nomor surat?
1.3 Batasan Masalah
1. Sistem tidak menangani beberapa kasus (syarat pada prosedur KP) yang
autentikasinya hanya dapat dilakukan secara manual.
2. Sistem tidak membahas keamanan (security) jaringan.
1.4 Tujuan dan Manfaat Penulisan
Tujuan pembuatan Tugas Akhir ini adalah membuat aplikasi berbasis web untuk
pendaftaran Kerja Praktek pada Teknik Informatika Univesitas Sanata Dharma.
Di harapkan aplikasi ini dapat memberikan kemudahan baik mahasiswa, dosen
dan petugas sekretariat namun tetap mempertahankan intrgritas dan keamanan
yang menjadi tujuan sistem yang lama.
Manfaat yang diharapkan dari sistem ini adalah meringankan tugas dosen dan
petugas sekretariat dalam memantau dan melakukan pencatatan status
mahasiswa yang sedang menjalani Kerja Praktek..
1.5 Metodologi
Metodologi yang digunakan dalam penyusunan Tugas Akhir adalah :
1. Metode pengumpulan data :
a. Pengumpulan informasi dengan cara interview kepada petugas
sekretariat yang megurus pendaftaran KP, dosen pembimbing
mahasiswa KP, mahasiswa yang pernah melakukan KP.
3
b. Studi literatur
Mempelajari konsep JSP/servlet, MVC, MySql dan Apache Struts
yang nantinya akan digunakan untuk membangun Pendaftaran Kerja
Praktek Online.
2. Metode perancangan sistem
Metode perancangan sistem yang digunakan adalah metode berorientasi
objek Rational Unified Process (Building Web Applications with UML, Jim
Conallen). Adapun langkah-langkahnya adalah :
a. Inception
Mempelajari masalah-masalah yang timbul dan menentukan
kebutuhan-kebutuhan bagi pemakai sistem untuk mengidentifikasi
pemecahan yang beralasan.
b. Elaboration
Menggambarkan bagaimana suatu sistem dibentuk termasuk
menyangkut konfigurasi dari komponen-komponen perangkat lunak
dari suatu sistem.
c. Construction
Merupakan tahapan pembangunan sistem sesuai dengan model analisis
dan perancangan pada fase-fase berikutnya
4
1.6 Sistematika Isi
BAB 1 PENDAHULUAN
Bab ini menjelaskan tentang latar belakang masalah, rumusan
masalah, batasan masalah, tujuan penelitian, metodologi
penulisan, dan sistematika penulisan.
BAB 2 LANDASAN TEORI
Bab ini menjelaskan tentang teori-teori yang mendukung
penulisan Tugas Akhir ini yaitu teori-teori konsep dasar sistem
informasi, Pemrograman Berorientasi Obyek, ER Diagram, JSP
(Java Server Page) dan servlet, MVC, Apache Struts, MySQL
sebagai pembangun database, dan Mata Kuliah Khusus Kerja
Praktek Teknik Informatika Universitas Sanata Dharma.
BAB 3 ANALISIS dan PERANCANGAN SISTEM
Bab ini berisi tentang analisis dan desain sistem yang akan
dibuat.
BAB 4 IMPLEMENTASI SISTEM
Bab ini menjelaskan tentang implementasi ke dalam bentuk
program berdasarkan desain yang telah dibuat.
BAB 5 ANALISIS HASIL IMPLEMENTASI
Bab ini menjelaskan tentang sistem yang telah dibuat,
kelebihan dan kekurangan dari sistem ini.
BAB 6 KESIMPULAN dan SARAN
Bab ini berisi kesimpulan dan saran.
5
BAB II
LANDASAN TEORI
2.1 Konsep Dasar Sistem Informasi
Sistem informasi adalah susunan dari orang, data, proses serta teknologi
informasi yang saling berinteraksi untuk mengumpulkan, memproses,
menyimpan dan menyediakan suatu informasi yang diperlukan untuk
mendukung organisasi. Sistem informasi banyak digunakan dalam organisasi
untuk meningkatkan kemampuan memperoleh manfaat ataupun comptetive
advantage (Whitten).
Sistem adalah kumpulan dari subsistem-subsistem yang saling
dihubungkan untuk membentuk satu kesatuan yang utuh (Jogiyanto, 1999).
Data merupakan bentuk yang masih mentah yang belum dapat bercerita
banyak, sehingga perlu diolah lebih lanjut. Data diolah melalui suatu model
untuk menghasilkan informasi.
Informasi adalah data yang telah diolah menjadi bentuk yang lebih
berguna dan lebih berarti bagi yang menerimanya untuk pengambilan keputusan
(Jogiyanto, 1999).
2.2 Pemrograman Berorientasi Objek
Meliputi Object Oriented Analysis (OOA) dan Object Oriented Design (OOD).
Object Oriented Analysis (OOA) adalah pendekatan untuk
- mempelajari objek yang ada untuk melihat apakah objek tersebut dapat
digunakan kembali atau disesuaikan untuk kebutuhan yang baru.
6
- Mendefinisikan objek yang baru atau memodifikasi objek yang akan
dikombinasikan dengan objek yang sudah ada ke dalam aplikasi bisnis
komputing yang berguna.
Object Oriented Design (OOD) merupakan pendekatan yang digunakan untuk
menspesifikasikan solusi perangkat lunak dalam bentuk kolaborasi obyek,
atribut, dan fungsinya.
Tahap ini merupakan kelanjutan dari proses object oriented analysis.
Terdapat tiga jenis objek dalam tahap ini, yaitu :
1. Entity Object, merupakan sebuah obyek yang berisi informasi yang
berhubungan dengan bisnis dan secara khusus bersifat persisten dan
disimpan dalam database.
Simbol :
Entity objek selalu berhubungan dengan item-item dalam kehidupan nyata
(contoh : mahasiswa) dan berisi informasi yg dikenal dengan nama
attribute. Hal ini yang membedakan intances dari entity. Entity
dienkapsulasi dengan behavior (disebut dengan method) yg mengelola
informasi atau atributnya.
Entity juga bersifat persistent, yg berarti bahwa objek tersebut terbentuk
setelah eksekusi program software yang membuatnya.
2. Interface Object, merupakan sebuah obyek yang disediakan untuk
menggambarkan bagaimana sebuah aktor akan berkomunikasi dengan
sistem.
Simbol :
7
3. Control Object, merupakan sebuah obyek yang berisi aplikasi logik yang
bukan merupakan tanggung jawab entity object. Control object akan
mengkoordinasikan message antar interface object dan entity object dan
mengurutkan message yang terjadi.
Simbol :
Aktivitas dalam Object Oriented Design adalah :
a. Memodelkan interaksi antara obyek dan behaviour yang mendukung
skenario use case.
b. Mengupdate model obyek yang mencerminkan lingkungan implementasi.
UML ( Unified Modelling Language)
UML merupakan konfensi / perjanjian tentang sekumpulan modeling yang
digunakan untuk menspesifikasikan dan menjelaskan sistem software dan
hardware dalam bentuk objek. UML tidak menentukan sebuah metode untuk
mengembangkan sistem tetapi hanya berupa notasi.
UML mendefiniskan diagram-diagram berikut:
1 Use case diagram
Use case diagram adalah sekumpulan diagram yang menggambarkan interaksi
antara sistem dan eksternal sistem dan user. Use case secara behavioral
berhubungan dengan urutan langkah-langkah, baik secara otomatis maupun
manual dengan tujuan untuk melengkapi bisnis tunggal, misalnya login ke
sistem, manambah data barang, menghapus data barang, dan sebagainya.
8
Actor adalah segala sesuatu yang dibutuhkan untuk berinteraksi dengan sistem
untuk mengubah informasi.
2 Class diagram
Class diagram menggambarkan struktur dari objek sistem dan memperlihatkan
class beserta relasi dengan class lainnya.
3 Sequence diagram
Sequence diagram menjelaskan interaksi objek yang disusun dalam suatu
urutan waktu. Diagram ini secara khusus berasosiasi dengan use case.
Sequence diagram memperlihatkan tahap demi tahap apa yang seharusnya
terjadi untuk menghasilkan sesuatu didalam use case.
2.3 JDBC
JDBC API adalah application programming interface yang menyediakan akses
data universal untuk bahasa pemrograman Java. JDBC API terdiri atas sejumlah
class dan interface yang ditulis dalam bahasa Java yang menyediakan API
standar sebagai alat bantu bagi pembuat program dan memberikan kemungkinan
untuk menulis aplikasi database dengan menggunakan semua Java API. JDBC
API memudahkan untuk mengirim perintah SQL ke sistem database relasional
dan mendukung bemacam-macam perintah SQL.
Keunggulan JDBC API adalah sebuah aplikasi dapat mengakses sembarang
sumber data dan dapat berjalan pada sembarang platform yang mempunyai Java
Virtual Machine (JVM). Dengan kata lain, kita hanya perlu menulis satu
program yang menggunakan JDBC API, dan program dapat mengirimkan
statement SQL atau statement lain ke sumber data tertentu. Dengan
menggunakan aplikasi yang ditulis dalam bahasa Java, seseorang tidak perlu
9
khawatir untuk menulis aplikasi yang berbeda-beda agar dapat berjalan pada
platform yang berbeda-beda. Teknologi JDBC memampukan untuk melakukan
tiga hal berikut :
1. Membangun sebuah koneksi ke sumber data (data source).
2. Mengirim perintah ke sumber data.
3. Memproses hasil dari perintah tersebut..
2.4 MySql
MySQL adalah multiuser database yang menggunakan bahasa SQL (Structured
Query Language) yang mampu menangani data dalam jumlah yang cukup besar.
SQL adalah bahasa standar yang digunakan untuk mengakses database server.
Dengan menggunakan SQL, proses akses database menjadi lebih user-friendly.
MySQL juga menyediakan dukungan open source.
Dalam konteks bahasa SQL pada umumnya informasi tersimpan dalam tabel-
tabel yang secara logika merupakan dua dimensi yang terdiri atas baris-baris
data yang berada dalam satu atau lebih kolom. Baris pada tabel sering disebut
sebagai instance dari data, sedangkan kolom sering disebut sebagai atribut atau
field. Keseluruhan tabel dihimpun dalam satu kesatuan yang disebut database.
MySQL mendukung empat tipe data yaitu:
1. Numerik
Pada tipe data ini data yang disimpan hanya data angka (numerik). Angka
tersebut bisa disimpan dalam bentuk positif atau negatif. Tipe data numerik
pada MySQL adalah sebagai berikut :
10
Tabel 1 Tipe data Numerik pada MySql
Tipe Data Jangkauan Signed Memori
TINYINT -128-127 1 byte
SMALLINT -32768-32767 2 byte
MEDIUMINT -8388608-8388607 3 byte
INT -2147483648-2147483647 4 byte
BIGINT -9223372036854775808-
9223372036854775807
8 byte
FLOAT (M,D) Tergantung nilainya 4 byte
DOUBLE (M,D) Tergantung nilainya 8 byte
DECIMAL (M,D) Tergantung nilainya M+2 byte
2. String
Pada tipe data ini isinya bisa nilai string dan numerik, namun untuk numerik
tidak bisa dilakukan operasi perhitungan sebelum dilakukan konversi.
Tabel 2 Tipe data String pada MySql
Tipe Data Max Size Memori
CHAR(X) 255 BYTE X BYTE
VARCHAR(X) 255 BYTE X+1 BYTE
TINYTEXT 255 BYTE X+1 BYTE
TINYBLOB 255 BYTE X+2 BYTE
TEXT 65535 BYTE X+2 BYTE
BLOB 65535 BYTE X+2 BYTE
MEDIUMTEXT 1.6 MB X+3 BYTE
MEDIUMBLOB 1.6 MB X+3 BYTE
LONGTEXT 4.2 MB X+4 BYTE
LONGBLOB 4.2 MB X+4 BYTE
11
3. Waktu
Tipe data ini menyimpan informasi waktu, baik tanggal maupun jam,
walaupun data yang disimpan disini adalah numerik tetapi pembacaan
terhadap data adalah string. Jadi bila dilakukan perhitungan, maka data
tersebut harus dikonversi terlebih dahulu.
Tabel 3 Tipe data time pada MySql
Tipe Data Format Standar Zero Value
DATETIME YYYY-MM-DD
HH:MM:SS
0000-00-00 00:00:00
DATE YYYY-MM-DD 0000-00-00
TIME HH:MM:SS 00:00:00
YEAR YYYY 0000
TIMESTAMP YYYYMMDDHHMMSS 00000000000000
4. Data selain numerik atau string
Ada dua tipe data yang tidak termasuk tipe data di atas yaitu ENUM dan SET.
ENUM adalah sebuah tipe data yang menyimpan beberapa pilihan data yang
akan disimpan tetapi hanya ada satu pilihan yang boleh disimpan. Sedangkan
SET adalah tipe data mirip seperti ENUM tetapi dapat memilih lebih dari pada
satu pilihan.
2.5 MVC Model
MVC adalah gaya penulisan program yang membagi antara presentation layout
dan bisnis logic. MVC juga biasa disebut arsitektur Model 2. Perbedaan
mendasar antar MVC (model 2) dan gaya penulisan konvensional (model 1)
adalah pada model 2 controller menangani semua request user.
12
Karakteristik MVC :
Model
Model mempresentasikan bisnis logic dari suatu aplikasi web.
Model berisi bisnis logic dari suati aplikasi web untuk memproses request.
Di dalamnya dapat berisi koneksi ke databse.
Biasanya berbentuk java class biasa.
Harus benar-benar terpisah dari controller.
Presentation layout tidak boleh mengakses model secara langsung, harus
lewt controller
View
Merupakan presentation layout yang berinteraksi langsung dengan user.
Biasanya berbentuk file *.jsp atau *.html.
Merupakan tampilan yang dilihat langsung oleh user.
View tidak boleh menunjuk ke view lain secara langsung.
View sebaiknya sederhana dan tidak mempunyai banyak logika.
Controller
Merupakan layer penghubung antara view dan model
Tidak berisi mengenai JDBC, EJB atau apapun yang berhubungan dengan
database.
Merupakan layer antara model dan view.
2.6 JSP / Servlet
Servlet
Servlet adalah program java yang berjalan pada aplikasi berbasis web (aplikasi
server) dan bertindak sebagai lapisan tangah diantara request dari client dan
database maupun aplikasi server.
13
Ketika dijalankan, inisiasi servlet hanya dilakukan sekali pada saat servlet
dipanggil pertama kali. Setelah itu, request yang diterima oleh servlet di proses
oleh servisnya saja.
Servlet mempunyai semua keunggulan Java seperti garbage collection dan
exception handling serta dapat berjalan di banyak sistem operasi.
JSP
Java Server Pages (JSP) merupakan perluasan dari spesifikasi Java Servlet,
yang bertujuan untuk menyederhanakan dalam pengembangan suatu content
yang dinamis. JSP memungkinan untuk menggabungkan HTML statis dengan
content yang dinamis. (www.coreservlets.com)
JSP merupakan bagian dari J2EE (Java 2 Enterprise Edition) dan khususnya
merupakan komponen web dari aplikasi J2EE secara keseluruhan. JSP dan
Servlet bekerja dalam suatu lingkungan web container yang menyediakan
koneksi dan servis. Sedangkan JSP dan Servlet mengontrol presentasi data yang
dihasilkan dari suatu proses untuk dikirimkan ke client. Server yang menangani
permintaan JSP seperti sebuah kompiler halaman yang menggabungkan
template HTML dengan kode Java yang dinyatakan pada elemen JSP.
Detail pemrosesan JSP Servlet Engine adalah sebagai berikut:
1. Melakukan pemilihan (parsing) kode JSP.
2. Membangkitkan kode sumber Servlet.
3. Mengkompilasi kode sumber Servlet menjadi sebuah kelas.
4. Membuat instance Servlet.
5. Memberikan keluaran Servlet ke Web Server.
14
Gambar 1 Pemrosesan servlet oleh web server
Keunggulan JSP :
1. JSP ditulis dengan menggunakan Java yang telah diakui sebagai bahasa
pemrograman yang handal.
2. Karena JSP berbasis Java, maka JSP juga dapat berjalan pada banyak
system operasi.
3. JSP mempunyai banyak dukungan API library termasuk untuk
networking dan database akses.
Elemen-elemen JSP
JSP memiliki bermacam-macam elemen yang dapat digunakan dalam suatu
halaman JSP. JSP memiliki tiga komponen utama yaitu:
a. Directive
Direktif adalah media yang digunakan JSP untuk mengirimkan pesan
ke JSP container. Direktif berguna untuk melakukan setting nilai
global seperti deklarasi class atau method.
Sintaks directive
JSP memiliki tiga jenis tag directive :
15
page directive
page directive digunakan untuk mendefinisikan atribut-atribut
yang digunakan untuk memberitahukan servlet engine
mengenai konfigurasi umum dari halaman JSP.
Sintaks page directive :
Tabel 4 Atribut page directive
Atribut Untuk mendefinisikan
contentType=”MIME type” tipe MIME (Multipurpose Internal Mail Extension type)
dari response. Nilai default-nya text/html
extends=”packagename.class” nama class yang akan menjadi class induk dari servlet
yang akan dibuat.
errorPage=”url” URL tempat halaman yang akan digunakan untuk
menangani exceptions.
isErrorPage=”False” jika suatu halaman JSP dapat digunakan sebagai error
page untuk halaman JSP lain. Nilai default : false
import=”package list” nama package yang di-import untuk suatu halaman JSP
language=”scripting language” bahasa yang digunakan untuk meng-compile halaman
JSP
session=”true” session data bagi suati halaman JSP. Nilai default : true
include directive
include directive digunakan untuk mendefinisikan file yang
disisipkan pada saat kompilasi halaman JSP.
Sintaks include directive :
taglib directive
Direktif ini digunakan untuk mendefinisikan tag-tag buatan
pemrogram.
16
b. Elemen scripting
Ada tiga macam elemen skripting, yaitu:
Skriplet
Untuk deklarasi, ekspresi dan kode lain digunakan tag
.
Deklarasi
Untuk mendeklarasikan variabel atau method digunakan tag
.
Ekspresi
Untuk ekspresi dalam Java dan menampilkannya sebagai String
dalam browser digunakan tag .
c. Action
Merupakan tag yang berfungsi untuk menjalankan suatu operasi yang
spesifik, misalnya:
Mem-forward dari suatu halaman JSP ke halaman JSP yang
lain.
Menyisipkan suatu halaman/ operasi pada halaman JSP yang
lain.
Penanganan Applet atau Java Bean pada suatu halaman JSP.
Standar action memiliki sintaks sebagai berikut:
17
Tabel 5 Atribut action
JSP Action Kegunaan Atribut Deskripsi
Untuk mencari dan mengambil
(load) sebuah bean.
Id
Class
Scope
beanName
Mendefinisikan instance dari
sebuah bean
Mendefinisikan class dari bean
yang akan digunakan.
Mendefinisikan lama penggunaan
(life) dari bean
Mendefinisikan nama referinsial
dari bean
Untuk mendapatkan property
dari bean yang digunakan.
Property yang digunakan akan
dikonversi ke dalam string
sebelum ditampilkan
name
property
mendefinisikan nama dari bean
mendefinisikan property bean
Digunakan untuk mengganti
(men-set) property sebuah bean
name
property
value
param
menspesifikasikan nama bean
menspesifikasi property bean
mendeklarasikan nilai dari bean
property
mendefinisikan request parameter
yang nantinya akan digunakan
untuk me-set nilai dari bean
property
Digunakan untuk mem-forward
(meneruskan) request ke
halaman JSP yang lain
page spesifikasikan url dari halaman JSP
yang dituju
Digunakan untuk menyisipkan
halaman JSP.
Page
Flush
Mendefinisikan url dari file JSP
yang akan disisipkan
Mendefinisikan apakah buffer
harus dibersihkan
Digunakan sebagai sub-atribut
dengan jsp:include dan
jsp:forward
Name
value
nama parameter
nilai parameter
18
2.7 Apache Struts
Struts merupakan framework open source yang dibuat oleh Craig McClahanan
dan didanai oleh Apache Foundation untuk mengembangkan aplikasi web pada
platform J2EE. Struts dibuat menggunakan teknologi standar seperti servlet API,
resource bundles dan XML untuk membantu para pengembang web
mengimplementasikan arsitektur MVC. Di dalamnya terdapat serangkaian utility
class untuk menangani kebanyakan proses pada aplikasi web. (Apache Struts
manual)
Kelebihan Struts :
Konfigurasi web menjadi lebih terpusat.
Apache Struts memiliki serangkaian tag buatan yang memudahkan
pengembang dalam membangun sebuah aplikasi web.
Apache Struts memiliki validasi yang secara otomatis yang akan
memeriksa nilai dari form.
Kekurangan Struts :
Apache Struts memiliki dokumentasi yang lebih sedikit dan tidak diatur
dengan baik
Perlu pembelajaran yang mendalam. Untuk mempelajari Apache Struts,
minimal membutuhkan pengetahuan tentang konsep MVC dan
JSP/Servlet.
Sebagian proses terjadi dibelakang (background) daripada aplikasi web
pada umumnya.
19
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Kebutuhan
3.1.1 Mata Kuliah Khusus Kerja Praktek Teknik Informatika Sanata
Dharma
3.1.1.1 Tujuan
1. Mahasiswa mampu menerapkan teori-teori yang diterima selama
perkuliahan ke dalam kenyataan sehari-hari / dunia industri /
instansi.
2. Mahasiswa mampu mengenal dunia kerja
3.1.1.2 Syarat Pengambilan
1. Sudah menempuh dan lulus (minimal D) sebanyak 97 SKS.
3.1.1.3 Teknis Pelaksanaan
1. Mahasiswa mencari sendiri instansi / perusahaan yang dituju. Surat
permohonan dapat diminta di secretariat Teknik Informatika
dengan memberikan data :
a. Nomor mahasiswa
b. Nama mahasiswa
c. Instansi yang dituju
d. Alamat yang instansi
e. Transkrip nilai mahasiswa
2. Mahasiswa dapat melaksanakan kerja praktek secara kelompok
maksimal 2 orang.
20
3. Mahasiswa mengirimkan surat permohonan kerja praktek ke
instansi tujuan.
4. Mahasiswa menunggu jawaban dari instansi / perusahaan kerja
praktek.
5. Jika dalam masa 2 bulan, instansi / perusahaan tidak membalas
surat permohonan, mahasiswa diperkenankan mengajukan surat
permohonan kerja praktek ke instansi / perusahaan lain.
6. Jika instansi memberi persetujuan, maka pihak jurusan akan
membuatkan surat tugas kerja praktek yang harus diurus sebelum
berangkatkerja praktek. Pihak jurusan akan menentukan dosen
pembimbing kerja praktek.
7. Mahasiswa yang akan berangkat kerja praktek dibekali :
a. Surat Tugas Kerja Praktek
b. Format lembar penilaian kerja praktek untuk instansi /
perusahaan.
8. Setelah selesai melaksanakan kerja praktek, mahasiswa wajib
melaksanakan seminar. Pelaksanaan seminar maksimal 6 bulan
setelah kerja praktek selesai. Jika melebihi batas waktu maka nilai
maksimal C.
9. Syarat Semiar Kerja Praktek :
a. Pernah mengikuti seminar KP minimal 10 kali (Daftar hadir
seminar terlampir).
b. Surat Tugas Kerja Praktek.
c. Lembar penilaian kerja praktek dari instansi / perusahaan.
21
d. Surat Keterangan telah selesai kerja praktek dari instansi /
perusahaan.
e. Pelaksanaan seminar KP harus dihadiri minimal 15 orang
peserta.
10. KRS kerja praktek sebagai syarat nilai kerja praktek keluar.
11. Setelah pelaksanaan Kerja Praktek selesai, mahasiswa diwajibkan
mengumpulkan 3 eksemplar laporan dengan perincian :
a. 1 eksemplar untuk jurusan
b. 1 eksemplar untuk mahasiswa
c. 1 eksemplar untuk instansi / perusahaan yang bersangkutan.
3.1.1.4 Waktu Pelaksanaan
1. Kerja Praktek harus dilaksanakan selama 2 (dua) bulan pada
instansi / perusahaan yang benar-benar ada (tidak fiktif).
2. Waktu pelaksanaan Kerja Praktek tergantung dari keputusan
instansi / perusahaan.
3.1.1.5 Saran
Karena Kerja Praktek dilakukan selama 2 bulan (full time bekerja)
mahasiswa disarankan mengambil Kerja Praktek pada waktu
semester pendek berlangsung; supaya tidak mengganggu mata kuliah
yang lain. Untuk itu sebaiknya jauh sebelum pelaksanaan, mahasiswa
sudah menghubungi instansi / perusahaan sehingga diperoleh waktu
kesepakatan yang dapat menguntungkan kedua belah pihak.
22
3.1.1.6 Flowchart Prosedur KP
Gambar 2 Flowchart Prosedur KP
Tidak
START
Mahasiswa mengisi blanko permohonan yang ada di sekretariat, syaratnya sudah lulus >= 110 sks
Jika diperlukan, mahasiswa dapat mengirimkan permohonan pribadi, tanpa pengantar dari jurusan
Sekretariat membuat surat permohonan KP
Mahasiswa mengirim surat permohonan ke perusahaan
Waktu tunggu > 2 bulan?
Apakah diterima perusahaan?
Mahasiswa mendapat dosen pembimbing KP
Sekretariat membuat surat tugas KP yang ditandatangani Kajur
Mahasiswa membawa surat tugas KP untuk:
1. Minta tanda tangan ke dosen pembimbing KP2. Dimintakan cap di sekretariat3. Difotocopy 4 lembar dan diberikan kepada:
a. Dosen pembimbing KPb. Dosen pembimbing akademikc. Sekretariat d. Mahasiswa
1
1
Mahasiswa menandatangani surat pernyataan kesanggupan yang diketahui oleh dosen pembimbing KP, kemudian diserahkan ke sekretariat
Mahasiswa melaksanakan KP sesuai jadwal dengan membawa surat tugas asli
Setelah selesai KP, mahasiswa menghubungi dosen pembimbing KP
Pembuatan laporan KP
Laporan KP disetujui dosen pembimbing?
Mahasiswa mengajukan permohonan seminar KP
Seminar KP
Mengumpulkan laporan KP
END
Tidak
Tidak
Ya
YaYa
Catatan:Waktu pelaksanaan seminar KP max 6 bulan sejak berakhirnya KP. Jika lebih dari waktu yang ditetapkan, nilai KP max C.
23
3.1.2 Deskripsi Umum Sistem
Sistem yang akan dibangun merupakan sistem berbasis web dan
dibangun menggunakan salah satu implementasi framework MVC yaitu
Apache Struts. Untuk mengakses sistem ini dibutuhkan jaringan internet
dan web brower standard. Sistem ini akan dapat menangani pendaftaran
KP dan seminar KP di Teknik Informatika Universitas Sanata Dharma.
Sistem ini juga memiliki fasilitas untuk menampilkan informasi penting
seperti pengumuman, surat balasan instansi, jadwal seminar KP dan
informasi mengenai mahasiswa, dosen dan instansi yang berkaitan dengan
KP mahasiswa.
Mahasiswa mempunyai akses untuk mendaftar KP dan seminar jika
persyaratan yang dibutuhkan terpenuhi. Sedangkan petugas sekretariat
mempunyai akses untuk melakukan management data KP, seminar KP.
24
Flowchart sistem yang baru
Gambar 3 Flowcart sistem yang baru
25
3.1.3 Fungsi Utama Perangkat Lunak
Tabel 6 Fungsi utama perangkat lunak
Kode Fungsi
KPO-FU-01 Sistem mampu mengauthentifikasi userKPO-FU-02 Sistem mampu menagani pendaftaran KPKPO-FU-03 Sistem mampu memberikan layanan input data instansiKPO-FU-04 Sistem mampu mencetak surat permohonan KPKPO-FU-05 Sistem mampu mencetak surat tugas KPKPO-FU-06 Sistem mampu menagani pendaftaran seminar KPKPO-FU-07 Sistem mampu mencetak surat permohonan seminar KPKPO-FU-08 Sistem mampu memberikan layanan input nilai seminarKPO-FU-09 Sistem mampu mencetak berita acaraKPO-FU-10 Sistem mampu memanagement informasi mahasiswa, dosen, instansiKPO-FU-11 Sistem mampu memanagement pengumumanKPO-FU-12 Sistem mampu memberikan layanan informasi mahasiswa, dosen, instansiKPO-FU-13 Sistem mampu memberikan layanan pengumumanKPO-FU-14 Sistem mampu memberikan layanan posting pengumuman
26
3.1.4 Use Case Model
3.1.4.1 Use Case Diagram
3.1.4.1.1 Use Case Diagram petugas secretariat
Gambar 4 Use Case diagram petugas sekretariat
cetak surat permohonan KP
(f rom pendaf taran KP)
update informasi mahasiswa
(f rom inf ormasi)
update pengumuman
(f rom inf ormasi)
update informasi instansi
(f rom inf ormasi)
update informasi dosen
(f rom inf ormasi)
cetak berita acara
(f rom pendaf taran Seminar KP)
cetak surat tugas KP
(f rom pendaf taran KP)
input surat balasan instansi
(f rom pendaf taran KP)
petugas sekretariat
(f rom Actors)
cetak surat permohonan seminar KP
(f rom pendaf taran Seminar KP)
27
3.1.4.1.2 Use Case Diagram User
Gambar 5 Use Case Diagram user
3.1.4.1.3 Use Case Diagram Mahasiswa
Gambar 6 Use Case Diagram Mahasiswa
l ihat informasi mahasiswa
(f rom inf ormasi)
lihat informasi dosen
(f rom inf ormasi)
lihat informasi instansi
(f rom inf ormasi)
lihat pengumuman
(f rom inf ormasi)
user
(f rom Actors)
daftar seminar KP
(f rom pendaf taran Seminar KP)
mahasiswa
(f rom Actors)
daftar KP
(f rom pendaf taran KP)
input data instansi
(f rom pendaf taran KP)
28
3.1.4.1.4 Use Case Diagram dosen
Gambar 7 Use Case Diagram dosen
3.1.4.2 Definisi Aktor
Tabel 7 Definisi aktor
Aktor Hak Akses KeteranganPetugas sekretariat
Login Cetak Surat Permohonan KP Input data surat balasan instansi Cetak surat tugas KP Cetak surat permohonan seminar KP Cetak berita acara Lihat, insert, edit, delete informasi
mahasiswa Lihat, insert, edit, delete informasi dosen Lihat, insert, edit, delete informasi instansi Lihat, insert, edit, delete pengumuman Logout
Orang yang melakukan pencatatan administrasi KP.
User Melihat informasi mahasiswa Melihat informasi dosen Melihat informasi instansi Melihat pengumuman
Semua pengguna selain administrator. Turunan dari user ini akan mewarisi semua hak aksesnya. Turunannya adalah mahasiswa dan dosen
mahasiswa Login Mendaftar KP Input data instansi Mendaftar Semianar KP Logout
Orang yang menjalani KP, dari mulai mendaftar KP hingga melakukan seminar KP. Turunan dari user
dosen Login Input nilai seminar KP
Orang yang membimbing mahasiswa pada saat
input ni lai seminar KP
(f rom pendaf taran Seminar KP)
dosen
(f rom Actors)
posting pengumuman
(f rom inf ormasi)
29
Posting pengumuman Mem-posting komentar
Logout
menjalani KP. Turunan dari user
Gambar 8 Definisi Aktor
3.1.4.3 Definisi Use Case
Tabel 8 Definisi Use Case
Use Case Kode Fungsi
Keterangan
Login KPO-FU-01 Pengguna dapat login dengan memasukkan ID (NIM / NIP) dan password
Cetak surat permohonan KP KPO-FU-04 Pengguna dapat mencetak surat permohonan KP setelah menginputkan data pendaftaran KP
Input surat balasan instansi KPO-FU-05 Pengguna dapat menambahkan informasi balasan surat
Cetak surat tugas KP KPO-FU-05 Pengguna mencetak surat tugas KPCetak surat permohonan seminar KP KPO-FU-07 Pengguna dapat mencetak surat
permohonan semianr KPCetak berita acara KPO-FU-09 Pengguna dapat mencetak berita
acara seminar KPUpdate informasi mahasiswa KPO-FU-10 Pengguna dapat melihat,
menambahkan, mengedit, menghapus informasi mahasiswa
Update informasi dosen KPO-FU-10 Pengguna dapat melihat, menambahkan, mengedit, menghapus informasi dosen
Update informasi instansi KPO-FU-10 Pengguna dapat melihat, menambahkan, mengedit, menghapus informasi instansi
Update pengumuman KPO-FU-11 Pengguna dapat melihat, menambahkan, mengedit, menghapus pengumuman
petugas sekretariat
user
mahasiswadosen
30
Daftar KP KPO-FU-02 Pengguna dapat mendaftar KP dengan memasukkan data pendaftaran KP (instansi, penerima surat dan tanggal KP)
Input data instansi KPO-FU-03 Pengguna dapat menambah informasi instansi denngan memasukkan data nama dan alamat instansi
Daftar Seminar KP KPO-FU-06 Pengguna dapat mendaftar seminar KP dengan menginputkan data seminar KP
Lihat informasi mahasiswa KPO-FU-12 Pengguna hanya dapat melihat informasi mahasiswa
Lihat informasi dosen KPO-FU-12 Pengguna hanya dapat melihat informasi dosen
Lihat informasi instansi KPO-FU-12 Pengguna hanya dapat melihat informasi instansi
Lihat pengumuman KPO-FU-13 Pengguna hanya dapat melihat pengumuman
Input nilai seminar KP KPO-FU-08 Pengguna dapat menginputkan nilai seminar KP
Posting pengumuman KPO-FU-14 Pengguna dapat menambahkan / membuat pengumuman
3.1.4.4 Skenario Use Case
Tabel 9 Skenario Use Case
Use Case Skenario Use CaseLogin Lampiran 1.1Cetak surat permohonan KP Lampiran 1.2Input surat balasan instansi Lampiran 1.3Cetak surat tugas KP Lampiran 1.4Cetak surat permohonan seminar KP Lampiran 1.5Cetak berita acara Lampiran 1.6Update informasi mahasiswa Lampiran 1.7Update informasi dosen Lampiran 1.8Update informasi instansi Lampiran 1.9Update pengumuman Lampiran 1.10Daftar KP Lampiran 1.11Input data instansi Lampiran 1.12Daftar Seminar KP Lampiran 1.13Lihat informasi mahasiswa Lampiran 1.14Lihat informasi dosen Lampiran 1.15Lihat informasi instansi Lampiran 1.16Lihat pengumuman Lampiran 1.17Input nilai seminar KP Lampiran 1.18
31
Posting pengumuman Lampiran 1.19
3.2 Analisis Sistem
3.2.1 Realisasi Use Case
Tabel 10 Realisasi Use Case
Use Case Skenario Use CaseLogin Lampiran 2.1.1Cetak surat permohonan KP Lampiran 2.1.2Input surat balasan instansi Lampiran 2.1.3Cetak surat tugas KP Lampiran 2.1.4Cetak surat permohonan seminar KP Lampiran 2.1.5Cetak berita acara Lampiran 2.1.6Update informasi mahasiswa Lampiran 2.1.7Update informasi dosen Lampiran 2.1.8Update informasi instansi Lampiran 2.1.9Update pengumuman Lampiran 2.1.10Daftar KP Lampiran 2.1.11Input data instansi Lampiran 2.1.12Daftar Seminar KP Lampiran 2.1.13Lihat informasi mahasiswa Lampiran 2.1.14Lihat informasi dosen Lampiran 2.1.15Lihat informasi instansi Lampiran 2.1.16Lihat pengumuman Lampiran 2.1.17Input nilai seminar KP Lampiran 2.1.18Posting pengumuman Lampiran 2.1.19
3.2.2 Diagram Kelas Keseluruhan
Diagram Kelas dapat dilihat di lampiran 2.2
32
3.3 Design Sistem
3.3.1 Kelas Perancangan
Tabel 11 Kelas Perancangan
No Kelas Analisis Kelas Perancangan Use Case
1 Halaman Login Admin Halaman Login Admin login
2 Halaman Utama Halaman Utama login
3 Halaman Menu Admin Halaman Menu Admin login
cetak surat permohonan KP
input surat balasan instansi
cetak surat tugas KP
cetak surat permohonan seminar KP
cetak berita acara
update informasi mahasiswa
update informasi dosen
update informasi instansi
update pengumuman
4 Halaman Personal Halaman Personal login
daftar KP
input data instansi
daftar seminar KP
input nilai seminarKP
lihat informasi mahasiswa
33
lihat informasi dosen
lihat informasi instansi
lihat pengumuman
posting pengumuman
5 Halaman Daftar KP Halaman Daftar KP daftar KP
input data instansi
6 Halaman Konfirmasi Data KP Halaman Konfirmasi Data KP daftar KP
7 Halaman Tampilan Surat Halaman Tampilan Surat daftar KP
8 Halaman Surat Permohonan KP Halaman Surat Permohonan KP daftar KP
cetak surat permohonan KP
9 Halaman Surat Balasan Halaman Surat Balasan input surat balasan instansi
10 Form Surat Balasan Form Surat Balasan input surat balasan instansi
11 Halaman Cetak Surat Tugas Halaman Cetak Surat Tugas cetak surat tugas KP
12 Form Cetak Surat Tugas Form Cetak Surat Tugas cetak surat tugas KP
13 Halaman Surat Tugas KP Halaman Surat Tugas KP cetak surat tugas KP
14 Halaman Daftar Seminar KP Halaman Daftar Seminar KP daftar seminar KP
15 Halaman Konfirmasi Data Seminar Halaman Konfirmasi Data Seminar daftar seminar KP
16 Halaman Konfirmasi Seminar Halaman Konfirmasi Seminar daftar seminar KP
17 Halaman Cetak Surat Seminar Halaman Cetak Surat Seminar cetak surat permohonan seminar KP
18 Form Cetak Surat Seminar Form Cetak Surat Seminar cetak surat permohonan seminar KP
19 Halaman Surat Permohonan Seminar KP Halaman Surat Permohonan Seminar KP cetak surat permohonan seminar KP
20 Halaman Mahasiswa Bimbingan Halaman Mahasiswa Bimbingan input nilai seminar KP
21 Halaman Detail Mahasiswa Bimbingan Halaman Detail Mahasiswa Bimbingan input nilai seminar KP
34
22 Halaman Cetak Berita Acara Halaman Cetak Berita Acara cetak berita acara
23 Form Cetak Berita Acara Form Cetak Berita Acara cetak berita acara
24 Halaman Berita Acara Halaman Berita Acara cetak berita acara
25 Halaman Informasi Mahasiswa Halaman Informasi Mahasiswa cetak surat permohonan KP
update informasi mahasiswa
lihat informasi mahasiswa
26 Halaman Detail Mahasiswa Halaman Detail Mahasiswa cetak surat permohonan KP
update informasi mahasiswa
lihat informasi mahasiswa
27 Form Mahasiswa Baru Form Mahasiswa Baru update informasi mahasiswa
28 Halaman Informasi Dosen Halaman Informasi Dosen update informasi dosen
lihat informasi dosen
29 Halaman Detail Dosen Halaman Detail Dosen update informasi dosen
lihat informasi dosen
30 Form Dosen Baru Form Dosen Baru update informasi dosen
31 Halaman Informasi Instansi Halaman Informasi Instansi update informasi instansi
lihat informasi instansi
32 Halaman Detail Instansi Halaman Detail Instansi update informasi instansi
lihat informasi instansi
33 Form Instansi Baru Form Instansi Baru input data instansi
update instansi
34 Halaman Pengumuman Halaman Pengumuman update pengumuman
lihat pengumuman
35
35 Halaman Detail Pengumuman Halaman Detail Pengumuman update pengumuman
lihat pengumuman
36 Form Pengumuman Baru Form Pengumuman Baru update pengumuman
posting pengumuman
37 Kontrol Menu Control daftar KP
input data instansi
daftar seminar KP
input nilai seminarKP
lihat informasi mahasiswa
lihat informasi dosen
lihat informasi instansi
lihat pengumuman
posting pengumuman
38 Kontrol Menu Admin Control cetak surat permohonan KP
input surat balasan instansi
cetak surat tugas KP
cetak surat permohonan seminar KP
cetak berita acara
update informasi mahasiswa
update informasi dosen
update informasi instansi
update pengumuman
39 Kontrol Login Control login
36
40 Kontrol KP Control daftar KP
input data instansi
41 Kontrol Seminar Control daftar seminar KP
input nilai seminarKP
42 Kontrol KP Admin Control cetak surat permohonan KP
cetak surat tugas KP
43 Kontrol Seminar KP Admin Control cetak surat permohonan seminar KP
cetak berita acara
44 Kontrol Mahasiswa Control cetak surat permohonan KP
update informasi mahasiswa
lihat informasi mahasiswa
45 Kontrol Dosen Control update informasi dosen
lihat informasi dosen
46 Kontrol Instansi Control input data instansi
update informasi instansi
lihat informasi instansi
47 Kontrol Pengumuman Control update pengumuman
lihat pengumuman
posting pengumuman
48 KP Entity
Model
daftar KP
cetak surat permohonan KP
input surat balasan instansi
cetak surat tugas KP
37
49 Detail KP Entity daftar KP
cetak surat permohonan KP
input surat balasan instansi
cetak surat tugas KP
50 Seminar Entity
Model
daftar Seminar KP
cetak surat permohonan seminar KP
input nilai seminarKP
cetak berita acara
51 Detail Seminar Entity daftar Seminar KP
cetak surat permohonan seminar KP
input nilai seminarKP
cetak berita acara
52 Administrator Entity
Model
login
53 Mahasiswa Entity
Model
login
cetak surat permohonan KP
update informasi mahasiswa
lihat informasi mahasiswa
54 Dosen Entity
Model
login
update informasi dosen
lihat informasi dosen
55 Instansi Entity
Model
input data instansi
update informasi instansi
38
lihat informasi instansi
56 Pengumuman Entity
Model
update pengumuman
lihat pengumuman
posting pengumuman
39
3.3.2 Prototype Antarmuka
Tabel 12 Prototype antarmuka
No Kelas Analisis Lampiran
1 Halaman Login Admin Lampiran 3.1
2 Halaman Utama Lampiran 3.2
3 Halaman Menu Admin Lampiran 3.3
4 Halaman Personal Lampiran 3.4
5 Halaman Daftar KP Lampiran 3.5
6 Halaman Konfirmasi Data KP Lampiran 3.6
7 Halaman Tampilan Surat Lampiran 3.7
8 Halaman Surat Permohonan KP Lampiran 3.8
9 Halaman Surat Balasan Lampiran 3.9
10 Form Surat Balasan Lampiran 3.10
11 Halam Cetak Surat Tugas Lampiran 3.11
12 Form Cetak Surat Tugas Lampiran 3.12
13 Halaman Surat Tugas KP Lampiran 3.13
14 Halaman Daftar Seminar KP Lampiran 3.14
15 Halaman Konfirmasi Data Seminar Lampiran 3.15
16 Halaman Konfirmasi Seminar Lampiran 3.16
17 Halaman Cetak Surat Seminar Lampiran 3.17
18 Form Cetak Surat Seminar Lampiran 3.18
19 Halaman Surat Permohonan Seminar KP Lampiran 3.19
20 Halaman Mahasiswa Bimbingan Lampiran 3.20
21 Halaman Detail Mahasiswa Bimbingan Lampiran 3.21
22 Halaman Cetak Berita Acara Lampiran 3.22
23 Form Cetak Berita Acara Lampiran 3.23
24 Halaman Berita Acara Lampiran 3.24
25 Halaman Informasi Mahasiswa Lampiran 3.25
26 Halaman Detail Mahasiswa Lampiran 3.26
27 Form Mahasiswa Baru Lampiran 3.27
28 Halaman Informasi Dosen Lampiran 3.28
29 Halaman Detail Dosen Lampiran 3.29
30 Form Dosen Baru Lampiran 3.30
31 Halaman Informasi Instansi Lampiran 3.31
32 Halaman Detail Instansi Lampiran 3.32
33 Form Instansi Baru Lampiran 3.33
34 Halaman Pengumuman Lampiran 3.34
35 Halaman Detail Pengumuman Lampiran 3.35
40
36 Form Pengumuman Baru Lampiran 3.36
3.3.3 Atribut dan Method
Tabel 13 Atribut dan Method
1 Kontrol Login Lampiran 4.1
2 Kontrol Menu Lampiran 4.2
3 Kontril Menu Admin Lampiran 4.3
4 Kontrol KP Lampiran 4.4
5 Kontrol Seminar Lampiran 4.5
6 Kontrol KP Admin Lampiran 4.6
7 Kontrol Seminar Admin Lampiran 4.7
8 Kontrol Mahasiswa Lampiran 4.8
9 Kontrol Dosen Lampiran 4.9
10 Kontrol Instansi Lampiran 4.10
11 Kontrol Pengumuman Lampiran 4.11
12 KP Lampiran 4.12
13 Seminar Lampiran 4.13
14 Administrator Lampiran 4.14
15 Mahasiswa Lampiran 4.15
16 Dosen Lampiran 4.16
17 Instansi Lampiran 4.17
18 Pengumuman Lampiran 4.18
41
3.3.4 Perancangan Tabel
Gambar 9 Relasi tabel
mahasiswa
PK nim
namaalamatpasswordstatus
dosen
PK nip
namapassword
instansi
PK id_instansi
namaalamatkotapropinsikode_pos
pengumuman
PK index
tgl_pengumumanjudul_pengumumanisinip
kp
nimno_surat_permohonanno_surat_tugasnilai_kpnilai_akhir
detail_kp
PK no_surat_permohonan
tgl_surat_permohonanid_instansitgl_kpno_surat_balasantgl_surat_balasannip
seminar
nimno_surat_permohonannilai_seminar
detail_seminar
no_surat_permohonantgl_seminarjuduljamruangjml_peserta
administrator
PK nip
namapassword
*
*
*
*
*
**
****
**
**
**
**
**
Tabel mahasiswaTabel 14 Struktur tabel mahasiswa
Field Tipe Data Keterangannim varchar (12) Primary key
nama varchar(35) Nama mahasiswa
alamat varchar(50) Alamat mahasiswa
password varchar(50) Password login mahasiswa
status integer Status mahasiswa
Tabel dosenTabel 15 Struktur tabel dosen
Field Tipe Data Keterangan
nip varchar(12) Primary key
42
nama varchar(35) Nama dosen
password varchar(50) Password login dosen
Tabel instansiTabel 16 Struktur tabel instansi
Field Tipe Data Keterangan
id_instansi integer Primary key
nama varchar(35) Nama perusahaan
alamat varchar(50) Alamat perusahaan
kota varchar(20) Kota perusahaan
propinsi varchar(20) Propinsi perusahaan
kode_pos varchar(7) Kode pos perusahaan
Tabel KPTabel 17 Struktur tabel kp
Field Tipe Data Keterangan
nim varchar(12) Foreign key
no_surat_permohonan varchar(15) Foreign key
no_surat_tugas varchar(15) Nomor surat tugas KP
tgl_surat_tugas date Tanggal surat permohonan KP
nilai_kp char Nilai dari instansi tempat KP
nilai_akhir char Nilai akhir KP
Tabel detail_KPTabel 18 Struktur tabel detail_kp
Field Tipe Data Keterangan
no_surat_permohonan varchar(15) Primay key
tgl_surat_permohonan date Tanggal surat permohonan KP
id_instansi integer Nomor surat tugas KP
tgl_kp date Tanggal mulai KP
no_surat_balasan varchar(20) Nomor surat balasan
tgl_surat_balasan date Tanggal surat balasan
pengirim varchar(30) Nilai KP dari perusahaan
nip varchar(12) Foreign key, nip dosen pemimbing
Tabel seminarTabel 19 Struktur tabel seminar
Field Tipe Data Keterangan
nim varchar(12) Foreign key
no_surat_permohonan varchar(15) Forign key
nilai_seminar char Nilai seminar
43
Tabel detail_seminarTabel 20 Struktur tabel detail_seminar
Field Tipe Data Keterangan
no_surat_permohonan varcar(15) Foreign key
tgl_seminar date Tanggal seminar KP
judul Varchar(30) Judul seminar
jam time Waktu pelaksanaan seminar
ruang varchar(5) Ruang seminar KP
jml_peserta integer(3) Jumlah peserta seminar
Tabel PengumumanTabel 21 Struktur tabel pengumuman
Field Tipe Data Keterangan
index int(4) Primary key
tgl_pengumuman date Tanggal pengumuman dibuat
judul_pengumuman Varchar(20) Judul pengumuman
isi varchar(30) Isi pengumuman
nip varchar(12) Pembuat pengumuman
Tabel AdministratorTabel 22 Struktur tabel administrator
Field Tipe Data Keterangan
nip varchar(12) Primary key
nama varchar(35) Nama administrator
password varchar(50) Password login administrator
44
BAB IV
IMPLEMENTASI SISTEM
4.1 Karakteristik Umum
Sistem dibangun berbasis web, sehingga perlu sebuah web browser untuk mengakses.
Sistem ini juga dapat diakses melalui jaringan internet yang merupakan jalur
pertukaran data yang mudah diakses.
Dalam implementasi ini sistem menggunakan data contoh, yaitu data yang diambil
bukan dari pendataan langsung, tetapi dari asumsi-asumsi.
4.2 Perangkat Lunak yang Digunakan
Perangkat lunak yang digunakan untuk membangun system ini antara lain :
1. JDK 1.6.0 update 7
2. Eclipse IDE versi 3.4.0 Ganymade
3. MySql 5.1.15 beta
4. Apache Tomcat 1.6.0
5. Apache Struts 1.3.9
45
4.3 Implementasi Antarmuka / View
Tabel 23 Implemantasi antarmuka
No Kelas Analisis File Fisik URL Lampiran
1 Halaman Login Admin welcome.jsp ../administrator.do Lampiran 5.1
2 Halaman Utama welcome.jsp ../welcome.do Lampiran 5.2
4 Halaman Menu Admin home.jsp ../admin/home.do
../member/login.do
Lampiran 5.3
4 Halaman Personal welcome.jsp .../member/mahasiswa/menu.do?action=personal
../member/login.do
Lampiran 5.4
5 Halaman Daftar KP daftarKP.jsp ../member/mahasiswa/menu.do?action=daftarKP Lampiran 5.5
6 Halaman Konfirmasi Data KP daftarKP-konfirmasi.jsp ../member/mahasiswa/daftar/daftarKP.do Lampiran 5.6
7 Halaman Tampilan Surat daftarKP-tampilan.jsp ../member/mahasiswa/daftar/daftarKP.do Lampiran 5.7
8 Halaman Surat Permohonan KP daftarKP-print.jsp ../member/mahasiswa/daftar/daftarKP.do Lampiran 5.8
9 Halaman Surat Balasan KP-inputBalasan.jsp ../admin/action.do?action=inputBalasan Lampiran 5.9
10 Form Surat Balasan KP-formInputBalasan.jsp ../admin/KP/input-balasan.do Lampiran 5.10
11 Halaman Cetak Surat Tugas KP-cetakSuratTugas.jsp ../admin/action.do?action=cetakSuratTugas Lampiran 5.11
12 Form Cetak Surat Tugas KP-formSuratTugas.jsp ../admin/KP/cetak-suratTugas.do Lampiran 5.12
13 Halaman Surat Tugas KP KP-printSrtTugas.jsp ../admin/KP-cetak-suratTugas.do Lampiran 5.13
14 Halaman Daftar Seminar KP daftarSeminar.jsp ../member/mahasiswa/menu.do?action=daftarSeminar Lampiran 5.14
15 Halaman Konfirmasi Data Seminar daftarSeminar-konfirmasi.jsp ../member/mahasiswa/daftar/daftarSeminar.do Lampiran 5.15
16 Halaman Konfirmasi Seminar daftarSeminar-save.jsp ../member/mahasiswa/daftar/daftarSeminar.do Lampiran 5.16
17 Halaman Cetak Surat Seminar seminar-cetakSeminar.jsp ../admin/action.do?action=cetakSeminar Lampiran 5.17
46
18 Form Cetak Surat Seminar seminar-formCetakSeminar.jsp ../admin/seminar/print-suratSeminar.do Lampiran 5.18
19 Halaman Surat Permohonan Seminar KP seminar-printSeminar.jsp ../admin/seminar/print-suratSeminar.do Lampiran 5.19
20 Halaman Mahasiswa Bimbingan mhsBimbingan.jsp ../member/dosen/menu.do?action=bimbingan Lampiran 5.20
21 Halaman Detail Mahasiswa Bimbingan mhsBimbingan-detail.jsp ../member/dosen/bimbingan.do Lampiran 5.21
22 Halaman Cetak Berita Acara seminar-cetakBeritaAcara.jsp ../admin/action.do?action=beritaAcara Lampiran 5.22
23 Form Cetak Berita Acara seminar-formBeritaAcara.jsp ../admin/seminar/print-beritaAcara.do Lampiran 5.23
24 Halaman Berita Acara seminar-printBeritaAcara.jsp ../admin/seminar/print-beritaAcara.do Lampiran 5.24
25 Halaman Informasi Mahasiswa mahasiswaKP0.jsp
mahasiswaKP1.jsp
mahasiswaKP2.jsp
../member/mahasiswa/ menu.do?action=mahasiswa Lampiran 5.25
26 Halaman Detail Mahasiswa mahasiswaKP-detail0.jsp
mahasiswaKP-detail1.jsp
mahasiswaKP-detail2.jsp
../member/informasi/mahasiswa.do Lampiran 5.26
27 Form Mahasiswa Baru formMahasiswa.jsp ../admin/action.do?action=mahasiswa-baru Lampiran 5.27
28 Halaman Informasi Dosen dosen.jsp ../member/mahasiswa/menu.do?action=dosen Lampiran 5.28
29 Halaman Detail Dosen dosen-detail.jsp ../member/mahasiswa/informasi/dosen.do Lampiran 5.29
30 Form Dosen Baru formDosen.hsp ../admin/action.do?action=dosen-baru Lampiran 5.30
31 Halaman Informasi Instansi instansi.jsp ../member/mahasiswa/menu.do?action=instansi Lampiran 5.31
32 Halaman Detail Instansi istansi-detail.jsp ../member/mahasiswa/informasi/instansi.do Lampiran 5.32
33 Form Instansi Baru formInstansi.jsp ../admin/action.do?action=instansi-baru Lampiran 5.33
34 Halaman Pengumuman pengumuman.jsp ../member/mahasiswa/menu.do?action=pengumuman Lampiran 5.34
35 Halaman Detail Pengumuman pengumuman-detail.jsp ../member/mahasiswa/pengumuman/pengumuman.do Lampiran 5.35
36 Form Pengumuman Baru formPengumuman.jsp ../admin/action.do?action=pengumuman-baru Lampiran 5.36
47
Semua antarmuka menggunakan struts-tiles, sebuah library struts yang berguna
untuk memanyatukan beberapa halaman segment pada sebuah layout yang telah
dibuat.
Di atas adalah isi dari welcome.jsp yang merupakan implementasi dari halaman utama.
Baris pertama berguna untuk mengimpor uri untuk me-load library struts-tiles ke
halaman. Baris ke-2 adalah berarti halaman ini menggunakan layout yang bernama
main-layout.jsp Pada baris ke-3 berguna untuk men-set variabel pada main-layout.jsp.
Baris ke-4 hingga ke-7 berarti memasukkan potongan halaman jsp ke dalam tempat-
tempat yang sudah ditentukan di main-layout.jsp.
1.2.3.4.5.6.7.8.
48
Pada main-layout.jsp tag berarti mnenginisialisasi
variabel yang bernama title pada tempat tag tersebut. Tag
49
attribute="contentKiri" /> mempunyai arti sama dengan tag getAsString namun
tag ini nantinya berisi potongan halaman jsp yang akan disisipkan pada tempat tag ini
ditulis.
Untuk pengambilan data variabel digunakan Expresion Language (EL) karena lebih
mudah digunakan dan sederhana.
${sessionScope.id.jml_sks} dari potongan script halaman personal ini berarti
mengambil variabel jml_sks dari objek id dalam variabel session. Sedangkan
${status } berarti menggambil variabel status dari context request.
4.4 Implementasi Control
Tabel 24 Implementasi Kontrol
No Kelas Analisis File Fisik
1 Kontrol Login LoginAction.java
2 Kontrol Menu MenuAction.java
4 Kontril Menu Admin AdminMenuAction.java
4 Kontrol KP daftarKPAction.java
5 Kontrol Seminar daftarSeminarAction.java
6 Kontrol KP Admin AdminKPAction.java
7 Kontrol Seminar Admin AdminSeminarAction.java
8 Kontrol Mahasiswa MahasiswaAction.java
9 Kontrol Dosen DosenAction,java
10 Kontrol Instansi InstansiAction.java
11 Kontrol Pengumuman PengumumanAction.java
……………………….
Jumlah SKS : ${sessionScope.id.jml_sks}
Status : ${status }
…………………..
50
Kontrol berbentuk kelas java yang extends dari kelas Action maupun turunannya
(DispatchAction, LookupDispatchAction).
4.5 Implementasi Model
Tabel 25 Implementasi Model
No Kelas Analisis File Fisik
1 KP KPModel.java
2 Seminar SeminarModel.java
4 Administrator AdminModel.java
4 Mahasiswa MahasiswaModel.java
5 Dosen DosenModel.java
6 Instansi InstansiModel.java
7 Pengumuman PengumumanModel.java
Model merupakan kelas java biasa. Berisi koneksi ke database dan logika pengolahan
program. Pada implementasi sebenarnya, dibuat 1 kelas tambahan sebagi kelas
pembantu yang berisi koneksi database, instance variabel dan method utilitas bernama
MotherModel.java.
Koneksi ke database menggunakan connection pooling, suatu teknik pemrograman
yang bertujuan menghindari pemborosan koneksi (Pemrograman Java Servlet dan JSP,
Sri Hartati Wijono). Konfigurasi koneksi berada dalam file KP-Online.xml,pada tag
context dan diletakkan pada TomcatHome\conf\Catalina\localhost.
51
Method makeDataSource digunakan untuk meng-instance-kan datasource. Objek dari
kelas InitialContext digunakan untuk mencari nama JNDI. Method makeConnection
digunakan untuk membuat sebuah koneksi ke datasource.
4.6 Implementasi Entity / Tabel
Tabel 26 Implementasi Entity / Tabel
No Kelas Analisis Tabel Lampiran
1 KP kp Lampiran 5.33
2 detail_kp detail_kp Lampiran 5.34
4 Seminar seminar Lampiran 5.35
4 detail_seminar detail_seminar Lampiran 5.36
5 Administrator administrator Lampiran 5.37
6 Mahasiswa mahasiswa Lampiran 5.38
7 Dosen dosen Lampiran 5.39
8 Instansi instansi Lampiran 5.40
9 Pengumuman pengumuman Lampiran 5.41
public void makeDataSource(String jndi) {try {ic = new InitialContext();ds = (DataSource)ic.lookup("java:comp/env/"+jndi);} catch (NamingException ne) {}
}
public Connection makeConnection() {Connection con = null;if (ds == null) return con;try {
con = ds.getConnection();} catch (SQLException se) {}return con;
}
52
BAB V
ANALISIS HASIL IMPLEMENTASI
5.1 Hasil Pengujian Sistem
Pengujian Sistem Pendaftaran KP ini dilakukan pada lingkungan jaringan lokal (LAN)
dengan beberapa komputer dengan sebuah komputer sebagai server dan komputer
lainya sebagai client.
Dalam pengujian ini sistem dapat berjalan dengan baik. Pertukaran data antar
komputer juga berjalan dengan baik. User Interface diuji dengan beberapa browser
dan dapat berjalan dengan baik meski ada sedikit perbedaan antara browser satu
dengan lainya.
5.2 Kelebihan Sistem
Pendaftaran Kerja Praktek ini memiliki kelebihan antara lain :
1. Dapat berjalan pada intranet maupun internet, karena berbentuk web
(menggunakan protokol http).
2. Sistem ini dibangun menggunakan JSP sehingga dapat berjalan pada beberapa
server yang mendukung platform java termasuk apache tomcat. Apache tomcat
adalah server berbasis java (servlet container) yang dibuat oleh apache foundation
dan telah banyak digunakan.
3. Pertukaran data menjadi lebih cepat karena menggunakan jaringan internet yang
mempunyai jangkauan yang luas dan mudah diakses.
4. Data-data mengenai Kerja Praktek tidak mudah hilang karena tersimpan secara
rapi pada database.
53
5.3 Kekurangan Sistem
1. Sistem ini belum diuji menggunakan data yang sebenarnya sehingga masih perlu
pengujian sebelum benar-benar digunakan.
2. Tingkat keamanan sistem yang masih rendah karena hanya menggunakan session
untuk membatasi akses ke halaman web.
54
BAB VI
PENUTUP
6.1 Kesimpulan
Pembuatan Pendaftaran Kerja Praktek bertujuan untuk membantu petugas sekretariat
dalam melakukan pencatatan yang diperlukan dalam proses Kerja Praktek. Pencatatan
yang menggunakan Microsoft Exel dan Word diganti dengan menggunakan database
dan sistem berbasis web
Berdasarkan hasil simulasi yang dilakukan,dapat ditarik beberapa kesimpulan, yaitu :
1. Karena sistem berbasis web maka dapat menggunakan jaringan internet yang
menjangkau wilayah yang luas. Mahasiswa dapat melakukan pendaftaran Kerja
Praktek dari manapun selama ada komputer yang memiliki web browser dan
jaringan internet.
2. Pecatatan proses Kerja Praktek mahasiswa tersimpan pada database, sehingga
dapat digunakan sewaktu-waktu pada saat dibutuhkan.
3. Penggunaan Apache Struts membuat pemisahan yang jelas antara layer presentasi
dan layer logik. Oleh karena itu pengembangan sistem untuk selanjutnya dapat
dilakukan secara lebih mudah.
6.2 Saran
Sistem ini masih perlu diuji menggunakan data yang sebenarnya dan menggunakan
jaringan internet yang sesungguhnya untuk mengetahui kinerja system. Perlu adanya
pengendalian keamanan sistem baik dari sisi jaringan maupun database.
Sistem akan lebih handal jika menggunakan EJB (Enterprise Java Bean) pada layer
model.
55
LAMPIRAN 1
1.1 Skenario Use Case Login
Use Case : Login
Aktor : petugas sekretariat, mahasiswa, dosen
Aksi Aktor Reaksi Sistem
Skenario Normal (login peugas sekretariat)
1. Aktor memanggil halaman login.
2. Sistem menampilkan halaman login.
3. Aktor mengisiNIP dan password.
4. Aktor menekan tombol login.
5. Sistem mem-verifikasi username dan
password.
6 .Sistem menampilkan halaman menu
admin.
Skenario Alternatif (melakukan login)
5. Jika username dan password salah
maka sistem akan menampilkan kembali
halaman login disertai pesan kesalahan.
Skenario Normal (login mahasiswa dan dosen)
1. Aktor memanggil halaman utama.
2. Sistem menampilkan halaman utama
yang berisi form login.
3. Aktor memilih tipe login (mahasiswa
atau dosen) berupa radio button.
56
4. Aktor mamasukkan username (NIM
jika untuk mahasiswa, NIP untuk dosen).
5. Aktor menekan tombol login
6. Sistem mem-verifikasi username dan
password.
7. Sistem menampilkan halaman
informasi personal.
Skenario Alternatif (melakukan login)
7. Jika username dan password salah
maka sistem akan menampilkan kembali
halaman login disertai pesan kesalahan.
1.2 Skenario Use Case cetak surat permohonan KP
Use Case : cetak surat permohonan KP
Aktor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (cetak surat permohonan KP)
1. Aktor memanggil halaman informasi
mahasiswa.
2. Sistem menampilkan halaman
informasi mahasiswa.
3. Aktor memilih mahasiswa dengan
menekan link detail mahasiswa.
4. Sistem menampilkan detail informasi
mahasiswa.
57
5. Aktor menekan tombol cetak surat
permohonan KP.
6. Sistem mencetak surat permohonan KP
1.3 Sekenario Use Case input surat balasan instansi
Use Case : input surat balasan instansi
Actor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (input surat balasan instansi)
1. Aktor memanggil halaman input surat
balasan instansi.
2 Sistem menampilkan halaman yang
berisi daftar mahasiswa yang mendaftar
KP.
3. Aktor memilih mahasiswa dengan
menekan tombol proses.
4. Sistem menampilkan halaman yang
berisi form input surat balasan instansi.
5. Aktor memasukkan data balasan instansi
(pengirim, no surat balasan, tanggal
balasan).
6. Aktor menekan tombol save.
7. Sistem menyimpan data dan
menampilkan halaman konfirmasi telah
di simpan
58
Skenario Alternatif (cetak surat tugas KP)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa yang mendaftar
KP.
1.4 Skenario Use Case cetak surat Tugas KP
Use Case : cetak surat Tugas KP
Actor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (cetak surat tugas KP)
1. Aktor memanggil halaman cetak surat
tugas KP.
2 Sistem menampilkan halaman yang
berisi daftar mahasiswa yang mendaftar
KP dan telah mendapat persetujuan dari
instansi yang dituju.
3. Aktor memilih mahasiswa dengan
menekan tombol proses.
4. Sistem menampilkan halaman cetak
surat tugas
5. Aktor memilih dosen pembimbing untuk
mahasiswa dari combo box.
6. Aktor menekan tombol print.
7. Sistem menyimpan dan mencetak data
59
surat tugas KP.
8. Sistem menampilkan halaman
konfirmasi.
Skenario Alternatif (cetak surat tugas KP)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa yang mendaftar
KP dan telah mendapat persetujuan dari
instansi yang dituju.
1.5 Skenario Use Case cetak surat permohonan seminar KP
Use Case : cetak surat permohonan seminar KP
Actor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (cetak surat permohonan seminar KP)
1. Aktor memanggil halaman cetak surat
permohonan seminar KP.
2. Sistem menampilkan halaman yang
berisi daftar mahasiswa yang mendaftar
seminar.
3. Aktor memilih mahasiswa dengan
menekan tombol proses.
4. Sistem menampilkan halaman cetak
surat pendaftaran seminar KP.
5. Aktor melengkapi data seminar dengan
60
memasukkan tanggal, jam dan ruang
seminar KP.
6. Aktor menekan tombol print.
7. Sistem menyimpan dan mencetak surat
permohonan seminar KP.
8. Sistem menampilkan halaman
konfirmasi.
Skenario Alternatif 1 (cetak surat permohonan seminar KP)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa yang mendaftar
seminar.
1.6 Skenario Use Case cetak berita acara
Use Case : cetak berita acara
Aktor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (cetak berita acara)
1. Aktor memanggil halaman cetak berita
acara.
2. Sistem menampilkan halaman yang
berisi daftar mahasiswa yang telah
seminar KP.
3. Aktor memilih mahasiswa dengan
menekan tombol proses.
61
4. Sistem menampilkan halaman cetak
berita acara.
5. Aktor melengkapi data dengan mengisi
jumlah peserta.
6. Aktor menekan tombol print.
7. Sistem menyimpan dan mencetak
berita acara.
8. Sistem menampilkan halaman
konfirmasi.
Skenario Alternatif (cetak berita acara)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa yang telah
seminar KP.
1.7 Skenario Use Case update informasi mahasiswa
Use Case : update informasi mahasiswa
Aktor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (tambah mahasiswa)
1. Aktor memanggil halaman informasi
mahasiswa.
2. Sistem menampilkan halaman yang
berisi daftar mahasiswa.
3. Aktor menekan tombol mahasiswa baru.
62
4. Sistem menampilkan halaman yang
berisi form mahasiswa baru.
5. Aktor mengisi data mahasiswa.
6. Aktor menekan tombol save.
7. Sistem menyimpan data mahasiswa
dan menampilkan halaman konfirmasi.
Skenario Alternatif (tambah mahasiswa)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa.
Skenario Normal (edit mahasiswa)
1. Aktor memanggil halaman informasi
mahasiswa.
2. Sistem menampilkan halaman yang
berisi daftar mahasiswa.
3 Aktor memilih data mahasiswa dengan
cara menekan link detail mahasiswa.
4. Sistem menampilkan halaman yang
berisi detail data mahasiswa.
5. Aktor mengubah / mengedit data
mahasiswa.
6. Aktor menekan tombol save.
7. Sistem menyimpan data mahasiswa.
8. Sistem menampilkan halaman
63
konfirmasi.
Skenario Alternatif (edit mahasiswa)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa.
Skenario Normal (hapus mahasiswa)
1. Aktor memanggil halaman informasi
mahasiswa.
2. Sistem menampilkan halaman yang
berisi daftar mahasiswa.
3 Aktor menekan tombol delete di samping
data mahasiswa yang akan dihapus.
4. Sistem menghapus data mahasiswa
dan menampilkan halaman konfirmasi.
1.8 Skenario Use Case update informasi dosen
Use Case : update informasi dosen
Aktor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (tambah dosen)
1. Aktor memanggil halaman informasi
dosen.
2. Sistem menampilkan halaman yang
berisi daftar dosen.
3. Aktor menekan tombol dosen baru.
64
4. Sistem menampilkan halaman yang
berisi form dosen baru.
5. Aktor mengisi data dosen.
6. Aktor menekan tombol save.
7. Sistem menyimpan data dosen dan
menampilkan halaman konfirmasi.
Skenario Alternatif (tambah dosen)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar dosen.
Skenario Normal (edit dosen)
1. Aktor memanggil halaman informasi
dosen.
2. Sistem menampilkan halaman yang
berisi daftar dosen.
3 Aktor memilih data dosen dengan cara
menekan link detail dosen.
4. Sistem menampilkan halaman yang
berisi detail data dosen.
5. Aktor mengubah / mengedit data dosen.
6. Aktor menekan tombol save.
7. Sistem menyimpan data dosen dan
menampilkan halaman konfirmasi.
Skenario Alternatif (edit dosen)
65
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar dosen.
Skenario Normal (hapus mahasiswa)
1. Aktor memanggil halaman informasi
dosen.
2. Sistem menampilkan halaman yang
berisi daftar dosen.
3 Aktor menekan tombol delete di samping
data dosen yang akan dihapus.
4. Sistem menghapus data mahasiswa.
5. Sistem menampilkan halaman
konfirmasi.
1.9 Skenario Use Case update informasi instansi
Use Case : update informasi instansi
Aktor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (tambah instansi)
1 Aktor memanggil halaman informasi
instansi.
2. Sistem menampilkan halaman yang
berisi daftar instansi.
3 Aktor menekan tombol new instansi.
4. Sistem menampilkan halaman yang
66
berisi form instansi baru
5. Aktor mengisi data instansi.
6. Aktor menekan tombol save.
7. Sistem menyimpan data instansi dan
menampilkan halaman konfirmasi.
Skenario Alternatif (tambah instansi)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa.
Skenario Normal (edit instansi)
1 Aktor memanggil halaman informasi
instansi.
2. Sistem menampilkan halaman yang
berisi daftar instansi.
3 Aktor memilih data instansi dengan cara
menekan link detail instansi.
4. Sistem menampilkan halaman yang
berisi data instansi.
5. Aktor mengubah / mengedit data
instansi.
6. Aktor menekan tombol save.
7. Sistem menyimpan data instansi dan
menampilkan halaman konfirmasi.
67
Skenario Alternatif (edit instansi)
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar instansi.
Skenario Normal (hapus instansi)
1. Aktor memanggil halaman informasi
instansi.
2. Sistem menampilkan halaman yang
berisi daftar instansi.
3 Aktor menekan tombol delete di samping
data instansi yang akan dihapus.
4. Sistem menghapus data instansi dan
menampilkan halama konfirmasi.
1.10 Skenario Use Case update pengumuman
Use Case : update informasi dosen
Aktor : petugas sekretariat
Aksi Aktor Reaksi Sistem
Skenario Normal (tambah pengumuman)
1. Aktor memanggil halaman
pengumuman.
2. Sistem menampilkan halaman yang
berisi daftar pengumuman.
3. Aktor menekan tombol new
pengumuman.
4. Sistem menampilkan halaman yang
68
berisi form pengumuman baru.
5. Aktor mengisi data pengumuman.
6. Aktor menekan tombol save.
7. Sistem menyimpan data pengumuman
dan menampilkan halaman konfirmasi
Skenario Alternatif 1
6. Aktor menekan tombol cancel.
7. Sistem menampilkan halaman yang
berisi daftar pengumuman.
Skenario Normal (edit pengumuman)
1 Aktor memanggil halaman informasi
pengumuman.
2. Sistem menampilkan halaman yang
berisi daftar pengumuman.
3 Aktor memilih data pengumuman dengan
cara menekan link detail pengumuman.
4. Sistem menampilkan halaman yang
berisi data pengumuman.
5. Aktor mangubah data pengumuman.
6. Aktor menekan tombol save.
7. Sistem menyimpan data pengumuman
dan menampilkan halaman konfirmasi
Skenario Alternatif (edit pengumuman)
69
6. Aktor menekan tombol cancel
7. Sistem menampilkan halaman yang
berisi daftar mahasiswa
Skenario Normal (hapus pengumuman)
1. Aktor memanggil halaman informasi
pengumuman.
2. Sistem menampilkan halaman yang
berisi daftar pengumuman.
3. Aktor menekan tombol delete di samping
data pengumuman yang akan dihapus
4. Sistem menghapus data mahasiswa
dan menampilkan halama konfirmasi.
1.11 Skenario Use Case daftar KP
Use Case : daftar KP
Aktor : mahasiswa
Aksi Aktor Reaksi Sistem
Skenario Normal (daftar KP)
1. Aktor memanggil halaman daftar KP.
2. Sistem menampilkan halaman yang
berisi form untuk mendaftar KP.
3. Aktor memasukkan data KP (penerima
surat, tanggal KP, instansi yang dituju).
4. Aktor menekan tombol next.
70
5. Sistem menampilkan halaman yang
berisi data yang telah dimasukkan
sebagai konfirmasi.
6. Aktor menekan tombol view.
7. Sistem menampilkan tampilan surat
8. A