
DEFINISI DAN KONSEP DASAR
Aplikasi M A N T R A merupakan perangkat lunak pendukung Kerangka Kerja Interoperabilitas Sistem Informasi Elektronik dengan menerapkan teknologi Layanan Berbasis Web (Webservices) sebagai media pendukung Aplikasi Antarmuka/Perantara Akses Data Elektronik dalam rangka melaksanakan pertukaran data atau berbagi pakai data antar Sistem Informasi Elektronik. Webservices menjadi pilihan karena beroperasi dengan teknologi berbasis Standar Terbuka (Open Standard) dan dalam pengembangannya harus menggunakan Perangkat Lunak dengan Kode Sumber Terbuka (Open Source Software). Pemanfaatan teknologi Webservices memberikan kemampuan Multi-Platform pada Aplikasi Perantara Akses Data Elektronik dalam penerapan Interoperabilitas Sistem Informasi Elektronik yang mencakup keragaman informasi dan format data.
Aplikasi Perantara Akses Data Elektronik yang berbasis Layanan Web umumnya dinamakan Antarmuka Program Aplikasi (Application Programming Interface/API) atau disingkat Web-API. Web-API bersifat reusable (dapat didaur ulang) tanpa merubah akses layanan (alamat dan atribut end point). Web-API digunakan sebagai akses terhadap suatu fungsi/prosedur pengolahan data dalam program aplikasi yang dikomunikasikan dari aplikasi lain yang berbeda platform dan lokasi bahkan dengan jarak yang berjauhan melalui jaringan internet umumnya dinamakan Remote Procedure Call (RPC) atau dengan kata lain Web-API dapat mengakses sumberdaya layanan, program, informasi atau data dari tempat yang berbeda. Web-API dalam aplikasi MANTRA berfungsi menterjemahkan bentuk, struktur, dan semantik suatu sumber data ke dalam format data standar yang dapat dibaca oleh semua Aplikasi berupa format data XML, JSON, PHP-ARRAY, PHP-SERIALIZE.
Komunikasi data melalui Web-API dalam Aplikasi MANTRA dapat dilakukan melalui beberapa model interkoneksi, diantaranya:
-
SOAP (Simple Object Access Protocol)
Komunikasi data model SOAP dilakukan antara Aplikasi Client/Requester (SOAP-Client) dengan Web-API/Provider (SOAP-Server) melalui alamat Web-API dengan protokol HTTP/s (Hyper Text Transfer Protocol/Secure). Informasi Metadata yang disediakan SOAP-Server dapat disajikan melalui aplikasi Web-Browser dalam bentuk dokumen format XML dengan nama Web Services Description Language (WSDL), sementara data permintaan (SOAP-Request) dan tanggapan (SOAP-Response) dilewatkan diantara SOAP-Client dan SOAP-Server dalam format dokumen XML SOAP-Envelope yang dibentuk oleh fungsi SOAP-Server pada Web-API.
-
REST (REpresentational State Transfer)
Komunikasi model REST dilakukan antara Aplikasi Client/Requester dengan Web-API/Provider melalui Alamat Web-API dengan protokol HTTP/s (Hyper Text Transfer Protocol/Secure). Informasi Metadata yang disediakan Web-API dapat disajikan melalui aplikasi Web-Browser dalam bentuk dokumen format XML/HTML/JSON/CSV dengan nama Web Application Description Language (WADL), sementara data permintaan (Adapter-Request) dan tanggapan (API-Response) dilewatkan diantara Aplikasi dan Web-API dalam format dokumen standar XML, JSON, RSS yang dibentuk oleh Web-API.
-
ARSITEKTUR
Mekanisme berbagi pakai data melalui Web-API dinamakan mekanisme berbasis layanan API sehingga membentuk suatu Arsitektur Berbasis Layanan yang disebut SOA (Service Oriented Architecture), beberapa bentuk arsitekturnya dapat dilakukan dengan ilustrasi sebagai berikut:
Arsitektur ini dinamakan model Point-to-Point antar Web-API.
Interoperabilitas dengan Arsitektur Point-to-Point antar Web-API yang semakin banyak mengakibatkan sulitnya Requester mengatur pemanfaatan Web-API berdasarkan Alamat Akses Web-API, sehingga perlu adanya Agen pengelola daftar layanan berbagi pakai data melalui Web-API yang disediakan Provider. Sesuai dengan perannya Agen ini dinamakan Universal Description Discovery and Integration (UDDI). Dengan adanya Agen UDDI maka konsep Point-to-Point dapat dilengkapi dengan Direktori Referensi Layanan.
Tersedianya Agen Informasi Web-API pada konsep Agen UDDI, membentuk interaksi kompleks antar Web-API seperti ilustrasi berikut ini:
Interaksi Web-API menggunakan konsep Agen UDDI hanya dapat dilakukan pada satu Segmen/Sektor Agen saja. Agar dapat berkomunikasi antar Segmen/Sektor maka dibutuhkan media koneksi antar Agen UDDI. Pola komunikasi antar Agen UDDI secara terintegrasi dapat dilakukan melalui suatu Kanal yang disebut Bus. Model Bus ini umumnya dinamakan Service Bus karena dianggap sebagai media perantara layanan Web-API yang tidak hanya memberikan informasi layanan berbagi pakai data suatu Web-API akan tetapi memberikan fasilitas akses koneksi terhadap suatu Web-API melalui Adapter, dengan demikian dapat menjamin keamanan akses terhadap Web-API, dan juga menjamin ketersediaan data/informasi dari Web-API melalui fungsi Cache Proxy.
Dalam aplikasi MANTRA, media Service Bus ini dirancang dalam bentuk Arsitektur Interoperabilitas Terintegrasi antar Sistem Informasi Elektronik Badan Pemerintahan dengan nama Government Service Bus (GSB) yang diilustrasikan pada gambaran sebagai berikut:
Sedangkan Arsitektur dalam aplikasi MANTRA yang dapat berfungsi sebagai API Services (Data/Function) dan Bus Services (Proxy) diilustrasikan pada gambaran sebagai berikut:
Fitur-fitur yang dimiliki aplikasi MANTRA adalah sebagai berikut:
Dengan adanya Service Bus (Kanal berbasis SOA), maka fungsi Agen UDDI dapat disatukan dalam layanan akses Service Bus. Bahkan Interaksi antara Requester dan Provider tidak lagi dilakukan secara langsung tetapi harus melalui pengaturan dalam Service Bus agar terjamin sistem keamanan Integrasi Informasi dan Pertukaran Data pada tiap layanan.
Bila diperhatikan gambaran interaksi antar Web-API GSB seolah-olah akan mengalami penyempitan akses (bottle-neck) sehingga rentan terjadi dead-lock atau gagal proses. Secara fisik memang tampak seperti itu namun secara teknis akses melalui GSB sudah ditangani dengan baik melalui manajemen proses hyperthreading pada Web Server dan fasilitas proxy untuk mengurangi beban akses. Informasi/data yang dihasilkan suatu Web-API tidak dianjurkan dalam jumlah baris/record yang besar karena Web-API hanya difungsikan sebagai media referensi untuk validasi, verifikasi dan akurasi data saja. Dengan demikian Sinkronisasi Data dalam jumlah baris/record yang besar tidak direkomendasikan untuk diakses melalui Web-API atau GSB.
Manfaat penggunaan Aplikasi MANTRA antara lain:
Efisiensi : Penghematan biaya pengembangan fitur Aplikasi Pengolah Data melalui pemanfaatan Web-API Efektifitas : Mengurangi duplikasi data maupun layanan Web-API dengan memanfaatkan Service Bus Reusability : Setiap layanan dapat dikembangkan lagi menjadi layanan baru dengan memanfaatkan layanan yang sudah ada, sehingga pengembangan tidak perlu dibuat dari awal (from scratch) Akurat : Mempermudah penetapan proses validasi dan verifikasi data pada sumber yang tepat. Interoperable : Memiliki kemampuan berbagi data yang dilengkapi fasilitas Konversi Metadata (Ontologi Data). Futuristik : Menjadi komponen basis pengembangan teknologi modern seperti Cloud Services diantaranya untuk pengembangan Software as a Services (SaaS), Platform as a Services (PaaS), dll.
PROSEDUR PENGGUNAAN
Kemampuan yang dimiliki Aplikasi MANTRA antara lain:
- Memudahkan pembuatan Web-API secara interaktif melalui Graphics User Interface berbasis Web
- Mengatur akses interoperabilitas antara Web-API dengan Aplikasi Pemanfaatnya
Berdasarkan kemampuan yang dimiliki Aplikasi MANTRA yaitu sebagai Web-API maupun GSB, pengelolaannya dapat dilakukan melalui peran pengguna dan otorisasinya. Selain kemampuan tersebut, Aplikasi MANTRA dapat dikembangkan sesuai kebutuhan pemanfaatannya. Hal ini dikarenakan Aplikasi MANTRA dikembangkan dengan aplikasi berbasis Open Source Software melalui dukungan perangkat lunak seperti Apache Web-Services, PHP, MySQL, Javascript, ADODB dan nuSOAP.
Aplikasi MANTRA memiliki beberapa level/tingkatan peran pengguna berdasarkan instansi/penyedia layanan secara hirarki dari yang terendah sampai yang tertinggi sebagai berikut:
- Requester, berperan sebagai pihak pengguna yang memanfaatkan Web-API yang disediakan oleh Aplikasi MANTRA
- Publisher, berperan sebagai pihak penyedia yang mendaftarkan alamat Web-API ke dalam GSB
- Provider, berperan sebagai pihak yang membuat Web-API
- Administrator, berperan sebagai pihak yang mengatur pendelegasian dan pengelolaan Aplikasi MANTRA
- Supervisor, berperan sebagai pihak yang mengendalikan pengaturan layanan dalam Aplikasi MANTRA
Tahap pelaksanaan Interoperabilitas menggunakan aplikasi MANTRA digambarkan dengan diagram berikut ini:
- Administrator (Admin) pada Web-API bertugas mendelegasikan akses pengguna aplikasi MANTRA untuk Penyedia (Provider) dan Pemanfaat (Requester) Web-API
- Penyedia (Provider) pada Web-API membuat Fungsi Operasi Web-API melalui pendefinisian data/program dan elemennya
- Pemanfaat dari pihak penyedia (Requester) dalam hal ini yang terdaftar sebagai Publisher di GSB memesan Alamat Akses Fungsi Operasi dalam Web-API Provider yang akan didaftarkan ke GSB setelah disetujui Penyedia (Provider)
- Administrator (Admin) pada GSB bertugas mendelegasikan akses pengguna untuk Publisher dan Pemanfaat (Requester) Layanan GSB
- Pempublikasi (Publisher) mendaftarkan Alamat Akses Web-API Penyedia ke dalam GSB
- Pemanfaat dari pihak lain (Requester) memesan dan mengakses Layanan GSB setelah disetujui Publisher untuk unduh adapter ke dalam Aplikasi yang akan mengaksesnya
SPESIFIKASI
-
Fitur Aplikasi MANTRA
Platform Teknologi : Web Services Protokol Interkoneksi : HTTP/s Metode Interkoneksi : SOAP & REST Format Data/Dokumen : XML, JSON, PHP-Array, PHP-Serialize Kapabilitas : Data/Fuction Services & Proxy Services Dukungan DBMS : MySQL, PostgreSQL, MS-SQL/Sybase, ORACLE, DBASE/FOXPRO/MS-ACCESS (Windows). Dukungan Berkas : Semua Berkas Dokumen (CSV, PDF, JPG, PNG, BMP, DOC, XLS, dll.) Akses Antarmuka : Web-GUI Pengembangan : Open Source Code Standar Aplikasi : Web Base
-
Perangkat Lunak (Software) pendukung (Minimal)
Web Services : Apache versi 2.x Web Preprocessing : PHP versi 5.x Database Management : MySQL versi 5.x Operating System : Linux, Unix, Windows
-
Perangkat Keras (Hardware) dan Akses pendukung (Minimal)
Processor : 1GHz Hyperthreading RAM : 8 GByte Storage : 500 GByte NIC : 100 Mbps Bandwidth : 10 Mbps
-