^_^ SELAMAT DATANG DI BLOG DADAN HADI RAMDANI ^_^

Selasa, 26 Januari 2016

MENGENAL DAN MEMPELAJARI APA ITU STRUKTUR DATA



STRUKTUR DATA adalah cara menyimpan atau merepresentasikan data didalam komputer agar bisa dipakai secara efesien. Sedangkan data dalah representasi dari fakta dunia nyata. Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol.




STRUKTUR DATA TREE (POHON)




 
Tree structure (struktur pohon) sangat umum ditemui. Mulai dari struktur folder/direktori di komputer Anda, sampai di setiap halaman web yang Anda kunjungi (dokumen HTML memiliki struktur tree, setiap browser ada struktur tree untuk DOM HTML). Beberapa contoh lain di mana Anda akan menemui struktur pohon:
  1. Memproses XML memerlukan pemahaman mengenai tree
  2. Pohon keluarga (family tree)
  3. Pohon organisasi
  4. Membuat pivot table yang kompleks memerlukan pemahaman mengenai tree
Jika Anda menjadi administrator database yang ingin bisa mengoptimasi sampai level penyimpanan, Anda harus tahu struktur dasar seperti B-tree. Di beberapa database, misalnya Oracle, Anda bisa mengatur ukuran blocksize untuk indeks B-tree.
Struktur graph (graf) juga banyak digunakan sehari-hari:
  1. Node-node dalam sebuah jaringan membentuk graf, dan ini perlu dipahami oleh administrator jaringan.
  2. Jalan dan lokasi di sebuah peta bisa dianggap sebagai graf.
  3. Jaringan pertemanan (di Facebook, Friendster, dsb) juga merupakan graf. Jika Anda membuat situs seperti itu, Anda perlu tahu konsep graf.
Ada beberapa gabungan dari tree dan graph. Jika Anda menjadi administrator jaringan, Anda perlu mengenal konsep spanning tree untuk mengkonfigurasi STP (spanning tree protocol). Jika Anda perlu membuat program peta sendiri, Anda perlu struktur data quad-tree untuk mengakses dengan cepat node-node dalam graf yang Anda miliki.
Mungkin sebagian dari Anda berpikir: itu kan hanya sebagian saja struktur data yang ada, bagaimana dengan yang lain?
Ketika belajar struktur data yang sederhana akan membantu kita memahami struktur data yang lebih kompleks. Misalnya jika seseorang tiba-tiba diminta mengimplementasikan tree dengan pointer, dia biasanya akan bingung. Sementara jika diajari selangkah demi selangkah mulai dari linked list, maka biasanya akan lebih mudah. Jadi fungsi pertama struktur yang sederhana adalah untuk mempelajari struktur yang lebih rumit. Dalam berbagai bahasa, struktur Linked List, Double Linked List, dsb sudah masuk menjadi API standar.
Dalam mengimplementasikan suatu struktur data, Anda bisa melihat kelebihan dan kekurangan masing-masing struktur data. Misalnya linked list sangat efisien untuk menyimpan data yang selalu ditambahkan di akhir. Ini akan membantu Anda memilih struktud data terbaik untuk keperluan Anda (jadi Anda tidak selalu hanya memakai java.util.Vector saja di Java). Jadi penggunaan struktur data spesifik berguna untuk optimasi.
Misalnya Anda punya beberapa punya struktur data yang hanya selalu ditambah saja di akhir. Struktur List akan sangat efisien untuk hal ini. Jika Anda sudah tahu tepatnya berapa data yang akan datang Anda bisa memakai array (atau std::vector di C++, atau java.util.Vector di Java). Tapi jika Anda tidak tahu, setiap kali array mencapai kapasitasnya, Anda perlu meresize memori (dan jika ternyata memori tidak cukup, tanpa sepengetahuan Anda kadang perlu ada penyalinan data ke lokasi memori yang baru). Jadi dalam kasus ini Anda bisa melihat bahwa List sederhana juga punya kegunaan.
Kesimpulannya adalah: mempelajari struktur data merupakan hal yang penting. Hanya di bidang yang sangat sempit saja kita tidak perlu mempelajari struktur data. Dan bahkan dalam bidang yang sempit itu, pemahaman struktur data akan bisa banyak membantu untuk membuat program yang lebih baik.
 
 STRUKTUR DATA QUEUE

Queue (antrian) adalah struktur data dimana data yang pertama kali dimasukkan adalah data yang pertama kali bisa dihapus. Atau bisa juga disebut dengan struktur data yang menggunakan mekanisme FIFO (First In First Out). Queue dalam kehidupan sehari-hari seperti antrian pada penjualan tiket kereta api, dimana orang yang pertama datang adalah orang yang pertama kali dilayani untuk membeli tiket.
Jika ada orangbaru yang datang akan membali tiket, maka posisinya berada pada urutan paling belakang dalam antrian tersebut. Orang yang berada pada posisi terakhir dalam antrian adalah yang terakhir kali dapat dilayani dan memperoleh tiket kereta api (kalau kurang beruntung, maka akan kehabisan tiket). Contoh lain adalah nasabah yang antri di teller bank, paket data yang menunggu untuk ditransmisikan lewat internet, antrian printer dimana terdapat antrian print job yang menunggu giliran untuk menggunakan printer, dsb. Istilah-istilah yang digunakan dalam queue (antrian)
Memasukkan data (insert) disebut juga dengan put, add, atau enqueue. Menghapus data (remove) biasa disebut dengan istilah delete, get, atau dequeue. Bagian belakang queue, dimana data bisa dimasukkan disebut dengan back, tail (ekor), atau end (akhir). Sedangkan bagian depan (front) queue dimana data bisa dihapus juga biasa disebut dengan istilah kepala (head).

Circular Queue
Di dunia nyata apabila seseorang sedang mengantri (misalnya antri tiket kereta api), apabila telah dilayani dan memperoleh tiket, maka ia akan keluar dari antrian dan orang-orang yang berada di belakangnya akan bergerak maju ke dapan. Kita bisa saja menggerakkan setiap item data ke depan apabila kita menghapus data yang terdepan, tetapi hal ini kurang efektif. Sebaliknya kita tetap menjaga setiap item data di posisinya, yang kita lakukan hanyalah merubah posisi front dan rear saja.
Yang menjadi permasalahan adalah apabila posisi rear berada pada bagian akhir dari array (atau pada nomor indeks yang terbesar). Meskipun ada bagian yang kosong di awal-awal array – karena mungkin data telah dihapus, data baru tidak bisa dimasukkan lagi karena rear-nya sudah tidak bisa bergerak lagi. Atau mungkinkah posisi rear nya bisa berpindah? Situasi seperti itu bisa dilihat seperti gambar berikut:

circular queueUntuk menghindari permasalahan seperti itu (tidak bisa memasukkan data baru) – meskipun queue-nya belum penuh, maka front dan rear-nya berputar (kembali) ke bagian awal array. Kejadian seperti ini dinamakan dengan circular queue (atau kadang-kadang disebut juga dengan istilah ring buffer). Kejadian seperti ini seperti terlihat pada gambar berikut:

Berikut Contoh Implementasi Antrian dalam Java :

Queue.java

class Queue
{
private int maxSize;
private long[] queArray;
private int front;
private int rear;
private int nItems;
//————————————————————–
public Queue(int s) // konstruktor
{
maxSize = s;
queArray = new long[maxSize];
front = 0;
rear = -1;
nItems = 0;
}
//————————————————————–
public void insert(long j) // letakkan item (data) di posisi belakang dari queue
{
if(rear == maxSize-1) //
rear = -1;
queArray[++rear] = j; //naikkan rear dan masukkan item (data) pada posisi rear yang baru
nItems++; //tambah satu item lagi
}

//————————————————————–
public long remove() // hapus item (data) yang berada pada posisi front
{
long temp = queArray[front++]; //dapatkan nilainya dan naikkan front
if(front == maxSize) //
front = 0;
nItems–; // item (data) berkurang satu
return temp;
}
//————————————————————–
public long peekFront() //
{

return queArray[front];
}
//————————————————————–
public boolean isEmpty() //benar jika queue-nya kosong
{
return (nItems==0);
}
//————————————————————–
public boolean isFull() // benar jika queue-nya penuh
{
return (nItems==maxSize);
}
//————————————————————–
public int size() // jumlah ietm (data) dalam queue
{
return nItems;
}
//————————————————————–
} // end class Queue

QueueApp.java

class QueueApp
{
public static void main(String[] args)
{
Queue theQueue = new Queue(5); // queue menampung 5 item (data)
theQueue.insert(10); // masukkan 4 item (data)
theQueue.insert(20);
theQueue.insert(30);
theQueue.insert(40);
theQueue.remove(); // hapus 3 item (data)
theQueue.remove(); // (10, 20, 30)
theQueue.remove();
theQueue.insert(50); // masukkan 4 item (data) lagi
theQueue.insert(60); // (wraps around)
theQueue.insert(70);
theQueue.insert(80);
while( !theQueue.isEmpty() ) // hapus dan tampilkan
{ // all items

long n = theQueue.remove(); // (
System.out.print(n);
System.out.print(“ “);
}
System.out.println(“”);
} // end main()
} // end class QueueApp

method insert()
Method insert() mengasumsikan bahwa queue tidak penuh (full). Kita tidak melihatnya dalam main(), tetapi kita bisa memanggil insert() hanya setelah memanggil isFull() dan memperoleh nilai kembalian yang salah. Pengisian data dengan cara menaikkan rear dan mengisikan data baru tersebut pada rear yang baru sekarang. Tetapi, jika rear berada di puncak array, pada maxSize-1, maka harus kembali ke posisi terbawah array sebelum penyisipan dilakukan. Caranya dengan memberi nilai rear=-1, sehingga jika terjadi kenaikan pada pada rear, maka rear akan menjadi 0, dasar dari array. Dan akhirnya, nItem bertambah.

Method remove()
method remove mengasumsikan queue-nya tidak kosong. Untuk meyakinkan bahwa queue-nya tidak kosong, anda harus memanggil method isEmpty(). Penghapusan selalu dimulai dengan memperoleh nilai pada front dan kemudian mengurangi front. Jika front-nya terletak pada akhir array, maka harus kembali ke 0. Kemudian nItems dikurangi.

Method peek()
untuk mendapatkan nilai pada front.

Method isEmpty(), isFull(), and size()
untuk mengecek nItems, apakah kosong atau penuh.
 

Struktur Data Stack 

Secara bahasa, Stack berarti tumpukan. Jika dikaitkan dengan struktur data, Stack berarti sekumpulan data yang organisasi atau strukturnya bersifat tumpukan atau menyerupai tumpukan.
Secara ilustrasi, stack dapat digambarkan dengan gambar di samping.
“Top “ merupakan pintu untuk keluar masuknya elemen – elemen stack. A, B, dan C merupakan suatukoleksi. Dari ilustrasi dapat digambarkan bahwa C merupakan elemen yang terakhir memasuki stack namunpertama keluar dari stack. Begitu sebaliknya dengan A. A merupakan elemen pertama yang memasukitumpukan namun terakhir saat keluar dari tumpukan.
Di dalam gambar juga terlihat urutan masuk dan keluar yang berkebalikan. Elemen yang masuk pertama akankeluar erakhir dan sebaliknya. Prinsip ini telah dikenal dalam struktur data dengan nama prinsip LIFO (Last In First Out).
Di dalam pengembangannya, stack dapat dikelompokkan menjadi dua bagian. Dua bagian tersebut yaitudan Double Stack. Single Stack
Single Stack
Single Stack atau Stack Tunggal adalah stack yang hanya terdiri dari satu koleksi. Bila stack inidirepresentasikan dengan array, maka pengisian dan penghapusan harus dilakukan bertahap dari indeksnya. TOP-
Di dalam proses single stack terdapat tiga macam proses utama, yaitu :
-          Inisialisasi
-          PUSH (Insert, Masuk, Simpan, Tulis)
-          POP (Delete, Keluar, Ambil, Baca, Hapus)
INISIALISASI
Proses inisialisasi merupakan proses awal yang dilakukan untuk menyimpan indeks penunjuk stack. Roses inidilakukan dengan intruksi :
top = -1;



PUSH
Proses push adalah proses memasukkan data baru ke stack indeks selanjutnya. Algoritma dasar proses PUSH adalah :
top = top + 1; array[top] = variable_tampung;

POP
Proses pop adalah proses mengeluarkan  / mengambil data dari stack dengan indeks yang disimpan padaAlgoritma dasar proses POP adalah : variable top. 
variable_tampung = array[top]; top = top – 1;

Double Stack
Double Stack atau Stack Ganda adalah stack yang hanya terdiri dari dua single stack. Bila stack inidirepresentasikan dengan array, maka pengisian dan penghapusan harus melalui salah satu arah.
Di dalam proses double stack terdapat lima macam proses utama, yaitu :
-          Inisialisasi
-          PUSH1 (Proses Push untuk Single Stack pertama)
-          POP1 (Proses Pop untuk Single Stack pertama)
-          PUSH2 (Proses Push untuk Single Stack kedua)
-          POP2 (Proses Pop untuk Single Stack kedua)
Algoritma dasar masing – masing proses adalah sebagai berikut :
INISIALISASItop1 = -1; top2 = MAX_ARRAY;
PUSH1top1 = top1 + 1; array[top1] = variable_tampung;
POP1variable_tampung = array[top1]; top1 = top1 – 1;
PUSH2top2 = top2 – 1; array[top2] = variable_tampung;
POP2variable_tampung = array[top2]; top2 = top2 + 1;
  

 

STRUKTUR DATA GRAPH

Graph merupakan struktur data yang paling umum. Jika struktur linear memungkinkan pendefinisian keterhubungan sikuensial antara entitas data, struktur data tree memungkinkan pendefinisian keterhubungan hirarkis, maka struktur graph memungkinkan pendefinisian keterhubungan tak terbatas antara entitas data.

Banyak entitas-entitas data dalam masalah-masalah nyata secara alamiah memiliki keterhubungan langsung (adjacency) secara tak terbatas demikian. Contoh: informasi topologi dan jarak antar kota-kota di pulau Jawa. Dalam masalah ini kota x bisa berhubungan langsung dengan hanya satu atau limaentitas-entitas data dalam masalah-masalah nyata secara alamiah memiliki keterhubungan langsung (adjacency) secara tak terbatas demikian. Contoh: informasi topologi dan jarak antar kota-kota di pulau Jawa. Dalam masalah ini kota x bisa berhubungan langsung dengan hanya satu atau lima kota lainnya. Untuk memeriksa keterhubungan dan jarak tidak langsung antara dua kota dapat diperoleh berdasarkan data keterhubungan-keterhubungan langsung dari kota-kota lainnya yang memperantarainya.

Representasi data dengan struktur data linear ataupun hirarkis pada masalah ini masih bisa digunakan namun akan membutuhkan pencarian-pencarian yang kurang efisien. Struktur data graph secara eksplisit menyatakan keterhubungan ini sehingga pencariannya langsung (straightforward) dilakukan pada strukturnya sendiri.

Masalah-masalah Graph
Masalah path minimum (Shortest path problem):
mencari route dengan jarak terpendek dalam suatu jaringan transportasi.

Masalah aliran maksimum (maximum flow problem):
menghitung volume aliran BBM dari suatu reservoir ke suatu titik tujuan melalui jaringan pipa.

Masalah pencariah dalam graph (graph searching problem):
mencari langkah-langkah terbaik dalam program permainan catur komputer.

Masalah pengurutan topologis (topological ordering problem):
menentukan urutan pengambilan mata-mata kuliah yang saling berkaitan dalam hubungan prasyarat (prerequisite).

Masalah jaringan tugas (Task Network Problem):
membuat penjadwalan pengerjaan suatu proyek yang memungkinkan waktu penyelesaian tersingkat.

Masalah pencarian pohon rentang minimum (Minimum Spanning Tree Problem):
mencari rentangan kabel listrik yang totalnya adalah minimal untuk menghubungkan sejumlah kota.

Travelling Salesperson Problem:
tukang pos mencari lintasan terpendek melalui semua alamat penerima pos tanpa harus mendatangi suatu tempat lebih dari satu kali.

Four-color problem:
dalam menggambar peta, memberikan warna yang berbeda pada setiap propinsi yang saling bersebelahan.


Definisi
Suatu graph didefinisikan oleh himpunan verteks dan himpunan sisi (edge). Verteks menyatakan entitas-entitas data dan sisi menyatakan keterhubungan antara verteks. Biasanya untuk suatu graph G digunakan notasi matematis
G = (V, E)

V adalah himpunan verteks dan E himpunan sisi yang terdefinisi antara pasangan-pasangan verteks. Sebuah sisi antara verteks x dan y ditulis {x, y}.

Suatu graph H = (V1, E1) disebut subgraph dari graph G jika V1 adalah himpunan bagian dari V dan E1 himpunan bagian dari E.

Digraph & Undigraph

Graph Berarah (directed graph atau digraph): jika sisi-sisi pada graph, misalnya {x, y} hanya berlaku pada arah-arah tertentu saja, yaitu dari x ke y tapi tidak dari y ke x; verteks x disebut origin dan vertex y disebut terminus dari sisi tersebut. Secara grafis maka penggambaran arah sisi-sisi digraph dinyatakan dengan anak panah yang mengarah ke verteks terminus, secara notasional sisi graph berarah ditulis sebagai vektor dengan (x, y).
graph di samping ini adalah suatu contoh Digraph G = {V, E}
dengan V = {A, B, C, D, E, F, G, H, I,J, K, L, M}
dan E = {( (A,B),(A,C), (A,D), (A,F), (B,C), (B,H), (C,E), (C,G), (C,H), (C,I), (D,E), (D,F), (D,G), (D,K), (D,L), (E,F), (G,I), (G,K), (H,I), (I,J), (I,M), (J,K), (J,M), (L,K), (L,M)}.

Graph Tak Berarah (undirected graph atau undigraph): setiap sisi {x, y} berlaku pada kedua arah: baik x ke y maupun y ke x. Secara grafis sisi pada undigraph tidak memiliki mata panah dan secara notasional menggunakan kurung kurawal.
graph di samping ini adalah suatu contoh Undigraph G = {V, E}
dengan V = {A, B, C, D, E, F, G, H, I,J, K, L, M}
dan E = { {A,B},{A,C}, {A,D}, {A,F}, {B,C}, {B,H}, {C,E}, {C,G}, {C,H}, {C,I}, {D,E}, {D,F}, {D,G}, {D,K}, {D,L}, {E,F}, {G,I}, {G,K}, {H,I}, {I,J}, {I,M}, {J,K}, {J,M}, {L,K}, {L,M}}.

Dalam masalah-masalah graph undigraph bisa dipandang sebagai suatu digraph dengan mengganti setiap sisi tak berarahnya dengan dua sisi untuk masing-masing arah yang berlawanan.
Undigraph di atas tersebut bisa dipandang sebagai Digraph G = {V, E}
dengan V = {A, B, C, D, E, F, G, H, I,J, K, L, M}
dan E = { (A,B),(A,C), (A,D), (A,F), (B,C), (B,H), (C,E), (C,G), (C,H), (C,I), (D,E), (D,F), (D,G), (D,K), (D,L), (E,F), (G,I), (G,K), (H,I), (I,J), (I,M), (J,K), (J,M), (L,K), (L,M), (B,A), (C,A), (D,A), (F,A), (C,B), (H,B), (E,C), (G,C), (H,C), (I,C), (E,D), (F,D), (G,D), (K,D), (L,D), (F,E), (I,G), (K,G), (I,H), (J,I), (M,I), (K,J), (M,J), (K,L), (M,L)}

Selain itu, berdasarkan definisi ini maka struktur data linear maupun hirarkis adalah juga graph. Node-node pada struktur linear atupun hirarkis adalah verteks-verteks dalam pengertian graph dengan sisi-sisinya menyusun node-node tersebut secara linear atau hirarkis. Sementara kita telah ketahui bahwa struktur data linear adalah juga tree dengan pencabangan pada setiap node hanya satu atau tidak ada. Linear 1-way linked list adalah digraph, linear 2-way linked list bisa disebut undigraph.


Pengertian Struktur Data Linked List

Linked list (list bertaut) adalah salah satu struktur data dasar yang sangat fundamental dalam bidang ilmu komputer. Dengan menggunakan linked list maka programmer dapat menimpan datanya kapanpun dibutuhkan. Linked list mirip dangan array, kecuali pada linked list data yang ingin disimpan dapat dialokasikan secara dinamis pada saat pengoperasian program (run-time).

Pada array, apabila programmer ingin menyimpan data, programmer diharuskan untuk mendefinisikan besar array terlebih dahulu, seringkali programmer mengalokasikan array yang sangat besar(misal 100). Hal ini tidak efektif karena seringkali yang dipakai tidak sebesar itu. Dan apabila programmer ingin menyimpan data lebih dari seratus data, maka hal itu tidak dapat dimungkinkan karena sifat array yang besarnya statik. Linked list adalah salah satu struktur data yang mampu menutupi kelemahan tersebut.

Secara umum linked list tersusun atas sejumlah bagian-bagian data yang lebih kecil yang terhubung (biasanya melalui pointer). Linked list dapat divisualisasikan seperti kereta, bagian kepala linked list adalah mesin kereta, data yang disimpan adalah gerbong, dan pengait antar gerbong adalah pointer.

-------- -------- --------
Mesin Data Data
-------- -------- --------
(kepala) ---> Pointer ---> Pointer --
-------- -------- --------

Programmer membaca data menyerupai kondektur yang ingin memeriksa karcis penumpang. Programmer menyusuri linked list melalui kepalanya, dan kemudian berlanjut ke gerbong (data) berikutnya, dan seterusnya sampai gerbong terakhir (biasanya ditandai dengan pointer menunjukkan alamat kosong (NULL)). Penyusuran data dilakukan secara satu persatu sehingga penyusuran data bekerja dengan keefektifan On. Dibandingkan array, ini merupakan kelemahan terbesar linked list. Pada array, apabilan programmer ingin mengakses data ke-n (index n), maka programmer dapat langsung mengaksesnya. Sedangkan dengan linked list programmer harus menyusuri data sebanyak n terlebih dahulu. 
 
 
STRUTUR DATA SORT

Sort adalah proses pengurutan data yang sebelumnya disusun secara acak sehingga menjadi tersusun secara teratur menurut suatu aturan tertentu.
Pada umumnya terdapat 2 jenis pengurutan :
Ascending (Naik)
Descending (Turun)
Contoh :
Data Acak : 5 6 8 1 3 25 10
Terurut Ascending : 1 3 5 6 8 10 25
Terurut Descending : 25 10 8 6 5 3 1
Untuk melakukan proses pengurutan tersebut dapat digunakan berbagai macam cara / metoda. Beberapa metoda diantaranya :
a) Buble / Exchange Sort
b) Selection Sort
c) Insertion Sort
d) Quick Sort
Bubble / Exchange Sort
Memindahkan elemen yang sekanag dengan elemen yang berikutnya, jika elemen sekarang > elemen berikutnya, maka tukar
Proses :
22 10 15 3 8 2
22 10 15 3 2 8
22 10 15 2 3 8
22 10 2 15 3 8
22 2 10 15 3 8
2 22 10 15 3 8
Langkah 1 :
Pengecekan dapat dimulai dari data paling awal atau paling akhir. Pada contoh di samping ini pengecekan di mulai dari data yang paling akhir. Data paling akhir dibandingkan dengan data di depannya, jika ternyata lebih kecil maka tukar. Dan pengecekan yang sama dilakukan terhadap data yang selanjutnya sampai dengan data yang paling awal.
Langkah 2 :
Proses di atas adalah pengurutan data dengan metoda bubble ascending.
Untuk yang descending adalah kebalikan dari proses diatas.
Berikut penggalan listing program Procedure TukarData dan Procedure Bubble Sort.
Procedure TukarData
Procedure TukarData(var a,b : word);
Var c : word;
Begin
c:=a;
a:=b;
b:=c;
end;
Procedure Bubble Sort Ascending
Procedure Asc_Bubble(var data:array; jmldata:integer);
Var i,j : integer;
Begin
For i:= 2 to jmldata do
For j:= jmldata downto I do
If data[j] <>
Tukardata (data[j], data[j-1]);
end;
Untuk pengurutan secara descending anda hanya perlu menggantikan baris ke-6 dengan berikut ini :
If data[j] > data[j-1] then
Selection Sort
Membandingkan elemen yang sekarang dengan elemen yang berikutnya sampai dengan elemen yang terakhir. Jika ditemukan elemen lain yang lebih kecil dari elemen sekarang maka dicatat posisinya dan kemudian ditukar. Dan begitu seterusnya.


SARAN

Pahami dan pelajarilah tentang struktur data, sebab struktur data sangat di perlukan dalam dunia kerja
oleh sebab itu, struktur data sangatlah penting untuk kedepannya.
Sekian saran dari saya Dadan Hadi Ramdani
Semoga apa yg sudah anda baca dapat di mengerti dan di praktekkan dengan baik 
Terimakasih 

Jumat, 07 November 2014

ARTIKEL TENTANG JARINGAN KOMPUTER

Jaringan Komputer secara umum ada 5 macam, yaitu LAN (Local Area Network), MAN (Metropolitan Area Network), WAN (Wide Area Network), Internet, dan Wireless (tanpa kabel). Sebenarnya, konsep dari Jenis Jaringan Komputer sama, yaitu untuk menghubungkan berbagai perangkat jaringan untuk dapat berkomunikasi dan berbagi sumber daya. Hanya yang membedakan adalah dari letak geologis-nya (mencakup wilayah dan area jaringan) dan teknologi yang digunakan (seperti penggunaan jenis kabel yang berbeda, IP Addressing sesuai kelas-nya, dan sistem keamanan (security) yang berbeda). Jadi, saya akan memaparkan tentang ke-5 Jenis Jaringan Komputer menurut sumber-sumber yang saya dapatkan, baik dari para guru SMK N 3 Singaraja dan softcopy maupun hadrcopy yang saya miliki.
* LAN (Local Area Network)
gambar: contoh Jaringan LAN
Local Area Network atau LAN, merupakan suatu Jenis Jaringan Komputer dengan mencakup wilayah lokal. Dengan menggunakan berbagai perangkat jaringan yang cukup sederhana dan populer, seperti menggunakan kabel UTP (Unshielded Twisted-Pair), Hub, Switch, Router, dan lain sebagainya.Contoh dari jaringan LAN seperti komputer-komputer yang saling terhubung di sekolah, di perusahaan, Warnet, maupun antar rumah tetangga yang masih mencakup wilayah LAN.
Keuntungan dari penggunaan Jenis Jaringan Komputer LAN seperti lebih irit dalam pengeluaran biaya operasional, lebih irit dalam penggunaan kabel, transfer data antar node dan komputer labih cepat karena mencakup wilayah yang sempit atau lokal, dan tidak memerlukan operator telekomunikasi untuk membuat sebuah jaringan LAN.
Kerugian dari penggunaan Jenis Jaringan LAN adalah cakupan wilayah jaringan lebih sempit sehingga untuk berkomunikasi ke luar jaringan menjadi lebih sulit dan area cakupan transfer data tidak begitu luas.
* MAN (Metropolitan Area Network)
gambar: contoh jaringan MAN
Metropolitan Area Network atau MAN, merupakan Jenis Jaringan Komputer yang lebih luas dan lebih canggih dari Jenis Jaringan Komputer LAN. Disebut Metropolitan Area Network karena Jenis Jaringan Komputer MAN ini biasa digunakan untuk menghubungkan jaringan komputer dari suatu kota ke kota lainnya. Untuk dapat membuat suatu jaringan MAN, biasanya diperlukan adanya operator telekomunikasi untuk menghubungkan antar jaringan komputer. Contohnya seperti jaringan Depdiknas antar kota atau wilayah dan juga jaringan mall-mall moderen yang saling berhubungan antar kota.
Keuntungan dari Jenis Jaringan Komputer MAN ini diantaranya adalah cakupan wilayah jaringan lebih luas sehingga untuk berkomunikasi menjadi lebih efisien, mempermudah dalam hal berbisnis, dan juga keamanan dalam jaringan menjadi lebih baik.
Kerugian dari Jenis Jaringan Komputer MAN seperti lebih banyak menggunakan biaya operasional, dapat menjadi target operasi oleh para Cracker untuk mengambil keuntungan pribadi, dan untuk memperbaiki jaringan MAN diperlukan waktu yang cukup lama.
* WAN (Wide Area Network)
gambar: contoh jaringan WAN
Wide Area Network atau WAN, merupakan Jenis Jaringan Komputer yang lebih luas dan lebih canggih daripada Jenis Jaringan Komputer LAN dan MAN. Teknologi jaringanWAN biasa digunakan untuk menghubungkan suatu jaringan dengan negara lain atau dari satu benua ke benua yang lainnya. Jaringan WAN bisa terdiri dari berbagai Jenis Jaringan Komputer LAN dan WAN karena luasnya wilayah cakupan dari Jenis Jaringan Komputer WAN. Jaringan WAN, biasanya menggunakan kabel fiber optic serta menanamkannya di dalam tanah maupun melewati jalur bawah laut.
Keuntungan Jenis Jaringan Komputer WAN seperti cakupan wilayah jaringannya lebih luas dari Jenis Jaringan Komputer LAN dan MAN, tukar-menukar informasi menjadi lebih rahasia dan terarah karena untuk berkomunikasi dari suatu negara dengan negara yang lainnya memerlukan keamanan yang lebih, dan juga lebih mudah dalam mengembangkan serta mempermudah dalam hal bisnis.
Kerugian dari Jenis Jaringan WAN seperti biaya operasional yang dibutuhkan menjadi lebih banyak, sangat rentan terhadap bahaya pencurian data-data penting, perawatan untuk jaringan WAN menjadi lebih berat.
* Internet
gambar : contoh jaringan Internet
Internet merupakan jaringan komputer yang global atau mendunia. Karena Internet merupakan jaringan-jaringan komputer yang terhubung secara mendunia, sehingga komunikasi dan transfer data atau file menjadi lebih mudah. Internet bisa dikatakan perpaduan antara berbagai Jenis Jaringan Komputer beserta Topologi dan Tipe Jaringan yang saling berhubungan satu sama lain.
Keuntungan dari Jenis Jaringan Internet diantaranya adalah komunikasi dan berbagi sumber daya dari satu jaringan ke jaringan yang lain menjadi lebih mudah, penyebaran ilmu pengetahuan menjadi lebih pesat, penyampaian informasi menjadi lebih cepat dan mudah, dan menjadi ladang untuk memperoleh penghasilan
Kerugian dari Jenis Jaringan Internet diantaranya adalah kejahatan dunia maya atau cyber criminal menjadi luas, pornografi menjadi semakin luas, transaksi barang-barang ilegal seperti narkoba menjadi marak, dan juga dapat menimbulkan fitnah karena penyampaian informasi yang salah.
* Wireless (Tanpa Kabel)
gambar: contoh Jaringan Wireless
Wireless merupakan Jenis Jaringan Komputer yang menggunakan media transmisi data tanpa menggunakan kabel. Media yang digunakan seperti gelombang radio, inframerah, bluetooth, dan microwave. Wireless bisa difungsikan kedalam jaringan LAN, MAN, maupun WAN. Wireless ditujukan untuk kebutuhan mobilitas yang tinggi.
Keuntungan Jenis Jaringan Wireless seperti kenyamanan untuk terhubung ke jaringan tanpa dibatasi oleh kabel, lebih ke arah pengguna yang memerlukan mobilitas yang tinggi, dan tidak terlalu memerlukan kabel jaringan.
Kerugian Jenis Jaringan Wireless seperti transmisi data kepada para pengguna yang lebih lambat dari penggunaan jaringan dengan kabel, memerlukan keamanan yang ketat karena orang yang berada di luar jaringan bisa menerobos ke dalam jaringan Wireless.
Image

JENIS-JENIS TOPOLOGI JARINGAN KOMPUTER

Pengertian Topologi Jaringan

Topologi jaringan adalah sebuah pola interkoneksi dari beberapa terminal komputer. Topologi jaringan merupakan representasi geometri dari hubungan antar perangkat (terminal komputer, repeaters, bridges) satu dengan lainnya (Green, 1985:22).

Topologi jaringan sendiri terbagi menjadi dua yaitu:
  1. Physical. Merupakan gambaran fisik dari hubungan antara perangkat (komputer, server, hub, switch, dan kabel jaringan) yang membentuk suatu pola khusus 
  2. Logical. Merupakan gambaran bagaimana suatu perangkat dapatberkomunikasi dengan perangkat lainnya.

Topologi Bus

Topologi bus merupakan topologi dimana semua perangakat keras terhubung melalui kabel tunggal yang kedua ujungnya tidak tertutup dan masing-masing ujungnya menggunakan sebuah perangkat terminator. Jika alamat perangkat sesuai dengan alamat pada informasi yang dikirim, maka informasi akan diterima dan diproses. Jika tidak, maka informasi akan diabaikan.

Topologi Bus
Topologi Bus

Keuntungan topologi bus adalah :
  1. Jarak LAN tidak terbatas
  2. Kecepatan pengiriman tinggi.
  3. Tidak diperlukan pengendali pusat.
  4. Jumlah perangkat yang terhubung dapat dirubah tanpa mengganggu yang lain.
  5. Kemampuan pengembangan tinggi.
  6. Keterandalan jaringan tinggi.
  7. Kondusif untuk jaringan gedung bertingkat.
Kerugian topologi bus adalah :
  1. Jika tingkat traffic tinggi dapat menyebabkan kemacetan.
  2. Diperlukan repeater untuk memperkuat sinyal.
  3. Operasional jaringan LAN tergantung tiap perangkat.

Topologi Ring

Topologi ring merupakan topologi dimana setiap perangkat dihubungkan sehingga berbentuk lingkaran. Setiap informasi yang diperoleh akan diperiksa alamatnya oleh perangkat jika sesuai maka informasi akan diproses sedangkan jika tidak maka informasi diabaikan.

Topologi Ring
Topologi Ring

Keuntungan topologi ring adalah:
  1. Kecepatan pengiriman tinggi.
  2. Dapat melayani traffic yang padat.
  3. Tidak diperlukan host, relatif murah.
  4. Dapat melayani berbagai mesin pengirim.
  5. Komunikasi antar terminal mudah.
  6. Waktu yang diperlukan untuk pengaksesan data optimal.
Kerugian topologi ring adalah:
  1. Perubahan jumlah perangkat sulit.
  2. Kerusakan pada media pengirim dapat mempengaruhi seluruh jaringan.
  3. Harus memiliki kemampuan untuk mendeteksi kesalahan untuk kemudian di isolasi.
  4. Kerusakan salah satu perangkat menyebabkan kelumpuhan jaringan.
  5. Tidak baik untuk pengiriman suara, video dan data.

Topologi Tree

Topologi tree merupakan generalisasi dari topologi bus, media transmisi berupa kabel yang bercabang tanpa loop tertutup.Topologi tree selalu dimulai pada titik yang disebut headend. Satu atau beberapa kabel berasal dari headend.

Topologi Tree
Topologi Tree

Keuntungan topologi tree adalah :
  1. Kontrol manajemen mudah karena bersifat terpusat.
  2. Mudah untuk dikembangkan.
Kerugian topologi tree adalah :
  1. Karena data yang dikirim diterima oleh semua perangkat diperlukan mekanisme untuk mengidentifikasi perangkat yang ingin di tuju.
  2. Diperlukan mekanisme transmisi data untuk menghindari overlapping sinyal jika 2 perangkat mengirim data secara bersamaan. 

Topologi Star

Pada topologi star terdapat perangkat pengendali yang berfungsi sebagai pengatur dan pengendali komunikasi data. Sedangkan perangkat lain terhubung dengan perangkat pengendali sehingga pengiriman data akan melalui perangkat pengendali.

Topologi Star
Topologi Star

Keuntungan topologi star adalah:
  1. Dapat diandalkan
  2. Mudah dikembangkan
  3. Keamanan data tinggi
  4. Kemudahan akses ke jaringan LAN lain
Kerugian topologi star adalah:
  1. Jika trafik padat maka dapat menyebabkan lambatnya jaringan
  2. Jaringan sangat bergantung pada perangkat pengendali.

Topologi Mesh

Jenis topologi yang merupakan dari berbagai jenis topologi yang lain(disesuaikan dengan kebutuhan). Biasanya digunakan pada jaringan yang tidak memiliki terlalu banyak node di dalamnya. Dikarenakan setiap perangkat dihubungkan dengan perangkat lainnya.

Topologi Mesh
Topologi Mesh

Kamis, 25 September 2014

PERAN TEKNOLOGI DALAM PERDAGANGAN


TEKNOLOGI INFORMASI DALAM PERDAGANGAN
JARINGAN ELEKTRONIK

  • Perdagangan Melalui Jaringan Elektronik
  1. Manfaat :
    1. Pelayanan pelanggan lebih baik
    2. Hubungan dengan pemasok dan masyarakat keuangan yang lebih baik
    3. Pengembalian atas investasi pemegang saham dan pemilik meningkat
  2. Kendala :
    1. Biaya Tinggi
    2. Masalah keamanan
    3. Perangkat lunak yang belum mapan atau tidak tersedia.
  3. Jalan menuju perdagangan melelui jalur elektronik
    1. Mengumpulkan Intelijen Bisnis
    2. Sistem Antar Organisasi (IOS) dimana didalamnya terdapat EDI
    3. Membuat Metodologi yang tersedia mencakup daur hidup sistem dan perancangan ulang proses bisnis.
    4. Menggunakan Teknologi yang tersedia dengan sambungan langsung, jaringan nilai tambah dan Internet

  • Strategi Perdagangan Melalui Jaringan Elektronik
Strategi yang paling penting adalah strategi yang elemen-elemennya dikaitkan dengan transmisi data elektronik. Nama yang berkaitan dengan strategi ini adalah sistem antar-organisasi (IOS). EDI merupakan subset dari IOS.
  • Sistem Antar Organisasi (IOS)
Adalah suatu kombinasi perusahaan-perusahaan yang terkait sehingga mereka berfungsi sebagai satu sistem tunggal; yang bekerja sama untuk mencapai tujuan bersama. Perusahaan-perusahaan yang membentuk IOS disebut mitra dagang atau mitra bisnis.


    • Manfaat IOS terbagi dalam dua kategori :
  1. Efisiensi Komparatif :
    • Efisiensi Internal
    • Efisiensi antar-organisasi
  2. Kekuatan Tawar Menawar
  • Keistimewaan produk yang unik
  • Penurunan biaya yang berhubungan dengan pencarian
  • Peningkatan biaya peralihan
  • Pertukaran Data Elektronik (EDI)
Adalah transmisi data dalam bentuk yang terstruktur dan dapat dibaca mesin secara langsung dari computer-ke-komputer diantara beberapa perusahaan.
    • Hubungan EDI yang Umum
Membentuk kaitan antara perusahaan dan pemasoknya (supply side) dan kaitan antara perusahaan dengan pelanggan (customer side)
Set transaksi adalah suatu jenis dokumen tertentu seperti faktur.
EDI memungkinkan terjadinya Pengisian Kembali Persediaan oleh Penjual dan Transfer Dana secara Elektronik
    • Standar EDI
Standar yang digunakan di Amerika Utara dinamakan ANSI ASC X12. Standar Internasional dinamakan EDIFACT.
    • Tingkat Penerapan EDI
Tiga tingkat penggunaan yang berbeda, yaitu :
  1. Pemakai tingkat satu, hanya satu atau dua set transaksi yang ditransmisikan ke sejumlah mitra dagang yang terbatas.
  2. Pemakai tingkat dua, banyak set transaksi yang ditransmisikan ke sejumlah mitra dagang, melampaui lini industri.
  3. Pemakai tingkat tiga, bukan Cuma banyak set transaksi yang ditransmisikan ke banyak mitra dagang, tetapi aplikasi computer perusahaan disesuaikan dengan pendekatan EDI.
Tujuan tingkat satu dan dua adalah mengubah dokumen kertas menjadi elektronik.
Pengaruh Penerapan EDI :
  • Tekanan Pesaing
  • Kekuasaan yang dilaksanakan
  • Kebutuhan Intern
  • Dukungan manajemen puncak
    • Manfaat EDI
Manfaat Langsung : manfaat yang berasal dari teknologi
Manfaat Tidak Langsung adalah manfaat lain yang dihasilkan dari manfaat langsung.
Hubungan manfaat langsung dan tidak langsung :
  • Mengurangi Kesalahan
  • Mengurangi biaya
  • Meningkatkan efisiensi operasional
  • Meningkatkan hubungan dengan mitra dagang
  • Meningkatkan pelayanan pelanggan
  • Teknologi Perdagangan Melalui Jaringan Elektronik
Pilihan Teknologi :
  1. Sambungan Langsung (direct connectivity), bekerja sama dengan penyedia jasa telekomunikasi
  2. Jaringan Bernilai Tambah ( value-added network), jaringan ini disediakan oleh penjual yang bukan hanya menyediakan sirkuit tetapi juga menyediakan banyak jasa yang diperlukan untuk menggunakan sirkuit itu bagi EDI.
  3. Internet, memungkinkan suatu jaringan komunikasi global yang tidak hanya menghubungkan para mitra dagang tetapi juga mencakup para pelanggan.
  • Perkembangan Internet
Pemerintahan AS tahun 1979 membentuk suatu jaringan dinamakan ARPANET, berbagai upaya dimulai tahun 1989 yang mengarah kepada World Wide Web.
Tujuan ARPANET, untuk memeungkinkan personil militer dan periset sipil bertukar informasi yang berkaitan dengan hal-hal militer.


  • World Wide Web
adalah ruang informasi di internet tempat dokumen-dokumen hypermedia disimpan dan dapat diambil melalui suatu skema alamat yang unik.
Web Site, mengacu pada sebuah computer yang dikaitkan ke Internet yang berisi hypermedia yang dapat diakses dari computer lain di jaringan melalui suatu hypertext link.
Hypertext Link, mengacu pada suatu penunjuk yang terdiri dari teks atau grafik yang digunakan untuk mengakses hypertext yang disimpan di Web Site.
Web Page, mengacu pada suatu file hypermedia yang disimpan di suatu Web Site, yang diidentifikasikan oelh satu alamat yang unik.
Home Page, mengacu pada halaman pertama dari suatu Web Site.
URL (Universal Resource Locator) , mengacu pada alamat dari suatu Web Page, terdiri dari :
    • Protocol adalah satu set standar yang mengatur komunikasi data. HTTP adalah protocol untuk hypertext,
    • Domain Name adalah alamat Web Site tempat Web Page disimpan
    • Path dapat mengidentifikasi suatu account tertentu di Web site dan hypertext mark up language (HTML).
Browser, mengacu pada suatu sistem perangkat lunak yang memungkinkan untuk mengambil hypermedia dengan mengetikkan parameter pencarian atau mengklik suatu grafik.
FTP (File Transfer Protocol) , mengacu pada perangkat lunak yang memungkinkan orang menyalin file ke computer yang digunkan dari Web Site mana saja.
  • Model Internet
Selain Web, ada beberapa sistem pengambilan informasi client/server lain yang dapat menggunkan Internet, yaitu :
- Gopher, WAIS, USENET
  • Standar Internet
Standar internet dilakukan oleh dua organisasi yaitu IEFT (Internet Engineering Task Force) dan W3C (World Wide Web Consortium)

  • Keamanan Internet
Firewall dapat memberikan berbagai tingakatan keamanan, tergantung jenisnya. Ada tiga jenis firewall :
  1. Packet Filtering Firewall
  2. Circuit-Level Firewall
  3. Application-Level Firewall

 
Copyright (c) 2010 Dadan Hadi Ramdani. Design by WPThemes Expert
Blogger Templates by Buy My Themes.