Anda di halaman 1dari 22

BAB 2

LANDASAN TEORI

Pada bab ini akan dijelaskan tentang beberapa teori yang berhubungan dengan pembuatan
skripsi yang menjadi landasan teori dalam pembahasan nantinya. Teori berisi definis-definisi
maupun penjelasan dari alat-alat (tools) yang akan digunakan.

2.1 Definisi Sistem

Sistem didefinisikan sebagai kumpulan elemen yang saling berhubungan dan berinteraksi
dalam satu kesatuan untuk menjalankan suatu proses pencapaian suatu tujuan utama
(Sutarman, 2009).

Terdapat dua kelompok pendekatan di dalam mendefinisikan sistem yaitu yang


menekankan pada prosedurnya dan yang menekankan pada komponennya atau elemennya.
Pendekatan sistem yang lebih menekankan pada prosedur mendefinisikan sistem sebagai
suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersamasama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu,
sedangkan pendekatan sistem yang lebih menekankan pada elemen atau komponennya
mendefinisikan sistem sebagai kumpulan dari elemen-elemen yang berinteraksi untuk
mencapai suatu tujuan tertentu (Jogiyanto, 2005).

Suatu sistem mempunyai maksud tertentu, diantaranya menyebutkan sistem adalah


untuk mencapai suatu tujuan (goal) dan ada yang menyebutkan untuk mencapai suatu sasaran
(objektif). Goal biasanya dihubungkan dengan lingkup yang lebih luas dan sasaran dalam
ruang lingkup yang lebih sempit tergantung dari ruang lingkup dari mana memandang sistem
tersebut.

Universitas Sumatera Utara

2.1.1 Karakteristik Sistem

Dalam pengembangan suatu perangkat lunak khususnya pembuatan sistem, perlu adanya
suatu pemahaman terhadap karakteristik yang akan dibuat nantinya. Sistem memiliki delapan
karakteristik atau sifat-sifat tertentu untuk menggambarkannya, yaitu:
1. Komponen (component)
Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi, yang artinya saling
bekerja sama membentuk satu kesatuan. Komponen-komponen sistem atau elemn-elemen
sistem dapat berupa sesuatu subsistem atau bagian-bagian dari sistem. Setiap subsistem
mempunyai sifat-sifat dari sistem untuk menjalankan suatu fungsi tertentu dan
mempengaruhi proses sistem secara keseluruhan.
2. Batas sistem (boundary)
Batasan sistem merupakan daerah yang membatasi antara suatu sistem dengan sistem
yang lainnya atau dengan lingkungan luarnya. Batas sistem ini memungkinkan suatu
sistem dipandang sebagai satu kesatuan. Batas suatu sistem menunjukkan ruang lingkup
(scope) dari sistem tersebut.
3. Lingkungan luar sistem (environments)
Lingkungan luar dari suatu sistem adalah apapun diluar batas dari sistem yang
mempengaruhi operasi sistem. Lingkungan luar sistem dapat bersifat menguntungkan dan
dapat juga bersifat merugikan sistem tersebut. Lingkungan luar yang menguntungkan
merupakan energi dari sistem dan dengan demikian harus tetap dijaga dan dipelihara.
Sedang lingkungan luar yang merugikan harus ditahan dan dikendalikan, kalau tidak
maka akan mengganggu kelangsungan hidup dari sistem.

4. Penghubung sistem (interface)


Penghubung sistem merupakan media penghubung antara satu subsistem dengan
subsistem lainnya. Melalui penghubung ini memungkinkan sumber-sumber daya
mengalir dari satu subsistem ke yang lainnya. Keluaran (output) dari satu subsistem akan
menjadi masukan (input) untuk subsistem lainnya dengan melalui penghubung. Dengan
penghubung satu subsistem dapat berintegrasi dengan subsistem yang lainnya membentuk
satu kesatuan.

Universitas Sumatera Utara

5. Masukan (Input)
Masukan sistem adalah energi yang dimasukkan ke dalam sistem. Masukan dapat berupa
masukan perawatan (maintenance input) dan masukan sinyal (signal input). Maintenance
input adalah energi yang dimasukkan supaya sistem tersebut dapat beroperasi. Signal
input adalah energi yang diproses untuk didapatkan keluaran. Sebagai contoh didalam
sistem komputer,

program adalah maintenance input

yang

digunakan untuk

mengoperasikan komputernya dan data adalah signal input untuk diolah menjadi
informasi.
6. Keluaran (output)
Keluaran sistem adalah hasil dari energi yang diolah dan diklasifikasikan menjadi
keluaran yang berguna dan sisa pembuangan. Keluaran dapat merupakan masukan untuk
subsistem yang lain atau kepada supersistem. Misalnya untuk sistem komputer, panas
yang dihasilkan adalah keluaran yang tidak berguna dan merupakan hasil sisa
pembuangan, sedang informasi adalah keluaran yang dibutuhkan.
7. Pengolah (process)
Suatu sistem dapat mempunyai satu bagian pengolah yang akan merubah masukan
menjadi keluaran. Suatu sistem produksi akan mengolah masukan berupa bahan baku dan
bahan-bahan yang lain menjadi keluaran berupa barang jadi. Sistem akutansi akan
mengolah data transaksi menjadi laporan keuangan dan laporan lain yang dibutuhkan oleh
manajemen.

8. Sasaran (objekctives) atau tujuan (goal)


Suatu sistem pasti mempunyai sasaran (objective) atau tujuan (goal). Sasaran dari sistem
sangat menentukan sekali masukan yang dibutuhkan sistem dan keluaran yang akan
dihasilkan sistem.

2.2

Perancangan Model Berorientasi Objek

Analisis dan desain berorientasi objek adalah cara baru dalam memikirkan suatu masalah
dengan menggunakan model yang dibuat menurut konsep sekitar dunia nyata. Dasar
pembuatan adalah objek yang merupakan kombinasi struktur data dan perilaku dalam satu
entitas. Pengertian berorientasi objek berarti bahwa mengorganisasikan perangkat lunak
sebagai kumpulan dari objek tertentu yang memiliki struktur data dan perilakunya.

Universitas Sumatera Utara

Munculnya ide object oriented ini berawal dari suatu bahasa pemrograman yang
pertama kali menggunakan notasi objek (object), yaitu bahasa simulasi, yang merupakan
bahasa pemrograman untuk simulasi komputer. Untuk keperluan simulasi, dibutuhkan suatu
model objek yang sesgungguhnya (real object) sebagai object software, artinya objek
sesunggunya tersebut tidak terpecah dalam bentuk program dan data secara terpisah

Segala sesuatunya pada umumnya berawal dari upaya pemahaman permasalahan


secara tuntas (analisis), perancangan perangkat lunak yang akan dikembangkan (desain), baru
kemudian dilanjutkan dengan implementasi (penulisan hasil perancangan dengan bahasa
pemrograman tertentu), dan diakhiri dengan pengujian (testing), agar perangkat lunak benarbenar sesuai kebutuhan dan harapan pengguna (Nugroho, 2009).

Kelebihan dari object-oriented ini adalah reusbability, yang membuat software cukup
general dan tidak hanya berlaku pada object-object yang ada, tetapi juga dapat berlaku pada
object-object yang ditambahkan kemudian; dan extensibility , yang memudahkan pemakai
untuk menambah operasi-operasi baru pada object sesuai dengan perkembangan (Sutedjo,
2002).
Pemodelan sesungguhnya digunakan untuk menyederhanakan permasalahan. Sasaran
model sesunggunya adalah abstraksi dari segala sesuatu yang ada pada dunia nyata. Adapun
tujuan pemodelan (dalam kerangka pengembangan sistem/perangkat lunak aplikasi) adalah
sebagai suatu sarana visualisasi dan komunikasi, sebagai sarana dokumentasi yang
bermanfaat untuk menelaah prilaku sistem secara seksama dan bermanfaat untuk menguji
(testing) sistem yang telah dikembangkan.

2.3

Rekayasa Perangkat Lunak

Metode rekayasa perangkat lunak adalah bagaimana perangkat lunak itu dibuat, apa saja yang
dibutuhkan sampai perangkat lunak/aplikasi tersebut siap digunakan dan langkah apa yang
harus dilaksanakan dalam prosesnya. Metode rekayasa perangkat lunak terdiri atas beberapa
jenis, diantaranya metode air terjun (waterfall), metode pembaruan sumber daya, metode
spiral, dan lain sebagainya.

Universitas Sumatera Utara

Pengembangan dan pembangunan sebuah sistem harus memiliki platform yang


dijadikan sebagai landasan kerja. Tahapan ini dikenal dengan istilah Siklus Hidup
Pengembangan System Development Life Cycle (SDLC). Pemilihan SDLC disesuaikan
dengan bentuk organisasi dan operasional.

Salah satu strategi yang sering dipakai sebagai model proses atau paradigma rekayasa
perangkat lunak yaitu dengan menggunakan model waterfall. Model waterfall merupakan
pendekatan perangkat lunak yang sistematik dan sekuensial yang dimulai dari tahap analisis,
desain, kode, pengujian, dan pemeliharaaan.

Model ini mengusulkan sebuah pendekatan pengembangan perangkat lunak yang


sistematik dan sekuensial yang dimulai pada tingkat dan kemajuan sistem pada seluruh
analisis, desain, kode, pengujian, dan pemeliharaan. Secara sederhana dapat dikatakan
tahapan akan dilanjutkan jika tahapan sebelumnya telah selesai dilaksanakan. Model ini
mengikuti aktivitas-aktivitas berikut:

1.

Rekayasa dan pemodelan sistem/informasi


Aktivitas ini berupa membangun syarat semua elemen sistem dan mengalokasikannya
ke perangkat lunak dengan memperhatikan korelasinya dengan manusia, perangkat
keras dan database.

2.

Analisis kebutuhan perangkat lunak


Proses menganalisis dan pengumpulan kebutuhan sistem yang sesuai dengan domain
informasi tingkah laku, unjuk kerja, dan antar muka (interface) yang diperlukan.
Kebutuhan-kebutuhan tersebut didokumentasikan dan disesuaikan dengan pengguna.

3.

Desain
Proses desain akan menerjemahkan syarat kebutuhan ke sebuah perancangan perangkat
lunak yang dapat diperkirakan sebelum dibuat pengkodeannya. Proses ini berfokus pada
struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma)
prosedural.

4.

Pengkodean
Pengkodean merupakan proses menerjemahkan desain ke dalam suatu bahasa yang bisa
dimengerti oleh komputer.

Universitas Sumatera Utara

5.

Pengujian
Tahapan ini merupakan proses pengujian logika hasil penerjemahan algoritma kedalam
bahasa pemrograman, evaluasinya dalam operasional organisasi dan pengolahan hasil
umpan balik dari pengguna sistem.

6.

Pemeliharaan
Tahapan ini merupakan tahapan paling akhir dalam suatu proses pengembangan dan
pembangunan sistem informasi. Hal ini dilakukan agar kinerja sistem yang dibangun
tetap handal baik secara teknik maupun sistemik.

2.4

Alat Bantu pemodelan Sistem

Untuk merancang sebuah sistem yang baik, maka dibutuhkan beberapa tools atau alat bantu
guna mempermudah merepresentasikan sistem tersebut baik secara umum maupun detilnya.
Berikut merupakan alat bantu perancangan sistem yang digunakan dalam pembuatan sistem.

2.5

Diagram Konteks dan Data Flow Diagram (DFD)

Diagram konteks merupakan pola pengembangan yang berfungsi untuk memperlihatkan


suatu interaksi sistem informasi dengan lingkungan dimana sistem tersebut ditempatkan
(Sutedjo, 2002).

DFD merupakan sebuah teknik grafis yang menggambarkan aliran informasi dan
transformasi yang diaplikasikan pada saat data bergerak dari input menjadi output. DFD
dapat digunakan untuk merepresentasikan sistem atau software pada beragam tingkat
abstraks. Dalam penggambaranya, sistem dianggap sebagai sebuah objek yang tidak
dijelaskan secara rinci karena yang ditekankan adalah interaksi sistem dengan lingkungan
yang akan mengaksesnya. Penggambaran biasanya juga menyertakan data flow diagram
daftar kejadian (DFD Event List) yang mungkin terjadi dari setiap departemen atau pihakpihak baik internal maupun eksternal perusahaan yang berinteraksi dengan sistem.

Berikut adalah simbol-simbol yang digunakan didalam memodelkan DFD


menggunakan notasi Gane dan Sarson:

Universitas Sumatera Utara

1. Pelaku Eksternal (external agent)


Pelaku eksternal mendefinisikan kesatuan dilingkungan luar sistem yang dapat berupa
orang, unit, organisasi, waktu ataupun sistem lain yang dapat berinteraksi dengan sistem
seperti memberikan input atau menerima output dari sistem. Pelaku eksternal disimbolkan
dengan persegi empat seperti Gambar 2.1.

Pelaku
Eksternal

Gambar 2.1 Simbol Pelaku Eksternal

2. Proses
Proses menggambarkan bagian dari sistem yang mentransformasikan masukan menjadi
keluaran. Proses menggambarkan satu atau lebih masukan diubah menjadi keluaran.
Proses disimbolkan dengan persegi panjang bersudut tumpul seperti yang terlihat pada
Gambar 2.2.
No.
Proses

Gambar 2.2 Simbol Proses

3. Simpanan Data (data store)


Simpanan data digunakan untuk menggambarkan sekumpulan data yang diam (data at
rest) didalam suatu wadah penampung data (umumnya berkas atau database). Simpanan
data berhubungan dengan semua contoh entitas tunggal didalam model data. Simpanan
data disimbolkan dengan persegi panjang dengan ujung terbuka seperti Gambar 2.3.

No.

Simpanan Data

Gambar 2.3 Simbol Simpanan Data

Universitas Sumatera Utara

4. Aliran Data (data flow) atau Flowchart


Flowchart adalah representasi grafik dari langkah-langkah yang harus diikuti dalam
menyelesaikan suatu permasalahan yang terdiri atas sekumpulan simbol, dimana masingmasing simbol merepresentasikan suatu kegiatan tertentu. Flowchart diawali dengan
penerimaan input, pemrosesan input, dan diakhiri dengan penampilan output.

Flowchart digunakan untuk menggambarkan paket informasi dari suatu bagian sistem ke
bagian sistem yang lainnya. Oleh karena itu aliran data menggambarkan data yang bergerak
(data in motion). Flowchart disimbolkan dengan panah yang menuju atau keluar dari suatu
proses seperti diperlihatkan pada Gambar 2.4.

Aliran Data
Gambar 2.4 Simbol Aliran Data

Flowchart adalah penyajian yang sistematis tentang proses dan logika dari kegiatan
penanganan informasi atau penggambaran secara grafik dari langkah-langkah dan urut-urutan
prosedur dari suatu program. Flowchart menolong analis dan programmer untuk
memecahkan masalah kedalam bagian-bagian yang lebih kecil dan menolong dalam
menganalisis alternatif-alternatif lain dalam pengoperasian. System flowchart adalah urutan
proses dalam system dengan menunjukkan alat media input, output serta jenis media
penyimpanan dalam proses pengolahan data. Program flowchart adalah suatu bagan dengan
simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan
antara suatu proses (instruksi) dengan proses lainnya dalam suatu program.

Bagi seorang analis dan programmer yang akan merancang sistem hendaklah
memimiliki pedoman-pedoman dalam membuat flowchart, ada beberapa hal yang perlu
diperhatikan diantaranya adalah sebagai berikut:
1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke kanan.
2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus
dapat dimengerti oleh pembacanya.
3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.

Universitas Sumatera Utara

4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata
kerja.
5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.
6. Lingkup range dari aktivitas yang sedang digambarkan harus ditelusuri dengan hatihati. Percabangan-percangan yang memotong aktivitas yang sedang digambarkan tidak
perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan
percabangannya diletakkan pada halaman yang terpisah atau hilangkan seluruhnya bila
percabangannya tidak berkaitan dengan sistem.
7. Gunakan simbol-simbol flowchart yang standar.

2.6 Entity Relationship Diagram (ERD)

Pemodelan data merupakan teknik untuk mendefinisikan persyaratan bisnis untuk sebuah
database. Pemodelan data menggunakan Entity Relationship Diagram (ERD) untuk
menjelaskan data dalam konteks entitas dan hubungan yang digambarkan oleh data tersebut.
ERD memungkinkan perekayasa perangkat lunak mengidentifikasi objek data dan
hubungannya dengan menggunakan notasi grafis. Pada konteks analisis terstruktur, ERD
menetapkan semua data yang dimasukkan, ditransformasi, dan diproduksi pada suatu
aplikasi.
Entity Relationship Diagram (ERD) merupakan gambaran sistematis model data yang berisi
himpunan entitas dan himpunan relasi yang masing-masing dilengkapi dengan atribut-atribut
yang merepresentasikan seluruh fakta. Berikut adalah notasi-notasi yang digunakan dalam
ERD.
1. Entitas
Entitas merupakan sesuatu yang diperlukan bisnis untuk menyimpan data. Entitas
merupakan sesuatu atau objek di dunia nyata yang dapat dibedakan dari sesuatu atau
objek lainnya. Entitas dapat berupa orang, tempat, objek, peristiwa, dan konsep. Entitas
disimbolkan dengan persegi panjang seperti diperlihatkan pada Gambar 2.5.

Entitas

Gambar 2.5 Simbol Entitas

Universitas Sumatera Utara

2. Atribut
Atribut merupakan sifat atau karakteristik deskriptif suatu entitas. Simbol untuk
menyatakan suatu atribut biasa diperlihatkan pada Gambar 2.6.

Gambar 2.6 Simbol Atribut Biasa

Atribut dapat dibagi secara logis menjadi tiga jenis, yaitu:


a. Atribut Komposit
Atribut komposit merupakan atribut yang dapat dipecah menjadi atribut-atribut
lainnya. Simbol atribut komposit diperlihatkan pada Gambar 2.7.

Gambar 2.7 Simbol Atribut Komposit

b.

Atribut Bernilai Banyak


Atribut berniali banyak merupakan atribut yang memiliki nilai lebih dari satu untuk
suatu entitas tertentu. Simbol atribut bernilai banyak diperlihatkan pada Gambar 2.8.

Gambar 2.8 Simbol Atribut Bernilai Banyak

c. Atribut Turunan
Atribut turunan merupakan atribut yang nilainya bisa didapatkan dari atribut yang
lainnya. Simbol atribut turunan diperlihatkan pada Gambar 2.9.

Universitas Sumatera Utara

Gambar 2.9 Simbol Atribut Turunan

3. Hubungan (relation)
Hubungan merupakan asosiasi bisnis alami antara satu entitas atau lebih. Hubungan dapat
menyatakan kejadian yang menghubungkan entitas atau hanya persamaan logika yang ada
di antara entitas. Hubungan selalu dibaca dari entitas induk (yang memiliki kardinalitas
minimum) ke entitas anak (yang memiliki kardinalitas maksimum). Simbol hubungan
diperlihatkan pada Gambar 2.10.

Gambar 2.10 Simbol Hubungan

Di dalam ERD terdapat tingkatan hubungan antar entitas dilihat dari segi banyak atau
tidaknya hubungan antar entitas tersebut. Hal ini disebut konsep kardinalitas. Kardinalitas
merupakan spesifikasi dari sejumlah peristiwa dari satu objek yang dapat dihubungkan ke
sejumlah peristiwa dari objek yang lain. Kardinalitas mendefinisikan jumlah maksimum dari
hubungan objek yang ikut serta didalam sebuah hubungan. Tetapi tidak memberikan sebuah
indikasi apakah objek data tertentu harus berpartisipasi didalam hubungan atau tidak.
Kardinalitas relasi yang terjadi diantara dua himpunan entitas dapat berupa:
1. Satu ke satu (1:1)
Suatu kejadian dari entitas A dapat berhubungan dengan satu dan hanya satu kejadian
pada entitas B dan sebuah kejadian dari entitas B hanya dapat berhubungan dengan
satu kejadian pada entitas A.
2. Satu ke banyak (1:N)
Suatu kejadian dari entitas A dapat berhubungan dengan satu atau lebih kejadian dari
entitas B, tetapi sebuah kejadian dari entitas B hanya dapat berhubungan dengan satu
kejadian dari entitas A.
3. Banyak ke banyak (M:N)

Universitas Sumatera Utara

Suatu kejadian dari entitas A dapat berhubungan dengan satu atau lebih kejadian dari
entitas B, sementara sebuah kejadian dari entitas B dapat berhubungan dengan satu
atau lebih kejadian dari entitas A.

Modalitas mendefinisikan jumlah minimum dari hubungan objek yang ikut serta
dalam sebuah hubungan. Modalitas dari suatu hubungan adalah 0 (nol) jika tidak ada
kebutuhan eksplisit untuk hubungan yang terjadi atau hubungan tersebut bersifat opsional.
Modalitas bernilai satu jika suatu kejadian dari hubungan merupakan perintah.

Karena semua hubungan bersifat dua arah, maka kardinalitas dan modalitas harus
didefinisikan untuk setiap hubungan. Notasi grafis yang digunakan untuk menggambarkan
kardinalitas dan modalitas diperlihatkan pada Tabel 2.1.

Tabel 2.1 Notasi Kardinalitas dan Modalitas


Interpretasi
Tepat satu

Modalitas
1

Kardinalitas
1

Nol atau satu

Satu atau lebih

>1

Nol, satu atau lebih

>1

>1

>1

Lebih dari satu

Notasi Grafis

2.7 Normalisasi

Elemen-elemen data dipelajari untuk membuat struktur database menjadi lebih efisien.
Proses ini disebut normalisasi yang tugasnya adalah menyesuaikan data sehingga memenuhi
serangkaian bentuk-bentuk normal.

Normalisasi

dapat

dipahami

sebagai

tahapan-tahapan

yang

masing-masing

berhubungan dengan bentuk normal. Bentuk normal adalah keadaan relasi yang dihasilkan
dengan menerapkan aturan sederhana berkaitan dengan konsep kebergantungan fungsional

Universitas Sumatera Utara

(functional dependency) pada relasi yang bersangkutan. Secara garis besar, tahapan
normalisasi adalah sebagai berikut:
1. Bentuk Normal Pertama (1NF/First Normal Form)
Bentuk normal pertama adalah suatu bentuk relasi dimana atribut bernilai banyak
(multivalues attribute) telah dihilangkan sehingga akan dijumpai nilai tunggal pada
perpotongan setiap baris dan kolom pada tabel.
2. Bentuk Normal Kedua (2NF/Second Normal Form)
Semua kebergantungan fungsional yang bersifat sebagian (partial functional
dependency) telah dihilangkan dengan cara membuat field bukan kunci (non key field)
bergantung sepenuhnya pada field kunci (primary key).
3. Bentuk Normal Ketiga (3NF/Third Normal Form)
Semua kebergantungan transitif (transitive dependency) telah dihilangkan dengan cara
membuat field yang masih bergantung pada field lain hanya bergantung pada primary
key.
4. Bentuk Normal Boyce-Codd (BCNF/Boyce Codd Normal Form)
Semua anomali yang tersisa dari hasil penyempurnaan kebergantungan fungsional telah
dihilangkan.
5. Bentuk Normal Keempat (4NF/Fourth Normal Form)
Semua kebergantungan bernilai banyak (multivalued dependencies) telah dihilangkan.
6. Bentuk Normal Kelima (5NF/Fifth Normal Form)
Pada bentuk 5NF, semua anomali yang tertinggal telah dihilangkan.

Langkah-langkah normalisasi terus dilakukan dalam tahapan analisis model data


sehingga tidak ditemukan anomali-anomali lagi (baik anomali penyisipan, penghapusan,
maupun pembaharuan). Pada praktiknya, normalisasi hingga 3NF seringkali sudah cukup
memadai untuk menghilangkan anomali-anomali tersebut, namun bentuk BCNF, 4NF dan
5NF juga dilakukan untuk lebih mengefisienkan perancangan database. Tetapi tidak ada
standar baku sampai sejauh mana perlu melaksanakan langkah-langkah normalisasi.

Universitas Sumatera Utara

2.8 Virtual Private Network (VPN)

Menurut Internet Engineering Task Force (IETF), Virtual Private Network atau disingkat
dengan VPN merupakan suatu bentuk private internet yang melalui public network (internet),
dengan menekankan pada keamanan data dan akses global melalui internet. Hubungan ini
dibangun melalui suatu tunnel (terowongan) virtual antara 2 node.

VPN adalah variasi lain dari skema jaringan yang dibangun sebagai jaringan khusus
dengan menggunakan jaringan internet umum. Karena menggunakan jaringan internet,
sebuah perusahaan yang membuat WAN (Wide Area Network) berbasis VPN ini mampu
menjangkau area yang sangat luas dan lintas geografi. VPN menyediakan koneksi poin-topoin baik kepada kantor cabang maupun kepada seorang karyawan yang sedang bertugas
ditempat lain. Hal ini dapat menjadi jaringan khusus yang besar dan tidak terbatas. Sebuah
WAN khusus yang jauh lebih efisien, aman dan berbiaya ekonomis dari WAN atau LAN
tradisional. Sehingga telah banyak perusahaan-perusahaan yang menggunakan VPN sebagai
infrastruktur jaringannya yang menghubungkan antara kantor pusat dengan kantor cabang
dan dengan agen serta client nya.

Dalam penggunaan sebagai jaringan khusus ini, VPN di set sedemikian rupa dengan
sebuah software dan hardware dengan protocol tertentu yang akan digunakan untuk
otentikasi antar user dan untuk penyandian jaringannya. Umumnya VPN dipasangi firewall di
dekat servernya yang berfungsi untuk menyaring sehingga hanya client yang telah terdaftar
saja yang dilayani. VPN mengenkripsi traffic sehingga eavesdropper dan hacker tidak dapat
membaca atau memodifikasinya. VPN mampu mengamankan hubungan melalui internet,
antar jaringan, atau dari user dial-up yang mengakses jaringan internal (Raharjo, 2004)

VPN menggunakan teknik kriptografi untuk melindungi informasi IP saat melintas


dari satu jaringan ke jaringan yang lain atau dari lokasi satu ke lokasi lain. Data dibungkus
dengan teknik tunnel yang akan mengenskipsi dan mengisolasi data sehingga dapat
menggunakan jaringan lalu lintas publik dengan lebih aman (Mulyanta, 2005).

Perpaduan teknologi tunneling dan enkripsi membuat VPN menjadi teknologi yang
luar biasa dan membantu banyak sekali pekerjaan penggunanya. Kedua teknologi ini harus
dipadukan untuk mendapatkan hasil yang sempurna, yaitu komunikasi data aman dan efisien.

Universitas Sumatera Utara

Aman berarti data Anda tetap terjaga kerahasiaan dan keutuhannya. Tidak sembarang pihak
dapat menangkap dan membaca data, meskipun data tersebut lalu-lalang di jalur komunikasi
publik. Keutuhan yang tetap terjaga maksudnya tidak sembarang orang dapat mengacaukan
isi dan alur data. Untuk itulah, mengapa kedua teknologi ini sangat berperan penting dalam
terbentuknya solusi komunikasi VPN.

2.8.1 Teknologi Tunelling

Untuk membuat sebuah tunnel, diperlukan sebuah protokol pengaturnya sehingga tunnel
secara logika ini dapat berjalan dengan baik bagaikan koneksi point-to-point sungguhan. Saat
ini, tersedia banyak sekali protokol pembuat tunnel yang bisa digunakan. Namun, tunneling
protocol yang paling umum dan paling banyak digunakan terdiri dari tiga jenis yaitu : Layer
2 Tunneling Protocol (L2TP), Generic Routing Encapsulation (GRE, IP Security Protocol
(IPSec).

2.8.2 Layer 2 Tunneling Protocol (L2TP)

L2TP adalah sebuah tunneling protocol yang memadukan dan mengkombinasikan dua buah
tunneling protocol yang bersifat proprietary, yaitu L2F (Layer 2 Forwarding) milik CISCO
Systems dengan PPTP (Point-to-Point Tunneling Protocol) milik Microsoft.

Pada awalnya, semua produk CISCO menggunakan L2F untuk mengurus tunnelingnya, sedangkan operating system Microsoft yang terdahulu hanya menggunakan PPTP untuk
melayani penggunanya yang ingin bermain dengan tunnel. Namun saat ini, Microsoft
Windows NT/2000 telah dapat menggunakan PPTP atau L2TP dalam teknologi VPN-nya.

L2TP biasanya digunakan dalam membuat Virtual Private Dial Network (VPDN)
yang dapat bekerja membawa semua jenis protokol komunikasi didalamnya. Selain itu, L2TP
juga bersifat media independen karena dapat bekerja di atas media apapun. L2TP
memungkinkan penggunanya untuk tetap dapat terkoneksi dengan jaringan lokal milik
mereka dengan policy keamanan yang sama dan dari manapun mereka berada, melalui
koneksi VPN atau VPDN. Koneksi ini sering kali dianggap sebagai sarana memperpanjang
jaringan lokal milik penggunanya, namun melalui media publik.

Universitas Sumatera Utara

Namun, teknologi tunneling ini tidak memiliki mekanisme untuk menyediakan


fasilitas enkripsi karena memang benar-benar murni hanya membentuk jaringan tunnel.
Selain itu, apa yang lalu-lalang di dalam tunnel ini dapat ditangkap dan dimonitor dengan
menggunakan protocol analyzer

2.8.3 Generic Routing Encapsulation (GRE)

Protokol tunneling yang satu ini memiliki kemampuan membawa lebih dari satu jenis
protokol pengalamatan komunikasi. Bukan hanya paket beralamat IP saja yang dapat
dibawanya, melainkan banyak paket protokol lain seperti CNLP, IPX, dan banyak lagi.
Namun, semua itu dibungkus atau dienkapsulasi menjadi sebuah paket yang bersistem
pengalamatan IP. Kemudian paket tersebut didistribusikan melalui sistem tunnel yang juga
bekerja di atas protokol komunikasi IP.

Dengan menggunakan tunneling GRE, router yang ada pada ujung-ujung tunnel
melakukan enkapsulasi paket-paket protokol lain di dalam header dari protokol IP. Hal ini
akan membuat paket-paket tadi dapat dibawa ke manapun dengan cara dan metode yang
terdapat pada teknologi IP. Dengan adanya kemampuan ini, maka protokol-protokol yang
dibawa oleh paket IP tersebut dapat lebih bebas bergerak ke manapun lokasi yang dituju,
asalkan terjangkau secara pengalamatan IP.

Aplikasi yang cukup banyak menggunakan bantuan protokol tunneling ini adalah
menggabungkan jaringan-jaringan lokal yang terpisah secara jarak kembali dapat
berkomunikasi. Atau dengan kata lain, GRP banyak digunakan untuk memperpanjang dan
mengekspansi jaringan lokal yang dimiliki si penggunanya. Meski cukup banyak digunakan,
GRE juga tidak menyediakan sistem enkripsi data yang lalu-lalang di tunnel-nya, sehingga
semua aktivitas datanya dapat dimonitor menggunakan protocol analyzer biasa saja.

2.8.4 IP Security Protocol (IPSec)

IPSec adalah sebuat pilihan tunneling protocol yang sangat tepat untuk digunakan dalam
VPN level korporat. IPSec merupakan protokol yang bersifat open standar yang dapat
menyediakan keamanan data, keutuhan data, dan otentikasi data antara kedua peer yang
berpartisipasi di dalamnya.

Universitas Sumatera Utara

IPSec menyediakan sistem keamanan data seperti ini dengan menggunakan sebuah
metode pengaman yang bernama Internet Key Exchange (IKE). IKE ini bertugas untuk
menangani masalah negosiasi dari protokol-protokol dan algoritma pengamanan yang
diciptakan berdasarkan dari policy yang diterapkan pada jaringan si pengguna. IKE pada
akhirnya akan menghasilkan sebuah sistem enkripsi dan kunci pengamannya yang akan
digunakan untuk otentikasi pada sistem IPSec ini.

2.8.5 Teknologi Enkripsi dalam VPN

Selain teknologi tunneling, teknologi enkripsi dalam VPN juga sangat bervariasi. Sebenarnya
teknologi enkripsi bukan hanya milik VPN saja, namun sangat luas penggunaannya. Enkripsi
bertugas untuk menjaga privasi dan kerahasiaan data agar tidak dapat dengan mudah dibaca
oleh pihak yang tidak berhak. Secara garis besar teknik enkripsi terbagi atas dua jenis, yaitu:

2.8.6 Symmetric Encryption

Symmetric Encryption dikenal juga dengan nama sebutan secret key encryption. Enkripsi
jenis ini banyak digunakan dalam proses enkripsi data dalam volume yang besar. Selama
masa komunikasi data, perangkat jaringan yang memiliki kemampuan enkripsi jenis ini akan
mengubah data yang berupa teks murni (cleartext) menjadi berbentuk teks yang telah diacak
atau istilahnya adalah ciphertext. Teks acak ini tentu dibuat dengan menggunakan algoritma.
Teks acak ini sangat tidak mudah untuk dibaca, sehingga keamanan data Anda terjaga.

Digital Encryption Standar (DES) merupakan sebuah algoritma standar yang


digunakan untuk membuat proses symmetric encryption ini. Algoritma ini diklaim sebagai
yang paling umum digunakan saat ini. Algoritma DES beroperasi dalam satuan 64-bit blok
data. Maksudnya, algoritma ini akan menjalankan serangkaian proses pengacakan 64-bit data
yang masuk untuk kemudian dikeluarkan menjadi 64-bit data acak. Proses tersebut
menggunakan 64-bit kunci di mana 56-bit-nya dipilih secara acak, 8 bit nya berasal dari
parity bit dari data Anda. Kedelapan bit tersebut diselipkan di antara ke 56-bit tadi. Kunci
yang dihasilkan kemudian dikirimkan ke si penerima data.

Universitas Sumatera Utara

Dengan sistem enkripsi demikian, DES tidaklah mudah untuk ditaklukkan Namun
seiring perkembangan teknologi, DES sudah bisa dibongkar dengan menggunakan
superkomputer dalam waktu beberapa hari saja. Alternatif untuk DES adalah triple DES
(3DES) yang melakukan proses dalam DES sebanyak tiga kali. Jadi kunci yang dihasilkan
dan dibutuhkan untuk membuka enkripsi adalah sebanyak tiga buah.

2.8.7 Asymmetric Encryption

Enkripsi jenis ini sering disebut sebagai sistem public key encryption. Proses enkripsi jenis ini
bisa menggunakan algoritma apa saja, namun hasil enkripsi dari algoritma ini akan berfungsi
sebagai pelengkap dalam mengacakan dan penyusunan data. Dalam enkripsi jenis ini
diperlukan dua buah kunci pengaman yang berbeda, namun saling berkaitan dalam proses
algoritmanya. Kedua kunci pengaman ini sering disebut dengan istilah Public Key dan
Private Key.

Sebagai contohnya, Andi dan Budi ingin berkomunikasi aman dengan menggunakan
sistem enkripsi ini. Untuk itu, keduanya harus memiliki public key dan private key terlebih
dahulu. Andi harus memiliki public dan private key, begitu juga dengan Budi. Ketika proses
komunikasi dimulai, mereka akan menggunakan kunci-kunci yang berbeda untuk mengenkrip
dan mendekrip data. Kunci boleh berbeda, namun data dapat dihantarkan dengan mulus
berkat algoritma yang sama.

Mekanisme pembuatan public dan private key ini cukup kompleks. Biasanya key-key
ini di-generate menggunakan generator yang menjalankan algoritma RSA (Ron Rivest, Adi
Shamir, Leonard Adleman) atau EL Gamal. Hasil dari generator ini biasanya adalah dua buah
susunan angka acak yang sangat besar. Satu angka acak berfungsi sebagai public key dan satu
lagi untuk private key. Angka-angka acak ini memang harus dibuat sebanyak dan seacak
mungkin untuk memperkuat keunikan dari key-key Anda.

Menggenerasi key-key ini sangat membutuhkan proses CPU yang tinggi. Maka itu,
proses ini tidak bisa dilakukan setiap kali melakukan transaksi data. Dengan kata lain,
enkripsi jenis ini tidak pernah digunakan untuk mengamankan data yang sesungguhnya

Universitas Sumatera Utara

karena sifatnya yang kompleks ini. Meskipun demikian, enkripsi ini akan sangat efektif
dalam proses otentikasi data dan aplikasinya yang melibatkan sistem digital signature dan key
management.

2.8.8 Aman dan Nyaman

VPN memang terbentuk dari perpaduan kedua teknologi yang telah dijabarkan secara garis
besar di atas. Ada sebuah prinsip yang berkembang di kalangan praktisi komunikasi data
yang mengatakan bahwa komunikasi data yang aman tidak akan pernah nyaman. Prinsip
tersebut mungkin ada kalanya benar, di mana kita harus membuat policy-policy yang
memusingkan kepala, teknik-teknik tunneling dan enkripsi apa yang akan kita gunakan, dan
rule-rule yang sangat ketat dan teliti untuk menghadang semua pengacau yang tidak berhak
mengakses data. Namun, teknologi VPN mungkin bisa dikecualikan dalam prinsip tersebut.

Apabila secara bahasa yang mudah VPN itu sebagai berikut, VPN adalah sebuah
bentuk dari WAN (Wide Area Network). Kunci utama dari VPN, adalah pada kemampuannya
menggunakan jaringan public seperti internet untuk mengakses jaringan lain seolah-olah kita
mengakses jaringan lokal. Misalnya saja ada perusahaan besar yang mempunyai beberapa
cabang, tiap-tiap cabang letaknya berjauhan, komputer client di tiap cabang dapat saling
terhubung dengan komputer client di cabang lainnya dengan menggunakan teknologi VPN.
VPN-nya sendiri menggunakan jalur internet sebagai koneksi. Bisa dibilang teknologi ini
dapat menekan biaya perusahaan untuk membangun jalur sendiri sebagai penghubung antar
cabang.

Pada gambar 2.12 merupakan contoh aliran data antara jaringan internet dan VPN.
Garis merah merupakan aliran data VPN yang mengalir layaknya jaringan sebuah jaringan
internet namun hanya user tertentu yang dapat mengakses pada jaringan tersebut (bersifat
private). Dengan VPN kita dapat membuatnya seolah-olah semua komputer yang ada
terhubung secara lokal.

Universitas Sumatera Utara

Gambar 2.11 Contoh Komunikasi VPN

Setelah setiap komputer terhubung melalui jalur VPN, maka tiap komputer dapat
mengakses ke komputer lain dengan menggunakan IP yang telah diberikan oleh VPN server,
tidak harus menggunakan IP public atau sejenisnya, hal ini sama persis dengan jaringan lokal.

2.8.9 VPN IP MPLS

Wide Area Network (WAN) dipergunakan untuk menghubungkan jaringan-jaringan Local


Area Network (LAN) satu dengan lainnya yang berdekatan maupun yang berjauhan dan
menggunakan protokol yang sama atau berbeda-beda. Teknologi yang dapat dipergunakan
untuk dapat menghubungkan WAN, antara lain: Dial Up, Leased Line, VSAT, X.25, Frame
Relay, Virtual Private Network (VPN) dan lain-lain. Sedangkan teknologi terbaru yang saat
ini sedang dikembangkan untuk membangun jaringan WAN yang baik (realible) dan
permanen adalah Virtual Private Network (VPN) berbasis IP Multi Protocol Label Switch
(VPN IP MPLS).

MPLS (Multi Protocol Label Switching) merupakan teknologi penyampaian paket


pada jaringan backbone berkecepatan tinggi. Asas kerjanya menggabungkan beberapa
kelebihan dari sistem komunikasi circuit-switched dan packet-switched yang melahirkan
teknologi yang lebih baik dari keduanya (Mulyana, 2005). Sebelumnya, paket-paket
diteruskan dengan protokol routing seperti OSPF, IS-IS, BGP, atau EGP. Protokol routing

Universitas Sumatera Utara

berada pada lapisan network (ketiga) dalam sistem OSI, sedangkan MPLS berada di antara
lapisan kedua dan ketiga.

Prinsip kerja MPLS ialah menggabungkan kecepatan switching pada layer 2 dengan
kemampuan routing dan skalabilitas pada layer 3. Cara kerjanya adalah dengan menyelipkan
label di antara header layer 2 dan layer 3 pada paket yang diteruskan. Label dihasilkan oleh
Label-Switching Router dimana bertindak sebagai penghubung jaringan MPLS dengan
jaringan luar. Label berisi informasi tujuan node selanjutnya kemana paket harus dikirim.
Kemudian paket diteruskan ke node berikutnya, di node ini label paket akan dilepas dan
diberi label yang baru yang berisi tujuan berikutnya. Paket-paket diteruskan dalam path yang
disebut LSP (Label Switching Path).

Komponen MPLS:

1. LSP: Merupakan jalur yang melalui satu atau serangkaian LSR dimana paket diteruskan
oleh label swapping dari satu MPLS node ke MPLS node yang lain.
2. Label Switching Router: MPLS node yang mampu meneruskan paket-paket layer-3.
3. MPLS Edge Node atau Label Edge Router (LER): MPLS node yang menghubungkan
sebuah MPLS domain dengan node yang berada diluar MPLS domain.
4. MPLS Egress Node: MPLS node yang mengatur trafik saat meninggalkan MPLS domain.
5. MPLS ingress Node: MPLS node yang mengatur trafik saat akan memasuki MPLS
domain.
6. MPLS label: merupakan label yang ditempatkan sebagai MPLS header.
7. MPLS node: node yang menjalankan MPLS. MPLS node ini sebagai control protokol
yang akan meneruskan paket berdasarkan label.

VPN IP MPLS ini adalah suatu layanan komunikasi data any to any connections
berbasis IP Multi Protocol Label Switch dengan menggunakan peralatan (hardware) dari
perusahaan CISCO (berupa CISCO Router dan CISCO Switch Catalist).

Teknologi VPN IP MPLS merupakan suatu layanan yang dibangun di atas Integrated
Network Architecture yang secara dinamis dapat mengenali jenis aplikasi enterprice untuk
memperoleh layanan end to end security, performance dan aviability. Teknologi VPN IP
MPLS ini merupakan solusi yang sangat praktis bagi suatu institusi yang menginginkan

Universitas Sumatera Utara

komunikasi secara terus menerus (intensif) antara kantor-kantor cabang dengan kantor
pusatnya. VPN IP MPLS digunakan untuk merealisasikan Class of Service (CoS), dimana
suatu institusi dapat mengimplementasikan aplikasinya baik berupa aplikasi yang memiliki
Delay Time Sensitive, Mission Critical maupun Non Mission Critical pada satu platform
jaringan private IP MPLS.

Gambar 2.12 Konfigurasi Infrastruktur VPN IP MPLS

VPN IP MPLS diciptakan untuk memenuhi kebutuhan akan layanan data komunikasi
yang mempunyai fleksibilitas tinggi seperti network berbasis IP (Internet) namun tetap
bersifat Privacy/Secure dan mampu menerapkan Quality of Service (QoS) seperti jaringan
Frame Relay. Cara kerja MPLS adalah melewatkan paket (Forward) berdasarkan Label, dan
menggunakan teknologi Switching bukan Routing. Teknologi MPLS memiliki tingkat
keamanan yang sangat tinggi atau baik, tidak kalah dengan keamanan pada jaringan Frame
Relay maupun ATM. Penerapan VPN IP MPLS suatu institusi yang sangat mengutamakan
keamanan datanya, tingkat keamanan MPLS ini masih dapat ditingkatkan lagi dengan
menggabungkan teknologi MPLS dan teknologi IPSec yang menerapkan mekanisme
tunneling dan enkripsi untuk keamanan serta kriptografi yang secara fleksibel dapat
mendukung kombinasi dari otentikasi, integrasi, akses kontrol dan kerahasiaan.

Universitas Sumatera Utara

Anda mungkin juga menyukai