MEMBANGUN FORM BUILDER UNTUK APLIKASI DATABASE DENGAN MENGGUNAKAN MICROSOFT VISUAL BASIC 2010 DAN MYSQL SERVER COVER NASKAH PUBLIKASI
diajukan oleh: Abdul Hadi 08.11.1921
kepada JURUSAN TEKNIK INFORMATIKA SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER AMIKOM YOGYAKARTA YOGYAKARTA 2013
Abdul Hadi
BUILDING FORM BUILDER FOR DATABASE APPLICATION USING MICROSOFT VISUAL BASIC 2010 AND MYSQL SERVER MEMBANGUN FORM BUILDER UNTUK APLIKASI DATABASE DENGAN MENGGUNAKAN MICROSOFT VISUAL BASIC 2010 DAN MYSQL SERVER
Abdul Hadi Ema Utami Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA
ABSTRACT
The need for database application or information sistem in daily life has been increasing, it is triggered by the competition in business and demand for fast and easy access to information. In an other hand, this need stimulates the appereances of new software vendors which will be going to fulfill the demand of cheap and realiable software, but creating software is not cheap, the high cost become a problem for small software vendors. Therefore another need rises, the need for application to help create these softwares in a faster and efficient way, so the cost will not be so high. Today there are many applications created for above purpose. Like Code Generator application, which created to generate many codes automatically in a single click. This application is very helpful in writing program. even though there are many code generator out there, but not many of them deploy a realiable and proven software architecture like MVP (Model View Presenter). The purpose of this research is to design and build an application which will generate the codes of CRUD (Create Read Update Delete) operation in database application that will deploy the MVP pattern varian passive view. Keywords : Code Generator, Form CRUD, MVP, Pattern
1.
Pendahuluan Dewasa ini penggunaan aplikasi Basis data dalam proses bisnis sudah kian populer.
Ini terlihat dari semakin banyak digunakannya aplikasi Basis data dalam membantu kegiatan bisnis sehari - hari. Mulai dari aplikasi POS (Point Of Sale) hingga Aplikasi Basis data Perbankan. Tentunya ini semua bukan tanpa sebab, karena di zaman yang serba instan dan cepat ini informasi untuk keperluan bisnis harus bisa didapat secara realtime dan akurat guna mendukung keputusan bisnis. Adanya permintaan akan Aplikasi Basis data yang cukup tinggi membuat vendor – vendor software bermunculan, tak terkecuali vendor lokal. Menurut laporan research IDC (International Data Corporation) di indonesia
tercatat Jumlah software house atau
independent software vendor (ISV) ada sekitar 250 pada tahun 2006, dan terus berkembang hingga mencapai 500 di tahun 2010. Vendor softwre ini nantinya akan bertugas untuk merancang aplikasi basis data untuk bisnis baik dalam skala kecil, menengah, hingga besar. Dalam merancang aplikasi basis data biasanya vendor Sofware akan menerapkan pola desain tertentu guna memudahkan perawatan (maintenance), perbaikan (bug fixing), dan penambahan fitur (update) di masa – masa yang akan datang. Penerapan pola desain tertentu juga memudahkahkan komunikasi antar programmer karena adanya kesamaan mindset, dan juga membuat peralihan tugas menjadi lebih mudah. Selain memberikan segudang manfaat, menerapkan pola desain tertentu juga membuat pekerjaan programmer menjadi lebih banyak dan rumit. Ini disebabkan programmer harus memecah kode – kode yang mereka tulis menjadi beberapa kelas kelas terpisah yang saling berhubungan. Tentunya jika di kerjakan secara manual akan memakan waktu yang lama. Hal ini juga akan meningkatkan development cost bagi perusahaan karena harus memperkerjakan lebih banyak programmer jika ingin pekerjaan lebih cepat selesai. Dengan melihat permasalahan di atas, penulis merasa perlu membuat sebuah aplikasi yang berfungsi men-generate kode – kode program yang selalu berulang dan mengikuti pola tertentu sehingga dapat menghemat waktu programmer dalam membuat aplikasi basis data. Dalam penelitian ini akan lebih dispesifikkan dalam membangun aplikasi form builder yang berfungsi men-generate kode – kode untuk Form operasi CRUD (CREATE READ UPDATA DELETE) pada sebuah aplikasi basis data dengan meggunakan pola desain MVP (Model View Presenter) Varian Passive View.
1
2.
Landasan Teori
2.1
Pola Desain
2.1.1
Definisi James W. Cooper dalam bukunya “Design Patterns and Object Oriented
Programming in Visual Basic 6 and VB.NET” memberikan beberapa definisi pola desain 1
dari berbagai macam sumber, yaitu : 1. “Design patterns are recurring solutions to design problems you see over and over.” (The Smalltalk Companion) 2. “Design patterns constitute a set of rules describing how to accomplish certain tasks in the realm of software development.” (Pree, 1994) 3. “Design patterns focus more on reuse of recurring architectural design themes, while frameworks focus on detailed design… and implementation.” (Coplien & Schmidt, 1995) 4. “A pattern addresses a recurring design problem that arises in specific design situations and presents a solution to it” (Buschmann, et. al. 1996) 5. “Patterns identify and specify abstractions that are above the level of single classes and instances, or of components.” (Gamma, et al., 1993) 2.1.2
Model View Presenter MVP (Model View Presenter) adalah pengembangan dari pola desain MVC.
Pada pola desain ini tugas controller digantikan oleh presenter. Tidak seperti di MVC di mana view bisa berkomunikasi langsung dengan model, pada pola desain MVP, view berkomunikasi dengan model melaui presenter. Berikut adalah gambar tentang konsep 2
MVP :
1
James W. Cooper, 2001. Design Petterns and Object Oriented Programming in Visual Basic 6 and VB.NET, hal. 22 2 Mike Potel, 1996. MVP: Model-View-Presenter The Taligent Programming Model for C++ and Java, Taligent, Inc., hal 6
2
Gambar 2.2 MVP 3
MVP juga terdiri dari tiga objek utama, yaitu : 1. Model, Model disini memiliki fungsi yang sama dengan model pada MVC hanya saja model pada MVP tidak berhubungan langsung dengan view, melainkan melalui presenter. 2. View, View disini memiliki fungsi yang sama dengan view pada MVC hanya saja view pada MVP tidak berhubungan langsung dengan model, melainkan melalui presenter. 3. Presenter, Presenter bertindak sebagai mediator antara view dan model. Berfungsi menerima permintaan user melalui view dan menetukan langkah apa yang harus diambil. Jika merupakan permintaan manipulasi database maka akan disampaikan ke model untuk diproses lebih lanjut. Begitu juga jika terjadi perubahan pada database, presenter akan mengirimkan perubahan yang didapat dari model ke view untuk ditampilkan. MVP adalah penerus MVC dan merupakan salah satu pola desain yang populer dalam linkungan .NET. sistem yang di desain menggunakan MVP juga memberikan kemudahan dalam proses unit testing sehingga memudahkan pengerjaan sistem secara paralel.
3
Mike Potel, 1996. MVP: Model-View-Presenter The Taligent Programming Model for C++ and Java, Taligent, Inc., hal 6
3
2.2
MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL (bahasa
Inggris: database management system) atau DBMS yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka juga menjual dibawah lisensi komersial untuk kasus-kasus dimana penggunaannya tidak 4
cocok dengan penggunaan GPL . Tidak sama dengan proyek-proyek seperti Apache, dimana perangkat lunak dikembangkan oleh komunitas umum, dan hak cipta untuk kode sumber dimiliki oleh penulisnya masing-masing, MySQL dimiliki dan disponsori oleh sebuah perusahaan komersial Swedia MySQL AB, dimana memegang hak cipta hampir atas semua kode sumbernya. Kedua orang Swedia dan satu orang Finlandia yang mendirikan MySQL AB adalah: David Axmark, Allan Larsson, dan Michael “Monty” Widenius. MySQL
adalah
Relational
Database
Management
System
(RDBMS)
yang
didistribusikan secara gratis dibawah lisensi GPL (General Public License). Dimana setiap orang bebas untuk menggunakan MySQL, namun tidak boleh dijadikan produk turunan yang bersifat closed source atau komersial. 2.3
Microsoft Visual Basic 2010 Visual Basic 2010 atau Visual Basic 10 merupakan paket teknologi bahasa
pemrograman dari Visual Studio yang dikembangkan oleh Microsoft. Bahasa visual basic digunakan untuk aplikasi windows yang berbsis GUI (Graphical User Interface). GUI adalah sebuah aplikasi yang menampilkan antarmuka secara grafis. Hal ini memudahkan 5
user/pemakai dalam mengoperasikan aplikasi . Visual Basic merupakan salah satu bahasa Object Oriented Programming (OOP) di mana pemrograman difokuskan pada suatu objek tertentu. Selain itu, visual basic juga dikenal dengan sebutan Event Driven Programming, yaitu program akan bekerja setelah ada respon dari user berupa event/kejadian tertentu (seperti tombol diklik, menu dipilih, memasukkan data pada text field, dan lain-lain). Ketika sebuah event terdeteksi, kode yang berada pada objek yang mendapat event akan dijalankan. Visual basic 2010 mempunyai beberapa fitur dalam kompiler dan bahasa, IDE (Integrated Development Environments), akses data dan lain-lain. Visual basic
4
Arbie, 2004. Manajemen Database Dengan MySQL, Penerbit Andi, hal. 1 Wahana Komputer, 2011. Panduan Aplikatif dan Solusi (PAS) Mirosoft Visual Basic 2010 dan MySQL Untuk Aplikasi Point Of Sales, Penerbit Andi, hal. 1 5
4
mempunyai beberapa bagian yang memudahkan untuk melakukan pemrograman 6
diantaranya adalah : 1. Menu Pada bagian menu terdapat 10 menu utama. Yaitu menu File, Edit, View, Project, Build, Debug, Data, Tools, Windows, Help. 2. Toolbar Toolbar memiliki fungsi yang sama dengan menu, hanya saja pilihannya berbentuk ikon. Ikon-ikon pada toolbar adalah pilihan-pilihan pada menu yang sering digunakan dalam pembuatan program aplikasi. 3. Toolbox Toolbox adalah tempat di mana kontrol-kontrol diletakkan. Kontrol-kontrol yang terdapat pada toolbox dipakai dalam pembuatan program aplikasi. Objek kontrol yang dibuat pada form aplikasi diambil dari kontrol-kontrol yang ada pada toolbox. 4. Solution Explorer Solution explorer adalah tempat untuk melihat daftar form dan modul yang digunakan dalam proyek. 5. Properties Properties adalah tempat properti setiap objek kontrol. Properties juga dipakai untuk mengatur properti dari objek kontrol yang dipakai. 6. Form Design Form Design adalah tempat untuk membuat tampilan (user interface) bagi program aplikasi yang akan dibuat. 7. Kode Editor Kode editor adalah tempat di mana menuliskan source code atau kode program dari aplikasi.
6
Wahana Komputer, 2011. Panduan Aplikatif dan Solusi (PAS) Mirosoft Visual Basic 2010 dan MySQL Untuk Aplikasi Point Of Sales, Penerbit Andi, hal. 2
5
Menu
Toolbar
Kode editor Solution explorer
Properties
Toolbox
Gambar 2.4 Tampilan IDE Visual Basic 2010 3.
Analisis dan Perancangan Sistem
3.1
Analisis Sistem Analisis sistem adalah penguraian dari suatu sistem secara utuh dengan
membaginya
menjadi
beberapa
bagian
komponen
dengan
maksud
untuk
mengidentifikasi dan mengevaluasi permasalahan, ketangguhan, hambatan dan kebutuhan yang diharapkan sehingga dapat di usulkan untuk perbaikan sistem. 3.1.1
Analisis Kebutuhan Sistem Analisis kebutuhan sistem merupakan langkah utuk mengidentifikasi kebutuhan –
kebutuhan baik alat maupun bahan yang akan digunakan untuk membantu dan mendukung proses pembuatan suatu sistem. Analisis ini juga berguna untuk pengembangan sistem baru yang diusulkan untuk menyelesaikan masalah di sistem lama yang direalisasikan. 3.1.1.1 Analisis kebutuhan fungsional Pembangunan aplikasi pencacah sel darah merah ini diharapkan dapat memenuhi beberapa kebutuhan fungsional, antara lain: a. Mengenerate kode kelas model b. Mengenerate kode kelas DAO c.
Mengenerate kode kelas interface DAO
d. Mengenerate kode kelas presenter e. Mengenerate kode kelas interface form f.
Mengenerate kode kelas form
6
g. Mengenerate kode kelas form designer h. Mengenerate file solution visual studio i.
Mengenerate file project visual studio
j.
Mengenerate file setting project visual studio
4.
Implementasi Sistem
4.1
Tampilan menu utama Pada form utama terdapat 4 menu, yaitu : menu buat projek baru, buat form
CRUD, menu setting koneksi database, dan menu about. Seblumnya membuat projek baru, user perlu memastikan semua konfigurasi koneksi database telah benar. Hal ini hanya perlu dilakukan sekali saja ketika user baru pertama kali menggunakan aplikasi ini atau ada perubahan dalam database dan server yang digunakan.
Gambar 4.1 Tampilan menu utama
7
4.2
Tampilan Form Koneksi
Gambar 4. 2 Form koneksi
4.3
Tampilan Form Buat Projek Baru
Gambar 4.3 Form buat projek baru
8
4.4
Tampilan Form Pilih Tabel :
Gambar 4.4 Form pilih tabel
4.5
Tampilan Form Generate
Gambar 4.5 Form generate
9
Gambar 4.6 Form edit
Gambar 4.7 Pesan form berhasil dibuat 5.
Kesimpulan Berdasarkan hasil pengujian yang dilakukan serta pengalaman empiris selama
pembuatan hingga pengujian, dapat diambil kesimpulan beberapa poin berikut ini: 1. Aplikasi sudah mampu menghasilkan form dan kelas - kelas yang bisa melakukan operasi dasar CRUD (Create Read Update Delete). 2. Aplikasi mampu menghasilkan Form CRUD yang menerapkan pattern MVP Varian Passive View. 3. Aplikasi ini bisa menghemat waktu programmer dalam membuat form CRUD aplikasi database karena programmer tidak lagi harus membuat semua dari awal tapi cukup menambahkan atau membuat perubahan pada fitur yang sudah ada. 4. Form CRUD yang dihasilkan bisa terintegrasi dengan Microsoft Visual Studio 2010 sehingga bisa langsung digunakan tanpa harus diimport dahulu.
10
DAFTAR PUSTAKA
Arbie. 2004. Manajemen Database Dengan MySQL, Yogyakarta : Penerbit Andi. Cooper, James. 2001. Design Petterns and Object Oriented Programming in Visual Basic 6 and VB.NET, IBM Thomas J Watson Research Center. Fatansyah. 1999. Basis Data, Bandung : Informatika Bandung. Kusrini. 2006. Strategi Perancangan dan Pengelolan Basis Data, Yogyakarta : Penerbit Andi. Potel, Mike. 1996. MVP: Model-View-Presenter The Taligent Programming Model for C++ and Java, Taligent, Inc. Sholiq. 2007. Pemodelan Sistem Informasi Berorientasi Objek dengan UML, Yogyakarta : Graha Ilmu. Utami, Ema dan Sukrisno. 2005. Konsep Dasar Pengolahan dan Pemrograman Database dengan SQL Server, Ms. Access, dan Ms. Visual Basic, Yogyakarta : Penerbit Andi. Wahana Komputer. 2011. Panduan Aplikatif dan Solusi (PAS) Mirosoft Visual Basic 2010 dan MySQL Untuk Aplikasi Point Of Sales, Yogyakarta : Penerbit Andi.
11