Tentang
PEMILIHAN METODE JARINGAN ( NETWORK ) DALAM
ANALISIS dan PERANCANGAN PROTOTIPE APLIKASI E-
COMMERCE PADA PERANGKAT LUNAK KOMPUTER dan
INTERNET
DISUSUN OLEH :
FEBRI IRAWAN
05091002006
Segala puji bagi Tuhan yang telah menolong hamba-Nya menyelesaikan Paper ini
dengan penuh kemudahan. Tanpa pertolongan Dia mungkin penyusun tidak akan sanggup
Paper ini disusun agar pembaca dapat memperluas ilmu tentang riset operasional,
yang saya sajikan berdasarkan dari berbagai sumber. Paper ini di susun oleh penyusun
dengan berbagai rintangan. Baik itu yang datang dari diri penyusun maupun yang datang dari
luar. Namun dengan penuh kesabaran dan terutama pertolongan dari Tuhan akhirnya paper
Walaupun paper ini mungkin kurang sempurna tapi juga memiliki detail yang cukup
jelas bagi pembaca.
Semoga paper ini dapat memberikan wawasan yang lebih luas kepada pembaca.
Walaupun paper ini memiliki kelebihan dan kekurangan. Penyusun mohon untuk saran dan
Penyusun
DAFTAR ISI
COVER…..………………………………………………………........................…. 1
KATA PENGANTAR………………………………………………………………. 2
DAFTAR ISI ……………………………………………...………………………… 3
BAB I PENDAHULUAN ……………………………..…………………………… 4
A. Latar Belakang…………………………………….………………………… 4
B. Tujuan ………….…………………………………………………………… 9
BAB II TINJAUAN PUSTAKA…………………………………………………… 10
BAB III PEMBAHASAN……………………………………………….….……… 15
BAB IV PENUTUP………………………………………………………………… 36
DAFTAR PUSTAKA………………………………………………………………. 37
BAB I
PENDAHULUAN
A. Latar Belakang
Salah satu prosedur yang telah dikembangkan berdasarkan jaringan kerja untuk
mengatasi permasalahan pengelolaan suatu proyek adalah PERT (Program Evaluation and
Review Technique) dan CPM (Critical Path Method), yang sebenarnya di antara keduanya
terdapat perbedaan penting, yaitu:
1. CPM menggunakan satu jenis waktu untuk taksiran waktu kegiatan sedangkan PERT
menggunakan tiga jenis waktu, yaitu: prakiraan waktu teroptimis, termungkin, dan
terpesimis.
2. CPM digunakan kala taksiran waktu pengerjaan setiap aktivitas diketahui dengan
jelas dimana deviasi relatif kecil atau dapat diabaikan sedangkan PERT digunakan
saat taksiran waktu aktivitas tidak dapat dipastikan seperti aktivitas tersebut belum
pernah dilakukan atau bervariasi waktu yang besar.
3. CPM digunakan untuk memperkiraan waktu kegiatan suatu proyek dengan
pendekatan deterministik, sementara PERT direkayasa untuk menghadapi situasi
dengan kadar ketidakpastian yang tinggi pada aspek kurun waktu kegiatan..
Dalam menggambarkan suatu jaringan kerja digunakan tiga buah simbol sebagai
berikut:
1. Anak panah (arrow), menyatakan sebuah kegiatan atau aktivitas. Kegiatan di sini
didefinisikan sebagai hal yang memerlukan jangka waktu tertentu dalam pemakaian
sejumlah sumber daya (sumber tenaga, peralatan, material, biaya)
2. Lingkaran kecil (node), menyatakan sebuah kejadian atau peristiwa atau event.
Kejadian didefinisikan sebagai ujung atau pertemuan dari satu atau beberapa kegiatan.
3. Anak panah terputus-putus, menyatakan kegiatan semu atau dummy . Dummy tidak
mempunyai jangka waktu tertentu, karena tidak memakai sejumlah sumber daya.
1. Di antara dua event yang sama, hanya boleh digambarkan satu anak panah.
2. Nama suatu aktivitas dinyatakan dengan huruf atau nomor urut event.
3. Aktivitas harus mengalir dari event bernomor rendah ke event bernomor tinggi.
4. Diagram hanya memiliki sebuah initial evet dan sebuah terminal event.
Dummy
Aktivitas dummy adalah aktivitas yang sebenarnya tidak ada, sehingga tidak
memerlukan pemakaian sumber daya.. Dummy terjadi karena:
a. Terdapat lebih dari satu kegiatan yang mulai dan selesai pada event yang sama..
Untuk membedakan ketiga kegiatan tersebut, maka harus digunakan dummy seperti
berikut:
a. Apabila suatu kegiatan, misal A dan B, harus selesai sebelum kegiatan C dapat
dimulai, tetapi kegiatan D sudah dapat dimulai bila kegiatan B sudah selesai, maka:
Penentuan Waktu
Dalam mengestimasi dan menganalisis waktu ini, akan terdapat satu atau beberapa
lintasan tertentu dari kegiatan-kegiatan pada jaringan kerja tersebut yang menentukan jangka
waktu penyelesaian seluruh proyek. Lintasan ini disebut lintasan kritis (critical path). Jalur
kritis adalah jalur yang memiliki rangkaian komponen kegiatan dengan total jumlah waktu
terlama dan menunjukkan kurun waktu penyelesaian yang tercepat. Pada jalur ini terletak
kegiatan-kegiatan yang bila pelaksanaannya terlambat akan menyebabkan keterlambatan
proyek secara keseluruhan
Selain lintasan kritis, terdapat lintasan-lintasan lain yang mempunyai jangka waktu
yang lebih pendek daripada lintasan kritis. Dengan demikian, maka lintasan yang tidak kritis
ini mempunyai jangka waktu untuk bisa terlambat, yang disebut float/slack.
a. Total float/slack, jumlah waktu di mana waktu penyelesaian suatu aktivitas dapat
diundur tanpa mempengaruhi saat paling cepat dari penyelesaian proyek secara
keseluruhan
b. Free float/slack, jumlah waktu di mana penyelesaian suatu aktivitas dapat diukur tanpa
mempengaruhi saat paling cepat dari dimulainya aktivitas yang lain atau saat paling
cepat terjadinya event lain pada network.
TL = latest event occurrence time, yaitu saat paling lambat terjadinya event.
ES = earliest activity start time, yaitu saat paling cepat dimulainya aktivitas.
EF = earliest activity finish time, yaitu saat paling cepat diselesaikannya aktivitas.
LS = latest activity start time, yaitu saat paling lambat dimulainya aktivitas.
LF = latest activity finish time, yaitu saat paling lambat diselesaikannya aktivitas.
t = activity duration time, yaitu waktu yang diperlukan untuk menyelesaikan suatu aktivitas.
S = total slack/float
SF = free slack/float
1. Proyek hanya memiliki satu initial event dan satu terminal event.
2. Saat tercepat terjadinya initial event adalah hari ke-nol
3. Saat paling lambat terjadinya terminal event adalah TL = TE untuk event ini.
Adapun cara perhitungan yang harus dilakukan terdiri atas dua cara, yaitu:
Pada perhitungan ini, perhitungan bergerak dari initial event menuju ke terminal
event. Tujuannya adalah untuk menghitung saat yang paling cepat terjadinya events
dan saat paling cepat dimulainya serta diselesaikannya aktivitas-aktivitas.
Pada perhitungan ini, perhitungan bergerak dari terminal event menuju ke initial
event. Tujuannya adalah untuk menghitung saat paling lambat terjadinya events dan
saat paling lambat dimulainya dan diselesaikannya aktivitas-aktivitas.
Untuk melakukan perhitungan maju dan perhitungan mundur, lingkaran event di bagi atas
tiga bagian.
Keterangan:
a = nomor event
Setelah kedua perhitungan di atas selesai, kemudian dilakukan perhitungan untuk mencari
nilai slack/float. Adapun cara perhitungannya adalah sebagai berikut:
1. Total float/slack dihitung dengan cara mencari selisih antara saat paling lambat dimulainya
aktivitas dengan saat paling cepat dimulainya aktivitas, atau dengan mencari selisih
antara saat paling lambat diselesaikannya aktivitas dengan saat paling cepat
diselesaikannya aktivitas.
2. Free float/slack aktivitas dihitung dengan cara mencari selisih antara saat tercepat
terjadinya event di ujung aktivitas dengan saat tercepat diselesaikannya aktivitas tersebut.
B. Tujuan
I. Definisi Jaringan
Sebuah jaringan terdiri dari sekelompok node yang dihubungkan oleh busur
atau cabang. Suatu jenis arus tertentu berkaitan dengan setiap busur. Notasi standar untuk
menggambarkan sebuah jaringan G adalah G = (N,A), dimana N adalah himpunan node dan
A adalah himpunan busur. Suatu jenis arus tertentu berkaitan dengan setiap jaringan.
Pada umumnya, arus dalam sebuah busur dibatasi oleh kapasitasnya, yang dapat terbatas
atau tidak terbatas. Sebuah busur dikatakan terarah atau terorientasi jika busur tersebut
memungkinkan arus positif dalam satu arah dan arus nol dalam arah yang berlawanan.
Karena itu, jaringan yang terarah adalah jaringan dengan semua busur yang terarah.
Jalur adalah urutan busur-busur tertentu yang menghubungajan dua node
tanpa bergantung pada orientasi busur-busur tersebut secara individual. Jalur akan
membentuk sebuah loop atau siklus jika jalur itu menghubungkan sebuah node dengan
dirinya sendiri. Sebuah loop yang terarah (atau sebuah sirkuit) adalah sebuah loop di mana
semua busur-busurnya memiliki arah atau orientasi yang sama.
Jaringan yang berhubungan adalah sebuah jaringan dimana setiap dua node
dihubungkan dengan sebuah jalur. Pohon adalah sebuah jaringan yang berhubungan yang
dapat hanya melibatkan sebagian dari node dan sebuah pohon perentangan adalah
sebuah jaringan yang berhubngan yang mencakup semua node dalam jaringan tersebut
tanpa loop.
Model yang dihasilkan adalah model khas dari masalah pohon perentangan
minimal, dimana kita menginginkan pohon perentangan yang menghasilkan jumlah terkecil
dari busur-busur penghubung. Akibatnya pohon perentangan minimal menangani penemuan
yang paling “efisien” diantar semua node dalam jaringan, yang berdasarkan definisinya, tidak
dapat mencakup loop atau siklus apapun.
Algoritma pohon perentangan minimal memerlukan awal dari salah satu node
manapun dan menghubungkannya dengan node terdekat dalam jaringan tersebut. Dua node
yang dihasilkan lalu membentuk himpunan yang dihubungkan, C, dengan node sisanya
membentuk node yang tidak dihubungkan, C. Selanjutnya, kita memilih sebuah node dari
himpunan yang tidak dihubngkan yang terdekat (memiliki panjang busur terpendek)
ke salah satu node dalam himpunan yang dihubungkan. Node yang dipilih tersebut lalu
disingkirkan dari himpunan yang tidak dihubungkan dan dimasukkan ke dalam himpunan
yang dihubungkan. Proses ini diulangi sampai himpunan yang tidak dihubungkan kosong
(atau dengan kata lain, sampai semua node dipindahkan dari C ke himpunan C). Jarak
terdekat yang sama dapat dipilih secara sembarang. Tetapi, jarak yang sama tersebut
menunjukkan adanya pemecahan alternatif.
A. Algoritma Asiklis
Algoritma Asiklis di dasari oleh penggunaan perhitungan rekursif, yang merupakan
dasar dari perhitungan pemprograman dinamis. Langkah – langkah dari algoritma ini
diterangkan melalui contoh numerik.
Contoh
Node 1 adalah node awal (sumber atau asal) dan node 7 adalah titik terminal (tujuan).
Jarak dij antara node i dan j diberikan secara lagsung untuk setiap busur. Misalnya d12 = 2.
Jaringan ini bersifat asiklis karena mencakup loop.
Anggaplah
uj = jarak terdekat dari node 1 ke node j
Node j Perhitungan uj L
1 u1 = 0 [0, -] a
2 u2 = u1 + d12 = 0 + 2 = 2, dari 1 [2, 1]
3 u3 = u1 + d13 = 0 + 4 = 4, dari 1 [4, 1]
4 u4 = min { u1 + d14, u2 + d24, u3 + d34}
= min {0 + 10, 2 + 11, 4 + 3} = 7 dari 3 [7, 3]
5 u5 = min { u2 + d25, u4 + d45 }
= min {2 + 5, 7 + 8} = 7 dari 2 [7, 2]
6 u6 = min { u3 + d36, u4 + d46 }
= min {4 + 1, 7 + 7} = 5, dari 3 [5, 3]
7 u7 = min { u5 + d57, u6 + d67 }
= min {7 + 6, 5 + 9} = 13, dari 5 [13, 5]
Rute optimum tersebut diperoleh dengan dimulai dari node 7 dan menelusuri ke
belakang dengan menggunakan informasi label. Urutan berikut ini memperlihatkan
prosedur tersebut:
Algoritma ini pada kenyataannya memberikan jarak terdekat antara node 1 dan setiap node
lainnya dalam jaringan ini.
Gambar 8.12
BAB II
PEMBAHASAN
Aplikasi perangkat lunak komputer dan Internet telah berkembang pesat pada
dasawarsa ini, demikian pula dengan aplikasi web dan browser internet maupun intranet.
Aplikasi E-Commerce telah lama berkembang diawali dengan EDI (Electronic Data
Interchange) yang telah berkembang dalam lingkup internasional. Dalam paper ini
diuraikan mengenai arsitektur sistem, tool dan konfigurasi yang diperlukan untuk
mengimplementasi aplikasi web e-commerce, konsiderasi masalah keamanan sistem, juga
perancangan dari sisi diagram alur aplikasi dan perancangan basis data. Digunakan bahasa
pemrograman PHP karena kemudahan dalam pemrograman, dan kelengkapan fitur untuk
mengimplementasi system e-commerce, kemampuan untuk cross platform, serta kemudahan
untuk deployment bagi pengembang aplikasi.
1. Pengertian E-Commerce
Definisi E-Commerce ( Electronic Commerce) : E-commerce merupakan suatu cara
berbelanja atau berdagang secara online atau direct selling yang memanfaatkan fasilitas
Internet dimana terdapat website yang dapat menyediakan layanan “get and deliver“. E-
commerce akan merubah semua kegiatan marketing dan juga sekaligus memangkas
biaya-biaya operasional untuk kegiatan trading (perdagangan) .
Proses yang ada dalam E-commerce adalah sebagai berikut :
Presentasi electronis (Pembuatan Web site) untuk produk dan layanan.
Pemesanan secara langsung dan tersedianya tagihan.
Otomasi account Pelanggan secara aman (baik nomor rekening maupun nomor
Kartu Kredit).
Pembayaran yang dilakukan secara Langsung (online) dan penanganan transaksi
Keuntungan yang diperoleh dengan menggunakan transaksi melalui E-commerce
bagi suatu perusahaan adalah sebagai berikut :
Meningkatkan pendapatan dengan menggunakan online channel yang biayanya
lebih murah.
Mengurangi biaya-biaya yang berhubungan dengan kertas, seperti biaya pos surat,
pencetakan, report, dan sebagainya.
Mengurangi keterlambatan dengan mengunakan transfer elektronik / pembayaran
yang tepat waktu dan dapat langsung dicek.
Mempercepat pelayanan ke pelanggan, dan pelayanan lebih responsif.
Agar sebuah situs web mempunyai memori / state, dalam hal ini aplikasi ini
mampu mengingat siapa memesan apa beberapa informasi yang mengidentifikasi
pengguna harus dikirim dengan setiap request halaman web. Informasi tersebut disimpan
dengan menggunakan session.
Session tersebut dipergunakan untuk merekam / tracking aktivitas pengguna yang
melalui sejumlah halaman pada website, misalnya pada jenis aplikasi Shopping Cart
(kereta belanja). Direkam pula informasi identitas pengguna yang memiliki kereta belanja
tersebut.
Dengan PHP, untuk penggunaan session ini mula-mula dilakukan pengaturan
pada file php.ini yang menunjukkan session dimulai (start). Dengan ini PHP akan
membuat suatu identifier unik dan file yang berkaitan, yang disimpan di server (lokasinya di
atur di php.ini dan nilai defaultnya di direktori /tmp). Kemudian pada saat pengguna
berkunjung pada halaman-halaman situs web, semua informasi variabel yang dipilih oleh
pengguna akan disimpan dalam file pada server, dan semua script yang dibutuhkan untuk
melacak sebagai identifier unik.
Implementasi session dapat mempergunakan cookie yang disimpan pada sisi
client, atau dipropagasikan melalui alamat URL.
Untuk penggunaan cookie, yaitu dengan passing variabel melalui cookie yang
menyimpan informasi semua elemen barang belanja dan harganya. Namun hal ini
memiliki keterbatasan yaitu dari (http://www.netscape.com/newsref/std/cookie_spec.html)
mengenai spesifikasi cookie yang hanya mengijinkan 20 cookie per domain dan
berukuran hanya 4 bytes per cookie. Cara lain adalah dengan memberi identitas /
identifier unik pada masing-masing pengguna, suatu nilai unik yang mengidentifikasi siapa
pengguna tersebut. Sehingga pada saat pengguna menambahkan satu item pada kereta
belanja, informasi yang berkaitan dengan identifier unik tadi disimpan di komputer server.
Jika menggunakan cookie untuk fungsi penyimpan informasi tadi, diperlukan membuat
string unik yang akan diletakkan dalam cookie, dalam direktori di server akan terdapat
sebuah file yang memiliki nama yang sama sebagai ID pengguna yang unik. Dalam file
tersebut dapat disimpan semua variabel yang berkaitan dengan pengguna. Contohnya
terdapat array berisi item-item barang yang ditambahkan oleh seorang pengguna ke dalam
kereta belanjanya.
Terdapat keterbatasan penggunaan cookie, yakni bila browser pengguna di atur
untuk menolak (reject) cookie.
Metode lain yang dapat digunakan adalah dengan propagasi URL, yaitu dengan
mengaktifkan flag –enable-trans-sid dalam konfigurasi PHP, hal ini berguna agar
session id akan secara otomatis ditambahkan ke setiap relative link pada halaman-
halaman web setiap kali session telah dimulai.
2.2 Konfigurasi Sistem dan Tool Yang Digunakan
Masalah lain dalam aplikasi ini adalah mengenai aspek keamanan dalam
memperoleh informasi dari pengguna, terutama data mengenai penggunaan kartu kredit.
Informasi ini perlu diverifikasi oleh institusi yang berkualifikasi dan memerlukan
pengaturan konfigurasi serta penggunaan beberapa macam tool. Dalam membangun
aplikasi ini dipergunakan algoritma untuk memelihara (maintain) state, pengambilan
informasi secara secure terhadap kartu kredit, menggunakan kode pemrograman khusus dan
penggunaan opsi instalasi khusus. Di bawah ini akan dibahas mengenai teori dasar enkripsi
dan sekuriti Web. Kemudian akan dibahas tool mandatory untuk instalasi web server
Apache.
2.2.2 Sertifikat
Meski masalah keamanan sudah ditangani dengan keberadaan Public key / Private
key, masih ada masalah yang perlu diperhatikan yakni pesan / data yang diperoleh adalah
benar dari pihak yang memiliki otorisasi, bukan dari pihak lain yang tidak berkepentingan
atau yang menyalahgunakan. Untuk itu dibutuhkan pihak ketiga untuk memverifikasi
pesan yang datang.
Pesan terenkripsi yang dikirim dan diterima akan memiliki semacam â
€˜signature’, dan verifikasi selanjutnya dilakukan terhadap ‘signature’ tersebut.
Web server di dalam firewall (lihat gambar 7). Jika diterapkan seperti ini, perlu
dikonfigurasi firewall menjadi akan melewatkan transaksi pada TCP port 80, atau
dengan membolehkan secara langsung melewatkan paket maupun dengan
menggunakan mekanisme proxy. Keuntungan dari menempatkan web server di
dalam firewall yaitu firewall akan memblok akses dari luar yang menggunakan
layanan Internet lainnya, seperti Telnet, FTP. Tetapi apabila penyusup “sniffer”
tersebut menggunakan kesalahan dari program CGI script, mereka akan
mempunyai akses tak terbatas ke jaringan lokal.
Pilihan ketiga, yang paling baik, yaitu menggunakan dua firewall: satu untuk
melindungi jaringan internal / lokal dan yang satunya lagi untuk melindungi web
server (lihat gambar 8).
Gambar 8. Webserver yang Diletakkan di Antara Internal Firewall dan External Firewall
2.2.7 CURL
Merupakan akronim dari fungsi-fungsi pustaka Client URL. Kode pustaka ini
dipergunakan untuk berkomunikasi melalui Internet menggunakan sembarang protokol di sisi
lawan. Kode ini mendukung Gopher, Telnet, dan HTTPS. Untuk dapat menggunakan fungsi
ini, konfigurasi instalasi PHP harus menyertakan flag –with-curl.
Tabel utama yang digunakan dalam aplikasi ini adalah tabel Pesanan, yang
mencatat order pemesanan. Tabel-tabel lain berelasi dengan tabel ini. Tabel Pesanan
menyimpan informasi id_user, id_alamat, dan semua informasi yang dibutuhkan untuk
pembayaran. Tabel Pesanan ini memiliki relasi one-to-many dengan tabel Item yang
berisi informasi item-item barang yang terdapat dalam sebuah order. Informasi mengenai
pengguna dan alamat pengguna dipisahkan, seorang pengguna dapat didentifikasi dari
alamat e-mail yang dimilikinya, dan alamat terdiri atas alamat kantor dan rumah. Tabel
Pengiriman berisi informasi opsi yang diberikan untuk pengiriman barang. Misalnya
terdapat pilihan menggunakan UPS, DHL, TIKI, Pos, dan sebagainya. Tabel Status berisi
catatan mengenai status pesanan, yaitu dapat berupa status dikembalikan (backordered),
dikirim (shipped), atau dibatalkan (cancelled). Terdapat pula tabel Jenis_Kartu untuk
menyimpan informasi jenis kartu kredit seperti Visa, Mastercard, dan sebagainya.Tabel 1.
Tabel 1. Alamat
Field Jenis Kosong Ekstra Keterangan
Id_Alamat Int(11) Tidak Auto_increment PRIMARY KEY
Id_User Varchar(40) Tidak KEY
Alamat Varchar(40) Ya
Alamat2 Varchar(40) Ya
Kota Varchar(40) Ya
Prop Varchar(40) Ya
KodePos Varchar(10) Ya
Negara Varchar(20) Ya
Telepon Varchar(20) Ya
Fax Varchar(20) Ya
Tinyint(4)
Komunikasi Antar Situs dan Penghapusan Informasi Kartu Setelah Proses Selesai
Gambar 15. Komunikasi Antar Situs dan Penghapusan Informasi Kartu Setelah Proses
Selesai
4. Kode Program
Pemrograman untuk aplikasi e-commerce ini diimplementasikan dengan PHP.
Fungsi-fungsi utama yang dipergunakan dalam kode program di sini adalah fungsi yang
berhubungan dengan session dan fungsi yang berkaitan dengan pustaka cURL.
Konsep pemrograman berorientasi objek digunakan dalam kode program ini.
Digunakan sifat inheritance, yakni jika sebuah kelas / class mewarisi properti dan metode
(properties and methods) dari kelas induk / parent class, ia memiliki akses terhadap semua
metode dan properti dari induknya. Dan sebuah aplikasi dapat dibangun dengan
memperluas / extending sebuah kelas berdasarkan kelas lain yang telah ada.
Diperlukan kerja sama dengan supplier / distributor produk komersil untuk dapat
menawarkan produk-produknya melalui e-commerce. Juga jasa kurir diperlukan untuk
dapat melakukan layanan antar kepada konsumen dengan cepat.
Kesimpulan
Atkins, Dorck and Buis, Paul. 1997. Internet Security Professional Reference. New Riders.
Buyens, Jim. 2001. Web Database Development. Elex Media Komputindo : Jakarta.
Greenspan,Jay, and Bulger,Brad. 2001. MySQL/PHP Database Application. M&T Books.
Minoli, Daniel Mindi Emma. 1998. Web Commerce Technology Handbook. Mc Graw Hill.
Pressman, Roger S. 1992. Software Engineering A Practitioner’s Approach, third edition.
McGraw-Hill International Edition.
Rumbaugh, James dkk. 1991. Object Oriented Modelling and Design, Prentice-Hall
International.,Inc.