perancangan dan implementasi aplikasi pencatatan transaksi...
TRANSCRIPT
2
1. Pendahuluan
Telepon seluler (cellphone) sudah menjadi kebutuhan yang sangat penting
untuk melakukan komunikasi dan seiring dengan semakin umumnya cellphone,
kebutuhan akan pulsa cellphone pun meningkat sangat pesat. Dengan semakin
pesatnya teknologi, semakin banyak orang yang menyediakan jasa pengisian pulsa
elektronik. Pada saat ini pengisian pulsa lebih banyak di kelola oleh dealer-dealer
besar, dengan sistem Multi Level Marketing (MLM), kemudian para dealer merekut
orang yang di sebut reseller untuk menjual pulsa elektronik. Bagi para reseller pulsa
elektronik bisnis ini adalah salah satu bisnis yang menjanjikan selain konsumsi
masyarakat yang tinggi terhadap pulsa, reseller juga tidak diharuskan memiliki modal
yang sangat besar.
Sebagian besar dealer dalam merekut reseller hanya memberitahukan pada
para reseller cara untuk melakukan transaksi secara manual dan tidak memberikan
fasilitas yang memadai (contoh:pencatatan transaksi). Masalah yang sering timbul
adalah para reseller terkadang mengalami kesulitan untuk melakukan pencatatan
setelah melakukan transaksi, akibatnya adalah reseller dapat merugi karena beberapa
pembelian tidak tercatat.
Aplikasi pencatatan transaksi reseller pulsa elektronik dibutuhkan untuk
memberikan bantuan bagi para reseller dalam mengorganisasi transaksi dalam hal ini
adalah pencatatan transaksi yang sudah terjadi sehingga pengguna aplikasi bisa
mengetahui detail transaksi yang terjadi dan jika diperlukan dapat membuat laporan
transaksi. Teknologi yang dapat digunakan dalam aplikasi ini adalah Model View
Controller (MVC) dan Object Relational Mapping (ORM).
Dengan menggunakan teknologi MVC maka aplikasi akan memisahkan
data(model) dari tampilan (view) dan bagaimana cara meresponnya (controller)
sehingga ketika diperlukan perubahan tidak harus mengubah semua bagian dari
aplikasi tetapi bagian yang diperlukan saja. Sedangkan dengan menggunakan
teknologi ORM maka database akan dipetakan ke dalam bentuk objek, sehingga
proses penulisan kode program yang berhubungan dengan database akan menjadi
semakin sederhana. Atas dasar keunggulan teknologi MVC dan ORM aplikasi
dirancang menggunakan framework CakePHP yang merupakan framework Open
Source dan mendukung pemrograman berbasis OO (object oriented) yang dapat
digunakan untuk mengembangkan aplikasi web. Framework CakePHP juga
mendukung pengembangan aplikasi dengan penggunaan teknologi MVC dan ORM.
2. Kajian Pustaka
Beberapa penelitian yang telah ada menggunakan teknologi ORM sebagai
berikut : Perancangan dan Pembuatan Sistem Penggajian serta Fasilitas Pengisian
Pulsa Otomatis Via SMS untuk Karyawan Perusahaan “X”, yang berisi tentang
pembuatan sistem pengisian pulsa karyawan via sms [1].
Penelitian yang menggunakan framework CakePHP antara lain : Perancangan
dan Implementasi Sistem Informasi Kepegawaian Berbasis Web dengan Framework
CakePHP, yang membahas tentang keuntungan menggunakan framework CakePHP
untuk meningkatkan efektifitas dan profesionalime dalam berorganisasi [2].
3
Penelitian lainnya yang dilakukan adalah tentang, Implementasi Model View
Controller dan Object Relational Mapping pada Content Management Sistem Sistem
Informasi Keuangan. yang membahas tentang penggunaan MVC, ORM pada aplikasi
CMS Sistem informasi keuangan dan keuntungan yang didapat berdasarkan teori yang
ada [3].
Transaksi adalah sekumpulan instruksi atau operasi yang menjalankan sebuah
fungsi logis. Salah satu sifat yang harus dimiliki oleh transaksi adalah keatomikan.
Sifat ini menjadikan suatu transaksi sebagai suatu kesatuan sehingga pengeksekusian
instruksi-instruksi di dalamnya harus dijalankan secara keseluruhan atau tidak
dijalankan sama sekali. Hal ini dilakukan untuk menghindari terjadinya kesalahan
hasil eksekusi bila operasi-operasi yang ada dijalankan hanya sebagian saja. [4]
Sebuah transaksi berpeluang untuk „mengganggu‟ integritas basis data yang
dapat membuat kondisi/hubungan antar data tidak seperti seharusnya. Untuk
menjamin agar integritas dapat tetap terpelihara maka setiap transaksi harus memiliki
sifat-sifat: a. Atomik, dimana semua operasi dalam transaksi dapat dikerjakan
seluruhnya atau tidak sama sekali; b. Konsisten, dimana eksekusi transaksi secara
tunggal harus dapat menjamin data tetap konsisten setelah transaksi berakhir; c.
Terisolasi, jika pada sebuah sistem basis data terdapat sejumlah transaksi yang
dilaksanakan secara bersamaan, maka semua transaksi yang dilaksanakan pada saat
yang bersamaan tersebut harus dapat dimulai dan bisa berakhir; d. Bertahan, dimana
perubahan data yang terjadi setelah sebuah transaksi berakhir dengan baik, harus dapat
bertahan bahkan jika seandainya sistem menjadi mati.
Web Application Framework adalah aplikasi atau perangkat lunak pendukung
yang membantu dalam pengembangan website dinamis, web aplikasi dan web service.
Framework merupakan kumpulan dari basic function, class dan rule yang
secara keseluruhan menjadi satu kesatuan sebagai aplikasi yang membantu
perancangan dan pengembangan aplikasi yang lebih kompleks. Dalam penelitian yang
dilakukan, framework yang digunakan adalah framework yang khusus untuk
membantu perancangan dan pengembangan aplikasi berbasis web PHP.
Cakephp adalah sebuah framework atau kerangka kerja untuk membuat
aplikasi CRUD (Create, Read, Update, Delete) berbasis bahasa pemrograman PHP.
Cakephp juga menjadi salah satu framework pilihan yang memungkinkan seorang
developer web untuk membuat sebuah aplikasi dengan karakter pengembangan RAD
(Rapid Application Development), yang memungkinkan untuk digunakan dan
dikembangkan menjadi aplikasi lain yang lebih kompleks.
Beberapa keuntungan menggunakan CakePHP adalah : a. Ringan, CakePHP
adalah salah satu framework paling ringan. Salah satu prinsip CakePHP adalah “no
we-might-need-it code”, atau dengan kata lain, semua code dalam CakePHP adalah
bermanfaat dan selalu digunakan dalam pembuatan aplikasi. Tidak ada kode-kode
yang tidak berguna yang dapat memperbesar ukuran framework secara keseluruhan; b.
Kompatibel dengan PHP 4 dan PHP 5; c. Scaffolding feature. CakePHP mempunyai
fitur yang mampu men-generate prototype aplikasi, sebelum menyusun source code
secara lengkap. Cukup tambahkan variabel $scaffold di controller, dan Aplikasi sudah
bisa dinikmati; d. Mendukung AJAX.
MVC merupakan konsep untuk memudahkan pengelolaan pengembangan
aplikasi. Aplikasi yang semula ditulis dalam satu halaman, dipisah-pisahkan menjadi
tiga bagian yang terpisah, tapi saling berhubungan. Bagian-bagian itu adalah Model,
View, dan Controller.
4
Model mencakup semua proses yang terkait dengan pemanggilan struktur data
baik berupa pemanggilan fungsi, input processing atau mencetak output ke dalam
browser. Bisa dikatakan sebagai representasi aktif dari struktur database. Model berisi
class dan fungsi untuk mengambil, melakukan update dan menghapus data website.
Karena sebuah website menggunakan basis data dalam menyimpan data maka bagian
Model akan berhubungan dengan perintah-perintah query SQL. Model khusus
digunakan untuk melakukan koneksi ke basis data, oleh karena itu logika-logika
pemrograman yang berada didalam model juga harus yang berhubungan dengan basis
data.
View merupakan tampilan luar aplikasi yang akan dihadapi oleh user secara
langsung. View bisa dikatakan sebagai template dari tampilan aplikasi dan view tidak
boleh mengandung logika kerja aplikasi. View merupakan informasi yang ditampilkan
kepada user website. Didalam View tidak berisi logika-logika kode tetapi hanya berisi
variabel-variabel yang berisi data yang siap ditampilkan. View adalah halaman website
yang dibuat menggunakan HTML dengan bantuan CSS atau JavaScript. View hanya
dikhususkan untuk menampilkan data-data hasil dari model dan controller.
Controller adalah bagian yang paling signifikan dalam aplikasi berbasis MVC.
Controller akan mengolah data dari model, menyimpannya dalam variable-variabel
dan akan ditampilkan pada view. Controller merupakan penghubung antara Model dan
View. Didalam Controller inilah terdapat class dan fungsi-fungsi yang memproses
permintaan dari View ke dalam struktur data didalam Model. Controller tidak boleh
berisi kode untuk mengakses basis data. Tugas controller adalah menyediakan
berbagai variabel yang akan ditampilkan di view, memanggil model untuk melakukan
akses ke basis data, menyediakan penanganan error, mengerjakan proses logika dari
aplikasi serta melakukan validasi atau cek terhadap input.
Gambar 1 Struktur kerja MVC pada PHP [5]
ORM atau Object Relational Mapping merupakan teknik otomasi dan
transparansi dari object persistence ke dalam tabel pada basis data, menggunakan
metadata yang mendeskripsikan pemetaan antara objek dan basis data [5]. ORM
5
berperan dalam lapisan model dalam konsep MVC. Model adalah sebuah lapisan yang
paling dekat dengan sumber data, baik itu berasal dari basis data, webservice, maupun
file sistem.
Object Relational Mapping (ORM) adalah pengembangan pendekatan
perangkat lunak untuk memperlakukan data yang disimpan dalam relasional (SQL)
tabel database seolah-olah data yang disimpan merupakan sebuah objek [6]. Pada
dasarnya kita dapat membuat kelas dengan variabel yang mewakili bidang tabel
database. Untuk menyisipkan catatan tabel yang dibutuhkan untuk membuat sebuah
objek dari kelas, menetapkan nilai-nilai variabel, dan memanggil fungsi dari kelas
yang menangani memasukkan catatan tabel. Gambar 2 memperlihatkan arsitektur
ORM.
Gambar 2 Arsitektur ORM [7]
3. Perancangan Sistem
Dalam pengembangan aplikasi ini metode yang digunakan adalah metode
prototyping. Metode prototyping adalah metode yang dapat digambarkan sebagai
proses pembuatan model dari aplikasi yang akan dikembangkan. Dengan
menggunakan metode prototyping maka pengembang aplikasi dan user dapat saling
berinteraksi selama proses pembuatan aplikasi. Keuntungan menggunakan metode
prototyping adalah pengguna bisa mengetahui kesesuaian antara aplikasi yang akan
dihasilkan dengan kebutuhan mereka tanpa harus menunggu sampai aplikasi
diimplementasikan. Hal ini memungkinkan pengguna lebih cepat dalam memberikan
tanggapan yang dapat membawa solusi yang lebih baik dalam membangun aplikasi
tersebut. [9]
Adapun tahapan-tahapan yang harus dilalui dalam metode prototyping adalah
mengumpulkan informasi tentang kebutuhan aplikasi, dari kebutuhan tersebut
kemudian dibuat prototype nya. Pada pembuatan prototype, yang diutamakan adalah
proses masukan dan keluaran dari aplikasi sedangkan kualitas aplikasi yang dibagun
belum diperhatikan. Setelah melalui tahapan pembuatan prototype, tahapan
selanjutnya adalah memperlihatkan prototype tersebut kepada pengguna. Pada tahap
inilah evaluasai prtototype dilakukan, tiga tahapan tersebut berulang selama prototype
yang dibangun belum sesuai dengan kebutuhan pengguna.
6
Gambar 3 Permodelan Prototyping [9]
Langkah-langkah dalam model Prototyping adalah :
Pengumpulan kebutuhan, tahap ini dimulai dengan mengumpulkan bahan-
bahan dan mencari sumber informasi yang akan dipakai untuk membangun aplikasi.
Dalam hal ini melakukan wawancara terhadap sejumlah reseller. Dari tahap
wawancara tersebut diketahui kebutuhan secara umum aplikasi yang akan di bangun
nantinya
Berikut adalah Flowchart penjualan pulsa elektronik secara umum yang
diminta oleh resseler, dapat digambarkan seperti pada Gambar 4.
Pada Gambar 4 dapat dilihat proses yang di inginkan reseller dalam
melakukan transaksi. Dan untuk mendukung terciptanya aplikasi yang sesuai dengan
hasil wawancara dibutuhkan proses analisis aplikasi yang akan digunakan sebagai
acuan ke tahapan selanjutnya.
Secara garis besar analisis aplikasi akan meliputi analisis input, analisis alur
kerja aplikasi, dan analisis output.
Analisis Input, disini ditentukan inputan yang diperlukan aplikasi yang akan
dibuat. Dalam aplikasi yang dibuat diperlukan beberapa inputan antara lain berupa
data user, data pulsa, dan data transksi yang sebagian data ada yang dimasukkan oleh
user maupun secara otomatis oleh aplikasi ketika menerima sms. Dan semua data
tersebut akan dimasukkan dalam suatu database.
Analisis Alur Kerja Aplikasi, aplikasi yang dibuat merupakan aplikasi
pencatatan transaksi pingisian pulsa berbasis web dengan menggunakan framework
CakePHP. Aplikasi tersebut bertujuan untuk membantu reseller dalam proses
pengisian pulsa dan mencatat transaksi. Proses yang terjadi dalam aplikasi pengisian
pulsa pada aplikasi yang dibuat adalah user melakukan input data berupa data user,
data voucher, dan data transaksi.
Analisis Output, berdasarkan alur kerja aplikasi yang sudah dibuat, output
yang dihasilkan aplikasi berupa sms yang nantinya akan masuk ke database yang
kemudian akan diolah menjadi Laporan. Dari aplikasi yang telah dibuat diharapkan
mampu memenuhi kebutuhan dan mempunyai performa yang bagus setelah aplikasi
diujikan.
7
Gambar 4 Flowchart penjualan pulsa
Perancangan, Setelah semua kebutuhan telah dianalisis, langkah selanjutnya
adalah mendesain aplikasi dan hardware dan software yang akan digunakan,
perancangan dibagi menjadi dua bagian, yaitu: a. Perancangan Logika, bertujuan
mendapatkan dan menstrukturkan kebutuhan aplikasi secara keseluruhan. Dengan
perancangan logika didapat beberapa hasil yaitu: perincian data aplikasi, analisa
tampilan aplikasi dan aturan aplikasi; b. Perancangan Fisik, bertujuan
mengembangkan struktur kebutuhan yang ada di perancangan logika ke dalam sebuah
aplikasi. Dengan perancangan fisik didapat beberapa hasil, yaitu: struktur program,
basis data dan perancangan struktur fisik.
8
Melihat Pesan
Menghapus Pesan
Mengirim Pesan
Melakukan Transaksi
Melihat Transaksi
Melihat Voucher
Menambah Voucher
Menghapus Voucher
Inbox / Outbox
<<include>>
<<extend>>
<<extend>>
Transaksi
<<extend>>
<<include>>
Voucher
<<include>>
<<extend>>
<<extend>>
Report
Admin
Melihat Report
Menghapus Report
<<include>>
<<extend>>
Evaluasi Prototype, Pada tahap evaluasi, penulis akan melakukan pengujian
dan pengevaluasian terhadap aplikasi yang dapat membantu pencatatan transaksi
reseller ini pada para reseller. Jika dirasa aplikasi belum mampu memuaskan
pengguna, maka akan dilakukan perbaikan aplikasi kembali dengan memulai dari
tahap pengumpulan kebutuhan dari awal.
Perancangan sistem dibutuhkan untuk membantu proses pengembangan dan
untuk dokumentasi perangkat lunak aplikasi. Pada perancangan aplikasi ini digunakan
dengan menggunakan Unified Modelling Language (UML).
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah
sistem. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan
sistem.
Gambar 5 menjelaskan tentang usecase diagram Admin. Administrator
bertugas untuk melihat, melakukan pengubahan, penambahan maupun pengurangan
data pada semua bagian setelah melakukan login.
Gambar 5 Use Case Diagram Admin
Class diagram merupakan diagram yang selalu ada di permodelan sistem
berorientasi objek. Class diagram menunjukkan hubungan antar class dalam sistem
yang sedang dibangun dan bagaimana setiap class dapat saling berkolaborasi untuk
mencapai suatu tujuan. Class diagram aplikasi yang akan dibuat dapat dilihat pada
Gambar 6.
Pada Gambar 6 dijelaskan bahwa setiap pengguna yang melakukan apapun di
aplikasi harus mengisi form login terlebih dahulu. Kemudian akan di cek apakah
Username dan password tersimpan di basis data pengguna. Untuk mengisi data dan
mencari barang, kelas ini akan berhubungan dengan kelas nota dan transaksi yang
terhubung dengan kelas pengguna.
9
Mulai
login
Selesai
Memasukkan Username dan Password
Tidak sesuai
memilih menu
Sesuai
Menampilkan Halaman Inbox/Outbox
Menapilkan data secara keseluruhan
Melakukan Penambahan/Pengubahan/Penghapusan Data
Menampilkan kembali data
Menampilkan halaman Contact
Menapilkan data secara keseluruhan
Melakukan Penambahan/Pengubahan/Penghapusan Data
Menampilkan kembali data
Selesai
Menapilkan data secara keseluruhan
Melakukan Penambahan/Pengubahan/Penghapusan Data
Menampilkan kembali data
Selesai
Menampilakan Halaman Transaksi
Masuk Menu Pilihan
Membuka Database
Membuka Database
Membuka Database
Melakukan Pencarian
Menyimpan data
Melakukan Pencarian
Menyimpan data
Melakukan Pencarian
Menyimpan data
DatabaseSoftware SystemAdministrator
Gambar 6 Class Diagram transaksi
Activity diagrams menggambarkan berbagai alur aktivitas dalam aplikasi yang
sedang dirancang, bagaimana masing-masing alur berawal, decision yang mungkin
terjadi, dan bagaimana mereka berakhir.
Gambar 7 Activity Diagram User
10
Gambar 7 menjelaskan tentang alur secara umum dimulai dari login user
sampai menampilkan data. Jika username atau password benar, maka aplikasi akan
memberikan respon kepada aplikasi dengan menampilkan menu pada halaman utama.
Isi dari menu tersebut bisa dibagi menjadi tiga bagian, didalam setiap menu dapat
melihat data dan untuk beberapa menu terdapat ubah data, hapus data, dan tambah
data. Dan bagian terakhir dapat melakukan Logout untuk menyelesaikan proses.
4. Implementasi dan Analisa Hasil
Implementasi Arsitektur MVC pada Framework Sistem ini dirancang
menggunakan framework CakePHP. CakePHP yang menggunakan arsitektur MVC
yang pada proses awalnya akan membuat struktur tabel direktori yang terpisah antara
Models, Views, dan Controllers. Pada Gambar 8 diperlihatkan bagaimana MVC di
implementasikan.
Gambar 8 Arsitektur MVC
Models mewakili data dan digunakan dalam aplikasi Cakephp untuk akses
data. Dan dalam pemrograman berorientasi objek, model adalah sebuah objek yang
mewakili sesuatu (dalam hal ini mewakili data pada tabel databese). File Model di
simpan pada direktori app/models/. Contoh Model dapat dilihat di Kode Program 1.
Kode Program 1 Model Inbox <?php
class Inbox extends AppModel {
var $name = 'Inbox';
var $useDbConfig = 'default';
var $useTable = 'inbox';
var $order = 'Inbox.id DESC';
}?>
1
2
3
4
5
6
7
Views adalah tempat dimana pengaturan tampilan aplikasi dibuat. Di dalam
cakephp, view ditulis dalam kode PHP dan memiliki ekstensi default .CTP(CakePHP
Template), file-file ini berisi semua logika yang diperlukan untuk mendapatkan data
yang diterima dari controller dalam format yang sudah dipahami oleh user. File View
disimpan pada direktori app/views/. Pada CakePHP tampilan view dapat dibuat
11
dengan beberapa jalur, dan semua jalur mempunyai fungsi yang berbeda, Jalur yang
dimaksud adalah layouts, elements dan helpers. Contoh View dapat dilihat pada Kode
Program 2.
Kode Program 2 View Inbox <div id="second-nav"><ul>
<li><?php echo $html->link('New Inbox', array('action' => 'add'));
?></li>
</ul></div>
<h1>Invoices</h1>
<?php foreach ($inbox as $inbox): ?>
<?php echo $this->element('inbox', array('inbox' => $inbox)); ?>
<?php endforeach; ?>
<?php echo $this->element('pagination'); ?>
1
2
3
4
5
6
7
8
9
10
Controllers pada struktur MVC berisi tentang business logic dari aplikasi.
Controllers menangani dan meneruskan request yang dilakukan oleh client melalui
halaman aplikasi yang ditangani oleh views. File Controllers disimpan pada direktori
app/controllers/. Contoh controllers untuk tabel inbox ditunjukkan pada Kode
Program 3.
Kode Program 3 Controller Inbox <?php
class InboxController extends AppController {
var $name = 'Inbox';
var $helpers = array('Html', 'Form');
function index()
{
$this->set('inbox', $this->paginate());
}
function view($id = null)
{
$this->idEmpty($id, 'index');
$this->set('inbox', $this->Inbox->read(null, $id));
}
function delete($id = null)
{
$this->idEmpty($id, 'index');
if ($this->Inbox->delete($id))
{
$this->flashSuccess('Inbox berhasil dihapus', 'index');
}
}
} ?>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Dengan diimplementasikan teknologi MVC pada aplikasi pencatatan transaksi
reseller pulsa elektronik maka memudahkan dalam proses pengembangan aplikasi,
karena keteraturan penulisan kode program yang memisahkan kode program ke dalam
bagiannya masing-masing.
Implementasi ORM pada CakePHP berjalan pada bagian model, dengan
membuat class pada model bias diartikan telah membuat objek yang
mempresentasikan tabel pada database.
12
Didalam CakePHP relasi antara database pada tabel didefinisikan melalui
asosiasi, asosiasi merupakan cara untuk mewakilkan relasi antara database pada tabel
didalam CakePHP. Setelah asosiasi di definisikan dalam model sesuai dengan relasi
tabel, maka fungsi-fungsi yang di inginkan dapat digunakan. Dengan Menggunakan
ORM pada CakePHP sistem dapat menyimpan, mengubah, dan menghapus data yang
berhubungan didalamnya maupun data dari tabel yang lainnya, sehingga tidak perlu
menuliskan Syntax SQL dengan banyak JOIN lagi. Dan untuk menghubungkan tabel
satu dengan yang lainnya CakePHP menggunakan asosiasi hasOne untuk relasi one-
to-one, hasMany untuk relasi one-to-many, dan hasAndbelongsToMany untuk relasi
many to many.
Kode Program 4 Model ContactGroup <?php
class ContactGroup extends AppModel {
var $name = 'ContactGroup';
var $hasMany = array(
'Contact' => array('className' => 'Contact',
'foreignKey' => 'contact_group_id',
....
1
2
3
4
5
6
7
Kode Program 5 Model Contact <?php
class Contact extends AppModel {
var $name = 'Contact';
var $belongsTo = array(
'ContactGroup' => array('className' => 'ContactGroup',
'foreignKey' => 'contact_group_id',
....
1
2
3
4
5
6
7
Pada Kode Program 4 baris ke empat sampai dengan enam dan Kode Program
5 pada baris ke empat sampai dengan enam dapat dilihat penggunaan asosiasi untuk
mewakili relasi one-to-many antara Contact dan ContactGroup.
Dengan diimplementasikannya ORM pada aplikasi, akan memudahkan
programmer melakukan pengembangan aplikasi, karena selain ORM yang berbasis
objek sehingga mudah dipahami, ORM juga membuat penulisan kode program
menjadi lebih sederhana, karena sangat jarang penulisan statement SQL dilakukan
oleh programmer.
Implementasi Proses Registrasi User Pada proses registrasi user, admin akan
memasukkan nama user yang berhak menggunakan sistem ini dengan data masukan
berupa informasi mengenai data diri dan data untuk proses autentikasi seperti email
dan password dan untuk menghindari masukknya user yang tidak di inginkan, pada
bagian akhir pendaftaran user Tampilan antarmuka form registrasi terlihat pada
Gambar 9.
13
Gambar 9 Implementasi Proses Registrasi User
Implementasi Transaksi Setelah user mendapatkan username dan password
maka user dapat masuk pada halaman transaksi disini bisa melihat operator apa saja
yang ada beserta voucher yang tersedia dan juga tempat untuk melakukan transaksi.
Gambar 10 Implementasi Halaman Transaksi
Untuk melakukan transaksi penjualan pulsa elektronik dengan hanya memilih
operator yang digunakan oleh pembeli, pulsa yang ingin dibeli dan nomor tujuan
pengiriman pulsa elektronik setelah itu klik tombol Submit. Form penjualan pulsa
elektronik dapat dilihat pada Gambar 11
14
Gambar 11 Implementasi Form Pengisian Pulsa
Implementasi Pencatatan Transaksi, Ketika admin atau user ingin melihat
catatan transaksi, user mengklik menu report dan memilih report seperti terlihat pada
Gambar 12.
Gambar 12 Implementasi Pencatatan Transaksi
Kriteria yang dijadikan acuan dalam melakukan pengujian sistem adalah
Validation dan Koesioner
Berdasarkan pengujian aplikasi yang telah dilakukan dan hasil koesioner dari
responden dapat ditarik kesimpulan bahwa aplikasi ini telah lulus dalam pengujian
baik dari validasi maupun dari koesioner.
Konsep arsitektur MVC yang telah diterapkan pada aplikasi pencatatan untuk
reseller pulsa elektronik ini dirasa sangat memudahkan dalam proses pengembangan
aplikasi, karena penulisan kode program yang memisahkan kode program ke dalam
bagiannya masing-masing sangat efisien.
15
Sedangkan dengan diimplementasikannya ORM pada aplikasi pencatatan
untuk reseller pulsa elektronik, akan memudahkan programmer melakukan
pengembangan aplikasi karena selain ORM yang berbasiskan objek sehingga mudah
dipahami, ORM juga membuat penulisan kode program menjadi lebih sederhana,
karena sangat jarang penulisan statement SQL yang di lakukan.
Dan dari penerapan konsep MVC dan ORM pada aplikasi pencatatan untuk
reseller pulsa elektronik, didapatkan bahwa aplikasi yang telah dibuat sudah
memenuhi kebutuhan umum yang diperlukan, yaitu melakukan transaksi dan
pencatatan transaksi.
5. Simpulan
Dari hasil penelitian Perancangan dan Implementasi Aplikasi Pencatatan
Transaksi Reseller Pulsa Elektronik dengan Teknologi MVC dan ORM, dapat ditarik
kesimpulan: Aplikasi Pencatatan Transaksi Reseller Pulsa Elektronik dengan
Teknologi MVC dan ORM telah berhasil dirancang dan diimplementasikan. Dan
dengan proses penulisan kode program dengan menggunkan arsitektur MVC,
penulisan kode program menjadi lebih terorganisasi dengan baik, dengan demikian
aplikasi dapat lebih mudah dikembangkan Dan penggunaan teknologi ORM telah
direalisasikan dengan membuat class dan mengatasi mismatch database dengan
merelasikan objek yang mewakili database pada bagian models dan dengan
digunakannya ORM membuat tidak ada statement SQL yang ditulis pada halaman
kerja. Hasil dari implementasi dan pengujian aplikasi dapat dikatakan bahwa aplikasi
yang menggunakan teknologi MVC dan ORM sangat membantu dalam proses
pembuatan dan pengorganisasian aplikasi dan aplikasi yang dibuat telah di ujicoba
oleh reseller pulsa elektronik dalam melakukan transaksi dan pencatatannya dan
mendapatkan tanggapan yang bagus.
6. Daftar Pustaka
[1] Purna, Arthur Wiyoga, 2006, Perancangan dan Pembuatan Sistem Penggajian
serta Fasilitas Pengisian Pulsa Otomatis Via SMS untuk Karyawan
Perusahaan “X”, Fakultas Teknologi Informasi, Universitas Kristen Petra.
[2] Praboyo, Efifany Adventia, 2010, Perancangan dan Implementasi Sistem
Informasi Kepegawaian Berbasis Web dengan Framework CakePHP, Fakultas
Teknologi Informasi, Universitas Kristen Satya Wacana.
[3] Adi Sanjaya, David, Implementasi Model View Controller dan Object
Relational Mapping pada Content Management System Sistem Informasi
Keuangan. Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.
[4] Ridwan, Anggraeni, 2006, Sistem Basis Data 2 : Transaksi,
http://neni_rid.staff.gunadarma.ac.id/Downloads/folder/0.1, diakses tanggal 5
April 2012.
[5] Golding, David, 2008, Beginning CakePHP: From Novice to Professional,
New York : APRESS.
[6] Bauer C, King G. 2007. Java Persistence with Hibernate. United States :
Manning.
16
[7] Lemos, Manuel, 2008, PHP Object-Relational Mapping: ORM or ROM?,
http://www.phpclasses.org/blog/post/82-PHP-ObjectRelational-Mapping-
ORM-or-ROM.html, diakses tanggal 1 Oktober 2011.
[8] Jones, Steve, 2010, The ORM Dilemma,
http://www.sqlservercentral.com/articles/Editorial/70246/, diakses tanggal 21
Oktober 2011
[9] Pressman, Roger S. 1997. Software Engineering : A practicioner‟s approach.
Yogyakarta, Andi