ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Nordrassil Project : Web Pembangkit DDL dan Kode Sumber
                           Aplikasi Basis Data

                      Go Frendi Gunawan, Hendra Suprayogi, Tri Y. Evelina
                               Lembaga Penelitian dan Pengabdian pada Masyarakat,
                                Sekolah Tinggi Informatika dan Komputer Indonesia
                      Email: frendi@stiki.ac.id, highlander@stiki.ac.id, trievelina@stiki.ac.id

                                                     Abstrak
         Nordrassil Project adalah web yang dapat menciptakan DDL maupun kode sumber aplikasi basis data.
Tujuan dari penelitian ini adalah untuk membantu programmer, atau bahkan orang awam, untuk dapat merancang
dan membuat sendiri DDL dan kode aplikasi basis data secara mudah, cepat dan tepat.
         Nordrassil Project juga menyediakan fasilitas untuk menggunakan template script sendiri berbasis
javascript dengan sedikit tambahan fungsi API untuk men membangkitkan file, sehingga pengguna dapat
menentukan sendiri kode skema basis data dan kode aplikasi basis data umum yang akan di generate oleh template
script buatan mereka. Pengembangan Nordrassil Project tidak hanya akan bergantung pada satu pihak saja.
Semakin variatif template script yang ada pada Nordrassil Project, maka akan semakin banyak pula kemungkinan
jenis aplikasi basis data jenis skema basis data yang dapat dibuat.

Kata kunci : Nordrassil Project, Web, DDL, Kode Sumber Aplikasi Basis Data

1. PENDAHULUAN
         Permintaan akan adanya aplikasi berbasis data telah meningkat dengan pesat. Mulai dari aplikasi desktop,
sampai aplikasi web. Sesuai dengan kebutuhan dari pengguna. Oleh sebab itu, para praktisi teknologi informasi
harus sanggup menangani permintaan yang demikian besar. Namun seringkali banyak waktu yang dihabiskan untuk
melakukan hal-hal yang sebenarnya bisa diotomatisasi, seperti menulis perintah SQL untuk select, insert, update dan
delete. Atau menata tampilan antar muka agar terlihat rapi. Penggunaan alat bantu yang dapat mengotomatisasi hal-
hal tersebut akan sangat membantu praktisi teknologi informasi untuk menangani permintaan pengguna.

         Pembuatan suatu aplikasi berbasis data tak lepas dari rancangan antar muka pengguna, rancangan bisnis
dan rancangan basis data. Ketiga proses tersebut sebenarnya memiliki pola yang mirip dan berulang. Pola-pola yang
mirip dan berulang itu sebenarnya akan dapat dilakukan dengan lebih cepat dan lebih bebas dari kesalahan jika
dilakukan oleh komputer yang memiliki tingkat akurasi cukup tinggi, daripada dilakukan oleh manusia. Untuk
meminimalkan kesalahan yang dilakukan oleh manusia, diciptakan sebuah web yang disebut Nordrassil Project.
Web tersebut dapat menciptakan DDL maupun kode sumber aplikasi basis data yang selanjutnya akan disebut
sebagai kode sumber. Proses pembangkitan kode sumber akan didasarkan pada struktur yang telah didefinisikan
oleh user, sesuai aturan yang telah disediakan sistem. Selain itu, proses pembangkitan kode sumber juga didasarkan
pada pola yang terdefinisikan dalam template script. Template script sendiri tertulis dalam bentuk gabungan antara
html dan javascript serta fungsi API yang disediakan oleh sistem.

         Tujuan dari penelitian ini adalah membuat sistem terprogram yang memiliki akurasi tinggi untuk membantu
programmer, atau bahkan orang awam, untuk dapat merancang dan membuat sendiri kode skema basis data dan
kode aplikasi basis data secara mudah, cepat dan tepat. Bagi pengguna dari kalangan akademisi atau praktisi teknik
informatika, Nordrassil Project juga menyediakan fasilitas untuk menggunakan template script sendiri berbasis
javascript dengan sedikit tambahan fungsi API untuk men generate file. Dengan demikian, pengguna dari kalangan
akademisi maupun praktisi teknik informatika dapat menentukan sendiri kode skema basis data dan kode aplikasi
basis data umum yang akan di generate oleh template script buatan mereka. Sementara itu, pengguna dari kalangan
awam dapat menggunakan template script yang dibuat oleh kalangan akademisi dan praktisi teknik informatika.

         Selain itu, pengembangan Nordrassil Project diharapkan tidak hanya akan bergantung pada satu pihak saja.
Semakin variatif template script yang ada pada Nordrassil Project, maka akan semakin banyak pula kemungkinan
jenis kode sumber yang dapat dibuat.



                                                                                                                 1
Dalam uji coba yang dilakukan, digunakan template script goFrendi.simpleMySQL untuk membangkitkan
DDL MySQL dan template script goFrendi.simpleDelphi untuk membangkitkan kode sumber aplikasi basis data
dalam bahasa pemrograman Embarcadero Delphi 2010.

         Tujuan dari penelitian ini adalah menciptakan prototype system yang dapat membantu men generate kode
skema basis data dan kode sumber aplikasi basis data secara sederhana. Sedangkan ruang lingkup yang dibahas
mengenai kode sumber program yang digenerate memiliki kapabilitas untuk insert, update dan delete, dan
menampilkan data secara sederhana, bergantung pada kerumitan template script yang digunakan. Kode Skema
Basis Data yang digenerate mencakup table, primary key, foreign key, unique key, serta constraint NOT NULL dan
AUTO INCREMENT, bergantung pada kerumitan template script yang digunakan.
         Selanjutnya manfaat yang diperoleh dalam penelitian ini dapat membantu proses pembelajaran yang
berkaitan dengan sistem berbasis data agar pengguna dapat langsung menunjukkan konsep yang dimaksud secara
cepat dan tepat, tanpa perlu melakukan kegiatan pemrograman. Selain itu, membantu praktisi teknologi informasi
dan kalangan awam untuk dapat membuat sistem aplikasi basis data secara cepat dan tepat, sehingga dapat
berkonsentrasi pada hal-hal lain.

2. TINJAUAN PUSTAKA
2.1 Basis Data
         Kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan
berdasarkan sebuah skema atau struktur tertentu, tersimpan di hardware komputer dan dengan software untuk
melakukan manipulasi untuk kegunaan tertentu. Ada juga yang mendefinisikan basis data adalah kumpulan
informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program
komputer untuk memperoleh informasi dari basis data tersebut.
    Ada dua macam kode yang dapat digunakan dalam mengolah basis data
     ? Data Definition Language (DDL), merujuk pada kumpulan perintah yang dapat digunakan untuk
         mendefinisikan objek ¨C objek basis data, seperti membuat sebuah tabel basis data atau indeks primer atau
         sekunder.
     ? Data Manipulation Language (DML), mengacu pada kumpulan perintah yang dapat digunakan untuk
         melakukan manipulasi data, seperti penyimpanan data ke suatu tabel, kemudian mengubahnya dan
         menghapusnya atau hanya sekedar menampilkannya kembali.

2.2 Aplikasi Basis Data
          Aplikasi basis data adalah aplikasi yang menyediakan sejumlah menu yang sesuai dengan berbagai
aktivitas nyata yang memang dilakukan oleh para pemakai akhir (end-user). Selanjutnya, pilihan menu user ini akan
diterjemahkan oleh aplikasi tersebut menjadi sebuah operasi basis data elementer yang memang dapat
dikenali/dikerjakan oleh DBMS.

2.3 Client-Server
         Client-Server adalah arsitektur jaringan yang memisahkan client (biasanya aplikasi yang menggunakan
GUI) dengan server. Masing-masing client dapat meminta data atau informasi dari server. Sistem client server
didefinisikan sebagai sistem terdistribusi, tetapi ada beberapa perbedaan karakteristik yaitu :
1. Servis (layanan)
   ?     Hubungan antara proses yang berjalan pada mesin yang berbeda
   ?     Pemisahan fungsi berdasarkan ide layanannya.
   ?     Server sebagai provider, client sebagai konsumen
2. Sharing resources (sumber daya)
   Server bisa melayani beberapa client pada waktu yang sama, dan meregulasi akses bersama untuk share sumber
   daya dalam menjamin konsistensinya.
3. Asymmetrical protocol (protokol yang tidak simetris )
   Many-to-one relationship antara client dan server.Client selalu menginisiasikan dialog melalui layanan
   permintaan, dan server menunggu secara pasif request dari client.
4. Transparansi lokasi
   Proses yang dilakukan server boleh terletak pada mesin yang sama atau pada mesin yang berbeda melalui
   jaringan.Lokasi server harus mudah diakses dari client.
5. Mix-and-Match
   Perbedaan antara platform server dan platform client

                                                                                                               2
6. Pesan berbasiskan komunikasi
   Interaksi server dan client melalui pengiriman pesan yang menyertakan permintaan dan jawaban.
7. Pemisahan interface dan implementasi
   Server dapat diupgrade tanpa mempengaruhi client selama interface pesan yang diterbitkan tidak berubah.

2.4 Tipe Client-Server
     Tipe-tipe client server yang digunakan sebagai berikut:
1. File Servers
     ? File server vendors mengklaim bahwa mereka pertama menemukan istilah client-server.
     ? Untuk sharing file melalui jaringan
2. Database Servers
     ? Client mengirimkan SQL requests sebagai pesan pada database server,selanjutnya hasil perintah SQL
        dikembalikan
     ? Server menggunakan kekuatan proses yang diinginkan untuk menemukan data yang diminta dan kemudian
        semua record dikembalikan pada client.
3. Transaction Servers (Transaksi Server)
     ? Client meminta remote procedures yang terletak pada server dengan sebuah SQL database engine.
     ? Remote procedures ini mengeksekusi sebuah grup dari SQL statement
     ? Hanya satu permintaan / jawaban yang dibutuhkan untuk melakukan transaksi
4. Groupsware Servers
     ? Dikenal sebagai Computer-supported cooperative working
     ? Manajemen semi-struktur informasi seperti teks, image, , bulletin boards dan aliaran kerja
     ? Data diatur sebagai dokumen
5. Object Application Servers
     ? Aplikasi client/server ditulis sebagai satu set objek komunikasi
     ? Client objects berkomunikasi dengan server objects melalui Object Request Broker (ORB)
     ? Client meminta sebuah method pada remote object
6. Web Application Servers (Aplikasi Web Servers)
     ? World Wide Web adalah aplikasi client server yang pertama yang digunakan untuk web.
     ? Client dan servers berkomunikasi menggunakan RPC seperti protokol yang disebut HTTP.

2.5 PHP
          PHP (akronim dari PHP Hypertext Preprocessor) yang merupakan bahasa pemrograman berbasis web
yang memiliki kemampuan untuk memproses data dinamis. PHP dikatakan sebagai sebuah server-side embedded
script language artinya sintaks-sintaks dan perintah yang diberikan akan sepenuhnya dijalankan oleh server tetapi
disertakan pada halaman HTML biasa. Aplikasi-aplikasi yang dibangun oleh PHP pada umumnya akan memberikan
hasil pada web browser, tetapi prosesnya secara keseluruhan dijalankan di server. Pada prinsipnya server akan
bekerja apabila ada permintaan dari client. Dalam hal ini client menggunakan kode-kode PHP untuk mengirimkan
permintaan ke server (dapat dilihat pada gambar dibawah). Ketika menggunakan PHP sebagai server-side embedded
script language maka server akan melakukan hal-hal sebagai berikut :
     ? Membaca permintaan dari client/browser
     ? Mencari halaman/page di server
     ? Melakukan instruksi yang diberikan oleh PHP untuk melakukan modifikasi pada halaman/page.
     ? Mengirim kembali halaman tersebut kepada client melalui internet atau intranet.

2.6 JavaScript
         JavaScript adalah bahasa skrip yang populer di internet dan dapat bekerja di sebagian besar penjelajah web
populer. JavaScript pertama kali dikembangkan oleh Brendan Eich dari Netscape dibawah nama Mocha, yang
nantinya namanya diganti menjadi LiveScript, dan akhirnya menjadi 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.

2.7 ExtJS
         Librari extjs adalah librari JavaScript yang dikembangkan untuk memudahkan pembuatan user interface.
Librari ini awalnya adalah extension dari librari Yahoo User Interface (YUI/yui), awalnya dikenal sebagai yui-ext

                                                                                                                 3
(http://www.yui-ext.com). Extjs adalah nama baru dari yui-ext. extjs dikembangkan pertama kali oleh Jack
Slockum, sebagai librari khusus dari yui. Kini extjs bukanlah librari khusus untuk yui saja, tetapi merupakan librari
JavaScript yang bisa digunakan oleh banyak librari dan framework lainnya, seperti JQuery, Prototype, atau
Scriptaculous (extension dari Prototype). Pemrogram web dapat dengan mudah membuat tampilan aplikasi berbasis
web. tampilan tidak seperti halaman HTML, tetapi lebih mirip seperti aplikasi berbasis Windows. Librari extjs
sangat memudahkan kita untuk membuat tampilan, dan menggunakan teknik pemrograman AJAX, sehingga aplikasi
berbasis web yang dihasilkan menjadi seperti aplikasi Windows pada umumnya.

2.8 Lisensi
Librari extjs ini memiliki lisensi:
?    Lisensi komersial
     Lisensi komersial memiliki skema harga berdasarkan jumlah pengembang web yang akan mengembangkan
     aplikasi dengan menggunakan extjs. Suatu perusahaan dapat membeli lisensi komersial ini, dari seharga $249
     untuk 1 developer, $850 untuk 5 developer, dan sekitar $2000 untuk 25 developer.
?    Lisensi                                                                                           Opensource
     Lisensi opensource LGPL disediakan oleh tim extjs, jika ingin mengembangkan aplikasi yang memanfaatkan
     librari ini, dan akan dilepaskan sebagai aplikasi opensource juga yang memiliki lisensi LGPL. Akan tetapi extjs
     juga bisa diperoleh secara cuma-cuma, apabil apabila aplikasi yang dikembangkan ini digunakan secara
     komersial, tetapi sebagai developer tidak melakukan layanan dukungan atas aplikasi yang dihasilkan.

3. METODOLOGI
        Metodologi yang digunakan adalah studi literatur dan uji coba. Studi literatur melingkupi pembelajaran
mengenai materi-materi terkait, seperti yang telah dijelaskan sebelumnya. Uji coba meliputi perancangan sistem
yang memiliki kapabilitas untuk memenuhi tujuan, pengkodean program menggunakan editor SciTe, dan uji coba
yang dilakukan pada sistem operasi ubuntu 10.4.

4. HASIL DAN PEMBAHASAN
4.1 Pembahasan
        Nordrassil Project di bangun menggunakan PHP dan framework extjs. Prinsip utama Nordrassil Project
adalah membuat file-file kode sumber berdasarkan struktur yang dikehendaki dan pola template script yang
dikehendaki user. Proses pembangkitan kode sumber tersebut dapat digambarkan sebagai berikut:

               Template Script + Struktur --> Kode Sumber


         Penggunaan Nordrassil Project sendiri dapat dilakukan secara stand-alone, maupun online (terkoneksi
pada jaringan). Karena Nordrasil Project adalah sebuah sistem web, maka untuk menggunakan Nordrassil Project,
user harus memiliki web browser (dalam hal ini disarankan untuk menggunakan mozilla firefox versi 3.5.2 ke atas,
walaupun Nordrassil Project dapat pula bekerja pada mozilla firefox versi yang lebih rendah, atau bahkan pada web
browser lain. Pada penggunaan stand-alone, user membutuhkan server apache, interpreter php dan server MySQL
lokal. Untuk itu, user dapat menginstall terlebih dahulu program semacam XAMPP yang didalamnya telah
mencakup semua prasyarat di atas. Sedangkan untuk penggunaan secara online, user harus memiliki akses jaringan
ke server tempat Nordrassil Project terinstall.

        Aliran data yang terjadi pada Nordarssil Project, secara lengkap dapat digambarkan dalam konteks
diagram berikut:




                                                                                                                   4
Gambar 1. Context Diagram Nordarssil Project

           Proses di atas dapat dibagi menjadi dua proses besar. Yaitu proses setup dan proses penggunaan. Proses
setup adalah proses yang harus dilakukan setelah proses intallasi, agar Nordrassil Project dapat digunakan dengan
baik Secara khusus, ada dua proses yang dapat digolongkan sebagai proses setup. Proses pertama adalah proses
registrasi script yang harus dilakukan oleh administrator. Template Script yang akan diregistrasikan terletak dalam
sebuah direktori dengan isi sebagai berikut:
? File register.php
    Berfungsi untuk meregistrasikan keseluruhan script ke dalam database nordrassil, sehingga nantinya user dapat
    memilih script mana yang akan digunakan.
? File main
    Merupakan inti script. Di dalamnya dapat diletakkan kode-kode html dan kode-kode javascript.
? Direktori res
Berfungsi sebagai tempat diletakkannya file-file resource (seperti file gambar atau binary) yang tidak mungkin atau
    sulit di generate menggunakan javascript.
Untuk meregistrasikan script, administrator harus terlebih dahulu mengunggah atau menyalin direktori berisi
template script baru ke dalam direktori script, bergantung pada letak instalasi Nordrassil Project. Jika Nordrassil
Project diletakkan pada server berbasis UNIX, maka direktori template script yang baru.harus diletakkan di
/var/www/nordrassil/script/ (atau disesuaikan dengan letak instalasi Nordrasil Project). Sedangkan jika Nordrassil
diletakkan pada server XAMPP yang ada di komputer lokal, maka direktori template script yang baru harus
diletakkan di C:xampphtdocsnordrassilscript. (atau disesuaikan dengan letak instalasi Nordrasil Project).
Kemudian administrator harus menjalankan file register.php dari sisi server (dapat dilakukan dengan bantuan
browser). Hal tersebut dapat dilakukan dengan cara mengakses alamat url:

        http://NamaServer/nordrassil/script/DirektoriTemplateScriptBaru/register.php


Di mana NamaServer adalah nama atau IP server. Untuk penggunaan stand alone dapat digunakan ¡°localhost¡± atau
alamat IP ¡°127.0.0.1¡±. Sedangkan DirektoriTemplateScriptBaru adalah nama direktori template script baru. Alamat
di atas tidaklah mutlak, tergantung pada kebijakan yang ditetapkan oleh pengelola server. Berikut adalah aliran data
yang terjadi saat administrator meregistrasikan template script baru:




                                                                                                                  5
Gambar 2. Aliran Data Registrasi Template Script Baru

        Selain registrasi template script baru, juga harus dilakukan registrasi user. Proses ini dapat dilakukan oleh
user melalui menu sign-up yang telah disediakan. Proses ini sangatlah sederhana, layaknya saat registrasi accouunt
di yahoo mail ataupun gmail. Aliran data yang terjadi di sini adalah sebagai berikut:




                                         Gambar 3. Aliran Data Registrasi User


         Setelah proses-proses setup di atas selesai dilakukan, maka user yang telah terregistrasi dapat melakukan
pendefinisian struktur dan pembangkitan kode sumber.
         Proses pendefinisian struktur dapat dilakukan dengan cara membuat atau menghapus node dan mengisi
attribute dari setiap node yang disajikan dalam bentuk struktur pohon. Aliran data yang terjadi pada saat
pendefinisian struktur adalah:




                                  Gambar 4. Aliran Data Proses Pendefinisian Struktur

Setelah proses pendefinisian struktur selesai, maka user dapat membangkitkan kode sumber berdasarkan script yang
sudah ada. Aliran data yang terjadi pada proses pembangkitan kode sumber adalah sebagai berikut:




                              Gambar 5. Aliran Data Proses Pembangkitan Kode Sumber




                                                                                                                   6
4.2 Hasil
         Ada dua template script yang diuji coba di sini, yakni template script goFrendi Simple MySQL Generator
0.0.0.1 untuk mengenerate kode skema database dan template script goFrendi Simple Delphi Generator 0.0.0.1
untuk mengenerate kode sumber aplikasi basis data untuk Embarcadero Delphi 2010. Sedangkan struktur yang
digunakan adalah struktur sederhana yang terdiri dari sebuah database dengan tiga tabel (employee, activity dan
project) dan aplikasi sederhana yang terdiri dari 3 form, yakni form utama, form employee dan form project.
Struktur tersebut diciptakan melalui proses pendefinisian struktur yang dapat digambarkan dengan antar muka/
interface sebagai berikut:




                                    Gambar 6. Interface Nordrassil Project


        Struktur tersebut sebenarnya tersimpan dalam tabel node dan tabel attr, untuk selanjutnya di ekspor dalam
format JSON (javascript object notation) oleh sistem, sehingga proses pembuatan script dapat berjalan dengan lebih
mudah.
        Setelah proses pendefinisian struktur selesai, maka user dapat memilih script yang akan digunakan. Proses
pemilihan script dapat diilakukan dengan melakukan klik pada tombol Execute Script. Script yang ada kemudian
dimunculkan dalam sebuah jendela sederhana.




                                                                                                                7
Gambar 7. Interface Pemilihan Template Script

         Kemudian user dapat memilih script template yang akan dijalankan dengan cara mengklik salah satu link
yang telah disediakan. Proses pembuatan kode sumber akan berlangsung secara otomatis, tergantung pada isi script
template. Jika diperlukan, developer dapat membuat template script yang memiliki kemampuan untuk berinteraksi
dengan user, misalnya untuk menanyakan ODBC Driver yang digunakan dalam pembangkitan kode program. Hal
tersebut dapat dilakukan dengan perintah ¡°prompt¡± yang ada pada javascript. Setelah semua proses ini selesai, user
akan mendapatkan sebuah link untuk mengunduh kode sumber yang dikehendakinya.




                                      Gambar 8. Interface Execute Script


         Hasil pengunduhan adalah sebuah file bertipe zip file, yang berisi file kode skema basis data maupun
aplikasi basis data. Jika yang dibangkitkan adalah file kode skema basis data, maka file tersebut harus diimport ke
dalam RDBMS yang bersangkutan. Sedangkan jika yang dibangkitkan adalah kode sumber program, maka harus
dilakukan proses kompilasi sesuai dengan kompiler yang bersangkutan.
         Pada uji coba, digunakan RDBMS MySQL dan kompiler Embarcadero Delphi Delphi 2010 sesuai dengan
template script yang telah dipilih sebelumnya. Hasil Kompilasi program terdiri dari tiga buah form. Form pertama
adalah form utama yang memiliki sebuah menu dengan dua buah sub menu (sesuai dengan yang telah didefinisikan
dalam struktur). Jika sub menu pertama (Employee) diklik maka akan muncul form employee, sedangkan jika menu
project diklik maka akan muncul form project. Berikut adalah tampilan dari form utama:




                                       Gambar 9. Interface Form Utama




        Form kedua adalah form Employee (pegawai) yang memiliki kapabilitas untuk insert, update dan delete
data. Berikut adalah tampilan form kedua:



                                                                                                                 8
Gambar 10. Interface Form Pegawai

         Form terakhir adalah form Project yang memiliki kapabilitas untuk insert, update, delete serta hubungan
master-detail dan lookup. Hubungan master detail akan terlihat saat user berpindah dari data satu data project ke
data project yang lain, maka data activity yang terkait juga akan berubah. Sementara fasilitas lookup akan terlihat
saat user memilih data employee yang akan dimasukkan dalam tabel activity




                                    Gambar 11. Interface Form Penugasan




                                                                                                                 9
5. PENUTUP
5.1 Kesimpulan
    1. Nordrassil Project dapat digunakan untuk membantu membuat aplikasi database sederhana secara cepat
        dan tepat.
    2. Pengembangan Nordrassil Project ke depan akan lebih mudah dibandingkan produk-produk pembangkit
        source code sejenis, karena template script dapat ditulis menggunakan javscript yang umum digunakan
        serta mudah dipelajari oleh banyak programmer.

5.2 Saran
     1. Template Script yang pernah dibuat hendaknya diunggah ke suatu media penyimpanan di internet sehingga
        semua orang dapat menggunakannya.
     2. Diperlukan usaha dan bantuan dari developer lain maupun developer Nordrassil Project untuk membuat
        template script lain untuk kebutuhan yang berbeda

6. DAFTAR PUSTAKA
    1. Introducing databases by Stephen Chu, in Conrick, M. (2006) Health informatics: transforming healthcare
       with technology, Thomson, ISBN 0-17-012731-1, p. 69.
    2. Zainal Arifin & Smitdev Community, 36 Menit Belajar Komputer: Php Dan Mysql. Elex Media
       Komputindo.
    3. Flanagan, David; Ferguson, Paula (2002). JavaScript: The Definitive Guide (4th ed.). O'Reilly &
       Associates.
    4. Eckerson, Wayne W. Three Tier Client/Server Architecture: Achieving Scalability, Performance, and
       Efficiency in Client Server Applications. Open Information Systems 10, 1 (January 1995): 3(20)
    5. Frederick, Shea; Ramsay, Colin; 'Cutter' Blades, Steve (November 28, 2008). Learning Ext JS (1st ed.).
       Packt Publishing.
    6. Fathansyah. (November 2007). Buku Teks Komputer Basis Data. Penerbit Informatika
    1. Fathansyah. (November 2007). Buku Teks Komputer Basis Data. Penerbit Informatika




                                                                                                           10

More Related Content

Nordrassil project web pembangkit ddl dan kode sumber aplikasi basis data

  • 1. Nordrassil Project : Web Pembangkit DDL dan Kode Sumber Aplikasi Basis Data Go Frendi Gunawan, Hendra Suprayogi, Tri Y. Evelina Lembaga Penelitian dan Pengabdian pada Masyarakat, Sekolah Tinggi Informatika dan Komputer Indonesia Email: frendi@stiki.ac.id, highlander@stiki.ac.id, trievelina@stiki.ac.id Abstrak Nordrassil Project adalah web yang dapat menciptakan DDL maupun kode sumber aplikasi basis data. Tujuan dari penelitian ini adalah untuk membantu programmer, atau bahkan orang awam, untuk dapat merancang dan membuat sendiri DDL dan kode aplikasi basis data secara mudah, cepat dan tepat. Nordrassil Project juga menyediakan fasilitas untuk menggunakan template script sendiri berbasis javascript dengan sedikit tambahan fungsi API untuk men membangkitkan file, sehingga pengguna dapat menentukan sendiri kode skema basis data dan kode aplikasi basis data umum yang akan di generate oleh template script buatan mereka. Pengembangan Nordrassil Project tidak hanya akan bergantung pada satu pihak saja. Semakin variatif template script yang ada pada Nordrassil Project, maka akan semakin banyak pula kemungkinan jenis aplikasi basis data jenis skema basis data yang dapat dibuat. Kata kunci : Nordrassil Project, Web, DDL, Kode Sumber Aplikasi Basis Data 1. PENDAHULUAN Permintaan akan adanya aplikasi berbasis data telah meningkat dengan pesat. Mulai dari aplikasi desktop, sampai aplikasi web. Sesuai dengan kebutuhan dari pengguna. Oleh sebab itu, para praktisi teknologi informasi harus sanggup menangani permintaan yang demikian besar. Namun seringkali banyak waktu yang dihabiskan untuk melakukan hal-hal yang sebenarnya bisa diotomatisasi, seperti menulis perintah SQL untuk select, insert, update dan delete. Atau menata tampilan antar muka agar terlihat rapi. Penggunaan alat bantu yang dapat mengotomatisasi hal- hal tersebut akan sangat membantu praktisi teknologi informasi untuk menangani permintaan pengguna. Pembuatan suatu aplikasi berbasis data tak lepas dari rancangan antar muka pengguna, rancangan bisnis dan rancangan basis data. Ketiga proses tersebut sebenarnya memiliki pola yang mirip dan berulang. Pola-pola yang mirip dan berulang itu sebenarnya akan dapat dilakukan dengan lebih cepat dan lebih bebas dari kesalahan jika dilakukan oleh komputer yang memiliki tingkat akurasi cukup tinggi, daripada dilakukan oleh manusia. Untuk meminimalkan kesalahan yang dilakukan oleh manusia, diciptakan sebuah web yang disebut Nordrassil Project. Web tersebut dapat menciptakan DDL maupun kode sumber aplikasi basis data yang selanjutnya akan disebut sebagai kode sumber. Proses pembangkitan kode sumber akan didasarkan pada struktur yang telah didefinisikan oleh user, sesuai aturan yang telah disediakan sistem. Selain itu, proses pembangkitan kode sumber juga didasarkan pada pola yang terdefinisikan dalam template script. Template script sendiri tertulis dalam bentuk gabungan antara html dan javascript serta fungsi API yang disediakan oleh sistem. Tujuan dari penelitian ini adalah membuat sistem terprogram yang memiliki akurasi tinggi untuk membantu programmer, atau bahkan orang awam, untuk dapat merancang dan membuat sendiri kode skema basis data dan kode aplikasi basis data secara mudah, cepat dan tepat. Bagi pengguna dari kalangan akademisi atau praktisi teknik informatika, Nordrassil Project juga menyediakan fasilitas untuk menggunakan template script sendiri berbasis javascript dengan sedikit tambahan fungsi API untuk men generate file. Dengan demikian, pengguna dari kalangan akademisi maupun praktisi teknik informatika dapat menentukan sendiri kode skema basis data dan kode aplikasi basis data umum yang akan di generate oleh template script buatan mereka. Sementara itu, pengguna dari kalangan awam dapat menggunakan template script yang dibuat oleh kalangan akademisi dan praktisi teknik informatika. Selain itu, pengembangan Nordrassil Project diharapkan tidak hanya akan bergantung pada satu pihak saja. Semakin variatif template script yang ada pada Nordrassil Project, maka akan semakin banyak pula kemungkinan jenis kode sumber yang dapat dibuat. 1
  • 2. Dalam uji coba yang dilakukan, digunakan template script goFrendi.simpleMySQL untuk membangkitkan DDL MySQL dan template script goFrendi.simpleDelphi untuk membangkitkan kode sumber aplikasi basis data dalam bahasa pemrograman Embarcadero Delphi 2010. Tujuan dari penelitian ini adalah menciptakan prototype system yang dapat membantu men generate kode skema basis data dan kode sumber aplikasi basis data secara sederhana. Sedangkan ruang lingkup yang dibahas mengenai kode sumber program yang digenerate memiliki kapabilitas untuk insert, update dan delete, dan menampilkan data secara sederhana, bergantung pada kerumitan template script yang digunakan. Kode Skema Basis Data yang digenerate mencakup table, primary key, foreign key, unique key, serta constraint NOT NULL dan AUTO INCREMENT, bergantung pada kerumitan template script yang digunakan. Selanjutnya manfaat yang diperoleh dalam penelitian ini dapat membantu proses pembelajaran yang berkaitan dengan sistem berbasis data agar pengguna dapat langsung menunjukkan konsep yang dimaksud secara cepat dan tepat, tanpa perlu melakukan kegiatan pemrograman. Selain itu, membantu praktisi teknologi informasi dan kalangan awam untuk dapat membuat sistem aplikasi basis data secara cepat dan tepat, sehingga dapat berkonsentrasi pada hal-hal lain. 2. TINJAUAN PUSTAKA 2.1 Basis Data Kumpulan dari item data yang saling berhubungan satu dengan yang lainnya yang diorganisasikan berdasarkan sebuah skema atau struktur tertentu, tersimpan di hardware komputer dan dengan software untuk melakukan manipulasi untuk kegunaan tertentu. Ada juga yang mendefinisikan basis data adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Ada dua macam kode yang dapat digunakan dalam mengolah basis data ? Data Definition Language (DDL), merujuk pada kumpulan perintah yang dapat digunakan untuk mendefinisikan objek ¨C objek basis data, seperti membuat sebuah tabel basis data atau indeks primer atau sekunder. ? Data Manipulation Language (DML), mengacu pada kumpulan perintah yang dapat digunakan untuk melakukan manipulasi data, seperti penyimpanan data ke suatu tabel, kemudian mengubahnya dan menghapusnya atau hanya sekedar menampilkannya kembali. 2.2 Aplikasi Basis Data Aplikasi basis data adalah aplikasi yang menyediakan sejumlah menu yang sesuai dengan berbagai aktivitas nyata yang memang dilakukan oleh para pemakai akhir (end-user). Selanjutnya, pilihan menu user ini akan diterjemahkan oleh aplikasi tersebut menjadi sebuah operasi basis data elementer yang memang dapat dikenali/dikerjakan oleh DBMS. 2.3 Client-Server Client-Server adalah arsitektur jaringan yang memisahkan client (biasanya aplikasi yang menggunakan GUI) dengan server. Masing-masing client dapat meminta data atau informasi dari server. Sistem client server didefinisikan sebagai sistem terdistribusi, tetapi ada beberapa perbedaan karakteristik yaitu : 1. Servis (layanan) ? Hubungan antara proses yang berjalan pada mesin yang berbeda ? Pemisahan fungsi berdasarkan ide layanannya. ? Server sebagai provider, client sebagai konsumen 2. Sharing resources (sumber daya) Server bisa melayani beberapa client pada waktu yang sama, dan meregulasi akses bersama untuk share sumber daya dalam menjamin konsistensinya. 3. Asymmetrical protocol (protokol yang tidak simetris ) Many-to-one relationship antara client dan server.Client selalu menginisiasikan dialog melalui layanan permintaan, dan server menunggu secara pasif request dari client. 4. Transparansi lokasi Proses yang dilakukan server boleh terletak pada mesin yang sama atau pada mesin yang berbeda melalui jaringan.Lokasi server harus mudah diakses dari client. 5. Mix-and-Match Perbedaan antara platform server dan platform client 2
  • 3. 6. Pesan berbasiskan komunikasi Interaksi server dan client melalui pengiriman pesan yang menyertakan permintaan dan jawaban. 7. Pemisahan interface dan implementasi Server dapat diupgrade tanpa mempengaruhi client selama interface pesan yang diterbitkan tidak berubah. 2.4 Tipe Client-Server Tipe-tipe client server yang digunakan sebagai berikut: 1. File Servers ? File server vendors mengklaim bahwa mereka pertama menemukan istilah client-server. ? Untuk sharing file melalui jaringan 2. Database Servers ? Client mengirimkan SQL requests sebagai pesan pada database server,selanjutnya hasil perintah SQL dikembalikan ? Server menggunakan kekuatan proses yang diinginkan untuk menemukan data yang diminta dan kemudian semua record dikembalikan pada client. 3. Transaction Servers (Transaksi Server) ? Client meminta remote procedures yang terletak pada server dengan sebuah SQL database engine. ? Remote procedures ini mengeksekusi sebuah grup dari SQL statement ? Hanya satu permintaan / jawaban yang dibutuhkan untuk melakukan transaksi 4. Groupsware Servers ? Dikenal sebagai Computer-supported cooperative working ? Manajemen semi-struktur informasi seperti teks, image, , bulletin boards dan aliaran kerja ? Data diatur sebagai dokumen 5. Object Application Servers ? Aplikasi client/server ditulis sebagai satu set objek komunikasi ? Client objects berkomunikasi dengan server objects melalui Object Request Broker (ORB) ? Client meminta sebuah method pada remote object 6. Web Application Servers (Aplikasi Web Servers) ? World Wide Web adalah aplikasi client server yang pertama yang digunakan untuk web. ? Client dan servers berkomunikasi menggunakan RPC seperti protokol yang disebut HTTP. 2.5 PHP PHP (akronim dari PHP Hypertext Preprocessor) yang merupakan bahasa pemrograman berbasis web yang memiliki kemampuan untuk memproses data dinamis. PHP dikatakan sebagai sebuah server-side embedded script language artinya sintaks-sintaks dan perintah yang diberikan akan sepenuhnya dijalankan oleh server tetapi disertakan pada halaman HTML biasa. Aplikasi-aplikasi yang dibangun oleh PHP pada umumnya akan memberikan hasil pada web browser, tetapi prosesnya secara keseluruhan dijalankan di server. Pada prinsipnya server akan bekerja apabila ada permintaan dari client. Dalam hal ini client menggunakan kode-kode PHP untuk mengirimkan permintaan ke server (dapat dilihat pada gambar dibawah). Ketika menggunakan PHP sebagai server-side embedded script language maka server akan melakukan hal-hal sebagai berikut : ? Membaca permintaan dari client/browser ? Mencari halaman/page di server ? Melakukan instruksi yang diberikan oleh PHP untuk melakukan modifikasi pada halaman/page. ? Mengirim kembali halaman tersebut kepada client melalui internet atau intranet. 2.6 JavaScript JavaScript adalah bahasa skrip yang populer di internet dan dapat bekerja di sebagian besar penjelajah web populer. JavaScript pertama kali dikembangkan oleh Brendan Eich dari Netscape dibawah nama Mocha, yang nantinya namanya diganti menjadi LiveScript, dan akhirnya menjadi 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. 2.7 ExtJS Librari extjs adalah librari JavaScript yang dikembangkan untuk memudahkan pembuatan user interface. Librari ini awalnya adalah extension dari librari Yahoo User Interface (YUI/yui), awalnya dikenal sebagai yui-ext 3
  • 4. (http://www.yui-ext.com). Extjs adalah nama baru dari yui-ext. extjs dikembangkan pertama kali oleh Jack Slockum, sebagai librari khusus dari yui. Kini extjs bukanlah librari khusus untuk yui saja, tetapi merupakan librari JavaScript yang bisa digunakan oleh banyak librari dan framework lainnya, seperti JQuery, Prototype, atau Scriptaculous (extension dari Prototype). Pemrogram web dapat dengan mudah membuat tampilan aplikasi berbasis web. tampilan tidak seperti halaman HTML, tetapi lebih mirip seperti aplikasi berbasis Windows. Librari extjs sangat memudahkan kita untuk membuat tampilan, dan menggunakan teknik pemrograman AJAX, sehingga aplikasi berbasis web yang dihasilkan menjadi seperti aplikasi Windows pada umumnya. 2.8 Lisensi Librari extjs ini memiliki lisensi: ? Lisensi komersial Lisensi komersial memiliki skema harga berdasarkan jumlah pengembang web yang akan mengembangkan aplikasi dengan menggunakan extjs. Suatu perusahaan dapat membeli lisensi komersial ini, dari seharga $249 untuk 1 developer, $850 untuk 5 developer, dan sekitar $2000 untuk 25 developer. ? Lisensi Opensource Lisensi opensource LGPL disediakan oleh tim extjs, jika ingin mengembangkan aplikasi yang memanfaatkan librari ini, dan akan dilepaskan sebagai aplikasi opensource juga yang memiliki lisensi LGPL. Akan tetapi extjs juga bisa diperoleh secara cuma-cuma, apabil apabila aplikasi yang dikembangkan ini digunakan secara komersial, tetapi sebagai developer tidak melakukan layanan dukungan atas aplikasi yang dihasilkan. 3. METODOLOGI Metodologi yang digunakan adalah studi literatur dan uji coba. Studi literatur melingkupi pembelajaran mengenai materi-materi terkait, seperti yang telah dijelaskan sebelumnya. Uji coba meliputi perancangan sistem yang memiliki kapabilitas untuk memenuhi tujuan, pengkodean program menggunakan editor SciTe, dan uji coba yang dilakukan pada sistem operasi ubuntu 10.4. 4. HASIL DAN PEMBAHASAN 4.1 Pembahasan Nordrassil Project di bangun menggunakan PHP dan framework extjs. Prinsip utama Nordrassil Project adalah membuat file-file kode sumber berdasarkan struktur yang dikehendaki dan pola template script yang dikehendaki user. Proses pembangkitan kode sumber tersebut dapat digambarkan sebagai berikut: Template Script + Struktur --> Kode Sumber Penggunaan Nordrassil Project sendiri dapat dilakukan secara stand-alone, maupun online (terkoneksi pada jaringan). Karena Nordrasil Project adalah sebuah sistem web, maka untuk menggunakan Nordrassil Project, user harus memiliki web browser (dalam hal ini disarankan untuk menggunakan mozilla firefox versi 3.5.2 ke atas, walaupun Nordrassil Project dapat pula bekerja pada mozilla firefox versi yang lebih rendah, atau bahkan pada web browser lain. Pada penggunaan stand-alone, user membutuhkan server apache, interpreter php dan server MySQL lokal. Untuk itu, user dapat menginstall terlebih dahulu program semacam XAMPP yang didalamnya telah mencakup semua prasyarat di atas. Sedangkan untuk penggunaan secara online, user harus memiliki akses jaringan ke server tempat Nordrassil Project terinstall. Aliran data yang terjadi pada Nordarssil Project, secara lengkap dapat digambarkan dalam konteks diagram berikut: 4
  • 5. Gambar 1. Context Diagram Nordarssil Project Proses di atas dapat dibagi menjadi dua proses besar. Yaitu proses setup dan proses penggunaan. Proses setup adalah proses yang harus dilakukan setelah proses intallasi, agar Nordrassil Project dapat digunakan dengan baik Secara khusus, ada dua proses yang dapat digolongkan sebagai proses setup. Proses pertama adalah proses registrasi script yang harus dilakukan oleh administrator. Template Script yang akan diregistrasikan terletak dalam sebuah direktori dengan isi sebagai berikut: ? File register.php Berfungsi untuk meregistrasikan keseluruhan script ke dalam database nordrassil, sehingga nantinya user dapat memilih script mana yang akan digunakan. ? File main Merupakan inti script. Di dalamnya dapat diletakkan kode-kode html dan kode-kode javascript. ? Direktori res Berfungsi sebagai tempat diletakkannya file-file resource (seperti file gambar atau binary) yang tidak mungkin atau sulit di generate menggunakan javascript. Untuk meregistrasikan script, administrator harus terlebih dahulu mengunggah atau menyalin direktori berisi template script baru ke dalam direktori script, bergantung pada letak instalasi Nordrassil Project. Jika Nordrassil Project diletakkan pada server berbasis UNIX, maka direktori template script yang baru.harus diletakkan di /var/www/nordrassil/script/ (atau disesuaikan dengan letak instalasi Nordrasil Project). Sedangkan jika Nordrassil diletakkan pada server XAMPP yang ada di komputer lokal, maka direktori template script yang baru harus diletakkan di C:xampphtdocsnordrassilscript. (atau disesuaikan dengan letak instalasi Nordrasil Project). Kemudian administrator harus menjalankan file register.php dari sisi server (dapat dilakukan dengan bantuan browser). Hal tersebut dapat dilakukan dengan cara mengakses alamat url: http://NamaServer/nordrassil/script/DirektoriTemplateScriptBaru/register.php Di mana NamaServer adalah nama atau IP server. Untuk penggunaan stand alone dapat digunakan ¡°localhost¡± atau alamat IP ¡°127.0.0.1¡±. Sedangkan DirektoriTemplateScriptBaru adalah nama direktori template script baru. Alamat di atas tidaklah mutlak, tergantung pada kebijakan yang ditetapkan oleh pengelola server. Berikut adalah aliran data yang terjadi saat administrator meregistrasikan template script baru: 5
  • 6. Gambar 2. Aliran Data Registrasi Template Script Baru Selain registrasi template script baru, juga harus dilakukan registrasi user. Proses ini dapat dilakukan oleh user melalui menu sign-up yang telah disediakan. Proses ini sangatlah sederhana, layaknya saat registrasi accouunt di yahoo mail ataupun gmail. Aliran data yang terjadi di sini adalah sebagai berikut: Gambar 3. Aliran Data Registrasi User Setelah proses-proses setup di atas selesai dilakukan, maka user yang telah terregistrasi dapat melakukan pendefinisian struktur dan pembangkitan kode sumber. Proses pendefinisian struktur dapat dilakukan dengan cara membuat atau menghapus node dan mengisi attribute dari setiap node yang disajikan dalam bentuk struktur pohon. Aliran data yang terjadi pada saat pendefinisian struktur adalah: Gambar 4. Aliran Data Proses Pendefinisian Struktur Setelah proses pendefinisian struktur selesai, maka user dapat membangkitkan kode sumber berdasarkan script yang sudah ada. Aliran data yang terjadi pada proses pembangkitan kode sumber adalah sebagai berikut: Gambar 5. Aliran Data Proses Pembangkitan Kode Sumber 6
  • 7. 4.2 Hasil Ada dua template script yang diuji coba di sini, yakni template script goFrendi Simple MySQL Generator 0.0.0.1 untuk mengenerate kode skema database dan template script goFrendi Simple Delphi Generator 0.0.0.1 untuk mengenerate kode sumber aplikasi basis data untuk Embarcadero Delphi 2010. Sedangkan struktur yang digunakan adalah struktur sederhana yang terdiri dari sebuah database dengan tiga tabel (employee, activity dan project) dan aplikasi sederhana yang terdiri dari 3 form, yakni form utama, form employee dan form project. Struktur tersebut diciptakan melalui proses pendefinisian struktur yang dapat digambarkan dengan antar muka/ interface sebagai berikut: Gambar 6. Interface Nordrassil Project Struktur tersebut sebenarnya tersimpan dalam tabel node dan tabel attr, untuk selanjutnya di ekspor dalam format JSON (javascript object notation) oleh sistem, sehingga proses pembuatan script dapat berjalan dengan lebih mudah. Setelah proses pendefinisian struktur selesai, maka user dapat memilih script yang akan digunakan. Proses pemilihan script dapat diilakukan dengan melakukan klik pada tombol Execute Script. Script yang ada kemudian dimunculkan dalam sebuah jendela sederhana. 7
  • 8. Gambar 7. Interface Pemilihan Template Script Kemudian user dapat memilih script template yang akan dijalankan dengan cara mengklik salah satu link yang telah disediakan. Proses pembuatan kode sumber akan berlangsung secara otomatis, tergantung pada isi script template. Jika diperlukan, developer dapat membuat template script yang memiliki kemampuan untuk berinteraksi dengan user, misalnya untuk menanyakan ODBC Driver yang digunakan dalam pembangkitan kode program. Hal tersebut dapat dilakukan dengan perintah ¡°prompt¡± yang ada pada javascript. Setelah semua proses ini selesai, user akan mendapatkan sebuah link untuk mengunduh kode sumber yang dikehendakinya. Gambar 8. Interface Execute Script Hasil pengunduhan adalah sebuah file bertipe zip file, yang berisi file kode skema basis data maupun aplikasi basis data. Jika yang dibangkitkan adalah file kode skema basis data, maka file tersebut harus diimport ke dalam RDBMS yang bersangkutan. Sedangkan jika yang dibangkitkan adalah kode sumber program, maka harus dilakukan proses kompilasi sesuai dengan kompiler yang bersangkutan. Pada uji coba, digunakan RDBMS MySQL dan kompiler Embarcadero Delphi Delphi 2010 sesuai dengan template script yang telah dipilih sebelumnya. Hasil Kompilasi program terdiri dari tiga buah form. Form pertama adalah form utama yang memiliki sebuah menu dengan dua buah sub menu (sesuai dengan yang telah didefinisikan dalam struktur). Jika sub menu pertama (Employee) diklik maka akan muncul form employee, sedangkan jika menu project diklik maka akan muncul form project. Berikut adalah tampilan dari form utama: Gambar 9. Interface Form Utama Form kedua adalah form Employee (pegawai) yang memiliki kapabilitas untuk insert, update dan delete data. Berikut adalah tampilan form kedua: 8
  • 9. Gambar 10. Interface Form Pegawai Form terakhir adalah form Project yang memiliki kapabilitas untuk insert, update, delete serta hubungan master-detail dan lookup. Hubungan master detail akan terlihat saat user berpindah dari data satu data project ke data project yang lain, maka data activity yang terkait juga akan berubah. Sementara fasilitas lookup akan terlihat saat user memilih data employee yang akan dimasukkan dalam tabel activity Gambar 11. Interface Form Penugasan 9
  • 10. 5. PENUTUP 5.1 Kesimpulan 1. Nordrassil Project dapat digunakan untuk membantu membuat aplikasi database sederhana secara cepat dan tepat. 2. Pengembangan Nordrassil Project ke depan akan lebih mudah dibandingkan produk-produk pembangkit source code sejenis, karena template script dapat ditulis menggunakan javscript yang umum digunakan serta mudah dipelajari oleh banyak programmer. 5.2 Saran 1. Template Script yang pernah dibuat hendaknya diunggah ke suatu media penyimpanan di internet sehingga semua orang dapat menggunakannya. 2. Diperlukan usaha dan bantuan dari developer lain maupun developer Nordrassil Project untuk membuat template script lain untuk kebutuhan yang berbeda 6. DAFTAR PUSTAKA 1. Introducing databases by Stephen Chu, in Conrick, M. (2006) Health informatics: transforming healthcare with technology, Thomson, ISBN 0-17-012731-1, p. 69. 2. Zainal Arifin & Smitdev Community, 36 Menit Belajar Komputer: Php Dan Mysql. Elex Media Komputindo. 3. Flanagan, David; Ferguson, Paula (2002). JavaScript: The Definitive Guide (4th ed.). O'Reilly & Associates. 4. Eckerson, Wayne W. Three Tier Client/Server Architecture: Achieving Scalability, Performance, and Efficiency in Client Server Applications. Open Information Systems 10, 1 (January 1995): 3(20) 5. Frederick, Shea; Ramsay, Colin; 'Cutter' Blades, Steve (November 28, 2008). Learning Ext JS (1st ed.). Packt Publishing. 6. Fathansyah. (November 2007). Buku Teks Komputer Basis Data. Penerbit Informatika 1. Fathansyah. (November 2007). Buku Teks Komputer Basis Data. Penerbit Informatika 10