Alhamdulillah, tadi malam telah selesai satu pekerjaan besar, yaitu Sistim SMS Pemilu Pilpres 2009, yang diberi nama SERIS.
Sistim ini memungkinkan tabulasi Pemilu yang :
- Cepat : dalam waktu singkat, data dari puluhan ribu TPS sudah masuk. Kami sendiri cukup surprise 🙂 memang dengan SMS pasti akan lebih cepat, namun performa sistem SERIS kemarin ini melebihi bahkan ekspektasi kami sendiri.
- Luas : kerjasama dengan Telkomsel memungkinkan SERIS untuk menjangkau 95% dari wilayah Indonesia.
- Transparan : Alur proses di sistim SERIS adalah full 100% otomatis, end to end. Mulai dari pengiriman SMS, masuk ke jaringan provider (Telkomsel), proses di sistim SERIS, sampai penayangan tabulasi – sistim berjalan dengan lancar tanpa intervensi.
- Akurat : proses perhitungan otomatis di engine SERIS sangat akurat, karena proses parsing yang minim resiko kekeliruan deteksi; dan didukung oleh berbagai algoritma verifikasi & validasi internal.
- Secure : sistim SERIS di desain untuk semaksimal mungkin mendekati tingkat keamanan 100%. Infrastruktur SERIS terisolir dari Internet & jaringan publik, tayangan data di push dari jaringan internal secara rutin (sehingga jika di deface maka akan cepat kembali sebagaimana semula kembali), aliran SMS terisolir hanya pada jaringan internal provider (Telkomsel) & SERIS, dan berbagai metode keamanan lainnya. Mencapai tingkat keamanan 100% adalah hal yang mustahil, terutama dengan keterbatasan waktu pada proyek ini. Namun kami berusaha semaksimal kemampuan kami untuk mengusahakan pencapaian yang sedekat mungkin pada target tersebut. Mudah-mudahan kami telah berhasil melakukannya.
- Accountable : aliran data dicatat & direkam secara redundant di berbagai titik. Ditambah lagi dengan proses snapshot yang dijalankan setiap beberapa menit, yang memungkinkan kita untuk mengetahui gambaran situasi internal sistem pada suatu titik waktu & lokasi tertentu. Usaha untuk melakukan tampering pada berbagai titik pada sistem akan bisa diketahui dengan mudah misalnya dengan melakukan crosscheck pada berbagai audit logs tersebut.
- Murah : sistim ini, walaupun berskala nasional, namun total biayanya sangat murah. Penggunaan teknologi Open Source membantu pencapaian ini secara signifikan – engine Database SERIS misalnya; walaupun hanya menggunakan 1 buah server fisik, namun performanya sangat bagus (23.000 transaksi/detik)
tidak kalah dengan rekannya di jaringan Telkomsel (18.000 transaksi/detik) yang terdiri dari beberapa server. Teknologi Open Source kini sudah sangat mature, dan memungkinkan kami untuk memanfaatkan potensi sistim secara amat maksimal. Total server yang digunakan di sistim ini hanya 7 buah, serta beberapa switch, hub, dan firewall. - Easy to Use : Siapa sih yang tidak kenal dengan SMS ? 🙂 Ini adalah salah satu alasan pemilihan teknologi ini – siapa saja bisa menggunakannya. SMS memang jelas kalah sexy jika dibandingkan dengan jargon-jargon seperti OMR, ERP, EAI, dst – tapi pada proyek dengan profil pengguna yang sedemikian ekstrim variasinya, maka sistim ini harus melakukan penekanan yang besar pada aspek kemudahan penggunaan.
- Easy to Deploy : Indonesia adalah negara kepulauan terbesar di dunia. Ini adalah fakta.
Sebuah sistim yang akan digelar pada kondisi geografis seperti ini harus melakukan fokus kepada kemudahan deployment. Sistim SERIS di desain untuk bersifat centralized, sehingga beban pada sisi client menjadi amat sangat minim. Pada gilirannya ini memudahkan deployment, tanpa mengorbankan aspek-aspek lainnya. - Powerful : walaupun hanya ada sedikit waktu untuk melakukan tuning, engine Database SERIS mampu menangani 23.000 transaksi per detik. Sedangkan frontend SERIS (tayangan tabulasinya) mampu melayani 15.000 request per detik.
Tentu saja sistim ini masih belum sempurna. Development sistim berlangsung intens dalam waktu hanya 2 minggu. Secanggih apapun sumber daya yang ada, dengan time constraint seperti ini maka kita hanya bisa berusaha untuk mendekati kesempurnaan.
Beberapa pelajaran yang kami dapatkan & hal-hal yang masih bisa disempurnakan :
- Dokumentasi & Komunikasi : kesibukan dengan hal teknis membuat aspek ini agak terabaikan. Akibatnya, stakeholder sistim, KPU, seringkali tidak mendapat informasi yang memadai mengenai sistim SERIS dan perkembangannya. Ditambah lagi dengan gangguan dari berbagai pihak yang mungkin mempunyai kepentingan / conflict of interest, membuat proyek ini beberapa kali nyaris dibatalkan. Alhamdulillah, kami bersyukur bahwa stakeholder sistem ini memberikan dukungan yang sangat besar untuk proyek ini, sehingga berbagai masalah yang muncul seputar hal ini bisa diatasi bersama-sama.
- Performa : mungkin menurut Anda performa sistim SERIS ini sudah bagus, namun secara pribadi, kami masih belum puas 🙂
Diperkirakan bahwa, dengan ketersediaan waktu dan sumber daya, sistim ini masih bisa mencapai peningkatan performa sampai, minimal, 3x lipat.
Pada saat ini para personil tim SERIS sedang terkapar di berbagai penjuru Jakarta & Bogor 😀 , setelah bekerja keras selama berhari-hari untuk membangun sistem ini. Mereka adalah (diurut berdasarkan alfabet):
- Abdullah Andi Koro : network admin, veteran di komunitas Open Source dan Internet. Bantuannya sangat besar dalam menjamin bahwa berbagai jaringan yang ada (provider/Telkomsel, internal, internet) bisa berfungsi dengan baik, terkoneksi di titik-titik yang diperlukan, berjalan dengan lancar & optimal.
- Digit Oktavianto : system administrator, kami kenal dari komunitas Open Source (Linux Aktivis, MySQL, Ubuntu, dst). Banyak membantu juga dengan berbagai hal seputar database. Kecepatan kerjanya amat banyak membantu menyelesaikan berbagai masalah pada saat yang kritis.
- Harry Sufehmi : system architect, saya bertugas mendesain arsitektur sistem, dan mengawasi agar sistem bisa bekerja secara optimal. Saat ini juga mendapat amanah sebagai Wakil Ketua II AOSI (Asosiasi Open Source Indonesia), dan anggota beberapa komunitas (Blogger, Ubuntu, Linux Aktivis, dst)
- Johan Rukmana : Flash developer, interface tabulasi pemilu hasil karyanya dipuji oleh KPU, dan pada saat ini sedang dalam proses transfer untuk dihosting di server KPU sendiri.
- Riyogarta Pratikto : lead developer, penggagas awal dari sistim SERIS. Anggota komunitas developer (PHP), Open Source (Ubuntu Indonesia), dan blogger. Juga berfungsi rangkap sebagai interface kami ke IFES, Telkomsel, dan KPU 🙂
- Rizki : system administrator, anggota komunitas Open Source (MySQL, Linux). Nicknamenya di komunitas adalah crazynuxer. Kalau sedang terlihat lowong, biasanya langsung ditarik ke tempat saya, dan dipaksa untuk melakukan optimisasi performa sistem 😀
- Wibisono Sastrodiwiryo : senior developer, dikenal dari komunitas Blogger dan Developer (PHP). Fungsinya amat vital dalam pembangunan sistim ini. Mampu bekerja dengan sangat cepat dan secara maraton ketika diperlukan pada waktu-waktu kritis di proyek ini. Juga banyak memberikan masukan & input yang berharga pada pengembangan sistem. Sekaligus merangkap Seksi Dokumentasi Proyek 🙂 foto-foto yang Anda nikmati di artikel ini adalah hasil karya beliau.
- Yanmarshus : QA (quality assurance), tugasnya mungkin adalah yang paling penting dalam tim ini. Advokat distro Slackware 🙂 beliau bertugas menjamin bahwa sistim ini bisa memiliki kualitas tinggi, walaupun ada keterbatasan waktu & sumber daya yang signifikan.
Sebelum menutup mata (baca: terkapar di tempat tidur), saya ingin menghaturkan ucapan terimakasih kepada berbagai pihak yang telah memungkinkan berlangsungnya tugas ini dengan lancar :
- IFES : LSM dari Amerika ini memberikan bantuan hibah dana, konsultasi, dan dukungan moril kepada tim SERIS. Selama berbulan-bulan saya berhubungan dengan mereka, tidak sekalipun ada usaha mereka untuk mengintervensi proyek ini. Mereka bahkan justru membantu kami mengatasi usaha intervensi dari pihak lainnya. Karena itu maka proyek SERIS ini bisa dijalankan oleh tim kami dengan independen. Secara ringkas, tanpa IFES, maka sistim SERIS ini tidak akan terwujud. Secara khusus terimakasih saya sampaikan kepada Adam, Pak Anhar, Mike, Hank, Mauri, dan rekan-rekan lainnya di IFES. Let it be known that your help is much appreciated. Thanks guys.
- KPU : terimakasih dan penghargaan kami sampaikan kepada KPU, untuk kepercayaan yang telah diberikan mereka kepada kami, wakil dari berbagai komunitas, untuk membangun sistim Pemilu Nasional ini. Berkat kepercayaan ini maka kami, komunitas, jadi bisa membuktikan bahwa kami pun bisa berkarya dan berkontribusi untuk negara ini. Secara khusus terimakasih kami haturkan kepada Pak Aziz, untuk semua bantuan dan dukungannya kepada tim kami. Kemampuan diplomasi Anda adalah inspirasi & contoh yang sangat berharga bagi saya pribadi.
- Telkomsel : What can I say – these are a bunch of spectacular guys. Terimakasih kepada Pak Sarwoto dan Pak Irfan, untuk dukungan bagi proyek ini dari sisi senior management. Dedikasi mereka terhadap kesuksesan proyek nasional ini adalah inspirasi bagi kita semua. Terimakasih kami haturkan pula kepada kawan-kawan, comrade, kami di tim Telkomsel — Tetra, Faisal, Nugroho, dan banyak lagi. Anda sekalian adalah kawan seperjuangan kami dalam tugas negara ini. Kami tidak mampu menyampaikan rasa terimakasih kami secara memadai untuk semua kerjasama dan bantuan yang telah Anda berikan. Our millions of thanks are yours.
Sebetulnya masih banyak lagi pihak yang membantu dan turut urun rembuk dalam pekerjaan ini. Beberapa kontribusi mereka bahkan jauh lebih signifikan daripada kontribusi saya pribadi.
Namun, mereka meminta, malah memaksa, saya untuk tidak memaparkankan nama-nama & kontribusi mereka. Mereka adalah pahlawan sejati pada tugas, dan amanah nasional ini. Saya amat bahagia mengenal mereka, dan salah satu kebanggaan terbesar saya adalah pengakuan mereka terhadap saya sebagai “kawan” mereka.
Thanks a zillion guys. You know who you are.
Demikian ringkasan catatan dari proyek SMS Pemilu Pilpres 2009 ini. Saya mohonkan maaf jika ada kekurangan atau kesalahan dalam penulisan artikel ini. Silakan sampaikan pesan Anda pada form komentar, maka saya akan koreksi secepatnya. Terimakasih.
Hidup Open Source Indonesia ! 🙂
.
.
.