BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF...

38
6 BAB 2 LANDASAN TEORI 2.1 Sistem Sistem terdiri dari unsur-unsur seperti masukan (input), pengolahan (processing), serta keluaran (output). Sistem adalah kelompok elemen-elemen yang terintergrasi dengan maksud yang sama untuk mencapai suatu tujuan. Dengan demikian, sistem dapat diartikan sebagai suatu kumpulan atau himpunan dari unsur atau variabel-variabel yang saling terorgansisasi, saling bergantung satu sama lain. 2.2 Analisis Sistem Analisis sistem didefinisikan sebagai bagaimana memahami dan menspesifikasi dengan detail apa yang harus dilakukan oleh sistem. Tahapan Analisis Sistem : 1. Mengidentifikasi Masalah Identifikasi masalah merupakan langkah awal dari analisis sistem. Dalam tahap ini didefinisikan masalah yang harus dipecahkan dengan munculnya pertanyaan yang ingin dipecahkan. 2. Memahami Kerja Sistem yang Ada Langkah ini dilakukan dengan mempelajari secara rinci bagaimana sistem yang sudah ada berjalan. Untuk mempelajari operasi dari sistem ini diperlukan data yang dapat diperoleh dengan melakukan penelitian terhadap sistem.

Transcript of BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF...

Page 1: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

6

BAB 2

LANDASAN TEORI

2.1 Sistem

Sistem terdiri dari unsur-unsur seperti masukan (input), pengolahan (processing),

serta keluaran (output). Sistem adalah kelompok elemen-elemen yang terintergrasi

dengan maksud yang sama untuk mencapai suatu tujuan.

Dengan demikian, sistem dapat diartikan sebagai suatu kumpulan atau himpunan

dari unsur atau variabel-variabel yang saling terorgansisasi, saling bergantung satu sama

lain.

2.2 Analisis Sistem

Analisis sistem didefinisikan sebagai bagaimana memahami dan menspesifikasi

dengan detail apa yang harus dilakukan oleh sistem.

Tahapan Analisis Sistem :

1. Mengidentifikasi Masalah

Identifikasi masalah merupakan langkah awal dari analisis sistem. Dalam tahap

ini didefinisikan masalah yang harus dipecahkan dengan munculnya pertanyaan yang

ingin dipecahkan.

2. Memahami Kerja Sistem yang Ada

Langkah ini dilakukan dengan mempelajari secara rinci bagaimana sistem yang

sudah ada berjalan. Untuk mempelajari operasi dari sistem ini diperlukan data yang

dapat diperoleh dengan melakukan penelitian terhadap sistem.

Page 2: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

7

3. Menganalisis Sistem

Berdasarkan data yang sudah diperoleh maka dilakukan analisa hasil penelitian

yang sudah dilakukan untuk mendapatkan pemecahan masalah yang akan dipecahkan

4. Membuat Laporan

Laporan perlu dibuat sebagai dokumentasi dari penelitian. Tujuan utamanya

adalah sebagai bukti secara tertulis tentang hasil analisa yang sudah dilakukan.

2.3 Internet

Menurut Aji Supriyanto (2005,p336), internet adalah sebuah jaringan komputer

global, yang terdiri dari jutaan komputer yang saling terhubung dengan menggunakan

protokol yang sama untuk berbagi informasi secara bersama.

Internet berawal di tahun 1969 dengan nama ARPANET ( ARPA singkatan dari

Advanced Research Project Agency dari Departemen Pertahanan AS ) yang berupa

sambungan empat komputer pada kontraktor pertahanan dan universitas yang berbeda.

Kemudian, jaringan meluas menjadi 62 komputer pada tahun 1974, 500 komputer di

tahun 1983, dan berjumlah 28.000 pada 1987. (Williams dan Sawyer,p50)

2.4 World Wide Web (WWW)

World Wide Web (WWW) merupakan sistem terkoneksi server internet yang

mendukung dokumen-dokumen berformat multimedia, teks, suara, foto, dan video.

(William dan Sawyer, 2007,p44)

World Wide Web (WWW) dapat mengakses informasi-informasi yang tidak

hanya berupa teks, namun berupa gambar, video, dan animasi.

Page 3: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

8

Beberapa istilah yang berhubungan dengan World Wide Web (WWW) :

• Hyperlink, merupakan teks atau gambar yang berkaitan dengan file lain atau

bagian lain suatu file pada situs yang sama atau berbeda.

• HTML (HyperText Markup Languange) merupakan tagging yang digunakan

untuk membuat kode file halaman web agar dapat memiliki tampilan yang

beragam pada komputer.

• HTTP (HyperText Transfer Protocol) merupakan protokol komunikasi yang

digunakan untuk mengakses WWW (World Wide Web).

• Web Browser adalah perangkat lunak seperti Mozila Firefox yang digunakan

untuk mengakses halaman web.

2.5 Model Waterfall

Model waterfall mengusulkan sebuah pendekatan pengembangan perangkat

lunak yang sistematik dan sekuensial. Di mulai pada tingkat serta kemajuan seluruh

sistem analisis, desain, kode, pengujian, dan pemeliharaan. (Roger S. Presman, p37)

Model waterfall adalah paradigma rekayasa perangkat lunak yang paling luas

dipakai dan paling tua.

Page 4: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

9

Gambar 2.1 Model Waterfall

Dapat dilihat pada gambar 2.1 tahapan-tahapan dari model waterfall sebagai

berikut :

a. System engineering, dimulai dengan membangun syarat dari semua elemen

sistem dan mengalokasikan beberapa subset dari kebutuhan keperangkat

lunak tersebut.

b. Analysis, proses pengumpulan kebutuhan diintensifkan dan difokuskan,

khususnya pada perangkat lunak.

c. Design, desain perangkat lunak sebenarnya adalah proses multi langkah

yang berfokus pada empat atribut sebuah program yang berbeda : struktur

data, arsitektur perangkat lunak, representasi interface, dan detail

(algoritma) prosedural.

d. Code, desain harus diterjemahkan kedalam bentuk mesin yang bisa dibaca.

e. Testing, proses pengujian berfokus pada logika internal perangkat lunak,

memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal

fungsional yaitu mengarahkan pengujian untuk menemukan kesalahan-

Page 5: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

10

kesalahan dan memastikan bahwa input yang dibatasi akan memberikan

hasil aktual yang sesuai dengan hasil yang dibutuhkan.

f. Maintenance, perangkat lunak akan mengalami perubahan setelah

disampaikan kepada pelanggan. Perubahan akan terjadi karena harus

disesuaikan dengan perubahan di dalam lingkungan eksternalnya (contohnya

sistem operasi yang baru). Pemeliharaan perangkat lunak mengaplikasikan

lagi setiap fase program sebelumnya dan tidak membuat yang baru lagi.

2.6 Unified Modeling Languange (UML)

OOA (Object Oriented Analysis) adalah pendekatan yang digunakan untuk

mempelajari objek yang sudah ada untuk mengetahui apakah mereka dapat digunakan

kembali atau diadaptasi untuk pemakaian baru.

Objek modeling adalah teknik untuk mengidentifikasi objek di dalam lingkungan

sistem dan mengidentifikasi hubungan antara objek-objek tersebut.

UML (Unified Modeling Languange) adalah satu kumpulan konvensi pemodelan

yang digunakan untuk menentukan atau menggambarkan sebuah sistem perangkat lunak

yang terkait dengan objek. (Bentley, Whitten, & Dittman, 2007)

Menurut Sun Microsystems Inc, UML (Unified Modeling Languange) adalah

bahasa nyata (grafis) untuk menggambarkan, menetapkan, membangun, dan

mendokumentasikan sesuatu (benda) pada sebuah sistem perangkat lunak secara

intensif. (Aji Supriyanto, 2005, P222)

UML(Unified Modeling Languange) menawarkan sebuah standar untuk

merancang model sebuah sistem. Dengan menggunakan model, diharapkan

pengembangan perangkat lunak dapat memenuhi semua kebutuhan pengguna dengan

Page 6: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

11

lengkap dan tepat, termasuk faktor-faktor seperti lingkup (scalability), kemampuan

(robustness), keamanan (security), dan sebagainya.

Notasi UML (Unified Modeling Languange) merupakan sekumpulan bentuk

khusus untuk menggambarkan berbagai diagram perangkat lunak. Notasi UML (Unified

Modeling Languange) diturunkan dari 3 notasi yang ada sebelumnya, Object-Oriented

Design (OOD) dari Grady Booch, Object Modeling Technique (OMT) dari Jim

Rumbaugh, dan Ivar Jacobson, Object-Oriented Software Design (OOSE) dari Jacobson.

Pengembangan UML (Unified Modeling Languange) dimulai pada Oktober 1994

oleh Booch dan Rumbaugh, Jacobson bergabung pada musim gugur 1995. Sejak tahun

1996 pengembangan tersebut dikoordinasikan oleh Object Management Group (OMG).

UML (Unified Modelling Languange) kini telah menjadi standar bahasa permodelan

untuk aplikasi berorientasi objek.

2.6.1 Use Case Diagram

Use case diagram adalah diagram yang menggambarkan interaksi sistem

sebagai sebuah kumpulan use case, pelaku (pengguna), dan hubungan keduanya.

Dapat dilihat pada gambar 2.2 use case mengkomunikasikan lingkup kejadian

bisnis yang diproses oleh sistem. Use case narrative adalah deskripsi tekstual

tentang kejadian bisnis dan bagaimana pengguna berinteraksi dengan sistem

untuk menyelesaikan tugas.

Use case adalah urutan langkah-langkah yang secara tindakan saling

terkait (skenario), baik terotomatisasi maupun secara manual

Page 7: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

12

Gambar 2.2 Use Case

1. Aktor

Use case diawali oleh pengguna eksternal yang dinamakan aktor. Aktor

adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran

informasi.

Ada empat macam tipe aktor :

a) Primary business actor – stakeholder yang terutama mendapatkan

keuntungan dari pelaksanaan use case dengan menerima nilai

yang terukur atau terobservasi.

b) Primary system actor – stakeholder yang secara langsung

berhadapan dengan sistem untuk menginisiasi atau memicu

kegiatan atau sistem.

Page 8: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

13

c) External server actor – stakeholder yang melayani kebutuhan

pengguna use case.

d) External receiving actor – stakeholder yang bukan pelaku utama,

tapi menerima nilai yang terukur atau teramati dari use case.

2. Relationship

Pada diagram use case, hubungan digambarkan sebagai garis antara dua

simbol. Pemaknaan hubungan berbeda-beda tergantung bagaimana garis tersebut

digambar dan tipe simbol apa yang digunakan untuk menghubungkan garis

tersebut.

a) Association, yaitu hubungan antara aktor dengan use case dimana

terjadi interaksi di antara mereka.

b) Extension use case, yaitu use case yang terdiri dari langkah yang

diekstraksi dari use case yang lebih kompleks untuk

menyederhanakan masalah original dan karena itu memperluas

fungsinya.

c) Abstract use case, yaitu use case yang mengurangi redundansi

antara dua atau lebih use case lain dengan menggabungkan

langkah-langkah yang biasa ditemukan pada use case tersebut.

2.6.2 Activity Diagram

Activity diagram seperti pada gambar 2.3 secara grafis digunakan untuk

menggambarkan rangkaian aliran aktivitas baik proses bisnis atau use case.

Diagram ini juga dapat digunakan untuk memodelkan aksi yang akan dilakukan

saat sebuah operasi dieksekusi, dan memodelkan hasil dari aksi tersebut.

Page 9: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

14

Gambar 2.3 Activity Diagram

2.6.4 Sequence Diagram

Sequence diagram seperti terlihat pada gambar 2.4 secara grafis

menggambarkan bagaimana objek berinteraksi dengan satu sama lain melalui

pesan pada eksekusi sebuah use case atau operasi. Diagram ini mengilustrasikan

bagaimana pesan terkirim dan diterima diobjek dan dalam rangkaian apa.

Page 10: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

15

Gambar 2.4 Sequence Diagram

2.6.4 Class Diagram

Class adalah satu set objek yang memiliki atribute dan behavior yang

sama. Class diagram menggambarkan struktur objek sistem. Diagram ini

menunjukkan kelas objek yang menyusun sistem dan juga hubungan antara kelas

objek dapat dilihat di gambar 2.5

Gambar 2.5 Class Diagram

Page 11: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

16

Class memiliki tiga area pokok (gambar 2.6):

1. Nama (dan stereotype)

2. Attribute, yaitu data yang mewakili karakteristik interest tentang

sebuah objek

3. Behavior, yaitu kumpulan dari sesuatu yang dapat dilakukan oleh

objek dan terkait dengan fungsi-fungsi yang bertindak pada data

objek (atau atribut)

Gambar 2.6 Area Pokok Class Diagram

Atribute dan behaviour dapat memiliki salah satu sifat berikut :

a. Private, tidak dapat dipanggil dari luar class yang bersangkutan.

Ditunjukkan dengan simbol “ - ”.

b. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan

anak-anak yang mewarisinya. Ditunjukkan dengan simbol “ # ”.

c. Public, dapat dipanggil oleh siapa saja. Ditunjukkan dengan simbol “

+ ”.

Hubungan antar class adalah asosiasi bisnis antara satu objek kelas atau

lebih. Beberapa hubungan antar kelas, antara lain:

a. Generalization dan Inheritance (gambar 2.7), diperlukan untuk

memperlihatkan hubungan pewarisan (Inheritance) antar unsur

Page 12: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

17

dalam diagram kelas. Pewarisan memungkinkan suatu kelas

mewarisi semua atribut, operasi, relasi, dari kelas yang berada dalam

hirarki pewarisannya dapat dilihat di.

Gambar 2.7 Hubungan Generalisasi dan Pewarisan

b. Association (gambar 2.8), hubungan statis antar kelas. Umumnya

menggambarkan kelas yang memiliki atribut berupa kelas lain, atau

kelas yang harus mengetahui eksistensi kelas lain.

Gambar 2.8 Hubungan Asosiasi

c. Aggregation (gambar 2.9), yaitu sebuah hubungan dimana satu kelas

“whole” yang lebih besar berisi satu atau lebih kelas “part” yang

lebih kecil, atau kelas “part” yang lebih kecil adalah bagian dari

kelas “whole” yang lebih besar.

Page 13: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

18

Gambar 2.9 Hubungan Agregasi

d. Composition (gambar 2.10), yaitu hubungan agregasi di mana

“whole” bertanggung jawab atas pembuatan dan perusakan “bagian-

bagian”. Jika “whole” rusak, maka “part” juga akan rusak.

Gambar 2.10 Hubungan Composition

2.7 Entity Relationship Diagram (ERD)

Entity Relationship Diagram digunakan untuk mengidentifikasi data yang

diambil, disimpan, dan dipanggil kembali (retrieve) untuk keperluan-keperluan tertentu

dalam mendukung kegiatan yang dilakukan oleh organisasi.

Terlihat pada gambar 2.11 ERD merupakan representasi data sebagai entitas,

atribut, dan relasi. Entitas menggambarkan kumpulan dari berbagai data. Entitas

biasanya dilambangkan dengan menggunakan kotak segi empat. Atribut merupakan unit

Page 14: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

19

terkecil dari data yang dapat menjelaskan apa yang dimiliki oleh suatu entitas. Relasi

menjelaskan keterkaitan di antara dua entitas yang berbeda.

Sifat relasi antar entitas (tabel 2.1) dapat dibedakan menjadi tiga jenis, yaitu :

a. One to One Relationship

terjadi jika setiap entitas dalam suatu himpunan entitas hanya berhubungan

dengan satu entitas pada himpunan entitas lain, dan sebaliknya.

b. One to Many Relationship

terjadi jika setiap entitas dalam suatu himpunan entitas dapat berhubungan

dengan beberapa entitas pada himpunan entitas lain, tetapi tidak sebaliknya.

c. Many to Many Relationship

terjadi jika setiap entitas dalam suatu himpunan entitas dapat berhubungan

dengan beberapa entitas pada himpunan entitas lain, demikian juga sebaliknya.

Simbol Uraian

Hubungan satu ke satu

Hubungan satu atau

lebih

Hubungan many

Hubungan satu (optional)

Hubungan many

(optional)

Tabel 2.1 Relationship ERD

Page 15: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

20

Masing-masing entitas memiliki primary / foreign key. Relasi menghubungkan

antara primary / foreign key yang ada pada entitas. Primary / foreign key harus dapat

membedakan semua row ( baris data ) dalam suatu entitas dan harus memiliki karakter

yang unik.

Gambar 2.11 Entity Relationship Diagram (ERD)

(Marimin, Tandjung, & Prabowo, 2006)

2.8 Interaksi Manusia dan komputer

Interaksi manusia dan komputer adalah sebuah disiplin ilmu yang mempelajari

rancangan, implementasi dan evaluasi sistem komputasi interaktif dan berbagai aspek

terkait. (Santoso, 2009)

2.8.1 The Eight Golden Rules

Menurut Ben Shneiderman delapan aturan emas dalam pembuatan desain

interaksi antarmuka penguna adalah sbb :

1. Konsistensi yang ketat dalam sequence, tampilan, terminologi dan

penggunaan command.

Page 16: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

21

2. Membuat shortcut sehingga pengguna dapat sampai ke halaman yang

dituju tanpa melewati halaman lain.

3. Adanya umpan balik yang informatif.

4. Merancang dialog atau langkah langkah agar pengguna dapat

menyelesaikan suatu aksi.

5. Meminimalisir human error dengan memberikan pesan error.

6. Mempermudah untuk kembali ke tindakan sebelumnya.

7. Adanya tempat pengendalian internal (locus of control)

8. Mengurangi kesalahan ingatan jangka pendek dengan membuat

halaman sesederhana mungkin dan mudah dimengerti.

2.9 Rekayasa Perangkat Lunak

Perangkat lunak adalah perintah (program komputer) yang bila dieksekusi

memberikan fungsi dan unjuk kerja seperti yang diinginkan. Struktur data yang

memungkinkan program memanipulasi informasi secara proposional, dan dokumen yang

menggambarkan operasi dan kegunaan program.(Pressman,1997,p10)

Rekayasa perangkat lunak adalah aplikasi dari sebuah pendekatan kuantifiabel,

disiplin, dan sistematis kepada pengembangan, operasi, dan pemeliharaan perangkat

lunak : yaitu aplikasi dari Rekayasa Perangkat Lunak. (Pressman,1997,p28)

2.9.1 Karakteristik Rekayasa Perangkat Lunak

Karakteristik rekayasa perangkat lunak menurut Roger S Pressman

(1997,p10) adalah sebagai berikut ;

1. Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk

yang klasik

Page 17: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

22

Dalam aktivitasnya, kualitas yang tinggi dicapai melalui perancangan

yang baik, tetapi di dalam fase pembuatan perangkat keras, ditemukan masalah

kualitas yang tidak mudah untuk di sesuaikan dengan perangkat lunak.

2. Perangkat lunak tidak pernah usang

Perangkat lunak tidak rentan terhadap pengaruh lingkungan yang

merusak yang menyebabkan perangkat keras menjadi usang. Aspek lain dari

keusangan menggambarkan perbedaan antara perangkat keras dan perangkat

lunak. Bila komponen suatu perangkat keras telah usang komponen dapat diganti

dengan suku cadangnya. Namun tidak ada ada suku cadang bagi perangkat lunak,

biasanya hanya penurunan kualitas.

3. Sebagian besar perangkat lunak dibuat secara custom-built, serta tidak

dapat dirakit dari komponen yang sudah ada

Perangkat lunak tidak dibuat dari komponen yang sudah ada, berbeda

dengan perangkat keras yang dapat dibuat dari komponen yang sudah ada.

2.10 Database

Database atau basis data adalah sekumpulan data yang memiliki hubungan secara

logika dan diatur dengan susunan tertentu serta disimpan dalam media penyimpanan

komputer. Data itu sendiri adalah representasi dari semua fakta yang ada pada dunia

nyata. Database sering digunakan untuk melakukan proses terhadap data tersebut untuk

menghasilkan informasi tertentu.

Dalam database ada istilah untuk satuan data yaitu :

• Karakter, ini adalah satuan data terkecil. Data terdiri atas susunan karakter

yang pada akhirnya mewakili data yang dimiliki arti dari sebuah fakta.

Page 18: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

23

• Field, adalah kumpulan dari karakter yang mewakili fakta tertentu misalnya

seperti nama siswa, tanggal lahir, dan lain lain.

• Record, adalah kumpulan dari field.

• Tabel, adalah kumpulan dari records yang memiliki kesamaan entitiy dalam

dunia nyata. Kumpulan dari tabel adalah database, wujud fisik sebuah

database dalam komputer adalah sebuah file yang didalamnya terdapat

berbagai tingkatan data.

• File, adalah bentuk fisik dari penyimpanan data.

2.10.1 Sistem Database

Sebuah sistem database adalah sebuah kumpulan dari komponen-

komponen database yang meliputi :

• Database

• Database server

• Komponen client software

• Aplikasi database

Aplikasi database adalah sebuah perangkat lunak khusus yang didesain

dan digunakan oleh pengguna atau pihak lainnya seperti penyedia jasa

pemrograman atau konsultan.

Page 19: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

24

2.11 E-Commerce

“Electronic commerce is an emerging concept that describes the process of

buying and selling or exchanging of products, services and information via

telecommunication and computer networks including internet” (Bhusry, 2008, p. 3)

Menurut Dian Wirdasari dalam jurnalnya yang berjudul Teknologi E-Commerce

Dalam Proses Bisnis. E-Commerce dapat didefinisikan sebagai segala bentuk transaksi

perdagangan/perniagaan barang atau jasa dengan menggunakan media elektronik. Pada

dasarnya e-commerce merupakan dampak dari berkembangnya teknologi informasi dan

telekomunikasi, sehingga secara signifikan mengubah cara manusia melakukan interaksi

dengan lingkungannya, yang dalam hal ini adalah terkait dengan mekanisme dagang. E-

Commerce bukanlah hanya mekanisme penjualan barang atau jasa melalui medium

internet, tetapi lebih pada sebuah tranformasi bisnis yang mengubah cara-cara

perusahaan dalam melakukan aktifitas usahanya sehari-hari.

Kalakota dan Whinston mendefinisikan e-commerce dari berbagai sudut pandang

• Dari sudut pandang komunikasi, e-commerce adalah penyampaian

informasi, produk/servis, pemesanan dan pembayaran melalui saluran

telepon, jaringan computer atau peralatan elektronik lainnya.

• Dari sudut pandang bisnis, e-commerce adalah pengunaan teknologi yang

mengotomatisasi transaksi bisnis dan workflow.

• Dari sudut pandang service e-commerce adalah “a tool that caters to the

need of firm, consumers and management to cut down the transaction costs

while improving the quality of goods/services and increasing the speed of

delivery”

Page 20: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

25

• Dari sudut pandang online, e-commerce meningkatkan kemampuan

membeli dan menjual produk dan informasi di internet dan online servis

lainnya.

2.11.1 Keuntungan dan Kerugian E-Commerce

1. Keuntungan E-Commerce

Bagi Perusahaan :

- Memperpendek jarak

- Perluasan pasar

- Perluasan jaringan mitra bisnis dan efisiensi

- Mempercepat pelayanan ke pelanggan

- Mengurangi biaya administrasi sehingga dapat meningkatkan

pendapatan

Bagi Konsumen :

- Efektif

- Aman secara fisik

- Flexible

2. Kerugian E-Commerce

Meningkatkan individualism, pada perdagangan elektronik

seseorang dapat bertransaksi dan mendapatkan barang atau jasa yang

diperlukan tanpa bertemu dengan siapapun. Terkadang menimbulkan

kekecewaan, apa yang dilihat di layar monitor kadang berbeda dengan

apa yang dilihat secara kasat mata.

Page 21: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

26

2.11.2 Jenis E-Commerce

1. Business to Business (B2B) E-Commerce

B2C bertujuan untuk menjual barang atau jasa ke pembisnis yang

akan menjual barangnya kembali kepada end user. Biasanya yang

menggunakan e-commerce jenis ini adalah e-commerce yang dimiliki

oleh produsen besar.

2. Business to Consumer (B2C) E-Commerce

B2C adalah consumer oriented e-commerce dimana tujuannya

adalah untuk menjual produk atau servis ke end user. Berbagai macam

jenis barang atau jasa yang dapat dijual di internet seperti travel, buku,

musik, pakaian, perangkat keras komputer, software dan lain-lain.

Berdasarkan dari nilai barang, proses dan pembayaran, e-commerce yang

digunakan mungkin pure atau partial.

B2C e-commerce, tergantung strategi marketing yang digunakan

dapat dikategorikan kedalam bisnis model berikut ini :

1. Direct dan indirect marketing

2. Full cyber marketing dan partial cyber marketing

3. Proactive dan reactive strategies

4. Electronic intermediaries

Page 22: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

27

3. Consumer to Business (C2B) E-Commerce

Dalam jenis ini konsumen memberitahukan kebutuhan atas suatu

produk atau jasa tertentu, dan para pemasok bersaing untuk

menyediakan produk atau jasa tersebut ke konsumen. Contohnya di

priceline.com dimana pelanggan menyebutkan produk dan harga yang

diinginkan, dan priceline.com mencoba menemukan pemasok yang

memenuhi kebutuhan tersebut.

4. Consumer to Customer (C2C) E-Commerce

Dalam C2C seseorang menjual produk atau jasa ke orang lain.

Dapat juga disebut sebagai pelanggan ke pelanggan yaitu orang yang

menjual produk atau jasa ke satu sama lain.

Di beberapa negara, penjualan dan pembelian C2C dalam situs

lelang sangat banyak. Kebanyakan sering dilakukan oleh perantara

seperti eBay.com, greatshop.com dan yang lainnya.

2.12 MySQL

MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL atau

yang dikenal dengan DBMS (database management system), database ini multithread,

multi-user. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis di

bawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah

lisensi komersial untuk kasus – kasus yang bersifat khusus. (Huda, p. 181)

Sebagai database server, MySQL dapat dikatakan lebih unggul dibandingkan

database server lainnya terutama dalam kecepatan. Berikut ini beberapa keistimewaan

MySQL, antara lain :

Page 23: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

28

1. Portability

MySQL dapat berjalan stabil pada berbagai sistem operasi seperti

Windows, Linux, FreeBSD, Mac Os X Server, Solaris, Amiga, dan masih banyak

lagi.

2. Multi user

MySQL dapat digunakan oleh beberapa user dalam waktu yang

bersamaan tanpa mengalami masalah atau konflik.

3. Security

MySQL memiliki beberapa lapisan sekuritas seperti level subnet mask,

nama host, dan izin akses user dengan sistem perizinan yang mendetail serta

password terenkripsi.

4. Scalability dan limits

MySQL mampu menangani database dalam skala besar, dengan jumlah

records lebih dari 50 juta dan 60 ribu tabel serta 5 milyar baris. Selain itu batas

index yang dapat ditampung mencapai 32 indeks tiap tabelnya. (Huda, p. 182)

2.13 PHP

PHP adalah akronim dari Hypertext Preprocessor, yaitu suatu bahasa

pemrograman berbasiskan kode-kode (script) yang digunakan untuk mengolah suatu

data dan mengirimkannya kembali ke web browser menjadi kode HTML. Kode PHP

mempunyai ciri-ciri khusus, yaitu :

a. Hanya dapat dijalankan menggunakan web server, misal : Apache.

b. Kode PHP diletakan dan dijalankan di web server.

Page 24: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

29

c. Kode PHP dapat digunakan untuk mengakses database, seperti : MySQL,

PostgreSQL, Oracle, dan lain lain.

d. Merupakan software yang bersifat open source.

e. Gratis untuk di download dan digunakan.

f. Memiliki sifat multiplatform, artinya dapat dijalankan menggunakan sistem

operasi apapun. (Oktavian, 2010, p. 30)

Kelebihan PHP :

a. Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak

melakukan sebuah kompilasi dalam penggunaaanya.

b. Web server yang mendukung PHP dapat ditemukan dimana-mana dan dari

mulai Apache, IIs, Lighttpd, hingga Xitami dengan konfigurasi yang relatif

mudah.

c. Dalam sisi pemahaman. PHP adalah bahasa scripting yang paling mudah

karena memiliki referensi yang banyak.

d. Dalam sisi pengembangan lebih mudah, karena banyaknya milis dan

developer yang siap membantu dalam pengembangan.

PHP memiliki beberapa tipe data yaitu :

� Integer

� Double

� Bolean

� String

� Object

� Array

� Null

Page 25: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

30

� Nill

� Resource

(PHP, 2012)

2.13.1 Sejarah PHP

Ketika pertamakali dibuat tahun 1995 oleh Rasmus Lerdroft, PHP adalah

bahasa pemrograman script sederhana yang digunakan untuk pemrosesan HTML

form di dalam web page. Strukturnya sangat sederhana sehingga PHP dapat

dengan mudah dipelajari programmer pemula. Bahkan oleh orang-orang dengan

latar belakang non-TI. Hal inilah yang menyebabkan PHP sangat cepat popular

di kalangan pengembang aplikasi web.

Seiring dengan perkembangan internet yang ditandai dengan maraknya

dotcom dan e-commerce, Aplikasi web juga berkembang menjadi semakin

kompleks, kemudian timbul inisiatif di komunitas pengguna PHP untuk

menyempurnakan struktur bahasa pemrograman PHP. Ini dimulai dengan PHP3

yang dirilis tahun 1998. Kemudian dilanjutkan dengan PHP4 pada tahun 2000,

PHP5 pada tahun 2004.

2.14 HTML

HTML pertama kali dibuat oleh Tim Berners Lee bersama dengan Robert

Cailllau saat bekerja di CERN tahun 1989. Pada saat ini organisasi bersama World Wide

Web Consortium (W3C) bertanggung jawab untuk mengawasi dan mengupdate dalam

spesifikasi HTML. (David & Christine, 2003)

Page 26: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

31

HTML (Hyper Text Markup Languange) adalah sekumpulan simbol-simbol atau

tag-tag yang dituliskan dalam sebuah file yang digunakan untuk menampilkan halaman

pada web browser. Tag-tag HTML selalu diawali dengan <x> dan diakhiri dengan </x>

dimana x tag HTML seperti b,i,u,dll.

2.15 CSS

CSS (Cascading Style Sheet) adalah suatu bahasa stylesheet yang digunakan

untuk mengatur style suatu dokumen. Pada umumnya CSS dipakai untuk memformat

tampilan halaman web yang dibuat dengan bahasa HTML dan XHTML.

CSS memungkinkan web developer untuk memisahkan HTML dari aturan–

aturan untuk membentuk tampilan sebuah website. Namun terkadang, banyak orang

yang baru belajar HTML menganggap remeh kekuatan dan fleksibilitas dari sebuah css.

CSS diperkenalkan untuk pengembangan website Pada tahun 1996. Nama CSS

didapat dari fakta bahwa setiap deklarasi style yang berbeda dapat diletakan secara

berurutan, yang kemudian akan membentuk hubungan parent-child pada setiap style.

Setelah CSS distandarisasikan, Internet Exploler dan Netscape melepas browser

terbaru mereka yang telah sesuai atau paling tidak hampir mendekati dengan standar

CSS.

CSS adalah sebuah dokumen yang berdiri sendiri dan dapat dimasukan dalam

kode HTML atau sekedar menjadi rujukan oleh HTML dalam pendefinisian style. CSS

menggunakan kode-kode yang tersusun untuk menetapkan style pada elemen HTML

atau dapat juga digunakan untuk membuat style baru yang biasa disebut class.

CSS dapat mengatur ukuran teks, warna background pada sebuah halaman juga

dapat mengubah warna border pada tabel dan lainnya.

Page 27: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

32

Berikut ini beberapa alasan mengapa para web developer selalu memakai CSS

untuk memberikan style pada situs yang dibuatnya :

• CSS dapat memecahkan masalah keseragaman style pada dokumen HTML

• CSS meringankan pekerjaan dalam memformat seluruh dokumen.

• Multiple style akan tersimpan dalam satu dokumen.

(Sulistyawan, Rubianto, & Saleh, 2008, p. 33)

Tiga cara menggunakan multiple style sheets dalam dokumen HTML :

1. External style sheet

2. Internal style sheet

3. Inline style sheet

Fakta Penggunaan CSS

• Telah didukung oleh kebanyakan browser versi baru, tetapi tidak didukung

browser-browser versi lama.

• Lebih fleksible dalam penempatan posisi layout dalam layouting CSS.

• Menjaga HTML dalam penggunaan tag yang minimal, hal ini berpengaruh

terhadap ukuran file dan kecepatan download.

• Dapat menampilkan konten utama terlebih dahulu, sementara gambar dapat

ditayangkan sesudahnya.

• Penerjemahan CSS setiap browser berbeda, tata letak akan berubah jika

dilihat di berbagai browser.

• CSS adalah layouting “Masa Depan” dengan penggabungan bersama

XHTML.

(Purnama, 2004, p. 8)

Page 28: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

33

2.16 jQuery

jQuery adalah library atau kumpulan kode JavaScript siap pakai. Keunggulan

menggunakan jQuery dibandingkan dengan JavaScript standar, yaitu menyederhanakan

kode JavaScript dengan cara memanggil fungsi-fungsi yang disediakan oleh jQuery.

JavaScript sendiri merupakan bahasa scripting yang bekerja di sisi client atau browser

sehingga website bisa lebih interaktif. (W, 2011)

jQuery pertama kali dirilis tahun 2006 oleh John Resig. jQuery menjadi sangat

popular hingga telah digunakan pada banyak website termasuk website kelas dunia

seperti Google dan Amazon.

Kelebihan jQuery :

• jQuery compatible dengan banyak browser.

• jQuery mendukung semua versi CSS.

• Ukuran jQuery sangat kecil, sekitar 20 kb.

• Dokumentasi jQuery lebih lengkap.

• Dukungan komunitas terhadap jQuery.

• Tersedianya plugin jQuery yang sangat beragam.

2.17 JavaScript

JavaScript adalah bahasa scripting yang popular di internet dan dapat bekerja di

sebagian besar browser popular seperti Internet Exploler, Mozilla Firefox, dan lain-lain,

kode JavaScript dapat disisipkan dalam halaman web menggunakan tag SCRIPT.

(Sunyoto, 2007)

Page 29: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

34

Beberapa pengetahuan tentang JavaScript :

1. JavaScript didesain untuk menambah interaktif suatu web.

2. JavaScript merupakan sebuah bahasa scripting.

3. Bahasa scripting merupakan bahasa pemrograman yang ringan.

4. JavaScript berisi baris kode yang dijalankan di web browser.

5. JavaScript biasanya disisipkan dalam halaman HTML.

6. JavaScript adalah bahasa interpreter (yang berarti script dieksekusi tanpa

proses kompilasi).

7. Setiap orang dapat menggunakan JavaScript tanpa membayar lisensi.

2.18 Spark System Enterprise Architect

Enterprise architect adalah sebuah platform visualisasi untuk merancang dan

membangun sebuah sistem perangkat lunak, untuk pemodelan proses bisnis, dan untuk

lebih umumnya digunakan tujuan pemodelan. Enterprise architect adalah sebuah alat

yang sangat maju yang mencakup seluruh aspek dari mulai siklus pengembangan,

memberikan penelusuran secara mendetail atau penuh dari mulai awal tahap mendesain

sampai mengontrol perkembangan, pemeliharaan, pengujian dan perubahan kontrol.

Dimana tools enterprise architect dikembangkan oleh sparx systems sebuah perusahaan

Australia dengan inovasi dan pengembangan dalam pemodelan UML. Sparx system

adalah anggota dari Object Management Group (OMG). Unified Modeling Language

(UML) adalah sebuah bahasa grafis untuk memvisualisasikan, menentukan,

membangun, dan mendokumentasikan bentuk sebuah sistem perangkat lunak.

UML juga menawarkan cara standar untuk menulis di sistem, termasuk

konseptual hal-hal seperti proses bisnis dan fungsi sistem serta hal-hal konkret seperti

Page 30: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

35

sebagai pernyataan sebuah bahasa pemrograman, skema database, dan perangkat lunak

dapat digunakan kembali komponen perangkat lunak.

Perbedaan enterprise architect tool dengan tool UML yang lainnya :

1. Komprehensif dengan pemodelan UML dan desain.

2. Membangun pengelolaan kebutuhan.

3. Mendukung manajemen proyek yang luas, termasuk juga sumber daya, dan

pengujian.

4. Mendukung pengujian berupa test cases.

5. Memiliki pilihan dokumentasi yang fleksibel berupa HTML dan Rich-Text

(RTF) laporan penulis.

6. Mendukung banyak bahasa didalam rekayasa kode-kode bahasa.

7. Usability : enterprise architect memudahkan untuk membangun dijalani cepat

dengan UML.

8. Speed : enterprise architect memiliki performa yang cepat

9. Scalability : enterprise architect dapat menangani suatu model yang besar dan

bersamaan dengan jumlah pengguna yang banyak dengan mudah

2.19 Evaluasi Perfomance

Evaluasi performance dilakukan untuk mengetahui performance aplikasi yang

anda buat. Evaluasi ini menjadi tolak ukur baik atau tidaknya sebuah aplikasi perangkat

lunak dan ada dalam tahapan software engineering.

Page 31: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

36

2.19.1 Yslow

Yslow adalah tambahan firebug yang digunakan untuk mengevaluasi

performance web page dan memberi saran untuk peningkatan perfomance. Ada

22 aturan yang yang mempengaruhi perfomance web page dalam browser

Gambar 2.12 menunjukkan berbagai tools yang direkomendasi oleh

Yslow untuk meningkatkan performance.

Gambar 2.12 Yslow Tools

Yslow menganalisis performance dengan cara menganalisis semua

komponen dalam page, termasuk komponen dinamis yang dibuat menggunakan

JavaScript. Yslow adalah tool yang dibuat untuk mengukur sebuah performance

yang dinilai berdasarkan single grade (A adalah grade terbaik, F adalah grade

terburuk). (Steve, 2007)

Page 32: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

37

22 aturan Yslow yang penting dan efektif, diantaranya adalah :

1. Meminimalkan HTTP requests

tag: konten

Mengurangi jumlah komponen dapat mengurangi jumlah HTTP

request yang diperlukan untuk membuat halaman. Sehingga membuat

halaman lebih cepat.

Biasanya mengurangi jumlah komponen dapat membuat design

menjadi standar atau biasa saja. Untuk mengatasi hal tersebut dapat

menggabungkan file, gunakan sprite CSS untuk mengurangi permintaan

gambar, atau membuat peta gambar untuk mengabungkan beberapa gambar.

2. Menggunakan content delivery network

Tag : server

Penggunaan CDN dapat mempercepat respon website, sehingga

developer tidak perlu menunggu terlalu lama untuk membuka webiste.

Penggunaan CDN memang menghabiskan biaya tetapi apabila developer

membutuhkan website yang memberikan respon tercepat diperlukan adanya

CDN.

3. Menambah expires atau cache control header

Tag : server

Menggunakan expires header untuk membuat komponen-komponen

website pengguna cacheable. Hal ini untuk menghindari HTTP request yang

tidak perlu pada tampilan halaman berikutnya.

Page 33: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

38

4. Gzip komponen

Tag : server

Gzip adalah metode kompresi yang paling populer dan efektif saat ini.

Gzipping berbagai jenis file sebanyak mungkin adalah cara mudah untuk

mengurangi berat halaman dan mempercepat penjelajahan pengguna.

5. Meletakkan stylesheet di atas

Tag : css

Meletakan stylesheet diatas dapat mempercepat loading sebuah halaman

website. Hal ini dapat membuat tampilan lebih progresif. Hal ini berguna

untuk pengguna dengan koneksi lambat atau halaman dengan banyak konten.

6. Meletakkan script di bawah

Tag : JavaScript

Penangguhan script untuk memindahkan script ke bagian bawah dapat

dilakukan untuk mempercepat loading halaman web.

7. Membuat JavaScript dan CSS eksternal

Tag : JavaScript, css

Menggunakan file eksternal di dunia nyata umumnya menghasilkan

halaman dengan lebih cepat karena JavaScript dan file-file CSS dicache oleh

browser. JavaScript dan CSS yang inline dalam dokumen HTML bisa di

download setiap kali dokumen HTML diminta. Hal ini akan mengurangi

jumlah HTTP request yang diperlukan, tetapi akan meningkatkan ukuran

dokumen HTML. Di sisi lain, jika JavaScript dan CSS di file eksternal

dicache oleh browser, ukuran dokumen HTML berkurang tanpa

meningkatkan jumlah HTTP request.

Page 34: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

39

8. Hindari CSS Expressions

Tag : css

Expressions CSS membuat halaman ada lebih sering mengevaluasi

tampilan sehingga dapat memperlambat kinerja website pengguna.

Expressions CSS sebaiknya hanya digunakan satu kali. Sehingga website

akan lebih konsisten.

9. Mengurangi DNS Lookups

Tag : content

Domain Name System (DNS) memetakan hostname ke IP addresses.

Seperti sebuah buku telepon yang memetakan nama orang berdasarkan

nomor telepon mereka. Menghindari lookup DNS memotong waktu respon

tetapi mengurangi paralel download dapat meningkatkan waktu respon.

Mengurangi DNS lookup dan memungkinkan dilakukannya download

paralel dapat membuat website bekerja lebih baik.

10. Memperkecil JavaScript and CSS

Tag : JavaScript and css

Minification adalah praktek penghapusan karakter yang tidak perlu dari

kode untuk mengurangi ukurannya sehingga dapat meningkatkan waktu

loading. Ketika kode dikecilkan maka semua komentar, serta spasi yang

tidak diperlukan (spasi, newline, dan tab) dihapus. Dalam kasus JavaScript,

ini meningkatkan kinerja respon waktu karena ukuran file yang di download

berkurang.

Page 35: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

40

11. Hindari redirects

Tag : content

Hal utama yang perlu diingat adalah redirect memperlambat penelusuran

pengguna. Memasukkan redirect antara pengguna dan dokumen HTML

dapat menyebabkan penundaan di semua halaman karena tidak ada satupun

dalam halaman dapat dirender dan tidak ada komponen yang dapat di

download sampai dokumen HTML tiba.

12. Hapus duplicate scripts

Tag : javascript

Selain menghasilkan HTTP request yang boros, waktu akan terbuang

untuk mengevaluasi script beberapa kali. Ini membuat eksekusi JavaScript

yang berlebihan terjadi di kedua Firefox dan Internet Explorer, terlepas dari

apakah script cacheable. Salah satu cara untuk menghindari masuknya

naskah yang sama dua kali tanpa sengaja adalah dengan menerapkan modul

manajemen script di sistem template.

13. Configure ETags

Tag : server

Entitas tag (ETags) adalah mekanisme yang web server dan browser yang

digunakan untuk menentukan apakah komponen dalam cache browser sesuai

dengan yang berada pada server asal. Menghapus ETag mengurangi ukuran

header HTTP baik dalam respon dan permintaan berikutnya. Tambahkan

baris berikut ke file konfigurasi apache :

FileETag none

Page 36: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

41

14. Membuat AJAX cacheable

Tag : content

Meskipun response AJAX anda dibuat secara dinamis, dan mungkin

hanya berlaku untuk satu pengguna, mereka masih dapat di cache.

Melakukan hal ini akan membuat aplikasi web lebih cepat.

15. Menggunakan get untuk AJAX requests

Tag : server

Ketika menggunakan XMLHttpRequest, POST diimplementasikan dalam

browser sebagai proses dua langkah: mengirim header, kemudian mengirim

data. Jadi yang terbaik adalah menggunakan GET, yang hanya membutuhkan

waktu satu paket TCP untuk mengirim.

16. Mengurangi number dari DOM element

Tag : content

CSS dapat membantu mengubah format default browser. Ini adalah

kesempatan untuk memulai sesuatu yang baru dan berpikir tentang markup.

Contohnya gunakan <div> hanya ketika diperbolehkan secara semantis, dan

bukan untuk membuat baris baru.

17. No 404S

Tag : server

Jangan sampai pengguna mendapatkan respon 404 (not found). Hal ini

biasa terjadi saat link external JavaScript salah. Sehingga apabila membuat

external JavaScript lebih memperhatikan penulisan link.

Page 37: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

42

18. Mengurangi cookie size

Tag : cookie

Sangat penting untuk menjaga ukuran cookie serendah mungkin untuk

meminimalkan dampak pada waktu response web terhadap pengguna.

• Menghilangkan cookies yang tidak perlu.

• Berhati-hati dari pengaturan cookie pada tingkat domain yang sesuai

sehingga sub-domain tidak terpengaruh.

• Mengatur tanggal expires yang tepat. Sebuah tanggal expires yang terlalu

cepat atau tidak menghapus cookie secara cepat, dapat memperlambat

response web terhadap pengguna.

19. Menggunakan cookie bebas domain untuk komponen

Tag : cookie

Manfaat dari hosting komponen statis di domain bebas cookie adalah

karena adanya beberapa proxy yang mungkin menolak untuk cache

komponen yang diminta dengan cookie.

20. Hindari filters

Tag : css

Filter memblok rendering dan membekukan browser ketika gambar

sedang didownload. Hal ini juga meningkatkan penggunaan memori dan

diterapkan per elemen, bukan per gambar, sehingga masalah berlipat ganda.

Pendekatan yang terbaik adalah menghindari AlphaImageLoader sepenuhnya

dan sebaiknya menggunakan PNG8 degrading yang baik di IE.

Page 38: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00697-IF Bab2001.pdfsambungan empat komputer pada kontraktor pertahanan dan universitas

43

21. Hindari scale image pada HTML

Tag : gambar

Usahakan menghindari scaling gambar didalam html. Jika developer

membutuhkan gambar 100 x 100 px sebaiknya tidak menggunakan gambar

500 x 500 px.

22. Membuat favicon.ico dan cacheable

Tag : gambar

Favicon.ico adalah gambar yang berada pada root di server. Untuk

mengurangi kelemahan memiliki favicon.ico pastikan :

• Favicon.ico berukuran kecil sebaiknya di bawah 1 kb.

• Set expires header yang tepat (karena expires header tidak dapat diubah).

(Chandra & Deepak, 2010)