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
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
HALAMAN PERSEMBAHAN
Karya ini ku persembahkan untuk :
Tuhan Yesus, atas segala rahmat yang diberikan kepada saya
Kedua orang tua-kuyang 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
HALAMAN MOTTO
Nothing can be done without hope and confidence.
Don’t give up...
Don’t give up...
ABSTRAKSI
Tugas akhir ini bertujuan untuk membangun system informasi
menggunakan bahasa server side JSPdengan 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
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
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.
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
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
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
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
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
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
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 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 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 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 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
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
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
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
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
objekRational 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
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 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
- 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.
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 Designadalah :
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
Actoradalah 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
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 databaseyang 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
Tabel 1Tipe 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 2Tipe 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
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 3Tipe 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 ENUMdan SET.
ENUM adalah sebuah tipe data yang menyimpan beberapa pilihan data yang
akan disimpan tetapi hanya ada satu pilihan yang boleh disimpan. Sedangkan
SETadalah tipe data mirip seperti ENUMtetapi 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)
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
Servletadalah program javayang berjalan pada aplikasi berbasis web (aplikasi
server) dan bertindak sebagai lapisan tangah diantara request dari client dan
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
templateHTML dengan kode Java yang dinyatakan pada elemen JSP.
Detail pemrosesan JSP Servlet Engineadalah sebagai berikut:
1. Melakukan pemilihan (parsing) kode JSP.
2. Membangkitkan kode sumber Servlet.
3. Mengkompilasi kode sumber Servlet menjadi sebuah kelas.
4. Membuat instanceServlet.
Gambar 1Pemrosesan 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
networkingdan 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 <%@ directive_name attribute=”attribute_value”%>
 page directive
page directive digunakan untuk mendefinisikan atribut-atribut
yang digunakan untuk memberitahukan servlet engine
mengenai konfigurasi umum dari halaman JSP.
Sintaks page directive: <%@ page atribut1 atribut2…%>
Tabel 4Atribut 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 classyang akan menjadi classinduk 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 pageuntuk 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 databagi suati halaman JSP. Nilai default: true
 include directive
include directive digunakan untuk mendefinisikan file yang
disisipkan pada saat kompilasi halaman JSP.
Sintaks include directive : <@ include file=”url/file”>
 taglib directive
Direktif ini digunakan untuk mendefinisikan tag-tag buatan
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:
Tabel 5Atribut action
JSP Action Kegunaan Atribut Deskripsi
<jsp:usebean> 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
<jsp:getProperty> 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
<jsp:setProperty> 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
<jsp:forward> Digunakan untuk mem-forward
(meneruskan) request ke
halaman JSP yang lain
 page  spesifikasikan url dari halaman JSP
yang dituju
<jsp:include> Digunakan untuk menyisipkan
halaman JSP.
 Page
 Flush
 Mendefinisikan url dari file JSP yang akan disisipkan
 Mendefinisikan apakah buffer harus dibersihkan
<jsp:param> Digunakan sebagai sub-atribut
dengan jsp:include dan
jsp:forward
 Name
 value
 nama parameter
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 Strutsmemiliki 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
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
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.
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
3.1.1.6 Flowchart Prosedur KP
Gambar 2Flowchart 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 KP 2. Dimintakan cap di sekretariat
3. Difotocopy 4 lembar dan diberikan kepada: a. Dosen pembimbing KP
b. Dosen pembimbing akademik c. 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
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
Flowchart sistem yang baru
3.1.3 Fungsi Utama Perangkat Lunak
Tabel 6Fungsi utama perangkat lunak
Kode Fungsi
KPO-FU-01 Sistem mampu mengauthentifikasi user
KPO-FU-02 Sistem mampu menagani pendaftaran KP
KPO-FU-03 Sistem mampu memberikan layanan input data instansi
KPO-FU-04 Sistem mampu mencetak surat permohonan KP
KPO-FU-05 Sistem mampu mencetak surat tugas KP
KPO-FU-06 Sistem mampu menagani pendaftaran seminar KP
KPO-FU-07 Sistem mampu mencetak surat permohonan seminar KP
KPO-FU-08 Sistem mampu memberikan layanan input nilai seminar
KPO-FU-09 Sistem mampu mencetak berita acara
KPO-FU-10 Sistem mampu memanagement informasi mahasiswa, dosen, instansi
KPO-FU-11 Sistem mampu memanagement pengumuman
KPO-FU-12 Sistem mampu memberikan layanan informasi mahasiswa, dosen, instansi
KPO-FU-13 Sistem mampu memberikan layanan pengumuman
3.1.4 Use Case Model
3.1.4.1 Use Case Diagram
3.1.4.1.1 Use Case Diagram petugas secretariat
Gambar 4Use Case diagram petugas sekretariat
cetak surat permohonan KP (f rom pendaf taran KP)
update informasi mahasiswa (f rom inf ormasi)
update pengum um an (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 bal asan instansi
(f rom pendaf taran KP)
<<extend>>
petugas sekretariat (f rom Actors)
3.1.4.1.2 Use Case Diagram User
Gambar 5Use Case Diagram user
3.1.4.1.3 Use Case Diagram Mahasiswa
Gambar 6Use Case Diagram Mahasiswa lihat informasi mahasiswa
(f rom inf ormasi)
li hat 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 i nstansi
3.1.4.1.4 Use Case Diagram dosen
Gambar 7Use Case Diagram dosen
3.1.4.2 Definisi Aktor
Tabel 7Definisi aktor
Aktor Hak Akses Keterangan
Petugas 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 nilai semi nar KP
(f rom pendaf taran Seminar KP)
dosen
(f rom Actors)
posti ng pengumuman
 Posting pengumuman Mem-posting komentar
 Logout
menjalani KP. Turunan dari user
Gambar 8Definisi Aktor
3.1.4.3 Definisi Use Case
Tabel 8Definisi 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 KP
Cetak surat permohonan seminar KP KPO-FU-07 Pengguna dapat mencetak surat
permohonan semianr KP
Cetak berita acara KPO-FU-09 Pengguna dapat mencetak berita
acara seminar KP
Update 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,
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 9Skenario Use Case
Use Case Skenario Use Case
Login Lampiran 1.1
Cetak surat permohonan KP Lampiran 1.2
Input surat balasan instansi Lampiran 1.3
Cetak surat tugas KP Lampiran 1.4
Cetak surat permohonan seminar KP Lampiran 1.5
Cetak berita acara Lampiran 1.6
Update informasi mahasiswa Lampiran 1.7
Update informasi dosen Lampiran 1.8
Update informasi instansi Lampiran 1.9
Update pengumuman Lampiran 1.10
Daftar KP Lampiran 1.11
Input data instansi Lampiran 1.12
Daftar Seminar KP Lampiran 1.13
Lihat informasi mahasiswa Lampiran 1.14
Lihat informasi dosen Lampiran 1.15
Lihat informasi instansi Lampiran 1.16
Lihat pengumuman Lampiran 1.17
Posting pengumuman Lampiran 1.19
3.2 Analisis Sistem
3.2.1 Realisasi Use Case
Tabel 10Realisasi Use Case
Use Case Skenario Use Case
Login Lampiran 2.1.1
Cetak surat permohonan KP Lampiran 2.1.2
Input surat balasan instansi Lampiran 2.1.3
Cetak surat tugas KP Lampiran 2.1.4
Cetak surat permohonan seminar KP Lampiran 2.1.5
Cetak berita acara Lampiran 2.1.6
Update informasi mahasiswa Lampiran 2.1.7
Update informasi dosen Lampiran 2.1.8
Update informasi instansi Lampiran 2.1.9
Update pengumuman Lampiran 2.1.10
Daftar KP Lampiran 2.1.11
Input data instansi Lampiran 2.1.12
Daftar Seminar KP Lampiran 2.1.13
Lihat informasi mahasiswa Lampiran 2.1.14
Lihat informasi dosen Lampiran 2.1.15
Lihat informasi instansi Lampiran 2.1.16
Lihat pengumuman Lampiran 2.1.17
Input nilai seminar KP Lampiran 2.1.18
Posting pengumuman Lampiran 2.1.19
3.2.2 Diagram Kelas Keseluruhan
32
3.3 Design Sistem
3.3.1 Kelas Perancangan
Tabel 11Kelas 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 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
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
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
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
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
38
lihat informasi instansi
56 Pengumuman Entity
Model
update pengumuman
lihat pengumuman
3.3.2 Prototype Antarmuka
Tabel 12Prototype 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
36 Form Pengumuman Baru Lampiran 3.36
3.3.3 Atribut dan Method
Tabel 13Atribut 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
3.3.4 Perancangan Tabel
Gambar 9Relasi tabel
mahasiswa
Tabel 14 Struktur tabel mahasiswa
Field Tipe Data Keterangan
nim 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 dosen
Tabel 15Struktur tabel dosen
Field Tipe Data Keterangan
nama varchar(35) Nama dosen
password varchar(50) Password login dosen
Tabel instansi
Tabel 16Struktur 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 KP
Tabel 17Struktur 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_KP
Tabel 18Struktur 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 seminar
Tabel 19Struktur tabel seminar
Field Tipe Data Keterangan
nim varchar(12) Foreign key
no_surat_permohonan varchar(15) Forign key
Tabel detail_seminar
Tabel 20Struktur 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 Pengumuman
Tabel 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 Administrator
Tabel 22Struktur tabel administrator
Field Tipe Data Keterangan
nip varchar(12) Primary key
nama varchar(35) Nama administrator
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
4.3 Implementasi Antarmuka / View
Tabel 23Implemantasi 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