Lapis Konseptual Lapis Pandangan Data Definition Language DDL Atribut Hubungan Kekangan GAMMU

23 Abstraksi data dalam DBMS dibagi menjadi tiga lapis yang saling berkaitan Kadir, 1999: 21, tiga lapis yang dimaksud adalah sebagai berikut :

a. Lapis Fisis

Lapis fisis merupakan lapis terendah dalam abstraksi data. Lapis ini menjelaskan bagaimana data sesunnguhnya disimpan. Pada lapis inilah struktur data dijabarkan secara rinci.

b. Lapis Konseptual

Lapis konseptual bersifat lebih tinggi daripada lapis fisis. Lapis ini menjabarkan data apa saja yang sesungguhnya disimpan dalam dalam basis data, dan juga menjabarkan hubungan-hubungan antar data.

c. Lapis Pandangan

Lapis pandangan merupakan lapis tertinggi dalam abstraksi data. Pada lapis ini pengguna hanya mengenal struktur data yang sederhana, yang berorientasi pada pengguna. Data yang dikenal oleh masing-masing pengguna bisa berbeda-beda dan barangkali hanya mencakup sebagian dari basis data. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 24 3 Macam Perintah Data Base Management System DBMS Untuk mengelola dan mengorganisasikan data perlu adanya semacam perintahbahasa yang digunakan, sebagai berikut: Kadir, 1999: 29.

a. Data Definition Language DDL

DDL adalah perintah-perintah yang biasa digunakan oleh administrator basis data DBA untuk mendefinisikan skema ke DBMS. kema adalah deskripsi lengkap tentang struktur medan, rekaman, dan hubungan data pada basis data. DDL juga dipakai untuk mendefinisikan subskema, merupakan pandangan bagi pengguna terhadap basis data. Subskema merupakan himpunan bagian dari skema dan dapat menjadi mekanisme pengamanan sistem basis data, yakni dengan mengatur hak pengaksesan item-item dalam basis data.

b. Data Manipulation Language DML

DML adalah perintah-perintah yang digunakan untuk mempermudah pemakai malakukan akses, memanipulasi dan mengambil data dari database. Secara khusus DQL mengenal query, merupakan bagian dari DML. Query adalah fasilitas yang memungkinkan pengguna dengan ilmu pengetahuan tentang komputer yang terbatas ataupun tidak, bisa Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 25 mengetahui bahasa pemrograman, dan dapat meminta informasi terhadap basis data. DML menurut Kadir 1999: 31 pada dasarnya dibagi menjadi dua: Prosedural, yang menuntut pengguna menentukan data apa yang diperlukan dan bagaimana cara mendapatkannya. Nonprosedural, yang menuntut pengguna menetukan data apa saja yang diperlukan tanpa harus menyebutkan cara mendapatkannya. Secara khusus, bagian DML ada yang disebut DQL Dalam literatur terkadang DQL dibedakan dengan DML. DQL hanya sering disebut bahasa query. DQL adalah fasilitas yang memungkinkan pengguna dengan pengetahuan yang terbatas ataupun tidak mengetahuibahasa pemrograman dapat meminta informasi terhadap basis dataKadir, 1999: 31. Sebagai contoh, pengguna dapat memberikan perintah.

2.4.1 Perancangan Basis Data

Perancangan basis data menurut Kadir 1999: 39 ada 3 tahapan, yaitu: a. Perancangan basis data secara konseptual, merupakan upaya untuk membuat model yang masih bersifat konsep. b. Perancangan basis data secara logis, merupakan tahapan untuk memetakan model konseptual ke model basis data yang akan dipakai. Namun sebagai mana perancangan basis data secara konseptual, perancangan ini tidak Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 26 tergantung pada DBMS yang dipakai. Itulah sebabnya perancangan basis data secara logis kadang disebut pemetaan model data. c. Perancangan basis data secaara fisis, merupakan tahapan untukmenuangkan perancangan basis data yang bersifat logis menjadi basis data fisis yang tersimpan pada media penyimpan eksternal.

2.4.2 Sejarah Kemunculan Basis Data

Menurut sejarah, sistem pemrosesan data terbentuk setelah masa system pemrosesan berkas. Sistem pemrosesan manual dan system pemrosesan berkas. Sistem pemrosesan manual berbasis kertas merupakan bentuk pemrosesan yang menggunakan dasar berupa setumpuk rekaman yang tersimpan pada rak-rak berkas. Jika suatu berkas diperlukan, berkas tersebut harus dicari dalam rak-rak tersebut. Pada saat awal penerapan sistem komputer, sekelompok rekaman disimpan pada sejumlah berkas secara terpisah. Sistem yang menggunakan pendekatan seperti ini biasa disebut sebagai sistem pemrosesan berkas. Sistem ini tentu saja memiliki kelebihan dari pada sistem pemrosesan manual, yaitu dalam kecepatan dan keakuratannya. Sistem pemrosesan berkas menurut Kadir 1999: 18 memiliki kekurangan dalam hal: kemubaziran data, keterbatan berbagai data, ketidakkonsistenan; dan kekurangan luwesan. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 27 Sistem pemrosesan basis data dimaksudkan untuk mengatasi kelemahan- kelemahan yang ada pada sistem pemrosesan data. Sistem seperti ini dikenal dengan sebutan Data Base Management System DBMS.

2.5 Definisi

MYSQL Berikut ini akan dijelaskan mengenai beberapa definisi MYSQL untuk memperjelas pengertian tentang software ini : a. MYSQL adalah sistem pengaturan relational database. Suatu relational database, menyimpan data dalam bentuk tabel-tabel yang kemudian akan diletakkannya semua data dalam satu ruang penyimpanan yang besar. b. MYSQL adalah Open Source Software perangkat lunak. Open Source artinya bahwa software tersebut memungkinkan untuk digunakan dan dimodifikasi oleh siapa saja. c. MYSQL menggunakan GPL GNU General Public License Untuk menentukan apakah seseorang memenuhi persyaratan untuk menggunakan software tersebut dalam situasi yang berbeda. Jika seseorang merasa tidak nyaman dengan GPL atau ingin menggunakan MYSQL untuk aplikasi bisnis, maka orang tersebut dapat membeli lisensi yang bersifat komersial. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 28 Koneksi Database MySql dengan PHP Berikut penulisan fungsi script untuk koneksi ke database MySQL :

1. mysql_connect

Perintah ini digunakan untuk melakukan koneksi ke server database MySQL, fungsi ini memiliki format penulisan sebagai berikut. mysql_connect host, username, password ;

2. mysql_select_db

Perintah ini digunakan untuk memilih database yang ada di server MySQL, fungsi ini memiliki format penulisan sebagai berikut. mysql_select_db nama_database, pengenal_koneksi ;

3. mysql_query

Perintah ini digunakan untuk melakukan query atau menjalankan permintaan terhadap sebuah tabel atau sejumlah tabel database , fungsi ini memiliki format penulisan sebagai berikut. mysql_query permintaan, pengenal koneksi ;

2.5.1 Komponenen Perancangan Basis Data Konseptual: a.

Entitas Entitas sering juga disebut tipe entitas atau kelas entitas. Entitas menyatakan objek atau kejadian. Pada model relasional, entitas akan menjadi tabel. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 29

b. Atribut

Atribut adalah item data yang menjadi bagian dari suatu entitas. Istilah lain atribut adalah properties.

b. Hubungan

Hubungan adalah asosiasi atau kaitan antara dua entitas.

c. Kekangan

Kekangan digunakan untuk melindungi integritas data misalnya, melindungi kesalahan sewaktu melakukan pengisian data.

d. Domain

Domain adalah himpunan nilai yang berlaku bagi suatu atribut. Kekangan domain mendefinisikan nama, tipe, format, panjang, dan nilai masing-masing item data.

2.5.2 Integritas Referensial

Integritas referensial adalah aturan-aturan yang mengatur hubungan antara kunci primer dengan kunci tamu milik tabel-tabel yang berada dalam suatu basis data relasional untuk menjaga konsistensi data. Tujuan integritas referensial adalah untuk menjamin agar elemen dalam suatu tabel yang menunjuk ke suatu pengenal unik pada suatu baris pada tabel lain benar-benar menunjuk ke suatu nilai yang memang ada. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 30 Macam integritas referensial ada tiga, yaitu: Kadir, 1999: 47. 1. Penambahan Insert , 2. Penghapusan Delete, dan 3. Peremajaan Update. Integritas referensial pada peremajaan memungkinkan pengubahan suatu kunci pada suatu tabel menyebabkan semua nilai pada tabel lain yang tergantung pada tabel tersebut juga akan dirubah dikenal dengan istilah cascade update Kadir, 1999: 47.

2.6 Data Flow Diagram DFD

Data Flow Diagram DFD adalah representasi grafik dari sebuah sistem. DFD menggambarkan komponen-komponen sebuah sistem, aliran-aliran data di mana komponen-komponen tersebut, dan asal, tujuan, dan penyimpanan dari data tersebut. Kita dapat menggunakan DFD untuk dua hal utama, yaitu untuk membuat dokumentasi dari sistem informasi yang ada, atau untuk menyusun dokumentasi untuk sistem informasi yang baru. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 31 Empat simbol yang digunakan : Ada 3 tiga jenis DFD, yaitu ; 1 Context Diagram CD 2 DFD Fisik 3 DFD Logis

2.6.1 DFD Level

DFD dapat digambarkan dalam Diagram Context dan Level n. Huruf n dapat menggambarkan level dan proses di setiap lingkaran. 1 Diagram Context 2 Diagram Level n a. DFD Logis b. DFD Fisik Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 32

2.6.2 Context Diagram CD

Jenis pertama Context Diagram, adalah data flow diagram tingkat atas DFD Top Level, yaitu diagram yang paling tidak detail, dari sebuah sistem informasi yang menggambarkan aliran-aliran data ke dalam dan ke luar sistem dan ke dalam dan ke luar entitas-entitas eksternal. CD menggambarkan sistem dalam satu lingkaran dan hubungan dengan entitas luar. Lingkaran tersebut menggambarkan keseluruhan proses dalam sistem. Beberapa hal yang harus diperhatikan dalam menggambar CD; Terminologi sistem : a. Batas Sistem adalah batas antara “daerah kepentingan sistem”. b. Lingkungan Sistem adalah segala sesuatu yang berhubungan atau mempengaruhi sistem tersebut. c. Interface adalah aliran yang menghubungkan sebuah sistem dengan linkungan sistem tersebut. Menggunakan satu simbol proses, Catatan: 1 Yang masuk didalam lingkaran konteks simbol proses adalah kegiatan pemrosesan informasi Batas Sistem. Kegiatan informasi adalah mengambil data dari file, mentransformasikan data, atau melakukan filing data, misalnya mempersiapkan dokumen, memasukkan, memeriksa, mengklasifikasi, mengatur, menyortir, menghitung, meringkas data, dan melakukan filing data baik yang melakukan secara manual maupun yang dilakukan secara terotomasi. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 33 2 Namaketerangan di simbol proses tersebut sesuai dengan fungsi sistem tersebut, 3 Antara Entitas EksternalTerminator tidak diperbolehkan komunikasi langsung 4 Jika terdapat termintor yang mempunyai banyak masukan dan keluaran, diperbolehkan untuk digambarkan lebih dari satu sehingga mencegah penggambaran yang terlalu rumit, dengan memberikan tanda asterik atau garis silang . 5 Jika Terminator mewakili individu personil sebaiknya diwakili oleh peran yang dipermainkan personil tersebut. 6 Aliran data ke proses dan keluar sebagai output keterangan aliran data berbeda.

2.6.3 Diagram Level n Data Flow Diagram Levelled

Dalam diagram n DFD dapat digunakan untuk menggambarkan diagram fisik maupun diagram diagram logis. Dimana Diagram Level n merupakan hasil pengembangan dari Context Diagram ke dalam komponen yang lebih detail tersebut disebut dengan top-down partitioning. Jika kita melakukan pengembangan dengan benar, kita akan mendapatkan DFD-DFD yang seimbang. Beberapa hal yang harus diperhatikan dalam membuat DFD ialah: 1 Pemberian Nomor pada diagram level n dengan ketentuan sebagai berikut: a. Setiap penurunan ke level yang lebih rendah harus mampu merepresentasikan proses tersebut dalam sepesifikasi proses yang jelas. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 34 Sehingga seandainya belum cukup jelas maka seharusnya diturunkan ke level yang lebih rendah. b. Setiap penurunan harus dilakukan hanya jika perlu. c. Tidak semua bagian dari sistem harus diturunkan dengan jumlah level yang sama karena yang kompleks bisa saja diturunkan, dan yang sederhana mungkin tidak perlu diturunkan. Selain itu, karena tidak semua proses dalam level yang sama punya derajat kompleksitas yang sama juga. d. Konfirmasikan DFD yang telah dibuat pada pemakai dengan cara top- down. e. Aliran data yang masuk dan keluar pada suatu proses di level n harus berhubungan dengan aliran data yang masuk dan keluar pada level n+1. Dimana level n+1 tersebut mendefinisikan sub-proses pada level n tersebut. f. Penyimpanan yang muncul pada level n harus didefinisikan kembali pada level n+1, sedangkan penyimpanan yang muncul pada level n tidak harus muncul pada level n-1 karena penyimpanan tersebut bersifat lokal. g. Ketika mulai menurunkan DFD dari level tertinggi, cobalah untuk mengidentifikasi external events dimana sistem harus memberikan respon. External events dalam hal ini berarti suatu kejadian yang berkaitan dengan pengolahan data di luar sistem, dan menyebabkan sistem kita memberikan respon. 2 Jangan menghubungkan langsung antara satu penyimpanan dengan penyimpanan lainnya harus melalui proses. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 35 3 Jangan menghubungkan langsung dengan tempat penyimpanan data dengan entitas eksternal terminator harus melalui proses, atau sebaliknya. 4 Jangan membuat suatu proses menerima input tetapi tidak pernah mengeluarkan output yang disebut dengan istilah “black hole”. 5 Jangan membuat suatu tempat penyimpanan menerima input tetapi tidak pernah digunakan untuk proses. 6 Jangan membuat suatu hasil proses yang lengkap dengan data yang terbatas yang disebut dengan istilah “magic process”. 7 Jika terdapat terminator yang mempunyai banyak masukan dan keluaran, diperbolehkan untuk digambarkan lebih dari satu sehingga mencegah penggambaran yang terlalu rumit, dengan memberikan tanda asterik atau garis silang , begitu dengan bentuk penyimpanan. 8 Aliran data ke proses dan keluar sebagai output keterangan aliran data berbeda.

2.6.4 DFD Fisik

Adalah representasi grafik dari sebuah sistem yang menunjukan entitas- entitas internal dan eksternal dari sistem tersebut, dan aliran-aliran data ke dalam dan keluar dari entitas-entitas tersebut. Entitas-entitas internal adalah personel, tempat sebuah bagian, atau mesin misalnya, sebuah komputer dalam sistem tersebut yang mentransformasikan data. Maka DFD fisik tidak menunjukkan apa yang dilakukan, tetapi menunjukkan dimana, bagaimana, dan oleh siapa proses- proses dalam sebuah sistem dilakukan. Tidak Bahas. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 36 Perlu diperhatikan didalam memberikan keterangan di lingkaran-lingkaran simbol proses dan aliran-aliran data simbol aliran data dalam DFD fisik menggunakan labelketerangan dari kata benda untuk menunjukan bagaimana sistem mentransmisikan data antara lingkaran-lingkaran tersebut. Misal : Aliran Data : Kas, Formulir 66W, Slip Setoran Proses : Cleck Penjualan, Kasir, Pembukuan, dll.

2.6.5 DFD Logis

Adalah representasi grafik dari sebuah sistem yang menunjukkan proses- proses dalam sistem tersebut dan aliran-aliran data ke dalam dan ke luar dari proses-proses tersebut. Kita menggunakan DFD logis untuk membuat dokumentasi sebuah sistem informasi karena DFD logis dapat mewakili logika tersebut, yaitu apa yang dilakukan oleh sistem tersebut, tanpa perlu menspesifikasi dimana, bagaimana, dan oleh siapa proses-proses dalam sistem tersebut dilakukan. Keuntungan dari DFD logis dibandingkan dengan DFD fisik adalah dapat memusatkan perhatian pada fungsi-funsi yang dilakukan sistem. Perlu diperhatikan di dalam pemberian Keterangan Label; 1 Lingkaran-lingkaran simbol proses menjelaskan apa yang dilakukan sistem Misal : Menerima Pembayaran, Mencatat Penjualan, Membandingkan kas dan Daftar Penerimaan, Mempersiapkan Setoran, dll. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 37 2 Aliran-aliran data simbol aliran data menggambarkan sifat data. Misal : Pembayaran bukan “Cek”, “Kas”, “ Kartu Kredit” Jurnal Penjualan bukan “Buku Penjualan”, dll Usulan dari analis, beberapa hal yang umum yang mendapat perhatian dalam mendesain baru tersebut ialah: Menggabungkan beberapa tugas menjadi Satu. Master Detail Update. Meminimalkan tugas-tugas yang tidak penting. Menghilangkan tugas-tugas yang duplikat. Menambahkan proses baru. Meminimalkan proses input. Menetapkan bagian mana yang harus dikerjakan komputer dan bagian mana yang harus dikerjakan manual

2.7 GAMMU

GAMMU merupakan software sms gateway yang cukup bagus dan terkenal . Selain mudah penggunaannya, perangkat modem gsm yang support cukup banyak mulai dari nokia, siemens dan Sony ericsson. Untuk sony ericsson saya dah nyoba dan penggunaannya sangat mudah. Selain itu perangkat lain yang lebih cocok untuk dijadikan sms gateway dengan software gammu seperti modem gsm itegno. GAMMU bahkan sudah menyediakan service online untuk proses update data sms ke database. Database yang di support GAMMU adalah MySQL. Ada beberapa pihak yang menginginkan program SMSgateway nya menggunakan database yang lain seperti SQLserver, Oracle dll. Apakah bisa? Jawabnya bisa, dengan Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 38 menggunkan sediki program tambahan delphi atau vb kita bisa membuat service atau program yang memanfaatkan gammu dan sqlserver sebagai databasenya. Sebenarnya kita bisa membuat software sms gateway sendiri tanpa harus menggunakan GAMMU, syaratnya kita harus mengetahui terlebih dahulu instruksi atau perintah yang dikirim dari pc ke perangkat modem gsm dan sebaliknya. Perintah itu diberi istilah AT-Command. Jika sudah memiliki AT-Command , kita bisa membuat aplikasinya dengan menggunakan bahasa pemrograman apapun yang penting program tersebut telah menyediakan fungsi untuk komunikasi baik ke port RS232 atau pun USB. Tapi jika terlalu pusing untuk membuatnya, gammu masih dapat dimanfaatkan untuk dipadukan dengan program khusus yang kita buat, sehingga kita dapat memanfaatkan database lain selain MySQL. SMS Gateway merupakan pintu gerbang bagi penyebaran Informasi dengan menggunakan SMS. Anda dapat menyebarkan pesan ke ratusan nomor secara otomatis dan cepat yang langsung terhubung dengan database nomor-nomor ponsel saja tanpa harus mengetik ratusan nomor dan pesan di ponsel anda karena semua nomor akan diambil secara otomatis dari database tersebut. Selain itu , dengan adanya SMS Gateway anda dapat mengustomisasi pesan-pesan yang ingin dikirim. Dengan menggunakan program tambahan yang dapat dibuat sendiri, pengirim pesan dapat lebih fleksibel dalam mengirim berita karena biasanya pesan yang ingin dikirim berbeda-beda untuk masing- masing penerimanya. SMS Gateway bekerja dengan cara menghubungkan handphone yang memiliki fasilitas SMS dengan computer PC selaku operator otomatisnya. Keduanya akan Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 39 dihubungkan oleh suatu kabel data dari handphone-nya yang sesuai dengan seial port yang ada di PC. Komunikasi antara hanphone dengan PC akan menggunakan bahasa pemrograman serial port. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber. 40

BAB III PERANCANGAN SISTEM

3.1 Analisa Sistem

Selain perusahaan perhotelan yang berbintang, perusahaan perhotelan yang ada sekarang ini juga tidak lepas dari data yang selalu berubah tiap tahun dan memerlukan penanganan khusus untuk merubah data-data tesebut denganwaktu yang singkat. Keefektifan administrasi hotel dapat berjalan lancer apabila didukung dengan kemampuan penanganan basis data secarakomputerisasi, dalam hal ini menggunakan PHP diterapkanpada basis data yang diharapkan dapat meningkatkan keefektifan sistem administrasi perhotelan. Dalam penelitian ini dilakukan beberapa langkah dalam pembuatan aplikasi sistem yang dibuat. Sehingga langkah-langkah yang ditempuh dapat di jabarkan sebagai berikut. 1. Observasi pada hotel 2. Perancangan sistem basis data administrasi hotel 3. Penerjemahan analisis sistem basis data pada bahasa pemrograman dengan PHP. Data yang ada pada hotel seringkali menggunakan sistem pemprosesan berkas. Untuk mengurangi kekurangan dengan sistem pemrosesan berkas, maka perlu dilakukan dengan sistem yang lebih baik yaitu dengan menggunakan sistem basis data. Untuk menangani data dengan menggunakan sistem basis data, dilakukan perancangan basis data, perancangan basis data tersebut terbagi menjadi 3 tahapan, antara lain perancangan basis data secara konseptual, perancangan basis data secara logis, dan perancangan basis data secara fisis. Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.