T1 672006082 Full text

(1)

1 1. Pendahuluan

Teknologi Informasi adalah suatu teknologi yang digunakan untuk mengolah data, termasuk memproses, mendapatkan, menyusun, menyimpan, memanipulasi data dalam berbagai cara untuk menghasilkan informasi yang berkualitas, yaitu informasi yang relevan, akurat dan tepat waktu, yang digunakan untuk keperluan pribadi, bisnis, dan pemerintahan serta merupakan informasi yang strategis untuk pengambilan keputusan.

Website merupakan salah satu pilihan dalam dunia pemrograman aplikasi,

web memiliki banyak keuntungan terutama pada pamecahan masalah di area

enterprise. Banyak pilihan dalam pemprograman web, salah satu bahasa pemrograman yang sangat terkenal dan banyak digunakan oleh para pembuat aplikasi web adalah PHP. Setelah dikembangkannya aplikasi berbasis OOP

(Object Oriented Programming), akhirnya para developer PHP menciptakan sebuah kerangka kerja atau framework untuk memudahkan dalam merancang dan mengembangkan aplikasi berbasis web dengan PHP.

Basis data juga menjadi elemen penting dalam pengembangan sistem informasi, dalam kegiatan rumah sakit yang merupakan penyedia layanan yang pasti memerlukan kecepatan dan konsistensi dalam pelayanan. Apalagi dengan banyaknya kegiatan pelayanan jasa dalam rumah sakit, perlu adanya media penyimpanan data yang cepat, kuat dan performa yang baik. Maka dari itu pengembangan sistem tersebut menggunakan Microsoft SQL Server 2008 yang memiliki performa yang baik sebagai basis data server, serta mampu melakukan komputasi yang besar sebagai media penyimpanan data, yang tentunya juga fleksibel untuk dikembangkan pada kemudian hari.

Sedangkan sistem informasi pasien di dalam rumah sakit sudah menjadi sebuah kebutuhan, terutama untuk meningkatkan akuntabilitas sebuah instansi tersebut. Berdasarkan uraian tersebut maka muncullah ide untuk mengembangkan sebuah sistem informasi pasien yang menerapkan dan meneliti salah satu

framework PHP yaitu Zend 2 yang telah mendukung arsitektur Model View Controller (MVC) dandapat terkoneksi dengan basis data server yaitu Microsoft SQL Server 2008.

Berdasarkan uraian latar belakang tersebut, maka muncullah sebuah keinginan untuk menerapkan dan meneliti Framework Zend 2, aplikasi ini akan digunakan untuk mengembangkan sebuah sistem berbasis web , kenapa website karena sistem tersebut dimungkinkan untuk pengembangan ke beberapa instansi lainnya selain hanya pada lokasi penelitian tersebut agar sistem tersebut menjadi sistem yang real time, memiliki performa yang cepat, ringan, dan perawatan yang mudah. Sistem tersebut merupakan pengembangan dari aplikasi sistem informasi pasien pada rumah sakit bunda medik, yang merupakan sebuah sistem yang mendukung pelayanan pada rumah sakit yang bersangkutan. Sistem ini adalah pengembangan fungsi sistem lama, yang selama ini masih merupakan sistem yang sederhana dan belum memiliki standar kerja pada pelayanan terhadap pasien pada rumah sakit tersebut.

Kasus tersebut dirasa cocok dengan konsep pengembangan Framework

Zend 2, selain karena framework open source juga dalam framework tersebut memiliki konsep module yang lebih baik. Memungkinkan untuk pada


(2)

2

pengembangan sistem menjadi lebih mudah, serta pembatasan penggunaan sistem jadi mudah diatur sesuai kebutuhan, dan memiliki library yang lengkap. Terutama untuk koneksi sistem ke basis data dengan basis data server, karena sistem informasi rekam medik ini digunakan untuk pengolahan data dalam jumlah yang besar, serta akan dikembangkan kearah web service. Dengan penjelasan Zend Framework 2 tersebut maka dirasa tepat framework ini digunakan untuk mengembangkan sistem informasi rekam medik tersebut di rumah sakit bunda medik.

2. Kajian Pustaka

Penelitian Terdahulu penerapan framework PHP, arsitektur Model View Controller (MVC) dalam pengembangan sistem berbasis web sudah cukup banyak digunakan. Dalam beberapa artikel yang memuat tentang penggunaan Framework

PHP, penggunaan framework dapat mempermudah dan mempercepat pembuatan aplikasi berbasis web, yang pasti karena dalam framework tersebut selalu menampilkan moda atau pola-pola tertentu yang memudahkan bagi developer

untuk menghasilkan produk web yang lebih mudah dan baik, salah satunya adalah dengan dukungan pola arsitektur Model View Controller (MVC). MVC terbukti membangun aplikasi secara lebih efektif dengan membagi suatu aplikasi menjadi bagian-bagian tersendiri yaitu Model, View dan Controller.

Pada penelitian yaitu pada jurnal dengan judul Penerapan Framework Zend dan Arsitektur Model View Controller dalam Pengembangan Aplikasi Manajemen Kepegawaian (Studi Kasus: Universitas Kristen Satya Wacana Salatiga). Yang menitih beratkan pada pengembangan ORM (ObjectRelationalMapping) dengan penggunaan framework Zend, atau yang sekarang dikenal sebagai Zend framework 1. Dalam jurnal tersebut berusaha mencari keuntungan dengan pengembangan teknologi yang dapat mempersingkat penulisan database atau mengefisienkan proses penulisan query SQL agar tidak terjadi pengulangan berkali-kali dalam penulisan query tersebut yaitu dengan menggunakan Object Relational Mapping, programmer. Pada artikel yang berjudul Object Relational Mapping dinyatakan bahwa dengan diterapkannya ORM memungkinkan

programmer untuk melakukan manipulasi dan pengendalian data dalam basis data dengan lebih praktis, terutama pada aplikasi yang banyak melakukan pemrosesan data dalam basis data yang digunakan, karena ORM dapat mengurangi penulisan berulang pada kode SQL yang digunakan [1].

Penelitian yang lainnya, yaitu pada jurnal dengan judul Sistem Informasi Manajemen Rumah Sakit Bersalin Ananda Palembang, tujuan penulisan ini adalah untuk membuat Sistem Informasi Manajemen Rumah Sakit Bersalin Ananda. Penelitian membangun sebuah sistem informasi manajemen berbasis desktop

menggunakan Microsoft Visual Studio 2008 dan Microsoft SQL Server 2008

sebagai database dan jaringan(LAN) sebagai media untuk mengkomunikasikan data antara komputer satu dengan lainnya. Metode yang digunakan dalam penulisan laporan ini adalah metode iterasi, dengan melakukan fase perencanaan, fase analisis, fase perancangan, analisis sistem yang berjalan, wawancara dan observasi serta pengumpulan data-data untuk memperoleh informasi yang


(3)

3

dibutuhkan. Dari hasil implementasi sistem informasi manajemen Rumah Sakit Bersalin Ananda dapat mengolah data dengan cepat, menyajikan informasi yang dibutuhkan oleh manajemen dan pasien dengan cepat dan akurat serta dapat menyimpan data dengan aman sehingga dapat membantu dalam proses pelayanan terhadap masyarakat [2].

Kerangka kerja (framework) adalah suatu struktur konseptual dasar yang digunakan untuk memecahkan atau menangani suatu masalah kompleks. Istilah ini sering digunakan antara lain dalam bidang manajemen untuk menggambarkan suatu konsep yang memungkinkan penanganan berbagai jenis atau entitas bisnis secara homogen. Dalam bidang perangkat lunak untuk menggambarkan suatu desain sistem perangkat lunak yang dapat digunakan kembali [3].

Sebuah framework umumnya telah menyertakan perintah-perintah siap pakai yang dibutuhkan dalam membuat suatu aplikasi, namun pihak developer tetap harus menulis kode sendiri dan harus menyesuaikan dengan lingkungan

framework yang digunakan.

Zend Framework 2 dikembangkan mulai pada akhir tahun 2005 oleh Zend Technologies, sebuah perusahaan spesialis PHP memulai sebuah proyek untuk meningkatkan kinerja dari PHP dengan Framework Zend sebagai produk awalnya. Proyek itu menghasilkan 3 keluaran, yaitu sebuah Eclipse IDE plugin

dengan nama PDT, Framework Zend dan sebuah website Zend Developer Zone

[4].

Pada awalnya Framework Zend (ZF) sendiri merupakan sebuah framework open source dalam pengembangan aplikasi web dan web services menggunakan PHP 5 dan diimplementasikan menggunakan object oriented code dan arsitektur MVC. Framework Zend menawarkan kehandalan dalam menerapkan arsitektur MVC. Dan setelah dirilisnya Framework Zend 2, maka berubah pula istilah pada

Framework Zend versi lama yaitu menjadi Framework Zend 1 (ZF1) yang menjadi pembeda dalam pemakaian istilah pada pengembangan framework

tersebut.

Zend Framework (ZF) yang merupakan framewok open source PHP berbasis object oriented yang digunakan untuk mempermudah programmer dalam membangun aplikasi web. Zend Framework 2 (ZF2) adalah pengembangan dari ZF1 yang telah didownload lebih dari 15 juta kali. ZF2 mensyaratkan penggunaan minimal PHP versi 5.3, karena ZF2 menggunakan seluruh fitur unggulan PHP 5.3 seperti namespace, closure, lambda functions dan lain-lain.

Berikut beberapa pengembangan baru yang terdapat pada Zend Framework 2 yang antara lain.

Pertama adalah sistem Packaging Baru ZF2 memiliki sampai empat pilihan cara untuk diinstall dan disetup,

Cara pertama adalah cara klasik yaitu dengan men-download lewat halaman download Zend Framework. Cara kedua Ssrupa dengan yang pertama tapi melalui halaman Github mereka. Cara ketiga menggunakan perangkat dependency management Composer. Cara terakhir adalah menggunakan PEAR2_Pyrus.

Yang menarik buat adalah penggunaan Composer yang merupakan teknik packaging yang memungkinkan Anda untuk hanya menggunakan paket yang dibutuhkan saja. Singkatnya, Anda cukup mendeklarasikan kebutuhan/


(4)

4

dependency sistem Anda ke dalam file composer.json, maka Composer akan men-download dan meng-update hanya paket-paket tersebut.

Zend Framework 2 memang benar-benar merubah banyak hal, bukan hanya dari sisi kode-nya, tapi dari cara pandang penyelesaian masalah. Module adalah salah satu konsep yang benar-benar berubah pada Zend Framework 2. Dan melihat perubahan ini adalah ke arah yang jauh lebih baik dari versi sebelumnya.

Selanjutnya pengembangan baru adalah konsep Module, Plugin dan

Router, biarpun tidak dijelaskan secara spesifik, Zend Framework 1 seolah membagi jenis kontribusi third party developer pada siklus MVC dalam tiga hal yang berbeda: Module, Plugin, dan Router. Akibatnya tidak sedikit programmer, ketika membangun sistem membagi pluggable code ini pada tiga hal tersebut.

Module berisi Model, View dan Controller yang membangun porsi tertentu dari website. Sehingga yang masuk dalam kategori module adalah sub sistem seperti artikel, agenda, buku tamu, dan lain-lain.

Sementara router adalah yang bertanggung jawab khusus pada interpretasi URL ke controller tertentu. Akibat pembagian seperti ini, sangat sulit bagi developer dalam membangun module, karena terpecah-pecah dalam beberapa script yang tersebar di mana-mana. Selain itu, ZF1 tidak memiliki fungsionalitas untuk meng-arsip-kan module ke dalam satu paket.

Module di Zend Framework 2 merupakan pengembangan konsep baru pada Zend Framework 2, konsep tersebut diubah secara drastis di Zend Framework 2. Istilah module, plugin dan router disatukan dalam satu istilah yaitu module. Module pada Zend Framework 2 bukan hanya berisi “module” ala ZF1, tapi juga bisa berupa plugin yang berbasis event, sekaligus router. Dalam module juga bisa berisi aset seperti view lengkap dengan file javascript dan CSS. Dan semuanya terkumpul dalam satu direktori, yang juga berada dalam satu namespace.

Dengan demikian, module di Zend Framework 2 bisa berupa modul artikel atau berita. Juga bisa berupa RSS, fungsi email, REST, Google Analytics insertion, dan banyak lagi kemungkinannya. Anda bisa melihat contoh-contoh module ini di repositori module ZF2.

Selain itu, Zend\ModuleManager\ModuleManager sebagai otak yang mengelola seluruh module dalam aplikasi ZF2 memiliki fitur untuk mengagregasi module-module sehingga memungkinkan satu module menggunakan module lain, dan kita bisa dengan mudah mendefinisikan kebergantungan antar module ini dalam file composer.json.

Dependency/Kebergantungan dalam OOP menjadi hal yang tidak bisa dihindari karena secara natural OOP memang berusaha untuk membuat abstraksi-abstraksi. Satu fungsionalitas sebisa mungkin dipecah dalam class/object yang berbeda-beda, sehingga mudah untuk dibongkar pasang. Dalam OOP tidak boleh ada satu class yang melakukan semuanya. Akibatnya hampir semua class akan bergantung pada class yang lain.

Dependency tentu bukan hal yang buruk, karena abstraksi memang sangat diperlukan untuk membuat sistem yang kita bangun lebih modular. Dengan abstraksi, sistem kita bisa memiliki lebih banyak pilihan. Dan developer lain bisa


(5)

5

mengembangkan komponen-komponen yang bisa dipasangkan ke sistem yang kita bangun tanpa mengubah kode yang sudah kita tulis.

Di sinilah Dependency Injection dibutuhkan. Dependency Injection adalah teknik untuk meng-inject (memasukan) object lain ke dalam satu object. Pada kasus di atas, class Registration perlu diubah dengan dependency injection menjadi seperti berikut. Dependencyinjection adalah design pattern yang berguna untuk membuat kode kita lebih fleksibel dan modular. Konsep dependency injection adalah konsep lama, mungkin seusia dengan konsep OOP itu sendiri. Dan kemungkinan besar developer telah menggunakannya sehari-hari, walaupun baru familiar dengan instilahnya sekarang [4].

Model View Controller (MVC) Jika diterjemahkan dalam bahasa Indonesia, Model View Controller dapat diartikan sebagai model, tampilan dan pengontrol. Dalam konteks penelitian ini, MVC diartikan sebagai pola arsitektur yang digunakan untuk rekayasa perangkat lunak. Di mana aplikasi dibagi menjadi 3 (tiga) modul utama, yaitu model, view dan controller. Dengan cara seperti ini maka manajemen pembagian tugas dan maintenance akan lebih mudah dan rapi.

Gambar 1. ArsitekturMVC [5]

Gambar 1. merupakan gambaran arsitektur MVC. Di mana request yang datang akan ditangani oleh bagian controller, kemudian controller berkomunikasi serta melakukan kontrol terhadap view dan model. Model dan view tidak berkomunikasi secara langsung, tetapi berkomunikasi melalui controller. Hanya

model saja yang memiliki akses ke basis data [5].

Berikut ini merupakan penjelasan tentang bagian-bagian arsitektur MVC :

Model bertugas sebagai business logic atau merepresetasikan struktur data dari situs web yang bisa berupa basis data maupun data lain, misalnya dalam bentuk file teks atau file XML. Biasanya di dalam model akan berisi class dan fungsi untuk mengambil, melakukan update dan menghapus data situs web. Karena sebuah situs web biasanya menggunakan basis data dalam menyimpan data maka bagian model biasanya akan berhubungan dengan perintah-perintah

query SQL.

View merupakan informasi yang ditampilkan kepada pengunjung situs

web. Sebisa mungkin di dalam view tidak berisi logika-logika kode tetapi hanya berisi variabel-variabel yang berisi data yang siap ditampilkan. View adalah halaman situs web yang dibuat menggunakan HTML dengan bantuan CSS atau

Javascript. Di dalam view jangan pernah ada kode untuk melakukan koneksi ke basis data. View hanya dikhususkan untuk menampilkan data-data hasil dari


(6)

6

Controller sesuai dengan namanya, controller bertugas sebagai pengontrol atau penghubung antara model dan view. Misalnya ada sebuah event atau request

baru maka akan ditangani oleh Controller. Dari Controller akan dicari apa maksudnya. Kemudian controller akan menghubungi Model untuk mengolah datanya dan melakukan generateoutput menggunakan View.

Jadi secara singkat urutan dari sebuah permintaan adalah sebagai berikut:

user berhubungan dengan view, di mana di dalam view inilah semua informasi ditampilkan. Saat user melakukan permintaan, misal klik tombol maka permintaan tersebut akan diproses oleh controller. Apa yang harus dilakukan, data apa yang diinginkan, apakah ingin melihat data, atau memasukkan data atau mungkin melakukan validasi data terlebih dahulu, semua diproses oleh controller. Kemudian controller akan meminta model untuk menyelesaikan permintaan, apakah melakukan query atau apapun. Dari model, data akan dikirim kembali untuk diproses lebih lanjut di dalam controller dan baru dari controller data akan ditampilkan di view.

Gambar 2. MVCdalam Framework Zend [6]

Gambar 2. merupakan arsitektur MVC dalam sebuah aplikasi web

menggunakan pustaka frameworkZend. untuk membuat URL statis (Clean URL). File /application/controller/indexcontroller.php berisi kelas untuk menangani permintaan. Sementara dalam direktori /application/model berisi kelas untuk menangani database. Sedangkan /application/views untuk mewadahi HTML

template yang berekstensi .phtml. 3. Metode dan Perancangan Sistem

Metode penelitian yang digunakan pada pembuatan aplikasi ini yaitu model waterfall. Model waterfall disebut juga dengan classic life cycle. Secara lengkap, alur model waterfall yang merupakan model klasik akan digambarkan seperti pada gambar 3.


(7)

7

Gambar 3.Waterfall Model [7]

Keuntungan dari model waterfall ini, yaitu setiap tahapan akan dievaluasi secara teliti untuk mendapatkan hasil yang maksimal. Model tersebut dipilih karena kegiatan penelitian tersebut memerlukan waktu pengembangan yang terbatas dan interaksi antara peneliti dan user terbatas, maka dari itu metode tersebut merupakan metode yang paling tepat dan efisien. Berikut ini merupakan tahapan metode Waterfall dalam penelitian ini:

Analisis kebutuhan dan pendefinisiannya Analisa kebutuhan dilakukan dengan melakukan penelitian pada bagian yang dibutuhkan dalam sistem informasi tersebut yaitu sistem yang berjalan pada pencatatan atau dokumentasi dan alur dari pasien baik rawat inap, jalan, ataupun kegiatan lain seperti phisiotherapi di sebuah rumah sakit.

Dalam tahap ini dilakukan analisa terhadap kebutuhan pengguna sistem berdasarkan proses bisnis yang ada. Perancangan sistem dan perangkat lunak. Setelah melakukan analisa kebutuhan pengguna sistem, tahap kedua adalah melakukan perancangan sistem yang akan dibangun. Perancangan sistem dibuat dengan menggunakan diagram-diagram UML.

Perancangan sistem dan perangkat lunak, setelah melakukan analisa kebutuhan pengguna sistem, tahap kedua adalah melakukan perancangan sistem yang akan dibangun. Perancangan sistem dibuat dengan menggunakan diagram-diagram UML.

Implementasi dan pengujian unit, tahap ketiga adalah melakukan implementasi dari hasil perancangan sistem menggunakan Zend framework 2 serta dilakukan pengujian untuk mencari kesalahan pemrogramannya. Hasilnya dievaluasi kembali, jika masih belum sempurna, maka dikembalikan ke tahap sebelumnya yaitu tahap perancangan dari tahap tersebut.

Migrasi dan pengujian sistem, merupakan tahap ke 4 (empat) adalah menyatukan program dan melakukan pengujian sistem, apakah benar-benar memberikan manfaat dalam segi efisiensi dan efektifitas serta memudahkan pengguna dalam pemakaiannya sehingga bisa menciptakan sebuah sistem yang terkomputerisasi dengan baik. Pada tahapan ini sistem akan dievaluasi. Tahap terakhir atau ke lima belum terdokumentasi olehkarena sistem tersebut belum terimplementasi pada pengguna, maka tahapan operasi dan pemeliharaan sistem tidak dapat dianalisis untuk saat pengembangan sistem tersebut.

Tahap-tahap Penelitian, pada umumnya suatu penelitian dapat diperinci dala tujuh tahap yang satu sama lain saling bergantung dan berhubungan. Dengan


(8)

8

kata lain masing-masing tahap itu saling mempengaruhi dan dipengaruhi oleh tahap-tahap yang lain. Kesadaran terhadap keadaan ini membuat seorang peneliti lebih bijaksana dalam mengambil keputusan pada setiap tahap penelitian. Adapun tujuh tahap itu sebagai berikut :

Perencanaan meliputi penentuan tujuan yang ingin dicapai oleh suatu penelitian dan merencanakan strategi umum untuk memperoleh dan menganalisa data bagi penelitian itu. Hal ini harus dimulai dengan memberikan perhatian khusus terhadap konsep.dan hipotesis yang akan mengarahkan peneliti yang bersangkutan dan penelaahan kembali terhadap literatur termasuk penelitian yang pernah dilakukan orang sebelumnya yang berhubungan dengan judul dan masalah

penelitian yang bersangkutan. Tahap ini merupakan tahap penyusunan “term of

reference”(TOR).

Pengkajian secara teliti terhadap rencana penelitian. Tahap ini merupakan pengembangan dari tahap perencanaan. Di sini disajikan lagi latar belakang penelitian, permasalahan, tujuan penelitian, hipotesis serta metode atau prosedur analisis dan pengumpulan data. Tahap ini meliputi pula penentuan macam data yang diperlukan untuk mencapai tujuan pokok penelitian. Tahap ini merupakan tahap penyusunan usulan proyek penelitian.

Pengambilan contoh (sampling), ini adalah proses pemilihan sejumlah unsur/ bagian tertentu dari suatu populasi guna mewakili seluruh populasi itu. Dalam tahap ini peneliti harus secara teliti membuat definisi atau rumusan mengenai populasi yang akan dikaji. Rencana pengambilan contoh itu terdiri dari prosedur pemilihan unsur-unsur populasi dan prosedur menjadikan atau mengubah data dari hasil sampel untuk memperkirakan sifat-sifat seluruh populasi. Tantangan yang harus dihadapi dalam penyusunan rencana pengambilan contoh ini adalah bagaimana kita dapat mengikuti sedemikian rupa prosedur yang kita miliki dengan keadaan setempat dan dengan sumber daya yang tersedia sementara tetap mempertahankan kebaikan atau keuntungan dari sample survey.

Penyusunan daftar pertanyaan, ini merupakan proses penterjemahan tujuan-tujuan studi ke dalam bentuk pertanyaan untuk mendapatkan jawaban yang berupa informasi yang dibutuhkan. Sebenarnya ini merupakan proses coba-coba (trial and error) yang membutuhkan waktu yang cukup lama. Hal yang perlu diperhatikan adalah jumlah dan macam pertanyaan serta urutan dari masing-masing pertanyaan. Tidak ketinggalan pula adalah upaya bagaimana agar orang-orang yang diwawancarai (responden) dengan senang hati mau menjawab pertanyaan-pertanyaan yang diajukan dan tetap senang dalam memberikan jawaban- jawaban.

Kerja lapangan, tahap ini meliputi pemilihan dan latihan para pewawancara, bimbingan dalam wawancara serta pelaksanaan wawancara. Ini dapat meliputi pula berbagai tugas yang berhubungan dengan pemilihan lokasi

sampel dan pretesting daftar pertanyaan. Kerja lapangan ini tidak akan diperlukan bila kita menggunakan cara wawancara lewat telepon atau surat.

Editing dan coding, coding adalah proses memindahkan jawaban yang tertera dalam daftar pertanyaan ke dalam berbagai kelompok jawaban yang dapat disusun dalam angka dan ditabulasi. Editing biasanya dikerjakan sebelum coding


(9)

9

daftar pertanyaan yang telah diisi apakah yang ditulis benar atau sudah sesuai dengan yang dimaksud.

Analisis dan laporan, ini meliputi berbagai tugas yang saling berhubungan dan terpenting pula dalam suatu proses penelitian. Suatu hasil penelitian yang tidak dilaporkan atau dilaporkan tetapi dengan cara yang kurang baik tidak akan ada gunanya. Tugas yang dikerjakan pada tahap ini ialah penyajian tabel-tabel dalam bentuk frekuensi distribusi, tabulasi sialng atau dapat pula berupa daftar yang memerlukan metode statistik yang kompleks kemudian interpretasi dari penemuan-penemuan itu atas dasar teori yang telah kita ketahui.

Perancangan Model View Controller

Perancangan Module

Pada zend framework 2 pengembangan MVC menjadi tahapan yang sangat berpengaruh, tahapan tersebut merupakan gambaran umum dari program yang akan diciptakan. Module menjadi elemen penting dalam pengembangan MVC yang dimiliki oleh zend framework 2, dalam module tersebut berisikan semua konsep MVC yaitu Model, View, dan Control antara lain.

Admision

Application

Main

Medic

SysAdmin

Perancangan Model

Model merupakan bagian yang bertugas merepresentasikan data yang digunakan oleh aplikasi sebagaimana proses bisnis yang diasosiasikan terhadapnya. Bagian Model yang dibangun berhubungan langsung dengan basis data dan menangani validasi dari bagian Controller, namun tidak berhubungan langsung dengan view. Model dalam aplikasi ini dikelompokkan dalam 2 (dua) buah package. Berikut ini merupakan Model yang dibuat dalam aplikasi ini:  Package Db : di dalamnya terdapat class-class yang berhubungan dengan

basis data.

Package Proses : di dalamnya terdapat sebuah class untuk menangani validasi dari bagian Controller.

Perancangan View

View merupakan bagian yang menangani presentation logic. Pada aplikasi web bagian ini biasanya berisi file template HTML yang diatur oleh Controller.

View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian Model. Pada aplikasi ini bagian

View berisi file template PHTML. Desain yang dilakukan pada bagian View

dikelompokkan dalam package-package untuk lebih memudahkan lagi dalam pengembangan, yaitu:


(10)

10

Package View index : berisi file index.phtml untuk tampilan login dan file

logout.phtml untuk logout.

Package View Admision: berisi file-file PHTML untuk menangani tampilan pada menu Administrasi, yang berisikan juga sub view yaitu dashboard, jadwal dokter, reservasi,ruang pasien, registrasi, dan reservasi.

Package View Main: berisi file-file PHTML untuk menangani tampilan pada menu utama pada tampilan sistem yang beriskan sub view antara lain access, home, menu, dan my-account .

PackageView Medic: berisi file-file PHTML untuk menangani tampilan pada menu bagian medis yang berisikan sub menu antara lain dokter dan pasien.  Package View SysAdmin : berisi file-file PHTML untuk menangani tampilan

pada menu kelengkapan yang dimiliki oleh admin yang antara lain education, error, religion,sysadmin,dan user group.

Perancangan Controller

Controller merupakan bagian yang mengatur hubungan antara bagian model

dan bagian view. Controller berfungsi untuk menerima request dan data dari user

kemudian menentukan apa yang akan diproses oleh aplikasi.

Controller yang dibuat dalam aplikasi ini yaitu:  IndexController

 DashboardController  ReservationController  PatientroomController  PatienttodayController  RegistrationController  ReservationController  AccessController  HomeController  MenuController  MyAccountController  DoctorController  PatientController  ErrorController

Perancangan sistem menggunakan Unified Modelling Language (UML) yang terdiri dari use case diagram, activity diagram, sequence diagram, class diagram dan deployment diagram.


(11)

11

Gambar 4.Use Case Diagram Sistem

Di dalam use case diagram sistem, seorang user dalam hal ini adalah Administrator harus melakukan login terlebih dahulu ke dalam sistem. Pemilihan

login akan menentukan hak akses dari seorang user. Terdapat 4 (empat) hak akses yaitu sebagai Admission, admission BIC, Admission Inpatient, dan Administrator seperti tergambar pada Gambar 4. Dan dalam penjelasan tersebut Administrator memiliki akses ke semua user, dan dalam lingkup sebagai main user atau dalam artian sebagai user yang memiliki segala akses ke dalam sistem.

Activity diagram menggambarkan proses-proses yang terjadi dari suatu aktifitas dimulai sampai berhenti. Untuk kebutuhan proses dari sistem yang akan dibangun, terdapat Terdapat 3 (tiga) activity diagram yaitu sebagai Admission, Admission BIC, dan Administrator.

Pasien Dokter

Master pasien

Master dokter

Transaksi harian Status kamar inpatient

Status antrean

Lihat jadwal dokter Admision BIC

Registrasi pasien Admision

Inpatient

Pengaturan Akun

Manipulasi Admision

Manipulasi Admision Inpatient

Manipulasi Admision BIC administrator

Manipulasi Dokter Reservasi

Admision


(12)

12

Gambar 5.Activity DiagramSystem

Gambar 5. menggambarkan aktifitas-aktifitas yang terjadi dalam hak akses Administrator. Aktifitas-aktifitas tersebut adalah pengaturan unit kerja admission,

admission BIC, admission inpatient, mester group, master pasien, master dokter, pembagian hak akses dalam sistem dan terakhir melakukan aktivitas log out.

Sequence diagram menggambarkan interaksi antar obyek di dalam dan di sekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertikal (waktu) dan dimensi horisontal (obyek-obyek yang terkait). Sequence diagram

biasa digunakan untuk menggambarkan skenario atau rangkaian langkah yang dilakukan sebagai tanggapan dari sebuah event untuk menghasilkan output

tertentu.

Start

End ki ri m request

data Logi n

Set Admi si on Set Admi ssi on

BIC Set Admi ssi on

Inpati ent Set Master User Group Set Master User Set hak Akses

Set Master Pasi en Set master

Dokter Logout cek season

true fal s Sistem administrator


(13)

13

Gambar 6Sequence Diagram Sistem

Gambar 6 merupakan sequence diagram untuk proses sistem yang dilakukan oleh seorang Administrator. Penjelasan prosesnya adalah sebagai berikut:

- Seorang Administrator pertama kali harus melakukan login ke aplikasi dengan memasukkan username, password dan hak aksesnya.

- Data login yang dimasukkan saat login akan diteruskan ke database yang untuk dilakukan pemeriksaan apakah valid atau tidak dan akan disesuaikan hak aksesnya.

- Diasumsikan bahwa data login valid sehingga pegawai dapat masuk ke yang ingin dituju antara lain Form Dokter, Form Admision, Form Admision BIC, dan lainnya.

- Dalam masing-masing Form terdapat pilihan yang dapat digunakan oleh Administrator.

- Untuk menutup aplikasi, pegawai tersebut melakukan log out sehingga

database tertutup yang disusul dengan tertutupnya semua Form yang terdapat pada sistem.

Aplikasi yang dibuat memiliki class diagram seperti yang terlihat pada Gambar 6.

: Us er Dokter model Admision Model Admision BIC Model Admision Inpatient Basis data

1: Log in

2: Pilih menu Dokter 3: Pilih Admision

4: Pilih admision BIC 5: 6:

7: Olah data User 8: Cek Dokter

9: Cek Admision

11: Cek Admis ion BIC

12: Cek Admis ion Inpatient 10:


(14)

14

Gambar 7. Class diagram sistem

Classdiagram terdiri dari tabel-tabel yang digunakan dalam sistem. Tabel Dokter Master adalah menyimpan informasi tentang seluruh data dokter . Tabel

dokter master ini memiliki 12 (dua belas) relasi dengan tabel lainnya. Sedangkan tabel Medic Patiente Info merupakan tabel inti bagi pasien yang berisikan semua data yang dimiliki pasien, baik nama, alamat, rekam medik, kode dokter, ruang praktek, dan lainnya. Relasi tabel Dokter Master dengan tabel Medic Patiente

adalah Many To Many, di mana setiap dokter dapat diabsen lebih dari 1 (satu)Pasien . Demikian juga sebaliknya, setiap pasien dapat berisi lebih dari 1 (satu) Dokter.

Gambar 8 merupakan deployment diagram sistem yang menggambarkan perangkat apa saja yang digunakan saat deployment.

Gambar 8.Deployment Diagram System

Proses bisnis tidak pernah lepas dari sistem informasi, karena cara atau metode terbentuknya sistem oleh karena tahapan pada proses bisnis tersebut. Kegiatan tersebut menunjang bagi pengembang untuk mengetahui bagaimana jalannya sistem yang akan dibuat, alur yang terjadi didalam sistem, kegiatan apa yang terjadi, serta kebutuhan lain yang terjadi dan perlu diimplementasikan dalam sistem tersebut.

Proses tesebut diawali dari pasien yang akan melakukan kegiatan pada rumah sakit tersebut, yang antara lain adalah melakukan pengecekan berkala,

Main Server (Model, Controller)


(15)

15

melakukan rawat inap, konsultasi ke dokter atau physiotherapy, serta kegiatan lainnya. Selanjutnya sistem akan melakukan proses kegiatannya dengan perantara administrasi sebagai jembatan antara pasien dan kegiatan di rumah sakit tahapan selanjutnya adalah administrasi mentransferkan segala informasi yang berkaitan dengan pasien ke sistem tersebut, dengan ketentuan-ketentuan yang telah dimiliki. Apabila semua data pada pasien telah terdokumentasi pada sistem, maka kegiatan selanjutnya adalah dokter dapat mencek segala kegiatan atau jadwal yang dimilikinya dalam kegiatan tindakan ke pasien pada sistem rekam medik tersebut. Pengolahan, pencatatan, tampilan sistem disimpan dalam ruang penyimpanan berupa basis data dan untuk kemudahan segala kegiatan sistem karena ruang lingkup sistem tersebut sangat besar, maka dari itu website menjadi pilihan karena selain kecepatannya juga kegiatan menjadi lebih mudah baik untuk penanganan kejadian yang tidak diinginkan juga perawatan menjadi murah serta aman.

4. Hasil dan Pengimplemetasian Implementasi Model View Controller

Arsitektur MVC yang telah dibuat dapat dilihat pada Gambar 9.

Gambar 9. Module MVC dalam Sistem

Pada gambar 9 bentuk model module MVC ditampilkan dalam bentuk seperti konsep tersebut, module memiliki sub yang merupakan bentuk dari MVC sistem yang berisikan antara lain Admision, Application, CommonUsage, Main, Medic, OldSystem, SysAdmin_Old. Dalam module tersebut dijabarkan lagi masing-masing MVC yang dipisahkan antara submodule-module tersebut.


(16)

16

Gambar 10. MVC pada Sistem

Gambar 10 merupakan konsep penjelasan module yang lebih detail merujuk bentuk MVC masing-masing module. Dalam sub module tersebut diperlihatkan bentuk MVC dari masing-masing sub module. Seperti pada contoh

module Medic berisikan controller berupa DoctorController dan

PatientController. View model tersebut berupa contentonly, layout, layoutbak, login, mobile, dan nav.

Implementasi Sistem Informasi Rekam Medik

Pemprograman web dengan platform php memiliki banyak pilihan

framework dan dari beberapa framework tersebut memiliki banyak perbedaan dan keistimewaan antara masing-masing framework tersebut. Termasuk cara instalasi, penggunaan, setingan, serta banyak perbedaan. Maka dari itu dipenelitian ini juga akan menjelaskan bagaimana frameworkZend 2 tersebut mulai dari tahap instalasi

framework, sampai nanti juga tahapan-tahapan dalam setingan serta pada tahap implementasi sistem, dan terakhir adalah tahapan pengujian sistem tersebut.


(17)

17

1. <?php

2. return array(

3. 'db' => array(

4. 'username' => 'sa',

5. 'password' => 'Password.',

6. 'database' => 'SIRSFRONT',

7. 'hostname' => '(local)',

8. ),

9. );

Konfigurasi Sistem Informasi Pasien Kode Program 1. Konfigurasi Koneksi basisdata

Kode program 1 tersebut berisikan penjelasan koneksi antara sistem dengan basis data, dalam penelitian ini basis data yang digunakan dengan nama

SIRSFRONT dengan username basis data server ’sa’ berlokasi pada hostname local.

Tampilan awal pada saat user mengakses aplikasi adalah halaman login. Penanganan login dibuat menggunakan Kode Program 2.

Kode Program 2. Kode Program untuk Login (1)

Dalam kode program 2 kembali dijelaskan tahapan awal sistem dalam melakukan pemanggilan ke tampilan login sistem. Diperlukan tanda pengenal

framework yang di gunakan dalam penelitian ini adalah versi Zend Framework 2.1.0 di buktikan dengan kode program putenv("ZF2_PATH=..\ZendFramework-2.1.0\library");. Karena konsep MVC adalah bagian yang ada pada framework

Zend tersebut, untuk selanjutnya kode untuk menjalankan aplikasi atau Run

sistem memangil konfigurasi awal didalam 'config/application.config.php')->run();.

Kode Program 3. Kode Program untuk cek database

1. <?php

2. chdir("..\bundacore");

3. // Set ZF2 Library Path

4. putenv("ZF2_PATH=..\ZendFramework-2.1.0\library");

5. // Application Type

6. putenv("APP_TYPE=desktop");

7. // Setup autoloading

8. include 'init_autoloader.php';

9. // Run the application!

10.Zend\Mvc\Application::init(include 'config/application.config.php') >run();

1. 'db' => array(

2. 'driver' => 'Sqlsrv',

3. ),

4. 'db_cloud' => array(

5. 'driver' => 'Sqlsrv',

6. ),

7. 'service_manager' => array(

8. 'factories' => array(

9. 'Zend\Db\Adapter\Adapter'


(18)

18

Koneksi basis data dengan sistem tidak bisa begitu saja di jalankan karena dalam server web XAMPP 1.8.1 tidak terdapat driver yang langsung kopetibel dengan basis data SQL Server 2008, maka dari itu diperlukan tambahan driver di luar dari fitur xampp tersebut. Yaitu diver sqlsrv, yang dalam penelitian ini adalah

driver php_sqlsrv_54_ts.dll setelah dideklarasikan dan telah terkoneksi, didalam sistem akan mengenali sebagai sqlsrv saja. Seperti terlihat pada kode program 3 untuk pendeklarisian driver sebagai konektor antara server web dengan server

basis data.

Kode Program 2 bertugas membuat obyek untuk menggunakan path library Zend yang digunakan dalam khasus ini menggunakan library zend versi

ZendFramework-2.1.0. Kode program ke 3 adalah aplikasi mencek ke database

untuk mengetahui koneksinya, dengan sebelumnya melakukan pengecekan pada

driver yang digunakan. Pada kasus tersebut ‘sqlsrv’ adalah driver yang menghubungkan XAMPP dengan SQL Server 2008.

Implementasi Sistem Informasi

Gambar 11. Halaman Administrator

Apabila login valid, maka aplikasi akan menampilkan tampilan yang sesuai dengan hak akses saat login. Gambar 11 merupakan halaman yang menjadi halaman home untuk administrator. Dalam halaman home terdapat link-link yang akan menghubungkan administrator ke fungsi lainnya. Untuk hak akses

Admission, Admission BIC, Admission inpatient, dokter, pasien, dan lain-lain. Sebelum masuk ke tampilan admin tersebut sistem perlu melakukan validasi data yang diantaranya pengecekan ke dalam sistem apakah sudah berfungsi sebagai mana selayaknya atau memang belum berfungsi, hal tersebut dapat di cek pada kode program 3.

Kode Program 4. Proses validasi data

1. $form = new UserMaster('userForm');

2. $form->setData($param);

3. $form->get('USER_GROUP')->setValueOptions($optUsg);

4. $form->setUserGroupValues($optUsg);

5. if($form->isValid()) {

6. // Get Data

7. $validData = $form->getData();

8. unset($validData['USER_NUMBER']);

9. unset($validData['CSRF']);

10. unset($validData['userFormSubmit']);

11. if(!empty($validData['PASSWORD'])) {

12. $validData['PASSWORD'] = md5($validData['PASSWORD']);

13. }


(19)

19

Dalam proses validasi data, proses tersebut di dalam tahapan untuk mencek data dari user yang akan masuk ke dalam sistem atau terlihat pada kode program 4. Pada proses tersebut user di cek dengan password serta hak akses dan User Group yang dimiliki oleh user tersebut. Data yang masuk akan di uji validitasnya atau akan disesuaikan dengan basis data yang ada dalam sistem untuk selanjutnya akan masuk form yang dimiliki user. Password pada sistem ini dienkripsikan dengan pengacak md5 seperti terlihat pada kode

$validData['PASSWORD'] = md5($validData['PASSWORD']);.

Gambar 12. Halaman Form Reservasi

Sistem tersebut juga memiliki halamam form reservasi seperti terlihat pada gambar 12 tersebut, adapun informasi yang tersedia antara lain informasi pasien yang telah ada dalam Slot, informasi nama pasien yang telah mendaftar, tombol Navigasi. Selain beberapa fungsi tersebut juga berisikan kolom untuk melakukan pencarian pasien dengan cara tekan tombol ”Cari”, maka nama pasien akan tampil setelah melakukan klik yang dikehendaki untuk melakukan reservasi serta tekan

tombol “Daftar’ untuk melakukan pendaftaran pasien baru.

Kode Program 5. Kode Program control jadwal dokter

1. $todayCode = date('N')+1;

2. $tommorowCode = date('N')+2;

3. if($todayCode>7) {

4. $todayCode -= 7;

5. $tommorowCode -= 7;

6. }

7. // Get Doctor Schedule

8. $doctor = $this

9. ->tableService['Admission\DoctorSchedule']

10.->getTodayComplete($this->sess->user['orgId'], 1,$this >pageSize['jadwalDokter']); 11.$dataDoctor = $this->zArray->obj2array($doctor);

12.// Get All Doctor Today

13.$allDoctor = $this

14.->tableService['Admission\DoctorSchedule']

15.->getTodayComplete($this->sess->user['orgId'], 1,$this->pageSize['dokter']); 16.$allDoctor = $this->zArray->obj2array($allDoctor);


(20)

20

Dalam jadwal dokter adalah salah satu pilihan akses yang dimiliki semua user untuk menlihat jadwal dokter koding yang dijalankan seperti tertulis pada kode program 5.

Kode Program 6. Kode Program reservasi

Kode program reservasi digunakan untuk melihat kegiatan yang terjadi di rumah sakit tersebut yang antara lain kegiatan dokter, pasien inggin berobat, data pasien yang terdahulu, dan lainnya. Pada tahapan ini diperlukan proses pengambilan data terdahulu dari pasien, jika pasien sudah teregister atau terdaftar.

Hasil Analisa Pengujian pada pengujian sistem secara keseluruhan dilakukan dengan dua tahap yaitu validasi dan kuisoner.

1. Validasi

Pada tahap pengujian validasi, sistem terlebih dahulu diintegrasikan menjadi satu kesatuan dalam sistem representasi informatif. Pengujian dilakukan dengan pengujian pada unit sistem login, input data dan pencarian data. Hasil dan penjelasan dari validasi dapat dilihat pada tabel 1.

Tabel 1. Pengujian Validasi Sistem

No Unit Pengujian Validasi Data Input Hasil Uji Status Uji

1

Koneksi data

database Username Dikosongkan Gagal login Berhasil Value Username Berhasil login Berhasil Password Dikosongkan Gagal login Berhasil Value Password Berhasil login Berhasil 2 Proses input Inputan data Dikosongkan Tidak ada hasil Berhasil

Value Data

Berhasil

diinputkan Berhasil 3 Proses pencarian Inputan kata Dikosongkan Tidak ada hasil Berhasil

Kata inputan

Berhasil

ditampilkan Berhasil

Dari hasil pengujian semua unit dari pengujian yang ditampilkan pada table 1 berhasil melewati uji validitas sistem sehingga dapat ditarik kesimpulan bahwa hasil dari sistem telah sesuai dengan yang diharapkan.

1. if(!empty($allDoctor)) {

2. $reservation = $this

->tableService['Admission\DoctorSchedule']

3. ->getDoctorSchedule($this->sess->user['orgId'],

4. //reset($allDoctor)['doctorId'] $tommorowCode);

5. }

6. $patientReserve = $this

7. tableService['Admission\RegistrationDetail']

8. ->getTodayByDoctor($this->sess->user['orgId'],

9. //reset($allDoctor)['doctorId'], 'tomorrow');


(21)

-21 2. Kuisoner

Tahap kuisoner dilakukan dengan pengujian sistem yang dilakukan pada beberapa rumah sakit dengan sample sepuluh responden. Dari sepuluh responden terdiri dari satu responden dari bidang perencanaan dan pengembangan dan sepuluh responden dari petugas rumah sakit, petugas rawat inap dan karyawan administrasi dari rumah sakit Bunda medik yang berkepentingan terhadap sistem tersebut. Semua responden diperkenankan menjalankan sistem yang dibangun. Setelah semua responden melakukan pengujian sistem, setiap responden diperkenankan mengisi kuisoner yang telah disediakan untuk mengetahui tingkat efektifitas dari sistem informasi pasien tersebut. kemudian hasil kuisoner dari sepuluh responden (tabel 2.) dianalisa untuk mengetahui tingkat efektifitas dalam bentuk prosentase.

Tabel 2. Hasil Kuisoner

No Pertanyaan

Jawaban

Ya Tidak 1

Apakah program yang dibuat bersifat

user friendly 8 2

2

Apakah menu yang ada sudah mencukupi

dengan kebutuhan yang diperlukan 6 4

3

Apakah informasi yang ada di program

sudah sesuai dengan kebutuhan 7 3

4

Apakah ada kesulitan dalam menjalankan

program 3 7

5

Apakah program tersebut berjalan dengan

lancar 7 3

Dari hasil yang telah dipaparkan pada tabel 2. dihasilkan sebuah prosentase jawaban responden dari setiap pertanyaan yang diajukan. Hasil dan prosentase jawaban tiap-tap pertanyaan dari responden

Hasil Analisa Dari hasil pengujian dengan menggunakan angket, dapat diambil kesimpulan dari kinerja sistem informasi akademik ini yaitu:

User interface sangat mudah dipahami karena menggunakan desain yang sederhana sehingga tidak terlalu susah untuk dimengerti.

 Menu pada sistem sudah mencukupi segala kebutuhan yang diperlukan oleh penggunan.

 Penggunan dengan mudah mengunakan sistem tersebut dan tidak merasakan kesulitan dalam mengaplikasikan sistem yang telah dikembangkan.

 Mes b kipun mengunakan basis dataserver yang tentunya dalam kerja sistem akan lebih berat yaitu Microsoft SQL Server 2008 yang memiliki space

penyimpanan yang besar. Tetapi sistem dapat berjalan dengan baik juga lancar, basis data server dipilih karena kebutuhan sistem yang membutuhkan performa basis data yang besar.


(22)

22 5. Simpulan

Berdasarkan hasil penelitian dan pembahasan yang telah dilakukan tentang penerapan Zend Framework 2, maka disimpulkan bahwa:

Zend Framework 2 adalah framework open source yang memiliki library

yang banyak dibandingkan framework PHP lainnya, dengan banyaknya library

tersebut pengembangan sistem dapat dilakukan lebih baik dibanding framework

lainnya, salah satunya fitur koneksi basis data ke basis data server yang baik. Sehingga mampu mengantisipasi penggunaan data yang banyak pada sistem,

framework tersebut juga kompetibel dengan basis data Microsoft SQL Server 2008

juga ke beberapa basis data termasuk basis data cloud sekalipun. Simpulan lainnya adalah dengan adanya pengembangan module pada framework tersebut memudahkan bagi pengguna untuk mengembangkan sistem tersebut sesuai dengan kebutuhan dan keinginan pengguna, walau untuk kearah web service

sekalipun, dengan melakukan perubahan atau penyesuaian pada module tersebut.

6. Daftar Pustaka

[1] Somya, Ramos. 2010. Penerapan Framework Zend danArsitektur Model View Controller

dalam Pengembangan Aplikasi Manajemen Kepegawaian (Studi Kasus: Universitas

Kristen Satya Wacana Salatiga). Fakultas Teknologi Informasi UKSW: Salatiga.

[2] Widya. Wenny. 2013 .Sistem Informasi Manajemen Rumah Sakit Bersalin Ananda. STMIK MDP: Palembang

[3] Wikipedia, 2009, http://www.wikipedia.org, Diakses tanggal 22 April 2010. [4] Sulistiyo, Asmarina, 2013, Yang Baru dari Zend Framework 2,

http://www.0prek.com/2013/01/yang-baru-dari-zend-framework-2/, Diakses tanggal 17 Desember 2013

[5] Rahman, Muhammad Aditia, 2009, Analisis Perbandingan modifikasi Smarty Template Engine dan Framework CakePHP pada Model View Controller (MVC) untuk Aplikasi

Web, http://www.ittelkom.ac.id, Diakses tanggal 12 November 2013.

[6] Allen, Rob, 2007, Zend Framework in Action, http://www.manning.com/allen/meap_allench1.pdf, Diakses tanggal 10 November 2013. [7] Pressman, R.S, 2001, Software Engineering : A Practitioner’s Approach, Amerika


(1)

17

1. <?php

2. return array( 3. 'db' => array( 4. 'username' => 'sa', 5. 'password' => 'Password.', 6. 'database' => 'SIRSFRONT', 7. 'hostname' => '(local)', 8. ),

9. );

Konfigurasi Sistem Informasi Pasien Kode Program 1. Konfigurasi Koneksi basisdata

Kode program 1 tersebut berisikan penjelasan koneksi antara sistem dengan basis data, dalam penelitian ini basis data yang digunakan dengan nama

SIRSFRONT dengan username basis data server ’sa’ berlokasi pada hostname local.

Tampilan awal pada saat user mengakses aplikasi adalah halaman login. Penanganan login dibuat menggunakan Kode Program 2.

Kode Program 2. Kode Program untuk Login (1)

Dalam kode program 2 kembali dijelaskan tahapan awal sistem dalam melakukan pemanggilan ke tampilan login sistem. Diperlukan tanda pengenal

framework yang di gunakan dalam penelitian ini adalah versi Zend Framework 2.1.0 di buktikan dengan kode program putenv( "ZF2_PATH=..\ZendFramework-2.1.0\library");. Karena konsep MVC adalah bagian yang ada pada framework

Zend tersebut, untuk selanjutnya kode untuk menjalankan aplikasi atau Run

sistem memangil konfigurasi awal didalam 'config/application.config.php' )->run();.

Kode Program 3. Kode Program untuk cek database

1. <?php

2. chdir("..\bundacore"); 3. // Set ZF2 Library Path

4. putenv("ZF2_PATH=..\ZendFramework-2.1.0\library"); 5. // Application Type

6. putenv("APP_TYPE=desktop"); 7. // Setup autoloading

8. include 'init_autoloader.php'; 9. // Run the application!

10.Zend\Mvc\Application::init(include 'config/application.config.php') >run();

1. 'db' => array(

2. 'driver' => 'Sqlsrv', 3. ),

4. 'db_cloud' => array(

5. 'driver' => 'Sqlsrv', 6. ),

7. 'service_manager' => array( 8. 'factories' => array( 9. 'Zend\Db\Adapter\Adapter'


(2)

18

Koneksi basis data dengan sistem tidak bisa begitu saja di jalankan karena dalam server web XAMPP 1.8.1 tidak terdapat driver yang langsung kopetibel dengan basis data SQL Server 2008, maka dari itu diperlukan tambahan driver di luar dari fitur xampp tersebut. Yaitu diver sqlsrv, yang dalam penelitian ini adalah

driver php_sqlsrv_54_ts.dll setelah dideklarasikan dan telah terkoneksi, didalam sistem akan mengenali sebagai sqlsrv saja. Seperti terlihat pada kode program 3 untuk pendeklarisian driver sebagai konektor antara server web dengan server

basis data.

Kode Program 2 bertugas membuat obyek untuk menggunakan path library Zend yang digunakan dalam khasus ini menggunakan library zend versi

ZendFramework-2.1.0. Kode program ke 3 adalah aplikasi mencek ke database

untuk mengetahui koneksinya, dengan sebelumnya melakukan pengecekan pada

driver yang digunakan. Pada kasus tersebut ‘sqlsrv’ adalah driver yang menghubungkan XAMPP dengan SQL Server 2008.

Implementasi Sistem Informasi

Gambar 11. Halaman Administrator

Apabila login valid, maka aplikasi akan menampilkan tampilan yang sesuai dengan hak akses saat login. Gambar 11 merupakan halaman yang menjadi halaman home untuk administrator. Dalam halaman home terdapat link-link yang akan menghubungkan administrator ke fungsi lainnya. Untuk hak akses

Admission, Admission BIC, Admission inpatient, dokter, pasien, dan lain-lain. Sebelum masuk ke tampilan admin tersebut sistem perlu melakukan validasi data yang diantaranya pengecekan ke dalam sistem apakah sudah berfungsi sebagai mana selayaknya atau memang belum berfungsi, hal tersebut dapat di cek pada kode program 3.

Kode Program 4. Proses validasi data

1. $form = new UserMaster('userForm'); 2. $form->setData($param);

3. $form->get('USER_GROUP')->setValueOptions($optUsg); 4. $form->setUserGroupValues($optUsg);

5. if($form->isValid()) { 6. // Get Data

7. $validData = $form->getData(); 8. unset($validData['USER_NUMBER']); 9. unset($validData['CSRF']);

10. unset($validData['userFormSubmit']); 11. if(!empty($validData['PASSWORD'])) {

12. $validData['PASSWORD'] = md5($validData['PASSWORD']); 13. }


(3)

19

Dalam proses validasi data, proses tersebut di dalam tahapan untuk mencek data dari user yang akan masuk ke dalam sistem atau terlihat pada kode program 4. Pada proses tersebut user di cek dengan password serta hak akses dan User Group yang dimiliki oleh user tersebut. Data yang masuk akan di uji validitasnya atau akan disesuaikan dengan basis data yang ada dalam sistem untuk selanjutnya akan masuk form yang dimiliki user. Password pada sistem ini dienkripsikan dengan pengacak md5 seperti terlihat pada kode $validData['PASSWORD']= md5($validData['PASSWORD']);.

Gambar 12. Halaman Form Reservasi

Sistem tersebut juga memiliki halamam form reservasi seperti terlihat pada gambar 12 tersebut, adapun informasi yang tersedia antara lain informasi pasien yang telah ada dalam Slot, informasi nama pasien yang telah mendaftar, tombol Navigasi. Selain beberapa fungsi tersebut juga berisikan kolom untuk melakukan pencarian pasien dengan cara tekan tombol ”Cari”, maka nama pasien akan tampil setelah melakukan klik yang dikehendaki untuk melakukan reservasi serta tekan

tombol “Daftar’ untuk melakukan pendaftaran pasien baru.

Kode Program 5. Kode Program control jadwal dokter

1. $todayCode = date('N')+1; 2. $tommorowCode = date('N')+2; 3. if($todayCode>7) {

4. $todayCode -= 7; 5. $tommorowCode -= 7; 6. }

7. // Get Doctor Schedule 8. $doctor = $this

9. ->tableService['Admission\DoctorSchedule']

10.->getTodayComplete($this->sess->user['orgId'], 1,$this >pageSize['jadwalDokter']); 11.$dataDoctor = $this->zArray->obj2array($doctor);

12.// Get All Doctor Today 13.$allDoctor = $this

14.->tableService['Admission\DoctorSchedule']

15.->getTodayComplete($this->sess->user['orgId'], 1,$this->pageSize['dokter']); 16.$allDoctor = $this->zArray->obj2array($allDoctor);


(4)

20

Dalam jadwal dokter adalah salah satu pilihan akses yang dimiliki semua user untuk menlihat jadwal dokter koding yang dijalankan seperti tertulis pada kode program 5.

Kode Program 6. Kode Program reservasi

Kode program reservasi digunakan untuk melihat kegiatan yang terjadi di rumah sakit tersebut yang antara lain kegiatan dokter, pasien inggin berobat, data pasien yang terdahulu, dan lainnya. Pada tahapan ini diperlukan proses pengambilan data terdahulu dari pasien, jika pasien sudah teregister atau terdaftar.

Hasil Analisa Pengujian pada pengujian sistem secara keseluruhan dilakukan dengan dua tahap yaitu validasi dan kuisoner.

1. Validasi

Pada tahap pengujian validasi, sistem terlebih dahulu diintegrasikan menjadi satu kesatuan dalam sistem representasi informatif. Pengujian dilakukan dengan pengujian pada unit sistem login, input data dan pencarian data. Hasil dan penjelasan dari validasi dapat dilihat pada tabel 1.

Tabel 1. Pengujian Validasi Sistem

No Unit Pengujian Validasi Data Input Hasil Uji Status Uji

1

Koneksi data

database Username Dikosongkan Gagal login Berhasil Value Username Berhasil login Berhasil Password Dikosongkan Gagal login Berhasil Value Password Berhasil login Berhasil 2 Proses input Inputan data Dikosongkan Tidak ada hasil Berhasil

Value Data

Berhasil

diinputkan Berhasil 3 Proses pencarian Inputan kata Dikosongkan Tidak ada hasil Berhasil

Kata inputan

Berhasil

ditampilkan Berhasil Dari hasil pengujian semua unit dari pengujian yang ditampilkan pada table 1 berhasil melewati uji validitas sistem sehingga dapat ditarik kesimpulan bahwa hasil dari sistem telah sesuai dengan yang diharapkan.

1. if(!empty($allDoctor)) {

2. $reservation = $this

->tableService['Admission\DoctorSchedule'] 3. ->getDoctorSchedule($this->sess->user['orgId'], 4. //reset($allDoctor)['doctorId'] $tommorowCode); 5. }

6. $patientReserve = $this

7. tableService['Admission\RegistrationDetail'] 8. ->getTodayByDoctor($this->sess->user['orgId'], 9. //reset($allDoctor)['doctorId'], 'tomorrow'); 10. $patientReserve = $this->zArray


(5)

-21 2. Kuisoner

Tahap kuisoner dilakukan dengan pengujian sistem yang dilakukan pada beberapa rumah sakit dengan sample sepuluh responden. Dari sepuluh responden terdiri dari satu responden dari bidang perencanaan dan pengembangan dan sepuluh responden dari petugas rumah sakit, petugas rawat inap dan karyawan administrasi dari rumah sakit Bunda medik yang berkepentingan terhadap sistem tersebut. Semua responden diperkenankan menjalankan sistem yang dibangun. Setelah semua responden melakukan pengujian sistem, setiap responden diperkenankan mengisi kuisoner yang telah disediakan untuk mengetahui tingkat efektifitas dari sistem informasi pasien tersebut. kemudian hasil kuisoner dari sepuluh responden (tabel 2.) dianalisa untuk mengetahui tingkat efektifitas dalam bentuk prosentase.

Tabel 2. Hasil Kuisoner

No Pertanyaan

Jawaban

Ya Tidak 1

Apakah program yang dibuat bersifat

user friendly 8 2 2

Apakah menu yang ada sudah mencukupi

dengan kebutuhan yang diperlukan 6 4 3

Apakah informasi yang ada di program

sudah sesuai dengan kebutuhan 7 3

4

Apakah ada kesulitan dalam menjalankan

program 3 7

5

Apakah program tersebut berjalan dengan

lancar 7 3

Dari hasil yang telah dipaparkan pada tabel 2. dihasilkan sebuah prosentase jawaban responden dari setiap pertanyaan yang diajukan. Hasil dan prosentase jawaban tiap-tap pertanyaan dari responden

Hasil Analisa Dari hasil pengujian dengan menggunakan angket, dapat diambil kesimpulan dari kinerja sistem informasi akademik ini yaitu:

User interface sangat mudah dipahami karena menggunakan desain yang sederhana sehingga tidak terlalu susah untuk dimengerti.

 Menu pada sistem sudah mencukupi segala kebutuhan yang diperlukan oleh penggunan.

 Penggunan dengan mudah mengunakan sistem tersebut dan tidak merasakan kesulitan dalam mengaplikasikan sistem yang telah dikembangkan.

 Mes b kipun mengunakan basis dataserver yang tentunya dalam kerja sistem akan lebih berat yaitu Microsoft SQL Server 2008 yang memiliki space

penyimpanan yang besar. Tetapi sistem dapat berjalan dengan baik juga lancar, basis data server dipilih karena kebutuhan sistem yang membutuhkan performa basis data yang besar.


(6)

22

5. Simpulan

Berdasarkan hasil penelitian dan pembahasan yang telah dilakukan tentang penerapan Zend Framework 2, maka disimpulkan bahwa:

Zend Framework 2 adalah framework open source yang memiliki library

yang banyak dibandingkan framework PHP lainnya, dengan banyaknya library

tersebut pengembangan sistem dapat dilakukan lebih baik dibanding framework

lainnya, salah satunya fitur koneksi basis data ke basis data server yang baik. Sehingga mampu mengantisipasi penggunaan data yang banyak pada sistem,

framework tersebut juga kompetibel dengan basis data Microsoft SQL Server 2008

juga ke beberapa basis data termasuk basis data cloud sekalipun. Simpulan lainnya adalah dengan adanya pengembangan module pada framework tersebut memudahkan bagi pengguna untuk mengembangkan sistem tersebut sesuai dengan kebutuhan dan keinginan pengguna, walau untuk kearah web service

sekalipun, dengan melakukan perubahan atau penyesuaian pada module tersebut.

6. Daftar Pustaka

[1] Somya, Ramos. 2010. Penerapan Framework Zend danArsitektur Model View Controller

dalam Pengembangan Aplikasi Manajemen Kepegawaian (Studi Kasus: Universitas

Kristen Satya Wacana Salatiga). Fakultas Teknologi Informasi UKSW: Salatiga.

[2] Widya. Wenny. 2013 .Sistem Informasi Manajemen Rumah Sakit Bersalin Ananda. STMIK MDP: Palembang

[3] Wikipedia, 2009, http://www.wikipedia.org, Diakses tanggal 22 April 2010. [4] Sulistiyo, Asmarina, 2013, Yang Baru dari Zend Framework 2,

http://www.0prek.com/2013/01/yang-baru-dari-zend-framework-2/, Diakses tanggal 17 Desember 2013

[5] Rahman, Muhammad Aditia, 2009, Analisis Perbandingan modifikasi Smarty Template Engine dan Framework CakePHP pada Model View Controller (MVC) untuk Aplikasi Web, http://www.ittelkom.ac.id, Diakses tanggal 12 November 2013.

[6] Allen, Rob, 2007, Zend Framework in Action,

http://www.manning.com/allen/meap_allench1.pdf, Diakses tanggal 10 November 2013. [7] Pressman, R.S, 2001, Software Engineering : A Practitioner’s Approach, Amerika