Mari
kita bayangkan masa depan, saat hampir semua aktivitas manusia
memanfaatkan komputer sebagai sarana utamanya. Berbagai basis data
berskala besar telah disimpan dalam format elektronis. Demikian pula
berbagai aplikasi yang mendasarkan pada basis data telah
dikomputerisasi dalam sebuah lingkungan jaringan komputer yang
meliputi berbagai instansi dan perusahaan. Pada saat itu dimensi
ruang benar-benar telah berkontraksi sedemikian rupa sehingga dunia
maya seakan-akan telah menjadi dunia nyata dan berbagai aspek
kehidupan manusia terhubung melalui suatu jaring-jaring yang amat
kompleks.
Ilustrasi
berikut ini bisa menggambarkannya. Misalnya si A sakit dan pergi ke
dokter langganannya. Jika hasil diagnosa mengharuskan si A harus
masuk ke rumah sakit, maka pemilihan RS dan pemesanan tempat dapat
dilakukan pada saat itu juga melalui komputer di tempat praktek
dokter. Selanjutnya komputer di RS dapat mengontak komputer
perusahaan asuransi kesehatan untuk pengurusan pembayaran biayanya.
Jika si A memerlukan obat atau peralatan khusus, maka komputer si
dokter dapat memberitahu di apotik mana obat atau peralatan tersebut
tersedia. Cerita ini dapat diperpanjang, tapi intinya adalah bahwa
satu aksi dapat memicu berbagai aktivitas lain yang saling
berhubungan.
Ilustrasi
di atas nampaknya tidak lagi jauh dari kenyataan yang ada saat ini.
Sesungguhnya dapat dikatakan bahwa teknologi untuk menuju ke sana
saat ini sudah dimiliki manusia. Selain teknologi mikroelektronik dan
telekomunikasi, maka teknologi lain yang berperanan penting adalah
teknologi sistem komputer terdistribusi (distributed computer
systems).
Sistem
komputer terdistribusi adalah sebuah sistem yang memungkinkan
aplikasi komputer beroperasi secara terintegrasi pada lebih dari satu
lingkungan yang terpisah secara fisis. Sistem informasi kesehatan
yang diilustrasikan di atas menunjukkan komponen-komponen aplikasi
yang terdistribusi (di tempat praktek dokter, di rumah sakit, di
apotik, dan di perusahaan asuransi kesehatan). Ciri khas sistem
komputer terdistribusi adalah heterogenitas dalam berbagai hal:
perangkat keras, sistem operasi, dan bahasa pemrograman. Adalah tidak
mungkin untuk mengembangkan sistem terdistribusi yang homogen secara
paksaan, karena secara alamiah sistem komputer terdistribusi tumbuh
dari lingkungan yang heterogen. Kata kunci dalam menjembatani
perbedaan-perbedaan yang muncul adalah interoperabilitas
(interoperability).
CORBA
Interoperabilitas adalah kemampuan saling bekerjasama antar sistem komputer. Sebenarnya interoperabilitas bukanlah barang baru, karena protokol komunikasi datapun (TCP/IP misalnya) pada dasarnya diciptakan untuk mewujudkan interoperabilitas. Yang belum banyak dikenal adalah interoperabilitas pada level perangkat lunak aplikasi.
Interoperabilitas adalah kemampuan saling bekerjasama antar sistem komputer. Sebenarnya interoperabilitas bukanlah barang baru, karena protokol komunikasi datapun (TCP/IP misalnya) pada dasarnya diciptakan untuk mewujudkan interoperabilitas. Yang belum banyak dikenal adalah interoperabilitas pada level perangkat lunak aplikasi.
Dalam
konteks sistem komputer terdistribusi, meskipun komponen-komponen
aplikasi dibuat dengan bahasa pemrograman yang berbeda, menggunakan
development tools yang berbeda, dan beroperasi di lingkungan yang
beragam, mereka tetap harus dapat saling bekerjasama.
Interoperabilitas
perangkat lunak menuntut homogenitas pada suatu level tertentu. Untuk
itu diperlukan semacam 'standarisasi'. Berawal dari keperluan ini
lahirlah CORBA (Common Object Request Broker Architecture).
CORBA adalah hasil 'kesepakatan' antara sejumlah vendor dan
pengembang perangkat lunak terkenal seperti IBM, Hewlett-Packard, dan
DEC, yang tergabung dalam sebuah konsorsium bernama OMG
(Object Management Group).