commit to user
5 BAB II
TINJAUAN PUSTAKA DAN DASAR TEORI
2.1. Tinjauan Pustaka
Tinjauan pustaka dalam pembuatan aplikasi ini penulis mengambil dua artikel dari jurnal. Artikel pertama yang ditulis oleh Mochamad Nasir pada tahun 2008 dengan judul “Pengembangan Sistem Informasi Pelayanan Kesehatan Ibu dan Anak Untuk Mendukung Evaluasi program Kesehatan Ibu dan Anak di Puskesmas Kabupaten Lamongan” dan artikel kedua yang ditulis oleh Suci Rahma Dani Rachman pada tahun 2015 dengan judul “Perancangan Aplikasi Pelayanan Informasi Kesehatan Ibu dan Anak Berbasis Data Center Studi Kasus Puskesmas Kota Makassar”.
Penelitian yang dilakukan oleh (Nasir, 2008) menunjukan telah dilakukan penelitian sebelumnya mengenai program kesehatan ibu dan anak. Dalam penelitian tersebut menjelaskan sistem yang ada di puskesmas Kabupaten Lamongan masih dilakukan secara manual. Proses pengolahan data masih menggunakan “paper base” sehingga untuk melakukan pencarian data memerlukan waktu yang lama. Untuk laporan bulanan dilaporkan tidak tepat waktu sehingga menghambat kegiatan evalusi yang dilakukan per bulan. Aplikasi yang dihasilkan dari penelitian ini merupakan sebuah aplikasi berbasis web yang mencangkup proses pengolahan data dari awal pemeriksaan hingga melahirkan dan output berupa laporan evaluasi per bulan, namun hanya ada dalam suatu instansi.
Penelitian yang dilakukan oleh (Rachman, 2015) menjelaskan sistem yang ada di puskesmas-puskesmas kota Makassar masih dilakukan secara manual, sehingga banyak data yang kosong dan tidak valid. Sistem yang tidak terintegritas menyebabkan laporan bulanan yang dilaporkan kepada Dinas kesehatan tidak tepat waktu sehingga menghambat kegiatan evalusi. Aplikasi yang dihasilkan melibatkan tiga aktor, yaitu pasien, admin puskesmas dan admin Dinas Kesehatan. Aplikasi ini mencangkup proses pengolahan data pemeriksaan dan output berupa
commit to user
laporan evaluasi per bulan, namun sistem yang terintegritas hanya mencakup puskesmas-puskesmas yang ada di Kota Makassar.
Meninjau penelitian yang sudah dilakukan, penulis membuat sebuah sistem berbasis web yang akan dibuat terintegrasi dimana user/ibu hamil, petugas kesehatan serta pengelola sistem dapat menggunakan aplikasi dengan fasilitas yang berbeda-beda. Pengelola sistem (admin) diberikan fasilitas mengelola data master. Petugas kesehatan mengolah data pemeriksaan kehamilan. User/ibu hamil melihat dan memonitoring pemeriksaan kesehatan kehamilan.
2.2. Landasan Teori
2.2.1. Aplikasi
Program aplikasi adalah program yang diciptakan untuk mempermudah pekerjaan pengguna. Terdapat banyak program aplikasi yang dapat digunakan mulai dari program yang paling sederhana hingga yang paling rumit. Dinamakan program aplikasi karena program ini merupakan program terapan (application) yang langsung digunakan oleh penggunanya. Tujuannya, untuk mempermudah pekerjaan sesuai dengan bidangnya (Maryono, 2007).
2.2.2. Sistem Informasi
Sistem Informasi adalah suatu sistem yang tujuan utamanya adalah mengelola dan menyediakan akses informasi dari dan ke database, dimana di dalamnya mencakup pengelolaan keamanan, kegunaan, privasi, dan menjaga integritas data (Sommerville, 2011).
2.2.3. Basis Data
Basis data adalah kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redudansi) yang tidak perlu, untuk memenuhi berbagai kebutuhan. Sistem Basis Data merupakan sistem yang terdiri dari kumpulan tabel yang saling berhubungan (dalam sebuah basis data di sebuah sistem komputer) dan sekumpulan program (DBMS) yang
commit to user
memungkinkan beberapa pemakai dan atau program lain untuk mengakses dan memanipulasi tabel-tabel tersebut (Fathansyah, 2001).
2.2.4. DBMS (Database Management Sistem)
Kumpulan file yang saling berkaitan bersama dengan program untuk
pengelolaan disebut sebagai DBMS. Database adalah kumpulan datanya, sedang
program pengelolaannya berdiri sendiri dalam satu paket program yang komersial untuk membaca data, mengisi data, menghapus data, melaporkan data dalam database (Kristanto, 1994).
2.2.5. ERD (Entity Relationship Diagram)
ERD adalah diagram yang berisi komponen-komponen himpunan entitas dan himpunan relasi yang masing-masing dilengkapi dengan atribut-atribut yang merepresentasikan seluruh fakta dari „dunia nyata‟ yang kita tinjau (Fathansyah, 2001).
Menurut (Fathansyah, 2001) ada dua komponen penyusun ERD, yaitu entity atau entitas dan relation atau relasi. Entity atau entitas merupakan individu yang mewakili sesuatu yang nyata (eksistensinya) dan dapat dibedakan dari
sesuatu yang lain. Sedangkan relation atau relasi menunjukan adanya
hubungan di antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. Simbol- simbol ERD dapat dilihat pada tabel 2.1 :
Tabel 2. 1Simbol ERD menurut(Fathansyah, 2001)
Keterangan Simbol
Persegi panjang menyatakan himpunan entitas.
Lingkaran / elips menyatakan atribut. (atribut yang berfungsi sebagai key digaris bawahi).
commit to user
Keterangan Simbol
Belah ketupat menyatakan himpunan relasi.
Garis sebagai penghubung antara himpunan relasi dengan himpunan entitas dan himpunan entitas dengan atributnya.
2.2.6. MySQL
MySQL adalah database yang menggunakan bahasa Structured Query Language (SQL). MySQL dalam operasi client-server melibatkan server daemon MySQL di sisi server dan berbagai macam program serta library yang berjalan di sisi client. MySQL mampu menangani data yang cukup besar (Sunarfrihantono, 2002).
2.2.7. PHP Hypertext Preprocessor
PHP Hypertext Preprocessor (selanjutnya akan ditulis PHP) adalah bahasa
pemrograman server-side scripting yang menyatu dengan HTML membentuk
halaman web yang dinamis. Maksud dari server-side scripting adalah sintaks dan perintah-perintah yang diberikan akan sepenuhnya dijalankan di server tetapi juga disertakan pada halaman HTML sebagai pembangun halaman web. PHP
merupakan open source (gratis) dan mampu lintas platform, yaitu dapat
digunakan dengan sistem operasi dan web server apapun (Sunarfrihantono, 2002).
2.2.8. CodeIgniter PHP Framework
Menurut (Saputra, 2011), Framework adalah sebuah struktur konseptual dasar yang digunakan untuk memecahkan sebuah permasalahan, bahkan isu-isu kompleks yang ada. Salah satu framework berbasis PHP yang cukup populer dan sering digunakan karena kelengkapannya adalah Codeigniter. Pada CodeIgniter
commit to user
(CI) terdapat user guide yang cukup lengkap mengenai, libraries, helpers, dan fungsi-fungsi lain. Codeigniter adalah framework PHP yang diklaim memiliki eksekusi tercepat dibandingkan framework lainnya. Codeigniter bersifat opensource dan menggunakan model arsitektur Model-View-Controller (MVC).
2.2.9. Model-View-Controller (MVC)
Dasar arsitektur Model-View-Controller (MVC) ini adalah pemisahan
antara logika aplikasi dengan tampilan.Menggunakan pola ini diharapkan dapat meminimalisasi penulisan perintah, sehingga resiko terjadinya bug juga minimal, serta menigkatkan efisiensi pembangunan aplikasi.
Pada awalnya penerapannya, konsep MVC digunakan untuk Smalltalk. Seiring dengan popularitasnya yang kian menanjak, saat ini arsitektur MVC luas digunakan dalam dunia framework pemrograman baik untuk aplikasi desktop-based maupun webdesktop-based. Beberapa bahasa pemrograman web-desktop-based yang framework-nya menerapkan konsep MVC adalah ASP (ASP Xtreme Evolution), Actionscript (FlashMVC), Coldfusion (Fusebox) ,Javascript (JavascriptMVC), XML (XForms), Ruby (Ruby on Rails). Contoh framework PHP MVC adalah CakePHPnSymfony dan CodeIgniter (CI) (Pratama, 2010).
2.2.10.Hypertext Markup Language
Hypertext Markup Language (selanjutnya akan ditulis HTML) merupakan
salah satu format yang digunakan dalam pembuatan dokumen atau aplikasi yang berjalan di halaman web. Oleh karena itu agar dapat membuat program aplikasi diatas halaman web, kita terlebih dahulu harus mengenal dan menguasai HTML.
Walaupun sekarang telah banyak paket secara WYSIWYG (What You See is What
You Get) seperti Frontpage, DreamWeaver, Netscape Composer, dan masih
banyak lagi, namun kita harus tetap menguasai tag-tag HTML terutama yang dipergunakan untuk membuat aplikasi di internet karena mau tidak mau kita bekerja dalam mode text editor bilamana hendak menyisipkan script program dalam script HTML (Sunarfrihantono, 2002).
commit to user
2.2.11.JavaScript
JavaScript adalah bahasa skrip yang ditempelkan pada kode HTML dan
diproses di sisi klien. Dengan adanya bahasa ini, kemampuan dokumen HTML
menjadi lebih luas. Sebagai contoh, dengan menggunkan JavaScript
dimungkinkan untuk memvalidasi masukan-masukan pada formulir sebelum formulir dikirmkan ke server (Kadir, 2003).
2.2.12.Cascading Style Sheets
Cascading Style Sheets (selanjutnya akan ditulis CSS) digunakan dalam
kode HTML untuk menciptakan suatu kumpulan style yang terkadang dapat
digunakan untuk memperluas kemampuan HTML. Sebagai contoh, kode HTML
murni tidak memungkinkan untuk menggunakan sebuah definisi font yang
diterapkan pada setiap sel dan bahkan tag <BASEFONT> pun tidak berpengaruh pada sel-sel tabel. Dengan menggunakan CSS, hanya perlu mendefinisikan style satu kali dan style tersebut akan berlaku untuk setiap sel dalam tabel (Kadir, 2003).
2.2.13.Unified Modelling Language (UML)
Unified Modelling Language adalah bahasa standar yang digunakan untuk
menjelaskan dan memvisualisasikan artifak dari proses analisis dan desain berorientasi obyek (Hermawan, 2004).
Diagram use case atau use case diagram menyajikan interaksi antara use case dan aktor. Dimana, aktor dapat berupa orang, peralatan, atau sistem lain yang
berinteraksi dengan sistem yang sedang dibangun. Use case menggambarkan
fungsional sistem atau persyaratan-persyaratan yang harus dipenuhi sistem dari pandangan pemakai.
Diagram aktivitas atau activity diagram yang menggambarkan aliran
fungsional sistem. Pada tahap pemodelan bisnis, diagram aktivitas dapat digunakan untuk menunjukan aliran kerja bisnis (business work-flow).
Diagram sekuensial atau sequence diagram digunakan untuk menunjukkan
commit to user 2.2.13.1 Use Case Diagram
Use Case Diagram merupakan pemodelan untuk melakukan (behavior)
sistem informasi yang akan dibuat. Use Case Diagram mendeskripsikan sebuah interaksi antar satu atau lebih aktor dengan sistem informasi yang akan dibuat.
Use Case Diagram digunakan untuk mengetahui fungsi apa saja yang ada di
sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut (A.S, 2011).
Syarat penamaan pada Use Case Diagram menurut (A.S, 2011) adalah
nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada Use Case Diagram yaitu pendefinisianapa yang disebut aktor dan use case.
1. Aktor merupakan orang, proses atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan aktor.
2. Usecase merupakan fungsionalitas yang disediakan sistem sebagai unit-
unit yang saling bertukar pesan antarunit atau aktor. Simbol use case dapat dilihat pada tabel 2.2 :
Tabel 2. 2 Simbol Use caseDiagram menurut (A.S, 2011)
Keterangan Simbol
Aktor
merupakan simbol untuk
menggambarkan user yang
berhubungan dengan sistem. Use case
use case diberi nama yang
menyatakan apa hal yang dicapai dari hasil interaksinya dengan aktor.
commit to user
Keterangan Simbol
Association
mengidentifikasi interaksi antar aktor dan usecase.
Include
termasuk di dalam usecase lain
(required) atau diharuskan. Tanda panah terbuka harus terarah ke sub usecase.
Extends
perluasan dari usecase lain jika kondisi atau syarat terpenuhi. Tanda panah terbuka harus terarah ke parent/base usecase.
2.2.13.2Class Diagram
Diagram kelas atau Class diagram digunkan unutk menampilkan kelas-kelas atau paket-paket di dalam sistem dan relasi antar mereka. Ia memebrikan gambaran sistem secara statis. Biasanya, dibuat beberapa diagram kelas untuk sistem. Satu diagram kelas menampilkan subset dari kelas-kelas dan relasinya. Yang lainnya, mungkin menampilkan kelas-kelas termasuk atribut dan operasi dalam kelas-kelas. Data yang lainnya lagi, mungkin menampilkan paket-paket kelas dan relasi antar paket-paket (Sholiq, 2006). Simbol class diagram dapat dilihat pada tabel 2.3 di bawah ini:
commit to user
Tabel 2. 3 Simbol Class Diagram
Keterangan Simbol
Class
Deskripsi dari sekumpulan objek yang terdiri dari daftar atribut dan daftar operasi.
Generalisasi
Hubungan antara yang lebih umum dan elemen yang lebih spesifik.
Depedensi
Hubungan antara dua elemen pemodelan, di mana perubahan ke satu elemen pemodelan
(elemen independen) akan mempengaruhi
simulasi elemen lainnya.
2.2.13.3.Activity Diagram
Diagram aktivitas (activity diagram) sesungguhnya merupakan bentuk khusus dari
state machine yang bertujuan memodelkan komputasi-komputasi dan aliran-aliran
kerja yang terjadi dalam sistem atau perangkat lunak yang sedang dikembangkan.
State pada diagram aktivitas merepresentasikan state dari komputasi yang
dieksekusi, bukan state dari suatu objek biasa. Biasanya, suatu diagram aktivitas mengasumsikan komputasi-komputasi dilaksanakan tanpa adanya interupsi-interupsi eksternal berbasis event terjadi padanya (Nugroho, 2009).
Suatu diagram aktivitas memuat di dalamnya activity state dimana suatu
activity state merepresentasikan eksekusi penyataan dalam suatu prosedur atau
kinerja suatu aktivitas dalam suatu aliran kerja (Nugroho, 2009).
Diagram aktivitas mencakup didalamnya simbol-simbol yang relatif mudah digunakan. Simbol-simbol yang sama juga dapat digunakan pada state chart diagram. Activity state diperlihatkan sebagai kotak empat persegi panjang yang memuat deskripsi aktivitas yang bersangkutan. Selesainya transisi sederhana
commit to user
diperlihatkan sebagai kondisi yang bisa diuji pada suatu transisi atau bentuk intan yang diberi label. Suatu fork atau join kendali diperlihatkan dengan cara yang sama pada statechart, yaitu dengan tanda panah majemuk yang masuk atau
meninggalkan garis sinkronisasi tebal (Nugroho, 2009). Simbol Activity Diagram
dapat dilihat pada tabel 2.4 :
Tabel 2. 4 Simbol Activity Diagram menurut (Kung, 2014)
Nama Keterangan Simbol
Activity or action Suatu perhitungan atau
informasi tugas yang ada pada aliran kerja suatu proses.
Conditional branching Pengujian untuk
menentukan aliran
kontrol menuju satu jalur tertentu sesuai dengan hasil pengujian.
Merging alternate
threads
Satu titik tujuan
penyatuan dari kondisi percabangan
sebelumnya.
Control flow Pendefinisian aliran
kegiatan dari suatu
aktifitas ke aktifitas
commit to user
Nama Keterangan Simbol
Object flow Pendefinisian objek yang
berjalan dari suatu
aktifitas ke aktifitas
lainnya.
Forking Penciptaan dua aktifitas
yang berjalan bersamaan dari satu aktifitas.
Forking Penciptaan dua aktifitas
yang berjalan bersamaan dari satu aktifitas.
Joining Penyatuan dua aktifitas
untuk proses selanjutnya.
Initial node Penunjuk dimulainya
aliran proses pada suatu aktifitas.
Final node Penunjuk berakhirnya
aliran proses pada suatu aktifitas.
Flow final node Penunjuk berakhirnya
control flow ataupun
object flow.
commit to user
Nama Keterangan Simbol
Swim lanes Mekanisme untuk
mengelompokkan atau
mengatur kegiatan sesuai dengan organisasi atau subsistem
2.2.13.3.Sequence Diagram
Menurut (Hermawan, 2004), Sequence diagram menjelaskan secara detail urutan proses yang dilakukan dalam sistem untuk mencapai tujuan dari use case: interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan antar operasi, dan informasi yang diperlukan oleh masing-masing operasi. Pembuatan sequence diagram merupakan aktivitas yang paling kritikal dari proses desain karena artifak inilah yang menjadi pedoman dalam proses pemrograman nantinya dan berisi aliran control dari program.
Sequence diagram biasanya tersusun dari elemen Obyek, Interaction dan
Message. Interaction menghubungkan 2 obyek dengan pesannya. Diagram ini
menjelaskan aspek dinamis dari sistem yang sedang dibangun. Simbol yang ada pada sequence diagram dapat dilihat pada tabel 2.5 :
Tabel 2. 5 Simbol Sequence Diagram menurut(Hermawan, 2004)
Nama Keterangan Simbol
Aktor/Actor Orang, proses atau sistem lain
yang berinteraksi dengan sistem informasi lain diluar sistem informasi itu sendiri.
commit to user
Nama Keterangan Simbol
Garis hidup / lifeline
Menyatakan kehidupan suatu objek.
Objek Menyatakan objek dalam
keadaan aktif dan berinteraksi pesan.
Waktu aktif Menyatakan objek dalam
keadaan aktif dan berinteraksi pesan.
Pesan tipe
create
Menyatakan suatu objek
membuat objek lain arah.
Pesan tipe call Menyatakan suatu objek
memanggil operasi/metode
yang ada pada objek yang dibuat.
Pesan tipe send Menyatakan bahwa suatu objek
mengirimkan data
masukkan/informasi ke objek lainnya, arah panah mengarah ke objek yang dikirim.
commit to user
Nama Keterangan Simbol
Pesan tipe
return
Menyatakan bahwa suatu objek yang telah menjalankan suatu
operasi atau metode yang
menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian.
Pesan tipe
destroy
Menyatakan akhir hidup suatu
objek. X
2.2.14.Behavioral (Black-Box) Tests
Pengujian balck box adalah menguji perangkat lunak dari segi spesifikasi fungsional tanpa menguji desain kode program. Pengujian dimaksudkan untuk mengetahui apakah fungsi-fungsi, masukan, dan keluaran dari perangkat lunak sudah sesuai dengan spesifikasi yang dibutuhkan. Pengujian ini dilakukan dengan membuat kasus uji yang bersifat mencoba semua fungsi dengan memakai perangkat lunak apakah sudah sesuai dengan spesifikasi yang dibutuhkan. Kasus uji yang dibuat untuk melakukan pengujian kotak hitam harus dibuat dengan kasus benar dan kasus salah (A.S, 2011).