15
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].

Perancangan dan Implementasi Aplikasi Pencatatan Transaksi … · 2013. 4. 29. · pengisian pulsa dan mencatat transaksi. Proses yang terjadi dalam aplikasi pengisian pulsa pada

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

  • 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

    Transaksi

    Voucher

    Report

    Admin

    Melihat Report

    Menghapus Report

    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

    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

    Invoices

    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

    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

  • 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.

    http://neni_rid.staff.gunadarma.ac.id/Downloads/folder/0.1

  • 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