Berbasis Desktop
2
BAB 1
PENDAHULUAN
Aplikasi ini di latar belakangi oleh berbagai macam masalah yang terjadi seperti pencatatan data
pemesanan, data pelanggan, transaksi dan identitas bus yang masih dilakukan secara manual. Dalam
permasalahan yang terjadi saat ini kami memiliki solusi yaitu dengan membuat aplikasi TourTravel di
mana aplikasi ini dapat memiliki beberapa fungsi yaitu bisa memesan bus,menampilkan opsi paket
wisata dan memesan paket wisata, melakukan pencarian data berdasarkan nama pemesan dan kode
pesan, melihat daftar bus yang tersedia di fiturlist bus, dan pembayaran secara cash maupun via atm,
sehingga aplikasi ini dapat membantu pemilik perusahaan dalam mencatat keluar masukknya data
pelanggan serta merapihkan data pemesanan dalam data base.
Sub Bab Rumusan Masalah Menegaskan kembali tentang masalah-masalah yang akan diteliti sesuai
dengan yang telah disebutkan pada Latar Belakang. Umumnya ditulis dalam bentuk susunan kalimat
pertanyaan yang merumuskan adanya permasalahan yang perlu diteliti, tetapi dapat pula dibuat dalam
bentuk kalimat pernyataan. Rumusan masalah dapat ditulis dalam bentuk narasi (paragraf) atau rincian
berbentuk numbering.
3
1.3 Tujuan
Tujuan adalah sebuah pernyataan tentang sasaran yang hendak dicapai sebagai bentuk solusi terhadap
masalah-masalah yang telah dirumuskan dalam sub bab Rumusan Masalah. Tujuan harus dapat terukur
dan dibuktikan melalui sebuah mekanisme pengujian yang akan dirinci pada Bab 4. Tujuan ditulis dalam
bentuk pernyataan. Tujuan dapat ditulis dalam bentuk narasi/paragraf atau dapat pula dituliskan dalam
bentuk numbering.
Antara sub bab Latar Belakang, Rumusan Masalah, dan Tujuan selalu ada benang merah yang dapat
ditarik. Latar belakang menjelaskan tentang kondisi yang dialami, masalah yang timbul dan solusi yang
diusulkan sehingga menegaskan urgensi (pentingnya) Proyek Akhir yang dibuat. Sub bab Rumusan
Masalah menyebutkan masalah-masalah yang telah dipaparkan dalam sub bab Latar Belakang dalam
bentuk kalimat tanya atau pernyataan. Adapun sub bab Tujuan menyatakan sasaran terukur yang
hendak dicapai oleh Proyek Akhir sebagai solusi untuk menjawab masalah-masalah yang telah
dirumuskan dalam sub bab Rumusan Masalah.
3. Dan hal-hal lain yang terkait dengan pembahasan tetapi tidak menjadi fokus pembahasan dalam
Proyek Akhir.
Definisi operasional menjelaskan kata kunci yang dicantumkan di bagian abstrak dan menjelaskan kata
inti pada bagian judul Proyek Akhir. Definisi operasional bukan merupakan definisi istilah, dapat dibuat
dalam bentuk rincian (numbering) atau paragraf.
a) Metode
Tahap pengembangan di lakukan secara bertahap sesuai dengan aturan
Software Development Life Cycle (SDLC) yaitu sebagai berikut:
4
1. Perancangan kebutuhan (Requirement)
Pada tahap ini terdapat kegiatan yang di lakukan adalah pengumpulan data baik
dilakukan dengan cara observasi dan wawancara langsung dengan pihak
Perusahaan Jaya Sampurna Logistik.
2. Analisis (Analysis)
Pada tahap ini yaitu mengalisiskebutahan-kebutahan sistem yang akan di bangun
berdasarkan dengan spesifikasi kebutuhan dari pihak Jaya Sampurna Logistik.
Dilakukan pengolahan data untuk memastikan data yang akan dikumpulkan
sesuai dengan kebutuhan dari aplikasi tersebut.
3. Desain (Design)
Pembangunan desain aplikasi ini dengan menggunakan JFrame pemrograman
Visual NetBeans.
4. Implementation
Aplikasi Manajemen Logistik ini di bangun dengan menggunakan pemrograman
javaNetBeans dan berbasis data Oracle
5. Pengujian (Testing)
Testing dilakukan untuk memastikan bahwa aplikasi ini telah berhasil dan dapat
digunakan dengan mudah atau belum oleh user (Petugas Logistik Jaya Sampurna)
b) Pembuatan Laporan
Laporan di buat mengenai pembagunan aplikasi sistem informasi dan desain
sistem serta hasil pengujianya. Laporan ini untuk pendokumentasian dan bias
dijadikan acuan untuk pembangunan aplikasi selanjutnya.
Pengumpulan
5
data
Analisis
Kebutuhan
Desain
Pengkodingan
dan Implementasi
Testing
Pembuatan
Laporan
Metode pengerjaan yang digunakan dalam pembuatan proposal tugas besar ini adalah metode
Waterfall. Metode Waterfall merupakan metode perancangan perangkat lunak yang mengambil
kegiatan proses dasar spesifikasi, pengembangan, validasi, dan evolusi serta mewakili kegiatan tersebut
sebagai fase dari sebuah proses yang terpisah seperti spesifikasi persyaratan, perancangan perangkat
lunak, implementasi, pengujian, dan sebagainya.
6
Beberapa tahapan dari waterfall, yaitu:
a. Analisis kebutuhan : Merupakan tahap awal dari waterfall, tahapan ini mendefinisikan semua
kebutuhan yang di inginkan. Berikut langkah-langkah analisis kebutuhan yaitu :
b. Desain dan Perancangan : Tahapan desain dan perancangan merupakan sebuah perancangan
aplikasi dimana pada tahapan ini untuk merancang desain atau interfacedari aplikasi yang akan
di buat.
d. Pengujian Aplikasi : Pada tahapan ini dilakukan pengujian terhadap aplikasi yang telah di buat,
dilihat dari kesesuaian fungsionalitas yang telah di ajukan sebelumnya.
e. Penerapan aplikasi : Tahap ini merupakan tahap terakhir pada metode waterfall. Pada tahap ini
aplikasi akan diterapkan langsung oleh pemilik perusahaan Mr Tour.
7
BAB 2
LATAR BELAKANG
3.1 Java
Jika melihat jauh ke belakang, kita akan menemukan sebuah sejarah yang
menceritakan awal mula dan keberadaan pertama kali Java di tangan cerdas
manusia. Bahasa pemrograman Java diciptakan oleh sebuah programmerteam
yang pada saat itu dinamai The Green Project. Tim tersebut dipelopori sekaligus
dipimpin oleh dua super-programmer bernama James Gosling dan Patrick
Naughton dalam sebuah project dari Sun Microsystem yang memiliki visi misi
menciptakan suatu bahasa pemrograman mudah dan sederhana yang bisa
digunakan atau dijalankan pada berbagai peralatan sederhana tanpa terikat dengan
arsitektur apapun. Proyek tersebut berjalan selama satu tahun, yaitu mulai dari
tahun 1991 hingga 1992.
Ada sejarah yang cukup menarik mengenai Java, yaitu nama yang digunakan untuk memanggil
programminglanguage ini. Pertama kalinya bahasa pemrograman Java dirilis, sang developer
memberikan sebutan dengan nama "OAK", yang mulanya diambil dari nama pohon oak yang
tumbuh di dekat jendela pada ruang kerja James Gosling. Namun, berhubung label OAK tersebut
telah digunakan pada bahasa pemrograman lain, maka Sun Microsystem mengubah brand OAK
8
menjadi "JAVA". Nama Java sendiri diambil dari nama kopi murni yang cara produksinya
digiling secara langsung dari biji kopi favorit James Gosling.
2.1.1 Karakteristik
Java telah menjadi bahasa pemrograman yang begitu populer. Java adalah bahasa pemrograman yang
simple, object-oriented, distributed, robust, secure, architecture-neutral, portable, high-performace,
multithreaded, anddynamic. Berikut ini adalah penjelasan secara singkat beberapa karakteristik dari Java.
1. Simple (Sederhana).
Bahasa pemrograman Java memang berasal dari bahasa pemrograman C++ yang dulunya telah
mengalami penyederhanaan dan peningkatan. Bahasa Java ini sangan mudah digunakan karena bahasanya
yang sederhana dan mudah untuk dimengerti.
Bahasa pemrograman berorientasi obyek akan menitikberatkan pada pembuatan obyek, apapun yang ada
disekitar bisa dijadikan obyek tergantung pada kelasnya. Pemanipulasian obyek memastikan bahwa obyek
yang satu dengan yang lain dapat bekerja bersama. Setiap obyek mempunyai data atribut dan operasi yang
digunakan untuk memanipulasi data.
3. Distributed (Terdistribusi).
Dengan melibatkan beberapa komputer untuk dapat bekerja bersama-sama dalam suatu jaringan. Secara
khusus, bahasa pemrograman Java telah didesain untuk bekerja dalam lingkungan jaringan.
4. Robust (Kuat).
Java memberikan banyak tekanan pada pengecekan awal terhadap kemungkinan kesalahan (error).
Kompiler Java dapat mendeteksi lebih dini kesalahan yang mungkin muncul pada waktu program Java
dijalankan. Programer harus bisa menangani exception kesalahan yang muncul saat program dijalankan,
sehingga program Java tetap dapat berjalan pada eksekusi normal.
9
5. Architecture-Neutral (Tidak bergantung pada platform tertentu).
Java sourcecode yang sudah dirubah ke dalam bytecode Java dapat dijalankan dengan menggunakan
interpreter. Keistimewaan ini menjadikan Java tidak bergantung pada platform (platform-independent).
Dengan Java Virtual Machine(JVM), Anda hanya menulis program sekali dan dapat menjalankan pada
platform berbeda seperti sistem operasi Microsoft Windows, OS/2, UNIX dan IBM AS/400.
6. Dynamic (Dinamis).
Tidak seperti bahasa pemrograman berorientasi objek C++ yang memerlukan kompilasi ulang secara
menyeluruh bila keasparent mengalami perubahan, Java menggunakan metode interface untuk
menghilangkan ketergantungan ini, sehingga kelas child atau clientobject tidak akan terpengaruh pada
perubahan tersebut.
Cara kerja Java yaitu compiler dan interpreter. Java dapat dijalankan pada berbagai platform.
Java compiler akan menerjemahkan kode program yang dibuat oleh
programmerkedalambytecode. Hasil dari kompilasi tersebut dapat dijalankan oleh java
interpreter. Java interpreter ini dapat dijalankan langsung pada commandprompt atau web
browser.
Enkapsulasi
Suatu wadah untuk menjaga suatu program agar tidak dapat diakses sembarangan
oleh program lain. Diwujudkan dalam bentuk “class” memiliki hak akses terhadap
lingkungannya, hak akses ini biasanya disebut Access Modifier yang terdiri dari
public, private, protected.
Inheritance
Pewarisan. Yang artinya sebuah class yang mewarisi atribut dan method dari class
lain dengan cara menggunakan Extends setelah deklarasi nama class kemudian
diikuti dengan nama parentclass-nya.
10
Polymorism
Banyak bentuk. Berarti banyak bentuk disini yaitu kita dapat menimpa suatu
method yang berasal dari parentclassdimanaobject tersebut diturunkan.
11
2.1.7 EDITOR (NETBEANS, ECLIPSE, JCREATOR, INTELLIJ,
NOTEPAD++)
a. NETBEANS
Netbeans adalah suatu aplikasi IDE yang digunakan programmer untuk membuat
sebuat proyek aplikasi perangkat lunak. Netbeans ditulis dalam bahasa
pemrograman Java namun bisa juga dengan bahasa pemrograman lainnya.
Fitur-fitur dalam Netbeans :
Code generator, untuk meng-generateconstructor, setter dan gettermethod, dll.
Errorstripe, untuk menandai baris yang error dengan menghighlight merah.
Bookmarking, digunakan untuk menandai baris saat kita modifikasi.
Go tocommands, untuk jump pendeklarasian variable, sourcecode yang ada pada
project yang sama.
b. ECLIPSE
Eclipse adalah sebuah IDE untuk mengembangkan perangkat lunak dan
Eclipse ini dapat dijalankan di semua platform.
Sifat dari Eclipse:
Multi-platform, dengan target sistem operasinya adalah Microsoft
Windows, Linux, Solaris, AIX, HP-UP dan MAC OS X.
Multi-language, mendukung pengembangan aplikasi lain seperti C/C++,
Cobol, Phyton, Perl, PHP.
Multi-role, eclipse ini juga dapat digunakan untuk aktivitas dalam siklus
pengembangan perangkat lunak seperti dokumentasi, test, pengembangan web,
dan lain sebagainya.
c. JCREATOR
JCreatoradalah IDE dengan Pemogramanfull JAVA.
JCreatoradalahalat pengembanganuntuk setiapprogrammer yangsuka
melakukanapa yang dia lakukanterbaik:pemrograman. Hal inilebih cepat, lebih
12
efisiendan lebih handal dariIDE lainJawa. Oleh karena itualat yang sempurna
untukprogrammer darisetiap tingkat, dari belajarprogrammer untukJawa-spesialis.
JCreatormenyediakan penggunadengan berbagaimacamfungsiseperti:
manajemenproyek, proyek template, kode-selesai, antarmukadebugger, editor
dengan sorotansintaks, penyihir danuserinterfacesepenuhnya dapat disesuaikan.
DenganJCreatorAnda langsungdapat mengkompilasiatau menjalankanprogram
JavaAndatanpa mengaktifkandokumen utamapertama.JCreatorsecara
otomatisakan menemukanfile denganmetodeutama
ataufilehtmlmemegangjavaapplet, makaakan mulaiperangkat yang
sesuai.JCreatorditulisseluruhnyadalam C+ +, yangmembuatnya cepatdan
efisiendibandingkan denganeditorberbasis Java/IDE's.
d. INTELLIJ
Sebuah IDE untuk Java dari JetBrains. Ini tersedia sebagai sebuah edisi
komunitas Apache 2 berlisensi dan edisi komersial. Dalam sebuah laporan
oleh Infoworld pada tahun 2010, InelliJ IDEA menduduki peringkat 4
besar sebagai IDE untuk pengembangan perangkat lunak dengan bahasa
Java. Versi awal dari IntelliJ IDEA dirilis pada tahun 2001, dan pada saat
itu merupakan salah satu Java IDE yang pertama kali menyediakan kode
navigasi dan kode refaktoring dengan kemampuan yang canggih dan
terintegrasi. Google sedang mengembangkan sebuah produk yang disebut
Android Studio, sebuah open sourceAndroid Pengembangan IDE
berdasarkan edisi komunitas open source dari IntelliJ IDEA.
e. NOTEPAD++
Notepad++ adalah sebuah penyunting teks dan penyunting kode sumber yang
berjalan di sistem operasi Windows. Notepad++ menggunakan komponen
Scintilla untuk dapat menampilkan dan menyuntingan teks dan berkas kode
sumber berbagai bahasa pemrograman.
Notepad++ didistribusikan sebagai perangkat lunak bebas. Proyek ini dilayani
oleh Sourceforge.net dengan telah diunduh lebih dari 27 juta kalidan dua kali
13
memenangkan penghargaan SourceForgeCommunityChoiceAwardfor Best
DeveloperTool .
Unified Modeling Language merupakan salah satu alat bantu yang dapat digunakan
dalam bahasa pemograman yang berorientasi objek, saat ini UML akan mulai menjadi
standar masa depan bagi industri pengembangan sistem/perangkat lunak yang
berorientasi objek sebab pada dasarnya UML digunakan oleh banyak perusahaan raksasa
seperti IBM, Microsoft, dan sebagainya [Adin05].
Definisi UML
Unified Modeling Language (UML) adalah bahasa yang telah menjadi standard untuk
visualisasi, menetapkan, membangun dan mendokumentasikan arti suatu sistem
perangkat lunak [Hend07].
Unified Modeling Language (UML) dapat didefinisikan sebagai sebuah bahasa yang telah
menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan
sistem perangkat lunak [Afif02].
Unified Modeling Language (UML) merupakan standard modeling language yang terdiri
dari kumpulan-kumpulan diagram, dikembangkan untuk membantu para pengembang
sistem dan software agar bisa menyelesaikan tugas-tugas seperti [Joml07] :
Spesifikasi
Visualisasi
Desain arsitektur
Konstruksi
14
Simulasi dan testing
Dokumentasi
Activity Diagram
Acticity diagram adalah suatu diagram yang menggambarkan berbagai alir
aktivitas dalam sistem yang sedang dirancang, menggambarkan bagaimana setiap
alir berawal, pilihan keputusan yang mungkin terjadi, dan bagaimana setiap alir
tersebut berakhir. Activity diagram dapat juga menggambarkan proses parallel
yang mungkin terjadi pada beberapa ekseksi, dan mempresentasikan satu atau
lebih usecase.
Sequence Diagram
Sequence diagram adalah suatu diagram yang memperlihatkan atau menampilkan
interaksi-interaksi antar objek di dalam sistem yang disusun pada sebuah urutan
atau rangkaian waktu. Interaksi antar objek termasuk pengguna, display, dan
sebagainya berupa pesan atau message. Sequence diagram digunakan untuk
menggmabrkan Skenario atau rangkaian langkah-langkah yang dilkaukan sebagai
sebuah respon dari suatu kejadian/event untuk megnhasilkanoutput tertentu.
Sequencediagrm diawali dari apa yang memicu aktivitas tersebut, proses dan
perubahan apa saja yang terjadi secara internal dan output apa yang dihasilkan.
Class Diagram
15
Class diagram adalah diagram yang menunjukkan class-class yang ada dari
sebuah sistem dan hubungannya secara logika.
16
Tabel Relasi
2.3 Flowmap
Flowmap, alat bantu konvensional, disebut juga mapingflow atau diagram alir dokumen.
Merupakan diagram yang menggambarkan aliran dokumen pada suatu prosedur kerja di
organisasi dan merupakan digram alur yang menunjukan arus dari dokumen, aliran data
fisis, entitas-entitas sistem informasi dan kegiatan operasi yang berhubungan dengan
sistem informasi. Penggambarannya biasanya diawali dengan mengamati dokumen apa
yang menjadi media data atau informasi. Selanjutnya ditelusuri bagaimana dokumen
tersebut mengalir, perubahan apa yang terjadi pada dokumen tersebut, proses apa yang
terjadi pada dokumen tersebut dan seterusnya.
17
BAB 3
ANALISIS DAN PERANCANGAN
18
Gambar 3.1 Activity Diagram Melihat Data Paket
19
Gambar 3.3 Activity Diagram Melihat Data Paket
20
Gambar 3.5 Activity Diagram Pembayaran
21
Gambar 3.6 Activity Diagram Pemilihan paket wisata
22
Gambar 3.8 Activity Diagram Update Paket
23
Berikut adalah interaksi kasir dengan sistem dalam proses mendaftar kasir.
Tabel 3.1 Skenario Use Case 1 (Kondisi Normal 1)
Kondisi Normal 1
Aktor (Kasir) Sistem
1.Kasir memilih menu “daftar” untuk
melakukan pendaftaran
2.Sistem menampilkan menu berupa
form yang terdiri dari idKasir, nama,
password aplikasi, alamat dan nomor
Telepon
3.Kasir memasukkan data pribadi
berupa idKasir, nama, password
aplikasi alamat dan nomor telepon
4.Sistem melakukan validasi data kasir
5. Jika valid maka system akan
menampilkan data berupa username
dan password yang sudah dibuat oleh
kasir
6. Jika tidak valid maka system akan
memberitahukan bahwa ada data yang
tidak sesuai
9. Kasir klik “oke’
10. Kasir akan mendapatkan username
dan password
24
Aktor (Kasir) Sistem
1. Kasir menginputkan data pelanggan
berupa idKasir, nama, email, nomor
telepon, alamat, idBus, tujuan, tanggal
pesan, tanggal kembali dan paket
wisata
2. Kasir menekan tombol “Simpan”
3.Sistem akan menyimpan semua data
yang telah dimasukkan
4.Sistem mengeluarkan kode pesan
untuk pemesanan tersebut
5.Kasir menerima kode pesan dari
sistem dan menekan tombol “oke”
25
Deskripsi :Kasir memasukkan kode pesan pelanggan dan system
melakukan validasi kode pesan pelanggan tersebut
Pre – Condition : Kasir memasukkan kode pesan pelanggan
Post – Condition : Kasir menerima bukti pembayaran dari system dan
memberikannya kepada pelanggan
26
Nama Use Case : Melihat dan memilih paket wisata
Aktor : Kasir
Type : Primary
Tujuan : Melihat paket yang tersedia dan pelangan melakukan
pemilihan paket
Deskripsi : 1. Kasir memberitahukan daftar paket yang tersedia kepada
pelanggan
2. Sistem menampilkan daftar bis yang terpakai dan tidak
terpakai
Pre – Condition : Aktor berada pada menu daftar paket wisata
Post – Condition : Sistem akan menyimpan pilihan pelanggan
27
paket wisata
2. Aktor menekan tombol”Update
Paket
3. Sistem akan menampilkan rincian
daftar paket wisata yang lama
28
5.2 Perancangan Basis Data
29