Home > Umum > Malam 29 April 2012

Malam 29 April 2012

Minggu, 29 April 2012 jam 11:43. Sudah 3 jam saya mencoba untuk menuangkan pehaman saya setelah mereview jurnal yang berjudul “Tesing Component Based Software: What it has to do with Design and Component Selection”. Terlihat sekali kalau saya masih belum kembali ke kondisi normal. Putaran otak saya masih berjalan lambat, terutama dalam hal tulis menulis seperti ini. Kalau dibilang paham atau tidak, saya bisa klaim bahwa saya memahami >60% isi jurnal tersebut. Tapi sangat sulit bagi saya menuangkannya ke dalam bentuk tulisan. Berikut hasil yang saya dapat.

Dalam pengembangan software berbasis komponen, pemilihan komponen merupakan kegiatan yang penting. Komponen yang akan digunakan kembali mempunyai kemungkinan gagal memenuhi kebutuhan fungsional dan non fungsional. Jika komponen tersebut gagal, harus dicarikan penggantinya. Artinya rancangan software dapat berubah. Secara tidak langsung dapat dikatakan perancangan software juga tergantung pada pemilihan komponen yang digunakan. Terdapat hubungan antara rancangan software berbasis komponen, pemilihan komponen dan testing software berbasis komponen.

Penggunaan kembali komponen mempunya keuntungan di sisi biaya, tentunya menjadi lebih murah. Dalam CBSE (Computer Based Software Engineering) ada dua macam pengembang: pengembang komponen dan pengembang sistem. Pengembang komponen bertugas untuk membuat komponen berdasarkan kebutuhan pasar sedangkan pengembang sistem bertugas membuat sistem dari komponen-komponen yang sudah tersedia. Pengembang sistem mencari komponen dari repository yang sudah ada, jika tidak dapat maka akan memcari komponen dari luar.

Model CISD menyatakan pengembangan software berbasis komponen harus memiliki tiga fase: identifikasi, evaluasi dan integrasi. Untuk fase identifikasi, komponen COTS diidentifikasi berdasarkan requirement specification, untuk evaluasi, komponen COTS dilihat kecocokannya, dan dalam fase integrasi proses development diselesaikan dan komponen-komponen disatukan . Suatu  komponen dapat dipilih jika dia dapat dimasukan ke dalam arsitektur software yang akan dibuat. Supaya dapat masuk harus dilakukan verifikasi dan validasi terhadap komponen tersebut. Hal ini harus dilakukan sedini mungkin untuk menjamin stabilitas rancangan yang sudah ada dan pengaruh terhadap komponen yang lain haru dapat diketahui sejak awal.

Berikut ini merupakan fitur penting pendekatan berorientasi komponen dalam pengembangan software berbasis komponen:

  1. Pengembangan berulang. Meliputi aktifitas: rancangan kecil, pemilihan komponen dan pengujian fungsionalitas. Selalu ada resiko kegagalan untuk setiap komponen yang dipilih. Oleh karena itu pengujian komponen untuk melihat apakah sesuai atau tidak harus dilakukan sedini mungkin.
  2. Perancangan modular.
  3. Fungsi utama diimplementasikan terlebih dahulu.
  4. Arsitektur dan rancangan harus berbasis komponen yang sudah ada.
  5. Pemilihan komponen bukan hanya berdasarkan fungsi, tapi juga kombinasi dengan komponen lainnya.
  6. Komponen yang terpilih harus dapat dipakai kembali.
  7. Pengembang harus mampu bernegoisasi atas perubahan requirement berdasarkan komponen yang ada.

Rancangan yang dikembangkan melibatkan analisis use case. Use case dan arsitektur software menjadi aset utama dalam perancangan dan pengetesan sistem CBS. Dengan melihat use case, pengembang dapat mempertimbangkan kebutuhan fungsional dan non fungsional, serta komponen yang tersedia. Tahap-tahapnya:

  1. Definisikan kebutuhan software dilihat dari use case.
  2. Definisikan high level modul dengan melihat interface sistem dengan lingkungan.
  3. Kategorikan use case dengan melihat kepentingannya.
  4. Dari arsitektur tingkat tinggi yang sudah dihasilkan, turunkan ke tingkat yang lebih rendah sampai terbentuk modul-modul yang sesuai dengan use case.
  5. Revisi arsitektur yang sudah jadi berdasarkan use case terpenting.
  6. Dalam setiap tahap penuruan tingkat arsitektur, dilihat komponen mana saja yang dapat digunakan kembali pada case yang lain.
  7. Jika komponen ditemukan, berbagai alternatif arsitektur didokumentasikan.
  8. Alternatif-alternatif itu diuji apakah memenuhi kebutuhan. Jika tidak memenuhi maka dibuang.
  9. Jika terjadi kegagalan dalam fase sebelumnya, prosedur diulang dengan memakai alternative yang lain. Jika komponennya yang gagal maka komponen tersebut akah dihilangkan.
  10. Jika perlu dapat mengubah kebutuhan software, terlebih dahulu pengembang berkomunikasi dengan client.
  11. Perencanaan pengembangan komponen, integrasi komponen dan pengetesan.
  12. Pembuatan komponen yang diperlukan.
  13. Seluruh proses diulang untuk semua use case.

Perbandingan rancangan yang diajukan dengan beberapa model yang sudah ada:

CISD

Ada 3 fase yang terlibat:

Identifikasi produk. Tiga aktifitas utama: analisa kebutuhan dan klasifikasi, identifikasi produk dan klasifikasi, membuat prioritas produk. Masalah yang ditimbulkan adalah komponen COTS untuk sistem besar tidak dapat ditentukan hanya dari kebutuhan saja, melainkan dari rancangan.

Evaluasi produk. Dalam tahap ini komponen dievaluasi fungsionalitasnya, arsitektur dan performance.

Integrasi produk. Dalam fase ini komponen-komponen digabungkan.

Model CISD sudah mencakup aktifitas utama dalam pengembangan software berbasis komponen. Tetapi proses perancangan, pemilihan komponen dan pengujian tidak dikoordinasikan . Resiko kegagalan suatu komponen tidak diantisipasi.

COSE

Model ini mempertimbangkan dekomposisi structural, dimulai dari spesifikasi sistem. Kemudian sistem dipecah, pendefinisian komponen, pencarian komponen, modifikas komponen, dan pembuatan. Masalah dalam model ini adalah tidak memperhatikan perubahan rancangan akibat kegagalan komponen yang dipilih.

 

Shyam S. Pandeya, Anil K. Tripathi, “Tesing Component Based Software: What it has to do with Design and Component Selection

Categories: Umum
  1. No comments yet.
  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: