• Tidak ada hasil yang ditemukan

T1 672011149 Full text

N/A
N/A
Protected

Academic year: 2017

Membagikan "T1 672011149 Full text"

Copied!
29
0
0

Teks penuh

(1)

Penerapan

Framework YII

Pada Sistem Pemesanan Koran Berbasis

Web

di PT. SUARA MERDEKA, Semarang

Artikel Ilmiah

Peneliti :

Ester Puspitaningrum (672011149) Christine Dewi, S.Kom., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(2)
(3)
(4)
(5)
(6)
(7)
(8)

Pernyataan

Yang bertanda tangan di bawah ini:

Nama : Ester Puspitaningrum

NIM : 672011149

Program Studi : Teknik Informatika Fakultas : Teknologi Informasi

Menyatakan dengan sesungguhnya bahwa tugas akhir dengan judul:

Penerapan

Framework YII

Pada Sistem Pemesanan Koran Berbasis

Web

di PT. SUARA MERDEKA, Semarang

Yang dibimbing oleh:

1. Christine Dewi, S.Kom., M.Cs.

adalah benar-benar hasil karya saya.

Di dalam tugas akhir ini tidak terdapat keseluruhan atau sebagian tulisan atau gagasan orang lain yangsaya ambil dengan cara menyalin atau meniru dalam bentuk rangkaian kalimat atau gambar tanpa memberikan pengakuan pada penulis atau sumber aslinya.

Salatiga, 15 Oktober 2015

Yang memberi pernyataan,

(9)

Penerapan

Framework YII

Pada Sistem Pemesanan Koran Berbasis

Web

di

PT. SUARA MERDEKA, Semarang

1)

Ester Puspitaningrum, 2) Christine Dewi

Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

Email: 1)[email protected]2) [email protected]

Abstract agent, are still using phone or facsimile, and inserting order data is done manually. Beside that the marketing office, must wait until the data is uploaded by the marketing department. Based on that problems, it needs a system which can overcome their problems with a web technology. The result of this research are the web application for agent to order newspaper, web application for officer to get data faster, and web application for admin to control the order data. This application is made by YII framework which is one of php framework, and providing many widgets, and extensions.

Keywords: real time, web application, YII framework.

Abstrak

Perusahaan yang memproduksi surat kabar harus cepat dalam sistem distribusi nya agar surat kabar dapat segera sampai ke pembaca. PT. Suara Merdeka Semarang adalah perusahaan yang memproduksi surat kabar. Terdapat beberapa kelemahan yang ada pada sistem pemesanan koran di Suara Merdeka, yaitu tidak efisiennya komunikasi data di perusahaan karena sistem yang tidak real time. Sebagai contoh proses pemesanan koran agen, perubahan pesanan, dan pembatalan pesanan, masih dilakukan dengan menggunakan telephone/facsimile, kemudian proses input data pesanan agen dilakukan secara manual oleh departemen pemasaran. Selain itu untuk mendapatkan data pesanan koran agen, kantor pemasaran harus menunggu data pesanan koran diupload ke web oleh departemen pemasaran. Berdasarkan beberapa masalah tersebut, maka dibutuhkan aplikasi yang dapat mengatasi permasalahan tersebut yang dibangun dengan menggunakan teknologi web. Hasil dari penelitian ini adalah aplikasi web untuk agen, untuk melakukan pemesanan koran, aplikasi web untuk kantor pemasaran, agar kantor pemasaran dapat mendapatkan data pesanan koran agen dengan cepat, dan aplikasi web untuk admin untuk mengelola data pesanan koran agen. Aplikasi ini dibuat dengan menggunakan framework YII

yang merupakan salah satu framework php, dan menyediakan beberapa widget, dan extension. Kata Kunci : Real time, aplikasi web, Framework YII

1)

Mahasiswa Fakultas Teknologi Informasi Jurusan Teknik Informatika, Universitas Kristen Satya Wacana Salatiga

2)

(10)

1

1.

Pendahuluan

Saat ini kebutuhan masyarakat untuk mendapatkan berita semakin meningkat. Terdapat banyak media penyampaian berita. Salah satu media penyampaian berita dapat melalui media cetak yaitu surat kabar. Perusahaan yang memproduksi surat kabar memiliki sebuah sistem yang mengatur penyaluran produknya kepada pembaca. Suara Merdeka merupakan salah satu perusahaan yang menghasilkan produk surat kabar. Sistem distribusi koran yang dijalankan di Suara Merdeka adalah sistem distribusi tidak langsung, yaitu sistem distribusi yang membutuhkan agen, dan sub agen untuk menyalurkan produk, dan menjual produk yang dihasilkan kepada pembaca.

Sistem distribusi koran yang dilakukan di Suara Merdeka masih memiliki beberapa kelemahan, antara lain pada proses penyampaian pesanan, perubahan pesanan, dan pembatalan pesanan yang dilakukan agen masih menggunakan telephone/facsimile. Setelah itu, kantor pemasaran menunggu data pemesanan koran yang diolah di departemen pemasaran diupload, untuk mendapatkan data pesanan agen. Melalui

telephone/facsimile, Pemesanan koran dilakukan Agen melalui kantor pemasaran/ kantor perwakilan, kemudian pesanan agen tersebut disampaikan kepada departemen pemasaran. Setelah mendapatkan data pesanan, Departemen pemasaran melakukan proses penginputan jumlah pesanan, tanggal pesanan, dan data agen, secara manual ke dalam aplikasi yang ada. Berdasarkan kelemahan-kelemahan yang terjadi pada sistem yang sedang berjalan, dibutuhkan aplikasi berbasis web untuk membantu mengatasi kelemahan dalam sistem. Aplikasi dibangun berbasis web karena agen koran dan kantor pemasaran berada di berbagai kota di Jawa Tengah. Dengan menggunakan aplikasi berbasis web,

pengguna akan lebih mudah dalam mengakses, dan menggunakan aplikasi.

Untuk mempercepat dalam pengembangan aplikasi, maka aplikasi web dibangun dengan menggunakan teknologi web yaitu framework YII, yang merupakan salah satu

framework php. Tujuan penggunaan framework YII adalah pemanfaatan fitur-fitur yang dimiliki dan telah disediakan dalam framework YII, untuk memudahkan pembuatan aplikasi. Di dalam pembuatan aplikasi ini nantinya akan dilakukan pembuatan tampilan aplikasi baik itu tabel, form, dan sebagainya, kemudian pembuatan relasi antar tabel dalam database, pembuatan validasi untuk masuk ke dalam aplikasi, pembuatan hak akses, pembuatan menu-menu pada aplikasi, pembuatan tampilan menu dalam aplikasi, pembuatan konten aplikasi, export data-data dalam format Microsoft excel dan Microsoft word. Hal-hal tersebut dapat dibuat dengan mudah, dan cepat dengan menggunakan

framework YII. Dengan Struktur program MVC yang diterapkan dalam pembuatan aplikasi web dengan menggunakan framework YII, akan membuat program menjadi lebih terstruktur karena memisahkan antara tampilan, logika program, dan struktur tabel. Kemudian Framework YII juga memiliki mekanisme caching yang baik, sehingga aplikasi web yang dihasilkan akan ringan saat diakses [1]. Selain itu, dengan kelengkapan fitur yang dimiliki oleh framework YII, seperti fitur keamanan, tersedinya ekstension, dan

widget yang dapat kita download, atau sudah disediakan oleh Framework YII, dapat membantu mempercepat pengembangan aplikasi dan meningkatkan keamanan pada aplikasi yang dihasilkan. Framework YII menggunakan metode pemrograman berorientasi objek, yang mengelompokkan fungsi-fungsi ke dalam beberapa class,

(11)

2

yang telah dibuat. Penulisan kode program dengan metode pemrograman berorientasi objek dapat menghasilkan kode program yang lebih rapi, lebih terstruktur dan mudah dibaca. Framework YII merupakan salah satu dari framework PHP yang memiliki kinerja tinggi, dan memiliki banyak fitur yang disediakan. Dengan dibangunnya aplikasi untuk pemesanan koran dan pengelolaan data pesanan koran dengan menggunakan salah satu framework yang memiliki kinerja tinggi, dan fitur yang lengkap, diharapkan dapat mempercepat pengembangan aplikasi, memudahkan pembuatan aplikasi, dan memberikan kemudahan dan manfaat saat aplikasi web ini digunakan oleh Suara Merdeka.

2.

Kajian Pustaka

Penelitian yang berjudul Pengembangan Aplikasi Distribusi Surat di Fakultas Teknologi Informasi Dengan Notifikasi SMS Menggunakan FrameworkYII dan Gammu

membahas tentang aplikasi berbasis web yang berfungsi untuk pengelolaan surat masuk dan surat keluar yang dilakukan di Fakultas Teknologi Informasi Universitas Andalas agar tidak dilakukan secara manual, untuk menghindari resiko surat tidak sampai ke penerima, surat rusak, atau terlambat sampai ke penerima [2].

Penelitian yang berjudul Perancangan dan Pembuatan Sistem Informasi Pada Toko Desain Interior Elaine membahas tentang pembuatan aplikasi berbasis web yang sistemnya dapat melakukan pengolahan data jual beli dan produksi. Tujuan dari pembuatan aplikasi adalah, agar sistem pencatatan data transaksi setiap harinya tidak dilakukan secara manual [3].

Berdasarkan penelitian yang terkait dengan pembuatan aplikasi berbasis web

dengan menggunakan framework YII, maka akan dilakukan penelitian tentang bagaimana membangun aplikasi berbasis web, untuk pemesanan koran, dan pengelolaan data pesanan koran untuk menciptakan sistem yang real time dengan mengimplementasikan

framework YII. Untuk mendukung dalam proses penelitian, terdapat beberapa teori yang melandasi penelitian ini.

Aplikasi Web, Aplikasi web dapat diakses dengan menggunakan web browser.

Awalnya aplikasi web hanya dibuat menggunakan bahasa html (Hypertext Markup Language). Kemudian script dan object dikembangkan untuk memperluas kemampuan

html dengan menggunakan bahasa pemrograman PHP [4].

Framework, terdiri dari kumpulan script yang membantu programmer dalam proses pemrograman seperti proses koneksi ke database, dan proses pemanggilan

variable dan file [5]. Tujuan dari penggunaan framework adalah agar proses pengembangan aplikasi menjadi lebih cepat karena biasanya framework menyediakan fitur-fitur, library, dan kelas-kelas siap pakai yang mendukung pembuatan aplikasi, dan yang memungkinkan pembuat program tidak membuat program dari awal. Sebagai contoh terdapat fitur keamanan, widget, extension, fitur kode generator, dan sebagainya.

Framework yang digunakan dalam pembuatan aplikasi adalah framework php, karena menggunakan bahasa pemrograman PHP. Beberapa contoh dari framework php adalah

(12)

3

YII, (Yes it is) merupakan salah satu framework php, yang dapat dijadikan

framework untuk pengembangan segala jenis aplikasi berbasis web. YII merupakan

framework open source, yang ditulis dengan PHP 5. Aplikasi yang dibangun pada

framework YII menggunakan pola arsitektur MVC yaitu dengan menggunakan pola

model, view, dan controller. YII sangat cocok digunakan untuk pengembangan aplikasi berskala besar karena memiliki kinerja yang tinggi, efisien, dan extensible [6].

Framework YII menggunakan metode pemrograman berbasis objek atau dikenal dengan

OOP (Object Oriented Programming), dan membutuhkan file pustaka yang telah tersedia di dalam framework YII [1]. Framework YII memiliki keunggulan yang tidak dimiliki oleh framework lain. Misalnya seperti Memudahkan dalam proses data input dan validasi data, Memudahkan pembuatan sistem multi language, dan sebagainya [7]. Struktur dari

framework YII dapat ditunjukkan pada gambar 1.

Gambar 1 Struktur YII [2]

MVC, Aplikasi yang dibangun dengan framework YII menggunakan arsitektur

MVC (model, view, dan controller), yang terdiri dari 1) Model merupakan kelas untuk mendefinisikan aturan-aturan yang digunakan dalam pembuatan aplikasi, seperti fungsi validasi, relasi antar tabel, mendefinisikan tabel, atribut dalam tabel, fungsi pencarian, dan lain-lain. 2) View merupakan kelas untuk pengaturan user interface atau tampilan dari aplikasi yang dibuat. Di dalam view terdapat folder layout yang berfungsi untuk mengatur bentuk tampilan dari aplikasi yang akan dibuat. Untuk memanggil class dalam

view, dapat dipanggil dengan fungsi render. Untuk merender view, controller

(13)

4

digunakan untuk memanggil file bernama view pada file view, menggunakan fungsi

render.

PHP, merupakan singkatan dari Hypertext Preprocessor, yang merupakan bahasa pemrograman yang berjalan di sisi server. Script PHP menyatu dengan script HTML dan diletakkan pada sisi server [8].

OOP,(Object Oriented Programming) atau pemrograman berorientasi objek merupakan salah satu metode pemrograman yang berorientasi objek, dengan cara membungkus dan mengelompokkan beberapa fungsi-fungsi ke dalam kelas-kelas yang dibuat. Pemrograman yang dibuat dengan metode pemrograman berbasis objek dapat meningkatkan kualitas dan produktivitas dari software yang dibuat [9]. Pada metode pemrograman berorientasi objek ini, objek-objek yang dibuat saling berinteraksi, dan berisi informasi mengenai objek itu sendiri (encapsulation) dan objek yang terkait

(inheritance)[10].

3. Metode Penelitian

Penelitian ini menggunakan sebuah metode penelitian. Bagan dari metode penelitian yang akan dilakukan ditunjukkan pada gambar 2 sebagai berikut :

Gambar 2 Tahapan Penelitian [11].

Gambar 2 merupakan tahapan penelitian yang dilakukan selama penelitian. Metode penelitian yang digunakan dalam melakukan penelitian adalah metode penelitian Hasibuan. Tahapan-tahapan yang dilakukan dalam penelitian adalah 1) Identifikasi Masalah, Pada tahap ini dilakukan kunjungan ke Suara Merdeka selama praktek kerja, untuk melihat proses pemesanan agen melalui telephone/facsimile, proses pendataan pesanan koran, sampai proses permintaan cetak koran. Setelah itu dilakukan identifikasi masalah, dan ditemukan solusi, yaitu aplikasi web untuk agen agar pemesanan koran tidak dilakukan lewat telephone/facsimile, aplikasi web admin, untuk pengolahan data pesanan agen, dan aplikasi web untuk kantor pemasaran, agar kantor pemasaran dapat mendapatkan data pesanan agen dengan cepat. 2) Perancangan Sistem. Pada tahap ini dilakukan metode pengembangan sistem menggunakan metode pengembangan sistem

(14)

5

Gambar 3 Model Waterfall [12].

Model waterfall terdiri dari 5 tahap antara lain. a) Tahap Investigasi. Pada tahap ini dilakukan pengamatan untuk mengetahui masalah yang terjadi pada sistem yang sedang berjalan dengan melakukan wawancara, mengumpulkan data, dan mencari informasi sebanyak-banyaknya pada perusahaan, kemudian dicari solusi dari permasalahan yang ada, dan mencari tahu apakah solusi tersebut dapat dikembangkan, dan menjadi solusi yang benar dan layak untuk perusahaan, b) Tahap analisis. Pada tahap ini dilakukan analisis kebutuhan perusahaan dan mencari tahu tentag kondisi perusahaan, untuk ditentukan solusi dari permasalahan yang cocok sesuai dengan kondisi perusahaan, c) Tahap desain. Pada tahap desain dilakukan penentuan hardware, software yang akan digunakan dalam pembuatan aplikasi sesuai dengan tahap analisis, d) Tahap implementasi (pengkodean program, dan pengujian program). Pada tahap ini dilakukan pengkodean program, dan melakukan percobaan aplikasi pada perusahaan. Pada tahap implementasi, ditentukan implementasi Framework YII pada pembuatan struktur aplikasi pada pembuatan model, controller, action view, penerapan JQuery dan library YII, e) Tahap pemeliharaan. Pada tahap ini dilakukan setelah aplikasi jadi dan dioperasikan di perusahaan, kemudian dianalisa apakah aplikasi yang ada perlu dilakukan perbaikan dan terdapat kesalahan.

(15)

6

Gambar 4Use Case Diagram Aplikasi

Gambar 3 adalah proses perancangan dari sistem dan aktivitas yang dapat dilakukan oleh aplikasi dan digambarkan menggunakan use case diagram. Use case diagram berfungsi untuk menggambarkan dan menjelaskan alur kerja sistem secara garis besar, fungsi-fungsi dari sistem, dan hubungan antara aktor dan sistem [13].

Dari tahapan proses pengumpulan data, didapatkan proses pemesanan koran yang dilakukan oleh agen koran, proses pencatatan pesanan agen, sampai proses pengiriman koran ke agen yang berjalan pada perusahaan digambarkan pada gambar 5 sebagai berikut :

Gambar 5 Alur Pemesanan Sampai Pengiriman Koran Pada Sistem Berjalan.

Gambar 5 adalah bagan dari proses distribusi koran atau alur pemesanan sampai pengiriman koran yang dijalani di Suara Merdeka. Sistem yang dilakukan dapat dijelaskan sebagai berikut : 1) Melalui Telephone / Facsimile, Agen Koran memesan koran, dan memberitahu perubahan permintaan koran kepada Departemen Pemasaran, dan kantor pemasaran untuk hari tertentu. Agen yang bertempat tinggal di daerah Semarang, dapat langsung memesan koran ke Departemen Pemasaran, tetapi agen di luar Semarang memesan koran melalui kantor pemasaran yang sesuai dengan wilayah tempat tinggal agen, kemudian kantor pemasaran menyampaikan pesanan agen ke departemen pemasaran. 2) Departemen Pemasaran melakukan konfirmasi jumlah pengiriman koran kepada Agen melalui telephone/facsimile. 3) Melalui Telephone / Facsimile, Kantor Pemasaran menyampaikan permintaan pesanan koran, dan perubahan permintaan koran agen yang berada di wilayah kantor pemasaran luar Semarang, kepada Departemen Pemasaran untuk hari tertentu. 4) Berdasarkan data permintaan koran dari Agen Koran dan Kantor Pemasaran, kemudian Departemen Pemasaran melakukan input data pesanan agen, dan data agen untuk membuat data permintaan cetak koran, yang digunakan untuk melakukan permintaan cetak koran di percetakan. Data tersebut kemudian diupload ke

server Suara Merdeka. 5) Melalui server Suara Merdeka, maka Kantor Pemasaran melakukan download atas data pengiriman koran dari Departemen Pemasaran untuk diolah di Kantor Pemasaran.

(16)

7

dengan menggunakan aplikasi web. Alur pemesanan koran sampai pengiriman koran dengan menggunakan aplikasi web ditunjukkan pada gambar 6 sebagai berikut.

Gambar 6 Alur Sistem Pemesanan Koran Sampai Pengiriman Koran Dengan Aplikasi Web

Gambar 6 adalah alur sistem pemesanan koran sampai pengiriman koran yang baru dengan menggunakan aplikasi web. Dapat dijelaskan sistem pemesanan dan pengiriman koran dengan menggunakan aplikasi dimulai dari : 1) Proses pemesanan koran. Pada proses ini agen koran memasukkan jumlah pesanan dan tanggal pesan. Data pesanan tersebut akan langsung tersimpan ke database, Agen dapat mengubah jumlah pesanan, maupun membatalkan pesanan pada tanggal tertentu. 2) Admin dapat menambahkan jumlah koran yang merupakan koran bonus, dan koran untuk promosi jika diperlukan. Koran bonus dan koran promosi bersifat gratis dan tidak perlu dikembalikan oleh agen jika tidak terjual. 3) Kantor pemasaran dapat melihat data pesanan agen melalui

web karyawan, dan dapat melakukan download data pesanan agen berdasarkan kategori tertentu. 4) Admin dapat melakukan download data permintaan cetak koran dan slip koran untuk kemudian dikirim ke percetakan.

(17)

8

Pada Gambar 7 terdapat gambaran class diagram dari aplikasi web. Class diagram tersebut menggambarkan class dan relasi antar class pada aplikasi yang dibuat.

Gambar 8 Deployment Diagram Aplikasi

Gambar 8 menunjukkan Deployment Diagram dari aplikasi. Deployment Diagram merupakan susunan fisik dari sebuah sistem pada aplikasi [14]. Berdasarkan

Deployment Diagram ini dirancang arsitektur sistem dari sistem pemesanan koran, yang digambarkan pada gambar 9 sebagai berikut :

Gambar 9 Arsitektur Sistem Aplikasi

Gambar 9 menunjukkan arsitektur sistem dari aplikasi. Admin, agen, maupun karyawan (kantor pemasaran) dapat mengakses aplikasi dengan PC/laptop. Aplikasi memiliki tiga halaman web, yaitu halaman web untuk admin, karyawan (kantor pemasaran) kantor pemasaran, dan agen yang dikembangkan dengan menggunakan

framework YII. Pengguna dapat mengakses data dalam database maupun menyimpan data ke database jika terdapat jaringan internet.

3) Pembuatan Aplikasi. Dalam tahap pembuatan aplikasi ditentukan hardware

dan software yang akan digunakan untuk pembuatan aplikasi. Pembuatan aplikasi menggunakan database MySQL phpMyadmin, framework yang digunakan untuk pengembangan aplikasi menggunakan framework YII (yes it is), dan web browser yang dipakai yaitu Mozilla firefox. Alur kerja dalam pembuatan aplikasi dengan menggunakan

framework YII, adalah Membuat struktur aplikasi dengan menggunakan script yiic,

Melakukan konfigurasi database yang akan digunakan pada folder config, merancang

model dengan menggunakan kode generator yang ada pada framework YII yaitu menggunakan GII, merancang controller dengan menggunakan kode generatorGII untuk pembuatan template fungsi create, update, read, delete, mengimplementasi action dan

(18)

9

cara membagikan kuesioner ke Suara Merdeka, untuk mengetahui apakah aplikasi sudah sesuai kebutuhan sistem atau apakah masih ada kesalahan yang ditemukan dalam aplikasi. Jika terdapat kesalahan pada tahap ini, maka akan dilakukan perbaikan.

4. Hasil dan Pembahasan

Setelah melakukan perancangan terhadap aplikasi, baik itu tampilan, menu yang akan digunakan, pengumpulan data-data, dan sebagainya, kemudian dilakukan pembuatan aplikasi web. Aplikasi web yang dibuat menghasilkan tiga halaman web, yaitu halaman web untuk admin, halaman web untuk agen koran, dan halaman web untuk karyawan (kantor pemasaran). Prosedur penggunaan aplikasi web sistem pemesanan koran ini adalah sebagai berikut: 1) Admin, agen, dan karyawan membuka web browser

kemudian menulis alamat web aplikasi. 2) Untuk dapat masuk ke halaman web dari

Admin, agen, atau karyawan, pengguna harus memasukkan username dan password, jika

password dan username benar, pengguna dapat masuk ke halaman web. Interface dari halaman web admin yang dihasilkan, ditunjukkan pada gambar 10 sebagai berikut:

Gambar 10 Gambar Halaman Web Admin

Dalam proses perancangan, dan pembuatan aplikasi dengan menggunakan

framework YII, ditemukan beberapa kemudahan dan kelebihan dalam membangun aplikasi dengan menggunakan framework YII, Kelebihan Framework YII, yaitu memiliki fitur yang lengkap. Salah satunya, Framework YII memiliki beberapa library yang sudah tersedia, dan dapat digunakan dalam pembuatan aplikasi. Library ini berisi kumpulan kode program yang dapat diturunkan atau dipanggil saat dibutuhkan. Keuntungan dari library yang tersedia, adalah dalam pembuatan program, ada beberapa bagian yang tidak perlu dirancang atau dibuat dari awal, tetapi hanya memanggil atau menurunkan dengan kelas yang sudah disediakan. Contoh dari library tersebut adalah CDbCriteria,

CListView, CJuiDatePicker, CGridView, CActiveRecord, dan sebagainya. Beberapa

library dalam Framework YII yang digunakan dalam pembuatan aplikasi, penggunaan

(19)

10

Kode Program 1 Penggunaan Library CActiveRecord, CDbCriteria

Kode program 1 merupakan kode program untuk memanggil library CActiveRecord. CActiveRecord merupakan salah satu kelas turunan model, yang digunakan untuk menyimpan data-data yang didefinisikan dalam model ke dalam tabel pada database. Baris program 02 adalah cara menurunkan model kota dengan library CActiveRecord yang terdapat dalam YII . Baris program 05-07 adalah kode program untuk menghubungkan model Kota, dengan tabel kota. Baris program 06-17 adalah kode program untuk memudahkan pembuatan validasi dalam form, seperti panjang maksimal dalam pengisian form, form tidak boleh kosong, dan sebagainya. Baris program 18-24 adalah kode program dalam pembuatan label yang mewakili atribut dalam tabel. Jadi, untuk pembuatan label, tidak perlu mengubah pada bagian view, tetapi diubah pada bagian attribute label pada model. Baris program 25-33, merupakan kode program untuk

01 <?php

02 class Kota extends CActiveRecord {

03 public static function model($className = __CLASS__) {

04 return parent::model($className); }

13 array('karesidenan', 'length', 'max' => 555),

14 array('kabupaten', 'required'),

15 array('kabupaten', 'length', 'max' => 555),

16 array('provinsi', 'required'),

17 array('provinsi', 'length', 'max' => 555),

18 array('id, kota, karesidenan, kabupaten, provinsi', 'safe', 'on'

32 $criteria -> compare('id', $this -> id);

33 $criteria -> compare('kota', $this -> kota, true);

34 $criteria -> compare('karesidenan', $this -> karesidenan, true);

35 $criteria -> compare('kapupaten', $this -> kabupaten, true);

36 $criteria -> compare('provinsi', $this -> provinsi, true);

37 return new CActiveDataProvider($this, array('criteria' =>

38 $criteria, )); }

39 }

(20)

11

fungsi pencarian data berdasarkan tabel. Fungsi pencarian ini menggunakan library CDbCriteria, yang menggunakan method compare.

YII menggunakan teknik active record yang merupakan salah satu teknik Object Relational Mapping, yang dapat mempersingkat waktu dalam penulisan syntax SQL. Teknik active record dapat ditunjukkan pada kode program 2 sebagai berikut.

Kode Program 2 Teknik Active Record

Kode Program 2 merupakan bentuk dari teknik active record, yang memiliki fungsi untuk melakukan input data berdasarkan atribut tabel yang telah didefinisikan dalam model kota, kemudian data-data nya akan dimasukkan ke dalam tabel kota yang telah didefinisikan pada model kota. Setelah data berhasil di masukkan maka akan ditampilkan halaman create pada file view, yang ditunjukkan pada baris program 07.

Kode Program 3 Penggunaan Library CFormModel

01 <?php

02 class AdminLoginForm extends CFormModel {

03 public $username;

15 public function authenticate($attribute, $params) {

16 if (!$this -> hasErrors()) {

17 $this -> _identity = new AdminLogin($this -> username, $this ->

18 password);

19 if (!$this -> _identity -> authenticate()){

20 $this -> addError('password', 'Incorrect username or password.');

21 }}}

22 public function login() {

23 if ($this -> _identity === null) {

24 $this -> _identity = new AdminLogin($this -> username, $this ->

25 password);

26 $this -> _identity -> authenticate();

27 }if ($this -> _identity -> errorCode === AdminLogin::ERROR_NONE) {

28 $duration = $this -> rememberMe ? 3600 * 24 * 30 : 0;

29 Yii::app() -> user -> login($this -> _identity, $duration);

30 Admin::model() -> updateByPk($this -> _identity -> id,

(21)

12

Kode program 3 merupakan kode program untuk pemanggilan library CFormModel merupakan salah satu kelas yang dapat turunan oleh model, yang digunakan untuk mendefinisikan data dalam model untuk melakukan fungsi login.

Library CFormModel, bukan untuk penyimpanan data ke database. Baris program 06-14 merupakan kode program untuk validasi saat login masuk agar tidak mengosongkan form. Baris program 15-21 merupakan kode program untuk pembuatan autentifikasi, untuk validasi saat pengisian form.

Gambar 11 Datepicker

Gambar 11 merupakan gambar datepicker yang merupakan salah satu widget framework YII. Pembuatan nya menggunakan library CJuiDatePicker.

Kode Program 4 Kode Program Datepicker

Kode program 4 merupakan kode program untuk membuat datepicker pada YII. Baris program 02 merupakan kode program untuk memanggil library CJuiDatePicker

yang telah disediakan oleh framework YII.

Gambar 12 Menubar Mbmenu

Selain menggunakan library yang telah disediakan framework YII, juga dapat menggunakan library luar. Gambar 12 merupakan gambar menubar yang dibuat dengan menggunakan salah satu extension framework YII yaitu mbmenu. file mbmenu dapat di

download terlebih dahulu, kemudian file yang berbentuk winrar dapat di ekstrak dan dipindahkan ke folder extensions pada aplikasi yang dibuat. Setelah itu file mbmenu

dipanggil dengan perintah yang ditunjukkan pada kode program 5 sebagai berikut.

01 <?PHP

02 $this->widget('zii.widgets.jui.CJuiDatePicker',

03 array('attribute' => 'date', 'language' => 'en', 'model'=>model,

04 'options' => array( 'mode' => 'focus', 'dateFormat' => 'd MM, yy',

05 'showAnim' => 'slideDown'),

06 'htmlOptions' => array('size' => 30, 'class' => 'date') ) ); echo

(22)

13

Kode Program 5 Kode Program Menubar Mbmenu

Kode program 5 merupakan kode program untuk pembuatan menubar dengan

extension mbmenu. Baris program 02, merupakan kode program untuk memanggil file mbmenu, yang ada pada folder extensions.

Gambar 13 Cgridview dan Cbuttoncolumn

Gambar 13 merupakan bentuk dari Cgridview. CGridview merupakan salah satu

extension framework YII yaitu Zii. Pemakaian Cgridview memberikan banyak keuntungan, antara lain mempermudah dalam pencarian data, mempermudah paging

halaman, dan memperindah tampilan dari tabel yang dihasilkan. Selain itu Cgridview

juga dapat dikombinasikan dengan datepicker untuk fungsi pencarian berdasarkan tanggal, dan dengan Cbuttoncolumn untuk pembuatan button fungsi read, update, dan

delete dalam tabel.

Kode Program 6 Kode Program CGridView

01 <?php

02 $this->widget('application.extensions.mbmenu.MbMenu',array(

03 'items'=>array(

04 array('label'=>'insert','items'=>array(

05 array('label'=>'Data Kota','url'=>array('/kota/create')),

06 array('label'=>'Data karyawan','url'=>array('/karyawan/create')), 07 array('label'=>'Data Admin','url'=>array('/manageadmin/create')),

08 array('label'=>'Data Agen','url'=>array('/agen/create')),

09 array('label'=>'Data Sub Agen','url'=>array('/subagen/create')),

10 ),),

11 array('label'=>'view','items'=>array(

12 array('label'=>'Data Kota','url'=>array('/kota/admin')),

13 array('label'=>'Data Pesanan

01 <?php $this->widget('zii.widgets.grid.CGridView', array(

(23)

14

Kode program 6 merupakan kode program untuk pembuatan gridview, dengan memanggil library CGridView yang ditunjukkan pada baris program 01. Fungsi pada baris program 03, yaitu untuk pencarian, yaitu dengan mengarahkan data terhadap fungsi

search, yang dibuat pada model, dan dipanggil pada controller. Untuk pembuatan button

tabel yang mendukung ditunjukkan pada baris program pada nomor 17-19. Untuk pembuatan paging halaman pada gridview ditunjukkan pada baris program 06-11.

Framework YII menyediakan kode generator bernama GII yang merupakan fitur

YII untuk pembuatan template controllers, views, models, dan forms. GII memberi keuntungan dalam pembuatan aplikasi, khususnya untuk pembuatan fungsi CRUD

(create, read, update, delete).

Gambar 14 Model Generator, dan CRUD Generator

Gambar 14 merupakan form yang terdapat pada menu model generator, dan

CRUD generator . Untuk membuat Model Generator, dengan mengisi nama tabel pada

form table name, kemudian GII akan menciptakan model secara otomatis. Untuk pembuatan fungsi CRUD dengan memilih menu CRUD generator, kemudian mengisi

form model class dengan nama model yang dibuat, setelah klik generate, maka kode program untuk CRUD akan terbuat secara otomatis.

Selain itu beberapa kelebihan yang telah dijelaskan, YII juga memiliki beberapa kelemahan antara lain. 1) Framework YII tidak support pada PHP 4 dan harus menggunakan PHP 5, 2) Karena YII menggunakan konsep pemrograman berorientasi Objek, maka pembuat aplikasi harus benar-benar mengerti tentang konsep pemrograman berorientasi objek. Jika tidak mengerti konsep pemrograman berorientasi objek, maka akan mengalami kesulitan dalam pembuatan aplikasi. 3) File YII yang besar (31,7 mb), namun sebanding dengan fitur-fitur, kelas, dan library siap pakai yang telah disediakan di framework YII.

(24)

15

Gambar 15 adalah form pemesanan koran untuk agen koran. Untuk memesan koran agen hanya memasukkan jumlah pesanan koran, dan tanggal koran, kemudian data tersebut, bersama dengan data agen yang sedang login, akan masuk ke dalam database.

Setelah selesai melakukan pemesanan koran, agen dapat melihat data pesanan pada tabel pesanan di halaman history pesanan agen. Untuk mengirim data pesanan agen, dijelaskan pada kode program 7 sebagai berikut.

Kode Program 7 Kode Untuk Mengirim Data Pesanan

Kode program 7 berisi kode untuk mengirim data pemesanan ke dalam database. Data agen berupa username, kota, alamat tidak perlu dituliskan lagi dalam form

pemesanan karena data agen telah diambil dari database pada tabel agen. Baris program 06-10, adalah kode program untuk mengambil data agen yang sedang login kemudian dimasukkan ke dalam database. Sedangkan, baris program 11-13 berfungsi untuk mengambil data yang diinputkan dalam form, kemudian dimasukkan ke tabel. Status pembayaran agen juga dimasukkan dalam data pesanan agen. Pada saat agen melakukan pemesanan default untuk status pemesanan saat itu adalah belum lunas. Setelah data berhasil dikirim maka akan ditampilkan halaman history pesanan agen. Fungsi render

pada baris program 16, berfungsi untuk memanggil file history pada file view.

Gambar 16 Tabel pesanan agen pada halaman admin

01 <?PHP

02 public function actionCreate(){

03 $model=new Order;

05 if(isset($_POST['Order'])){

06 $model -> id = YII::app() -> user -> Id;

07 $model -> username = YII::app() -> user -> username;

08 $model -> kota = YII::app() -> user -> kota;

09 $model -> alamat = YII::app() -> user -> alamat;

10 $model -> telephone = YII::app() -> user -> telephone;

11 $model->jumlah = $_POST['Order']['jumlah'];

12 $model->status = $_POST['Order']['status'];

13 $model->date= $_POST['Order']['date'];

14 if($model->save()){ YII::app()->user->setFlash('success', 'Data

15 berhasil di simpan'); $this->redirect(array('history')); } }

(25)

16

Gambar 16 merupakan tampilan data pesanan agen pada halaman admin. Pada tabel pesanan agen tersebut, Admin dapat menambahkan jumlah promosi dan bonus koran pada agen jika diperlukan. Terdapat button pada tabel untuk melakukan fungsi update

dan delete data. Data dalam tabel tersebut kemudian dapat di export ke dalam bentuk

Microsoft excel berdasarkan pencarian tertentu.

Kode Program 8 Kode Untuk Export Data Ke Format Excel

Kode program 8 merupakan kode program untuk melakukan export data dari

database, yang ditampilkan dalam tabel cgridview kemudian diubah ke dalam format .csv

yang dapat diakses dengan menggunakan Microsoft excel. GetAttributeLabel digunakan untuk mengambil label yang telah didefinisikan pada model Order.

Kode Program 9 Kode Program Untuk Download Slip Koran

Kode program 9 merupakan kode program untuk pembuatan slip koran. Slip koran ini nantinya berisi data pesanan agen yang dapat di download, dan berbentuk file Microsoft word. Slip koran yang ditampilkan pada aplikasi, menampilkan data pesanan agen untuk satu hari berikutnya. Hal ini ditunjukkan pada syntax sql pada baris 04-05. Sebagai contoh, pada hari Selasa, 1 September 2015, maka slip yang akan ditampilkan dan dapat di download adalah slip koran data pesanan agen untuk hari Rabu, 2 September

01 public function actionExportTofile() {

21 foreach ($dataProvider->getData() as $data) {

22 echo "$data->id, $data->username, $data->date,

23 $data->alamat,$data->kota, $data->rute , $data->telephone,

24 $data->jumlah,$data->Promosi,$data->Bonus,=($data->Bonus+$data->

25 Promosi+$data->jumlah),=(($data->jumlah)*4500) \r\n";}exit;}

01 public function actionToword($fileName) {

02 $this -> createWord($fileName);

03 $sql = "SELECT * FROM orders where date='".date("y-m-d", 04 mktime(0,0,0, date("m"), date("d")+1, date("Y")))."' ORDER BY

05 date";

06 $conncection = YII::app() -> db;

07 $command = $conncection -> createCommand($sql);

08 $results = $command -> queryAll();

09 $dataWord = $this -> renderPartial("nota",

10 array("dataProvider" => $results, ));

(26)

17

2015. Fungsi actionToword menampilkan file view nota, dan memanggil fungsi

createWord, yang terdapat pada file di component.

Kode Program 10 Kode untuk Download Laporan Permintaan Cetak Koran

Kode Program 10 adalah kode program untuk melakukan download laporan permintaan cetak koran dalam bentuk Microsoft excel. Laporan permintaan cetak koran dan slip koran akan dikirimkan ke percetakan untuk melakukan pemesanan koran. Data permintaan cetak koran yang ditampilkan dalam aplikasi, menampilkan data pesanan agen untuk satu hari berikutnya. Hal ini ditunjukkan pada syntax sql pada baris 04-05. Sebagai contoh, pada hari Selasa, 1 September 2015, maka data yang akan ditampilkan dan dapat di download adalah data permintaan cetak koran untuk hari Rabu, 2 September 2015. Fungsi actionToexcel menampilkan file view report, dan memanggil fungsi

createExcel, yang terdapat pada file di component.

Pengujian aplikasi dilakukan dengan pengujian beta dengan menjawab daftar pertanyaan yang dibagikan kepada bagian Departemen pemasaran, dan distribusi koran, yang terdiri dari petugas entry data, admin, manager pemasaran, asisten manager

pemasaran, dan monitor pengiriman koran, dengan total responden berjumlah 9 orang. Pengujian ini dilakukan untuk mengetahui sejauh mana aplikasi ini berfungsi. Hal yang diuji dan hasil pengujian dapat dilihat di Tabel 1.

No Soal Skor Jawaban

3 Apakah melalui aplikasi ini semua data mengenai data pesanan koran dapat diolah dengan baik ?

3 4 2

Setelah semua jawaban diketahui maka dilakukan penghitungan presentase jawaban responden yang menjawab pertanyaan, di mana masing-masing jawaban diberi skor 1-5 dengan penjelasan sebagai berikut:

03 $sql = "SELECT * FROM orders where date='".date("y-m-d", 04 mktime(0,0,0, date("m"), date("d")+1, date("Y")))."' ORDER BY

05 date";

06 $conncection = YII::app() -> db;

07 $command = $conncection -> createCommand($sql);

08 $results = $command -> queryAll();

09 $dataExcel = $this -> renderPartial("report", array("dataProvider"

10 => $results, ));

(27)

18 5. Sangat Setuju (SS) = 5

Hasil analisis pertanyaan 1 menunjukkan sebanyak 77,8% responden menjawab sangat setuju, 11,1% responden menjawab setuju dan 11,1% responden menjawab cukup setuju. Jadi disimpulkan bahwa aplikasi ini mudah untuk digunakan.

Hasil analisis untuk pertanyaan 2 menunjukkan sebanyak 55,6% responden menjawab sangat setuju, 33,3% responden menjawab setuju dan 11,1% responden menjawab cukup setuju. Jadi disimpulkan bahwa menu-menu dalam aplikasi ini mudah dipahami.

Hasil analisis pertanyaan 3 menunjukkan sebanyak 33,3% responden menjawab sangat setuju, 44,5% responden menjawab setuju dan 22,2% responden menjawab cukup setuju. Jadi disimpulkan bahwa melalui aplikasi ini semua data mengenai data pesanan koran dapat diolah dengan baik.

Hasil analisis pertanyaan 4 menunjukkan sebanyak 33,3% responden menjawab sangat setuju, 55,6% responden menjawab setuju dan 11,1% responden menjawab cukup setuju. Jadi disimpulkan bahwa aplikasi ini cocok diimplementasikan di Suara Merdeka.

Hasil analisis untuk pertanyaan 5 menunjukkan sebanyak 55,6% responden menjawab sangat setuju, 22,2% responden menjawab setuju dan 22,2% responden menjawab cukup setuju. Jadi disimpulkan aplikasi ini bermanfaat digunakan di Suara Merdeka.

Selain pengujian beta dilakukan pengujian alpha melibatkan programmer dan orang-orang yang terlibat dalam pembuatan aplikasi. Metode yang dipakai dalam pengujian alpha adalah metode black box, dengan memperhatikan apakah semua fungsi dalam aplikasi dapat berjalan sesuai yang diharapkan.

(28)

19

Berdasarkan Tabel 2, dapat disimpulkan bahwa aplikasi sudah dapat berjalan dengan baik dan sesuai dengan output yang diinginkan.

5. Simpulan

Penelitian ini menghasilkan aplikasi untuk pemesanan koran untuk agen koran, dan aplikasi untuk pengelolaan data-data pesanan koran tersebut untuk Suara Merdeka. Aplikasi yang dibuat berbasis web sehingga agen maupun kantor pemasaran baik itu yang bertempat tinggal di Semarang, maupun di luar Semarang dapat mengakses aplikasi web

ini dengan mudah dengan menggunakan komputer, laptop, dan smartphone memakai jaringan internet. Dalam aplikasi terjadi proses pemesanan koran oleh agen, yang dilakukan oleh agen melalui web agen dengan mengisi data jumlah pesanan dan tanggal pesan. Sistem pemesanan koran pada aplikasi web yang langsung terhubung dengan

database, dapat mencegah resiko kehilangan data, maupun kesalahan input data pesanan koran. Selain itu, terdapat web admin untuk mengelola data pesanan agen, yang dapat menghasilkan data permintaan cetak koran, dan slip koran yang berisi data pesanan agen, yang nantinya akan diberikan ke percetakan untuk melakukan permintaan cetak koran. Terdapat juga web untuk kantor pemasaran, agar kantor pemasaran dapat memantau, dan mendapatkan data pesanan koran agen dengan cepat.

Implementasi Framework dalam pembuatan aplikasi ini mempercepat pengembangan dan pembuatan aplikasi. Adanya library yang telah tersedia dalam

framework YII, dapat dimanfaatkan untuk pembuatan aplikasi dengan tujuan untuk mempercepat pembuatan aplikasi, karena memungkinkan pembuat program menggunakan kelas yang sama dalam pembuatan fungsi tertentu. Jadi, penggunaan

framework YII, dapat memberikan keuntungan untuk pembuat aplikasi, karena dapat menghemat waktu dalam pembuatan aplikasi.

6. Pustaka

[1] Badiyanto,2013, “Buku Pintar Framework YII”, Jakarta:Penerbit Mediakom.

[2] Kamil, Husnil, 2013, Framework Aplikasi, Pengembangan Aplikasi Distribusi Surat di Fakultas Teknologi Informasi dengan Notifikasi SMS Menggunakan

Framework YII dan Gammu, 2(2):40-41.

(29)

20

[4] Arif, Saiful Nur., Wanda, Ayu Putri., Masudi, Abdi., 2013, Aplikasi Administrasi Perpustakaan Berbasis Web SMK Swasta Brigjen Katamso Medan, 12(1):27-28.

[5] Rosmala, Dewi, Icwan, Muchamad., Gandalisha, M. Irzhan, 2011, Pendahuluan, Komparasi Framework MVC(CodeIgniter dan CakePHP) Pada Aplikasi Berbasis

Web (StudiKasus : Sistem Informasi Perwalian di Jurusan Informatika Institut Tinggi Nasional), 2(2):23.

[6] Huraira, Sabit, 2012, Apa itu YII??, Menjelajah YII Framework Belajar Membuat Aplikasi Dengan YII Framework, Jakarta:Ebook.

[7] Sharive, 2014, “Proyek Membangun Website dengan YII Framework”,

Yogyakarta: Penerbit Lokomedia.

[8] Warsito, Ary Budy., Yusup, Muhammad., Makaram, Moh Iqbal Awi., 2014, Perancangan SIS+ Menggunakan Metode YII Framework Pada Perguruan Tinggi Raharja, 8(2):26.

[9] M. Rudyanto. Arief, 2011, Pemrograman Web Dinamis Menggunakan PHP & MySQL, Yogyakarta: Penerbit Andi

[10] Warsito, Ari Budi., Yusuf, Muhamad., Yulianto, 2014, Kajian YII Framework

dalam Pengembangan Website Perguruan Tinggi, 7(3):440.

[11] Hasibuan, Zainal A., 2007, “Metodologi Penelitian Pada Bidang Ilmu Komputer

dan Teknologi Informasi : Konsep, Teknik, dan Aplikasi”, Jakarta : Ilmu

Komputer Universitas Indonesia.

[12] Solikhin, Rachmatullah, Robby., Riyanto, Eko., 2005, Pengembangan Sistem Informasi Registrasi Seminar, Workshop Dan Pelatihan Menggunakan Metode Sistem Development Life Cycle Model Waterfall (Studi Kasus STMIK Himsya Semarang)

[13] Imron, Mochamad Samsudin., Palekahelu, Dharmaputra T., Somya, Ramos, 2014, 2014, Perancangan dan Implementasi Aplikasi Pembelajaran Siklus Carnot

Berbasis RIA untuk Pelajar SMA (Studi Kasus : SMA Negeri 3 Salatiga), 11(1): 66

[14] Pramono, Kumala Nindya, 2015, Perancangan dan Pengimplementasian Aplikasi Pencatatan Servis Mobil pada Android Platform, Salatiga : Universitas Kristen Satya Wacana.

Gambar

Gambar 1 Struktur YII [2]
Gambar 2 Tahapan Penelitian [11].
Gambar 3 Model Waterfall [12].
Gambar 5 adalah bagan dari proses distribusi koran atau alur pemesanan sampai
+7

Referensi

Dokumen terkait

Semarangan dalam surat kabar Suara Merdeka edisi 14 Januari – 11.

Pengaruh Corporate Social Responsibility terhadap Profitabilitas Perusahaan (Studi Kasus pada Perusahaan Perbankan yang Listing di BEI tahun 2007 sampai

Diamond Light Artwear adalah clothing brand di kota Salatiga yang memproduksi pakaian dan asesoris sejak tahun 2011. Perusahaan ini menggunakan media sosial untuk mempromosikan

Jl. Tanpa adanya karyawan sebagai sumber daya manusia sulit bagi perusahaan untuk berkembang. Penulis memilih Hotel Ciputra Semarang sebagai perusahaan yang akan

Penelitian ini dilakukan di Indonesia dengan mengambil editorial edisi bulan Januari sehingga Desember 2007 surat kabar Suara Merdeka, sebuah surat

Berbagai kolom opini yang mengisi surat kabar Suara Merdeka edisi Minggu diantaranya adalah kolom Gayeng Semarang, merupakan kolom khusus dari kolumnis yang

Suara Merdeka, harian yang terbit dari Semarang, adalah surat kabar dengan sirkulasi tertinggi di Jawa Tengah; harian ini juga memiliki edisi lokal.. Suara Pantura dan

Sumber data dalam penelitian ini adalah sumber data tulis yang berupa “Surat Pembaca” pada surat kabar Suara Merdeka edisi Agustus - September 2013 yang terdiri atas 13 wacana