Sistem terdistribusi adalah suatu system yang terkomputeri dimana system tersebut terhubung dengan system yang lain melalui sebuah jaringan computer yang saling berkomunikasi menggunakan message pasing dan memiliki koordinasi proses melalui pesan sinkron atau asinkron.
UPT Perpustakaan Universitas Jendral Soedirman memiliki kerja sama dengan UPT Perpustakaan dengan Universitas yang berada di Jawa Tengah. Misalnya Universitas Pangeran Diponegoro, Universitas Gajah Mada dan Universitas lainnya yang masih berada di Profinsi Jawa Tengah. Kerjasama tersebut adalah setiap anggota perpustakaan masing-masing Universitas yang sudah terdaftar dapat meminjam buku di perpustakaan universitas yang menjalin kerja sama. Setiap anggota yang terdaftar maka akan memiliki kartu anggota yang nantinya bisa di cek melalui barcode yang tertera pada kartu anggota.
System yang digunakan oleh kumpulan universitas tersebut adalah menggunakan system terdistribusi. Dimana setiap ada pengguna yang mendaftar untuk mendaftar anggota luar biasa maka system pada universitas tersebut memberikan update data pada universitas yang lainnya. Misalnya seseorang bernama Nur Ichsan mendaftarkan diri menjadi anggota perpustakaan di Universitas Jendral Soedirman maka dengan sendirinya Nur Ichsan akan terdaftar sebagai anggota luar biasa pada Universitas yang menjalin kerja sama tersebut. Berikut gambaran system tersebut :
Ket : (menunjukan aliran informasi)
Jika Server di Unsoed melakukan perubahan anggota perpustakaan maka server unsoed akan mengirimkan informasinya ke server yang ada pada server UGM dan server Undip. Begitu juga pada server-server yang lain. Jika mereka melakukan perubahan maka akan melakukan back-up data ke server unsoed.
Untuk memulai pengeditan ini, kita butuh software sederhana yang dapat di download disini. Aplikasi ini tidak perlu di instal, dengan double klik aplikasi dapat langsung kita gunakan.
Pertama akan saya beri contoh yang sederhana, yaitu mengubah tulisan "start" pada menu taskbar / di kiri bawah layar komputer anda. ( arahkan mouse pada gambar untuk memperbesar )
Buka aplikasi, klik file pada menu bar lalu pilih open. Pencarian kita arahkan ke folder C:\WINDOWS lalu pilih explorer.exe karena kata "start" berada di dalam file ini.
Setelah terbuka, kita cari kata "start" melalui menu view pilih find text, atau dengan menekan tombol Ctrl+F pada keyboard anda.
Kita ubah kata start misalkan dengan "mulai". Bila sudah, kita simpan dengan klik save as pada file di menu bar. File yang kita edit tadi harus kita simpan pada folder yang sama dengan aslinya, dan nama file pun harus sama yaitu explorer.exe
Karena bila tidak sesuai bisa jadi komputer tidak akan hidup dengan normal atau bahkan mati, setelah restart nanti.
Karena nama file dan folder harus sama, maka file yang lama kita timpa / replace dengan yang baru kita edit tadi. Pada beberapa jenis windows yang pernah saya edit, file tidak mau di timpa / replace. untuk itu, sebelum menyimpan file yang baru di edit, ubah nama file yang asli, misalkan dengan explorer.exe hapus.exe atau apapun terserah anda.
Kemudian restart komputer anda untuk melihat perubahan hasil edit tadi. Untuk mengedit kata lain pada windows anda, ulangi langkah pertama tadi, dengan mencari file yang ingin di edit. Yang perlu diingat dalam pengeditan ini, jangan sampai salah saat memberi nama dalam menyimpan file.
Demikian sedikit contoh yang dapat saya berikan, dengan mengetahui ini mungkin bisa menjadi pembelajaran bagaimana mengatasi windows yang tidak normal / ada file yang corrupt, karena sedikit demi sedikit anda akan menjadi tahu, file ini berfungsi sebagai apa. Dan jangan lupa untuk mengembalikan file file tadi ke aslinya, karena bagaimanapun juga, windows xp ada hak patent nya.
CodeIgniter adalah salah satu dari sekian banyak framework PHP yang tersedia secara gratis. Pengembang CodeIgniter adalah seorang musisi rock-n-roll bernama Rick Ellis dari EllisLab (http://www.ellislab.com). Tujuan dari pembuatan framework CodeIgniter ini menurut user manualnya adalah untuk menghasilkan framework yang akan dapat digunakan untuk pengembangan proyek pembuatan website secara lebih cepat dibandingkan dengan pembuatan website dengan cara koding secara manual, dengan menyediakan banyak sekali pustaka (library) yang dibutuhkan dalam pembuatan website, dengan antarmuka yang sederhana dan struktur logika untuk mengakses pustaka yang dibutuhkan.
CodeIgniter memudahkan kita merancang sebuah aplikasi berbasis website. Tools ini dapat meminimalkan penulisan script yang sering kita lakukan secara manual, karena dilengkapi library yang cukup lengkap untuk keperluan pembuatan website. Dengan demikian, kita sebagai pengembang dapat lebih memfokuskan perhatian pada sisi perencanaan. Karena proses pembuatan website secara teknis sudah diminimalkan dalam hal penulisan kodenya. Lalu kenapa harus CodeIgniter.
Beberapa Kelebihan CodeIgniter
Seperti kita ketahui bahwa tersedia banyak sekali framework php yang bisa kita gunakan untuk keperluan pembuatan website. Banyak juga tersedia content managemant system yang mudah digunakan. Apa yang membuat CodeIgniter layak untuk dipilih? Berikut kelebihan-kelebihan CodeIgniter dibanding dengan tools-tools yang lain. Mungkin agak subjektif, mengingat keterbatasan pengetahuan saya. Here we go…:
Free of Charge – Gratis
Lisensi CodeIgniter adalah lisensi Apache/BSD style open source license, yang berarti kita dapat menggunakannya secara gratis sesuai kebutuhan kita.
Kompatibel dengan PHP 4.0 maupun PHP 5.0
PHP sekarang sudah memasuki release versi ke 5. Sedangka banyak webhosting ataupun developer web yang mengembangkan aplikasinya menggunakan PHP 4.0. Disinilah keunggulan CodeIgniter yang mampu mensupport pengembang yang masih menggunakan PHP versi 4.0. Namun juga tetap powerful walau digunakan bersama PHP 5.0.
Lighweight – Ringan dan cepat.
Secara default, saat CodeIgniter berjalan hanya akan me-load beberapa library saja. Untuk library-library lain bisa di load sesuai kebutuhan. Hal ini berarti penggunaan resource yang sedikit sehingga aplikasi akan terasa ringan dan cepat.
Prinsip Model-View-Controller.
Kita bebas berekspresi dalam style kita. Tapi bagaimanapun, CodeIgniter mendukung pengembangan web dengan metode Model View Controller (MVC). Sebagai penjelasan, MVC memisahkan bagian bussiness logic (logika program) dan tampilan (view) dalam sebuah aplikasi. Hal ini sangat memudahkan tim dalam proses maintenance sebuah aplikasi, karena tugas bisa lebih mudah dibagi-bagi. Ada bagian yang khusus membuat tampilan dan bagian yang membuat core programnya.
Dokumentasi yang Lengkap.
Salah satu hal yang bisa dijadikan barometer apakah sebuah aplikasi benar-benar dikembangkan atau tidak bisa dilihat dari dokumentasinya. Dalam hal ini CodeIgniter sangat luar biasa, terdapat dokumentasi yang sangat lengkap tentang semua hal yang ada dalam CodeIgniter. Mulai dari langkah instalasi sampai dokumentasi fungsi-fungsi nya tersedia. Adanya dokumentasi sangat memudahkan bagi pemula dalam mempelajari lingkungan pengembangan website dengan CodeIgniter.
Pustaka yang lengkap.
CodeIgniter dilengkapi dengan berbagai pustaka siap pakai untuk berbagai kebutuhan, misalnya saja koneksi database, email, session dan cookies, keamanan, manipulasi gambar dan banyak lagi.
Fitur-Fitur CodeIgniter
Berikut fitur-fitur yang didukung oleh CodeIgniter :
Sistem berbasis Model View Controller
Kompatibel dengan PHP versi 4.
Ringan dan Cepat.
Terdapat dukungan untuk berbagai basis data.
Mendukung Active Record Database.
Mendukung form dan validasi data masukan.
Keamanan dan XSS filtering.
Tersedia pengaturan session.
Tersedia class untuk mengirim email.
Tersedia class untuk manipulasi gambar (cropping,resizing, rotate dan lain-lain).
Tersedia class untuk upload file.
Tersedia class yang mendukung transfer via FTP.
Mendukung lokalisasi bahasa.
Tersedia class untuk melakukan pagination (membuat tampilan perhalaman).
Mendukung enkripsi data.
Mendukung benchmarking.
Mendukung caching.
Pencatatan error yang terjadi.
Tersedia class untuk membuat calendar.
Tersedia class untuk mengetahui user agent, misalnya tipe browser dan sistem operasi yang digunakan pengunjung.
Database adalah kantong bagi sebuah aplikasi untuk menyimpan data. Dalam terminologi database terdapat perbedaan dalam pengimplementasian penyimpanan data. Selain itu teori tentang arsitektur database juga terdapat beberapa macam. Secara garis besar, kita sedang membicarakan tentang perbedaan RDBMS dan DBMS.
RDBMS (Relation Database Management System) adalah arsitektur database yang tabel-tabelnya mempunyai hubungan atau relationship satu sama lain. Hubungan disini menggunakan key pada masing-masing tabel. Sedangkan kebalikannya, DBMS (Database Management System) tidak harus membutuhkan hubungan antar tabel di dalamnya. Keduanya, DBMS dan RDBMS merupakan metode yang diterima secara umum untuk membangun arsitektur sebuah database.
Aset terpenting dari sebuah korporasi adalah informasi. Semakin besar sebuah bisnis, maka informasi menjadi hal yang sangat berharga untuk dijaga. Informasi sangat berperan untuk menjadi faktor penentu keunggulan kompetitif persaingan bisnis saat ini. Hal ini seiring dengna kemajuan teknologi informasi yang melaju kencang.
Secara umum, biasanya organisasi atau perusahaan besar menggunakan lebih dari satu arsitektur database untuk operasional perusahaan. Dan seperti yang kita duga, database ini dapat menyertakan baik DBMS dan RDBMS berskala besar. Kedua arsitektur ini digunakan untuk dua kondisi yang berbedsa. Biasanya serangkaian data yang sangat besar membutuhkan sebuah solusi RDBMS. Karena data yang besar tersebut membutuhkan arsitektur penyimpanan yang dinamis, menyesuaikan dengan jumlah data yang akan disimpan. Sementara itu kumpulan data yang lebih kecil dapat dikelola dengan menggunakan sebuah DBMS. DBMS dipilih karena tidak diperlukan arsitektur yang terlalu rumit untuk mengolah data yang relatif kecil.
Aspek penting lainnya pada sebuah database adalah model data (logical data model). Logical data model merupakan sebuah skema yang digunakan untuk mengekpresikan data. Saat ini, terdapat beberapa teknik untuk membuat data model.Beberapa model itu adalah Conceptual Data model dan Physical Data Model. Keduanya akan saya jelaskan pada alinea berikut ini:
CDM (Conceptual Data Model)
Model ini menganggap model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi obyek-obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu. Sekilas mengingatkan kita akan konsep Object Oriented Programing ya?
Biasanya direpresentasikan dalam bentuk Entity Relationship Diagram atau ERD.
Beberapa manfaat dalam penggunaan CDM dalam perancangan database antara lain :
Memberikan gambaran yang lengkap dari struktur basis data yaitu arti, hubungan, dan batasan-batasan. Relationship antar entitas dideskripsikan secara jelas.
Alat komunikasi antar pemakai basis data, designer, dan analis. Dengan kata lain, model ini berperan sebagai alat komunikasi.
PDM (Physical Data Model)
Merupakan model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di mana setiap kolom memiliki nama yang unik.
A. CDM (Conceptual Data Model) :
Model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari koleksi obyek-obyek dasar yang dinamakan entitas (entity) serta hubungan (relationship) antara entitas-entitas itu.
Biasanya direpresentasikan dalam bentuk Entity Relationship Diagram.
Manfaat Penggunaan CDM dalam perancangan database :
Memberikan gambaran yang lengkap dari struktur basis data yaitu arti, hubungan, dan batasan-batasan
Alat komunikasi antar pemakai basis data, designer, dan analis.
B. PDM (Phsical Data Model)
Merupakan model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data tersebut. Setiap tabel mempunyai sejumlah kolom di mana setiap kolom memiliki nama yang unik. PDM menggunakan perancangan database secara fisik. Tipe datanya bersifat lebih khusus dan spesifik. Perancangan PDM merupakan representasi fisik / sebenarnya dari database.
Kembali ke pembahasan mengenai perbedaan DBMS dan RDBMS. Di sisi lain, relational data model dapat terdiri dari tabel, key, index, dan foreign key yang berhubungan dengan tabel lainnya. Baik DBMS maupun RDBMS mendukung konsept foreign key, namun hanya RDBMS yang memberlakukan aturan-aturannya. Intinya, desain Relational Database merupakan generasi lanjutan dari desain Database Management System.