Bab 2 Tinjauan Pustaka 2.1 Kajian Pustaka Penelitian yang
menerapkan arsitektur Model View
Controller (MVC) telah banyak digunakan pada perancangan dan implementasi pembuatan sebuah sistem. Salah satu penelitian yang dilakukan adalah “Perancangan dan Implementasi Aplikasi Sistem Informasi Manajemen Gereja Berbasis Web menggunakan MVC (Studi Kasus: Gereja Kristen Alkitab Indonesia)”. Dari penelitian ini diketahui bahwa penerapan arsitektur MVC pada aplikasi sistem informasi gereja berbasis web dapat menjadi sarana alat bantu sebagai pusat informasi yang menyimpan data gereja dalam sebuah database dan kemudahan manajemen jika terjadi penambahan data tidak perlu merubah coding, cukup menambahkan model, view, dan controller untuk tabel baru. Maka dengan penerapan arsitektur MVC perancangan sistem dapat lebih teratur dan mudah dalam penelusuran kesalahan dan adanya aplikasi sistem informasi memudahkan pengelolaan data (Fedora, 2011). Penelitian lain mengenai “Perancangan Sistem Informasi Manajemen Gereja (Studi Kasus di Gereja Kristen Indonesia Salatiga)”. Dari penelitian didapatkan bahwa untuk merancang sebuah aplikasi informasi manajemen memiliki tahapan-tahapan yang dimulai dengan pengembangan sistem, pengkodean 8
9
prototype aplikasi, dan test drive untuk memberikan fasilitas yang dalam penelitian ini adalah jemaat Gereja Kristen Indonesia Salatiga (Tompira, 2010). Perbedaan penelitian ini dengan dua peneliti sebelumnya yaitu dalam penelitian Fedora (2011) pendataan hanya mencakup informasi yang akan ditampilkan pada website seperti data berita, data acara, data renungan, data artikel, data kesaksian, data doa, data majelis daerah, data gereja, data user, data admin, dan data alkitab harian karena disesuaikan dengan kebutuhan user. Sedangkan pada penelitian ini pendataan lebih lengkap pada pengelompokan data umat, sakramen-sakramen, dan informasi website. Perbedaan dengan penelitian Tompira (2010) adalah pada penelitian tersebut menggunakan script PHP dan database MySQL sebagai media penyimpanan data sedangkan dalam penelitian ini
menggunakan framework
codeigniter
yang
menerapkan arsitektur MVC. Berdasarkan penelitian sebelumnya diharapkan sistem informasi pastoral ini dapat memberikan manfaat yang berguna bagi gereja dalam pendataan umat
lebih lengkap pada
pengelompokan data umat, sakramen-sakramen, dan informasi website dengan perancangan aplikasi menggunakan framework CodeIgniter yang menerapkan arsitektur MVC.
10
2.2 Sistem Informasi 2.2.1 Sistem Untuk mendefinisikan sistem terdapat dua kelompok pendekatan sistem, yaitu sistem yang menekankan pada prosedur dan elemennya. Pendekatan yang menekankan sistem pada prosedur kerja
mendefinisikan bahwa sistem adalah suatu jaringan
dari
prosedur-prosedur
yang
saling
berhubungan,
berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran tertentu (Gerald, 1981). Pendekatan
sistem
yang
menekan
pada
elemen
mendefinisikan sistem adalah kumpulan dari elemen-elemen yang berinteraksi untuk mencapai suatu tujuan tertentu (Jogiyanto, 2005). Definisi lain dari sistem adalah sekelompok elemen dengan maksud yang sama untuk mencapai suatu tujuan (McLeod, 2001). Dari definisi sistem berdasarkan pendekatan yang telah diuraikan, maka disimpulkan bahwa sistem adalah jaringan kerja yang terstruktur dan memiliki elemen yang berelasi agar berkerja bersama untuk mencapai tujuan atau sasaran tertentu.
2.2.2 Informasi Informasi merupakan pengolahan dari data mentah yang belum memiliki nilai kemudian diproses. Pengolahan data diperlukan untuk mendeskripsikan perubahan bentuk data menjadi informasi yang memiliki kegunaan. Informasi dapat
11
didefinisikan sebagai data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya (Jogiyanto, 2005). Dari definisi ini jelas bahwa informasi yang awalnya adalah data setelah diolah maka dapat memberikan manfaat dan kegunaan bagi penerima informasi. Dari pengolahan data didapatkan informasi yang memiliki nilai dan nilai dari sebuah informasi (value of information) ditentukan dari dua hal yaitu manfaat dan biaya untuk mendapatkannya. Suatu informasi dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya untuk mendapatkan informasi tersebut (Al Bahra, 2005). 2.2.3 Sistem Informasi Sistem informasi dapat didefinisikan sebagai berikut (Al Bahra, 2005): Suatu sistem yang dibuat oleh manusia yang terdiri dari komponen-komponen dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi. Sekumpulan
prosedur
organisasi
yang
pada
saat
dilakasanakan akan memberikan informasi bagi pengambil keputusan atau untuk mengendalikan organisasi. Suatu
sistem
mempertemukan
didalam kebutuhan
suatu
organisasi
pengolahan
yang
transaksi,
mendukung operasi, bersifat manajerial, dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan.
12
Sistem informasi dapat pula diartikan sebagai kegiatan dari suatu
prosedur-prosedur
yang
diorganisasikan
bilamana
dieksekusi akan menyediakan informasi untuk mendukukung pengambilan keputusan dan pengendalian di dalam organisasi (Lucas, 1987). Selain itu, terdapat definisi lain dari sistem informasi adalah kerangka kerja yang mengkoordinasikan sumber daya (manusia, komputer) untuk mengubah masukan (input) menjadi keluaran (informasi),
guna
mencapai
sasaran-sasaran
perusahaan
(Wilkinson, 1992).
2.3 Sistem Informasi Pastoral Kata pastoral berasal dari tiga suku kata pas.to.ral yang dalam kamus bahasa Indonesia dapat memiliki beberapa definisi yaitu berhubungan dengan pastor, mengenai pendeta, mengenai kehidupan di dusun, mengenai gembala, mengenai gembala dan penghidupannya,
dan karya
sastra
yang
menggambarkan
kehidupan pedesaan yang tenang dan tenteram. Mengambil definisi pastoral mengenai gembala dan penghidupannya maka ini akan diarahkan pada pelayanan pastoral kepada umat dalam gereja. Umat memiliki berbagai identitas yang disimpan paroki sebagai pendataan gereja namun seringkali data-data tersebut terabaikan. Maka pengolahan data pastoral berbasis perencanaan pastoral berdasarkan dan memperhatikan kondisi real umat (baik
13
segi kualitatif maupun kuantitatif), yang didukung dengan data akurat pada saat ini (Puryato, 2012). Demikian dalam Gereja Katolik Santo Paulus Miki Salatiga perubahan data menjadi informasi memiliki manfaat untuk mendapatkan data umat yang dapat dikelola. Dengan pengolahan data menjadi informasi dewan paroki dapat meningkatkan pelayanan bagi umat
2.4 Framework CodeIgniter 2.4.1 Framework Framework adalah kumpulan fungsi (libraries), maka seorang programmer tidak perlu lagi membuat fungsi-fungsi dari awal, tinggal memanggil kumpulan library atau fungsi yang sudah ada didalam framework dan cara menggunakan fungsifungsi itu sudah ditentukan oleh framework (Wiswakarma, 2010). Penggunaan framework banyak dipilih karena kemudahan yang ditawarkan. Didalam sebuah framework sudah tersedia struktur aplikasi yang baik, standard coding yang harus diikuti oleh programmer untuk menulis code, best practice yang merupakan kumpulan action yang telah teruji oleh para expert, design pattern yaitu teknik-teknik yang menjadi best practice, dan common function adalah fungsi-fungsi atau library yang telah umum digunakan dalam pengembangan sebuah sistem (Daqiqil, 2011). Macam-macam framework : 1. Framework PHP
14
CakePHP CodeIgniter (CI) Symphony Zend Yii Kohana 2. Framework Javascript JQuery Mootools 3. Framework Ruby Ruby on Rails (ROR) 2.4.2 CodeIgniter CodeIgniter (CI) adalah sebuah framework untuk web yang dibuat dalam format PHP. Dengan format ini dapat dibuat sistem aplikasi web yang kompleks. CodeIgniter dapat mempercepat proses pembuatan web karena semua class dan modul yang dibutuhkan sudah ada (Wiswakarma, 2010). Keunggulan
framework
CI
dibandingkan
dengan
framework lainnya adalah (Utama, 2011): 1.
Gratis
2.
Ringan Inti sistem CI hanya membutuhkan sangat sedikit librabry, hal ini merupakan perbedaan kontras dengan framework lain. Library lainnya dapat digunakan dinamis berdasarkan kebutuhan.
15
3.
Cepat Sampai saat ini CI masih diakui sebagai framework yang paling cepat.
4.
Menggunakan konsep Model View Controller (MVC)
5.
Clean URL URL yang digunakan CI bersifat search-engine friendly menggunakan pendekatan segment-based. Contoh: example.com/news/article/345
6.
Library lengkap
7.
Dapat diperluas Developer dapat dengan mudah mengembangkan (extend) library, helper, atau bahkan perluasan class inti CI.
8.
Dukungan teknis yang lengkap di forum CI
Gambar 2.1 Alur Proses CodeIgniter (Utama, 2011)
Penjelasan Gambar 2.1 : 1. Index.php berfungsi sebagai pengendali awal, menginisialisasi sumber daya utama yang dibutuhkan CI. 2. Router memeriksa paket HTTP request untuk menentukan aksi apa yang harus dilakukan oleh sistem.
16
3. Jika cache tersedia, maka halaman langsung dikirim ke browser, eksekusi sistem yang normal akan dilewati. 4. Security. Sebelum Application Controller dieksekusi, paket HTTP request dan semua data yang dikirimkan pengguna akan disaring terlebih dahulu oleh security class. 5. Application Controller menginisialisasi model, librabry utama, helpers dan semua sumberdaya yang dibutuhkan untuk setiap request. 6. Antarmuka aplikasi (view) yang sudah disiapkan dikirimkan ke browser. Jika caching diaktifkan, maka view akan disimpan sementara untuk request yang sama berikutnya.
2.5 Model View Controller MVC adalah konsep dasar yang harus diketahui sebelum mengenal codeigniter. MVC adalah singkatan dari Model View Controller. MVC merupakan sebuah pattern atau teknik pemrograman yang memisahkan bisnis logic (alur pikir), data logic (penyimpanan data) dan presentation logic (antarmuka aplikasi) atau secara sederhana adalah memisahkan antara desing, data dan proses (Daqiqil, 2011).
17
Gambar 2.2 Model View Controller (Rahmadiyanto, 2008)
Dari Gambar 2.2 Model View Controller memberikan gambaran mengenai pola MVC pada CodeIgniter. MVC memiliki peran sendiri dalam struktur pemrograman, adapun penjelasannya adalah sebagai berikut (Rahmadiyanto, 2008): 1. Model Model merupakan struktur data. Secara spesifik kelas model akan mengandung fungsi kode yang akan membantu dalam segala proses yang berhubungan dengan database seperti memasukkan, merubah, mendapatkan, dan menghapus data dalam sebuah database. Kelebihan dari model ini yang pertama adalah membuat detail dari data dan operasinya dapat ditempatkan pada area yang ditentukan dibanding tersebar dalam keseluruhan lingkup aplikasi. Hal ini memberikan keuntungan dalam proses maintenance aplikasi. Kedua, dengan pemisahan total antara data dengan implementasi interface, komponen model dapat digunakan kembali oleh aplikasi lain yang memiliki kegunaan yang hampir sama.
18
2. View View merupakan informasi yang disampaikan ke pengguna. Sebuah view biasanya berupa halaman web tetapi dalam CodeIgniter, view akan berupa fragmen halaman seperti header dan footer. View juga bisa berupa halaman
RSS atau jenis
halaman web yang lain. Kelebihan dari penggunaan view memudahkan penggabungan dari desain yaitu style, look, dan feet tanpa perlu memperhatikan lebih pada detail yang lain. Selain itu, memiliki layer view yang terpisah memungkinkan ketersediaan banyak interface dalam aplikasi. 3. Controller Controller merupakan sebuah perantara antara model dan view dan semua sumber yang dibutuhkan untuk memproses permintaan HTTP dan dalam membuat halaman web. Kelebihan dalam penggunaan layer controller adalah komponen view dapat didesain tanpa harus memperhatikan bagian lain secara berlebih. Memudahkan untuk mengembangkan banyak interface bekerja bersama secara terpisah. Kedua, dengan adanya layer terpisah yang melakukan update terhadap komponen model, detail tersebut dihapus dari layer presentasi. Layer presentasi kembali pada fungsi utamanya untuk menampilkan data kepada user. Detail tentang bagaimana data dari user mengubah ketetapan aplikasi disembunyikan oleh controller.