Component Software, atau perangkat lunak berbasis komponen, adalah sebuah konsep dimana perangkat lunak dapat dibangun dengan mengkomposisikan komponen-komponen yang sudah tersedia. Komponen-komponen tersebut dapat dibangun oleh pihak ketiga, dimana pihak yang ingin menggunakan komponen tersebut hanya perlu mengetahui spesifikasinya, tanpa perlu mengetahui seperti apa implementasinya. Dalam hal ini, proses membangun sebuah perangkat lunak akan melibatkan pembuatan abstraksi dari perangkat lunak terlebih dahulu, sebelum kemudian dibuat implementasinya. Tingkat kesulitan untuk mengubah sebuah abstraksi menjadi implementasi yang konkrit masih perlu dipertanyakan. Paper ini akan mencoba memperkirakan tingkat kesulitan tersebut dengan sebuah studi kasus, yaitu perbandingan sebuah abstraksi sistem electronic voting (E-Voting) dalam bahasa UNITY dengan sebuah implementasi dari sistem tersebut dalam JavaBeans.