BAB II LANDASAN TEORI 2.1 Plagiarisme Plagiarisme adalah

advertisement
BAB II
LANDASAN TEORI
2.1
Plagiarisme
Plagiarisme adalah penggunaan ulang dari ide atau karya orang lain tanpa
menyantumkan sumber asalnya (Abdi et al, 2015). Sedangkan menurut
Sastroasmoro (2007) plagiarisme merupakan tindakan pencurian atau kebohongan
intelektual yang dilakukan secara sengaja maupun tidak sengaja dalam pembuatan
karya ilmiah. Plagiarisme dianggap tindakan kriminal karena mencuri hak cipta
dari karya orang lain.
Di Indonesia sendiri hak cipta dilindungi dalam Undang-Undang Republik
Indonesia Nomor 19 Tahun 2002 Tentang Hak Cipta. Oleh karena itu tindakan
plagiarisme atau plagiat sebisa mungkin harus kita hindari. Jika dilihat dari sisi
pembaca plagiarisme tidak hanya merupakan masalah melanggar hak cipta atau
kepemilikan,
namun
juga
tindakan
membohongi
yang
menimbulkan
kesalahpahaman keaslian dari penulis yang sebenarnya.
Plagiarisme biasanya terjadi di dalam dunia pendidikan, khususnya dalam
pengerjaan karya tulis ilmiah. Mahasiswa/siswa dituntut untuk menyelesaikan
karya ilmiahnya dalam waktu dekat sehingga mereka mencari jalan pintas untuk
melakukan copy-paste atas karya ilmiah orang lain. Hal ini merupakan salah satu
pemicu utama terjadinya plagiarisme dalam karya ilmiah.
Selain hal tersebut rendahnya minat baca dan minat melakukan analisis
merupakan faktor lain yang mendorong dilakukannya tindak plagiarisme. Dan
juga kurangnya perhatian dari para guru ataupun dosen tentang persoalan
plagiarisme menambah semakin maraknya plagiarisme terjadi.
Awal plagiarisme biasa terjadi yaitu pada pendidikan tahap dasar. Pada
tahap dasar yang biasa terjadi adalah dimana meniru terjadi pada tahap analitis
(pemeriksaan), sintetis (penyimpulan), improvisatif (pemanfaatan), kreatif
(memiliki daya cipta), hingga tahap inovatif (menghasilkan ide).
7
http://digilib.mercubuana.ac.id/
8
Sistem pendeteksian plagiarisme dapat diaplikasikan untuk jurnal, artikel,
novel, essay, maupun bahasa pemrograman (Kurniawati & Wicaksana, 2008).
Menurut Telepovska dan Gajdos (2010) aplikasi pendeteksian tersebut dapat
mengunakan sistem lokal (terisolasi secara offline dan hanya menggunakan
database individu) ataupun menggunakan sistem global (berjalan secara online
dan menggunakan servis internet sehingga dokumen yang dicari lebih beragam).
2.1.1 Bentuk Plagiarisme
Bentuk plagiarisme yang biasa terjadi menurut Clough (2003) yaitu :
1.
Plagiarisme kata per kata, merupakan penyalinan kalimat secara
langsung dari sebuah dokumen teks tanpa adanya pengutipan atau
perizinan.
2.
Plagiarisme parafrase, merupakan penulisan ulang dengan mengubah
kata atau sintaksis, tetapi teks aslinya masih dapat dikenali.
3.
Plagiarisme sumber sekunder, merupakan perbuatan mengutip kepada
sumber
asli
yang
didapat
dari
sumber
sekunder
dengan
menghiraukan teks asli dari sumber yang sebenarnya.
4.
Plagiarisme struktur sumber, merupakan penyalinan/penjiplakan
struktur suatu argumen dari sebuah sumber.
5.
Plagiarisme ide, merupakan penggunaan ulang suatu
gagasan/pemikiran asli dari sebuah sumber teks tanpa bergantung
bentuk teks sumber.
6.
Plagiarisme authorship, merupakan pembubuhan nama sendiri secara
langsung pada hasil karya orang lain.
Bila dilihat dari berbagai macam bentuk-bentuk plagiarisme diatas, dapat
disimpulkan bahwa tindakan plagiarisme yang sering terjadi dalam dunia
pendidikan lebih cenderung kepada kegiatan menggunakan kembali suatu
dokumen teks berupa kata/kalimat dari suatu sumber yang tidak mengikuti kaidah
tata aturan hak cipta, seperti aturan pengutipan (citation) ataupun ketidakjelasan
sumber/pengarang asli (bibliography).
http://digilib.mercubuana.ac.id/
9
2.1.2 Kriteria Plagiarisme
Terdapat kriteria-kriteria tertentu yang digunakan untuk menentukan
apakah sebuah penggunaan informasi termasuk dalam tindak plagiarisme atau
tidak. Hal-hal yang dapat digolongkan sebagai plagiarisme adalah sebagai berikut:
1.
Mengakui gagasan/ide orang lain sebagai gagasan/ide sendiri.
2.
Mengakui penemuan orang lain sebagai penemuan sendiri.
3.
Mengakui karya tulis orang lain sebagai karya tulis sendiri.
4.
Meringkas atau mengutip karya orang lain tanpa menyebutkan
sumbernya.
5.
Mengakui karya kelompok sebagai kepunyaan atau hasil sendiri,
menyajikan tulisan yang sama dalam rangka yang berbeda tanpa
menyebutkan darimana asalnya.
6.
Auto plagiarisme, yakni seseorang yang memuat karyanya sendiri
yang sama persis di dua atau lebih media.
Sedangkan yang bukan termasuk tindak plagiarisme adalah:
1.
Menggunakan informasi yang merupakan fakta atau hal yang umum
digunakan.
2.
Mengutip karya orang lain (dengan merubah kalimat atau parafrase)
dengan menyebutkan sumbernya.
3.
Menuliskan kembali gagasan orang lain dengan menyebutkan
sumbernya.
2.1.3 Threshold Plagiarisme
Threshold plagiarisme merupakan nilai ambang batas untuk menentukan
apakah dokumen tersebut termasuk kedalam tindak plagiarisme atau tidak.
Menurut Sastroasmoro (2007) mengemukakan bahwa terdapat 3 klasifikasi dalam
threshold plagiarisme, yakni :

Plagiarisme ringan
: < 30%

Plagiarisme sedang : 30% - 70%

Plagiarisme berat
: > 70%
http://digilib.mercubuana.ac.id/
10
Namun angka-angka tersebut tentu dibuat secara arbitrer berdasarkan
“kepantasan” tanpa dasar kuantitatif yang definitif.
2.2
Dokumen Digital
Dokumen merupakan suatu sarana transformasi informasi dari satu orang
ke orang lain atau dari suatu kelompok ke kelompok lain. Dokumen meliputi
berbagai kegiatan yang diawali dengan bagaimana suatu dokumen dibuat,
dikendalikan, diproduksi, disimpan, didistribusikan, dan digandakan. Dokumen
sangat penting, baik dalam kehidupan sehari-hari, organisasi, maupun bisnis.
(Kristanto, 2003).
Dokumen digital merupakan setiap informasi elektronik yang dibuat,
diteruskan, dikirimkan, diterima, atau disimpan dalam bentuk analog, digital,
elektromagnetik, optikal, atau sejenisnya, yang dapat dilihat, ditampilkan dan/atau
didengar melalui komputer atau sistem elektronik, termasuk tetapi tidak terbatas
pada tulisan, suara atau gambar, peta, rancangan, foto atau sejenisnya, huruf,
tanda, angka, kode akses, simbol atau perforasi yang memiliki makna atau arti
atau dapat dipahami oleh orang yang mampu memahaminya. (Hariyanto, 2009).
Dokumen digital dapat dihasilkan dengan menggunakan aplikasi pengolah
kata (word processor) seperti Microsoft Word, Notepad atau OpenOffice untuk
menghasilkan sebuah berkas komputer dengan ekstension yang berbeda-beda
sesuai dengan aplikasi pengolah kata yang digunakan.
2.2.1
Pengolahan Dokumen Digital
Untuk mengolah suatu dokumen digital, dibutuhkan perangkat lunak
(software) khusus yang sering disebut dengan perangkat lunak pengolah kata
(Word Processor). Perangkat lunak pengolah kata adalah suatu aplikasi komputer
yang digunakan untuk menyusun, menyunting, memformat dan mencetak segala
jenis bahan yang dapat dicetak. Adapun contoh dari perangkat lunak pengolah
kata yang sering digunakan adalah Microsoft Word, OpenOffice.org Writer,
Notepad.
http://digilib.mercubuana.ac.id/
11
Microsoft Word
1.
Microsoft Word atau sering disebut dengan Microsoft Office Word
adalah perangkat lunak pengolah kata (word processor) yang diproduksi
oleh Microsoft. Perangkat lunak ini pertama diterbitkan pada tahun 1983
dengan
nama
Multi-Tool
Word
untuk
Xenix.
Seiring
dengan
perkembangan zaman, versi-versi lain kemudian dikembangkan untuk
berbagai sistem operasi, misalnya DOS (1983), Apple Macintosh (1984),
SCO UNIX, OS/2, dan Microsoft Windows (1989). Perangkat lunak ini
kemudian berubah nama menjadi Microsoft Office Word setelah menjadi
bagian dari Microsoft Office System 2003 dan 2007.
Konsep yang digunakan oleh Microsoft Office Word adalah
WYSIWYG (What You See Is What You Get). WYSIWYG merupakan
sebuah konsep sistem dimana konten yang sedang disunting akan terlihat
sama persis dengan hasil keluaran akhir, yang mungkin berupa dokumen
yang dicetak, halaman web, slide presentasi, atau bahkan sebuah animasi
bergerak.
Microsoft Office Word merupakan perangkat lunak pengolah kata
pertama yang mampu menampilkan tulisan cetak miring atau cetak tebal
pada IBM PC sementara perangkat lunak pengolah kata lain hanya
menampilkan teks dengan kode markup dan warna untuk menandai
pemformatan cetak tebal atau miring.
2.
OpenOffice.org Writer
OpenOffice.org Writer adalah salah satu komponen dalam
OpenOffice.org yang berfungsi untuk mengedit dokumen adapun
dokumen format yang bisa digunakan adalah .doc .odt .rtf dan dapat
dikonversi dalam bentuk .pdf dengan sekali klik. OpenOffice.org Writer
memiliki fitur pengolah kata modern seperti AutoCorrect, AutoComplete,
AutoFormat, Styles and Formatting, Text Frames, Linking, Tables of
Contents, Indexing, Bibliographical References, Illustrations dan Tables.
Perangkat lunak ini sangat mudah digunakan untuk membuat
memo cepat, sangat stabil dan mampu untuk membuat dokumen dengan
banyak halaman serta banyak gambar dan judul heading. Selain itu,
http://digilib.mercubuana.ac.id/
12
kelebihannya adalah pengaturan formating untuk bullet and number yang
sangat mudah (diatur terintegrasi melalui satu toolbar).
3.
Notepad
Notepad adalah sebuah aplikasi text editor pada Microsoft Windows
yang bisa digunakan oleh pengguna untuk membuat sebuah dokumen.
Notepad sudah ada sejak Windows 1.0 pada tahun 1985 sampai pada
sekarang ini yaitu Windows 10 dengan fungsi yang masih tetap sama.
Notepad
hanya bisa membuat dokumen yang berisi teks saja.
Biasanya dokumen yang disimpan dari notepad ini berjenis ekstensi .txt.
Notepad tidak memiliki fungsi tags dan styles seperti aplikasi pengolah
kata lainnya karena fungsi notepad sebenarnya adalah untuk membuat
kode program yang akan dijalankan pada system DOS pada Microsoft
Windows dan nantinya kode program tadi akan di-compile melalui
Command Prompt.
Namun sekarang ini notepad sudah banyak digunakan tidak hanya
untuk menulis kode program saja, melainkan banyak yang menggunakan
untuk membuat catatan dalam sehari-hari dan bahkan notepad bisa
digunakan bagi kalangan yang tidak bertanggung jawab untuk membuat
virus.
2.2.2 Format Dokumen Digital
Dokumen digital memiliki beberapa jenis ekstensi sesuai dengan aplikasi
pengolah dokumen tersebut. Ada beberapa yang sering kita jumpai yaitu .docx,
.doc dan .txt
1.
DOCX
Office Open XML (OOXML) atau yang lebih dikenal dengan
DOCX merupakan format file standar untuk dokumen-dokumen yang
dibuat
oleh Microsoft Word. Format tersebut mulai digunakan pada
Microsoft Word 2007 hingga Microsoft Word terbaru yakni Microsoft
http://digilib.mercubuana.ac.id/
13
Word 2016. Format ini menggantikan format yang sebelumnya digunakan
yaitu DOC.
Versi pertama dari format ini (bersama dengan Office Open XML
dokumen jenis lain PPTX dan XLSX) telah berstandar ECMA-376 pada
tahun 2006. Versi kedua diluncurkan dan telah berstandar ISO/IEC pada
April 2008.
Gambar 2.1 Contoh file DOCX
2.
DOC
Ekstensi doc permata kali muncul pada dokumen yang digunakan
oleh pengolah kata WordPerfect yaitu pada tahun 1980. DOC merupakan
singkatan dari dokumen, adalah sebuah ekstensi file yang digunakan pada
dokumen pengolah kata biasanya digunakan pada Microsoft Word. Pada
tahun 1990-an Microsoft memilih menggunakan ekstensi *.doc pada
pengolah kata Microsoft Word.
File dengan ekstensi DOC bervariasi, pada Microsoft 97 sampai
dengan 2003 masih menggunakan file dengan berekstensi *.doc. Dan
mulai dari Microsoft Word 2007 hingga seterusnya berubah menjadi
ekstensi DOCX.
http://digilib.mercubuana.ac.id/
14
File ekstensi *.doc merupakan ekstensi asli yang dihasilkan dari
Microsoft Word tetapi file ekstensi ini tidak hanya dapat dibaca dan diedit
dengan menggunakan pengolah kata Microsoft Word saja, tetapi pengolah
kata
lainnya
juga
dapat
membaca
dan
membuatnya
seperti,
OpenOffice.org Writer, Google Docs, Apple Pages, dan AbiWord.
Gambar 2.2 Contoh file DOC
3.
TXT
Berkas ASCII atau teks biasa (bahasa Inggris: „plain text’) dalam
istilah komputer, adalah suatu jenis berkas komputer yang berupa teks
tidak terformat. Lawan dari jenis berkas ini adalah teks berformat. Jenis
berkas ini biasanya disunting dengan menggunakan editor teks. Berkas ini
biasanya
hanya
mengandung
teks-teks
yang
diformat
dengan
menggunakan pengkodean ASCII. Berkas ini hanya terdiri atas karakter,
angka, tanda baca, tabulasi, dan karakter pemisah baris (carriage return).
Dalam berkas ASCII, tidak ada pemformatan yang ekstensif seperti
dalam dokumen Microsoft Word atau Rich Text Format, melainkan
pemformatan yang digunakan hanyalah pemformatan standar yakni
ASCII. Dalam sistem operasi Windows, berkas ASCII ini dapat dibuat
dengan menggunakan program Notepad atau editor teks lainnya.
http://digilib.mercubuana.ac.id/
15
Jenis ekstensi yang digunakannya adalah .txt (default), .bat, .cmd,
.ini, .inf, dan masih banyak lainnya. Sistem operasi lainnya juga
mengimplementasikannya, tapi beberapa sistem operasi (utamanya adalah
keluarga UNIX) tidak mengharuskan adanya ekstensi berkas seperti pada
Windows. Normalnya, sebagian besar berkas dalam sistem operasi UNIX
merupakan berkas ASCII, kecuali berkas yang dapat dieksekusi (program).
Berkas ASCII umumnya digunakan sebagai berkas teks biasa,
skrip, kode sumber sebuah program (source code sebuah bahasa
pemrograman), berkas konfigurasi (terutama dalam keluarga sistem
operasi UNIX), atau berkas teks lainnya. Bahkan, banyak juga orang yang
membuat gambar dengan menggunakan berkas ASCII, yang sering disebut
sebagai ASCII Art.
Karena berkas ASCII mengandung teks yang tidak diformat,
berkas tersebut dapat dipahami banyak sistem operasi, karena memang
ASCII adalah sebuah standar internasional (Windows, Macintosh, dan
UNIX mendukung sepenuhnya standar ini). Akibatnya, berkas tersebut
dapat menjadi sangat berguna dalam rangka berbagi informasi antar
platform atau aplikasi.
Gambar 2.3 Contoh file TXT
http://digilib.mercubuana.ac.id/
16
2.3
Approximate String Matching
Approximate String Matching merupakan metode operasi pencocokan
string dengan dasar kemiripan berdasarkan pada segi penulisannya (jumlah
karakter dan susunan karakter), tingkat kemiripan ditentukan oleh jauh tidaknya
jarak beda penulisan dua buah string yang dibandingkan tersebut.
Metode ini terdiri dari beberapa operasi yakni operasi penghapusan dalam
string, operasi penyisipan dalam string, dan operasi penukaran dalam string.
Operasi – operasi ini digunakan untuk menghitung jumlah perbedaan yang
diperlukan untuk pertimbangan kecocokan suatu string dengan string sumber,
jumlah perbedaan tersebut diperoleh dari penjumlahan semua pengubahan yang
terjadi dari masing-masing operasi.
Metode ini biasanya diaplikasikan dalam berbagai algoritma, seperti
Hamming, Levenshtein, Damerau-Levenshtein, Jaro-Winkler, Wagner-Fischer,
dan lain-lain.
2.3.1
Operasi Penghapusan
Operasi penghapusan dilakukan dengan menghapus karakter pada indeks
tertentu untuk menyamakan string sumber (S) dengan string target (T), misalnya
S = networking dan T = network. Penghapusan dilakukan untuk karakter I pada
lokasi ke-8, penghapusan karakter n pada lokasi ke-9, penghapusan karakter g
pada lokasi ke-10. Operasi penghapusan tersebut menunjukkan transformasi S ke
T, ilustrasinya sebagai berikut :
2.3.2
1
2
3
4
5
6
7
8
9
10
T
=
n
e
t
w
o
r
k
-
-
-
S
=
n
e
t
w
o
r
k
i
n
g
Operasi Penyisipan
Operasi penyisipan dilakukan dengan menyisipkan karakter pada indeks
tertentu untuk menyamakan string sumber (S) dengan string target (T), misalnya
http://digilib.mercubuana.ac.id/
17
S = program dan T = pemrograman. Operasi penyisipan dapat dilakukan dengan
menyisipkan e pada posisi 2, menyisipkan m pada posisi 3, menyisipkan a pada
posisi 10 dan menyisipkan n pada posisi 11. Yang dapat diilustrasikan sebagai
berikut :
1
2
3
4
5
6
7
8
9
10
11
T
=
p
e
m
r
o
g
r
a
m
a
n
S
=
p
-
-
r
o
g
r
a
m
-
-
e
m
a
n
2.3.3 Operasi Penukaran
Operasi penukaran dilakukan dengan menukar karakter pada indeks
tertentu untuk menyamakan string sumber (S) dengan string target (T), misalnya
S = komputer dan T = computer. String S ditransformasikan menjadi T dengan
melakukan penggantian (substitusi) pada posisi ke-1. Huruf c ditukar menjadi k.
Prosesnya dapat diilustrasikan sebagai berikut :
1
2
3
4
5
6
7
8
S
=
k
o
m
p
u
t
e
r
T
=
c
o
m
p
u
t
e
r
k
2.4
Algoritma Levenshtein Distance
Algoritma Levenshtein Distance pertama kali ditemukan oleh seorang
ilmuwan yang bernama Vladimir Levenshtein pada tahun 1966. Algoritma ini
digunakan untuk menbandingkan kesamaan diantara dua buah string dengan
menghitung Distance diantara dua buah string tersebut ( Lhoussain et al, 2015).
http://digilib.mercubuana.ac.id/
18
Distance sendiri adalah jumlah operasi yang digunakan untuk mengubah
suatu bentuk string ke bentuk string yang lain. Sebagai contohnya terdapat string
“komputer” dan “computer” keduanya memiliki distance 1 karena hanya perlu
dilakukan satu operasi saja untuk mengubah string satu ke string yang lain yakni
dengan melakukan satu penukaran karakter „c‟ menjadi „k‟.
Algoritma Levenshtein Distance digunakan diberbagai macam bidang
seperti mesin pencari (search engine), pengecek ejaan (spell checking), pengenal
pembicaraan (speech recognition), pengucapan dialek, pendeteksi pemalsuan, dan
lain-lain. Terdapat tiga operasi yang digunakan dalam algoritma ini meliputi
operasi penghapusan, penyisipan, dan penukaran.
Selisih perbedaan antar string dapat diperoleh dengan memeriksa apakah
suatu string sumber sesuai dengan string target. Nilai selisih perbedaan ini sering
disebut juga sebagai Edit Distance. Jarak Levenshtein antar string s dan string t
tersebut adalah fungsi D yang memetakan (s,t) ke suatu bilangan real
nonnegative. Sebagai contoh diberikan dua buah string s = s(1),s(2),s(3),…s(m)
dan t = t(1),t(2),t(3),…t(n) dengan | s | = m dan | t | = n sepanjang alphabet V
berukuran r sehingga s dan t anggota dari V*. S(j) adalah karakter pada posisi ke-j
pada string s dan t(i) adalah karakter pada posisi ke-i pada string t. Sehingga Edit
Distance atau jarak Levenshtein dapat didefinisikan sebagai (Harahap, 2013) :
(
) =
(
)
dimana
(
)
∑ (
:
s1,t1
(
)
(
)
)
( )
( )
V untuk i = 1,2,…,x
d(s1,t1) = 0
jika s1 = t1 dan
d(s1,t1) = 1
jika s1 ≠ t1
D(s,t) adalah banyaknha operasi minimum dari operasi penghapusan,
penyisipan, dan penukaran untuk menyamakan string s dan t. Pada implementasi
pencocokan antar string, ketiga operasi tersebut dapat dilakukan sekaligus untuk
http://digilib.mercubuana.ac.id/
19
menyamakan string sumber dengan string target seperti pada contoh berikut ini.
Jika diberikan string sumber (S) = “jarak” dan (T) = “penjara” merupakan string
target, dengan | s | = 5, | t | = 7, maka proses pencocokan string dapat
diilustrasikan sebagai berikut :
1
2
3
4
5
6
7
8
T
=
p
e
n
j
a
r
a
-
S
=
-
-
-
j
a
r
a
k
p
e
n
k
Pada contoh di atas terlihat bahwa proses penyisipan karakter „p‟ pada
indeks ke-1, „e‟ pada indeks ke-2 dan „n‟ pada indeks ke-3, penghapusan karakter
„k‟ pada indeks ke-8 . Maka jarak Levenshtein antara s dan t adalah sebagai
berikut ini :
(
)
∑ (
)
= d(s1,t1) + d(s2,t2) + d(s3,t3) + d(s4,t4) + d(s5,t5) + d(s6,t6) + d(s7,t7) +
d(s8,t8)
= d(-,p) + d(-,e) + d(-,n) + d(j,j) + d(a,a) + d(r,r) + d(a,a) + d(k,-)
=1+1+1+0+0+0+0+1
=4
Sehingga jarak Levenshtein antara string s = “pemrograman” dan t =
“algoritma” adalah D(s,t) = 4.
2.5
Pemrograman Java
Pemrograman adalah salah satu ilmu penting bagi mahasiswa komputer
yang secara garis besar hal ini merupakan dasar mengubah abstraksi menjadi
kenyataan dalam perhitungan logika komputer,menemukan sintaksis, logis, dan
penyelesaian pada bugs (Castro et al, 2013).
http://digilib.mercubuana.ac.id/
20
Pemrograman Java sendiri adalah bahasa pemrograman tingkat tinggi yang
berorientasi objek dan program java tersusun dari bagian yang disebut kelas.
Kelas terdiri atas metode-metode yang melakukan pekerjaan dan mengembalikan
informasi setelah melakukan tugasnya.
Para pemrogram Java banyak mengambil keuntungan dari kumpulan
kelas di pustaka kelas Java yang disebut dengan Java Application Programming
Interface (API). Kelas-kelas ini diorganisasikan menjadi sekelompok yang disebut
paket (package). Java API telah menyediakan fungsionalitas yang memadai untuk
menciptakan applet dan aplikasi canggih.
Jadi ada dua hal yang harus dipelajari dalam Java, yaitu mempelajari
bahasa Java dan bagaimana mempergunakan kelas pada Java API. Kelas
merupakan satu-satunya cara menyatakan bagian eksekusi program, tidak ada cara
lain. Pada Java program javac untuk mengkompilasi file kode sumber Java
menjadi kelas-kelas bytecode. File kode sumber mempunyai ekstensi *.java.
Kompilator javac menghasilkan file bytecode kelas dengan ekstensi *.class.
Interpreter merupakan modul utama sistem Java yang digunakan aplikasi Java dan
menjalankan program bytecode Java.
Gambar 2.4 Alur pemrograman Java
Sumber : Buku Java Education Network Indonesia, 2007
Java adalah bahasa pemrograman berorientasi objek yang dikembangkan
oleh Sun Microsystems sejak tahun 1991. Bahasa ini dikembangkan dengan model
yang mirip dengan bahasa C++ dan Smalltalk, namun dirancang agar lebih mudah
dipakai dan platform independent, yaitu dapat dijalankan di berbagai jenis sistem
http://digilib.mercubuana.ac.id/
21
operasi dan arsitektur komputer. Bahasa ini juga dirancang untuk pemrograman di
internet sehingga dirancang agar aman dan portabel.
2.5.1 Platform Independent
Platform independent berarti program yang ditulis dalam bahasa Java
dapat dengan mudah dipindahkan antar berbagai jenis sistem operasi dan berbagai
jenis arsitektur komputer. Aspek ini sangat penting untuk dapat mencapai tujuan
Java sebagai bahasa pemrograman internet dimana sebuah program akan
dijalankan oleh berbagai jenis komputer dengan berbagai jenis sistem operasi.
Sifat ini berlaku untuk level source code dan binary code dari program
Java. Berbeda dengan bahasa C dan C++, semua tipe data dalam bahasa Java
mempunyai ukuran yang konsisten di semua jenis platform. Source code program
Java sendiri tidak perlu dirubah sama sekali jika ingin mengkompile ulang di
platform lain. Hasil dari mengkompile source code Java bukanlah kode mesin
atau instruksi prosesor yang spesifik terhadap mesin tertentu, melainkan berupa
bytecode yang berupa file berekstensi .class. Bytecode tersebut dapat langsung di
eksekusi di tiap platform yang dengan menggunakan Java Virtual Machine (JVM)
sebagai interpreter terhadap bytecode tersebut (Castro et al, 2013).
Kompiler dan interpreter untuk program Java berbentuk Java Development
Kit (JDK) yang diproduksi oleh Sun Microsystems. JDK ini dapat didownload
gratis dari situs java.sun.com. Interpreter untuk program Java sendiri sering juga
disebut Java Runtime atau Java Virtual Machine. Interpreter Java, tanpa
kompilernya, disebut Java Runtime Environment (JRE) dapat didownload juga di
situs yang sama. Untuk mengembangkan program Java dibutuhkan JDK,
sementara jika hanya ingin menjalankan bytecode Java cukup dengan JRE saja.
2.5.2
Library Java
Selain kompiler dan interpreter, bahasa Java sendiri memiliki library yang
cukup besar yang dapat mempermudah User dalam membuat sebuah aplikasi
dengan cepat. Library ini sudah mencakup untuk grafik, desain tampilan,
kriptografi, jaringan, suara, basis data, dan lain-lain (Castro et al, 2013).
http://digilib.mercubuana.ac.id/
22
2.5.3
Source Code
Source code (atau disebut juga source) adalah kumpulan pernyataan atau
deklarasi bahasa pemrogramman komputer yang ditulis dan dapat di baca
manusia. Source code memungkinkan programmer untuk berkomunikasi dengan
komputer menggunakan beberapa perintah yang telah terdefinisi (Castro et al,
2013).
Source Code merupakan sebuah program yang biasanya dibuat dalam satu
atau lebih file teks, kadang-kadang disimpan dalam database yang disimpan
sebagai prosedur dan dapat juga muncul sebagai potongan kode yang tercetak di
buku atau media lainnya. Perlu diingat bahwa bahasa Java bersifat case sensitive,
sehingga User harus memperhatikan penggunaan huruf besar dan kecil. Selain itu
penulisan source code program tidak harus memperhatikan bentuk tertentu,
sehingga User bisa saja menuliskan semua baris source code tersebut dalam satu
baris asal User tidak lupa membubuhkan tanda titik koma (;), atau menuliskan
tiap kata dalam satu baris tersendiri.
2.6
Netbeans
Netbeans adalah salah satu aplikasi IDE yang digunakan programmer
untuk menulis, mengompile, mencari kesalahan, dan menyebarkan program.
Netbeans ditulis dalam bahasa Java namun dapat juga mendukung bahasa
pemrogramman lain. Netbeans Merupakan IDE (Integrated Development
Environment) berbasiskan Java dari Sun Microsystems yang berjalan diatas Swing.
Swing merupakan sebuah teknologi Java untuk pengembangan aplikasi Desktop
yang dapat berjalan di berbagai macam platforms seperti Windows, Linux, Mac
OS X dan Solaris.
http://digilib.mercubuana.ac.id/
23
Gambar 2.5 Tampilan antar muka Netbeans
2.7
Rekayasa Perangkat Lunak
Rekayasa Perangkat Lunak adalah suatu disiplin ilmu yang membahas
semua aspek produksi perangkat lunak, mulai dari tahapan awal yaitu analisa
kebutuhan pengguna/user, menentukan spesifikasi dari kebutuhan pengguna,
desain, pengkodean, pengujian sampai pemeliharaan sistem setelah digunakan.
Menurut Pressman (1997) Rekayasa Perangkat Lunak adalah suatu disiplin
ilmu yang mengintegrasikan proses/prosedur, metode, dan perangkat tools untuk
pembangunan perangkat lunak komputer.
Tujuan dari Rekayasa Perangkat Lunak ini adalah :
1. Memperoleh biaya produksi perangkat lunak yang rendah.
2. Menghasilkan pereangkat lunak yang kinerjanya tinggi, andal dan tepat
waktu.
3. Menghasilkan perangkat lunak yang dapat bekerja pada berbagai jenis
platform.
4. Menghasilkan perangkat lunak yang biaya perawatannya rendah.
2.7.1 Metode Waterfall
Waterfall merupakan salah satu metode pengembangan perangat lunak
yang banyak digunakan. Menurut Sommerville (2007), waterfall merupakan salah
http://digilib.mercubuana.ac.id/
24
satu model proses perangkat lunak yang mengambil kegiatan proses dasar seperti
spesifikasi, pengembangan, validasi dan evolusi dengan mempresentasikannya
sebagai fase-fase proses yang berbeda seperti analisis dan definisi persyaratan,
perancangan perangkat lunak, implementasi dan pengujian unit, integrasi dan
pengujian sistem, operasi dan pemeliharaan.
Gambar 2.6 Metode Waterfall Sommerville
Sumber : Buku Software Engineering 8th Edition, 2007
Tahapan Metode Waterfall :
1. Requirement Definition
Proses mengumpulkan informasi kebutuhan sistem/perangkat lunak
melalui konsultasi dengan user system. Proses ini mendefinisikan
secara rinci mengenai fungsi-fungsi, batasan dan tujuan dari perangkat
lunak sebagai spesifikasi sistem yang akan dibuat.
2. System and Software Design
Proses perancangan sistem difokuskan pada empat atribut, yaitu
struktur data, arsitektur perangkat lunak, representasi antar muka, dan
detail (algoritma) prosedural. Yang dimaksud struktur data adalah
representasi dari hubungan logis antara elemen-elemen data individual.
http://digilib.mercubuana.ac.id/
25
3. Implementation and Unit Testing
Pada tahap ini, perancangan perangkat lunak direalisasikan sebagai
program atau unit program. Kemudian pengujian unit melibatkan
verifikasi bahwa setiap unit program telah memenuhi spesifikasinya.
4. Integration and System Testing
Unit program/program individual diintegrasikan menjadi sebuah
kesatuan sistem dan kemudian dilakukan pengujian. Dengan kata lain,
pengujian ini ditujukan untuk menguji keterhubungan dari tiap-tiap
fungsi perangkat lunak untuk menjamin bahwa persyaratan sistem
telah terpenuhi. Setelah pengujian sistem selesai dilakukan, perangkat
lunak dikirim ke pelanggan/user.
5. Operational and Maintenance
Tahap ini biasanya memerlukan waktu yang paling lama. Sistem
diterapkan (di-install) dan dipakai. Pemeliharaan mencakup koreksi
dari beberapa kesalahan yang tidak diketemukan pada tahapan Analisis
dan definisi persyaratan Perancangan sistem dan perangkat lunak
Implementasi dan pengujian unit Integrasi dan pengujian sistem
Operasi dan pemeliharaan 9 sebelumnya, perbaikan atas implementasi
unit
sistem
dan
pengembangan
pelayanan
sistem,
sementara
persyaratan-persyaratan baru ditambahkan.
2.7.2 Flowchart
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan
dan hubungan antar proses beserta instruksinya. Gambaran ini dinyatakan dengan
simbol. Dengan demikian setiap simbol menggambarkan proses tertentu.
Sedangkan hubungan antar proses digambarkan dengan garis penghubung.
Flowchart ini merupakan langkah awal pembuatan program.
Dengan adanya flowchart urutan poses kegiatan menjadi lebih jelas. Jika
ada penambahan proses maka dapat dilakukan lebih mudah. Setelah flowchart
selesai disusun, selanjutnya pemrogram (programmer) menerjemahkannya ke
bentuk program dengan bahasa pemrograman.
http://digilib.mercubuana.ac.id/
26
Menurut Jogiyanto (2005) Bagan alir (flowchart) adalah bagan (chart)
yang menunjukan hasil (flow) didalam program atau prosedur sistem secara
logika. Bagan alir digunakan terutama untuk alat bantu komunikasi dan untuk
dokumentasi. Serta Menurut Ladjamuddin (2006) Flowchart adalah bagan-bagan
yang mempunyai arus yang menggambarkan langkah-langkah penyelsaian suatu
masalah. Flowchart merupakan cara penyajian dari suatu algoritma.
Tujuan Utama dari penggunaan Flowchart adalah untuk menggambarkan
suatu tahapan penyelesaian masalah secara sederhanna, terurai, rapi dan jelas
dengan menggunakan simbol-simbol yang standar. Tahap penyelesaian masalah
yang disajikan harus jelas, sederhana, efektif dan tepat.
Tabel 2.1 Simbol-simbol Flowchart
SIMBOL
NAMA
FUNGSI
TERMINATOR
Permulaan/akhir program
GARIS ALIR
(FLOW LINE)
Arah aliran program
PREPARATION
Proses inisialisasi/pemberian
harga awal
PROSES
Proses perhitungan/proses
pengolahan data
INPUT/OUTPUT
DATA
Proses input/output data,
parameter, informasi
PREDEFINED
PROCESS
(SUB PROGRAM)
Permulaan sub program/proses
menjalankan sub program
DECISION
Perbandingan pernyataan,
penyeleksian data yang
memberikan pilihan untuk
langkah selanjutnya
http://digilib.mercubuana.ac.id/
27
2.7.3
ON PAGE
CONNECTOR
Penghubung bagian-bagian
flowchart yang berada pada satu
halaman
OFF PAGE
CONNECTOR
Penghubung bagian-bagian
flowchart yang berada pada
halaman berbeda
Metode Pengujian
Pengujian perangkat lunak sangat diperlukan dalam suatu system
informasi, dimana dengan melakukan suatu pengujian akan ditemukan kesalahan
atau error yang muncul dari system perangkat lunak tersebut. Dengan demikian
tentunya seorang programmer akan bisa mengetahui dan apa yang harus
dikerjakan selanjutnya. Metode yang banyak digunakan dalam pengujian
perangkat lunak yaitu metode White Box Testing dan Black Box Testing.
Penjelasan keduanya yaitu sebagai berikut :
1. White Box Testting
White Box digunakan untuk mengetahui cara kerja suatu perangkat
lunak secara internal yaitu dengan cara masuk kedalam modul untuk
meneliti kode-kode program yang ada, dan menganalisis apakah ada
kesalahan atau tidak. Jika ada modul yang menghasilkan output yang tidak
sesuai dengan proses bisnis yang dilakukan, maka baris-baris program,
variabel, dan parameter yang terlibat pada unit tersebut akan dicek satu
persatu dan diperbaiki, kemudian di-compile ulang. Pengujian dilakukan
untuk menjamin operasi-operasi internal sesuai dengan spesifikasi yang
telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang
dirancang.
2. Black Box Testting
Black Box digunakan untuk menguji fungsi-fungsi khusus dari
perangkat lunak yang dirancang. Kebenaran perangkat lunak yang diuji
hanya dilihat berdasarkan keluaran yang dihasilkan dari data atau kondisi
masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana
proses untuk mendapatkan keluaran tersebut. Dari keluaran yang
dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai
http://digilib.mercubuana.ac.id/
28
dapat diukur sekaligus dapat diiketahui kesalahan-kesalahannya. Tidak
seperti pengujian white box yang dilakukan pada awal proses pengujian,
pengujian black box cenderung diaplikasikan selama tahap akhir
pengujian. Karena pengujian black box memperhatikan struktur kontrol,
maka perhatian berfokus pada domain informasi (Bangwildan, 2013).
http://digilib.mercubuana.ac.id/
Download