BAB II LANDASAN TEORI
2.1. Kuliner Kuliner merupakan sebuah warisan budaya leluhur yang telah melebur menjadi satu dalam masayarakat dan berkat kearifan tradisional dan budaya yang berbaur menjadi kesatuan yang harmonis menciptakan sebuah keselarasan yang tak tergerus sepanjang masa (Bondan Winarno). Kuliner secara umum dikenal dengan berbagai olahan makanan dan minuman yang biasa dikonsumsi oleh masyarakat, tetapi kuliner lebih dari sekedar makanan atau minuman saja, kuliner merupakan identitas sebuah negara atau wilayah dimana kuliner itu ada dan berkembang. 2.2 Pengertian Sistem Menurut (McLeod 2001:11) Sistem adalah sebuah kelompok elemen yang telah terintegrasi dengan tujuan yang sama untuk mencapai sebuah tujuan. Suatu lembaga atau organisasi seperti sebuah perusahaan atau suatu bidang yang fungsional cocok dengan definisi ini. Lembaga atau organisasi seperti perusahaan yang terdiri dari sejumlah besar sumber daya seperti yang telah dibahas sebelumnya, dan sumber daya tersebut bekerja menuju tercapainya sustu tujuan tertentu yang telah di tentukan oleh manajemennnya. Data yang terdiri dari fakta-fakta dan angka-angka yang relatif tidak berarti bagi pemakainya ialah sistem (McLeod 2000:15). Sebagai contohnya ialah dapat berupa jumlah gaji tiap pegawai dalam sebuah lembaga atau perusahaan,Sedangkan informasi adalah data-data yang telah di proses terlebih dahulu sehingga dapat memiliki arti yang konkrit dan dapat dipertanggung jawabkan.
http://digilib.mercubuana.ac.id/
2.3 Perancangan Sistem Informasi Perancangan menurut (Whitten 2004:472). Merupakan suatu tugas yang tertuju atau terfokus pada sebuah spesifikasi yang khusus dari sebuah solusi yang berbasis komputer. Perancangan tersebut bisa di sebut juga perancangan fisik. Analisis dari sebuah sistem lebih menekankan pada permasalahan bisinis sementara perancangan sistem menekankan pada tekhnis atau implematasi dari sistem tersebut. Perancangan dari sebuah sistem biasanya tidak berhenti pada titik itu saja,tetepai dilanjutkan dengan model logis yang dikembangkan pada analisis model. Secara langsung, perancangan sistem model dapat dikembangkan menjadi sebuah blueprint yang berasal dari konstruksi dan implementasi sistem yang lebih baru. 2.4 WEBSITE Website merupakan sebuah sebutan untuk sekelompok halaman web (web page) yang menjadi sebuah bagian yang tersusun dan terintegrasi dengan rapih dan sistemastis, dan umumnya merupakan bagian dari domain atau juga sub domaian di dalama sebuah alamat pusat world wide web (WWW) yang terdiri dari seluruh situs website yang tersedia untuk konsumsi umum. Sebelum nama nama website menggunakan huruf – huruf seperti sekarang yang umum kita kenal, penggunaan alamat domain dalam internet menggunakan angka-angka seperti alamat dalam IP,tetapi karena sifat memori manusia yang lebih cepat mengingat huruf yang berbentuk kata-kata atau kalimat lebih cepat dibandingkan mengingat angka, terlebih angka-angka ini membentuk sebuah baris angka yang terdiri dari beberapa angka, maka dirubahlah menjadi baris huruf yang membentuk kata atau kalimat seperti sekarang ini. Nama nama domain yang familiar dan sering kita dengar dan gunakan contohnya adalah Google, Facebook, Twitter, Youtube dan lain lain itu semua ialah alamat domain yang digunaka oleh hanya satu kali penggunaan, bisa dikatakan penggunaan domain identik dan tidak bisa digandakan. Ada beberapa tools yang tersedia online untuk mengecek alamat domain apabila kita ingin membuat website baru. Halaman – halaman yang
http://digilib.mercubuana.ac.id/
ditampilkan pada alamat alamat domain tersebutlah yang disebut Website (Madcoms 2009:1). 2.5 PHP PHP (Hypertext Preprocessor) adalah sebuah bahasa pemograman skrip yang dirancang untuk membuat sebuah aplikasi yang berbasis web. Apabila kita menggunakan web browser, program yang telah ditulis dengan menggunakan bahasa pemograman php akan di-parsing di dalam sebuah web browser oleh interpreter PHP dan diteruskan dengan penerjemahan yang akan dilanjutkan kedalam dokumen yang berbentuk HTML, dan selanjutnya akan ditampilakan kembali kedalam web browser. Server-side itulah sebutan untuk bahasa pemograman PHP karena pemrosesan program PHP dilakukan dalam ruang lingkup server (server-side), oleh karena itu pula kode PHP tidak akan terlihat dalam ruang lingkup pengguna (user side). Banyak aplikasi web yang dapat digunakan dalam proses pembangunan, tidak hanya PHP tetapi terdapat pula bahasa pemograman Java (JSP- Java Server Pages dan Servlet), ataupun ASP (Active Server Pages). Pengguna atau user banyak menggunakan bahasa pemograman PHP dikarenakan bukan hanya mudah dalam pengoprasiannya tetapi sebagai bahasa pemograman yang bekerja dalam sisi server (server side) tetapi juga dapat terkoneksi dengan database yang tidak bisa dilakukan dengan sintak sintak HTML biasa. Pengerjaan semua skrip dilakukan di server itulah sisi server (Server Side) dan kemudian hasilnya dikirim kepada browser. Selain itu kode/skrip dalam penyusunan aplikasi tidak perlu diedarkan kepada pemakai adalah salah satu keunggulan PHP sehingga keamanannya dapat terjaga dengan baik dan dapat terlindungi. Dibawah ini terdapat cara kerja aplikasi web yang dirancang dengan bahasa pemograman PHP (Budi Raharjo, 2010).
http://digilib.mercubuana.ac.id/
Gambar 2.1 Work Flow PHP Keterangan gambar : 1. User menulis www.abcd.com/catalog.php ke dalam address bar dari web browser. 2. Web browser mengirim pesan ke komputer server (www.abcd.com) melalui internet,meminta halaman catalog.php. 3. Web server (misal Apache), program berjalan di komputer server, akan menangkap pesan tersebut, lalu meminta interpreter PHP untuk mencari file catalog.php dalam disk drive. 4. Interpreter PHP membaca catalog.php dari disk drive. 5. Interpreter PHP akan menjalankan perintah yang ada dalam kode PHP yang ada dalam file catalog.php. Jika kode dalam file catalog.php melibatkan akses terhadap basis data (misal MySQL) maka interpreter PHP akan berhubungan dengan MySQL untuk melaksanakan perintah perintah yang berkaitan dengan basis data. 6. Interpreter PHP mengirim halaman dalam bentuk HTML ke Apache. 7. Melalui Internet, Apache mengirim halaman yang diperoleh dari interpreter PHP ke komputer pengguna sebagai respon atas permintaan yang diberikan.
http://digilib.mercubuana.ac.id/
8. Web browser dalam komputer pengguna akan menampilkan halaman dikirim oleh Apache. 2.6 HTML HTML (Hypertext Markup Language) adalah sebuah akses protokol yang biasa digunakan oleh organisasi atau pengguna perorangan untuk membuat suatu dokumen atau file untuk ditempatkan dalam website yang dibuka menggunakan browser dan ditulis dalam text editor. Penggunaan web browser untuk membuka HTML bisa berjalan di berbagai platform komputer yang bersifat client script, berarti dokumen tersebut hanya dapat dibuka didalam komputer yang berbentuk stand alone atau berdiri sendiri dan tidak membutuhkan server untuk dapat menampilkannya. Ekstensi file HTML berekestensi .htm atau .html. Ciri khusu yang mencolok dalam HTML adalah salah satunya penulisannya yang ditandai dengan tag
. Aturan penulisan dalam HTML : a. Dalam penulisan tag HTML biasanya terletak diantara dua buah karaketer kurung siku “<”dan”>”. b. Tag HTML secara normal selalu berpasangan. Sebagai contoh: dan
. c. Tag HTML pertama dalam suatu pasangan adalah tag awal dan tag kedua merupakan tag akhir. Sebagai contoh: dan diakhiri dengan . d. Tag HTML tidak case sensitive, dimana tag dengan huruf kecil sama dengan tag dengan huruf besar. Sebagai contoh: sama dengan . Secara teknis yang biasa pengguna kenal ialah dalam web browser melakukan sebuah penerjemahan dokumen untuk menampilkan bentuk HTML yang telah dirubah, apabila dalam bentuk HTML terdapat dokumen yang diapit diantara tag dan. Ada baiknya dalam penulisan HTML kita biasakan menggunakan huruf kecil untuk menghadapi HTML generasi berikutnya. (W3C fot HTML 4.0 and XHTML reccomendation)
http://digilib.mercubuana.ac.id/
Dalam HTML, struktur dibagi menjadi dua bagian, yaitu: a. Bagian kepala (head) Bagian ini memuat informasi mengenai kepala document. b. Bagian badan (body) Bagian ini memuat informasi mengenai badan document.
Struktur utama penulisan dalam HTML adalah sebagai berikut: Pembuatan document web menggunakan HTML sangat mudah. Anda dapat membuatnya menggunakan program editor standar windows, yaitu Noteped atau dengan text editor yang kita sukai dan bisa kita download secara free atau prabayar. Text editor yang biasanya tersedia free ialah Komodo,PSPad, dll. Sedangkan text editor prabayar yang banyak digunakan ialah Adobe Dreamweaver. 2.7 Javascript Menurut Brooks (2007,p3) Javasript adalah bahasa pemograman yang diinterpretasikan bukanlah dikompile, diadopsi dari bahasa C/C++ yang dikembangkan menjadi bahasa pemograman web client-side. Javasript didesain untuk bekerja sama dengan HTML membuat web page yang interaktif. Javascript
http://digilib.mercubuana.ac.id/
juga bisa disebut sebagai bahasa pemograman yang beranimasi, interaktif dan memiliki tampilan visual yang dinamis. Javascript pertama kali dirancang oleh sebuah perusahaan Netscape yang ingin melengkapi fitur browser miliknya –Navigator- yang sebelumnya telah mendukung Java untuk lebih bisa dimanfaatkan oleh programmer non-java. Diciptakanlah
bahasa
pemograman
yang
bernama
Livescript
untuk
mengakomodasi hal tersebut. Dari bahasa pemograman inilah kemudian berkembang menjadi Javascript, walaupun tidak ada hubungannya antara bahasa Java dengan Javascript. Javascript merupakan bahasa pemograman yang cukup mudah untuk dukuasai dan memiliki banyak fungsi yang dapat digunakan untuk meningkatkan efek visual dari halaman web. Kode dari javascript harus diapit oleh tag, diawali dengan tag <script language=”javascript”> dan diakhiri dengan tag .
2.8 JQuery Menurut Beighley (2010,p8) JQuery adalah open source add-on pustaka Javascript yang menekankan pada interaksi antara Javascript dengan HTML. JQuery merupakan kode javascript yang telah ditulis dan kita tinggal menambahkan satu atau dua baris kode untuk memanggil kode JQuery. JQuery memberikan cara yang mudah dalam membuat efek-efek webpage yang canggih kepada para pemgembang dan perancang website, karena JQuery sangat mudah diimplementasikan pada setiap halaman website. Pustaka ini dirilis pada januari 2006 di Barcamp NYS oleh John Resig dan berlisensi ganda dibawah lisensi MIT dan GPL.
2.9 CSS (Cascading Style Sheet) CSS adalah suatu bahasa stylesheet yang mengatur tampilan suatu dokumen. Pada umumnya CSS digunakan untuk memformat halaman website
http://digilib.mercubuana.ac.id/
yang ditulis dengan HTML dan XHTML. Menurut Juju, Matamaya Studio (2008, p95) CSS adalah bahasa stylesheet yang digunakan untuk mengatur tampilan dokumen. CSS memungkinkan kita untuk menampilkan halaman yang sama dengan format yang berbeda. Dengasn CSS, tampilan website akan lebih cantik dan konsisten. Ada dua cara untuk menuliskan kode CSS. Pertama secara internal, yaitu menuliskan langsung diantara tag HTML / XHTML. Kedua secara eksternal yaitu dengan kode CSS disimpan dalam file yang terpisah kemudian dipanggil saat halaman web dibuka.
CSS
sendiri
merupakan
sebuah
teknologi
internet
yang
direkomendasikan oleh World Wide Web Consortium (W3C) dan diperkenalkan pada tahun 1996. Sampai saat ini , hampir selutuh website yang ada didunia menggunakan CSS untuk memformat halaman web-nya. Beberapa alasan pengembang website selalu menggunakan CSS dalam memformat tampilan web-nya adalah: 1. CSS dapat memacahkan masalah keseragaman style pada suatu dokumen HTML/XHTML. 2. CSS meringankan pekerjaan untuk memformat seluruh tampilan dokumen. 3. Multiple style akan tersimpan dalam satu dokumen.
2.10 ADOBE FLASH CS 3 Sebuah perangkat lunak (Software) yang merupakan bagian dari keluarga ADOBE, yang saat ini telah menjadi salah satu stadarisasi dalam penggunaan animasi dan website yang telah banyak penggunannya. Flash saat ini digunakan untuk animasi dan berbagai komponen website, lalu diintegrasikan dengan vidio dalam halaman website sehingga bisa digunakan menjadi aplikasi multimedia yang dilengkapi animasi untuk membuat tampilan website menjadi lebih menarik. Flash tidak hanya digunakan untuk pembuatan animasi saja ataupun aplikasi berjenis website, tetapi flash bisa dikembangkan menjadi aplikasi berbasis
http://digilib.mercubuana.ac.id/
dekstop, karena aplikasi flash saat ini selain bisa dikompilasi menjadi format .swf , tetapi sudah bisa di compile menjadi format yang executable .exe. Format file flash adalah .swf, kepanjangan dari SWF ialah ShockWave Flash movie. Flash movie atau flash game, biasanya file .swf dapat dijalankan melalui website atau menggunakan windows secara langsung dengan membuatnya menjadi format .exe (Nugroho Bunafit, Mahar Fauzi. 2008).
2.10.1 Halaman Awal Halaman awal dalam flash yang pertama kali muncul ketika kita mengakses Adobe Flash CS 3 Professional. Cara menggunakannya ialah dengan mengarahkan kursos kepada shortcut di desktop atau lihat di daftar program, lalu double klik tepat di icon flash. Tampilan start page pertama kali pada saat membuka Adobe Flash:
Gambar 2.2 Tampilan Start Page Pada Adobe Flash CS 3
http://digilib.mercubuana.ac.id/
Keterangan gambar: 1. Open Recent Item file ialah filr flash yang pernah dibuka atau dibuat sebelumnya. 2. Create New ialah untuk memulai jenis flash yang akan kita buat. 3. Create Form Template ialah template ysng sudah disediakan untuk berbagai keperluan, misalhnya membuat animasi FL disebut HP, jadi ukuran jenis HP telah ada tinggal digunakan, pada menu global handset.
Jendela Utama Pada Flash:
Gambar 2.3 Mainframe Adobe Flash CS 3
http://digilib.mercubuana.ac.id/
Keterangan gambar: 1. Manu Bar adalah kumpulan yang terdiri dari dasar dasar menu yang digolongkan dalam satu kategori. Misal menu yang berisi perintah New, Open, Save, Import, Export dan lain-lain. 2. Timeline ialah jendela panel yang digunakan untuk mengelompokan dan mengatur isi sebuah movie, pengaturan tersebut meliputi penentuan masa tayang objek, pengaturan layer, dan lain lain. 3. Stage adalah area berkreasi dalam membuat animasi yang digunkan untuk mengkomposisikan frame frame secara individual dalam sebuah movie. 4. Toolbox adalah sekumpulan tools yang sering digunakan dalam melakukan seleksi, menggambar, memodifikasi objek, mewarnai objek, dan mengatur gambra objek. 5. Properties adalah informasi mengenai objek yang ada distage. Tampilan panel ini secara otomatis dapat berganti ganti dalam menampilkan informasi atribut properties dari objek terpilih. 6. Panel adalah sebagai pengkontrol yang berfungsi mengganti dan memodifikasi berbagai atribut dari objek animasi secara tepat dan mudah. 2.10.2 Action Script Salah satu kelebihan menggunakan Adobe Flash CS 3 dibandingkan dengan perangkat lunak animasi lainnya ialah adanya fitur ActionScript. ActionScript adalah bahasa pemograman Flash yang digunakan untuk membuat animasi. ActionScript mengizinkan penggunannya untuk membuat instruksi sendiri yang berorientasi action dan instruksi yang bersifat logic (analisis masalah sebelum melakukan perintah). Salah satu fungsi Action Script adalah memberikan sebuah konektivitas tergadap sebuah objek. Dengan menuliskan perintah perintah didalamnya. Ada 3 hal yang harus diperhatikan dalam ActionScript yaitu:
http://digilib.mercubuana.ac.id/
1. Event Merupakan peristiwa atau kejadian untuk mendapatkan aksi sebuah objek. Event dalam Adobe Flash CS 3 ada empat yaitu: a. Mouse event,event yang berkaitan dengan penggunaan mouse. b. Keyboard event, event yang terjadi saat menekan tombol keyboard c. Frame event, event yang diletakan pada keyframe. d. Movie Clip Event, event yang disertakan pada movie clip. 2. Target. Objek yang dikenai aksi atau perintah. Sebelum diberi aksi atau perintah, objek harus dikonversi menjadi sebuah simbol dan memiliki nama instance. Penulisan nama target pada skrip harus menggunakan tanda petik dua (“”). 3. Action. Merupakan langkah terakhir dalam pembuatan interaksi antar objek. Action terbagi lagi menjadi dua bagian: a. Action Frame, action yang diberikan pada keyframe. Sebuah keyframe akan ditandai dengan huruf “a” bila keyframe tersebut terdapat sebuah action. b. Action Object, action yang diberikan pada sebuah objek, baik berupa tombol maaupun movie clip. ActionScript diketikan pada panel action yang tersedia pada software. Action dapat ditulis untuk objek bertipe Movie Clip, Keyframe, Button dan Obeject Components. ActionScript tidak dapat digunakan pada objek tulisan atau gambar yang bukan bertipe Movie Clip. Jadi, bila ingin menggunakan ActionScript pada suati=u objek harus diubah menjadi Movie Clip terlebih dahulu. Berikut tampilan panel ActionScript pada Flash :
http://digilib.mercubuana.ac.id/
Gambar 2.4 Action Panel 2.11 Adobe Dreamweaver CS 3 Adobe Dreamweaver adalah desain web dan pengembangan aplikasi yang menyediakan editor WYSIWYG visual (bahasa sehari-hari disebut sebagai Design view) dan editor kode dengan fitur standar seperti syntax highlighting, code completion, dan kode runtuh serta fitur yang lebih canggih seperti memeriksa sintaks real-time dan kode introspeksi untuk menghasilkan kode hints untuk membantu pengguna dalam menulis kode. Desain tampilan memfasilitasi desain tata letak cepat dan generasi kode karena memungkinkan pengguna untuk dengan cepat membuat dan memanipulasi tata letak elemen HTML.. Dreamweaver memiliki browser yang terintegrasi untuk melihat pratinjau halaman web yang dikembangkan dalam program sendiri jendela pratinjau selain memungkinkan konten untuk terbuka dalam diinstal secara lokal web browser. Dreamweaver menyediakan transfer dan sinkronisasi fitur, kemampuan untuk mencari dan mengganti baris teks atau kode oleh istilah pencarian atau ekspresi reguler di seluruh situs, dan fitur template yang memungkinkan update tunggal-sumber kode bersama dan tata letak di seluruh situs tanpa server side atau scripting. Tampilan panel juga memungkinkan penggunaan dasar mengerti JavaScript tanpa pengetahuan coding, dan integrasi dengan sigap Ajax framework. Adobe menawarkan akses mudah ke konten dinamis yang dihasilkan dan antarmuka. Dreamweaver dapat menggunakan pihak ketiga "Extensions" untuk memperluas fungsi inti dari aplikasi, yang setiap pengembang web bisa menulis (sebagian besar dalam HTML dan JavaScript). Dreamweaver didukung oleh
http://digilib.mercubuana.ac.id/
komunitas besar pengembang ekstensi yang membuat ekstensi yang tersedia (baik komersial dan gratis) untuk sebagian besar tugas pengembangan web dari efek rollover sederhana untuk shopping cart dengan fitur lengkap. Dreamweaver, seperti editor HTML lainnya, mengedit file secara lokal kemudian upload ke web server remote menggunakan FTP, SFTP, atau WebDAV. Dreamweaver CS4 sekarang mendukung Subversion (SVN) sistem kontrol versi. Adapun beberapa ahli yang mengemukakan pendapatnya tentang Adobe Dreamweaver, walaupun berbeda tetapi secara garis besar bisa disamakan artinya. Menurut Sibero, (2011:384), Dreamweaver merupakan sebuah produk web developer yang dikembangkan oleh Adobe Sistem Inc, sebelumnya produk ini dikembangkan oleh Macromedia Inc, yang kemudian sampai saat ini perkembangannya
diteruskan
oleh
Adobe
Sistem
Inc,
Dreamweaver
dikembangkan dan dirilis dengan kode nama Creative Suit (CS). Menurut Sigit (2010:1), “Dreamweaver adalah sebuah HTML editor professional untuk mendesain website secara visual dan mengelola situs atau halaman website”. Berdasarkan definisi-definisi diatas, maka dapat disimpulkan bahwa Dreamweaver adalah suatu aplikasi yang digunakan dalam membangun atau membuat sebuah web.
2.12 MySQL Sebuah teknologi basis data yang banyak dipakai sekarang ini untuk pengembangan hampir disemua aplikasi website yang ada sekarang ini. MySQL dapat digunakan untuk menyimpan serta pengelolaan data. PHP hanya memberikan dukungan terhadap banyaknya jenis jenis basis data yang dapat bersifat komersil atau pun yang sifatnya terbatas dan tidak komersil. MySQL sebagai server basis data yang akan digunakan untuk pembuatan dan pengembangan suatu aplikasi website mudah dijalankan dan di konfigurasikan,
http://digilib.mercubuana.ac.id/
oleh karena itulah banyak pengembang atau personal menggunkannya dalam pembuatan aplikasi website, serta dalam penggunaannya untuk pengelolaan data yang sederhana memiliki tingkat keamanan yang baik serta mudah diperoleh dan gratis. SQL merupakan bahasa yang baku untuk menjalankan DBMS yang diambil sebagai bakuan sejak tahun 1992. SQL tidak bisa dilepaskan dari basis data, karena merupakan sebuah keterkaitan yang absolut. Oleh karena itu pengetahuan dasar tentang basis data harus diketahui terlebih dahulu. Basis data dapat didefinisikan sebagai kumpulan table-table yang terkandung didalamanya bukan hanya table melainkan indeks, view, constraint, trigger, dan sebagainya. Dalam sebuah sistem basis data relasional atau RDBMS (Relational Database Management System), table-table tersebut harus saling berelasi melalui kolomkolom yang sudah berdasarkan aturan-aturan tertentu. Tabel atau Entity merupakan sesuatu yang dapat diidentifikasi dari suatu sistem database, baik itu merupakan objek, orang, tempat, kejadian, atau konsep yang informasinya akan disimpat dalam basis data. Terdapat beberapa komponen penting didalam suatu tabel yang berkaitan dengan database; 1. Kolom dan Tipe Data Tabel terbuat atas kolom-kolom yang berisi bagian atau potongan informasi didalam tabel. Tipe data dari kolom-kolom tersebut yang terdapat pada sebuah tabel dapat berbeda dan dapat kita tentukan sendiri. Tetapi dalam basis data, kolom biasanya disebut dengan field. 2. Baris Data dalam suatu tabel disimpan didalam baris, yang dibentangkan secara
horisontal
berdasarkan
kolom-kolom
yang
telah
didefinisikan. Dalam basis data baris sering disebut dengan record.
http://digilib.mercubuana.ac.id/
3. Primary Key Field kunci dalam sebuah tabel, yang berfungsi sebagai pembeda antara record yang satu dengan yang lain. 4. Foreign Key Field yang dijadikan sebagai kunci tambahan dalam suatu tabel. Isi dari field yang terdapat pada tabel lain. Dengan konsep ini dua atau beberapa tabel dapat saling direlasikan.
5. Karakter Merupakan bagian terkecil dalam basis data, dapat berupa karakter numerik (angka 0 s.d 9), huruf (A-Z, a-z) ataupun karakter karakter khusus, seperti *,&,%,# dan lain lain. Selain itu terdapat beberapa sifat yang melekat pada suatu tabel: 1. Tidak boleh ada record yang sama (kembar) 2. Urutan record tidak terlalu penting, karena data dalam record dapat diurut sesuai dengan kebutuhan. 3. Setiap field harus mempunyai nama yang unik (tidak boleh sama). 4. Setiap field harus mempunyai tipe data dan karakterisitik tertentu. SQL (Structured Query Language) adalah sebuah bahasa pemograman yang dirancang untuk dapat berkomunikasi dengan basis data. Tujuan dirancangnya SQL adalah untuk lebih mengefisienkan dan menyederhanakan dalam membaca dan menulis data dari atau ke dalam basis data. Terdapat tiga elemen penting dalam SQL : 1. Data Definition Language (DDL) Statement – statement yang berhubungan dengan pembuatan objek dan pengolahan strukturnya. Seperti create dan drop. 2. Data Manipulation Language (DML)
http://digilib.mercubuana.ac.id/
Statement –statement yang berhubungan dengan manipulasi data dalam tabel. INSERT,SELECT,UPDATE,DELETE. 3. Data Control Language (DCL) Statement kontrol seperti COMMIT dan ROLLBACK.
2.13 ERD (Entity Relationship Diagram) ERD adalah pendekatan yang disebut top-down dalam perancangan basis data yang dimulai dengan mengidentifikasikan entitas dan hubungan antar entitas tersebut. Kemudian kita menambahkan informasi-informasi yang merupakan teknik yang penting dengan keduanya (Connolly, Begg, 2004,p343). Model ERD merupakan teknik yang penting dalam perancangan basis data. Untuk membuat ERD ada tiga buah komponen yang harus diidentifikasi yaitu: 1. Entitas Menurut Connolly, Begg (2004, p343) entitas adalah representasi dari kumpulan objek yang ada di dunia nyata dengan properti yang sama, yang diidentifikasikan oleh lingkungan sebagai objek yang memiliki keberadaan independent. Secara sederhana, entitas adalah objek yang harus berada dalam lingkungan tertentu. Contoh: entitas ‘karyawan’ harus ada pada lingkungan kantor, demikian pula dengan entitas ‘mandor’,’jadwal kerja’,dsb. 2. Attribute Menurut Connolly, Begg (2004, p346) elemen elemen dari suatu entitas disebut attribute untuk mendeskripsikan karakterisitik dari entitas tersebut. Isi dari attribute mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. 3. Hubungan (Relation) Menurut Connolly, Begg (2004, p346) relation adalah hubungan antara sejumlah entitas. Masing masing relasi diberi nama untuk menggambarkan fungsinya.
http://digilib.mercubuana.ac.id/
2.13.1 Simbol Entity Relationship Diagram
Notasi
Keterangan
Himpunan entitas adalah kumpulan dari objek
objek
yang
dapat
diidentifikasikan secara unik.
Relasi adalah hubungan yang terjadi antara satu atau lebih entitas. Jenis hubungan antara lain : satu ke banyak, satu ke satu, dan banyak ke banyak.
Attribut adalah karakterisitik dari entity atau relasi yang merupakan penjelasan detail tentang entitas
Garis ialah hubungan antara entity dengan attribut dan himpunan entitas dengan himpunan relasinya. Tabel 2.1 simbol-simbol Entity Relationship Diagram
2.14 UML (Unified Modelling Language) UML adalah bahasa yang digunakan untuk pengembangan sebuah sistem serta menentukan, memvisualisasikan, membangun dan mendokumentasikan suatu sistem informasi. Pemodelan UML yang sering digunakan untuk menggambarkan suatu sistem terdiri dari: 2.14.1 Use Case Diagram Use case diagram adalah suatu penggambaran dari interaksi antara sistem dengan aktor. Cara kerja use case dengan cara mendeskripsikan tipe interaktif pengunjung (user) dengan sebuah sistem melalui sebuah cerita bagaimana sebuah sistem dipakai, serta memfasilitasi komunikasi diantara analis dan pengguna dan antara client dengan analis. Notasi yang digunakan dalam use case adalah persegi
http://digilib.mercubuana.ac.id/
panjang yang merupakan sistem boundary, oval yang merupakan suatu proses, dan gambar orang yang merupakan actor yang berinteraksi dengan sistem tersebut. Elemen use case terdiri dari : a. Diagram use case disertai dengan narasi dan skenario. b. Actor,mendefinisikan entitas diluar sistem yang memakai sistem. c. Asosiasi, mengindikasikan actor mana yang berinteraksi dengan use case dalam suatu sistem. d. <>
dan
<<extend>>.
Merupakan
indikator
yang
menggambarkan jenis relasi dan interaksi antar use case. e. Genaralisasi, menggambarkan hubungan turunan antara use case atau antar actor.
Simbol
Keterangan Menggambarkan interaksi aktor dengan software atau apliaksi tersebut. Sistem
boundary
menggambarkan
batasan antara sistem dengan aktor. Menggambrakan pengguna dari sistem dapat berupa manusia atau sistem terotomatisasi lain yang berinteraksi dengan sistem lain untuk berbagi, mengiri, dan menerima informasi Asosiasi, mengkomunikasikan antara aktor dan use case yang berpartisipasi pada
use
case
memiliki
interaksi
dengan aktor. Include, relasi use case, dimana proses bersangkutan
akan
proses yang di tuju
http://digilib.mercubuana.ac.id/
dilanjutkan
ke
Ekstend, relasi usecase tambahan ke sebuah
usecase
yang
ditambahkan
dapat berdiri sendiri walau tanpa use case tambahan itu. Tabel 2.2 Simbol simbol Use Case
2.14.2 Activity Diagram Proses penggambran suatu rangkaian dari aktifitas yang digunakan untuk mendeskripsikan aktifitas yang dibentuk dalam operasi sehingga dapat digunakan untuk aktifitas lainnya seperti interaksi. Simbol
Deksripsi Status awal aktifitas sistem, sebuah diagram
aktifitas
memiliki
sebuah
dilakukan
sistem
status di awal Aktifitas
yang
aktifitas biasanya diawali dengan kata kerja. Asosiasi percabangan dimana jika ada pilihan aktifitas lebih dari satu Asosiasi penggabungan dimana lebih dari satu aktifitas digabungkan menjadi satu. Status akhir yang dilakukan sebuah sistem.
Sebuah
diagram
memiliki status akhir. Tabel 2.3 Simbol simbol Activity Diagram
http://digilib.mercubuana.ac.id/
aktifitas
2.14.3 Sequence Diagram
Menggabungkan suatu diagram interaksi pada sebuah skenario yang berfungsi untuk menunjukan rangkaian objek objek berpartisipasi dalam bagian interaksi dan pesan yang dikirim antara objek serta intreaksi antara objek, sesuatu yang terjadi pada titik tertentu dalam eksekusi sistem. Sequence Diagram merupakan peralatan untuk interaksi berkomunikasi diagram. Sebuah interaksi didisain antara objek oleh pesan pesan yang diletakan pada sebuah waktu atau lebih dari dua pesan yang akan dikirim pada saat yang sama. Interaksi merupakan peran komunikasi yang penting, Ketika pesan dikirim pada sebuah objek akan meminta sebuah operasi dari objek. Nama pesan biasanya sesuai dengan operasi yang akan diminta. Sebuah pesan diterima, operasi yang telah diminta akan melaksanakan pesan tersebut. Pada beberapa tahap selama operasi yang dilakukan tersebut sebagai aktifitas. Beriku simbol simbol sequemce diagram :
Simbol
Deskripsi Aktor: Orang, proses atau sistem lain yang
berinteraksi
dengan
sistem
informasi yang akan dibuat diluar sistem informasi yang akan dibuat sendiri. Garis hidup: Menyatakan kehidupan suatu objek Objek Nama Objek
:
menyatakan
objek
yang
berinteraksi pesan
Waktu aktif : menyatakan objek dalam keadaan aktif san berinteraksi pesan
http://digilib.mercubuana.ac.id/
Pesan tipe create: Menyatakan suatu objek membuat objek yang lain, arah panah mengarah pada objek yang dibuat.
Tabel 2.4 Simbol Sequence Diagram
2.17 Model dan Proses Rekayasa Perangkat Lunak Pemodelan dalam suatu rekayasa perangkat lunak merupakan suatu hal yang dilakukan ditahapan awal. Didalam suatu rekayasa dalam perangkat lunak sebenarnya masih memungkinkan tanpa melakukan suatu pemodelan, Namun hal itu tidak dapat lagi dilakukan dalam suatu industri perangkat lunak. Pemodelan dalam awal dari rekayasa, dan pemodelan ini akan mempengaruhi pekerjaanpekerjaan dalam rekayasa perangkat lunak tersebut.
2.17.1 Waterfall Model ini adalah model klasik yang bersifat sistematis, berurutan dalam membangun software.
1. Waterfall model menurut Pressman
Gambar 2.5 Waterfall Model Pressman
http://digilib.mercubuana.ac.id/
2. Waterfall model menurut Sommerville
Gambar 2.6 Waterfall Model Sommerville Berikut ini adalah penjelasan alur dari model diatas, 1. Rekayasa dan Pemodelan sistem.informasi Rekayasa dan analisis sistem menyangkut pengumpulan kebutuhan pada tingkat sistem dengan sejumlah analisis serta disain tingkat puncak. Rekayasa informasi mencakup juga pengumpulan kebutuhan pada tingkat bisnis strategis dan tingkat area bisnis. 2. Analisis kebutuhan software Proses
pengumpulan
kebutuhan
diintensifkan
dan
difokuskan, khusunya pada software. Untuk memahami sifat program yang dibangun, analis harus memahami domain informasi, tingkah laku, unjuk kerja, dan interface yang diperlukan. Kebutuhan
baik
untuk
sistem
maupun
software
yang
didokumentasikan dan dilihat. 3. Desain Desain software adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda struktur data, arsitektur
software,
interface,
dan
detail.
Proses
desain
menterjemahkan kebutuhan kedalam sebuah representasi software yang dapat diperkirakan kualitas sebelum dimulai pemunculan kode. Sebagaimana persyaratan, desain didokimentasikan dan menjadi bagian dari konfigurasi software.
http://digilib.mercubuana.ac.id/
4. Coding Desain harus diterjemahkan kedalam bentuk mesin yang bisa dibaca. Langkah Pembuatan kode melakukan tugas ini. Jika disain dilakukan secara benar dan lengkap, pembuatan kode dapat diseleksaikan secara mekanis. 5. Pengujian Sekali program dibuat, pengujian program dimulai. Proses pengujian berfokus pada logika internal software, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional, yaitu mengarahkan pengujian untuk menemukan kesalaha dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan. 6. Pemeliharaan Software akan mengalami perubahan setelah disampaikan kepada pelanggan. Perubahan akan terjadi karena kesalahan ditentukan,
karena
software
harus
disesuaikan
untuk
mengakomodasi perubahan didalam lingkungan eksternalnya, atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja.
2.17.2 Incremental Model
Gambar 2.7 Incremental Model
http://digilib.mercubuana.ac.id/
1. Kombinasikan elemen elemen dari waterfall dengan sifat iterasi 2. Elemen elemen dalam waterfall dikerjakan dengan hasil berupa produk dengan spesifikasi tertentu, kemudian proses dimulai dari fase pertama hingga akhir dari sebelumnya. Demikian seterusnya hingga semua spesifikasi memenuhi kebutuhan yang ditetapkan oleh pengguna. 3. Produk hasil incremental pertama biasanya berupa produk inti, yaitu produk yang memenuhi kebutuhan dasar. Produk tersebut digunakan oleh pengguna atau menjalani review secara detil. Hasil review
tersebut
menjadi
bekal
untuk
pembangunan
pada
incremental berikutnya. Hal ini terus dikerjakan sampai produk yang komplit dihasilkan. 4. Model ini cocok jika jumlah anggota tim pengembang tidak cukup. 5. Mampu mengakomodasi perubahan secara fleksibel. 6. Produk yang dihasilkan pada incremental pertama bukanlah prototype, tapi produk yang sudah bisa berfungsi dengan spesifikasi dasar. 2.17.3 Spiral Model
Gambar 2.8 Spiral Model I
http://digilib.mercubuana.ac.id/
Proses digambarkan sebagai spiral. Setiap loop mewakili satu fase dari software process. Loop paling dalam berfokus pada kelayakan dari sistem, loop selanjutnya tentang definisi dari kebutuhan, loop berikutnya berkaitan dengan desain sistem dan seterusnya. Setiap Loop dibagi menjadi beberapa sektor : 1. Objective
Setting,
menentukan
tujuan
dari
fase
yang
ditentukan. Batasan batasan pada proses dan produk sudah diketahui. Perencanaan sudah disiapkan. Resiko dari proyek sudah
diketahui.
berdasarkan
Alternatif
resiko-resiko
strategi sudah dipersiapkan yang
diketahui,
dan
sudah
direncanakan. 2. Risk assessment and reduction, setiap resiko dianalisis secara detil pada sektor ini. Langkah langkah penanganan dilakukan, misalnya
membuat
prototype
untuk
mengetahui
ketidakcocokan kebutuhan. 3. Development and validation, setelah evaluasi resiko, maka model pengembangan sistem dipilih, Misalnya jika resiko user interface dominan, maka membuat prototype user interface, Jika bagian keamanan yang bermasalah maka menggunakan model formal dengan hitungan metematis, dan jika masalahnya adalah integrasi sistem model waterfall lebih cocok. 4. Planning, proyek dievaluasi atau ditinjau ulang dan diputuskan untuk terus ke fase loop selanjutnya atau tidak, jika melanjutkan ke fase berikutnya rencana untuk loop selanjutnya. Pembagian sektor tidak bisa saja dikembangkan seperti pembagian pada pembagian sektor berikut pada model variasi spiral lainnya.
http://digilib.mercubuana.ac.id/
Gambar 2.9 Spiral Model II a. Customer communication, membangun komunikasi yang baik dengan customer. b. Planning, mendefinisikan sumber, waktu, informasi informasi lain seputar proyek. c. Risk analysis, identifikasi resiko manajemen dan teknis. d. Engineering, pembanngunan contoh aplikasi, misalnya prototype. e. Construction and release, pembangunan, test, install, dan support. f. Customer eveluation, mendapatkan feedback dari penguna berdasarkan evaluasi perangkat lunak pada fase engineering dan fase instalasi. 2.18 Black Box Testing Black box testing yang juga dikenal sebagai pengujian fungsional, atau bisa disebut sebuah teknik pengujian perangkat lunak dimana kerja internal dari item yang sedang diuji tidak diketahui oleh tester. Sebagai contoh, dalam tes Black box pada desain software tester hanya tahu input dan apa hasil yang diharapkan harus dan
tidak bagaimana
program tersebut tiba
di output. Tester
tidak pernah memeriksa kode pemrograman dan tidak memerlukan pengetahuan lebih lanjut dari program lain selain spesifikasi.
* Dapat dikatakan juga bahwa Black Box Testing adalah : • Black box testing, dilakukan tanpa pengetahuan detil struktur internal dari sistem atau komponen yang dites. juga disebut sebagai behavioral testing, specification-based testing, input/output testing atau functional testing.
http://digilib.mercubuana.ac.id/
• Black
box
testing berfokus
pada
kebutuhan
fungsional
pada software, berdasarkan pada spesifikasi kebutuhan dari software. • Black box testing bukan teknik alternatif daripada white box testing. Lebih daripada
itu,
ia
merupakan
pendekatan
pelengkap
dalam
mencakup error dengan kelas yang berbeda dari metode white box testing.
* Keuntungan dari jenis pengujian meliputi: •
Tes ini bias karena desainer dan penguji yang independen satu sama lain.
•
Tester tidak perlu pengetahuan dari setiap bahasa pemrograman tertentu.
•
Tes ini dilakukan dari sudut pandang pengguna, bukan desainer.
• Kasus uji dapat dirancang segera setelah spesifikasi yang lengkap.
*Kelemahan dari jenis pengujian meliputi: •
Tes ini dapat berjalan jika desainer perangkat lunak telah menjalankan uji kasus
•
Uji kasus sulit untuk desain
•
Pengujian setiap input stream yang mungkin adalah tidak realistis karena akan mengambil banyak
* Kategori error yang akan diketahui melalui black box testing •
Fungsi yang hilang atau tak benar
•
Error dari antar-muka
•
Error dari struktur data atau akses eksternal database
•
Error dari kinerja atau tingkah laku
•
Error dari inisialisasi dan terminasi
* Dekomposisi kebutuhan untuk dites secara sistematis • Untuk
dapat
membuat test
cases yang
efektif,
harus
dilakukan
dekomposisi dari tugas-tugas testing suatu sistem ke aktivitas-aktivitas
http://digilib.mercubuana.ac.id/
yang
lebih
kecil
dan
dapat
dimanajemeni,
hingga
tercapai test
case individual. • Tentunya, dalam disain test case juga digunakan mekanisme untuk memastikan bahwa test case yang ada telah cukup mencakup semua aspek dari sistem. • Pendisainan test case dilakukan secara manual, tidak ada alat bantu otomasi guna menentukan test cases yang dibutuhkan oleh sistem, karena tiap sistem berbeda, dan alat bantu tes tak dapat mengetahui aturan benarsalah dari suatu operasi. • Disain tes membutuhkan pengalaman, penalaran dan intuisi dari seorang tester. * Dekomposisi Obyektifitas Tes • Disain tes berfokus pada spesifikasi komponen yang dites. Obyektifitas tes tingkat atas disusun berdasarkan pada spesifikasi komponen. • Tiap obyektifitas tes ini untuk kemudian didekomposisikan ke dalam obyektifitas tes lainnya atau test cases menggunakan teknik disain tes.
* Spesifikasi sebagai Tuntunan Testing • Spesifikasi atau model sistem adalah titik awal dalam memulai disain tes. • Spesifikasi atau model sistem dapat berupa spesifikasi fungsional, spesifikasi kinerja atau keamanan, spesifikasi skenario pengguna, atau spesifikasi berdasarkan pada resiko sistem. • Spesifikasi menggambarkan kriteria yang digunakan untuk menentukan operasi yang benar atau dapat diterima, sebagai acuan pelaksanaan tes. * Jenis teknik disain tes yang dapat dipilih berdasarkan pada tipe testing yang akan digunakan •
Equivalence Class Partitioning
•
Boundary Value Analysis
•
State Transitions Testing
•
Cause-Effect Graphing
http://digilib.mercubuana.ac.id/
2.19 Search Engine Optimization Ada beberapa pemahaman tentang definisi SEO tapi dari sekian banyak itu intinya tetap sama saja SEO (Search Engine Optimization) merupakan sebuah metode / cara agar Search Engine selalu mengindex website kita diinternet agar setiap proses pencarian dengan keyword melalui search engine dapat ditampilkan pada halaman utama. Bahkan ada yang menyatakan bahwa SEO adalah proses yang sangat khusus dalam membangun sebuah website yang berhasil alasannya karena sebuah website komersial tidak dikatakan berhasil jika tidak dapat ditemukan dalam Search Engine Utama ini adalah tugas dan tantangan webmaster untuk mengoptimalkan sebuah website dengan cara memperbaiki struktur tag-tag HTML tertentu pada halaman web. Sebuah alasan yang sangat masuk akal karena bagaimana mungkin mendatangkan pengunjung, meningkatkan traffic dan mendapatkan Page Ranking pada Website Jika halaman-halaman kita tidak dapat ditemukan dalam mesin pencari utama seperti Google, Yahoo, MSN Live Search dll. Pada kenyataannya bahwa hampir 90 % pengunjung-pengunjung baru menemukan sebuah website dari hasil Search Engine dan Search Directory dengan keyword tertentu, nah disinilah menariknya belajar seo karena mereka datang dengan keyword atau key phrase tertentu sehingga dapat menemukan situs yang relevan dengan kata kunci yang diketikkan. Sebagai seorang internet marketer pemahaman tentang SEO merupakan salah satu skilll yang dibutuhkan dalam memasarkan produk / jasa. Karena kebanyakan pengunjung dalam mencari info selalu menggunakan search engine dengan memanfaatkan kata kunci dengan harapan mendapatkan info yang relevan. Jadi untuk promosi website, SEO adalah cara yang efektif untuk meningkatkan Traffic. yang nantinya akan memberikan banyak pengunjung dan dengan semakin banyaknya pengunjung maka diharapkan akan banyak penjualan yang terjadi melalui rekomendasi web kita.
http://digilib.mercubuana.ac.id/
Dari definisi SEO diatas maka dapat diketahui apa fungsi & tujuannya : •
Menaikkan pageranking sebuah website agar selalu terindex pada search engine sehingga dapat ditampilkan dihalaman utama
•
Mendatangkan trafik / pengunjung ke website melalui Search Engine
•
Membantu meningkatkan pencapaian target penjualan melalui Rekomendasi web
•
Meminimalkan biaya pemasaran online
http://digilib.mercubuana.ac.id/