Information System

Bagi rekan-rekan yang banyak berkecimpung di dunia Teknologi Informasi, istilah “Sistem Informasi” pasti sudah tidak asing lagi. Banyak (kalau tidak boleh dikatakan mayoritas) proyek besar Teknologi Informasi di Indonesia berada di sekitar pengembangan Sistem Informasi. Macam Sistem Informasi yang dikembangkan pun beragam sesuai dengan domain permasalahan yang disupport oleh sistem tersebut, contohnya saja Sistem Informasi Keuangan untuk mensupport proses keluar masuknya uang, Sistem Informasi Geografis untuk mensupport analisis yang berkenaan dengan geografi, danĀ  Sistem Informasi Kesehatan untuk mensupport analisis data kesehatan para pasien.

Dari sisi teknis, pengembangan Sistem Informasi sering dikatakan relatif “mudah”. Selain operasi add, update, dan delete data, biasanya tidak banyak fungsi kompleks yang perlu diimplementasikan dalam suatu Sistem Informasi. Kendatipun demikian, kesulitan utama dalam pengembangan suatu Sistem Informasi terletak pada analisis proses yang harus disupportnya: Bagaimana sistem tersebut dapat mendukung proses, sedangkan proses itu sendiri akan selalu berubah, entah itu ber-evolusi (perlahan-lahan) atau ber-revolusi (berubah dalam waktu cepat) sesuai dengan keputusan strategis manajemen.

Sepengetahuan saya, dalam metode pengembangan perangkat lunak yang seringkali dipakai (seperti RUP, RAD, atau bahkan XP), analisis terhadap proses diserupakan dengan analisis terhadap kebutuhan fungsional. Proses dimodelkan sebagai kumpulan kebutuhan fungsional yang terkait satu sama lain. Contohnya, lihat proses penanganan pasien yang digambarkan dengan statechart-diagram dibawah:

Contoh proses dalam statechart diagram

Contoh proses dalam statechart diagram

Dalam analisis, proses tersebut seringkali dimodelkan sebagai beberapa kebutuhan fungsional:
1. Registrasi pasien
2. Pemeriksaan dokter
3. Bayar pemeriksaan dan administrasi

Setiap kebutuhan fungsional kemudian diimplementasikan terpisah satu sama lain. Tim pengembang kebutuhan fungsional 1 tidak perlu tahu menahu mengenai kebutuhan fungsional 2 dan 3, meskipun sebetulnya kebutuhan fungsional 1, 2, dan 3 saling terkait dalam sebuah proses.

Dengan metode seperti ini, apa yang terjadi jika proses penanganan pasien perlu diubah?

Tim pengembang harus meninjau ulang, kebutuhan fungsional mana saja yang terkait dengan proses penanganan pasien. Setelah itu, baru dilakukan modifikasi sesuai kebutuhan proses yang baru, bisa dengan memodifikasi atau menghapus kebutuhan fungsional yang sebelumnya ada, atau menambahkan kebutuhan fungsional yang baru. Dengan cara ini, kesulitan akan timbul jika:

  1. Dokumentasi pemetaan kebutuhan fungsional terhadap proses tidak lengkap, sehingga tidak bisa dilacak kebutuhan fungsional mana saja yang terkait dengan proses penanganan pasien. Padahal, sudah menjadi rahasia umum bahwa dokumentasi seringkali dinomorduakan dalam pengembangan suatu perangkat lunak.
  2. Kebutuhan fungsional dalam proses penanganan pasien memiliki keterkaitan dengan proses lainnya, sehingga bila dilakukan modifikasi, ada kemungkinan proses lain juga akan terpengaruh. Padahal, dengan besarnya skup masalah dalam suatu sistem informasi, kemungkinan keterkaitan suatu kebutuhan fungsional dengan beberapa proses cukup besar, belum lagi jika proses maupun kebutuhan fungsional yang ada berjumlah sangat banyak.

Disinilah keunggulan metodologi pengembangan sistem informasi yang menitikberatkan proses. Pada intinya, metodologi ini menitikberatkan pada pemodelan proses dalam tahap analisis, daripada pemodelan kebutuhan fungsional satu-persatu. Model proses ini kemudian menjadi masukan bagi pembangkit kode, yang akan menghasilkan kode perangkat lunak yang sebenarnya. Jika terjadi perubahan proses, tim pengembang cukup mengubah model proses, lalu memberikannya pada pembangkit kode yang akan menghasilkan kode perangkat lunak untuk proses yang baru. Sebagai contoh tools, rekan-rekan bisa coba lihat YAWL (Open-source lho!) atau Staffware.

Metodologi pengembangan sistem informasi yang menitikberatkan proses bukan hanya menawarkan kemudahan dalam mengubah proses, tapi juga dalam menganalisis proses tersebut. Tools seperti Protos dan Woflan menyediakan fitur analisis terhadap model proses. Bahkan, dengan tools seperti Protos, CPN Tools, dan Arena, proses dapat disimulasikan terlebih dahulu untuk mengetahui kebutuhan resource dan rata-rata waktu pelayanan. Bagi tingkatan manajemen, kelebihan ini tentunya sangat menarik.

Kendatipun demikian, sejauh eksplorasi saya, saat ini masih banyak hal yang perlu disempurnakan dari suatu metodologi pengembangan sistem informasi yang menitikberatkan proses. Berdasarkan materi yang saya dapat di kuliah terhadap berbagai model proses yang ada saat ini, belum ada tipe model yang “sempurna”, dalam artian dapat memodelkan semua pattern (data, resource, dan control) yang mungkin diperlukan dalam suatu proses. Berdasar pengalaman saya (bersama rekan-jenius Samuel dan rekan-jenius-Petri-Net Jimmy) bekerja dengan YAWL, perancangan basis data pun masih kurang diperhatikan, yang mungkin akan berdampak pada performansi sistem informasi. Masalah-masalah ini merupakan peluang-peluang penelitian yang berprospek tinggi di masa depan dan menunggu kontribusi dari kita semua. Apakah rekan-rekan berminat?

-Arya-



7 Responses to “Pengembangan Sistem Informasi yang Menitikberatkan Proses”  

  1. 1 wayangs

    top pisan euy….
    mulai serius nih blog kita hihihi…

    sekedar saran Ya, gantilah kata penulis dengan saya biar lebih akrab. Serasa baca jurnal euy….

  2. 2 Arya

    @Pak Wayan: Hahaha… siappp pak! saya edit ya.. sekarang udah pake kata “Penulis”.. eh.. “Saya” maksudnya :D

  3. keren bosssss…Nulis apa ya gw…Hehehehe

  4. 4 Arya

    @Samuel: Weiss… Jenius emang gtu tuh.. kebingungan gara2 kebanyakan topik. Gmana kalo mulai dari “Petunjuk Praktis Pengembangan Aplikasi Open-Source”? :D

  5. 5 lenaldi

    hai, alya….wow, tulisannya kelen sekari

  6. udah mulai dibikin toh?

  7. 7 4ry4

    @lenaldi: Hehehe… siapa dulu dong… Alya!!!

    @Yogi: Iya Yog, daripada nunggu2 nama, langsung release aja. Join juga yaks ;)


Leave a Reply