Perancangan Aplikasi Online Anime Stuff “Otaku Shop” Berbasis Web

BAB 2
LANDASAN TEORI

2.1 Pengertian Internet Commerce
Internet memberikan kesempatan untuk menciptakan pasar, dan melayani
pelanggan dengan cara yang tak terbayangkan sampai sekarang. Beberapa tahun
yang lalu banyak melihat perdagangan elektronik hanya sebagai perdagangan
menggunakan jaringan online dan EDI (Electronic Data Interchange). Pengarahan
ini menetapkan lingkup perdagangan Internet, menunjukkan peluang dan
tantangan, dan memberikan wawasan ke dalam strategi pengusaha yang berhasil.
Internet Commerce adalah penggunaan Internet untuk semua fase menciptakan
dan menyelesaikan transaksi bisnis. Dalam arti luas kita melihat Perdagangan
Internet sebagai juga termasuk:
1. Penjualan penuh dan pemasaran siklus - misalnya, dengan menganalisis

umpan balik secara online untuk memastikan kebutuhan pelanggan
2. Mengidentifikasi pasar baru - melalui paparan khalayak global melalui

World Wide Web
3. Mengembangkan


hubungan

pelanggan

yang sedang berlangsung -

mencapai loyalitas melalui interaksi yang berkelanjutan email
4. Membantu pelanggan potensial dengan keputusan pembelian mereka -

misalnya dengan membimbing mereka melalui pilihan produk dengan
cara yang cerdas
5. Menyediakan poin round-the-clock dijual - sehingga mudah bagi pembeli

Universitas Sumatera Utara

7

untuk memesan secara online, terlepas dari lokasi
6. Manajemen Supply Chain - mendukung mereka dalam rantai pasokan,


seperti dealer dan distributor, melalui interaksi online
7. Berkelanjutan Dukungan Pelanggan - memberikan dukungan yang luas

purna

jual

meningkatkan

kepada

pelanggan

dengan

metode

online; sehingga

kepuasan, memperdalam hubungan pelanggan dan


menutup loop jual melalui ulangi dan pembelian onging.
Perspektif yang lebih luas dari internet Commerce sebagai hubungan berulang
berkelanjutan yang menggunakan email, daftar diskusi, dan fasilitas internet
lainnya

serta

World

Wide

Web

adalah

strategi

yang


paling

sukses

netrepreneurs. Seperti dalam pemasaran lainnya, kategori utama Internet
Commerce adalah bisnis-ke-bisnis dan business-to-consumer
2.1.1 Gambaran Umum Internet Commerce

I-Commerce merupakan satu set dinamis teknologi, aplikasi dan proses bisnis yang
menghubungkan perusahaan, konsumen, dan komunitas tertentu melalui transaksi
elektronik dan perdagangan barang, pelayanan dan informasi yang dilakukan
secara elektronik. M. Suyanto (2003) mengatakan, i-Commerce merupakan konsep
baru yang bisa digambarkan sebagai proses jual beli barang atau jasa pada World
Wide Web internet (Shim, Qureshi, Siegel, 2000) atau proses jual beli atau
pertukaran produk, jasa dan informasi melalui jaringan informasi termasuk
internet (Turban, Lee, king, Chung, 2000). Kalakota dan Whinston (1997)
mendefinisikan i-Commerce dari beberapa perspektif berikut:
1.

Dari perspektif komunitas, i-Commerce merupakan pengiriman informasi,


{
Universitas Sumatera Utara

8

produk/layanan, atau pembayaran melalui lini telepon, jaringan komputer
atau sarana elektronik lainnya.
2.

Dari perspektif proses bisnis, i-Commerce merupakan aplikasi teknologi
menuju otomatisasi transaksi dan aliran kerja perusahaan.

3.

Dari perspektif layanan, i-Commerce merupakan satu alat yang memenuhi
keinginan perusahaan, konsumen, dan manajemen dalam memangkas
service cost ketika meningkatkan mutu barang dan ketepatan pelayanan.

4.


Dari perspektif on line, i-Commerce berkaitan dengan kapasitas jual beli
produk dan informasi di internet dan jasa on line lainnya. E-Commerce bisa
beragam bentuknya tergantung pada tingkat digitalitas produk/ layanan
untuk dijual dan sebagainya.

Membangun dan mengimplementasikan sebuah sistem I-Commerce bukanlah
merupakan sebuah proses atau program “instant”, namun merupakan suatu sistem
yang perlahan-lahan berkembang terus-menerus sejalan dengan perkembangan
perusahaan. Mengimplementasikan sebuah sistem E-Commerce tidak semudah
atau sekedar mempergunakan sebuah perangkat aplikasi baru, namun lebih kepada
pengenalan sebuah prosedur kerja baru (transformasi bisnis). Tentu saja perubahan
yang ada akan mendatangkan berbagai permasalahan, terutama yang berhubungan
dengan budaya kerja dan relasi dengan rekanan maupun pelanggan:
1. Sistem I-Commerce melibatkan arsitektur perangkat lunak dan perangkat
keras yang akan terus berkembang sejalan dengan kemajuan teknologi.
2. Mengembangkan sistem I-Commerce secara perlahan dan bertahap secara
tidak langsung menurunkan tingginya resiko kegagalan implementasi yang
dihadapi perusahaan.


{
Universitas Sumatera Utara

9

2.1.2 Trade Cycles Internet Commerce

Gambar 2.1.2 Trade cycles i-commerce

Terdiri dari lima tahap yang membentuk putaran (loop) :
1. Perancangan Sistem
a. Me-Review (Peninjauan) permintaan proyek
b. Meprioritaskan permintaan proyek
c. Mengalokasikan sumberdaya
d. Membentuk tim pengembangan proyek
2. Analisis Sistem
a. Melakukan investigasi permulaan
b. Studi sistem yang paling mutakhir

{

Universitas Sumatera Utara

10

c.

Menentukan kebutuhan users

d. Merekomendasikan solusi
3. Desain
a. Memperoleh perangkat keras dan perangkat lunak, apabila diperlukan
b. Mengembangakan rincian system
4. Evaluasi
a. Melakukan tinjauan sistem sebelum implementasi (post-implementation
system review)
b. Mengidentifikasi kesalahan dan peningkatan
c. Memantau (monitor) kinerja sistem
5. Implementasi
a. Mengembangkan program, apabila diperlukan
b. Memasang (Install) dan mentes sistem baru

c. Melatih users
d. Merubah ke sistem baru

2.2 Pengenalan Internet
Internet (Interconnected Network) merupakan jaringan komputer yang terdiri
dari jaringan independen yang dihubungkan satu dengan yang lainnya. Secara
etimologis, internet berasal dari bahasa Inggris yakni Inter berarti antar dan Net
yang berarti jaringan sehingga dapat diartikan hubungan antar jaringan.
Sampai saat ini internet sudah menghubungkan lebih dari 1 juta jaringan
komputer dengan pemakai lebih dari 100 juta orang. Internet adalah jaringan
luas di komputer yang lazim disebut dengan World Wide Web, yang secara
ringkas internet adalah sumber informasi dan alat komunikasi serta hiburan.

{
Universitas Sumatera Utara

11

2.2.1 Network
Network adalah jaringan sistem komunikasi data yang melibatkan sebuah atau

lebih sistem komputer yang dihubungkan dengan jalur transmisi alat komunikasi
membentuk satu

sistem. Dengan network, komputer yang satu

dapat

menggunakan data di komputer lain, dapat mencetak laporan di printer komputer
lain, dapat memberi berita ke komputer lain walaupun berlainan area. Network
merupakan cara yang sangat berguna untuk mengintegrasikan sistem informasi
dan menyalurkan arus informasi dari satu area ke area lainnya.

2.2.2 Web Server

Web server adalah internet server yang mampu untuk melayani koneksi
perpindahan data dalam protokol http web server dari internet server di samping
e-mail. Dikarenakan web server dirancang untuk menampilkan data, dimulai dari
teks, hypertext, gambar, yang merupakan keunggulan dari web sehingga web tidak
hanya dapat diterima di universitas tetapi di seluruh perusahaan komersial
yang dapat menampilkan datanya dalam internet. Macam – macam web server

antara lain Apache (Open Source), Xitami, IIS, PWS.
Website (situs web) merupakan alamat (URL) yang berfungsi sebagai tempat
penyimpanan data dan informasi dengan berdasarkan topik tertentu. URL adalah
suatu sarana yang digunakan untuk menentukan lokasi informasi pada suatu web
server. Situs atau web dapat dikategorikan menjadi 2 yaitu :
1.

Web Static, yaitu web yang berisi atau menampilkan infomasi –

{
Universitas Sumatera Utara

12

informasi yang sifatnya statis (tetap).
2.

Web

Dinamic, yaitu web yang menampilkan informasi serta dapat

berinteraksi dengan user yang sifatnya dinamis.

2.2.3 World Wide Web (WWW)

World Wide Web (WWW) adalah jaringan tak terbatas komputer yang
dikategorikan menjadi dua, yaitu Client dan Server dengan menggunakan
software khusus membentuk sebuah jaringan yang disebut jaringan client – server.
Pada prinsipnya World Wide Web bekerja dengan cara menampilkan file – file
HTML yang berasal dari server web pada program client khusus, yaitu browser
web. Program browser

web pada client mengirimkan permintaan kepada server

web, yang kemudian akan dikirimkan oleh server dalam bentuk HTML. File
HTML berisi instruksi yang diperlukan untuk membentuk tampilan. Perintah –
perintah HTML ini kemudian diterjemahkan oleh browser web sehingga isi
informasinya dapat ditampilkan secara visual kepada pengguna. ( Tutang, 2001 )
2.2.4 Hyper Text Transfer Protocol (HTTP)

Hyper Text Transfer Protocol (HTTP) adalah suatu protokol yang menentukan
aturan yang perlu diikuti oleh web browser dalam menyediakan dokumen
yang diminta web browser. Protokol ini merupakan protokol standar yang
digunakan untuk mengakses dokumen HTML. Apabila kita menjelajah web dan
pada address tertulis seperti http://www.google.com ini merupakan salah satu
penggunan protokol HTTP dalam web. ( Tutang, 2001 )

{
Universitas Sumatera Utara

13

2.3 Pengenalan Personal Home Page (PHP)

PHP adalah singkatan dari Personal Home Page yang merupakan bahasa standar
yang digunakan dalam dunia website. PHP adalah bahasa pemrograman yang
berbentuk script yang diletakkan didalam server web. Kelebihan PHP dari bahasa
pemrograman lain :
1.

Bahasa pemrograman PHP adalah sebuah bahasa script yang tidak
melakukan sebuah kompilasi dalam penggunaanya.

2.

Web Server yang mendukung PHP dapat ditemukan di mana – mana
dari mulai IIS sampai dengan apache, dengan konfigurasi yang relatif
mudah.

3.

Dalam sisi pengembangan lebih muda h, karena banyaknya milis –
milis dan developer yang siap membantu dalam pengembangan.

4.

Dalam sisi pemahamanan, PHP adalah bahasa scripting yang paling
mudah karena referensi yang banyak.

PHP adalah bahasa open source yang dapat digunakan diberbagai mesin
(Linux, Unix, Windows) dan dapat dijalankan secara runtime melalui console
serta juga dapat menjalankan perintah – perintah sistem.

2.3.1 Sejarah Asal Mula PHP

PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995. Pada waktu itu
PHP bernama FI

(Form Interpreted). Pada saat tersebut PHP adalah

{
Universitas Sumatera Utara

14

sekumpulan script yang digunakan untuk mengolah data form dari web.
Perkembangan selanjutnya adalah Rasmus melepaskan kode sumber
tersebut dan menamakannya PHP/FI, pada saat tersebut kepanjangan dari
PHP/FI adalah Personal Home Page/Form Interpreter. Dengan pelepasan kode
sumber ini menjadi open source, maka banyak programmer yang tertarik
untuk ikut mengembangkan PHP.
Pada November 1997, dirilis PHP/FI 2.0. Pada rilis ini interpreter sudah
diimplementasikan dalam C. Dalam rilis ini disertakan juga modul – modul
ekstensi yang meningkatkan kemampuan PHP/FI secara signifikan. Sebuah
perusahaan

bernama

Zend,

menulis

ulang interpreter PHP menjadi lebih

bersih, lebih baik dan lebih cepat. Kemudian pada Juni 1998 perusahaan tersebut
merilis interpreter baru untuk PHP dan meresmikan nama rilis tersebut menjadi
PHP 3.0.
Pada pertengahan tahun 1999, Zend merilis interpreter PHP baru dan rilis
tersebut dikenal dengan PHP 4.0. PHP 4.0 adalah versi PHP yang paling
banyak dipakai. Versi ini banyak dipakai sebab versi ini mampu dipakai untuk
membangun aplikasi web kompleks tetapi tetap memiliki kecepatan proses dan
stabilitas yang tinggi.
Pada Juni 2004, Zend merilis PHP 5.0. Versi ini adalah versi mutakhir
dari PHP. Dalam versi ini, inti dari interpreter PHP mengalami perubahan
besar. Dalam versi ini juga dikenalkan model pemrograman berorientasi
objek

baru untuk menjawab perkembangan bahas

pemrograman ke arah

pemrograman berorientasi objek.

{
Universitas Sumatera Utara

15

2.3.2 Variabel pada PHP

Variabel dapat disebut sebagai sebuah tempat penyimpanan data bagi nilai
numeris maupun non numeris, agar dapat digunakan pada bagian lain dari script
program PHP. PHP mendukung berbagai jenis variabel yaitu : Integer (bilangan
bulat), bilangan floating point (presisi tunggal, ganda), boolean, null (untuk
variabel yang belum diset), string dan array, object dan resource.
Jika menggunakan bahasa pemrograman C atau Pascal, maka kita harus
mendefinisikan variabel tiap elemen, namun
mendefinisikan terlebih

dahulu

jenis

pada PHP kita tidak perlu

variabel sebelum menggunakannya.

PHP memiliki kepandaian untuk membedakan jenis variabel secara otomatis
berdasarkan konteks yang sedang berlaku bagi variabel tersebut.
Setiap variabel dalam PHP selalu dimulai dengan tanda dolar ("$") dan
harus dimulai dengan huruf dan dapat diikuti oleh huruf dan angka. Dengan
demikian, $warpspeed, $impuls_speed, $LCAR dan $Dilithium1 adalah contoh
penamaan variabel PHP yang valid.
Setiap variabel dalam PHP peka terhadap perbedaan huruf kapital dan
non kapital, sehingga $subspace, $SubSpace, dan $SUBSPACE adalah tiga buah
variabel yang berbeda.

2.3.3 Konsep Dasar Penggunaan PHP

Kode PHP diawali dengan tanda lebih kecil (). Ada empat cara untuk menuliskan script PHP yaitu :

{
Universitas Sumatera Utara

16

1.
2.
3.
4. Apa kabar..
Pemisah antar instruksi adalah titik koma (;) dan untuk membuat atau
menambahkan komentar standar penulisan adalah : /* komentar */, // komentar, #
komentar. Cara penulisan dibedakan menjadi Embeded dan Non Embeded script.
1. Embeded Script
Contoh dari Embeded script :


Coba





2. Non Embeded Script
Contoh dari Non Embeded Script :


{
Universitas Sumatera Utara

17

2.4 XAMPP
Pengertian XAMPP

adalah perangkat lunak ( free software) bebas, yang

mendukung untuk banyak sistem operasi, yang merupakan kompilasi dari
beberapa program. Fungsi XAMPP sendiri adalah sebagai server yang berdiri
sendiri (localhost), yang terdiri beberapa program antara lain : Apache HTTP
Server, MySQL database, dan penerjemah bahasa yang ditulis dengan bahasa
pemrograman PHP dan Perl. Nama XAMPP sendiri merupakan singkatan dari X
(empat sistem operasi apapun), Apache, MySQL, PHP dan Perl. Program ini
tersedia dalam GNU General Public License dan bebas, merupakan web server
yang mudah untuk digunakan yang dapat menampilkan halaman web yang
dinamis. Untuk mendapatkanya XAMPP anda dapat mendownload langsung dari
web resminya. Dan berikut beberapa definisi program lainnya yang terdapat
dalam XAMPP.

Server HTTP Apache atau Server Web/WWW Apache adalah server web
yang dapat dijalankan di banyak sistem operasi seperti (Unix, BSD, Linux,
Microsoft Windows dan Novell Netware serta platform lainnya) yang berguna
untuk melayani dan memfungsikan situs web. Protokol yang digunakan untuk
melayani

fasilitas

web/www

ini

menggunakan

HTTP.

MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL
(bahasa Inggris: database management system) atau DBMS yang multithread,
multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat
MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General

{
Universitas Sumatera Utara

18

Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial
untuk kasus-kasus dimana penggunaannya tidak cocok dengan penggunaan GPL.
PHP: Hypertext Preprocessor adalah bahasa skrip yang dapat ditanamkan atau
disisipkan ke dalam HTML. PHP banyak dipakai untuk memrogram situs web
dinamis. PHP dapat digunakan untuk membangun sebuah CMS.

phpMyAdmin adalah perangkat lunak bebas yang ditulis dalam bahasa
pemrograman PHP yang digunakan untuk menangani administrasi MySQL
melalui Jejaring Jagat Jembar (World Wide Web). phpMyAdmin mendukung
berbagai operasi MySQL, diantaranya (mengelola basis data, tabel-tabel, bidang
(fields), relasi (relations), indeks, pengguna (users), perijinan (permissions), dan
lain-lain).Pada dasarnya, mengelola basis data dengan MySQL harus dilakukan
dengan cara mengetikkan baris-baris perintah yang sesuai (command line) untuk
setiap maksud tertentu. Jika seseorang ingin membuat basis data (database),
ketikkan baris perintah yang sesuai untuk membuat basis data. Jika seseorang
menghapus tabel, ketikkan baris perintah yang sesuai untuk menghapus tabel. Hal
tersebut tentu saja sangat menyulitkan karena seseorang harus hafal dan
mengetikkan perintahnya satu per satu.

Saat ini banyak sekali perangkat lunak yang dapat dimanfaatkan untuk mengelola
basis data dalam MySQL, salah satunya adalah phpMyAdmin. Dengan
phpMyAdmin, seseorang dapat membuat database, membuat tabel, mengisi data,
dan lain-lain dengan mudah, tanpa harus menghafal baris perintahnya.
phpMyAdmin merupakan bagian untuk mengelola basis data MySQL yang ada di

{
Universitas Sumatera Utara

19

komputer.

Untuk

membukanya,

buka

browser

lalu

ketikkan

alamat

http://localhost/phpmyadmin, maka akan muncul halaman phpMyAdmin. Di situ
nantinya seseorang bisa membuat (create) basis data baru, dan mengelolanya.
2.5 Sublime Text

Sublime text merupakan teks editor multiplatform dan powerfull, karena dengan
ukuran yang kecil, Sublime Text memiliki fitur yang luar biasa dan kinerja yang
sangat sederhana. Fiturnya sangat lengkap (bisa digunakan untuk berbagai bahasa
pemrograman) dan juga kita dapat menambah extension untuk memudahkan
dalam coding. Ada beberapa fitur yang membuat menarik dalam pemakaiannya,
yaitu :
1.

Go Anything adalah fitur yang bisa membuka file dengan tombol Ctrl +
P pada keyboard guna membuka file dengan jumlah banyak.

2.

Multiple Selections adalah fitur yang bisa mengubah banyak baris,
mengubah variable dengan menekan Ctrl + Shift + L dan Ctrl + Shift +
D.

3.

Cross Platform artinya fitur ini bisa digunakan di berbagai OS.

2.6 Cascading Style Sheet (CSS)
CSS merupakan kependekan dari Cascading Style Sheet yang berfungsi
untuk mengatur tampilan dengan kemampuan jauh lebih baik dari tag
maupun

atribut standar

sebenarnya

adalah

HTML

(Hyper Text Markup

Language).

CSS

suatu kumpulan atribut untuk fungsi format tampilan dan

dapat digunakan untuk mengontrol tampilan banyak dokumen secara bersama.

{
Universitas Sumatera Utara

20

Keuntungan menggunakn CSS yaitu jika kita ingin mengubah format dokumen,
maka tidak perlu mengedit satu persatu.
Penggunaan CSS ada dua cara yaitu dengan menyisipkan kode CSS
langsung dalam kode HTML atau simpan file tersendiri berekstensi “ .css”.
dengan menyimpan sebagai file tersendiri akan lebih memudahkan untuk
mengontrol tampilan dalam banyak dokumen secara langsung. CSS mendapat
dukungan penuh pada browser versi 4 (empat) dan pada versi sebelumnya. Perlu
diketahui bahwa tampilan CSS dapat berbeda bila ditampilkan pada menu
browser yang berbeda pula.

2.6.1 Struktur CSS

Perintah css terdiri atas 2 komponen, yakni Selector dan Declaration.
1.

Selector berfungsi untuk memberi tahu web browser bahwa pada
elemen mana aturan css akan diterapkan. Selector dapat berupa nama
tag, selector class atau selector id

2.

Declaration merupakan aturan css yang diterapkan yang mana terdiri
atas property dan value

2.6.2 Penulisan CSS

CSS juga memiliki aturan-aturan penulisan yaitu :
1.

Internal Style

Internal style dengan menggunakan tag style dan diletakkan diantara tag head.
{
Universitas Sumatera Utara

21



CSS

h1 { color : blue; }



Internal style tidak harus selalu diletakkan diantara tag head. Kita selalu bisa
meletakkan diantara tag lain yang ada didalam tag body. Namun untuk
menciptakan kode yang lebih bersih dan terstruktur dengan baik, css biasa
diletakkan diantara tag head.
2.

Inline Style

Inline style dengan menambahkan langsung kode css kedalam tag html sebagai
attribut. Judul Satu
3.

External Style

External style dengan menggunakan tag link yang diletakkan diantara tag head
dan merujuk keberkas css.


CSS




{
Universitas Sumatera Utara

22

2.6.3 Selector
Seperti sudah disebutkan sebelumnya, selector dapat berupa nama tag, selector
class atau selector id. Berikut ini adalah contoh penggunaan selector dalam css.


Belajar Selector

h1 {
color: blue;
}
.judul {
color: red;
}
#satu {
color: green;
}



Selector Tag
Selector Class
Selector Id



{
Universitas Sumatera Utara

23

2.6.4 Memformat Dokumen dengan CSS

Memformat dokumen dengan css jauh lebih fleksibel dibandingkan dengan
menggunakan tag html saja.


Format CSS

body {
background-color:yellow;
}
h1 {
color:blue;
text-align:center;
}
b{
font-weight:normal;
}
i{
font-style:normal;
}
u{
text-decoration:none;
}

{
Universitas Sumatera Utara

24

b, i {
color:green;
}



DOKUMEN HTML
Pemrograman Web

Pemrograman Web

Pemrograman Web



2.7 Flowchart

Flowchart adalah

sekumpulan simbol – simbol yang

menunjukan atau

menggambarkan rangkaian kegiatan – kegitan program dari awal hingga akhir.
Jadi flowchart juga dapat digunakan untuk menggambarkan urutan langkah –

{
Universitas Sumatera Utara

25

langkah pekerjaan dalam suatu algoritma. Penjelasan arti dari lambang – lambang
flowchart dapat didefinisikan seperti tabel dibawah ini :
Tabel 2.1. Arti lambang – lambang Flowchart
No

SIMBOL

KETERANGAN
Terminal, untuk memulai atau mengakhiri

1
suatu program
Proses,

simbol

ini

menunjukkan

setiap

2
pengolahan yang dilakukan oleh komputer.
Input-Output, untuk memasukkan data atau
3
menunjukkan hasil keluaran dari suatu proses
Decision, suatu kondisi yang menghasilkan
4
beberapa kemungkinan jawaban atau pilihan.
Untuk menyatakan sekumpulan langkah proses
5

yang ditulis sebagai procedur

Connector, suatu prosedur akan masuk atau
6

keluar melalui simbol ini dalam lembaran yang
sama.
Off-Line

7

Connector,

simbol

masuk

atau

keluarnya suatu prosedur pada lembaran kertas
lainnya.

{
Universitas Sumatera Utara

26

Arus/Flow dari prosedur yang dapat dilakukan
8

dari

atas

kebawah,

kiri

kekanan

atau

sebaliknya.
Document, merupakan simbol dari data yang
9
berbentuk kertas maupun informasi
Database, menyediakan tempat pengolahan
10
data serta penyimpanan dalam storage.
Simbol untuk output, yang ditujukan kesuatu
11
device ,seperti primer,plotters,dll

Sumber: Jogiyanto, Analisis dan Sistem
2.8 Algoritma
Algoritma merupakan suatu cara menganalisa (menjelaskan) urutan dan
hubungan kegiatan – kegiatan yang dilakukan untuk memecahkan suatu
permasalahan sehingga tercapai tujuan yang diinginkan. Algoritma adalah urutan
langkah-langkah logis pada penyelesaian masalah yang disusun secara sistematis.
Masalah dapat berupa apa saja, dengan catatan untuk setiap masalah ada syarat
kondisi awal yang harus dipenuhi sebelum menjalankan algoritma. Konsep
algoritma sering kali disetarakan dengan sebuah resep. Sebuah resep biasanya
memiliki daftar bahan atau bumbu yang akan digunakan, urutan pengerjaan, dan
bagaimana hasil dari urutan pengerjaan tersebut. Apabila bahan yang digunakan
tidak tertera (tidak tersedia), maka resep tersebut tidak akan dapat dikerjakan.
Demikian juga jika urutan pengerjaannya tidak beraturan, maka hasil yang
diharapkan tidak akan dapat diperoleh. Algoritma yang berbeda, dapat diterapkan
pada suatu masalah dengan syarat yang sama. Tingkat kerumitan dari suatu
{
Universitas Sumatera Utara

27

algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan
algoritma tersebut untuk menyelesaikan masalah. Umumnya, algoritma yang
dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki
tingkat kerumitan yang rendah, sementara algoritma yang membutuhkan waktu
lama untuk menyelesaikan suatu masalah membutuhkan tingkat kerumitan yang
tinggi.

2.8.1 Sejarah Istilah Algoritma
Kata algoritma berasal dari latinisasi nama seorang ahli matematika dari
Uzbekistan Al Khawārizmi (hidup sekitar abad ke-9), sebagaimana tercantum
pada terjemahan karyanya dalam bahasa latin dari abad ke-12 "Algorithmi de
numero Indorum". Pada awalnya kata algorisma adalah istilah yang merujuk
kepada

aturan-aturan

aritmetis

untuk

menyelesaikan

persoalan

dengan

menggunakan bilangan numerik arab (sebenarnya dari India, seperti tertulis pada
judul di atas). Pada abad ke-18, istilah ini berkembang menjadi algoritma, yang
mencakup semua prosedur atau urutan langkah yang jelas dan diperlukan untuk
menyelesaikan suatu permasalahan. Masalah timbul pada saat akan menuangkan
bagaimana proses yang harus dilalui dalam suatu/sebuah sistem (program) bagi
komputer sehingga pada saat eksekusinya, komputer dapat bekerja seperti yang
diharapkan. Programer komputer akan lebih nyaman menuangkan prosedur
komputasinya atau urutan langkah proses dengan terlebih dahulu membuat
gambaran (diagram alur) diatas kertas.

{
Universitas Sumatera Utara

28

2.8.2 Jenis-jenis Algoritma
Terdapat beragam klasifikasi algoritma dan setiap klasifikasi mempunyai alasan
tersendiri. Salah satu cara untuk melakukan klasifikasi jenis-jenis algoritma
adalah dengan memperhatikan paradigma dan metode yang digunakan untuk
mendesain algoritma tersebut. Masing-masing paradigma dapat digunakan dalam
banyak algoritma yang berbeda.
1.

Divide and Conquer, paradigma untuk membagi suatu permasalahan
besar menjadi permasalahan-permasalahan yang lebih kecil. Pembagian
masalah ini dilakukan terus menerus sampai ditemukan bagian masalah
kecil yang mudah untuk dipecahkan. Singkatnya menyelesaikan
keseluruhan masalah dengan membagi masalah besar dan kemudian
memecahkan permasalahan-permasalahan kecil yang terbentuk.

2.

Dynamic programming, paradigma pemrograman dinamik akan sesuai
jika digunakan pada suatu masalah yang mengandung sub-struktur yang
optimal (, dan mengandung beberapa bagian permasalahan yang
tumpang tindih . Paradigma ini sekilas terlihat mirip dengan paradigma
Divide

and

Conquer,

sama-sama

mencoba

untuk

membagi

permasalahan menjadi sub permasalahan yang lebih kecil, tapi secara
intrinsik ada perbedaan dari karakter permasalahan yang dihadapi.
3.

Metode serakah. Sebuah algoritma serakah mirip dengan sebuah
Pemrograman dinamik, bedanya jawaban dari submasalah tidak perlu
diketahui dalam setiap tahap; dan menggunakan pilihan "serakah" apa
yang dilihat terbaik pada saat itu.

{
Universitas Sumatera Utara

29

2.9 Data Flow Diagram (DFD)

Data Flow Diagram adalah suatu diagram yang menggunakan notasi-notasi untuk
menggambarkan arus dari data sistem, yang penggunaannya sangat membantu
untuk memahami sistem secara logika, tersruktur dan jelas. DFD merupakan alat
bantu dalam menggambarkan atau menjelaskan DFD ini sering disebut juga
dengan nama Bubble chart, Bubble diagram, model proses, diagram alur kerja,
atau model fungsi.
Tujuan DFD
1. Memberikan indikasi mengenai bagaimana data ditransformasi pada saat
data bergerak melalui system
2. Menggambarkan fungsi-fungsi(dan sub fungsi) yang mentransformasi
aliran data
Fungsi / Manfaat DFD
1. Data Flow Diagram (DFD) adalah alat pembuatan model yang
memungkinkan profesional sistem untuk menggambarkan sistem sebagai
suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan
alur data, baik secara manual maupun komputerisasi.
2. DFD ini adalah salah satu alat pembuatan model yang sering
digunakan,khususnya bila fungsi-fungsi sistem merupakan bagian yang
lebih penting dan kompleks dari pada data yang dimanipulasi oleh
sistem.Dengan kata lain, DFD adalah alat pembuatan model yang
memberikan penekanan hanya pada fungsi sistem.
3. DFD ini merupakan alat perancangan sistem yang berorientasi pada alur
data dengan konsep dekomposisi dapat digunakan untuk penggambaran
analisa maupun rancangan sistem yang mudah dikomunikasikan oleh
profesional sistem kepada pemakai maupun pembuat program

{
Universitas Sumatera Utara

30

Tabel 3.2. Simbol-simbol Data Flow Diagram
No.

Simbol
1.

Fungsi
Eksternal Entity merupakan kesatuan di luar
lingkungan system yang dapat berupa seseorang,
organisasi yang dapat mengirimkan data atau
menerima data dari sistem.

2.

Arus

data

merupakan tempat mengalirnya

informasi menunjukan arus data berupa sistem.
3.

Proses merupakan pengolahan data atau aliran
data masuk menjadi data aliran keluar.

4.

Penyimpanan

data

merupakan

tempat

penyimpanan data yang ada di dalam sistem.
Sumber: Jogiyanto, Analisis dan Sistem

2.9.1 Diagram Konteks
Diagram konteks merupakan tingkatan tertinggi dalam diagram aliran data dan
hanya memuat satu proses, menunjukkan sistem secara keseluruhan. Proses
tersebut diberi nomor nol. Semua entitas eksternal yang ditunjukkan pada diagram
konteks berikut aliran data-aliran data utama menuju dan darisistem. Diagram
tersebut tidak memuat penyimpanan data dan tampak sederhana untuk
diciptakan,begitu entitas-entitas eksternal serta aliran data-aliran data menuju dan
dari sistem diketahui menganalisis dari wawancara dengan user dan sebagai hasil
analisis dokumen. Context Diagram dimulai dengan penggambaran terminator,
aliran data, aliran kontrol penyimpanan, dan proses tunggal yang menunjukkan
keseluruhan sistem.

{
Universitas Sumatera Utara

31

Karena fokus utama adalah mengembangkan model, maka penting untuk
membedakan sumber(resource) dan pelaku (handler)., pelaku adalah mekanisme,
perangkat atau media fisik yangmentransportasikan data ke/dari sistem, karena
pelaku seringkali familier dengan pemakaidalam implementasi sistem berjalan,
maka sering menonjol sebagai sesuatu yang harusdigambarkan lebih dari sumber
data itu sendiri. Sedangkan sistem baru dengan konseppengembangan
teknologinya membuat pelaku menjadi sesuatu yang tidak perlu digambarkan.

{
Universitas Sumatera Utara