Yani’s Weblog

it’s all about software engineering…

Building a component-based software…

Component-based software dibangun dengan cara melakukan assembly komponen-komponen pembentuknya. Benar, pendekatan yang diambil memang mengadopsi assembly komponen-komponen hardware sehingga jadi produk hardware yang utuh. Akan tetapi, di dunia software ternyata tidak sesederhana itu. Seringkali, untuk memasang satu komponen dengan komponen lainnya, dibutuhkan kode tambahan, yang disebut sebagai “glue code“. Membuat glue code sendiri bisa menyerap banyak effort (waktu dan biaya). Ya, komponen software ternyata lebih sulit untuk di-assemble dibandingkan dengan Lego blocks…

Constructing software systems from components is more like having a bathtub full of Tinkertoy, Lego,
Erector, Lincoln Log, Block City, and six other incompatible kits, picking out parts that fit specific functions and expecting them to fit together…
(Mary Shaw, Architectural Issues in Software Reuse: It’s Not Just the Functionality, It’s the Packaging)

Nah, CBSE berusaha mendefinisikan berbagai teknik agar pembangunan perangkat lunak berbasis komponen dapat dilakukan dengan se-ideal mungkin…

October 13, 2008 Posted by yaniwid | CBSE, introduction | | No Comments Yet

WebApp: Architectural Pattern

Ada tiga architectural pattern yang bisa dipilih untuk membangun aplikasi berbasis web. Ketiga pola tersebut adalah sebagai berikut:

  1. thin client; pada arsitektur jenis ini, seluruh proses (business logic) dilakukan di server; komputer client hanya meminta layanan ke server dan menampilkan hasilnya jika respon server sudah diterima…
  2. thick client; pada arsitektur jenis ini, sebagian proses ada yang dilakukan di komputer client; sebagian respon server terhadap permintaan client diberikan dalam bentuk modul yang harus dieksekusi di komputer client
  3. web delivery; pada arsitektur jenis ini, sebagian proses ada yang dilakukan di komputer client, dan dalam eksekusinya, proses tersebut mungkin berkomunikasi dengan objek di lokasi yang lain (remote objects); arsitektur ini mendukung komunikasi antar objek yang terdistribusi…

Pilihan pola arsitektur ini selanjutnya akan mempengaruhi setiap tahap pembangunan software: requirement gathering, analysis, design…

October 13, 2008 Posted by yaniwid | webE | | 2 Comments