Rabu, 01 Januari 2014

Kapal Tenggelam

Sebuah kapal penumpang menabrak gunung es di tengah samudra. Seluruh penumpang di evakuasi ke kapal penyelamat termasuk anda dengan tanpa memperhatikan faktor keselamatan di kapal penyelamat. Kapal penyelamat seharusnya diisi 10 orang namun dijejali dengan 22 orang diatasnya dengan daftar manifes yang ada di dalam kapal penyelamat sebagai berikut:
1.       Ibu Emma yang sedang hamil 7 bulan
2.       Kiyai Hj Syarifuddin seorang kiyai terkenal yang sud
ah 3 kali naik haji dan berumur 63 tahun
3.       Seorang pengacara bernama DR. Oliver Sitompul SH. MH.
4.       Ibu Azizah seorang janda yang mempunya 3 orang anak di rumahnya
5.       Mayor Jenderal (purn) Syukur merupakan veteran Indonesia berumur 74 tahun yang sudah tua renta
6.       Doktor Bellamy seorang WNI berusia 26 tahun lulusan S3 di Jerman
7.       Bapa  Manuel Wattimena seorang Uskup berumur 54 tahun yang berbadan bugar dan pandai berenang
8.        Ferdy dan Mita pasangan yang baru menikah dan sedang bulan madu
9.       Ade Syahrul adalah koki kapal yang kakinya patah mantan peraih medali perunggu Sea Games cabang renang 100m
10.    Tiga orang anak kembar berumur 6 tahun yang ditinggal mati ayah dan ibunya
11.   Bpk. Keil Handoko SE. MBA. Merupakan CEO perusahaan swasta terkemuka yang hampur pensiun
12.   Kriswan adalah seorang intel Indonesia yang sedang mengintai Kennedy
13.   Agus Dwi Hidayat sahabat anda sejak kecil anggota detasemen Jala Mangkara TNI-AL yang sedang mengantarkan anda.
14.   John F. Kennedy Presiden negara adidaya Amerika Serikat
15.    Leutnant 1st Class Miller merupakan pengawal pribadi Presiden Kennedy lulusan terbaik Akademi Militer Amerika Serikat
16.    Fania Larisa merupakan model dan Miss Indonesia yang masih muda dan cantik
17.   Taufik Hidayat atlet kebanggaan Indonesia
18.   Adam Levin aktor Holywood terkenal yang ganteng dan kaya
19.   Diri kita sendiri
Kalau anda disuruh menentukan 12 orang yang akan masuk ke laut, siapa saja yang menurut anda layak masuk ke laut dengan alasan yang kuat.

Senin, 23 Desember 2013

Kisah Itik dan Rajawali



Pada suatu hari ada seekor itik yang bermimpi menjadi seekor Rajawali. Ia sangat terinspirasi oleh kegagahan dari sang rajawali tersebut. Kemudian ia pun mulai belajar caranya terbang di pinggir kolam, sekali, dua kali, tiga kali, dan seterusnya dengan gigih ia mencoba, namun ia belum berhasil.

Pada suatu saat ia pun bersumpah bahwa apabila dalam seratus kali mencoba ia gagal, maka itu memang bukan takdirnya dan ia akan menyerah. Pada percobaan yang ke seratus ia pun mendapatkan jawabannya, bahwa ia adalah itik tidak mungkin menjadi seekor rajawali.

Apa yang dapat kita dapat dari  cerita ini adalah kita harus realistis dalam semua keadaan, namun membatasi diri dalam suatu keadaan adalah hal yang dapat menjerumuskan kita. Dapatkah dibayangkan bahwa seekor anak rajawali yang baru belajar terbang, namun gagal dan terjatuh dari pohon  merasa putus asa dan merasa memang bukan takdirnya untuk terbang lalu membatasi diri dan menyerah? Dapatkah seekor anak rajawali menjadi seekor rajawali yang gagah jika seperti itu. Oleh karena itu kita tidak boleh menyerah dalam segala kondisi dan selalu mengembangkan seluruh potensi yang ada dalam diri kita.

Minggu, 10 November 2013

HAK ASASI MANUSIA


Hak Asasi Manusia adalah hak yang telah dipunyai manusia sejak ia dalam kandungan. HAM berlaku secara universal. HAM adalah asasi yang diberikan oleh Tuhan Yang Maha Esa kepada seluruh manusia dan pada hakikatnya HAM adalah hak yang tidak boleh dilanggar oleh setiap manusia karena merupakan hak yang tertinggi karena deberikan oleh Tuhan, HAM adalah hak yang melekat pada diri setiap manusia sejak awal dilahirkan yang berlaku seumur hidup dan tidak dapat diganggu gugat siapa pun. Dasar-dasar HAM tercantum dalam Undang-Undang Dasar Negara Republik Indonesia, seperti pada pasal 27 ayat 1, pasal 28, pasal 29 ayat 2,  pasal 30 ayat 1, dan pasal 31 ayat 1, serta sila ke-2 dan sila ke-5 Pancasila.

HAM yang dirujuk sekarang adalah seperangkat hak yang dikembangkan oleh PBB sejak berakhirnya perang dunia II dan untuk menghindari terulangnya kejadian serupa di masa depan. Selama menyangkut persoalan HAM setiap negara, tanpa kecuali, pada tataran tertentu memiliki tanggung jawab, utamanya terkait pemenuhan HAM pribadi-pribadi yang ada di dalam jurisdiksinya, termasuk orang asing sekalipun. Oleh karenanya, kurang tepat untuk mengidentikan atau menyamakan antara HAM dengan hak-hak yang dimiliki warga negara. HAM dimiliki oleh seluruh umat manusia tanpa kecuali.

Karena sifat dan watak HAM itu sendiri yang merupakan mekanisme pertahanan dan perlindungan individu terhadap kekuasaan negara yang sangat rentan untuk disalahgunakan, sebagaimana telah sering dibuktikan sejarah umat manusia sendiri. Contoh pelanggaran HAM:

1. Penindasan dan merampas hak rakyat dengan sewenang-wenang.

2. Menghambat dan membatasi kebebasan pers, pendapat dan berkumpul bagi hak rakyat dan oposisi.

3. Hukum (aturan dan/atau UU) diperlakukan tidak adil dan tidak manusiawi.

4. Manipulatif dan membuat aturan pemilu sesuai dengan keinginan penguasa dan partai tiran/otoriter tanpa diikut/dihadir rakyat dan oposisi.

5. Penegak hukum/petugas keamanan melakukan kekerasan terhadap rakyat.



Organisasi hak asasi manusia

· Better World Links on Human Rights Organizations

· Amnesty International

· Justice For The World

· Global Rights: Partners for Justice

· International Helsinki Federation for Human Rights

· Human Rights Watch

· UN High Commissioner for Human Rights


Hak Asasi Manusia di Indonesia

Hak Asasi Manusia di Indonesia bersumber dan bermuara pada Pancasila. Yang artinya Hak Asasi Manusia mendapat jaminan kuat dari falsafah bangsa, yakni Pancasila. Bermuara pada Pancasila dimaksudkan bahwa pelaksanaan hak asasi manusia tersebut harus memperhatikan garis-garis yang telah ditentukan dalam ketentuan falsafah Pancasila. Bagi bangsa Indonesia, melaksanakan hak asasi manusia bukan berarti melaksanakan dengan sebebas-bebasnya, melainkan harus memperhatikan ketentuan-ketentuan yang terkandung dalam pandangan hidup bangsa Indonesia, yaitu Pancasila dan dengan bertanggung jawab. Hal ini disebabkan pada dasarnya memang tidak ada hak yang dapat dilaksanakan secara multak tanpa memperhatikan hak orang lain.

Setiap hak akan dibatasi oleh hak orang lain. Jika dalam melaksanakan hak, kita tidak memperhatikan hak orang lain,maka yang terjadi adalah benturan hak atau kepentingan dalam hidup bermasyarakat, berbangsa, dan bernegara

Berbagai instrumen hak asasi manusia yang dimiliki Negara Republik Indonesia,yakni:

· Undang – Undang Dasar 1945

· Pancasila

· Tap MPR No.XVII/MPR/1998

· UU No. 39 Tahun 1999

Secara konkret untuk pertama kali Hak Asasi Manusia dituangkan dalam Piagam Hak Asasi Manusia sebagai lampiran Ketetapan Permusyawarahan Rakyat Republik Indonesia Nomor XVII/MPR/1998.

Hak Asasi Manusia oleh PBB

Setelah perang dunia kedua, mulai tahun 1946, disusunlah rancangan piagam hak-hak asasi manusia oleh organisasi kerja sama untuk sosial ekonomi PBB yang terdiri dari 18 anggota. PBB membentuk komisi hak asasi manusia (commission of human right). Sidangnya dimulai pada bulan januari 1947 di bawah pimpinan Ny. Eleanor Rossevelt. Baru 2 tahun kemudian, tanggal 10 Desember 1948 Sidang Umum PBB yang diselenggarakan di Istana Chaillot, Paris menerima baik hasil kerja panitia tersebut. Karya itu berupa UNIVERSAL DECLARATION OF HUMAN RIGHTS atau Pernyataan Sedunia tentang Hak – Hak Asasi Manusia, yang terdiri dari 30 pasal. Dari 58 Negara yang terwakil dalam sidang umum tersebut, 48 negara menyatakan persetujuannya, 8 negara abstain, dan 2 negara lainnya absen. Oleh karena itu, setiap tanggal 10 Desember diperingati sebagai hari Hak Asasi Manusia.

Universal Declaration of Human Rights antara lain mencantumkan, Bahwa setiap orang mempunyai Hak :

· Hidup

· Kemerdekaan dan keamanan

· Memperoleh persamaan hak dan kewajiban di mata hukum

· Mendapatkan suatu kebangsaan

· Mendapatkan hak milik atas benda

· Bebas mengutarakan pikiran dan perasaan

· Bebas memeluk agama

· Mendapat jaminan sosial

· Mendapatkan pekerjaan

· Mendapatkan pendidikan

Majelis umum memproklamirkan Pernyataan Sedunia tentang Hak Asasi Manusia itu sebagai tolak ukur umum hasil usaha sebagai rakyat dan bangsa dan menyerukan semua anggota dan semua bangsa agar memajukan dan menjamin pengakuan dan pematuhan hak-hak dan kebebasan- kebebasan yang termasuk dalam pernyataan tersebut. Meskipun bukan merupakan perjanjian, namun semua anggota PBB secara moral berkewajiban menerapkan.

Studi Kasus

Studi kasus pelanggaran HAM dilakukan oleh Tentara Kekaisaran Jepang pada masa Perang Dunia II. Tentara Jepang melakukan penindasan dan eksploitasi terhadap sumber daya alam dan tenaga rakyat yang hidup di wilayah jajahannya dengan melakukan romusha dan perampasan lahan dan ternak. Pada masa penjajahannya, Jepang mengeksploitasi rakyat di wilayah jajahannya untuk dijadikan romusha atau kerja paksa membangun keperluan militer Jepang dan bekerja di pertambangan tanpa upah dan penghidupan yang layak sehingga banyak romusha yang tewas. Para pemuda direkrut jepang untuk menjadi pasukan brani mati untuk membela Jepang dalam perang namun dengan persenjataan dan logistik yang minim, dan perempuan dijadikan jugun ianfu yaitu wanita yang dijadikan sebagai wanita pemuas nafsu tentara Jepang. Menghabisi siapapun yang hendak menentang kekuasaannya dengan Kejam, yaitu dengan disiksa terlebih dahulu.

Dalam jalannya peperangan di Jepang kerap kali menggunakan senjata kimia dan biologis yang sangat dilarang. Contohnya pada saat menyerbu Manchuria (sekarang RRC) jepang menggunakan senjata kimia dan biologis untuk membersihkan kota dari pasukan Cina, namun akibat dari penggunaan senjata kimia dan biologis ribuan rakyat sipil tewas tercekik udra beracun. Tidak berhenti disitu Jepang juga melakukan percobaan senjata kimia pada manusia hidup untuk dilihat efek dari senjata tersebut dan melakukan percobaan pembedahan hidup-hidup.

Pelanggaran HAM juga dilakukan Jepang kepada tawanan perangnya yaitu dengan melakukan penyiksaan dan tidak memberi penghidupan yang layak bagi para tawanannya, bahkan sempat terjadi pada saat tentara Jepang benar-benar terkepung dan tidak ada makanan Jepang melakukan tindakan kanibalisme, dengan memakan tawanan perangnya.

Senin, 28 Oktober 2013

Tinggalkan Ayah Tinggalkan Ibu


tinggalkan ayah tinggalkan ibu
izinkan kami pergi berjuang
dibawah kibaran sang merah putih
majulah ayo maju menyerbu
serbu..

tidak kembali pulang
sebelum kita yang menang
walau mayat terkapar di medan juang
demi bangsa kami kan berjuang

maju ayo maju
ayo terus maju
bersatulah kita
berlatih dan berjuanglah
demi negara Indonesia
wahai semua ksatria sapta marga
dimana kau berada
terus kan perjuangan para pahlawan
demi bangsa dan negara

Minggu, 27 Oktober 2013


ARSITEKTUR CLIENT SERVER


ARSITEKTUR CLIENT SERVER

Arsitektur Client Server - Istilah arsitektur mengacu pada desain sebuah aplikasi, atau dimana komponen yang membentuk suatu sistem ditempatkan dan bagaimana mereka berkomunikasi. Arsitektur terdistribusi – sebuah istilah yang relatif baru untuk menjelaskan arsitektur aplikasi – berarti bahwa pemrosesan dari suatu aplikasi terjadi pada lebih dari satu mesin. Kita tahu bahwa perkembangan teknologi kini telah banyak membuat perubahan pada cara berpikir kita (manusia). Dengan laju pertumbuhan teknologi yang makin cepat, kebutuhan akan informasi dari hari ke hari meningkat sehingga menuntu kelancaran, dan kecepatan proses distribusi informasi.

Arsitektur jaringan Client Server merupakan model konektivitas pada jaringan yang membedakan fungsi komputer sebagai Client dan Server. Arsitektur ini menempatkan sebuah komputer sebagai Server. Server ini yang bertugas memberikan pelayanan kepada terminal-terminal lainnya tang terhubung dalam system jaringan atau yang kita sebut Clientnya. Server juga dapat bertugas untuk memberikan layanan berbagi pakai berkas (file server), printer (printer server), jalur komunikasi (server komunikasi).

Pada model arsitektur ini, Client tidak dapat berfungsi sebagai Server, tetapi Server dapat berfungsi menjadi Client (server non-dedicated). Prinsip kerja pada arsitektur ini sangat sederhana, dimana Server akan menunggu permintaan dari Client, memproses dan memberikan hasil kepada Client, sedangkan Client akan mengirimkan permintaan ke Server, menunggu proses dan melihat visualisasi hasil prosesnya.

Arsitektur Client Server - Sistem Client Server ini tidak hanya diperuntukkan bagi pembangunan jaringan komputer skala luas. Sistem ini menggunakan protokol utama Transmision Control Protocol/Internet Protocol (TCP/IP), sedangkam sistem operasi yang digunakan antara lain Unix, Linux dan Windows NT.

Lingkungan Database Client/Server di Internet  :
 Menggunakan LAN untuk mendukung jaringan PC
 Masing-masing PC memiliki penyimpan tersendiri
 Berbagi hardware atau software
Model-model Client Server
Model-model Client Server Dibawah ini dijelaskan 3 jenis model-model Client server, diantaranya :

1. Client/Server (two tier)
Two Tier Client Server - Dalam model client/server, pemrosesan pada sebuah aplikasi terjadi pada client dan server. Client/server adalah tipikal sebuah aplikasi two-tier dengan banyak client dan sebuah server yang dihubungkan melalui sebuah jaringan.

two+tire

Aplikasi ditempatkan pada komputer client dan mesin database dijalankan pada server jarak-jauh. Aplikasi client mengeluarkan permintaan ke database yang mengirimkan kembali data ke client-nya.
Model Two-tier terdiri dari tiga komponen yang disusun menjadi dua lapisan : client (yang meminta serice) dan server (yang menyediakan service). Tiga komponen tersebut yaitu :

1. User Interface(Client). Adalah antar muka program aplikasi yang berhadapan dan digunakan langsung oleh user.
            2. Manajemen Proses(Jaringan).
3. Database(Server). Model ini memisahkan peranan user interface dan database dengan jelas, sehingga terbentuk dua lapisan.

Dalam model client/server, pemrosesan pada sebuah aplikasi terjadi pada client dan server. Client/server adalah tipikal sebuah aplikasi two-tier dengan banyak client dan sebuah server yang dihubungkan melalui sebuah jaringan, seperti terlihat dalam gambar 1.2. Aplikasi ditempatkan pada komputer client dan mesin database dijalankan pada server jarak-jauh. Aplikasi client mengeluarkan permintaan ke database yang mengirimkan kembali data ke client-nya.

Dalam client/server, client-client yang cerdas bertanggung jawab untuk bagian dari aplikasi yang berinteraksi dengan user, termasuk logika bisnis dan komunikasi dengan server database.
Aplikasi-aplikasi berbasis client/server memiliki kekurangan pada skalabilitas. Skalabilitas adalah seberapa besar aplikasi bisa menangani suatu kebutuhan yang meningkat – misalnya, 50 user tambahan yang mengakses aplikasi tersebut. Walaupun model client/server lebih terukur daripada model berbasis host, masih banyak pemrosesan yang terjadi pada server. Dalam model client/server semakin banyak client yang menggunakan suatu aplikasi, semakin banyak beban pada server.

Koneksi database harus dijaga untuk masing-masing client. Koneksi menghabiskan sumber daya server yang berharga dan masing-masing client tambahan diterjemahkan ke dalam satu atau beberapa koneksi. Logika kode tidak bisa didaur ulang karena kode aplikasi ada dalam sebuah pelaksanaan executable monolitik pada client. Ini juga menjadikan modifikasi pada kode sumber sulit. Penyusunan ulang perubahan itu ke semua komputer client juga membuat sakit kepala.

Keamanan dan transaksi juga harus dikodekan sebagai pengganti penanganan oleh COM+/MTS. Bukan berarti model client/server bukanlah merupakan model yang layak bagi aplikasi-aplikasi. Banyak aplikasi yang lebih kecil dengan jumlah user terbatas bekerja sempurna dengan model ini. Kemudahan pengembangan aplikasi client/server turut menjadikannya sebuah solusi menarik bagi perusahaan.
Pengembangan umumnya jauh lebih cepat dengan tipe sistem ini. Siklus pengembangan yang lebih cepat ini tidak hanya menjadikan aplikasi meningkat dan berjalan dengan cepat namun juga lebih hemat biaya.


Kelebihan dari model client/server :

 Menangani Database Server secara khusus
Relatif lebih sederhana untuk di develop dan diimplementasikan.
Lebih cocok diterapkan untuk bisnis kecil.
Server database berisi mesin database, termasuk tabel, prosedur tersimpan, dan trigger (yang juga berisi aturan bisnis). Dalam system client/server, sebagian besar logika bisnis biasanya diterapkan dalam database.
Server database manangani :
Manajemen data
Keamanan
Query, trigger, prosedur tersimpan
Penangan kesalahan

Arsitektur client/server merupakan sebuah langkah maju karena mengurangi beban pemrosesan dari komputer sentral ke komputer client. Ini berarti semakin banyak user bertambah pada aplikasi client/server, kinerja server file tidak akan menurun dengan cepat. Dengan client/server user dair berbagai lokasi dapat mengakses data yang sama dengan sedikit beban pada sebuah mesin tunggal. Namun masih terdapat kelemahan pada model ini. Selain menjalankan tugas-tugas tertentu,

Kekurangan dari model client/server :

 Kurangnya skalabilitas
Koneksi database dijaga
Tidak ada keterbaharuan kode
Tidak ada tingkat menengah untuk menangani keamanan dan transaksi skala kecil.
Susah di amankan.
 Lebih mahal.
2.       Three-Tier / Multi-Tier
Three Tier Client Server - Model three-tier atau multi-tier dikembangkan untuk menjawab keterbatasan pada arsitektur client/server. Dalam model ini, pemrosesan disebarkan di dalam tiga lapisan (atau lebih jika diterapkan arsitektur multitier). Lapisan ketiga dalam arsitektur ini masing-masing menjumlahkan fungsionalitas khusus. Yaitu :
Layanan presentasi (tingkat client)
Layanan bisnis (tingkat menengah)
Layanan data (tingkat sumber data)

three+tire
     

Layanan presentasi atau logika antarmuka pengguna ditempatkan pada mesin client. Logika bisnis dikeluarkan dari kode client dan ditempatkan dalam tingkat menengah. Lapisan layanan data berisi server database. Setiap tingkatan dalam model three-tier berada pada komputer tersendiri.
Konsep model three-tier adalah model yang membagi fungsionalitas ke dalam lapisan-lapisan, aplikasiaplikasi mendapatkan skalabilitas, keterbaharuan, dan keamanan.

Arsitektur Three Tier merupakan inovasi dari arsitektur Client Server. Pada arsitektur Three Tier ini terdapat Application Server yang berdiri di antara Client dan Database Server. Contoh dari Application server adalah IIS, WebSphere, dan sebagainya. Application Server umumnya berupa business process layer, dimana bisa didevelop menggunakan PHP, ASP.Net, maupun Java. Sehingga kita menempatkan beberapa business logic kita pada tier tersebut. Arsitektur Three Tier ini banyak sekali diimplementasikan dengan menggunakan Web Application. Karena dengan menggunakan Web Application, Client Side (Komputer Client) hanya akan melakukan instalasi Web Browser.

Dan saat komputer client melakukan inputan data, maka data tersebut dikirimkan ke Application Server dan diolah berdasarkan business process-nya. Selanjutnya Application Server akan melakukan komunikasi dengan database server. Biasanya, implementasi arsitektur Three Tier terkendala dengan network bandwidth.
Karena aplikasinya berbasiskan web, maka Application Server selalu mengirimkan Web Application-nya ke komputer Client. Jika kita memiliki banyak sekali client, maka bandwidth yang harus disiapkan akan cukup besar, Sedangkan network bandwidth biasanya memiliki limitasi. Oleh karena itu biasanya, untuk mengatasi masalah ini, Application Server ditempatkan pada sisi client dan hanya mengirimkan data ke dalam database server. Konsep model three-tier adalah model yang membagi fungsionalitas ke dalam lapisan-lapisan, aplikasiaplikasi mendapatkan skalabilitas, keterbaharuan, dan keamanan.

Kelebihan arsitektur Three Tier :
Segala sesuatu mengenai database terinstalasikan pada sisi server, begitu pula dengan pengkonfigurasiannya. Hal ini membuat harga yang harus dibayar lebih kecil.
Apabila terjadi kesalahan pada salah satu lapisan tidak akan menyebabkan lapisan lain ikut salah.
Perubahan pada salah satu lapisan tidak perlu menginstalasi ulang pada lapisan yang lainnya dalam hal ini sisi server ataupun sisi client.
Keamanan dibelakang firewall.Transfer informasi antara web server dan server database optimal.
Komunikasi antara system-sistem tidak harus didasarkan pada standart internet, tetapi dapat menggunakan protocol komunikasi yang lebvih cepat dan berada pada tingkat yang lebih rendah.
Penggunaan middleware mendukung efisiensi query database dalam SQL di pakai untuk menangani pengambilan informasi dari database.

Beberapa Keuntungan Arsitektur Three-Tier :
Keluwesan teknologi.
Mudah untuk mengubah DBMS engine.
Kemungkinkan pula middle tier ke platform yang berbeda
Biaya jangka panjang yang rendah.
Perubahan-perubahan cukup dilakukan pada middle tier daripada pada aplikasi keseluruhan.
Keunggulan kompetitif.
Kemampuan untuk bereaksi terhadap perubahan bisnis dengan cepat, dengan cara mengubah modul kode daripada mengubah keseluruhan aplikasi
Kekurangan arsitekture Three Tier :
Lebih susah untuk merancang
Lebih susah untuk mengatur
Lebih mahal

3.      Aplikasi N-tier
Aplikasi N-Tier - Stored procedure ternyata tidak mencukupi untuk sistem dimana database disimpan pada lebih dari satu server, karena bisa jadi terdapat client yang tidak dapat mengakses procedure tersebut. Mungkin Anda bertanya, apa perlunya menyimpan database lebih dari satu server? Tentu saja Anda juga menginginkan perusahaan yang menggunakan aplikasi Anda dapat berkembang, bukan? Penggunaan lebih dari satu database sangat memungkinkan saat sebuah perusahaan telah memiliki divisi yang cukup besar dimana harus memiliki database tersendiri. Dalam kasus penggunaan lebih dari satu server database, Anda perlu mengimplementasikan strategi development yang berbeda, pendekatan yang baik adalah dengan menggunakan model n-tier. Huruf “n” pada n-tier menunjukkan variabel numerik yang dapat berisi angka sebanyak apapun, misalnya 3-tier, 4-tier dan seterusnya. Karena itu sebuah aplikasi n-tier memiliki 3 atau lebih tingkatan logical, umumnya aplikasi n-tier saat ini menggunakan 3-tier.

Untuk menggambarkannya, Anda dapat membayangkan skema disain aplikasi two-tier yang mengimplementasikan business logic pada stored procedure seperti yang telah diterangkan diatas, kemudian melakukan improvisasi disain dengan menambahkan sebuah tingkatan (tier) sebagai middle tier sebagai business object, arsitektur inilah yang dikenal dengan 3-tier. Perbedaan nyata dengan 2-tier adalah, business object pada 3-tier terpisah dari aplikasi client dan elemen database. Sehingga dapat digambarkan bahwa sistem 3-tier secara umum terbentuk dari tingkatan client, business dan database.

Untuk membayangkan penerapan 3-tier dalam kehidupan sehari-hari yang mungkin paling sering Anda temui adalah penerapan Internet ataupun Intranet.
Pada aplikasi Internet/Intranet, terdapat client yang menjalankan browser dan meminta informasi dari middle-tier yang berupa HTTP Server. Middle-tier akan meminta data pada server database, kemudian mengirimkannya kembali kepada HTTP Server. HTTP Server akan mengirimkan kepada browser dalam bentuk page/halaman web.

Sebuah sistem 3-tier menyediakan support multi-user yang stabil, bahkan saat pada client menjalankan aplikasi yang berbeda, juga dapat mendayagunakan beberapa database yang digunakan secara bersamaan. Dalam pembahasan berikut ini, akan dijelaskan contoh kasus penerapan 3-tier. Bayangkan sebuah sistem 3-tier, yang terdiri dari client, business dan database.

Sistem tersebut harus melakukan kalkulasi gaji karyawan berdasarkan pajak dan peraturan lainnya yang dapat berubah dari tahun ke tahun. Pada tahun ini, terdapat perubahan peraturan pajak yang harus diterapkan pada sistem, pada tingkatan mana Anda harus melakukan update? Anda hanya perlu melakukan update pada tingkatan business object, yang ada karena arsitektur 3-tier ini. Satu hal yang harus terus diingat sebagai konsep dasar, bahwa pengertian arsitektur 2-tier maupun 3-tier adalah secara logical dan bukan secara physical. Sehingga pada sebuah sistem kecil Anda dapat menjalankan business logic dan database pada komputer yang sama. Tetapi pada sistem yang besar, Anda mungkin memerlukan beberapa komputer untuk menjalankan baik tingkatan business ataupun database.

Teknologi pendukung
Beberapa contoh teknologi yang umum dipergunakan untuk mendukung n-tier:
Component Object
Umumnya merupakan model object oriented dimana dapat dipergunakan oleh aplikasi yang berbeda dan penggunaan ulang komponen. Contohnya adalah COM/DCOM. Aplikasi yang ditulis dengan bahasa pemrograman yang berbeda dapat saling berkomunikasi dengan menggunakan Component Object. Component Object itu sendiri dapat ditulis dengan bahasa pemrograman yang berbeda-beda. Pada prinsipnya komponen tersebut terdiri dari class yang memiliki sekumpulan method.
Microsoft Transaction Server
MTS atau Microsoft Transaction Server merupakan software yang dikembangkan oleh Microsoft untuk keperluan monitoring transaksi pada aplikasi terdistribusi. MTS beroperasi pada middle-tier dan menyediakan control transaksi. Sebagai contoh, jika Anda mengembangkan sistem 3-tier yang mana menempatkan business object pada middle-tier, maka Anda dapat membuat ActiveX DLL sebagai business objectnya, dan melakukan instalasi didalam lingkungan MTS pada middle-tier. MTS akan bertanggung-jawab dalam menangani akses multi-client pada busines object tersebut. MTS menyediakan fasilitas seperti transaksi rollback, commit dan deadlock pada middle-tier.
HTTP/Web Server.
Untuk aplikasi n-tier pada aplikasi Internet/Intranet, Anda mutlak memerlukan Web Server. Terdapat cukup banyak web server yang umum digunakan seperti Apache Web Server atau Internet Information Server (IIS). Anda dapat menggunakan web server sebagai middle-tier untuk menangani permintaan dari browser komputer client.
Microsoft Message Queue Server.
MMQS atau Microsoft Message Queue Server merupakan teknologi yang dikembangkan oleh Microsoft yang berjalan pada middle-tier dan berfungsi untuk mengelola antrian permintaan.
Hal ini dilatarbelakangi karena didalam jaringan yang besar, tidak semua komputer yang terkoneksi berfungsi pada saat yang diperlukan, sehingga diperlukan sebuah aplikasi yang dapat mengelola antrian request dari client dan response dari server yang akan dikirimkan lagi ketika komputer tujuan telah berfungsi. Satu keuntungannya lagi, jika client-client meminta request yang melebihi kapasitas sebuah server, maka MMQS dapat menyimpannya untuk kemudian mendelegasikannya pada server yang tidak sibuk. Untuk kebutuhan ini diperlukan aplikasi pada server yang berfungsi sebagai listener atau referral.
Database Management System.
Database Management System atau dikenal dengan singkatan DBMS merupakan sumber penyimpanan data dan tentu saja memegang peranan vital dalam keseluruhan sistem. Untuk arsitektur 2-tier dan n-tier, diperlukan aplikasi DBMS yang mampu bekerja pada lingkungan tersebut, beberapa contohnya adalah MySQL, Microsoft SQL Server dan Oracle. Jika pada DBMS yang dipergunakan terdapat fasilitas stored procedure, maka dimungkinkan untuk menyimpan business logic didalam stored procedure yang akan diakses oleh client.

Keuntungan Dan Kerugian n-tier
Diantara keuntungan-keuntungan yang dapat diperoleh dari arsitektur n-tier (atau 3-tier pada umumnya), yang terutama adalah:
1.      Kemudahan perubahan business logic di masa yang akan dating
2.      Business logic yang mudah diimplementasi dan dipelihara
3.      Aplikasi client dapat mengakses berbagai tipe DBMS yang berbeda-beda secara transparan.

Apakah terdapat kerugian n-tier? Mungkin lebih tepat dikatakan sebagai konsekuensinya, yaitu sistem n-tier relatif mahal untuk development dan instalasinya. Hal ini dikarenakan perencanaan software pada 3-tier bisa jadi sangat kompleks. Bahkan pada awal tahap perencanaan, Anda telah harus mempertimbangkan potensi pengembangan perusahaan pada masa yang akan datang. Kompleksitas dalam hal ini meliputi seluruh aspek, baik infrastruktur maupun pembuatan software secara keseluruhan.

Sementara dalam suatu perusahaan, semakin besar perubahan sistem yang dilakukan, maka akan semakin memerlukan adaptasi yang semakin luas ruang lingkupnya. Karena itu secara otomatis memerlukan rentang waktu relatif lebih lama.

Terutama jika sistem 3-tier tersebut akan menggantikan sistem yang telah lama digunakan, terdapat cukup banyak tantangan untuk sosialisasi sistem yang baru. Dalam hal ini, interaksi dan komunikasi dengan pengguna sistem secara keseluruhan sangat diperlukan. Karena itu terdapat dua sisi yang harus Anda temukan titik imbangnya, antara keuntungan-keuntungan yang dapat diraih oleh arsitektur aplikasi n-tier berbanding dengan biaya, tenaga dan waktu yang diperlukan untuk development dan implementasinya.

sumber: http://top-ilmu.blogspot.com/2012/09/arsitektur-client-server.html