Diringkas oleh Anggota Kelompok Mata Kuliah Semester Ringkasan Jurnal Judul Asli Penulis : Kelompok 6 : Lia Safitri 103140913111002 Murtafi’ah Ilmiyati 103140914111001 Marta Yushanti 103140914111014 Sita Indra Cahyani 103140914111016 Kartika Yolanda Putri 103140914111020 Riska Diah Permata 103140914111048 : Rekayasa Perangkat Lunak :5 : Implementasi SOA pada Apotek Rumah Sakit : “Perancangan Sistem Apotek Rumah Sakit Berbasis SOA dan Cloud Computing” : Luthfi Ramadani Program Sarjana Sistem dan Teknologi Informasi –ITB Perancangan Sistem Apotek Rumah Sakit Berbasis SOA dan Cloud Computing Abstrak Sebagai salah satu prioritas nasional dalam RPJMN tahun 2010-2014, percepatan reformasi kesehatan harus ditunjang dengan TIK yang efektif terhadap peningkatan kinerja pelayanan serta efisien dalam segi tenaga dan biaya. Rumah Sakit dan apotek merupakan infrastruktur pelayanan kesehatan yang patut disoroti. Hingga tahun 2010, terdapat ±1.300 rumah sakit dan ±12.000 apotek di seluruh Indonesia. Jumlah sebesar ini tentunya memiliki permasalahan masing-masing yang berbeda satu sama lain. Sehingga, aplikasi TIK yang rigid bukanlah solusi tepat dan cepat dalam hal ini. Service-Oriented Architecture (SOA) dapat menjadi solusi masalah tersebut. Konsep service-orientation menjanjikan agility dan reusability dari service-service di suatu aplikasi. Dan jika aplikasi tersebut merupakan application-as-a-service di cloud computing, secara ideal prinsip ini mampu menghemat tenaga dan biaya penggunaan TIK di apotek dan farmasi rumah sakit di seluruh Indonesia. Makalah ini memaparkan hasil studi perancangan sistem apotek dan farmasi rumah sakit yang agile dan reusable berbasis SOA. Rancangan aplikasi tersebut diuji coba sebagai application-as-a-service di cloud computing. Diharapkan rancangan aplikasi ini menjadi solusi agility dan reusability sistem apotek dan farmasi dengan tenaga dan biaya yang efisien. 1 Kajian Sistem Pendahuluan Prinsip utama dalam distribusi obat sebagai bagian dari pelayanan kesehatan adalah efisiensi dan kualitas (CDOB-BPOM – 2010). Penggunaan teknologi informasi dan komunikasi dalam hal ini sangat vital karena dapat mengatasi keterbatasan yang dimiliki tenaga medis dan kondisi ruang-ruang unit di rumah sakit. Permasalahan muncul saat standar operasional antar rumah sakit di Indonesia tidak sama. Setiap rumah sakit berikut apoteknya memiliki karakteristik masing-masing. Atas hal ini, pengembangan sistem aplikasi tradisional dilakukan di masing-masing apotek dan tidak menjamin dapat dipakai lagi dengan kesuksesan yang sama di tempat lain. Saat munculnya web service dalam integrasi sistem, mengemuka terobosan akan penggunaan arsitektur berorientasi service yang menjanjikan orientasi teknologi akan proses bisnis. Secara sederhana, wujud IT yang mampu menyesuaikan diri terhadap kondisi bisnis dapat dicapai dengan konsep ini. Untuk itu, dilakukan penelitian yang mencoba memodelkan konsep service-oriented tersebut. Service tersebut dilihat dari sistem umum apotek rumah sakit di Indonesia. Kemudian, disajikan teknologi yang digunakan saat melakukan implementasi sistem tersebut, yang dalam hal ini dikolaborasikan dengan cloud computing sebagai cerminan potensi efisiensi sumber daya IT di Indonesia. Metodologi Penelitian dilakukan berdasarkan pemahaman umum dan studi kasus terhadap sistem apotek rumah sakit di Indonesia. Dilakukan juga studi penggunaan teknologi informasi di berbagai pharmacy yang populer di dunia. Sistem Apotek Standard, rules, guidelines Analisis kebutuhan Pharmacy IS industry Spesifikasi sistem Perancangan services SOA Analysis SOA Design Implementasi & Deployment di Cloud Bagan 1 Metodologi Penelitian Secara teoretis, terdapat beberapa pendekatan dalam menemukan kandidat service, di antaranya SOAD (Service-Oriented Analysis and Design), SCA (Service Component Architecure), dan SOMA (Service-Oriented Modeling Architecture). Teori yang ada memiliki keunggulan masing-masing. Di sini digunakan SOAD karena akan digunakan 2 teknologi yang tidak bergantung pada bahasa pemodelan. Tabel 1 Pemetaan kandidat services Alur kerja apotek Tahap awal perancangan sistem berbasis SOA adalah pendeskripsian sistem. Secara umum, apotek rumah sakit berfungsi melayani kebutuhan obat resep pasien rumah sakit. Bahan baku obat tersebut dikelola oleh orang/bagian dari apotek sebagai bagian persediaan. Bagian ini bertugas melakukan kontrol persediaan obat. Saat terjadi kekurangan, maka dilakukan koordinasi dengan instalasi farmasi untuk pengadaan obat. No 1 Proses Bisnis Pelayanan Obat Resep 2 Penjualan Obat Umum 3 Produk & Stock Control Service pengelolaan data produk 4 Sales & Transaction Service stock control Service pengelolaan transaksi jual beli 5 Pengadaan Penerimaan resep Bagian Persediaan Instalasi Farmasi Rumah Sakit Stock control Apoteker / Asisten Apoteker Data Resep Kasir Data Transaksi Kandidat service Service pengelolaan transaksi jual beli Service pengelolaan informasi resep Service pengelolaan data customer Service stock control Service pengelolaan transaksi jual beli Service pengelolaan data customer Service stock control Service pengelolaan data supplier farmasi Service pengelolaan pengadaan Kandidat service yang dihasilkan pada pemetaan tersebut merupakan service fungsional atau diistilahkan business service layer. Selanjutnya, dilakukan analisis service yang merupakan enkapsulasi dari business service tersebut yang dinamakan orchestration service layer. Layer ini merupakan layer teratas yang akan menjadi antarmuka dengan sistem luar. Terakhir, dilakukan analisis kandidat service berupa aplikasi pendukung sistem dan penunjang aktivitas client saat menggunakan aplikasi apotek. Service ini merupakan application service layer. Seluruh kandidat service berdasarkan layer yang disusun disajikan pada bagan 3. Bagan 2 Pemetaan alur kerja apotek Resep yang dibawa oleh pasien direkap oleh apoteker sebagai sumber informasi obat. Seorang apoteker bertugas melakukan pengecekan kesesuaian obat dan berbagai risiko yang ada. Saat diperlukan, apoteker dapat melakukan pembatalan pemberian obat kepada pasien dan kemudian diajukan ke dokter untuk ditinjau kembali. Dari alur kerja ini, diperoleh fungsi-fungsi bisnis yang ada di apotek serta data yang terlibat. Hasil identifikasi ini menjadi sumber identifikasi kandidat service yang akan dirancang kemudian. Hasil Analisis Kandidat services Identifikasi kandidat service merupakan konsep utama dalam Service-Oriented Architecture. Service yang ada haruslah bersifat otonom dan looselycoupled sebagai jaminan bahwa aplikasi yang diberikan memang agile dan reusable. Proses analisis kandidat service di apotek dilakukan dengan pendekatan entity-centric. Entitas yang terlibat diturunkan dari alur kerja apotek. Kemudian, dilakukan identifikasi use-case setiap entitas dan data yang terlibat di tiap aktivitas tersebut. Pemetaan ini menghasilkan kandidat service seperti yang disajikan pada tabel 1. 3 Luthfi Ramadani http://localhost:8080/Apotek/resources/tReseps/. Saat client ingin mengakses data resep, maka secara sederhana dilakukan proses retrieve ke alamat URI tersebut. Orchestration Service Layer Service Penjualan Apotek Service Pengadaan Persediaan Business Service Layer Service Service Pengelolaan Service Resep persediaan Transaksi jual beli Service Pengelolaan data produk Web Sistem Apotek di Client (JSP) Service Pengelolaan Pengadaan Persediaan Service Pengelolaan Data Pelanggan HTTP Application Service Layer Service Cetak Transaksi Service Rekap Transaksi Periodik Service Pengelolaan Keamanan Java Application Server Apotek Web Service (RESTful) Bagan 1 Hasil Identifikasi Kandidat Service MySQL Connector Kandidat service tersebut disusun ke dalam kelas-kelas yang akan mengkonsumsi entitas data yang ada di apotek. Entitas data juga dirancang sebagai service dan diimplementasikan dalam web service. MySQL Server Database Apotek (MySQL) Bagan 2 Deployment Diagram Model Implementasi Implementasi rancangan sistem apotek dilakukan berdasarkan komunikasi client-server. Server merupakan penyedia services dan konektor ke database. Sedangkan client merupakan workstation apotek yang akan mengakses services. Services diimplementasikan dengan web services. Teknologi web service yang digunakan adalah REpresentational State Transfer (REST) web service. Teknologi ini merupakan web service yang memberikan identifikasi data di aplikasi web dengan Universal Resource Identifiers (URIs). Adapun antarmuka antara penyedia service dengan pengakses adalah protokol HTTP. Implementasi REST pada web service apotek berdasarkan entitas yang ada. Entitas yang menjadi web service tersebut diantaranya: o TBarang.java o TBarangStok.java o TResep.java o TDetailResep.java o TObatApotek.java o TPermintaanApotek.java o TResep.java Dapat dilihat bahwa penerapan entity-centric dalam pembangunan web service digunakan pada implementasi yaitu berdasarkan entitas data dan tabel yang ada di database. Penggunaan URI sebagai resource dari web service ini dilihat dari format protokol HTTP dan alamat yang diberikan. Sebagai contoh, alamat subresource untuk TResep adalah Aplikasi sistem apotek di client merupakan aplikasi web berbasis Java Server Page (JSP), Javascript, dan dokumen web statis berupa HTML dan CSS. Aplikasi ini mencakup proses CRUD (Create, Retrieve, Update, Delete) dari akses ke web service melalui komunikasi HTTP client-server, serta aplikasi pada Application Service Layer yaitu fungsi cetak hasil transaksi, fungsi rekap transaksi per periode, dan fitur keamanan fungsional berupa otentikasi. Model Deployment Penerapan sistem apotek dengan SOA dan cloud computing diilustrasikan seperti pada gambar 1. Hasil enkapsulasi proses bisnis apotek menjadi service-service yang autonom dijalankan di cloud. Katalog services untuk apotek tersebut tersedia untuk diakses oleh apotek sesuai kebutuhan dari apotek tersebut. Kebutuhan diperoleh dari proses bisnis yang dijalankan apotek. Gambar 1 Model Deployment 4 Pengembangan sistem apotek dengan SOA dan cloud computing dalam tugas akhir ini dimodelkan sebagai penerapan private-cloud di apotek rumah sakit HS. Hal ini dilakukan dengan melakukan virtualisasi server yang menjalankan service-service apotek. Penerapan private-cloud merupakan langkah awal dan menjadi model ke depan dalam membangun sistem apotek berbasis SOA dan cloud computing yang lebih luas. Erl, Thomas. 2007. “SOA: Principles of Service Design”. Pearson Education Inc. Boston Hau L. Lee & Corey Billington. “Managing Supply Chain Inventory: Pitfalls and Opportunities”. Sloan Management Review. Spring 1992. Hewitt, Eben. 2009. “Java SOA Cookbook”. O‟Reilly Media Inc. Sebastopol USA. Johnson, Rod. 2002. “Expert One-on-One J2EE Design and Development (Programmer to Programmer)”. Wrox-John Wiley & Sons Inc. New Jersey. Linthicum, David S. 2010. „‟Cloud Computing and SOA Convergence in Your Enterprise: A Stepby-Step Guide‟. Pearson Education Inc. New Jersey. Neston, John & Nelis, Johan. 2006.“Business Process Management, Practical Guidelines to Successful Implementations”. Elsevier Ltd. Burlington Pressman, Roger S. 2001. “Software Engineering A Practitioner’s Approach”. McGrawHill Company Inc. New York. Reese, George. 2009. “Cloud Application Architecture: Building Applications and Infrastructure in the Cloud”. O‟Reilly Media Inc. USA. Gambar 2 Model Deployment yang Dilakukan Kesimpulan Seto Soejono, Nita Yunita, Lily Triana. 2004. “Manajemen Farmasi Lingkup: Apotek Farmasi Rumah Sakit, Pedagang Besar Farmasi, Industri Farmasi”. Airlangga University Press. Surabaya Sistem berbasis SOA pada apotek rumah sakit dapat diperoleh dari identifikasi proses dan diturunkan menjadi service-service. Service tersebut masing-masing bersifat otonom sehingga dapat diubah atau dihilangkan tanpa mengganggu sistem lain. Hasil perancangan service diuji dan dievaluasi melalui implementasi prototipe aplikasi untuk memperoleh karakteristik dan komponen RESTful web services. Hasil evaluasi menunjukkan sistem apotek yang dirancang berikut implementasinya telah menunjukkan beberapa keunggulan arsitektur SOA yang tercakup dalam aspek agility dan reusability. Penggunaan cloud computing untuk sistem berbasis SOA sangat sederhana karena keduanya memiliki prinsip komunikasi client-server. Implementasi service dideploy di cloud dan dapat diakses client sebagai application as a service. Shimrat, Ofer. “Cloud Computing and Healthcare”. Technology Matters. April 2009 Stevenson, William J. 2006. “Operations Management”. McGraw-Hill. New York. DAFTAR PUSTAKA --. 2004. “Standar Pelayanan Farmasi di Rumah Sakit”. Menteri Kesehatan Republik Indonesia. Indonesia Bell, Michael. 2010. “SOA Modeling Patterns for Service-Oriented Discovery and Analysis”. John Wiley&Sons Inc. New Jersey Erl, Thomas. 2005. “Service-Oriented Architecture: Concepts, Technology, and Design”. Prentice Hall PTR. Indiana. 5