Arsitektur Model Aplikasi saat ini

Ada beberapa tipe arsitektur model aplikasi yang dapat dijadikan panduan bagi kita dalam membangun aplikasi. Dalam bagian berikut akan dijelaskan mengenai arsitektur yang ada dan juga bisa dilihat sebagai perkembangan model aplikasi.

1. Aplikasi Desktop

Berbicara mengenai suatu aplikasi, ada beberapa komponen yang terlibat di dalamnya yaitu user interface, business services dan data provider. User Interface merupakan suatu tampilan yang digunakan oleh user dalam berinteraksi dengan sistem. Business Services merupakan suatu proses logis bisnis yang telah dibuat sesuai dengan kebutuhan sistem, dan Data Provider digunakan sebagai tempat dimana data akan diambil maupun disimpan.

Dalam aplikasi dektop, user interface, business services maupun data provider terdapat dalam satu komputer. Biasanya arsitektur ini digunakan dalam memenuhi kebutuhan sistem yang kecil.

Sebagai contoh pemilik toko kelontong yang membutuhkan sistem yang mampu mencatat barang masuk dan keluar, total penjualan hari ini, dsb. Pemilik toko ini mungkin hanya membutuhkan satu unit komputer dimana didalamnya telah terdapat suatu aplikasi yang telah dibangun sesuai dengan kebutuhannya. Contoh yang kita lihat memang sederhana, namun bisa kita bayangkan bagaimana sang pemilik toko sangat terbantu dengan adanya sistem ini.

2. Arsitektur aplikasi Client/Server ( 2 Tier )

Aplikasi Client/Server merupakan salah satu model aplikasi yang sering dipakai. Dengan popularitas PC yang meningkat, implementasi dari arsitektur ini juga semakin dikenal.

Client merupakan suatu aplikasi dimana end-user berinteraksi, dan Server merupakan tempat dimana data berada. Pendekatan ini dipakai biasanya untuk menghadapi masalah dimana pengguna dari sistem yang akan dibuat cukup banyak, artinya disini dibutuhkan suatu tempat data yang terpusat, dimana masing-masing pengguna menggunakan data provider yang sama.

Sebagai ilustrasi dari arsitektur client/server ini, telesales menggunakan komputer untuk mencari nomor telepon customer yang ditujunya untuk menawarkan produk. Pengguna komputer tadi tidak melihat adanya server. Dalam contoh tadi, para telesales menggunakan aplikasi client sebagai user interface, mencari nomor telepon customernya dalam database server. Informasi yang dihasilkan kemudian ditampilkan melalui user interface, dan telesales tadi dapat menelpon customernya.

Arsitektur Client/Server juga dikenal dengan istilah two-tier application, user interface ada di tier pertama dan database ada dalam server di tier kedua. Standar dari pendekatan ini juga dikenal dengan istilah fat client, mengingat kebanyakan proses bisnis dilakukan oleh client. Arsitektur Client/Server dibagi lagi lebih detail menjadi dua bagian.

3. Client Centric

Kita sudah membahas mengenai arsitektur client/server, dimana adanya pemisahan antara user interface dan database server. Namun ada satu komponen yang perlu kita perhatikan yaitu business services. Dalam client centric proses validasi ataupun proses yang berhubungan dengan kegiatan bisnis akan dilakukan dalam tier client, dan server hanya digunakan sebagai penyedia dan penyimpanan data.

Gambar Client centric

client-centric

4. Server Centric

Kebalikan dari client centric, dalam server centric proses bisnis yang ada dilakukan oleh server. Sebagai contoh mungkin dalam suatu sistem ada ketentuan dimana jumlah barang dalam stock tidak boleh kurang dari lima unit, jika diterapkan dalam server centric, server selalu melakukan pengecekan terhadap setiap transaksi, apakah transaksi tersebut akan mengurangi stock sampai kurang dari lima unit atau tidak, jika ternyata demikian maka server yang akan melakukan penolakan transaksi.

Gambar Server Client

server-centric

Perbandingan Client Sentric dan Server Centric

Dari kedua penjelasan diatas, masing-masing mempunyai kelebihan dan kekurangannya sendiri. Sebagai contoh jika kita menerapkan client sentric dalam aplikasi client/server kita maka performansi dari database server akan jauh lebih baik dibandingkan dengan server centric. Karena proses bisnis dilakukan sebelum client melakukan transaksi terhadap server, dan fungsi server disini hanya sebagai penyedia dan penyimpanan data.

Sedangkan salah satu contoh keuntungan dari server centric adalah pada saat terjadi perubahan bisnis proses dalam suatu sistem, tahap maintenance yang akan dikerjakan akan jauh lebih cepat jika dibandingkan dengan client centric. Mengambil ilustrasi dalam sistem penjualan barang, jika terjadi perubahan nilai pajak maka kita tinggal merubah nilai pajak yang baru diserver tanpa perlu melakukan proses perbaikan aplikasi client dan proses distribusi aplikasi ke komputer pengguna.

5 Aplikasi berbasiskan web
Kemajuan internet saat ini juga didukung oleh adanya kemajuan dalam pengembangan aplikasi berbasiskan web. Bisa dibayangkan apabila ternyata jaringan global yang dikenal dengan internet ini tidak dapat didukung oleh sistem aplikasi dibelakangnya. Aplikasi e-commerce, e-banking, dan lainnya tidak mungkin berkembang seperti sekarang. Untuk aplikasi berbasiskan web sangat unik, karena baik data provider, business services dan user interface terletak pada server. Client dapat berinteraksi dengan sistem dengan suatu aplikasi bantuan yang dikenal dengan nama browser.
aplikasi-berbasisi-web

Aplikasi berbasis web

6. Arsitektur N-Tier

Sebelum kita lihat mengenai arsitektur N-Tier, kita perlu mengetahui mengenai model 3-tier. Model 3-tier disini memisahkan antara user interface, business interface dan data provider dalam bagian yang berbeda. Jika kita melihat perbandingan anatara client centric dan server centric tadi, pendekatan model 3-tier ini merupakan jawaban bagi pertanyaan yang mungkin muncul.

Dalam contoh sistem penjualan tadi, kita tidak perlu khawatir dengan performansi dari database server karena fungsinya memang sebagai penyedia dan penyimpan data. Dan dari sisi client kita tidak perlu khawatir dengan masalah maintenance dan distribusi aplikasi, karena jika terjadi perubahan business services, yang perlu kita rubah adalah dalam tier-business services saja. Dari gambar 1.4 kita dapat lihat bagaimana komposisi dari arsitektur dengan model 3-tier.

model-aplikasi-3-tier

Model Aplikasi 3 Tier

Istilah Model N-tier sendiri muncul disebabkan karena dimungkinkannya suatu aristektur aplikasi terdiri dari banyak tier didalamnya. Untuk lebih jelasnya kita lihat ilustrasi dalam Gambar Model Aplikasi N-Tier

model-aplikasi-n-tier

Gambar Aplikasi N-TierDalam gambar aplikasi N-tier digambarkan bagaimana suatu pelanggan internet ingin memesan buku secara online pada situs amazon.com. Pelanggan dapat melihat katalog buku amazon.com yang sebenarnya ada pada database amazon.com. Setelah pelanggan ingin memesan salah satu buku, maka pelanggan tersebut perlu memasukkan informasi mengenai dirinya dan yang terlebih penting adalah data mengenai kartu kreditnya. Tentunya data kartu kredit pelanggan tersebut harus divalidasi terlebih dahulu informasinya, seperti PIN, masa berlaku kartu, limit kredit, dsb. Setelah itu, barulah transaksi pemesanan buku itu selesai. Dari ilustrasi tadi kita dapat melihat berapa banyak tier yang terlibat dalam suatu sistem.

4 Tanggapan

  1. Wow penjelasannnya cool man
    thx.

    cakmamed

  2. Saat ini telah berkembang arsitektur service oriented , pengembangan dari arsitektur 3-tier

    Bisa di jelaskan Pak/bung charless

    salam kenal,

    cakmamed

  3. jiah.. thanks.. membantu bgt niy, da tugas

  4. wow keren makasih atas informasinya ya

Tinggalkan komentar

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses.