$host=”localhost”; $username=”root”; $password=””; $databasename=”privatdb”;
$link=MySQL_connect($host,$username,$password) or
die ("Database tidak dapat
dihubungkan!");
MySQL_select_db($databasename,$link); return $link;
} ?>
Isi dari variabel $host, $username, $password dan $databasename dapat disesuaikan sesuai dengan setting pada MySQL Server yang ada.
2.8. SQL SERVER
Sebagian besar programmer mengembangkan aplikasi database-nya dengan
Access, namun seperti yang diketahui bahwa Accsess adalah sebuah desktop database
yang tidak bisa ditingkatkan dan tidak bisa mengakomodasi banyak user sekaligus. Lain halnya dengan SQL Server yang merupakan DBMS dari Microsoft dan SQL
Server dapat ditingkatkan serta dapat digunakan untuk mengembangkan aplikasi
23
Disamping itu SQL Server juga memiliki keistimewaan unik, yang pertama
SQL Server memiliki bahasa pemrograman tersendiri yang disebut Transact-SQL (T-SQL). T-SQL adalah ekstensi dari SQL dan kemampuannya begitu tinggi dimana bisa
melakukan hampir semua yang bisa dilakukan oleh Visual Basic. Selain T-SQL, SQL
Server juga menggunakan trigger, yaitu sebuah prosedur tersimpan khusus yang
dijalankan apabila aksi tertentu berlangsung. Sebagai contoh dapat menuliskan
procedure untuk memeriksa siapa yang telah menghapus record dan kapan itu
dilakukan (pembahasan pada modul selanjutnya).
Setelah SQL Server diinstal, sebuah perintah baru akan ditambahkan kedalam menu program:SQL Server, perintah ini akan membuka menu lain dengan beberapa pilihan termasuk SQL Server yang membuka sub menu yang berisi piranti-piranti
SQL Server. Piranti SQL Server yang berhubungan dengan materi ini antara lain :
1. SQL Server Service Manager
Piranti ini berfungsi menjalankan dan mengakhiri SQL Server.
2. Enterprize Manager
Enterprize manager adalah piranti visual yang bisa digunakan untuk melihat
dan mengedit semua objek dari SQL Server. Dengan enterprize manager dapat membuat database baru, mengedit tabel, membuat prosedure tersimpan dan sebagainya. Semua yang bisa dilakukan oleh enterprize manager bisa dilakukan oleh piranti database visual kecuali menambah user baru, menentukan hak user.
Folder ini mengandung sebuah subfolder untuk setiap database. Jika akan memilih sebuah database disini maka akan melihat daftar objek yang spesifik untuk database tersebut.
Diagram
Diagram adalah sebuah gambar dari struktur database, dapat memanipulasi struktur database dari dalam jendela ini, yang menunjukkan berbagai tabel saling berhubungan.
Tables
Sebuah tables terdiri dari baris dan kolom dimana dapat menyimpan informasi. Database memiliki banyak table dan setiap tabel memiliki struktur tertentu.
Views
Views adalah bagian dari sebuah tabel atau kombinasi dari banyak tabel dan
mengandung informasi tertentu yang dibutuhkan oleh client.
Stored Procedure
Prosedure tersimpan atau store procedure sama seperti fungsi Visual Basic,
hanya saja prosedur tersimpan ditulis dalam T-SQL dan dijalankan pada server.
Users
Pada folder ini dapat melihat para user yang berhak melihat dan atau mengedit
25
database memiliki dua buah user pemilik database (user dbs) dan user yang
memiliki hak sangat terbatas (user guest). Roles
Apabila memilih item rules pada panel kanan, akan melihat sebuah daftar yang berisikan peran-peran yang ada. Peran atau role adalah sebuah profil dari suatu user.
Rules
SQL Server mengizinkan dapat menentukan aturan untuk menetapkan nilai
pada field tertenru daru sebuah tabel.
Aturan-aturan ini disebut dengan batasan CHECK dan ditentukan dari dalam jendela Database Diagram.
Defaults
Disini dapat mendefinisakn nilai-nilai default untuk setiap field. Nilai-nilai
default ini digunakan apabila tidak ada nilai yang diberikan oleh user atau
aplikasi untuk field tertentu.
User-Defined Data Type
Ini adalah tempat untuk mentukan user-define data type (UDT). SQL Server tidak mengizinkan pembuatan struktur data buatan seperti Visual Basic. UDT sangat bermanfaat apabila dapat mengizinkan pengembang membuat data mereka sendiri.
3. Data Transformation Service (DTS)
Folder ini mengandung utilities untuk meng-impor data ke dalam SQL Server
dan meng-eksport data ke SQL Server. Komponen DTS dari SQL Server mengizinkan untuk mengimpor/ mengekspor data dan pada saat yang sama mengubahnya.
Management
Folder ini mengandung piranti untuk mengelola database. Piranti yang paling penting adalah Backup, dimana dapat mem-backup database dan menjadwalkan tugas backup, piranti ini juga ditujukan bagi para DBA.
Security
Di sini DBA dapat membuat login baru dan menugaskan peran kepada user.
Support Service
Di sini dapat mengkonfigurasikan dua dari pelayanan dukungan SQL Server,
Distributed Transaction Coordinator dan SQL Server Mail. Distributed Transaction Coordinator adalah sebuah piranti untuk mengelola transaksi
yang terdapat pada banyak server.
SQL Server mail mengizinkan membuat pesan email dari dalam SQL Server.
Pesan email ini dapat dibuat dan dijadwalkan untuk dikirim secara otomatis dan digunakan untuk memberi tahu database administrator mengenai sukses dan tidaknya sebuah tugas.
27
4. Query Analyzer
Query Analyzer adalah tempat dimana dapat menjalankan pernyataan, batch,
dan prosedure tersimpan SQL untuk sebuah database. Untuk menjalankan
Query Analyzer, pilih start program SQL Server Query Analyzer. Jika akan mengetikan sebuah pernyataan SQL di dalam jendela Query
Analyzer dan mengklik tombol Execute (tombol dengan panah hijau pada toolbar), jendela akan terbagi ke dalam dua panel; hasil dari query akan
muncul di panel bawah, disebut dengan panel result. Pernyataan akan dijalankan pada database yang dipilih pada kotak DB di bagian atas jendela, jadi pastikan telah memilih database yang tepat sebelum menjalankan pernyataan SQL.
2.9. Str uctur ed Quer y Language (SQL)
SQL merupakan bahasa script untuk menyusun query dalam pengelolaan
suatu database.
Bahasa Database di katergorikan :
DDL ( Data Definition Language)
yakni bahasa yang digunakan untuk menyusun skema contoh : membuat database
membuat Tabel
Perintah-perintah yang termasuk dalam DDL antara lain :
- Menyusun/ mengubah struktur / menghapus Tabel
- Mendefinisikan / men-drop index, dll
Deklarasi perintah-perintah DDL (dijalankan melalui Query Analyzer) :
1. Menyusun / mendefinisikan Database
Bentuk umum :
CREATE DATABASE namadatabase
2. Menghapus Database
Bentuk umum :
DROP DATABASE namadatabase
3. Mendefinisikan Table
Bentuk umum :
CREATE TABLE namatable (
Field1 type [(panjang)] [not null] , Field2 type [(panjang) ] [not null], Fieldn type [(panjang) ] [not null] )
4. Mengubah Table
Untuk mengubah table sewaktu-waktu dapat ditambahkan perintah sebagai berikut:
Bentuk umum :
if exists (select name from syssubjects where name =”namatable”)
drop table namatabel go
create table namatable (
29
Field1 type [(panjang)] [not null] , Field2 type [(panjang) ] [not null], Fieldn type [(panjang) ] [not null] )
5. Menghapus Table
Bentuk umum :
DROP TABLE namatabel Contoh :
30
PERANCANGAN SISTEM
Pada bab ini akan menjelaskan tentang tahap-tahap proses perancangan perangkat lunak mulai dari analisa, pemodelan data, perancangan data, implementasi
database dan perancangan antar muka (Interface).
3.1 Analisis
Pada proses perancangan sistem informasi kompetensi video klip lagu-lagu indie dan pemilihan lagu terfavorit yang berbasis web. Sistem ini akan membantu manajemen Mango Band untuk mencari bakat dari grup band indie dalam berkarya dalam hal seni musik. Selain kompetensi video klip lagu-lagu indie dan pemilihan lagu terfavorit terdapat juga informasi profil dari Mango band yang dapat diakses oleh pengunjung web site. Peserta grup band indie dapat melakukan pendaftaran untuk login ke sistem. Setelah peserta melakukan login peserta dapat mengikuti event yang diadakan oleh manajemen Mango Band. Event yang diadakan berupa video klip berdasarkan tema yang akan ditentukan oleh pihak manajemen Mango Band. Setelah peserta melakukan upload video masing-masing untuk mengikuti kompetisi. Setelah di upload hasil video klip akan dilihat oleh user. Setelah dilihat oleh user, user dapat melakukan vote kepada video yang menurut user terbaik untuk menjadi terfavorit. Vote yang dilakukan dengan menggunakan via SMS dengan mengetik kode dari masing-masing video klip yang telah diberikan. Berikut ini adalah Gambar 3.1
31
overview system :
Ga mbar 3.1 Overview System Kompetisi Band
3.2 Pemodelan Data
Berikut ini akan dijelaskan tentang data flow diagram dari sistem yang berjalan. DFD yang dibuat terdiri dari dua level, yaitu DFD level 0 dan DFD level 1.
3.2.1 Data Flow Diagr am (DFD Level 0)
INFORMASI VOTE SMS
DATA VOTE SMS INFORMASI VIDEO CLIP EVENT
DATA UPLOAD EVENT INFORMASI PESERTA BAND
DATA PESERTA BAND
INFORMASI EVENT DATA EVENT INFORMASI SCHEDULE DATA SCHEDULE INFORMASI USER DATA USER 0
SISTEM INFORMASI VIDEO CLIP INDIE BAND
+
ADMIN
PESERTA
USER
DFD level 0 dari sistem informasi video clip indie band dapat dilihat pada Gambar 3.2, dimana terdapat tiga user yang menjalankan sistem ini yaitu admin, user pengunjung, dan peserta. Admin dapat melakukan penambahan data user, data event, dan data schedule, sedangkan sistem informasi video clip indie band menampilkan output kepada admin berupa informasi peserta band yang diinputkan oleh peserta, dan informasi user. Peserta dapat melakukan penambahan data peserta band, dan data upload event ke dalam sistem, sedangkan sistem menampilkan output informasi vote SMS, dan informasi event. Untuk user pengunjung dapat melakukan penambahan data vote SMS, sedangkan sistem menampilkan informasi schedule dan informasi videoklip.
3.2.2 Data Flow Diagr am (DFD Level 1)
DFD level satu merupakan hasil decompose dari DFD level nol. Pada DFD Level 1 terdapat proses bisnis yang dapat dijelaskan sebagai berikut :
a. Proses penyimpanan data user
Proses ini berfungsi untuk melakukan pengelolaan data user meliputi insert,
update, dan delete data user yang dilakukan oleh admin.
b. Proses penyimpanan data schedule
Proses ini berfungsi untuk melakukan pengelolaan data schedule yang dilakukan oleh admin meliputi insert, update, dan delete. Data schedule yang telah tersimpan dapat dilihat oleh user.
33
c. Proses pendaftaran data event
Proses ini berfungsi untuk melakukan pengelolaan data event yang dilakukan oleh admin, nantinya data event tersebut dapat dilihat atau diakses oleh peserta.
d. Proses mengikuti event
Proses ini dilakukan oleh peserta, dimana peserta melakukan penguploadtan data video, data tersebut akan disimpan ke dalam database dan nantinya informasi video klip event tersebut dapat dilihat atau diakses oleh user.
e. Proses pendaftaran peserta band
Proses ini juga dilakukan oleh peserta dengan menginputkan data peserta band, dimana nantinya data peserta ini dapat dilihat atau diakses oleh admin.
f. Proses pemilihan video klip
Proses ini dilakukan oleh user, setelah user mengakses video klip event, maka user akan memilih atau vote pada video klip yang diinginkan, dan data vote dari user akan tampil atau bisa diakses oleh peserta.
Berdasarkan pada penjelasan proses diatas, proses DFD pada level 1 dapat digambarkan. Berikut adalah gambar 3.3 pada DFD level 1 :
LOAD DATA VOTE DATA VOTE
INFORMASI VOTE SMS DATA VOTE SMS
LOAD DATA PESERTA SAVE DATA PESERTA
DATA PESERTA BAND INFORMASI PESERTA BAND
LOAD DATA UPLOAD
SAVE DATA UPLOAD LOAD DATA EVENT PESERTA
INFORMASI VIDEO CLIP EVENT
DATA UPLOAD EVENT LOAD DATA EVENT
SAVE DATA EVENT
INFORMASI EVENT DATA EVENT
LOAD DATA SCHEDULE SAVE DATA SCHEDULE
INFORMASI SCHEDULE DATA SCHEDULE
LOAD DATA USER SAVE DATA USER
INFORMASI USER DATA USER ADMIN PESERTA USER PESERTA 1 MENYIMPAN DATA USER USER 2 MENYIMPAN DATA SCHEDULE SCHEDULE 3 MENDAFTAR DATA EVENT EVENT 4 MENGIKUTI EVENT UPLOAD 5 MENDAFTAR PESERTA BAND PESERTA 6
MEMILIH VIDEO CLIP VOTE
Gambar 3.3 DFD Level 1
3.3 Pera nca ngan Data
Perancangan data digunakan untuk membuat database yang dibutuhkan oleh sistem informasi yang dibuat.
3.3.1. CDM (Conceptua l Data Model)
Pada sistem ini terdapat tujuh buah tabel, dimana empat tabel memiliki relasi dan tiga tabel lainnya berdiri sendiri. Berikut gambar CDM pada sistem informasi video klip indie band dapat dilihat pada Gambar 3.4.
35
Gambar 3.4 Conceptual Data Model Sistem Kompetisi Band
Untuk penjelasan fungsi tabel dan relasi antar tabel yang ada pada Gambar 3.4, dapat dijelaskan sebagai berikut :
a. Tabel event
Tabel ini berfungsi untuk menyimpan data yang berhubungan dengan event, tabel ini berelasi one to many dengan tabel upload, dimana satu event memiliki banyak data video klip event.
b. Tabel upload
Tabel ini berfungsi untuk menyimpan data video klip event, tabel ini berelasi
many to one dengan tabel event dan berelasi many to one dengan tabel
c. Tabel peserta
Tabel ini berfungsi untuk menyimpan data peserta, tabel ini berelasi one to
many dengan tabel upload, dimana satu peserta dapat memasang banyak video
klip event.
d. Tabel vote
Tabel ini berfungsi untuk menyimpan data vote yang dilakukan oleh user. Tabel ini berelasi many to one dengan tabel upload, dimana banyak user dapat melakukan vote pada satu video klip event.
e. Tabel user
Tabel ini berfungsi untuk menyimpan data user, tabel ini tidak memiliki relasi antar tabel.
f. Tabel schedule
Tabel ini berfungsi untuk menyimpan data schedule, tabel ini tidak memiliki relasi antar tabel.
g. Tabel photo
Tabel ini berfungsi untuk menyimpan data foto, tabel ini tidak memiliki relasi antar tabel.
3.3.2. PDM (Physica l Data Model)
Model data ini dibuat dengan cara men-generate CDM. Pada diagram PDM ini menghasilkan tabel-tabel yang digunakan dalam mengimplementasi
37
Gambar 3.5 Physical Data Model Sistem Kompetisi Band
Desain database diatas yakni pada Gambar 3.5 adalah hasil generate dari Conceptual Data Model (CDM) ke Physical Data Model (PDM). Dimana setelah di-generate terdapat perubahan field dari dua tabel yakni tabel upload dan tabel vote,. Pada tabel upload terdapat satu primary key yaitu idupload, dan dua foreign
key yaitu idevent, dan idpeserta. Pada tabel vote terdapat satu primary key yaitu
idvote itu sendiri, dan satu foreign key yaitu idupload.
3.3.3. System flow
Pada system flow merupakan aliran sistem yang akan digunakan pada sistem informasi kompetensi video klip lagu-lagu indie dan pemilihan lagu terfavorit, diawali dari master user, master schedule, master event, pendaftaran event, pendaftaran peserta dan pemilihan lagu indie terfavorit pada web profil Mango Band. Berikut adalah system flownya :
event idevent namaevent tglevent tglselesaievent keteranganevent INT4 VARCHAR(30) DATE DATE TEXT <pk> peserta idpeserta namaband username password alamatpeserta emailpeserta telppeserta ... INT4 VARCHAR(50) VARCHAR(20) VARCHAR(20) VARCHAR(100) VARCHAR(50) VARCHAR(20) <pk> photo idphoto namaphoto dirphoto ... INT4 VARCHAR(50) VARCHAR(50) <pk> schedule idschedule tglschedule namaschedule keteranganschedule INT4 DATE VARCHAR(50) TEXT <pk> upload idupload idevent idpeserta dirupload tglupload kodesms ... INT4 INT4 INT4 VARCHAR(100) DATE VARCHAR(10) <pk> <fk1> <fk2> user iduser namauser usernameuser passworduser ... INT4 VARCHAR(30) VARCHAR(20) VARCHAR(20) <pk> vote idvote idupload nohandphone tglvote ... INT4 INT4 VARCHAR(20) DATE <pk> <fk>
1. Master User
Master user merupakan suatu proses untuk menyimpan data user. Proses ini dilakukan oleh admin. Pada saat menyimpan data user proses selanjutnya data akan disimpan pada database dengan nama tabel user. Berikut adalah Gambar 3.6 dari system flow master user :
Gambar 3.6 System flow Master User
2. Master Schedule
Master schedule merupakan suatu proses untuk menyimpan schedule dari Mango Band agar penggemar dari Mango Band dapat mengetahui informasi kegiatan-kegiatan yang akan dilakukan. Proses ini dilakukan oleh admin. Setelah melakukan proses penyimpanan schedule, data tersebut akan tersimpan pada database dengan nama tabel schedule. Berikut adalah Gambar 3.7 system flow master schedule :
39
Gamba r 3.7 System flow Master Schedule
3. Master Event
Master event merupakan suatu proses untuk event kompetisi bagi grup band indie yang ingin menunjukan kemampuan grup band mereka untuk penggemar mango band yang melihat. Pada proses ini dilakukan oleh admin. Pada saat melakukan menyimpan event, data yang telah dibuat akan disimpan pada database dengan nama tabel event. Berikut ini adalah Gambar 3.8 pada
system flow master event :
Gamba r 3.8 System flow Master Event Admin
4. Mengikuti Event
Mengikuti event adalah proses untuk pesera grup band indie melakukan hasil video klip grup band di upload pada sistem. Video klip yang telah di upload akan dilihat oleh user. Proses awal yang dilakukan oleh peserta grup band adalah melihat event yang telah di posting berdasarkan tanggal yang telah ditentukan. Setelah itu proses selanjutnya adalah peserta grup band melakukan upload video klip mereka. Setelah di upload data tersebut akan disimpan pada database dengan nama tabel upload. Berikut adalah system flow mengikuti event :
Gamba r 3.9 System flow Mengikuti Event
5. Daftar Peserta
Daftar peserta merupakan proses peserta grup band indie mendaftarkan di sistem. Setelah terdaftar peserta grup band dapat mengikuti event-event yang diadakan oleh management Mango Band. Setelah proses
41
pendaftaran peserta dilakukan data yang telah di isi berupa informasi grup band tersebut akan disimpan pada database dengan nama tabel peserta. Berikut ini adalah Gambar 3.10 system flow daftar peserta :
Ga mbar 3.10 System flow Daftar Peserta
6. Vote Video Klip
Vote video klip merupakan suatu proses melakukan penilaian berdasarkan video klip yang telah di upload oleh peserta grup band indie. Proses ini dilakukan oleh user yang merupakan penggemar dari Mango Band yang memanfaatkan web profil Mango Band. Proses awal user melihat video klip yang merupakan video dari peserta grup band indie. Setelah itu user akan melakukan vote kepada video klip terfavorit user tersebut dengan mengirimkan SMS. Setiap video klip yang ditampilkan akan ada informasi kode SMS yang diberikan pada setiap video klip sebagai kode video klip yang dipilih. Berikut adalah Gambar 3.11 dari system flow vote video klip :
Gambar 3.11 System flow Vote Video Klip
3.4 Desa in Str uktur Database
a. Nama tabel : Event
Tabel Event berfungsi untuk menyimpan data yang berkaitan dengan event yang akan diselenggarakan oleh management Mango Band. Event diadakan untuk para peserta band-band indie yang telah melakukan pendaftaran pada web profil Mango Band. Pada tabel ini memiliki atribut primary key yaitu idevent. Tabel event akan menyimpan data mulai diumumkannya event dimulai sampai dengan berakhirnya event. Berikut adalah Struktur Tabel 3.1 Event sebagai berikut :
43
Tabel 3.1 Ta bel Str uktur Event
KOLOM TYPE EXTRA KETERANGAN
idevent integer Primary key,
auto increment
Untuk menyimpan data id event.
namaevent varchar (30) - Untuk menyimpan nama
event.
tglevent date - Untuk menyimpan tanggal
mulai event.
tglselesaievent date - Untuk menyimpan tanggal
selesai event.
keteranganevent text - Untuk menyimpan deskripsi
event.
b. Nama tabel : Upload
Tabel Upload berfungsi untuk menyimpan data yang berkaitan dengan
upload video yang akan dilakukan oleh peserta band yang telah mendaftar.
Pada saat event telah dimulai maka para peserta dapat melakukan kompetisi event yang diadakan, yaitu dengan mengirimkan file video klip. Pada atribut kodesms, data akan terisi melalui sistem secara otomatis. Pada dirupload berfungsi untuk menyimpan alamat file video. Tabel upload terdapat atribut primary key yaitu atribut idupload. Berikut adalah Struktur Tabel 3.2
Tabel 3.2 Str uktur Tabel Upload
KOLOM TYPE EXTRA KETERANGAN
idupload integer Primary key,
auto increment
Untuk menyimpan id upload.
dirupload varchar (100) - Untuk menyimpan direktori
upload video.
tglupload date - Untuk menyimpan tanggal
upload video.
kodeSMS varchar (10) - Untuk menyimpan kode SMS
video.
c. Nama tabel : peserta
Tabel Peserta berfungsi untuk menyimpan data peserta band indie. Atribut yang ada didalam tabel berisikan informasi peserta band diantaranya, nama band, alamat base camp, email peserta band, nomor telpon contact person, username dan password. Setelah peserta band mendaftarkan diri maka band tersebut dapat melakukan login dan ikut dalam event yang diadakan managemen Mango Band. Pada tabel ini terdapat atribut primary key yaitu idpeserta. Berikut adalah Struktur Tabel 3.3 Peserta :
45
Tabel 3.3 Str uktur Ta bel Peser ta
KOLOM TYPE EXTRA KETERANGAN
idpeserta integer Primary key,
auto increment
Untuk menyimpan id peserta.
namaband varchar (50) - Untuk menyimpan nama
band.
username varchar (20) - Untuk menyimpan username
peserta.
password varchar (20) - Untuk menyimpan password
peserta.
alamatpeserta varchar (100) - Untuk menyimpan alamat
atau basecamp peserta band.
emailpeserta varchar (50) - Untuk menyimpan email
peserta band
telppeserta varchar (20) - Untuk menyimpan telepon
peserta band untuk contact person
d. Nama tabel : Vote
Tabel Vote berfungsi untuk menyimpan data yang berkaitan dengan banyaknya user melakukan pemilihan video klip terfavorit menurut user. Setelah user melakukan SMS berdasarkan kode yang telah diinformasikan. Sistem akan mengolah data SMS tersebut untuk dikalkulasikan pemilihan
video klik berdasarkan SMS terbanyak. Pada tabel vote terdapat atribut
Tabel 3.4 Struk tur Ta bel Vote
KOLOM TYPE EXTRA KETERANGAN
idvote integer Primary key,