b02. bab 2 - landasan teori -...

42
7 BAB 2 LANDASAN TEORI 2.1 Internet 2.1.1 Sejarah Internet Berdasarkan Leiner et al (2003) Internet yang banyak digunakan orang saat ini bermula dari jaringan komputer yang digunakan oleh Departemen Pertahanan Amerika Serikat. Jaringan komputer tersebut dikenal dengan nama ARPANET (Advanced Research Projects Administration Network) yang digunakan pada saat terjadi perang dingin antara Amerika Serikat dengan Russia. Selanjutnya ARPANET dikembangkan menjadi jaringan yang lebih luas lagi yang disebut dengan Internet. Perkembangan Internet menjadi sangat pesat karena banyak fasilitas yang ditawarkan seperti e-mail, file transfer dan lain-lain. Agar dapat mengetahui komputer mana yang akan diakses, maka masing-masing komputer tersebut diberi sebuah alamat yang disebut dengan internet address. Setiap alamat internet harus didaftarkan pada network information center, dimana alamat tersebut harus unik dan direpresentasikan dalam dua wujud yaitu nama domain dan nomor IP- nya.

Upload: vuongquynh

Post on 26-Apr-2019

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

7

BAB 2

LANDASAN TEORI

2.1 Internet

2.1.1 Sejarah Internet

Berdasarkan Leiner et al (2003) Internet yang banyak digunakan

orang saat ini bermula dari jaringan komputer yang digunakan oleh

Departemen Pertahanan Amerika Serikat. Jaringan komputer tersebut

dikenal dengan nama ARPANET (Advanced Research Projects

Administration Network) yang digunakan pada saat terjadi perang dingin

antara Amerika Serikat dengan Russia. Selanjutnya ARPANET

dikembangkan menjadi jaringan yang lebih luas lagi yang disebut dengan

Internet. Perkembangan Internet menjadi sangat pesat karena banyak

fasilitas yang ditawarkan seperti e-mail, file transfer dan lain-lain.

Agar dapat mengetahui komputer mana yang akan diakses, maka

masing-masing komputer tersebut diberi sebuah alamat yang disebut

dengan internet address. Setiap alamat internet harus didaftarkan pada

network information center, dimana alamat tersebut harus unik dan

direpresentasikan dalam dua wujud yaitu nama domain dan nomor IP-

nya.

Page 2: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

8

2.1.2 Pengertian Internet

Menurut Purbo (2000) Internet adalah kumpulan dari jaringan

komputer besar maupun kecil yang luas dan saling berhubungan

menggunakan jaringan komunikasi yang ada diseluruh dunia sebagai

medianya.

Konsep pelayanan Internet terlihat pada gambar 2.1 dibawah ini :

Gambar 2.1 Konsep Pelayanan Internet

Protokol ini secara resmi disebut TCP/IP (Transmission Transfer

Protocol/ Internet Protocol).

Gambar 2.2 Paket-paket protokol yang ada pada jaringan TCP/IP

Page 3: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

9

2.2 Pengertian TCP/IP

TCP singkatan dari Transfer Control Protocol sedangkan IP dalah

singkatan dari Internet Protocol. Menurut Sumarno (2007), TCP/IP merupakan

protokol jaringan komputer yang terbuka yang dapat terhubung dengan berbagai

macam jenis perangkat keras maupun perangkat lunak. TCP terdiri dari beberapa

layer atau lapisan yang memiliki fungsi yang khusus dalam komunikasi data.

Setiap fungsi dari layer selain dapat bekerjasama dengan layer pada tingkat yang

lebih rendah atau lebih tinggi, juga dapat berkomunikasi dengan layer sejenis

pada remote host (peering). IP adalah inti dari TCP/IP yang memiliki peran

sebagai pembawa data yang independen. Semua dokumen TCP/IP dalam bentuk

public dokumen IEN dan RFC.

IP terbagi menjadi kelas network A, B dan C. Sedangkan kelas D yang

digunakan untuk keperluan reverse IP dapat diabaikan. IP ditulis dalam bilangan

desimal dari 0 sampai 255. Data yang mengalir antar layer atau antar host

dibungkus dan diberi header dengan tujuan agar setiap layer dapat mengenali

dan dapat memproses lebih lanjut. Sebuah host tidak mengetahui alamat IP

gateway pada jaringan yang lain, akan tetapi data tersebut mengalir menuju host

tujuan yang terdapat pada network lain melalui gateway network-nya setelah

diberi penentuan routing alamat IP. Ciri-ciri TCP/IP :

1. Network Technological Independence

2. Universal Interconnection

3. End-to-End Acknowledgement

4. Application protocol Standard

TCP/IP menjadi satu nama karena fungsinya yang selalu berkaitan satu

Page 4: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

10

sama lain dalam proses komunikasi data. TCP/IP saat ini banyak digunakan

dalam banyak jaringan komputer lokal (Local Area Network/LAN) yang

terhubung pada koneksi Internet, karena TCP/IP memiliki sifat :

1. Merupakan protokol standar yang terbuka, gratis dan dikembangkan terpisah

dari perangkat keras komputer tertentu. Karena itu protokol ini banyak

didukung oleh vendor perangkat keras, sehingga TCP/IP merupakan

pemersatu perangkat keras dan lunak komputer yang terdiri dari berbagai

macam vendor yang berbeda.

2. Berdiri sendiri atau terpisah dari berbagai jaringan perangkat keras. Sifat ini

memungkinkan TCP/IP bergabung dengan banyak jaringan komputer yang

ada. TCP/IP dapat beroperasi melalui sebuah ethernet, token ring, maupun

sebuah saluran dial-up, dan secara virtual melalui berbagai media fisik

transmisi data.

3. Dapat dijadikan sebagai alamat umum sehingga setiap perangkat yang

menggunakan TCP/IP akan memiliki sebuah alamat yang unik dalam sebuah

jaringan komputer lokal atau jaringan komputer global seperti internet.

4. Protokol ini di-standarisasi dengan skala tinggi secara konsisten sehingga

dapat memberikan layanan kepada pengguna internet di dunia.

2.3 World Wide Web (WWW)

Banyak orang yang mempunyai pendapat bahwa internet dan World Wide

Web adalah dua hal yang sama, namun sebenarnya internet dan World Wide Web

adalah dua hal yang berbeda. Internet berfungsi sebagai mekanisme transportasi

data, sedangkan World Wide Web adalah sebuah aplikasi yang menggunakan

Page 5: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

11

fungsi transportasi tersebut.

Menurut Turban, Rainer, dan Potter (2003, p214), Web adalah sebuah

sistem standar yang sudah disetujui secara universal, digunakan untuk

menyimpan, menerima, memformat, dan menampilkan informasi via arsitektur

client/server. Web meliputi semua tipe data informasi digital termasuk text,

hypermedia, gambar, dan suara.

World Wide Web adalah kombinasi dari 4 ide, yaitu :

1. Hypertext : sebuah format kata yang dapat menghubungkan pengguna

internet terhubung antara sebuah dokumen ke dokumen lainnya,

menggunakan koneksi internet. Biasa disebut juga dengan hyperlinks.

2. Resource Identifiers : identifikasi yang unik yang digunakan untuk

mengalokasikan file atau dokumen di dalam jaringan. Biasanya dikenal

dengan URL (Uniform Resource Locator).

3. Client-server : sebuah sistem dimana komputer klien meminta sebuah

informasi, dapat berupa data atau file kepada komputer server yang memiliki

data tersebut.

4. Markup Language : kumpulan karakter atau kode untuk mengidentifikasi

data atau teks yang dikirim.

Untuk mengakses sebuah situs web, pengguna internet harus

mengidentifikasi alamat URL, berisi spesifikasi alamat web yang dituju. Salah

satu contoh dari URL misalnya, http://www.microsoft.com/ untuk situs web

Microsoft.

Page 6: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

12

2.4 Hypertext Transfer Protocol (HTTP)

Hypertext Transfer Protocol merupakan sebuah metode atau cara yang

digunakan untuk mengirimkan informasi di dalam World Wide Web. Digunakan

sebagai cara untuk mengirimkan dan menerima informasi Hypertext Markup

Language (HTML).

Pengembangan HTTP dikoordinasikan oleh World Wide Web Consortium

dan Internet Engineering Task Force. Titik puncaknya adalah menghasilkan

sebuah seri dari RFCs, dikenal dengan RFC 2616 (pada tahun 1999), dan untuk

selanjutnya diartikan sebagai HTTP/1.1, sebuah versi dari HTTP yang masih

digunakan sampai saat ini.

HTTP adalah protokol pengirim dan penerima antara klien dan server.

Web Browser dapat diartikan sebagai klien, dan dapat juga disebut atau diartikan

sebagai “pengguna”. Sedangkan server tujuan merupakan penyedia dan

penghasil data atau informasi, termasuk file, gambar dan lain sebagainya.

2.5 WEB 2.0

Menurut Tim Oreilly (2005), Web 2.0 adalah sebuah revolusi bisnis di

dalam industri komputer yang terjadi akibat pergerakan ke internet sebagai

platform, dan suatu usaha untuk mengerti aturan-aturan agar sukses di platform

tersebut. Aturan utamanya adalah membangun aplikasi yang memanfaatkan efek

jaringan agar lebih baik dalam mendapatkan pengguna yang lebih banyak.

Web 2.0 menjadi topik hangat dalam pembahasan web saat ini. Prinsip-

prinsip dari Web 2.0, antara lain sebagai berikut:

Web sebagai platform

Page 7: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

13

Data sebagai pengendali utama

Effect jaringan diciptakan oleh partisipasi arsitektur

Inovasi dalam sistem rakitan dan yang menyatukan fitur dari yang

terdistribusi, pengembang yang independen

Model bisnis yg ringan yang dikembangkan dengan konten dan layanan

syndication

Akhir dari siklus adopsi perangkat lunak

2.6 Asynchronous JavaScript and XML (AJAX)

AJAX yang merupakan singkatan dari Asynchronous Javascript and XML

adalah sebuah teknik pengembangan web yang ditujukan untuk mengembangkan

web interaktif. Penggunaan AJAX bertujuan untuk menjadikan halaman-

halaman web lebih responsif dengan melakukan pertukaran kumpulan data-data

dalam jumlah sedikit dengan server sehingga keseluruhan halaman web tidak

harus di-reload setiap kali pengguna melakukan permintaan tertentu. Hal ini

tentunya akan meningkatkan interaktivitas, kecepatan, dan keleluasaan

penggunaan halaman web. (Garret, 2005)

AJAX bukanlah sebuah teknologi, melainkan suatu kumpulan teknologi-

teknologi yang berjalan di belakangnya. Teknologi-teknologi yang berada di

balik AJAX, antara lain:

1. HTML/XHTML (Hypertext/Extensible Markup Language)

2. CSS (Cascading Stylesheet)

3. DOM (Document Object Model)

4. XML (Extensible Markup Language)

Page 8: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

14

5. XSLT

6. XMLHttp

7. JavaScript

2.6.1 Prinsip-Prinsip AJAX

Berdasarkan Zakas et al (2006, p9), sebagai awal dari

pengembangan, AJAX masih jauh dari kesempurnaan. Namun, sejumlah

web developer menganggap AJAX sebagai sebuah tantangan yang sangat

menarik. Michael Mahemof, seorang software developer

mengidentifikasi beberapa prinsip dari aplikasi AJAX yang baik, antara

lain sebagai berikut:

a. Trafik minimal

AJAX mengurangi sejumlah trafik yang dianggap tidak berguna

antara komputer server dan klien.

b. Tidak ada kejutan

Aplikasi AJAX memperkenalkan model interaksi pengguna yang

berbeda dengan aplikasi web tradisional. Berlawanan dengan standar web

click and wait, beberapa aplikasi AJAX mengimplementasikan paradigma

antarmuka pengguna yang berbeda, seperti drag and drop dan klik ganda.

c. Pengembangan yang bersifat konvensional

AJAX memanfaatkan model interaksi web tradisional maupun aplikasi

desktop untuk mengurangi waktu belajar para pengguna.

d. Tidak ada distraksi

Page 9: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

15

AJAX tidak menggunakan elemen-elemen halaman yang

mengganggu pengguna secara visual, antara lain animasi yang berulang-

ulang, teks yang berkedip, dan lain-lain.

e. Aksesibilitas

Aplikasi AJAX yang baik harus memperhatikan kepentingan

pengguna baik pengguna primer maupun sekunder, bagaimana akses

pengguna-pengguna tersebut terhadap aplikasi AJAX. Aplikasi-aplikasi

AJAX sebaiknya tidak mengesampingkan aksesibilitas golongan kecil

pengguna-penguna tertentu. Kompatibitas terhadap browser-browser

yang lama juga berpengaruh terhadap faktor aksesibilitas ini.

f. Tidak mendownload halaman secara keseluruhan

Semua komunikasi server setelah melakukan download halaman

inisial, harus ditangani dengan baik oleh mesin AJAX.

g. Mendahulukan kepentingan pengguna

Kepentingan dan kebutuhan pengguna menjadi fokus utama

aplikasi AJAX.

2.6.2 Perbandingan Aplikasi Web Tradisional dengan Aplikasi AJAX

Cara kerja halaman web klasik sebagai berikut, ketika pengguna

melakukan permintaan HTTP kepada server, server akan melakukan

proses data, dan kemudian mengembalikan halaman HTML kepada klien.

Model seperti ini merupakan adaptasi dari penggunaan orisinal web

sebagai media hypertext. Setiap kali pengguna melakukan permintaan,

Page 10: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

16

pengguna harus menunggu respons dari server untuk mengembalikan

permintaan halaman.

Gambar 2.3 Perbandingan Model Aplikasi Web

Aplikasi AJAX menjembatani permintaan klien dan respons

server dengan sebuah media yang disebut mesin AJAX sehingga

menjadikan aplikasi web lebih responsif dan mengurangi waktu tunggu

pengguna. Mesin AJAX ini akan mengubah sistem kerja aplikasi web

yang synchronous menjadi asynchronous dan menjadikan komunikasi

pengguna dan server menjadi independen.

Page 11: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

17

Gambar 2.4 Perbandingan model interaksi synchronous dan

asynchrounous

2.7 Web Services

Menurut Richards (2006, p11 ) web services adalah aplikasi yang diakses

melalui internet menggunakan standar protokol internet dan menggunakan XML

sebagai format pesannya.

Menurut W3C Web Services Architecture Working Group (2004)

pengertian web services adalah suatu sistem piranti lunak yang dirancang untuk

mendukung interaksi antar mesin-mesin pada suatu jaringan, seperti internet dan

Page 12: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

18

diakses melalui sistem jarak jauh. Sehingga yang terlibat adalah Sistem server

yang menyediakan layanan web services, kemudian client yang mengakses

fungsi dari web services tersebut.

2.8 Ruby

2.8.1 Sejarah

Ruby adalah bahasa pemograman yang dibuat oleh Yukihiro

“Matz” Matsumoto, seorang berkebangsaan Jepang pada tahun 1993.

Namun baru pada tahun 1995 diperkenalkan ke masyarakat umum. Ruby

merupakan bahasa pemograman yang memiliki fitur OOP (Object

Oriented Programming) yang sangat kuat. Ruby dibentuk sejak awal

dengan struktur OOP menggunakan bahasa C. Ruby termasuk dalam

kategori bahasa scripting. (Stewart, 2001).

Bahasa scripting adalah bahasa pemograman komputer yang

secara langsung diterjemahkan ke machine instruction serta langsung

dijalankan setiap kali kode program dijalankan. Yang menjadi perbedaan

dengan program, adalah karena program di compile menjadi binary

executable file permanen sebelum dijalankan.

Ruby awalnya dibuat untuk mewujudkan tujuan dari penciptanya

yaitu adanya suatu bahasa scripting yang memiliki fitur OOP,

sebagaimana diketahui pada saat itu hanya bahasa scripting Perl adalah

yang paling populer namun tidak mendukung OOP.

Pada tahun 2006, Ruby diterima oleh banyak orang. Dengan

komunitas pengguna Ruby yang aktif di banyak kota-kota di seluruh

Page 13: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

19

dunia dan konferensi-konferensi beserta pertemuan Ruby terkait. Saat ini

banyak programmer profesional dari seluruh dunia serius ikut

mengembangkan Ruby.

Gambar 2.5. Ruby-Talk

Ruby-Talk, (http://www.ruby-lang.org/) milis utama untuk diskusi

Ruby telah mencapai kisaran 200 email setiap hari.

TIOBE index (http://www.tiobe.com/), yang menghitung

perkembangan bahasa-bahasa pemrograman, menempatkan Ruby pada

peringkat ke 10 diantara bahasa-bahasa pemrograman di seluruh dunia.

Melihat pada perkembangan ini, mereka memperkirakan, Kebanyakan

dari perkembangan Ruby karena terkenalnya software yang ditulis

dengan Ruby, terutama framework web Ruby on Rails.

2.8.2 Struktur Bahasa

Berikut contoh kode program menggunakan Ruby :

class Mahasiswa

def initialize(nama, nim)

@nama = nama

@nim = nim

end

Page 14: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

20

def cetak_info

puts "Nama: #{@nama}"

puts "NIM: #{@nim}"

end

def nama=(nama_baru)

@nama = nama_baru

end

def nama

@nama

end

end

# membuat objek baru

mhs = Mahasiswa.new("Irfani","0800759274")

mhs.cetak_info #menjalankan method cetak_info

mhs.nama = "Ridwan" # mengubah nama objek mhs

mhs.cetak_info

nama = mhs.nama # method ini akan mengembalikan nilai Ridwan

puts nama #mencetak variabel nama dengan isi Ridwan

Tabel 2.1. Contoh Program Ruby

Konvensi pada bahasa ruby ada yang dibentuk dari bahasanya

sendiri dan juga ada yang dibentuk berdasarkan kesepakatan di komunitas

pengguna ruby. Beberapa konvensi tersebut adalah :

• Class Names

• Method_names and variable_names

• Methods_asking_a_question?

• Slightly_dangerous_methods!

• @instance_variables

Page 15: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

21

• $global_variables

• SOME_CONSTANTS or OtherConstants

2.8.3 Fitur Bahasa

Ruby telah mendukung beberapa fitur-fitur terkini yang terdapat

pada bahasa-bahasa pemograman popular lainnya, beberapa diantaranya :

• Ruby memiliki fitur-fitur yang menangani exception, seperti Java atau

Python, untuk mempermudah menangani error.

• Ruby menyediakan mark-and-sweep garbage collector untuk semua

object Ruby. Sehingga object yang sudah tidak digunakan lagi tidak

akan menjadi sampah di memory.

• Menulis extension C di Ruby lebih mudah daripada di Perl ataupun di

Python, dengan API yang elegan untuk memanggil Ruby dari C. Ini

termasuk memanggil Ruby embedded di software, untuk digunakan

sebagai bahasa scripting.

• Ruby bisa load library extension secara dinamis jika Sistem Operasi

mengijinkan.

• Ruby menyediakan fitur OS threading yang independent. Maka,

untuk semua platform dimana Ruby berjalan, Anda juga punya

multithreading, terlepas dari apakah Sistem Operasi mendukung

multithreading atau tidak, bahkan pada MS-DOS sekalipun.

• Ruby sangat portable: Ruby kebanyakan dikembangkan di

GNU/Linux, tetapi juga berjalan di banyak tipe UNIX, Mac OS X,

Page 16: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

22

Windows 95/98/Me/NT/2000/XP, DOS, BeOS, OS/2, dan lain-lain.

2.8.4 Perbandingan Ruby dengan Bahasa Lain

Untuk membandingkan bahasa Ruby dengan bahasa lain, penulis

membandingkannya dengan bahasa lain yang juga memiliki konsep OOP.

Bahasa dengan fitur OOP yang paling populer adalah Java.

Berikut ini adalah perbandingan kode program untuk

menjumlahkan dua angka dimana input diambil dari keyboard.

Kode program dalam Java:

import java.io.*;

public class Addup

{

static public void main(String args[]) throws

Exception {

InputStreamReader stdin = new

InputStreamReader(System.in);

BufferedReader console = new

BufferedReader(stdin);

int i1 = Integer.parseInt(console.readLine());

int i2 = Integer.parseInt(console.readLine());

System.out.println(i1 + i2);

}

}

Tabel 2.2. Kode Program Penjumlahan dalam Java

Anda dapat menuliskan program tersebut di Ruby sebagai berikut:

Page 17: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

23

a = gets.to_i

b = gets.to_i

c = a + b

puts c

Tabel 2.3. Kode Program Penjumlahan dalam Ruby

Dari Java ke Ruby, bisa dipastikan source code akan

menciut/mengecil. Dan sangat besar kemungkinan bahwa untuk membuat

aplikasi di Ruby membutuhkan waktu yang jauh lebih singkat daripada

membuatnya di bahasa Java.

2.9 Ruby on Rails Web Framework (RoR)

Ruby on Rails (http://www.rubyonrails.org/) merupakan sebuah

framework web dengan penerapan pattern MVC. RoR ditulis menggunakan

bahasa pemrograman Ruby yang menerapkan konsep OOP. Di dalam

pengembangan aplikasi menggunakan RoR terdapat dua filosofi dasar yaitu

Convention Over Configuration dan Don’t Repeat Your Self. RoR memiliki

beberapa aturan-aturan yang sebaiknya diikuti. Kemudian RoR akan mengatur

segalanya baik itu database, url mapping, test unit, dan lain lain. Hal ini berbeda

dengan framework web lain seperti Struts, Spring dimana harus melakukan

langkah-langkah yang panjang dalam membuat konfigurasi agar framework

dapat berjalan.

RoR juga telah dilengkapi dengan Ajax, salah satu teknologi terkini

dalam dunia web. Fitur lainnya yaitu Object Relational Mapping (ORM)

membuat pekerjaan yang berhubungan dengan database menjadi mudah. Dimana

Page 18: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

24

database akan di visualisasikan sebagai object yang saling berelasi. Untuk

kemudahan interaksi dengan aplikasi lain RoR juga mendukung fitur web

services.

Beberapa aplikasi yang telah dibuat dengan menggunakan RoR adalah :

1. Basecamphq.com

aplikasi manajemen proyek online

2. Yellowpages.com

Direktori telepon dan bisnis di Amerika Serikat

3. Odeo.com

Situs berbagi file audio (mp3, podcast)

2.10 E-commerce

2.10.1 Pengertian E-commerce

Menurut Turban (2002, p4), e-commerce adalah sebuah konsep

baru yang menggambarkan proses pembelian, menjualan atau pertukaran

produk, jasa dan informasi melalui jaringan komputer, termasuk melalui

internet.

Menurut Kalakota dan Robinson (2001, p4), e-commerce adalah

transaksi membeli dan menjual lewat media digital. Titik beratnya adalah

pada arus pesanan dan laba kotor. Sebagian besar adalah mempertemukan

pembeli dan penjual yang sebelumnya tidak pernah bertemu dan sebagian

kecil dari itu adalah secara sederhana melakukan transaksi yang tadinya

dilakukan melalui surat pemesanan.

Page 19: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

25

Menurut Rayport dan Jaworski (2004, p3), definisi e-commerce

adalah pertukaran antara pihak-pihak (individu, organisasi atau

keduanya) yang dimediasi oleh teknologi, atau seperti kata electronic

yang mendahuluinya, merupakan aktivitas organisasi yang memfasilitasi

pertukaran tersebut..

Kesimpulannya e-commerce adalah pertukaran produk, jasa, dan

informasi dengan mempertemukan pihak penjual kepada konsumen akhir

melalui media elektronik seperti internet maupun media elektronik

lainnya.

2.10.2 Perbedaan E-commerce dengan E-business

E-commerce dan e-business merupakan suatu pembaharuan dalam

bisnis dengan mengunakan jaringan komputer yaitu internet. Dengan kata

lain ecommerce dan e-business adalah penjualan dan pemasaran yang

dilakukan secara online. Hal ini dilakukan untuk menciptakan

kemudahan–kemudahan bagi para pelaku bisnis terutama konsumen.

Karena konsumen merupakan kunci keberhasilan perusahaan, tanpa

adanya konsumen, perusahaan tidak dapat menjalankan bisnisnya.

Menurut Turban, Reiner dan Potter (2003, p275) E-commerce

menggambarkan proses penjualan, pembelian, dan pertukaran produk,

service (pelayanan), dan informasi melalui jaringan komputer, yaitu

internet.

E-business memiliki pengertian yang hampir sama dengan e-

commerce, tetapi tidak hanya penjualan dan pembelian saja melainkan

Page 20: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

26

juga melakukan aktivitas pelayanan (services), kolaborasi dengan partner

bisnis, dan menjalankan transaksi elektronik dalam organisasi.

Menurut Kalakota & Robinson (2001, p.4) E-commerce

didefinisikan sebagai penjualan dan pembelian melalui media digital.

E-business tidak hanya mengenai transaksi e-commerce, tetapi

juga memperbaharui model bisnis lama dengan mengaplikasikan

teknologi didalamnya untuk memaksimalkan nilai konsumen.

2.10.3 Model E-commerce

Menurut Turban (2002, p.13–14), model-model dari e-commerce

berdasarkan transaksi yang dilakukan, adalah :

1. Business to business (B2B)

Model e-commerce yang dilakukan antar perusahaan atau

organisasi.Transaksi B2B meliputi transaksi IOS (Interorganizational

InformationSystem) dan transaksi e-market yang terjadi diantara

organisasi / perusahaan.

Berdasarkan Turban, Rainer dan Potter (2003, p.275), contoh dari

B2B adalah Wallmart dengan Wallmart Lambert.

2. Business to consumer (B2C)

Model e-commerce yang meliputi transaksi retail dengan pembeli

individual. Model ini juga biasa disebut e-tailing, contohnya seperti

Amazon.com

3. Consumer to consumer (C2C)

Page 21: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

27

Model e-commerce dimana konsumen menjual secara langsung

kepada konsumen lainnya. Mereka menggunakan personal web pages

dan portal seperti intranet untuk mengiklankan produk atau jasanya.

4. People to people (P2P)

Model e-commerce jenis khusus dari C2C, dimana orang–orang

dapat bertukar lagu, film, software dan barang lainnya. Contohnya seperti

Kazaa, Imesh

5. Consumer to business (C2B)

Model e-commerce yang meliputi individu yang menggunakan

internet untuk menjual produk atau jasa kepada organisasi, seperti

individu yang mencari penjual, berinteraksi dengan mereka dan

melakukan transaksi online. Contohnya seperti Priceline.com

6. Intrabusines (organizational) e-commerce

Model e-commerce yang meliputi aktivitas internal perusahaan,

biasanya ditampilkan pada intranet atau corporate portal, yang

melibatkan pertukaran barang, jasa, atau informasi diantara unit–unit

yang beragam dalam perusahaan tersebut.

7. Business to employees (B2E)

Model e-commerce yang merupakan bagian dari kategori intra-

business dimana organisasi / perusahaan memberikan jasa, informasi,

atau produk kepada para karyawan.

8. Government to citizens (G2C)

Page 22: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

28

Model e-commerce dimana pemerintah membeli, atau menjual

barang, jasa, atau informasi kepada perusahaan atau masyarakat

individual.

9. Exchange to exchange (E2E)

Model e-commerce yang berupa sistem formal yang

menghubungkan pertukaran.

10. Collaborative commerce

Model e-commerce yang merupakan aplikasi dari IOS untuk

kolaborasi elektronik diantara partner bisnis dan antara karyawan

perusahaan.

11. Mobile commerce

Model e-commerce yang dilakukan dalam lingkungan tanpa

kabel, sering disebut m-commerce.

2.11 Jejaring Sosial

2.11.1 Pengertian Jejaring Sosial

Jejaring sosial adalah struktur sosial yang terdiri dari elemen-

elemen individual atau organisasi. Jejaring ini menunjukan jalan dimana

mereka berhubungan karena kesamaan sosialitas, mulai dari mereka yang

dikenal sehari-hari sampai dengan keluarga. Istilah ini diperkenalkan oleh

profesor J.A. Barnes di tahun 1954.

Jejaring sosial adalah suatu struktur sosial yang dibentuk dari

simpul-simpul (yang umumnya adalah individu atau organisasi) yang

Page 23: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

29

diikat dengan satu atau lebih tipe relasi spesifik seperti nilai, visi, ide,

teman, keturunan, dll.

2.11.2 Sejarah Jejaring Sosial

Sejak komputer dapat dihubungkan satu dengan lainnya dengan

adanya internet banyak upaya awal untuk mendukung jejaring sosial

melalui komunikasi antar komputer.

Situs jejaring sosial diawali oleh Classmates.com pada tahun 1995

yang berfokus pada hubungan antar mantan teman sekolah dan

SixDegrees.com pada tahun 1997 yang membuat ikatan tidak langsung.

Dua model berbeda dari jejaring sosial yang lahir sekitar pada tahun 1999

adalah berbasiskan kepercayaan yang dikembangkan oleh Epinions.com,

dan jejaring sosial yang berbasiskan pertemanan seperti yang

dikembangkan oleh Uskup Jonathan yang kemudian dipakai pada

beberapa situs UK regional di antara 1999 dan 2001. Inovasi meliputi

tidak hanya memperlihatkan siapa berteman dengan siapa, tetapi

memberikan pengguna kontrol yang lebih akan isi dan hubungan. Pada

tahun 2005, suatu layanan jejaring sosial MySpace, dilaporkan lebih

banyak diakses dibandingkan Google dengan Facebook, pesaing yang

tumbuh dengan cepat.

Jejaring sosial mulai menjadi bagian dari strategi internet bisnis

sekitar tahun 2005 ketika Yahoo meluncurkan Yahoo! 360°. Pada bulan

juli 2005 News Corporation membeli MySpace, diikuti oleh ITV (UK)

Page 24: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

30

membeli Friends Reunited pada Desember 2005. Diperkirakan ada lebih

dari 200 situs jejaring sosial menggunakan model jejaring sosial ini.

2.11.3 Layanan Jejaring Sosial

Banyak layanan jejaring sosial berbasiskan web yang

menyediakan kumpulan cara yang beragam bagi pengguna untuk dapat

berinteraksi seperti chat, messaging, email, video, chat suara, share file,

blog, diskusi grup, dan lain-lain. Umumnya jejaring sosial memberikan

layanan untuk membuat biodata dirinya. Pengguna dapat meng-upload

foto dirinya dan dapat menjadi teman dengan pengguna lainnya.

Beberapa jejaring sosial memiliki fitur tambahan seperti pembuatan grup

untuk dapat saling sharing didalamnya.

2.12 Agile Software Development

2.12.1 Sejarah Agile Software Development

Metode pengembangan software secara Agile dikembangkan oleh

17 orang methodologis yang membentuk Agile Software Development

pada bulan Februari 2001. Kelompok ini lebih dikenal dengan sebutan

Agile Alliance (Baldwin dan Scragg, 2004).

Page 25: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

31

2.12.2 Metode Agile Software Development

Di dalam Agile Manifesto (Agile Alliance, 2001) disebutkan

bahwa untuk mengembangkan software dengan cara yang lebih baik ada

4 manifesto utama antara lain :

1. Mementingkan komunikasi/interaksi antar individu dibandingkan

proses dan tools.

2. Mementingkan mengerjakan software dibandingkan dokumentasi

yang lengkap.

3. Kolaborasi dengan para pengguna software. Para pengguna software

dapat memberitahu seperti apa software yang mereka inginkan.

4. Respon terhadap perubahan. Dalam pengembangan software

perubahan adalah sebuah realitas yang tidak bisa dihindari. Sehingga

rencana proyek yang dibuat harus fleksibel dan memungkinkan

perubahan.

Gambar 2.6. Agile Software Development Life Cycle

Page 26: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

32

2.13 Test Driven Development (TDD)

Test-Driven Development adalah sebuah teknik pengembangan software

yang melibatkan penulisan unit-unit test case dan kemudian

mengimplementasikannya kedalam kode yang diperlukan untuk melewati tes

tersebut. Semenjak dipublikasikan pada awal tahun 2003, TDD banyak

mendapatkan respon yang baik dari para pengembang software. (Newkirk dan

Vorontsov, 2004)

Ruby on Rails juga mendukung pengembangan aplikasi dengan

menggunakan teknik TDD ini. Rails secara otomatis membuat unit-unit test case

yang umum digunakan pada saat memulai membuat suatu proyek baru.

2.14 Model View Controller (MVC)

2.14.1 Sejarah MVC

Pada tahun 1979, Trygve Reenskaug mengembangkan sebuah

arsitektur baru untuk mengembangkan aplikasi yang interaktif. Dalam

desainnya, Trygve Reenskaug memisahkan aplikasi menjadi 3 jenis

komponen, yaitu model, views dan controllers. (Thomas, 2005, p9).

2.14.2 Pengertian MVC

MVC adalah salah satu design pattern yang terkenal untuk

pembuatan aplikasi. MVC merupakan singkatan dari Model Views

Controllers yang terdiri dari 3 komponen yang terpisah yang

mempermudah developer karena membuat aplikasi menjadi lebih

portable, scalable dan maintanable.

Page 27: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

33

2.14.3 Komponen MVC

MVC terbagi atas 3 Komponen, yaitu :

1. Model

Model merupakan dasar dari sebuah aplikasi. Model bertanggung

jawab atas state yang ada di dalam aplikasi. State ini bisa bersifat

sementara, yang hanya digunakan untuk beberapa jenis interaksi dengan

pengguna. Terkadang state ini juga bisa bersifat permanen dan disimpan

diluar dari aplikasi tersebut, umumnya didalam database (Thomas dan

Handson, 2005, p9).

2. Views

View bertanggung jawab atas user interface (UI), yang normalnya

berdasarkan data yang ada didalam model. Contohnya, sebuah toko

online mempunya daftar produk-produk yang ingin ditampilkan di layar.

Daftar ini akan bisa diakses melewati model tetapi view-lah yang

bertanggung jawab untuk mengaksesnya dari model dan menampilkannya

sesuai format yang ingin ditampilkan kepada para pengguna. Umumnya

akses view ke model melalui perantara controller. (Thomas dan Handson,

2005, p9).

3. Controllers

Controler merupakan bagian utama dari aplikasi. Controllers

menerima event dari luar sistem (umumnya dari para pengguna), lalu

berinteraksi dengan model dan menampilkannya dengan format yang

layak untuk dilihat oleh para pengguna (Thomas dan Handson, 2005, p9).

Page 28: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

34

Gambar 2.7. Arsitektur Model-View-Controller

2.15 Unified Modelling Languange (UML)

2.15.1 Pengertian UML

Menurut Booch (1998, p8) UML adalah sebuah bahasa visual

untuk memvisualisasikan, menspesifikasikan, membangun dan

mendokumentasikan artifak-artifak yang ada didalam sebuah system.

UML memberikan sebuah standar cara menuliskan rancang

bangun dari sebuah system, yang mencakup semua jenis konseptual

seperti bisnis proses dan fungsi dari sistem.

2.15.2 Use Case

Uses Case adalah sebuah teknik untuk merekam persyaratan

fungsional dari sebuah sistem. Use case mendeskripsikan interaksi tipikal

antara para pengguna sistem dengan sistem itu sendiri, dengan

memberikan sebuah narasi tentang bagimana sistem tersebut digunakan

(Fowler, 2004, p141).

Simbol-simbol yang digunakan dalam Use Case Diagram :

1. Use case

Page 29: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

35

Use case adalah hasil penguraian cakupan sistem secara

fungsional kedalam bentuk-bentuk pernyataan yang lebih kecil.

Pernyataan ini digambarkan dengan simbol ellips.

Gambar 2.8. Use Case.

2. Aktor

Aktor adalah pengguna sistem. Didalam use case diagram para

pengguna sistem atau aktor digambarkan berinteraksi dengan sebuah

sistem melalui use case dan hubungan tertentu.

Gambar 2.9. Aktor.

3. Hubungan (Relasi)

Sebuah relasi digambarkan sebagai sebuah garis yang

menghubungkan aktor dengan use case yang berada di dalam sebuah

sistem. Tipe relasi dapat berbeda tergantung dari bagaimana garis

tersebut digambarkan.

Page 30: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

36

2.15.3 Class Diagram

Class diagram menunjukan class yang terdapat dalam perangkat

lunak dan bagaimana mereka saling berhubungan Class diagram

mendeskripsikan jenis-jenis objek dalam sistem dan berbagai hubungan

statis yang terdapat diantara mereka. Class diagram juga menunjukkan

properti dan operasi sebuah kelas dan batasan-batasan yang terdapat

dalam hubungan-hubungan objek tersebut (Fowler, 2005, p53).

Simbol yang umum digunakan dalam class diagram yaitu :

• Kelas

Kelas digambarkan dengan sebuah kotak yang terbagi atas tiga

bagian, yaitu :

o Nama kelas (bagian atas)

o Attribut kelas (bagian tengah)

o Operasi kelas (bagian bawah)

Gambar 2.10 . Class Diagram

• Hubungan

Didalam class diagram terdapat 2 jenis hubungan yang umum

digunakan, yaitu :

o Asosiasi

Page 31: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

37

Asosiasi digambarkan dengan sebuah garis lurus yang

menghubungkan dua buah kelas, berawal dari kelas sumber

menuju kelas yang dituju.

o Generalisasi

Generalisi digambarkan dengan sebuah garis yang

biasanya digambarkan secara vertikal yang menghubungkan

sebuah kelas sumber dengan subkelasnya. Kelas sumber

ditunjukkan menggunakan gambar segitiga yang menunjuk ke

arah kelas tersebut. Didalam sudut pandang software, yang

dimaksud dengan generalisasi adalah pewarisan (inheritance).

o Depedensi

depedensi ada diantara dua elemen yang saling berkaitan,

dimana perubahan definisi dari elemen yang satu (supplier) juga

menyebabkan perubahan definisi di elemen yang lainya (client).

Kelas client ditunjukkan dengan menggunakan segitiga yang

menunjuk ke arah kelas tersebut.

2.15.4 Sequence Diagram

Interaction diagram menggambarkan bagaimana sekelompok

objek saling berkolaborasi dalam beberapa behavior. UML memiliki

beberapa bentuk interaction diagram dan yang paling umum digunakan

adalah sequence diagram.

Sebuah sequence diagram secara khusus menjabarkan behavior

sebuah skenario tunggal. Diagram tersebut menunjukkan sejumlah objek

Page 32: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

38

contoh dan pesan-pesan yang melewati objek-objek ini didalam use case

(Fowler, 2005, p81).

Gambar 2.11. Contoh Sequence Diagram.

Dalam contoh pada gambar 2.11 digambarkan proses interaksi disaat

member akan melakukan login. Sequence diagram tersebut dimulai pada saat

user mengisi form login lalu kemudian mensubmitnya, formLogin akan diterima

oleh MemberController yang kemudian melakukan proses pencarian data di

dalam objek Member.

2.15.5 UML Color Modelling

UML Color Modelling adalah sebuah tehnik pemodelan objek

yang menambahkan atribut warna untuk tiap-tiap jenis kelas tertentu.

Tiap-tiap tipe ini diwakili oleh satu warna. Tehnik pemodelan ini dapat

membantu untuk mengidentifikasikan kelas-kelas tertentu dan tanggung

jawab yang dimiliki kelas tersebut dalam logical layer. (Coad, 1999)

Dalam UML Color Modelling dikenal 4 jenis Archtypes yang

masing-masing memiliki peranan yang berbeda, yaitu :

a. Moment interval

Page 33: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

39

Moment interval adalah sesuatu dimana seseorang

membutuhkannya untuk dapat mengerjakan suatu pekerjaan dan

mengontrol pekerjaan tersebut untuk kepentingan bisnis dan alasan-

alasan lainnya. Moment interval bersifat sementara dan hanya berlaku

untuk waktu tertentu atau jangka waktu tertentu. (Coad, 1999).

Gambar 2.12. Moment Interval

b. Role

Role adalah suatu cara untuk berpartisipasi yang dilakukan oleh

party( perorangan atau organisasi), place atau thing (Coad, 1999).

Gambar 2.13. Role

c. Party, place,or thing

Parties, places, dan things mewakili orang atau organisasi,

tempat, dan segala sesuatu yang ada dalam proses bisnis.

Gambar 2.14 . Party, Place, or Thing

Page 34: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

40

d. Description

Description adalah sekumpulan nilai yang digunakan secara

berulang-ulang. Description juga menyediakan kumpulan behavior

dari archtypes lain yang dijelaskannya (Coad, 1999).

Gambar 2.15. Description

Untuk lebih jelasnya UML color modelling, perhatikan contoh

berikut :

Gambar 2.16. Contoh UML Color Modelling

Dari gambar diatas bisa diambil kesimpulan bahwa, terdapat suatu

peranan (role) bernama admin didalam sistem. Admin tersebut dapat

mengambil data dari session, yang biasanya berupa data login dan

autentifikasi, dan data-data ini bersifat sementara (moment interval).

Page 35: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

41

Admin juga bisa mengakses data product (thing). Isi detail dari

product dijelaskan dibagian product detail (description).

2.16 Basis Data

2.16.1 Pengertian Database

Menurut Connolly dan Begg(2002, p14) Database adalah

kumpulan dari data-data logikal yang saling terhubung dan deskripsi dari

data-data tersebut yang didesain untuk memenuhi kebutuhan informasi

dari sebuah organisasi.

2.16.2 Entity Relationship Diagram (ERD)

Menurut Whitten, Bentley, dan Dittman (2004, pp295-307), entity

relationship diagram adalah pemodelan data yang menggunakan

beberapa notasi untuk menggambarkan data yang berhubungan dengan

entity dan hubungan (relationship) yang dideskripsikan oleh data

tersebut.

ERD merupakan diagram yang menggambarkan hubungan antar

objek data. Salah satu alternatif pembuatan ERD adalah dengan notasi

pemodelan Crow’s Feet.

Simbol-simbol yang ada digunakan dalam ERD

1. Entitas

Entitas adalah objek data representasi dari hampir semua

informasi gabungan yang harus dipahami yang direpresentasikan pada

database. (Connolly dan Begg, 2002, p15). Entitas terdiri atas beberapa

Page 36: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

42

atribut yang merupakan properti dari entitas tersebut. Ada beberapa

macam jenis key atribut, antara lain:

• Key adalah suatu atribut, atau group atribut yang mengasumsikan

nilai unik untuk setiap instan.

• Composite key adalah group atribut yang secara unik

mengidentifikasi instan dari suatu entitas.

• Candidate key adalah suatu key yang dapat menjadi primary key dari

suatu entitas.

• Primary key adalah candidate key yang sebagian besar digunakan

untuk mengidentifikasi secara unik instan entitas tunggal

• Alternate key/Alternate key adalah candidate key yang tidak menjadi

primary key

• Foreign key adalah key utama dari suatu entitas yang digunakan pada

entitas lain untuk mengidentifikasi instan dari relationship.

Gambar 2.17. Entitas

2. Relationship

Relationship adalah hubungan asosiasi antar entitas. (Connolly

dan Begg, 2002, p15). Hubungan ini dinotasikan pada ERD dengan garis

lurus. Ada dua jenis relationship yaitu Non-identifying relationship dan

Page 37: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

43

Identifying relationship. Non-identifying relationship adalah hubungan

dimana setiap entitas partisipan mempunyai primary key independen-nya

masing-masing. Relationship tipe ini digambarkan dengan garis putus-

putus dan biasa disebut strong entity. Sementara identifying relationship

adalah hubungan dimana setiap entitas partisipan mempunyai primary

key yang sama. Relationship tipe ini digambarkan dengan garis solid yang

tidak terputus-putus dan biasa disebut weak entity.

3. Kardinalitas

Kardinalitas merupakan suatu properties dari suatu relasi yang

mendefinisikan jumlah hubungan maksimum dari tiap entitas yang

memiliki relasi tersebut. (Connolly dan Begg, 2002, p351). Notasi

penggambaran kardinalitas pada ERD dengan pemodelan Crow’s Feet

adalah sebagai berikut:

Page 38: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

44

Gambar 2.18. Notasi Kardinalitas

Gambar 2.19. Hubungan Antar Entitas

Gambar 2.19 diatas merupakan contoh relasi antar entitas product

category dengan product. Kardinalitas pada relasi tersebut menunjukkan bahwa

setiap produk hanya memiliki satu kategori produk dan kategori produk dapat

Page 39: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

45

memiliki nol hingga banyak produk. Atribut name pada entitas products

merupakan atribut yang harus diisi, sedangkan atribut product_category_id

merupakan atribut foreign key yang menunjuk ke entitas product_categories.

2.16.3 Normalisasi

Menurut Connolly dan Begg(2002, p376) Normalisasi merupakan

sebuah teknik untuk menghasilkan sebuah kumpulan dari relasi-relasi

dengan atribut-atribut yang diinginkan, berdasarkan kebutuhan data

perusahaan.

Tujuan normalisasi dalam perancangan model data logikal untuk

sistem basis data relasional adalah untuk menciptakan representasi data,

hubungan antar data dan constraint yang akurat. Tahapan-tahapan

Normalisasi :

1. Unnormal Form (UNF)

Pada bentuk ini sebuah tabel masih memiliki satu atau lebih

kelompok data yang berulang. (Connolly dan Begg, 2002, p387)

2. First Normal Form (1NF)

Pada bentuk ini sebuah tabel memiliki relasi dimana pada setiap

sel (perpotongan baris dan kolom) hanya mengandung satu nilai.

(Connolly dan Begg, 2002, p388)

3. Second Normal Form (2NF)

Pada bentuk ini sebuah tabel memiliki relasi yang sama dengan

bentuk First Normal Form dan setiap attribut non-primary key tergantung

sepenuhnya pada primary key. (Connolly dan Begg, 2002, p392)

Page 40: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

46

Dalam bentuk 2NF ini tidak boleh ada partial dependency. Jika

masih ada partial depedency, maka attribut yang memiliki functional

dependent tersebut harus dihilangkan dari sebuah relasi dengan cara

menempatkannya ke dalam sebuah relasi baru.

4. Third Normal Form (3NF)

Pada bentuk ini sebuah tabel memiliki relasi seperti yang ada

dalam 1NF dan 2NF, dan tidak ada atribut non-primary key yang

tergantung pada atribut non-primary key lainnya.

2.17 Interaksi Manusia dan Komputer

Delapan Aturan Emas Perancangan dalam hubungannya dengan Interaksi

Manusia dan Komputer

a. Berusaha keras untuk konsisten

Harus berusaha untukmenjaga konsistensi fungsi dan format tampilan

pada setiap halaman

b. Memungkinkan pengguna yang sering menggunakan shortcuts

Ketika frekuensi penggunaan meningkat, maka pengguna ingin

mengurangi jumlah interaksi dan meningkatkan kecepatan interaksi. Shorcuts

dapat membantu mempersingkat waktu dan jumlah interaksi yang dilakukan

oleh pengguna.

c. Memberikan umpan balik yang informatif

Untuk setiaip aksi pengguna, harus ada umpan balik sehingga pengguna

mengetahui apa yang telah dan akan dilakukan. Umpan balik dapat berupa

pesan, konfirmasi, informasi ataupun gambaran visual yang informatif.

Page 41: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

47

d. Merancang dialog untuk menghasilkan keadaan akhir

Rangkaian aksi harus dikelompokkan ke dalam kelompok-kelompok

sesuai dengan fungsi nya masing-masing. Umpan balik yang informatif

setelah menyelesaikan kelompok aksi tersebut akan memberikan

penyelesaian yang memuaskan kepada pengguna, dan indikasi bahwa setiap

sistem siap untuk melakukan aksi berikutnya.

e. Memberikan pencegahan kesalahan dan penanganan kesalahan yang

sederhana

Sebisa mungkin sistem dirancang sehingga tidak memungkinkan

pengguna untuk dapat melakukan kesalahan yang serius. Jika pengguana

melakukan kesalahan, sistem harus dapat mendeteksi kesalahan dan

memberikan instruksi yang sederhana, bersifat membangun dan khusus guna

melakukan perbaikan.

f. Memungkinkan pembalikan aksi (undo) yang mudah

Sebisa mungkin sistem dirancang sehingga setiap aksi yang dilakukan

harus bisa dibalik. Fitur pembalikan aksi ini menghilangkan ketakutan

pengguna karena mereka mengetahui kesalahan yang telah dilakukan dapat

dibalikan kembali ke keadaan sebelumnya.

g. Mendukung pengendalian dari dalam

Pengguna yang berpengalaman sangat menginginkan perasaan bahwa

mereka menguasai sistem dan sistem merespon aksi mereka. Aksi sistem

yang tiba-tiba, rangkaian data yang membosankan, ketidakmampuan atau

kesulitan dalam mendapatkan informasi yang dibutuhkan menyebabkan

pengguna khawatir dan tidak puas.

Page 42: B02. BAB 2 - LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2008-1-00349-IF-Bab 2.pdf8 2.1.2 Pengertian Internet Menurut Purbo (2000) Internet adalah

48

h. Mengurangi beban ingatan jangka pendek

Keterbatasan manusia untuk mengingat dalam jangka pendek

menyebabkan tampilan harus sederhana, agar pengguna tidak kebingungan

untuk mengingat bagaimana cara menjalankan sistem atau aplikasi tersebut.