BAB II TINJAUAN PUSTAKA 2.1
Resep Elektronik Sistem resep elektronik adalah pemanfaatan sistem elektronik untuk
menfasilitasi dan meningkatkan komunikasi urutan resep atau obat, membantu pilihan, administrasi dan penyediaan sebuah obat melalui pengetahuan dan mendukung keputusan serta penyediaan jejak audit yang kuat untuk seluruh obatobatan yang digunakan. definisi ini menegaskan bahwa peresepan elektronik adalah tentang komunikasi, tentu lebih dari hanya sekedar resep tetapi juga mencakup pasokan dn administrasi serta fungsi lainnya seperti audit. Sistem resep elektronik juga dapat menyediakan berbagai tingkat pendukung keputusan klinis, unruk membantu pembuatan resep yang didasari informasi lengkap tentang pasien dan tentang obat-obatan yang diguakan seperti informasi tentang alergi pasien, atau tentang potensi interaksi obat-obat. Demiian jugaselam a pemberian obat, seorang perawat dapat memiliki akses untuk dukungan pembuatan keputusan, misalnya akses ke pemeriksaan laboratorium atau intruksi tambahan pada saat pemberian obat. Peresepan elektronik secara konseptual mudah. Dalam pengaturan rumahsakit, sistem ini memungkinkan untuk informasi pertukaran obat secara cepat antara dokter, farmasi dan perawat. Informasi ini kemudian digunakan untuk menyiapkan dan mendistribusikan obat ke bangsal dan bisa diterima oleh pasien.. Ketika obat tertentu telah diresepkan, pelaksana pemberian obat ini menjadi tugas perawat. selanjutnya aatan Administrasi pengobatan yang melibatkan proses digital mengakui dan mendaftarkan bahwa pasien telah diberi obat yang tepat. Meskipun terlihat simple tetapi dalam pelaksanaannya sangat kompleks. namun demikian diharapkan system resep elektronik ini dapat meningkatkan Patient safety (NHS,2010).
2.2
Case-Base Reasoning Case-Based Reasoning (CBR) adalah metode untuk menyelesaikan masalah
dengan mengingat kejadian-kejadian yang sama/sejenis (similar) yang pernah terjadi di masa lalu kemudian menggunakan pengetahuan/ informasi tersebut untuk menyelesaikan masalah yang baru, atau dengan kata lain menyelesaikan masalah dengan mengadaptasi solusi-solusi yang pernah digunakan di masa lalu. Menurut Aamodt dan Plaza (1994) Case-Based Reasoning adalah suatu pendekatan untuk menyelesaikan suatu permasalahan (problem solving) berdasarkan solusi dari permasalahan sebelumnya. Case-Based Reasoning ini merupakan suatu paradigm pemecahan masalah yang banyak mendapat pengakuan yang pada dasarnya berbeda dari pendekatan utama AI lainnya. Suatu masalah baru dipecahkan dengan menemukan kasus yang serupa di masa lampau, dan menggunakannya kembali pada situasi masalah yang baru. Perbedaan lain dari CBR yang tidak kalah penting adalah CBR juga merupakan suatu pendekatan ke arah incremental yaitu pembelajaran yang terusmenerus. Dalam Case-Based Reasoning ada empat tahapan yang meliputi: a. Retrieve Mendapatkan kembali kasus yang paling relevan (similar) dengan kasus yang baru. Tahap retrieval ini dimulai dengan menggambarkan sebagian masalah, dan diakhiri jika ditemukan kecocokan terhadap masalah sebelumnya yang tingkat kecocokannya paling tinggi. Bagian ini mengacu pada segi identifikasi, kecocokan awal, pencarian dan pemilihan serta eksekusi. b. Reuse Memodelkan/menggunakan kembali pengetahuan dan informasi kasus lama berdasarkan bobot kemiripan yang paling relevan ke dalam kasus yang baru, sehingga menghasilkan usulan solusi dimana mungkin diperlukan suatu adaptasi dengan masalah yang baru tersebut. c. Revise Meninjau kembali solusi yang diusulkan kemudian mengetesnya pada kasus nyata (simulasi) dan jika diperlukan memperbaiki solusi tersebut agar cocok dengan kasus yang baru.
d. Retain Mengintegrasikan kasus baru yang telah berhasil mendapatkan solusi agar dapat digunakan oleh kasus-kasus selanjutnya yang mirip dengan kasus tersebut, tetapi Jika solusi baru tersebut gagal, maka menjelaskan kegagalannya, memperbaiki solusi yang digunakan, dan mengujinya lagi. Empat proses masing-masing melibatkan sejumlah langkah-langkah spesifik, yang dijelaskan pada gambar dibawah ini :
Gambar 2. 1 Siklus Metode CBR
2.3
Algoritma Nearest Neigbor Algoritma Nearest Neighbor Retrival (k-nearst neighbor atau k- NN) adalah
sebuah algoritma untuk melakukan klasifikasi terhadap objek berdasarkan data pembelajaran yang jaraknya paling dekat dengan objek tersebut. Kasus khusus dimana klasifikasi diprediksikan berdasarkan data pembelajaran yang paling dekat dengan kata lain, k = 1) disebut algoritma nearest neighbor.
Algoritma nearest
neighbor berdasarkan pada proses pembelajaran menggunakan analogi/learning by analogi. Training sampelnya dideskripsikan dalam bentuk atribut numerik ndimensi. Tiap sampel mewakili sebuah titik pada ruang n-dimensi. Dengan cara ini, semua training sample disimpan pada ruang n-dimensi. Ketika unknown sample, knearst neighbor classifier mencari pola ruang K training sample paling dekat
unknown. K training sample ini adalah k nearst neighbor dari unknown sampel. Unknown sampel ditetapkan dengan class paling umum diantara k nearst neighbornya. Ketika k = 1, unknown sample ditetapkan dengan class dari training sample yang paling dekat dengan pola ruangnya. Algoritma nearst neighbor retrieval menyimpan semua training sampel dan tidak membangun clasiffer sampai sampel baru (unlabeled) perlu diklasifikasikan, sehingga algoritma nearst neighor retrieval sering disebut dengan instance-based atau lazy learners. Untuk menghitung bobot kemiripan (similarity) dengan nearst neighor retrieval. Similarity dapat diformulasikan melalui perhitungan similarity yang dikodekan dengan mengkombinasikan beberapa parameter perhitungan similarity lokal untuk fitur individu dengan fungsi agregat global (Geyer, et.al, 2007). Tujuan utama komponen retrieval adalah untuk memilih basis data produk, set produk dengan similarity tertinggi yang dihitung dari perhitungan similarity (David, 2011). Hubungan target case ke sebuah source case untuk setiap atributnya menentukan similarity. Pengukuran similarity dapat dilakukan dengan perhitungan faktor pembobotan. Rumus untuk menghitung bobot kemiripan (similarity) dengan nearst neighor retrieval adalah: 𝑆𝑖𝑚𝑖𝑙𝑎𝑟𝑖𝑡𝑦(𝑝𝑟𝑜𝑏𝑙𝑒𝑚, 𝑐𝑎𝑠𝑒) =
𝑆1 𝑥 𝑊1+𝑆2 𝑥 𝑊2+⋯+𝑆𝑛 𝑥 𝑊𝑛 𝑊1+𝑊2+⋯+𝑊𝑛
…………..…(2.1)
Keterangan: S = similarity (nilai kemiripan) W = weight (bobot yang diberikan)
2.4
Metodelogi Pengembangan Perangkat Lunak Metodologi pengembangan perangkat lunak (atau disebut juga model proses
atau paradigma rekayasa perangkat lunak) adalah suatu strategi pengembangan yang memadukan proses, metode, dan perangkat (tools). Metode-metode rekayasa perangkat lunak, memberikan teknik untuk membangun perangkat lunak. Berkaitan dengan serangkaian tugas yang luas yang menyangkut analisis kebutuhan, konstruksi program, desain, pengujian, dan pemeliharaan (Pressman,2001). Untuk menyelesaikan masalah didalam pengembangan perangkat lunak, tim perekayasa
harus menggabungkan strategi pengembangan yang melingkupi lapisan proses, metode, dan alat bantu. Model proses rekayasa perangkat lunak dipilih berdasarkan sifat aplikasi dan proyeknya, metode dan alat-alat bantu yang akan dipakai, dan control serta penyampaian yang dibutuhkan. 2.4.1. Waterfall Waterfall model merupakan salah satu model proses perangkat lunak yang mengambil kegiatan proses dasar seperti spesifikasi, pengembangan, validasi, dan evolusi, dan merepresentasikannya sebagai fase-fase proses yang berbeda seperti analisis dan definisi persyaratan, perancangan perangkat lunak, implementasi, pengujian unit, integrasi sistem , pengujian sistem, operasi dan pemeliharaan (Sommerville, 2011).
Gambar 2. 2 Model Waterfall Tahap-tahap utama dari waterfall model pada gambar 2.3 memetakan kegiatan-kegiatan pengembangan dasar, yaitu (Sommerville, 2011): 1. Analisis dan Definisi Persyaratan Proses mengumpulkan informasi kebutuhan sistem/perangkat lunak melalui konsultasi dengan user system. Proses ini mendefinisikan secara rinci mengenai fungsi-fungsi, batasan dan tujuan dari perangkat lunak sebagai spesifikasi sistem yang akan dibuat.
2. Perancangan Sistem dan Perangkat Lunak Proses perancangan sistem ini difokuskan pada empat atribut, yaitu struktur data, arsitektur perangkat lunak, representasi antarmuka, dan detail (algoritma) prosedural. Yang dimaksud struktur data adalah representasi dari hubungan logis antara elemen-elemen data individual. 3. Implementasi dan Pengujian Unit Pada tahap ini, perancangan perangkat lunak direalisasikan sebagai serangkaian program atau unit program. Kemudian pengujian unit melibatkan verifikasi bahwa setiap unit program telah memenuhi spesifikasinya. 4. Integrasi dan Pengujian Sistem Unit program/program individual diintegrasikan menjadi sebuah kesatuan sistem dan kemudian dilakukan pengujian. Dengan kata lain, pengujian ini ditujukan untuk menguji keterhubungan dari tiap-tiap fungsi perangkat lunak untuk menjamin bahwa persyaratan sistem telah terpenuhi. Setelah pengujian sistem selesai dilakukan, perangkat lunak dikirim ke pelanggan/user. 5. Operasi dan Pemeliharaan Tahap ini biasanya memerlukan waktu yang paling lama. Sistem diterapkan (di-install) dan dipakai. Pemeliharaan mencakup koreksi dari beberapa kesalahan yang tidak diketemukan pada tahapan sebelumnya, perbaikan atas implementasi unit sistem dan pengembangan pelayanan sistem, sementara persyaratan-persyaratan baru ditambahkan.