6 BAB II LANDASAN TEORI 2.1 MANAJEMEN RISIKO Risiko dapat

advertisement
BAB II
LANDASAN TEORI
2.1 MANAJEMEN RISIKO
Risiko dapat disebut sebagai Suatu cara sistematis yang berhadapan dengan
potensi terjadinya kejadian. Risiko diasumsikan menjadi suatu ketidakpastian yang
dihubungkan dengan ramalan manapun dengan potensi terjadinya kejadian, kemudian
hanya ada ketidakpastian, sebab hanya pernah ada suatu ramalan kemungkinan
kejadian. Oleh karena itu, suatu risiko untuk ada, harus ada potensi untuk terjadinya.
Risiko adalah ukuran dari besarnya probabilitas kejadian (frekuensi) dan
konsekuensinya (dampak) yang berpengaruh terhadap tujuan proyek(Kerzner 1998).
Ada tiga komponen utama dalam resiko, yakni:
•
Kejadian (event)
•
Probabilitas dari kejadian (probability of occurrence)
•
Dampak dari kejadian tersebut (impact)
6
7
Gambar 2.1. Risiko dan Komponen Yang Membentuknya (Kerzner 1998)
Secara konseptual risiko dari setiap kejadian didifinisikan sebagai fungsi dari
ketidakpastian (uncertainty) dan kerusakan/kerugian (damage).
Risk = ƒ(event,uncertainty,damage)
Secara matematis dapat ditulis sebagai:
Risk = frekuensi x dampak
Berdasarkan dampaknya risiko terbagi atas beberapa tingkatan yakni yang
pertama risiko rendah (low risk) dimana dampak yang terjadi kecil dan tidak
mempengaruhi dari tujuan yang ada, yang kedua risiko sedang (moderate risk) dimana
dampaknya mulai terasa dan dapat mempengaruhi tujuan yang ada walaupun kurang
signifikan, sedangkan yang ketiga adalah risiko tinggi (high risk) dimana dampak yang
terasa sangat besar dan mempunyai pengaruh yang signifikan terhadap tujuan yang
ada. Pada risiko tinggi (high risk) ini perlu diperhitungkan secara benar sehingga dapat
diminimalkan kerugian yang mungkin terjadi.
Manajemen risiko secara sistematis dapat membantu dalam:
8
•
Identifikasi, mengira-ngira dan menggolongkan risiko, membuat risiko secara
eksplisit
•
Memfokuskan pada risiko terbesar suatu proyek
•
Membuat
informasi
untuk
pengambilan
keputusan
dalam
menentukan
sebuahketentuan
•
Meminimalisasikan potensial kerusakan yang akan terjadi
2.1.1
Lingkup Manajemen Risiko
Manajemen risiko merupakan bagian dari keseluruhan proses manajemen proyek.
Di dalam manajemen risiko semua faktor risiko secara sistematis akan diidentifikasi,
dikaji dan di respons, sehingga semua ketidakpastian dapat dihindari, dikurangi,
ditransfer ataupun diterima. Langkah-langkah dalam melaksanakan manajemen risiko
adalah:
•
Menetapkan konteks, dengan menentukan tujuan yang obyektif dari studi kasus ini
dan mengembangkannya di dalam suatu kerangka kerja untuk analisa selanjutnya.
•
Mengidentifikasi risiko, adalah dengan mengidentifikasi faktor-faktor risiko yang
berhubungan
dengan
aktivitas proyek
secara
komprehensif,
menerapkan
judgementdari berbagai sumber, melakukan initial screeningterhadap risk events
dan potential risk statusdan mengembangkannya menjadi suatu preliminary risk
models
9
•
Menganalisis risiko, dengan menganalisa kondisi yang ada untuk menentukan
dampak yang mungkin timbul dan memperkirakan tingkat risiko yang mungkin
terjadi.
•
Mengevaluasi resiko, dengan membandingkan tingkat risiko dengan kriteria yang
telah ditetapkan untuk melakukan perencanaan dalam merespon risiko dan skala
prioritasnya serta menetukan tingkat risiko yang dapat diterima ataupun yang
memerukan treatmentlebih lanjut
•
Merespons risiko, adalah merupakan usaha-usaha yang dilakukan agar semua
risiko yang telah diidentifikasi dan dievaluasi sudah mendapatkan penanganan
yang sesuai
2.1.2
Identifikasi Risiko
Identifikasi risiko adalah suatu proses untuk mengenali, menemukan, atau
mengidentifikasi risiko. Risiko dapat diidentifikasi melalui sumber dari risiko dan
dampak kerugian yang ditimbulkannya. Berdasarkan dampak tersebut dapat dinilai
risiko apa saja yang berpotensi besar dalam menimbulkan kerugian.
Risiko bisa diidentifikasi dan dikelompokkan berdasarkan sumber risiko kedalam
kategori berikut:
a. Risiko Alam
10
Berhubungan dengan risiko-risiko akibat kejadian alam, termasuk juga risiko yang
dikategorikan sebagai risiko Act of God. Kejadian alam seperti curah hujan tinggi
atau terjadinya bencana alam akan mengganggu operasional jalan tol.
b. Risiko Desain
Yaitu berupa risiko yang berhubungan dengan desain, spesifikasi, teknologi baru,
perubahan desain dan lain-lain. Desain yang salah atau tidak lengkap akan
menyulitkan pihak pelaksana pekerjaan.
c. Risiko Finansial dan Ekonomi
Kondisi perekonomian yang tidak stabil dapat menyulitkan/menghambat
kelangsungan operasional jalan tol. Ketidakstabilan perekonomian akan sangat
mengganggu kegiatan operasional karena kegiatan ini membutuhkan dukungan
finansial yang besar sehingga bila terjadi gangguan pada masalah finansial seluruh
kegiatan operasional dapat terganggu atau terhenti sama sekali.
d. Risiko berkaitan dengan Politik, Hukum dan Regulasi
Situasi politik, hukum dan peraturan sangat mempengaruhi iklim usaha di
suatunegara. Bila terjadi instabilitas politik, maka terdapat keraguan dari pihak
investor untuk menanamkan modalnya dan investor dapat menarik kembali modal
yang telah ditanamnya, hal ini tentu saja akan berdampak buruk pada kegiatan
operasional.
e. Risiko Konstruksi (Construction related risk)
Kegiatan pada suatu proyek konstruksi membutuhkan sumber daya yang besar,
tingkat penguasaan teknologi dan produk yang spesifik. Karakteristik khusus dari
proyek konstruksi ini mengandung potensi risiko yang tidak kecil. Pada tahap
11
pelaksanaan, berbagai risiko dapat muncul, hal ini timbul karena factor
ketidakpastian dalam tahapan ini bias sangat besar, bila kontraktor tidak memiliki
kemampuan yang cukup dalam bidang pelaksanaan.
f.
Risiko Lingkungan
Risiko yang berhubungan dengan lingkungan, seperti polusi, kerusakan
lingkungan dan lain-lain. Risiko-risiko lingkungan ini tidak hanya mempengaruhi
pihak kontraktor dan owner, tetapi juga mempengaruhi pihak ketiga, seperti
masyarakat umum juga bias dirugikan.
Risiko-risiko diatas dapat diklasifikasikan menurut berbagai sudut pandang dan
secara umum risiko dapat diklasifikasikan berdasarkan dari tipenya, yaitu :
1. Risiko murni dan spekulatif
Risiko murni sering disebut juga risiko statik adalah merupakan suatu konsep yang
melihat risiko sebagai suatu ketidakpastian yang dikaitkan dengan kemungkinan
adanya kerugian. Sedangkan risiko spekulatif atau risikodinamis adalah merupakan
risiko yang mempunyai kemungkinan memperoleh keuntungan atau mengalami
kerugian.
2. Risiko fundamental dan risiko khusus.
1. Risiko fundamental merupakan risiko yang kemungkinannya dapat timbul
pada hampir sebagian besar anggota masyarakat. Sifat dari risiko fundamental
antara lain bersifat bencana/catastropic. Risiko khusus adalah risiko yang
menimpa perorangan secara pribadi. Sifat dari risiko ini adalah bisa
dikendalikan, tidak selalu bersifat bencana dan umumnya dapat diasuransikan.
12
2.1.3
Alokasi Risiko
Setelah risiko diidentifikasi dalam sebuah proyek, risiko tersebut harus
dialokasikan kepada berbagai pihak yang terikat kontrak. Alokasi ini didasarkan
penilaian terhadap hubungan antara pihak-pihak yang terlibat dengan risiko tersebut.
Alokasi risiko merupakan penentuan dan pelimpahan tanggung jawab (responsibility)
terhadap suatu risiko.
Metode yang lebih sesuai untuk alokasi risiko adalah dengan berdasarkan kendali
atas kehadiran (occurence) dan efek yang ditimbulkannya apabila risiko itu terjadi.
Untuk beberapa kasus lebih cocok untuk mengalokasikan risiko berdasarkan sifat
risiko tersebut atau berdasarkan kemampuan atau ketidakmampuan suatu pihak.
2.1.4
Penanganan Risiko
Penanganan risiko yang sistematis adalah dengan menerapkan manajemen risiko
seperti yang disarankan Manajemen risiko adalah sebuah ilmu manajemen yang
bertujuan untuk melindungi aset, reputasi, dan profit dengan mengurangi kemungkinan
losses dan kerugian sebelum risiko tersebut terjadi dan untuk menjamin keuangan
melalui asuransi dan cara lain
manajemen risiko sebagai suatu proses formal untuk secara sistematis
mengidentifikasi, menganalisa dan menangani risiko sepanjang umur proyek untuk
mendapatkan tingkat penerimaan pengurangan risiko.
Proses manajemen risiko yang digunakan berupa :
13
1. Identifikasi risiko
2. Penilaian risiko
3. Penanganan risiko
Dalam model manajemen risikonya disamping adanya tiga tindakan sistematis
diatas juga menambahkan administrasi sistem dalam model manajemen risikonya.
Administrasi sistem meliputi corporate risk management policy dan adanya review dan
monitoring. Flanagan dalam model manajemen risikonya memasukkan unsure risk
attitude yaitu perilaku orang atau organisasi yang mempengaruhi keputusan dalam
menangani risiko. Proses manajemen risiko berupa siklus terus menerus yang
mengandung analisa risiko,strategi implementasi dan monitoring.
Identifikasi risiko dimulai dengan klasifikasi risiko. mengklasifikasikan risiko
menjadi pure riskdan speculative risk. katagori risiko menjadi risiko yang bisa
diprediksi dan risiko yang tidak terprediksi.
2.1.5
Penilaian Risiko dan Proses Manajemen Risiko
Dari lingkup manajemen resiko diatas dapat digambarkan dalam tahapan proses di
dalam melakukan penilaian risiko dan manajemen risiko yang merupakan suatu
rangkaian yang bersifat logis, sistematis dan aktivitas yang terdefinisi, sehingga
memungkinkan pengambil keputusan dalam melakukan identifikasi, pengukuran,
kuantifikasi, mengevaluasi dan mengelola risiko. Berikut ini adalah diagram alur yang
menjelaskan mengenai proses tersebut;
14
2.2 KLASIFIKASI
Klasifikasi adalah proses penemuan model (atau fungsi) yang menggambarkan
dan membedakan kelas data atau konsep yang bertujuan agar bisa digunakan untuk
memprediksi kelas dari objek yang label kelasnya tidak diketahui (. Algoritma
klasifikasi yang banyak digunakan secara luas, yaitu Decision/classification trees,
Bayesian classifiers/ Naïve Bayes classifiers, Neural networks, Analisa Statistik,
Algoritma Genetika, Rough sets, k-nearest neighbor, Metode Rule Based, Memory
based reasoning, dan Support vector machines (SVM).
Klasifikasi data terdiri dari 2 langkah proses. Pertama adalah learning (fase
training), dimana algoritma klasifikasi dibuat untuk menganalisa data training lalu
direpresentasikan dalam bentuk rule klasifikasi. Proses kedua adalah klasifikasi,
dimana data tes digunakan untuk memperkirakan akurasi dari rule klasifikasi. Proses
klasifikasi didasarkan pada empat komponen :
a. Kelas
Variabel dependen yang berupa kategorikal yang merepresentasikan ‘label’ yang
terdapat pada objek. Contohnya: resiko price cut, risiko pencapaian revenue /
sales.
b. Predictor
Variabel independen yang direpresentasikan oleh karakteristik (atribut) data.
Contohnya: kerugian finansial adalah 0 < kerugian <= 10 milyar, maka dampak
dari risiko adalah very low.
c. Training dataset
15
Satu set data yang berisi nilai dari kedua komponen di atas yang digunakan untuk
menentukan kelas yang cocok berdasarkan predictor.
d. Testing dataset
Berisi data baru yang akan diklasifikasikan oleh model yang telah dibuat dan
akurasi klasifikasi dievaluasi
2.3 REKAYASA PERANGKAT LUNAK
2.3.1
Pengertian Perangkat Lunak
Perangkat Lunak dapat didefinisikan sebagai (Andi Chairunnas dan Bennard
Mediarman, 2006):
1. Instruksi atau program komputer yang ketika dieksekusi melakukan performanse
dan fungsi yang diinginkan.
2. Struktur data yang memungkinkan memanipulasi informasi dengan baik.
3. Dokumen yang menggambarkan operasi kegunaan program.
Pengertian Rekayasa Perangkat Lunak diuraikan seperti berikut:
1. Suatu disiplin rekayasa yang berkonsentrasi terhadap seluruh apek produksi
pernagkat lunak.
2. Mengadopsi pendekatan yang sistematis dan terorganisir terhadap pekerjaannya
dan menggunakan tool yang sesuai serta teknik yang ditentukan berdasarkan
masalah yang akan dipecahkan, kendalan pengembangan dan sumber daya yang
tersedia.
16
Dalam pengembangannya, perangkat lunak mengalamu beberapa fase, yaitu:
1. Fase Definisi
Mendefinisikan informasi yang akan diproses, fungsi dan performansi yang
diinginkan, menetapkan inteface, merancang kendala dan batasan serta kriteria
validasi yang diperlukan untuk menunjang keberhasilan sistem.
2. Fase Pengembangan
Menjabarkan struktur data dan arsitektur perangkat lunak, prosedur rinci untuk
penerapan, proses penerjemahan ke dalam bahasa pemograman dan uji coba yang
dilakukan.
3. Fase Pemeliharaan
Jika terjadi perubahan terhadap pembetulan, perbaikan terhadap lingkungan dan
penambahan karena permintaah user.
2.3.2
Model Waterfall
Model ini adalah model klasik yang bersifat sistematis, berurutan dalam
membangun software. Metode ini membutuhkan pendekatan sistematis dan sekuensial
dalam pengembangan perangkat lunak, dimulai dari tingkat sistem dan kemajuan
melalui, desain, coding, testing dan pemeliharaan.
Fase-fase dalam model waterfall yaitu:
1. Definisi dan Analisa Kebutuhan
17
Mengumpulkan kebutuhan secara lengkap kemudian kemudian dianalisis dan
didefinisikan kebutuhan yang harus dipenuhi oleh program yang akan dibangun.
Fase ini harus dikerjakan secara lengkap untuk bisa menghasilkan desain yang
lengkap.
2. Desain Sistem dan Perangkat Lunak
Desain dikerjakan setelah kebutuhan selesai dikumpulkan secara lengkap.
3. Implementasi dan Uji Coba Unit
Desain program ditterjemahkan ke dalam kode-kode dengan menggunakan bahsa
pemrograman yang sudah ditentukan. Program yang dibangun langsung diuji baik
secara unit.
4. Integrasi dan Uji Coba Sistem
Penyatuan unit-unit program kemudian diuji secara keseluruhan (system testing).
5. Operasi dan Pemeliharaan
Mengoperasikan program dilingkungannya dan melakukan pemeliharaan, seperti
penyesuaian atau perubahaan karena adptasi dengan situasi sebenarnya.
Kelebihan dari waterfall adalah metode ini masih lebih baik dan praktis digunakan
walaupun sedah tergolong “kuno”, daripada tidak menggunakan metode apapun.
Selain itu, metode ini juga masih masuk akal jika kebutuhan awal sudah diketahui
dengan baik.
Sementara kekurangan dari model ini yaitu:
•
Pada kenyataannya, jarang engikuti urutan sekuensial seperti pada teori. Iterasi
sering terjadi menyebabkan masalah baru.
18
•
Sulit bagi pelanggan untuk menentukan semua kebutuhan secara eksplisit.
•
Pelanggan harus sabar, karena pembuatan perangkatr luinak akan dimulai ketika
tahap desain sudah selesai. Sedangkan pada tahap sebelum desain bisa memakan
waktu yang lama.
•
Kesalahan di awal tahap berakibat sangat fatal pada tahap berikutnya.
2.3.3
Pengujian Perangkat Lunak
Uji cobamerupakan proses pengerjaan yang bertujuan untuk mencari sebanyak
mungkin kesalahan dan menemuklan kesalhan yang sebelumnya tidak terduga dengan
waktu dan tenaga seminimal mungkin. Secara fakta uji coba adalah salah satu langkah
dari siklus pengembangan perangkat lunak yang jika ditinjau dari sudut pandanag
psikologu adalah penghancuran dibandingkan penyusunan.
Tujuan dari uji coba adalah :
1. Uji coba adalah proses pengerjaan yang bertujuan untuk mencari kesalahan.
2. Uji coba yang baik adalah uji coba yang berusaha untuk mencari kesalahan
sebanyak mungkin.
3. Uji coba yang baik atau berhasil adalah uji coba yang menemukan kesalahan yang
sebelumnya tidak diduga.
Ada dua singkat yang tersedia pada proses uji coba yaitu:
19
1. Konfigurasi perangkat lunak yang mencakup spesifikasi keperluan perangkat
lunak, spesifikasi peranvangan, test case dan program sumber.
2. Konfigurasi uji coba yang mencakup rencana dan prosedur uji coba dan hasil yang
diharapkan
2.3.3.1 White Box Testing
Merupakan metode perancangantest case yang menggunakan struktur control dari
perancangan procedural untuk mendapatkan test case. Dengan menggunakan metode
white box, akan dapat dipeoleh test case yang:
1. Menjamin keseluruhan independent path di dalam meoful yang dikerjakan
sekutang-kurangnya sekali.
2. Mengerjakan seluruh keputusan logical
3. Mengerjakan seluruh loop yang sesyai dengan batasannya.
4. Mengerjakan seluruh struktur data internal yang menjamin validasi.
2.3.3.2 Black Box Testing
Pengujian fungsional atau pengujian kotak hitam (black box testing) merupakan
pendekatan pengujian yang ujinya diturunkan dari spesifikasi program atau komponen.
System merupakan “kotak hitam” yang perilakunya hanya dapat ditentukan dengan
mempelajari masukan dan keluaran yang berkaitan. Nama lain untuk cara ini adalah
20
pengujian fungsional karena pengujian hanya berkepentingan dengan fungsionalitas
dan bukan implementasi perangkat lunak.
Kunci pada penguji cacat adalah memilih input yang memiliki probabilitas besar
sebagai anggota himpunan Ie. Pada banyak kasus, pemilihan ini berdasar pengamalan
rekayasawan uji sebelumnya, mereka memakai pengetahuan domain untuk
mengidentifikasi kasus uji yang mungkin mengungkap cacat. Dengan black box
analisis sistem akan memperoleh kumpulan kondisi dari masukan yang akan
mengerjakan seluruh keperluan fungsional program.
Tujuan metode ini untuk mencari kesalahan-kesalahan pada:
i. Fungsi yang salah atau hilang.
ii. Kesalahan pada interface
iii. Kesalahan pada struktur data atau akses database.
iv. Kesalahan performansi
v. Kesalahan initialisasi dan tujuan akhir
2.4 UNIFIED MODELLING LANGUAGE
Unified Modelling Language (UML) adalah sebuah standar yang dapat membantu
untuk memvisualisasikan, membangun, dan mendokumentasikan sistem perangkat
lunak(Object Management Group 2009). UML menawarkan sebuah standar untuk
merancang model sebuah sistem.Dengan mempelajari UML, maka setiap orang
21
dapatmemahami suatu gambaran dokumentasi model yang sebelumnya hanya
dipahami orang tertentu.
2.4.1
Komponen uml
UML memiliki banyak komponen diagram agar dapat memodelkan sistem secara
lebih akurat. Diagram-diagram tersebut digunakan dalam pembuatan suatu sistem
untuk mengakomodasi kepentingan pihak-pihak tertentu (stakeholder) pada aspekaspek yang berlainan dari sistem. Dengan demikian, maka pihak-pihak yang terlibat
dapat memahami informasi yang ingin disampaikan dari satu pihak menuju pihak
lainnya.
UML terdefinisi dalam tiga belas macam diagram yang terbagi dalam tiga
kategori(Object Management Group 2009), yaitu:
1. Structure Diagrams untuk memodelkan struktur statis aplikasi. Yang
termasuk dalam diagram ini adalah:
a. Class Diagram;
b. Object Diagram;
c. Component Diagram;
d. Composite Structure Diagram;
e. Package Diagram; dan
f. Deployment Diagram.
2. Behaviour Diagrams untuk memodelkan perilaku umum sistem. Yang
termasuk dalam diagram ini adalah:
22
a. Use Case Diagram;
b. Activity Diagram;dan
c. State Machine Diagram;
3. Interaction Diagrams untuk memodelkan interaksi dari aspek-aspek yang
berbeda.Yang termasuk dalam diagram ini adalah:
a. Sequence Diagram;
b. Communication Diagram;
c. Timing Diagram; dan
d. Interaction Overview Diagram.
Meskipun UML mempunyai banyak diagram, tetapi tidak semua diagram harus
digunakan dalam pembuatan suatu sistem. Dalam pengerjaan Tugas Akhir ini, hanya
akan digunakan 2 (dua) diagram yaitu Use CaseDiagram dan Activity Diagram untuk
mendukung desain dari sistem.
2.4.2
Use case diagram
Use case diagram digunakan untuk memodelkan bisnis proses berdasarkan
perspektif pengguna sistem.Yang ditekankan adalah ”apa” yang diperbuat sistem, dan
bukan
”bagaimana”(Dharwiyanti
dan
Wahono
2003).
Sebuah
use
case
merepresentasikan sebuah interaksi antara aktor dengan sistem.Aktor menggambarkan
orang, sistem atau entitas eksternal / stakeholder yang menyediakan atau menerima
informasi dari sistem.
23
Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian
dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include
akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal.
Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi
fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang umum.
Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya
sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case
yang satu merupakan spesialisasi dari yang lain. Gambar berikut menunjukkan contoh
use case diagram:
Gambar 2.2Contoh use case diagram (Dharwiyanti dan Wahono 2003)
24
2.4.3
Activity diagram
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang
sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin
terjadi, dan bagaimana mereka berakhir(Dharwiyanti dan Wahono 2003). Activity
diagram juga dapat menggambarkan proses paralel yang mungkin terjadi
padabeberapa eksekusi.Activity diagram dibuat berdasarkan sebuah atau beberapa use
case pada use case diagram.
Activity diagram merupakan state diagram khusus, di mana sebagian besar state
adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya
(internal processing). Oleh karena itu activity diagram tidak menggambarkan
behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi
lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara
umum.
Activity diagrammenggunakan notasi UML segiempat dengan sudut membulat
untuk menggambarkan aktivitas. Decision digunakan untuk menggambarkan
behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses paralel (fork
dan join) digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau
vertikal.
Activity diagram dapat dibagi menjadi beberapa object swimlane untuk
menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu.
Berikut ini adalah contoh activity diagram:
25
Gambar 2.3Contoh activity diagram(Dharwiyanti dan Wahono 2003)
2.5 BASIS DATA
Basis data adalah sekumpulan data yang tersimpan secara sistematis dan
terstruktur pada suatu tempat penyimpanan (storage) dan dapat digunakan untuk
memenuhi kebutuhan informasi sejumlah pemakai (Connoly and Begg 2002).
Data pada sistem basis data disimpan dalam sebuah objek yang disebut tabel.
Tabel adalah sekumpulan data yang berhubungan dan tersimpan dalam bentuk baris
26
dan kolom (W3 Schools n.d.). Sebuah basis data umumnya berisi sekumpulan tabel,
stored procedure, function, dan objek-objek lain yang digunakan untuk mewakili,
menyimpan, dan mengakses data.
2.5.1
Structured query language
Untuk dapat mengakses dan memanipulasi basis data oleh pemakai ataupun
dariaplikasi, dilakukan menggunakan bahasa standar yang disebut SQL(Structured
Query Language).
Perintah-perintah SQL yang digunakan untuk memanipulasi basis data antara lain:
•
Perintah Create Table
Perintah ini digunakan untuk membuat suatu tabel dalam basis data. Bentuk
umum perintah create table adalah sebagai berikut:
CREATE TABLE [nama_tabel](
nama_field1 tipe_data [,nama_field2 tipe_data,...]
[CONSTRAINT nama_field constraints]
)
•
Perintah Select
Perintah ini digunakan untuk menampilkan data dari suatu tabel. Bentuk
umum perintah select adalah sebagai berikut:
SELECT nama_field1 [, nama_field2, ...]
FROM nama_tabel1
[WHERE kondisi][ORDER BY nama_field1 [ASC|DESC]
•
Perintah Insert
27
Perintah ini digunakan untuk menambah data ke dalam tabel. Bentuk umum
perintah insert adalah sebagai berikut:
INSERT INTO nama_tabel [(nama_field1 [, nama_field2, …])] VALUES (nilai1
[,nilai2, …])
•
Perintah Update
Perintah ini digunakan untuk mengubah data dalam tabel. Bentuk umum
perintah update adalah sebagai berikut:
UPDATE nama_tabel
SET nama_field1=nilai1[, nama_field2=nilai2, …]
WHERE [kondisi]
•
Perintah Delete
Perintah ini digunakan untuk menghapus data dalam tabel. Bentuk umum
perintah delete adalah sebagai berikut:
DELETE FROMnama_tabel WHERE [kondisi]
2.6 K-NEAREST NEIGHBOR
Prinsip kerja K-Nearest Neighbor (KNN) adalah mencari jarak terdekat antara
data yang akan dievaluasi dengan Ktetangga (neighbor) terdekatnya dalam data
pelatihan.
Teknik ini termasuk dalam kelompok klasifikasi nonparametric. Di sini kita tidak
memperhatikan distribusi dari data yang ingin kita kelompokkan. Teknik ini sangat
sederhana dan
mudah diimplementasikan. Mirip dengan teknik klastering, kita
28
mengelompokkan suatu data baru berdasarkan jarak data baru itu ke beberapa
data/tetangga (neighbor) terdekat.
Tujuan algoritma KNN adalah mengklasifikasikan obyek baru berdasarkan atribut
dan training sample. Clasifier tidak menggunakan model apapun untuk dicocokkan dan
hanya berdasarkan pada memori. Diberikan titik query, akan ditemukan sejumlah
kobyek atau (titik training) yang paling dekat dengan titik query.
Klasifikasi
menggunakan voting terbanyak diantara klasifikasi dari k obyek. Algoritma KNN
menggunakan klasifikasi ketetanggaan sebagai nilai prediksi dari query instance yang
baru. Algoritma metode KNN sangatlah sederhana, bekerja berdasarkan jarak
terpendek dari query instance ke training sample untuk menentukan KNN-nya.
Nilai kyang terbaik untuk algoritma ini tergantung pada data. Secara umum, nilai
kyang tinggi akan mengurangi efek noise pada klsifikasi, tetapi membuat batasan
antara setiap klasifikasi menjadi semakin kabur. Nilai kyang bagus dapat dipilih
dengan optimasi parameter, misalnya dengan menggunakan cross-validationatau bisa
juga dengan menggunakan cara melakukan perhitungan setiap baris data dengan
melibatkan data sampel yang ada. Kasus khusus dimana klasifikasi diprekdisikan
berdasarkan training data yang paling dekat (dengan kata lain, k=1) disebut algoritma
Nearest Neighbor.
Kelebihan KNN (K-Nearest Neighbor):
1. Tangguh terhadap trainingdata yang memiliki banyak noise.
2. Efektif apabila trainingdatanya besar.
Kelemahan KNN (K-Nearest Neighbor):
1. KNN perlu menentukan nilai dari parameter k(jumlah dari tetangga terdekat).
29
2. Trainingberdasarkan jarak tidak jelas mengenai jenis jarak apa yang harus
digunakan.
3. Atribut mana yang harus digunakan untuk mendapatkan hasil terbaik.
4. Biaya komputasi cukup tinggi karena diperlukan perhitungan jarak dari tiap query
instance pada keseluruhan training sample.
2.6.1
Algoritma K-Nearest Neighbor
1. Tentukan parameter K
2. Hitung jarak antara data yang akan dievaluasi dengan semua pelatihan
3. Urutkan jarak yang terbentuk (urut naik)
4. Tentukan jarak terdekat sampai urutan K
5. Pasangkan kelas yang bersesuaian
6. Cari jumlah kelas dari tetangga yang terdekat dan tetapkan kelas tersebut
sebagaikelas data yang akan dievaluasi
Di bawah ini merupakan flowchart dari metode KNN:
30
Gambar 2.4. Flowchart dari Metode KNN
Rumus KNN:
Keterangan:
x1
=Sampel data
x2
=Data Uji / Testing
31
i
= Variable Data
d
= Jarak
p
= Dimensi Data
Download