BAB 2 LANDAS AN TEORI
2.1
Teori Teori-terori yang digunakan dalam pembuatan e-commerce generator ini adalah internet, platform (komputer dan web browaer), interaksi manusia dan komputer, UM L, bahasa pemrograman (PHP, Javascript, css), MySQL, generator, konsep e-commerce , codeigniter, dan javascript. 2.1.1
Internet Young (2002,p20) Internet adalah sebuah sistem global yang saling berhubungan melalui jaringan komputer yang menggunaan standard internet protocol suite (TCP/IP) untuk melayani jutaan pengguna yang ada di seluruh dunia. Internet terdiri dari kumpulan jaringan yang jumlahnya jutaan dan terdiri dari milik pribadi, umum, akademik, bisnis dan juga jaringan milik pemerintah lokal yang terhubung secara global melalui kabel tembaga , serat optik, sambungan nirkabel, dan teknologi lainnya. Intenet membawa sejumlah kumpulan sumber informasi dan pelayanan dalam bentuk dokumen hypertext, world wide web (WWW) dan infrastruktur untuk mendukung surat elektronik (email). Selain itu internet juga mendukung layanan populer seperti percakapan online (online chat) pengiriman data, filesharing, game, perdagangan, jaringan sosial, telekonferensi dan telekomunikasi dan lain- lain.
6
7 Internet awal mulanya diawali pada tahuhn 1969 yang dikenal dengan nama ARPANET yang dibiayai oleh departemen Amerika Serikat yaitu ARPA (Unted States Department of Defense Advance reseearch Project Agency ) ARPA tertarik untuk mengembangkan jaringan yang dapat menghubungkan dua komputer atau lebih dan pada tahun 1970 riset tersebut sudah dapat menghubungkan lebih dari 10 komputer untuk saling berkomunikasi dan membentuk sebuah jaringan. Akibat semakin banyaknya komputer yang mengakses jaringan maka dibutuhkan protocol yang diakui semua jaringan. Pada tahun 1982 dibentuk Transmission Control Protocol atau TCP dan Internet Protocol atau IP seperti yang kita kenal sekarang sampai akhirnya pada tahun 1990 ketika Tim Benners Lee menemukan program editor dan browser yang dapat menjelajah antar satu komputer dengan komputer lainnya yang sekarang dikenal dengan nama WWW (World Wide Web) dan terus berkembang hingga saat ini.
2.1.2 HTTP (Hypertext Tran sfer Protocol) Gourley and Totty (2002,p3-7) HTTP (Hypertext Transfer Protocol) M erupakan suatu protokol yang digunakan untuk melakukan proses transfer data atau dokumen yang ada di dalam World Wide Web. HTTP ada dua versi utama yaitu HTTP/1.0 yang menggunakan sambungan terpisah untuk setiap dokumen dan HTTP/1.1 yang dapat menggunakan kembali koneksi yang sama untuk melakukan download, contohnya gambar untuk halaman yang dilayani maka HTTP/1.1
8 mungkin membutuhkan waktu lebih cepat untuk mempersiapkan koneksi tersebut. Pengembangan standard HTTP telah dikoordinasikan oleh World Wide Web consortium dan Internet Enginering Task Force (IETF), yang mencapai puncaknya pada publikasi Request of Comments (RFCs) atau serangkaian permintaan untuk komentar terutama RFC 2616 pada Juni 1999, yang mendefinisikan HTTP/1.1, yaitu versi HTTP yang pada umumnya digunakan pada saat ini. HTTP adalah request/response standard yang ada pada aplikasi client – server. Client adalah suatu aplikasi (misalnya web browser, spider, dan lain-lain) yang ada pada komputer dan digunakan oleh end user. Sedangkan server adalah aplikasi berjalan di komputer hosting pada situs web. Client yang melakukan submit HTTP request dapat disebut juga sebagai user agent. Server yang menggapai setiap penyimpanan atau pembuatan sumber daya seperti file HTM L dan gambar dapat disebut sebagai origin server. Diantara user agent dan origin server terdapat beberapa perantara lain proxy, gateway, dan tunnel. 2.1.3
WWW(World Wide Web) Bullock (2003, p4) World wide web adalah sistem yang saling berkaitan antar dokumen hypertext yang diakses melalui internet dengan menggunakan web browser, kita dapat memlihat halaman web yang dapat berisikan teks, gambar, video, dan multimedia lainnya dan dapat dihubungkan dengan menggunakan hyperlink.
9 Offutt, Jeff. dan wu, ye. (2009,p258) sebuah situs web adalah koleksi halaman web dan terkait elemen perangkat lunak secara semantik oleh konten dan sintaksis melalui link dan mekanisme kontrol lainnya. Web statis merupakan web yang sama untuk semua pengguna, dan biasanya disimpan sebagai file HTM L pada server. Web dinamis merupakan halaman web yang dibuat untuk memenuhi permintaan pengguna, dan isinya terstruktur ditentukan oleh input pengguna.
2.1.4
Web Browser Surhone et al.(2009,p7) web browser merupakan suatu aplikasi perangkat lunak yang berfungsi untuk mengambil, menampilkan, dan mentransfer sumber-sumber informasi diidentifikasi oleh Uniform Resources Identifier (URI) dan mungkin dalam bentuk halaman web, gambar, video, atau dalam bentuk lainnya. Hyperlink berguna untuk memungkinkan user lebih mudah melakukan navigasi browser mereka ke sumber daya yang terkait. Walaupun fungsi utama browser untuk mengakses World Wide Web, browser juga dapat digunakan mengakses informasi yang disediakan oleh web server dalam jaringan pribadi atau dokumen dalam file system. Beberapa web browser utama yang dikenal sekarang ini antara lain Internet Explorer, M ozila Firefox, Safari, Opera, Google Chrome dan lainnya.
10 2.1.5
Sistem Development Life Cycle (S DLC) SDLC menurut Lucas Jr, Henry (2005, p120). M erupakan suatu bentuk yang digunakan untuk menggambarkan tahapan utama dan langkah-langkah di dalam tahapan dalam proses pengembangannya. Pada system life cycle tiap-tiap bagian dari pengembangan sistem dibagi menjadi beberapa tahapan kerja. Tiap-tiap tahapan ini mempunyai karakteristirk tersendiri, tahapan utama siklus hidup pengembangan sistem dapat terdiri dari tahapan perencanaan sistem (system planning), analisis sistem (system analysis), desain sistem (system desain), seleksi sistem (system selection), implementasi sistem (system implementation), dan perawatan sistem (system maintenace).
Salah satu di antaranya terdapat definisi yang cukup tepat yang dapat diterapkan secara langsung yaitu pandangan dari Henry C. Lucas, Jr.
Beliau
mengemukakan
definisi
mengenai
Siklus
Hidup
Pengembangan Sistem terbagi menjadi tahap-tahapan sebagai berikut :
1.
Inception (Tahap Persiapan) Pekerjaan (Action) : Preliminary Study (Studi Awal) Tugas (Task) : 1.
Respond to idea for a system (Tanggapan terhadap ide sebuah sistem) : M erespon rencana, persiapan dan definisi proyek sistem apa yang ingin dikerjakan atau mengulas permasalahan mengapa sistem baru perlu dibuat.
11 2.
Sketch outline of system, I / O & Files : M endefinisikan gambaran besar sistem yaitu membuat sketsa input, output dan file yang akan dikerjakan.
2.
Feasibility Study (Tahap S tudi Kelayakan) Pekerjaan (Action) : Existing Procedure (Identifikasi kelayakan prosedur-prosedur atau dokumen-dokumen yang telah ada), Alternative System (M enentukan kelayakan alternatif sistem) dan Cost Estimates (M enentukan kelayakan perkiraan biaya atas perlengkapan-perlengkapan yang akan dipakai). Tugas (Task) : 1.
Describe existing methods of processing informations (if they exist) output, input, file processing : M enguraikan metode
pengolahan
informasi
output,
input
dan
pengolahan file yang telah ada (jika ada). 2.
Delineate
software
and
hardware
alternatif
:
M enggambarkan garis besar perangkat keras dan lunak alternatif
yang
dapat
dipakai
untuk
mengatasi
permasalahan yang diakibatkan oleh prosedur–prosedur yang ada saat ini. 3.
Determine feasibility : M elakukan perbandingan antara sistem yang ada saat ini dengan sistem baru yang akan dibuat, sehingga dapat disimpulkan kelayakan dari sistem baru yang akan diajukan. (Kelayakan ini menyangkut
12 kelayakan atas teknik, operasi, jadwal, ekonomi, dan kelyakan hukum) 4.
Choose
an
alternative
software
and
hardware
combination : M enentukan suatu kombinasi (arsitektur jaringan) perangkat keras dan lunak pilihan yang akan dipakai untuk sistem yang diajukan. 3.
System Analysis (Tahap Analisa Sistem) Analisis Sistem dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang utuh ke dalam bagian-bagian komponennya dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan, kesempatan, hambatan yang terjadi dan kebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikannya.
Pekerjaan (Action) : Details of present procedures (M enganalisa rincian langkah-langkah pengoperasian prosedur)
Tugas (Task) : Complete analysis of existing system and document it. Collect data on transaction and file volumes. M elengkapi identifikasi, pemahaman, analisa dan dokumentasi hasil analisis sistem yang telah ada. M enyeleksi data pada masing-masing volume transaksi dan arsip yang ada.
13 4.
Requirement Analysis (Tahap Analisa Kebutuhan) Pekerjaan (Action) : User Needs (M enganalisa para pemakai sistem dan kebutuhannya), Collection of data volume, I/O, file (Seleksi arsip, input/output dan volume data), Boundary setting (M engidentifikasi kembali ruang lingkup dan sasaran sistem yang akan dibuat) Tugas (Task) : Repeated meeting with users to determine their needs and to review design to date. M elakukan pertemuan berulang kali bersama pemakai dengan menampilkan disain yang ditawarkan dan untuk dapat menyimpulkan kebutuhannya atas sistem baru yang akan dibuat).
5.
Design (Tahap Perancangan) Pekerjaan (Rancangan
(Action)
sistem
:
yang
Ideal
system
unconstrained
ideal/mengena
sebagaimana
mestinya/bersifat tak terbatas), Revision to make ideal acceptable (Rancangan perbaikan untuk memberikan kepuasan ideal bagi pemakai sistem). Tugas (Task) : 1.
Develop design from user requirement : M engembangkan rancangan sesuai kebutuhan pemakai sistem dengan memperhatikan tekanan-tekanan desain seperti integrasi, jalur pemakai sistem, persaingan, kualitas dan daya guna informasi,
faktor-faktor
organisasi
dan
manusia,
14 kebutuhan-kebutuhan sistem, pengolahan data, biaya efektivitas serta kelayakan. 2.
Choose strategy of packages, generator, non-procedurral language, prototyping and user development or some combination : M enentukan siasat atas software paket, software pembangkit, bahasa non prosedur, prototipe dan perkembangan pemakai sistem atau kombinasi lainnya.
6.
Specifications (Tahap Rancang Bangun)
Pekerjaan (Action) : Processing Logic (M enjabarkan logika pengolahan sistem), File design + I/O (M enjabarkan rancangan
arsip, input dan output sistem), Programming
Requirements
(M enjabarkan
kebutuhan
pemrograman)
dan
Manual Procedures (M enjabarkan prosedur-prosedur manual sistem).
Tugas (Task) : Develop spesification as far as needed for choosen strategy : M engembangkan penjabaran spesifik sejauh kebutuhan siasat yang ditentukan.
7.
Programming (Tahap Pemrograman) Pekerjaan (Action) : Programming (M engkonversi sistem dalam bentuk program komputer).
15 Tugas (Task) : Develop program specification, module, schedule and work plan (M engembangkan spesifikasi program, modul, jadwal dan rencana kerja).
8.
Testing (Tahap Pengujian)
Pekerjaan (Action) : Unit Test + Combined Module Test (M elakukan pengujian pada unit-unit dan modul kombinasi yang telah ditentukan) dan Accpetance Test (M elakukan pengujian kepuasan atas pemakaian sistem).
Tugas (Task) : Conduct Unit, Combined Module and Acceptance test (M enjalan unit, modul kombinasi dan pengujian kepuasan pemakaian)
9.
Training (Tahap Pelatihan) Pekerjaan (Action) : Training Tugas (Task) : Plan and Conduct (M erencanakan pelatihan dan penjalanan sistem)
10.
Installation (Tahap Instalasi) Pekerjaan (Action) : Conversion and installation (pemasangan sistem dan pengkonversinya).
Tugas (Task) : Plan, collect data and convert (M erencanakan, menentukan data dan mengkonversinya)
16 11.
Operation (Tahap Operasi)
Pekerjaan (Action) : Maintenance and enhancements (M elakukan perawatan serta perbaikan dan peningkatan kualitas sistem).
Tugas (Task) : Routine maintenance and enhancements
12.
2.1.6
Documentation (Tahap Dokumentasi)
Paradigma Perangkat lunak Waterfall Model Pressman (2005,p79-80) M odel waterfall, disebut juga dengan classic life cycle, mengusulkan pendekatan secara sistematik dan sequential untuk pengembangan perangkat lunak yang dimulai dengan spesifikasi kebutuhan pengguna, perencanaan, permodelan, konstruksi, dan penyebaran, mencapai puncaknya pada dukungan terus menerus menjadi piranti lunak yang lengkap.
Communication
Planning
M odelling
Construction
deployment
Gambar 2.1 M odel Waterfall
17 Berikut adalah penjelasan dari tahapan – tahapan tersebut: 1. Communication Terdiri dari project initation dan requirement gathering. M erupakan tahapan pengumpulan kebutuhan yang dilakukan secara intensif dan fokus terutama kepada software. M enurut Cyr, Dianne., Bonanni, Carole., Bowes, John., dan Ilsever, Joe. (2005, p34) dalam jurnal tertulis terdapat 4 cara yaitu : a. Survey Development: Sebuah alat survei dibangun untuk menguji reaksi beberapa pengguna. b. Research task: peserta menyelesaikan survei questions dalam kategori, masing-masing
diminta
pertanyaan
wawancara
paralel
untuk
mendapatkan informasi lebih lanjut tentang pengalaman situs web. c. Penyeleksian peserta. d. Analisis : yaitu peninjau independen menganggap data dari perspektif yang berbeda dalam rangka untuk memvalidasi temuan. Pemeriksaan resensi kedua dari data mengungkapkan hasil mendekati identik. 2. Planning Terdiri dari estimating, schedulling, dan tracking. Pada tahap ini pengembang software membuat perkiraan waktu yang diperlukan. Pada tahap ini juga dilakukan penjadwalan untuk menyelesaikan tahap-tahap pembuatan software sesuai dengan waktu yang telah diperkirakan. 3. Modelling Terdiri dari analisis dan design. Pada saat ini mendesain software, biasanya memiliki beberapa proses yang memfokuskan pada empat
18 attribute dari program. Atribute tersebut adalah struktur data, arsitektur data, arsitektur software, representasi interface, dan detail algoritma. Proses desain mengubah kebutuhan menjadi representasi dari software yang dapat dinilai untuk kualitas sebelum penulisan code dimulai. 4. Construction Terdiri dari code dan test. Pada tahap ini, desain diterjemahkan menjadi bentuk yang dapat dibaca oleh mesin, setelah penulisan code selesai dibuat, pengujian terhadap
program diakukan.
Proses pengujian
menekankan pada logikal internal pada software, meyakinkan semua penyertaan dan fungsi external. 5. Deployment Terdiri dari delivery, support, dan feedback. Pada tahap ini, pengembang software menyediakan software yang memiliki fungsi dan fitur yang bermanfaat. Pengembang software juga menyediakan dokumentasi untuk semua fitur dan fungsi. Pada tahap ini juga, pengembang software mendapatkan umpan balik terhadap software yang berujung pada pemodifikasian fungsi dan fitur.
2.1.7
Perbedaan S DLC dan Waterfall M enurut Lucas Jr, Henry (2005, p122) System Development Lyfe Cycle (SDLC) adalah keseluruhan proses dalam membangun sistem melalui beberapa langkah. M etode pengembangan perangkat lunak dikenal dengan istilah SDLC (Software Development Life Cycle). M etodologi ini menjadi perhatian sangat istimewa pada proses rekayasa
19 perangkat lunak. Karena dengan metodologi SDLC yang digunakan akan sangat menentukan sukses tidaknya proyek software. Perbandingan tentang kelebihan dan kekurangan model Waterfall dan Prototype pada Software Development Life Cycle (SDLC) ini dijelaskan berikut ini
1. Waterfall Waterfall,
merupakan
SDLC tertua karena sifatnya yang
natural. Urutan SDLC waterfall ini bersifat serial dari proses perencanaan, analisa, desain, dan implementasi pada sistem. M odel ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai didalam Software Engineering (SE). M odel ini melakukan pendekatan secara sistematis dan urut mulai dari tingkat kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Kelebihan : 1. M erupakan model pengembangan paling handal dan paling lama digunakan. 2. Cocok untuk system software berskala besar. 3. Cocok untuk system software yang bersifat generic. 4. Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol.
20 Kekurangan : 1. Persyaratan system harus digambarkan dengan jelas. 2. Rincian proses harus benar-benar jelas dan tidak boleh berubahubah. 3. Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi pada suatu tahapan pengembangan
2. Model Prototyping Prototype merupakan salah satu metode pengembangan perangat lunak yang banyak digunakan. Dengan metode prototyping ini pengembang dan pelanggan dapat saling berinteraksi selama proses pembuatan sistem. Prototyping, dimulai dengan pengumpulan kebutuhan, mendefinisikan objektif keseluruhan dari software, mengidentifikasikan kebutuhan, kemudian dilakukan “perancangan kilat” yang difokuskan pada penyajian aspek yang diperlukan. Kelebihan : 1. Prototype melibatkan user dalam analisa dan desain. 2. Punya kemampuan menangkap requirement secara konkret daripada secara abstrak. 3. Untuk digunakan secara standalone. 4. Digunakan untuk memperluas SDLC. 5. M empersingkat
waktu
pengembangan
Sistem
Kekurangan : 1. Proses analisis dan perancangan terlalu singkat.
Informasi
21 2. M engesampingkan alternatif pemecahan masalah. 3. Bisanya kurang fleksibel dalam menghadapi perubahan. 4. Prototype yang dihasilkan tidak selamanya mudah dirubah 5. Prototype terlalu cepat selesai 2.1.8
Interaksi Manusia dan Komputer Shneiderman (2003, p58-59) tujuan penting bagi desainer adalah user interface yang konsisten. Bagaimanapun definisi dari konsistensi sendiri sulit dipahami dan memiliki banyak tingkatan yang terkadang saling bertabrakan. Argumen untuk konsistensi adalah bahwa bahasa perintah atau serangkaian tindakan harus terurut, dapat diprediksi, dan dapat dideskripsikan oleh beberapa aturan, oleh karena itu mudah untuk dipelajari dan dikuasai. Shneiderman(2003, p74-75) mengemukakan 8 aturan yang dapat digunakan sebagai petunjuk dasar yang terbaik untuk merancang suatu user interface. Delapan aturan ini disebut dengan Eight Golden Rules of Interface Design, yaitu : 1. Konsistensi Konsistensi dilakukan pada urutan tindakan perintah, dan istilah yang digunakan pada prompt, menu, serta layar bantuan. Konsistensi juga harus ditonjolkan pada penggunaan warna, tata letak kapitalisasi, font yang digunakan, dan lain-lain. 2. Memungkinkan pengguna untuk menggunakan shortcut M enambahkan fitur untuk pemula, seperti penjelasan atau tutorial pengguna dan fitur untuk para ahli, seperti cara pintas atau shortcut.
22 3. Memberikan umpan balik yang informatif Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem umpan balik. Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan umpan balik yang sederhana. Tetapi ketika tindakan merupakan hal yang penting, maka umpan balik sebaiknya lebih substansial. M isalnya muncul suatu suara ketika salah menekan tombol pada waktu input data atau muncul pesan kesalahannya. 4. Merancang dialog untuk menghasilkan suatu penutupan. Urutan tindakan sebaiknya diorganisir dalam suatu kelompok dengan bagian awal, tengah dan akhir. Umpan balik yang informatif akan memberikan indikasi bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan berikutnya. 5. Memberikan penanganan kesalahan yang sederhana Sebisa mungkin sistem dirancang sehingga pengguna tidak dapat melakukan kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi kesalahan dengan cepat dan memberikan mekanisme yang sederhana dan mudah dipahami untuk pengamanan kesalahan. 6. Mudah kembali ke tindakan sebelumnya Hal ini dapat mengurangi kekhawatiran pengguna karena pengguna mengetahui kesalahan yang dilakukan, sehingga pengguna tidak takut untuk mengeksplorasikan pilihan-pilihan lain yang belum bisa digunakan.
23 7. Mendukung tempat pengendalian internal Pengguna ingin menjadi pengontrol sistem dan sistem akan merespon tindakan yang dilakukan pengguna daripada pengguna merasa bahwa sistem mengontrol pengguna. Sebaiknya sistem dirancang sedemikian rupa sehingga pengguna menjadi inidikator daripada responden. 8. Mengurangi beban ingatan jangka pendek Ketebatasan ingatan manusia membutuhkan tampilan yang sederhana atau banyak tampilan halaman yang sebaikanya disatukan, serta diberikan cukup waktu perlatihan untuk kode, mnemonic, dan urutan tindakan.
24 2.1.9
UML (Unified Modelling Language) M enurut Bentley dan Whitten (2007, p371), UM L adalah satu set dari ketentuan modelling yang digunakan untuk menspesifikasi atau mendeskripsikan sebuah sistem software dalam suatu kondisi dari objek. UM L dibagi menjadi beberapa komponen: 1. Class Diagram M enurut Bentley menggambarkan
dan Whitten (2007, p400), Class diagram struktur
sistem
suatu
objek.
Diagram
ini
menampilkan kelas-kelas objek yang sistemnya tersusun seperti hubungan antara kelas-kelas objek. 2. Use case Diagram M enurut Bentley dan Whitten (2007, p246-250), use case diagram menggambarkan interaksi sistem dan sistem eksternal dan user. Dengan kata lain, secara grafikal mendeskripsikan siapa yang akan menggunakan sistem dan dengan cara seperti apa yang diharapkan user untuk berinteraksi dengan sistem. Use case diagram memiliki komponen sebagai berikut: a. Pelaku Pada use case diagram, pelaku adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk pertukaran informasi. b. Relationship (hubungan) Pada use case diagram, hubungan digambarkan dalam sebuah garis diantara dua simbol. 3. Activity Diagram
25 M enurut Bentley dan Whitten (2007, p390), activity diagram menggambarkan alur yang berurutan dari aktifitas use case atau proses bisnis. Diagram ini juga dapat digunakan untuk memodelkan logika suatu sistem. Activity diagram memliki komponen sebagai berikut: a. Titik solid Pada activity diagram, titik solid menggambarkan awal sebuah proses. b. Segi empat dengan sudut tumpul. Pada activity diagram, segi empat dengan sudut tumpul menggambarkan tugas yang perlu dilakukan. c. Panah Pada activity diagram, panah menggambarkan sasaran yang mengawali kegiatan. d. Diamond Pada
activity
diagram,
menggambarkan
sebuah
kegiatan
keputusan. e. Titik solid di dalam lingkaran Pada
activity
diagram,
titik
menggambarkan akhir sebuah proses.
solid
didalam
lingkaran
26 4. Sequence Diagram M enurut Bentley dan Whitten (2007, p394), secara grafikal, sequence diagram menggambarkan bagaimana objek berinteraksi satu sama lain melalui pesan dalam eksekusi use case atau operasi. Diagram ini menggambarkan langkah-langkah pesan dikirim dan diterima antara obyek. 2.1.10 PHP Oktavian(2010, p7), PHP atau Hypertext Processor adalah suatu bahasa berbasis kode (script) yang berguna untuk mengolah data dan mengirimkannya ke web browser menjadi kode HTM L. PHP (Personal Home Page) awalnya diluncurkan sebagai perangkat lunak open source dan tetap begitu sampai hari ini. Database yang terintegrasi diimplementasikan di versi 2.0 pada tahun 1996, dan produk telah berkembang dengan pesat sejak saat itu.
27 2.1.11 CSS Riyanto (2009,p10) menjelaskan bahwa Cascading Style sheet (CSS) merupakan “salah satu bahasa pemrograman web yang digunakan untuk
mengendalikan
beberapa
komponen-komponennya
lebih
tersutruktur dan seragam”. Pada umumnya CSS dipakai untuk memformat tampilan halaman web yang dibuat dengan bahasa HTM L dan XHTM L. CSS dapat mengendalikan ukuran gambar, warna bagian tubuh pada teks, warna tabel, ukuran border, warna border, warna hyperlink. Warna mouse over, spasi antar teks, margin kiri, kanan, atas, bawah, dan parameter lainnya. 2.1.12 Sistem Basis Data Thomas Connolly dan Carolyn Begg (2005, p15) mendefinisikan sistem basis data sebagai kumpulan dari data yang terhubung secara logika dan merupakan deskripsi dari data tersebut, yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. 2.1.13 MySQL M engacu pada pendapat Vaswani (2003, p17) MySQL adalah sebuah server database SQL multiuser dan multi-threaded SQL sendiri adalah salah satu bahasa database yang paling populer. MySQL dibuat oleh TcX dan telah dipercaya mengola sistem dengan 40 buah database berisis 10.000 tabel dan 500 diantaranya memiliki 7 juta baris. Database ini dibuat untuk keperluan sistem database yang cepat, handal dan mudah digunakan.
28 2.1.14 Generator M enurut Wasitos (1987, p440) generator merupakan acara yang membangun suatu acara lain dari seperangkat instruksi yang sudah khusus dirancang untuk keperluan itu, dengan jalan penyeleksian, penyusunan, dan penyesuaian menuruti pertelaan-pertelaan yang sudah ditentukan (ANSI). 2.1.15 E-commerce M enurut Kalakota dan Whinston (1997, p3), Tergantung dari pandangan orang, electronic commerce memiliki definisi yang berbeda. ¾ Dari perspektif komunikasi, electronic commerce adalah pengiriman informasi, produk atau jasa, atau pembayaran melalui jalur telepon, jaringan komputer, atau yang lainnya. ¾ Dari perspektif proses bisnis, electronic commerce adalah aplikasi dari teknologi yang mengarah ke otomatisasi dari transaksi bisnis dan tahapan kerja. ¾ Dari perspektif servis, electronic commerce adalah alat yang menunjukkan keinginan dari perusahaan, konsumen, dan manajemen untuk menghemat biaya operasional akan tetapi tetap meningkatkan kualitas dari produk tersebut dan kecepatan dari pengiriman barang. ¾ Dari
perspektif
online,
electronic
commerce
menyediakan
kemampuan dari pembelian dan penjualan produk dan informasi melalui internet dan jasa online lainnya.
29 2.1.15.1
Kategori dasar e-commerce M enurut O’Brien (2005, p384), banyak perusahaan kini terlibat dalam atau mensponsori tiga kategori dasar dari aplikasi ecommerce: e-commerce business-to-consumer, business-to-business, dan consumer-to consumer.
¾ E-commerce Business-to-Consumer
(B2C).
Dalam bentuk e-
commerce semacam ini, perusahaan harus mengembangkan pasar elektronik yang menarik untuk menjual berbagai produk dan jasa ke para pelanggan. Contohnya, banyak perusahaan menawarkan situs web e-commerce yang menyediakan pajangan virtual dan katalog multimedia, pemrosesan pesanan interaktif, sistem pembayaran yang aman, dan dukungan pelanggan online. ¾ E-commerce Business-to-Business (B2B). Kategori e-commerce ini melibatkan pasar e-business dan hubungan pasar langsung antar perusahaan. Contohnya, banyak perusahaan menawarkan situs web yang aman berisi katalog e-commerce melalui internet atau ekstranet untuk para pelanggan dari perusahaan dan para pemasok. Hal lain yang juga sangat penting adalah portal e-commerce B2B yang menyediakan pasar lelang dan jual beli untuk berbagai perusahaan. Perusahaan lain dapat bergantung pada pertukaran data elektronik (electronic data interchange – EDI) melalui Internet atau ekstranet untuk pertukaran komputer-komputer atas berbagai dokumen ecommerce dengan para pelanggan besar dari perusahaan dan pemasoknya.
30 ¾ E-commerce Consumer-to-Consumer (C2C). Keberhasilan besar dari lelang online seperti eBay, tempat para pelanggan (dan juga perusahaan) dapat membeli serta menjual ke satu sama lain dalam proses situs web lelang, menjadikan C2C sebuah strategis bisnis ecommerce yang paling penting. Jadi, berpartisipasi atau mensponsori lelang pelanggan atau perusahaan adalah alternatif e-commerce yang penting untuk B2C, C2B (consumer-to-business), atau B2B. Iklan personal elektronik dari produk atau jasa untuk membeli atau menjual oleh pelanggan di situs koran elektronik, portal e-commerce pelanggan, atau situs web personal juga merupakan bentuk ecommerce C2C yang penting lainnya. 2.1.15.2 Tipe –Tipe e-commerce Kalakota dan Whinston (1997, p18) mengkategorikan ecommerce kedalam beberapa tipe-tipe: a. Inter-organizational electronic commerce ¾ M anajemen supplier. Aplikasi elektronik membantu perusahaan mengurangi jumlah dari pemasok dan memfasilitasi hubungan bisnis dengan mengurangi purchase order (PO) biaya proses dan daur waktu dan dengan meningkatkan jumlah dari PO yang di proses oleh orang lebih sedikit.
31 ¾ M anajemen inventaris. Aplikasi elektronik mengurangi biaya siklus penagihan pemesanan. Jika sebagian besar partner bisnis telah terhubung secara elektronik, informasi yang dikirim melalui fax atau surat kini dapat dengan mudah di transmisikan. Partner Bisnis juga dapat melacak dokumen mereka untuk
memastikan
bahwa dokumen
tersebut
telah
tersampaikan, dengan demikian akan meningkatkan kemampuan audit. ¾ M anajemen distribusi. Aplikasi elektronik memfasilitasi transmisi dari pengiriminan dokumen seperti bill of lading, purchase order, pemajuan surat pemberitahuan
pengiriman,
dan
klaim
surat
muatan,
dan
mengizinkan pengelolaan sumber daya yang lebih baik dengan memastikan bahwa dokumen-dokumen tersebut berisi data yang lebih akurat. ¾ M anajemen komunikasi. Aplikasi elektronik dengan cepat menyebarkan informasi mengenai perubahan kondisi operasional ke partner perdagangan. Hal teknis, produk,
dan
informasi
harga
yang
dulunya
memerlukan
pengulangan pembicaraan telepon dan waktu yang banyak sekarang dapat dikirimkan secara elektronik melalui papan buletin. Dengan menghubungkan
secara
elektronik
antara
informasi
yang
berhubungan produksi dengan distributor internasional dan jaringan
32 pengecer, perusahaan dapat menghilangkan waktu kerja yang di perlukan dan memastikan penyampaian informasi yang akurat. ¾ M anajemen pembayaran. Aplikasi elektronik menghubungkan perusahaan dengan pemasok dan distributor sehingga pembayaran dapat diterima maupun dikirimkan secara elektronik. Pembayaran elektronik mengurangi kesalahan pendataan, meningkatkan kecepatan bagi perusahaan untuk menghitung invoice, dan mengurangi biaya transaksi. b. Intra-organizational electronic commerce ¾ Komunikasi kelompok kerja. Aplikasi ini mengizinkan manajer untuk berkomunikasi dengan karyawan melalui surat elektronik, konferensi video, dan papan buletin.
Tujuannya
meningkatkan
adalah
penyebaran
menggunakan informasi,
teknologi
untuk
sehingga menghasilkan
karyawan yang berpengetahuan. ¾ Penerbitan elektronik. Aplikasi ini mengizinkan perusahaan untuk mengatur, menerbitkan, dan menyebarkan pedoman sumber daya manusia, spesifikasi produk, dan waktu pertemuan menggunakan world wide web. Tujuannya
adalah
menyediakan
informasi
sehingga
dapat
menyediakan strategi dan taktik pengambilan keputusan yang lebih baik ke seluruh perusahaan.
33 ¾ Produktifitas penjualan. Aplikasi ini meningkatkan pergerakan informasi antara bagian penjualan dan produksi, dan antara perusahaan dengan konsumen. Dengan mengintegrasikan bagian penjualan dengan bagian lain dari organisasi, perusahaan dapat memiliki akses ke pengetahuan pasar dan informasi kompetitor yang lebih bagus, dimana informasi tersebut dapat digunakan untuk menyusun strategi yang lebih baik. c. Consumer-to-business electronic commerce ¾ Interaksi sosial. Aplikasi elektronik menyediakan sebuah media komunikasi antar konsumen melalui surat elektronik, konferensi video, dan grup berita. ¾ Pengelolaan keuangan pribadi. Aplikasi elektronik seperti “quicken”, memberikan konsumen kemudahan untuk mengelola investasi dan keuangan finansial menggunakan peralatan banking online. ¾ M embeli produk dan informasi. Aplikasi elektronik sekarang mempermudah konsumen untuk menemukan informasi online mengenai produk atau jasa yang sudah tersedia dan produk atau jasa baru.
34 2.1.16 Codeigniter
Gambar 2.2 Skema M odel View Controller (M VC)
M enurut Awam Pribadi Basuki (2010, p8) codeigniter adalah sebuah framework PHP yang dapat membantu mempercepat developer dalam pengembangan aplikasi web berbasis PHP dibandingkan jika menulis semua kode program. M enurut ian sommerville (2011, p155), M VC merupakan sistem memiliki tiga komponen logika yang saling berinteraksi satu sama lain. Komponen model mengatur sistem data dan asosiasi operasi data. Komponen view mengatur tampilan tatap muka pada user. Komponen controller mengatur interaksi antara komponen model dan view.
35
Browser
Controller
View
HTTP Request Processing Application-specific Logic Data Validation
Form to display
Dynamic Page Generation Forms M anagement
User events Change notification
Update Request
Refresh request
M odel Bussines Logic Databas
Gambar 2.3 Skema M odel View Controller (M VC)
2.1.17 Javascript JavaScript
adalah
bahasa
scripting
baru
yang
sedang
dikembangkan oleh Netscape. Dengan JavaScript kini dapat dengan mudah membuat halaman web yang interaktif. Sunyoto (2007, p20) menyatakan bahwa ”browser seperti Internet Explorer, Mozilla firefox, Opera, Netscape sudah dapat menjalankan Javascript." Navigator
36 sebelumnya telah mendukung Java untuk lebih bisa dimanfaatkan para programmer non-Java. M aka dikembangkanlah bahasa pemrograman bernama LiveScript untuk mengakomodasi hal tersebut. Bahasa pemrograman inilah yang akhirnya berkembang dan diberi nama JavaScript, walaupun tidak ada hubungan bahasa antara Java dengan JavaScript. JavaScript bisa digunakan untuk banyak tujuan, misalnya untuk membuat efek rollover baik di gambar maupun teks, dan yang penting juga adalah untuk membuat AJAX. JavaScript adalah bahasa yang digunakan untuk AJAX.