The Notes of Sagi Arsyad

-
See also: Other Geeks@INDC

News

Sagi Arsyad's Facebook profile

ASP.NET

My Organization

.NET Developer Idol Submission : Project Celestial Being

ikut-ikutan Wely untuk mempublish hasil submission untuk Developer Idol, dengan ini dipublish submission Developer Idol versi sagi.

Celestial Being Slide 

nama project ini terinspirasi dari nama salah satu fraksi di Gundam 00, yaitu Celetial Being

Problem Definition

Salah satu masalah yang sering kita temui ketika kita ke sebuah perpustakaan adalah buku yang kita cari tidak terdapat pada perpustakaan itu. dan akan merepotkan bagi kita untuk memeriksa satu-persatu perpustakaan terdekat.
mengapa tidak kita buat saja sebuah aplikasi yang menghubungkan antar perpustakaan agar apabila seorang pengunjung yang datang ke sebuah perpustakaan dan tidak menemukan buku yang dia cari, petugas perpustakaan dapat merekomendasikan si pengunjung untuk datang ke perpustakaan lain yang memiliki buku yang dia cari.

di lain pihak ada kalanya kita sebagai personal dimana memiliki misalnya 10 buku, apabila kita mendefinisikan perpustakaan sebagai pihak yang miliki buku, maka kita juga bisa dianggap sebagai perpustakaan. apalagi jika kita memiliki koleksi buku-buku yang dicari-cari orang.

 

Solution

berangkat dari problem diatas, Celestial Being (CB) hadir sebagai aplikasi yang me-resolve problem diatas.

terinspirasi oleh bittorent sebagai peer-to-peer information (file) sharing, CB menggunakan arsitektur yang mirip dengan bittorent protokol, namun yang di-share bukan file, tapi merupakan informasi kepemilikan buku oleh sebuah perpustakaan.

aplikasi CB ini akan menemukan buku yang anda cari pada network perpustakaan Celestial Being

 

Arsitektur

arch1

terdapat 3 entity :

  • Book Encyclopedia Service
  • Library Tracker
  • Celestial Being Desktop-Client
  • Celestial Being Web-Client (on-plan)

image

How it works ?

  • Secara default sebuah aplikasi Cb bekerja secara offline sebagai aplikasi management perpustakaan dari skala level personal maupun perpustaakaan besar.
  • ada option untuk menshare data detail tentang suatu buku (isbn, judul, author, dll) pada sebuah server yang kita sebut "Book Encyclopedia Service" (BES). salah satu keuntungan adanya BES ini adalah setiap aplikasi CB yang terhubung dengannya dapat berkolaborasi untuk melengkapi "stub datail" dari suatu buku
  • BES juga berguna untuk memberikan detail informasi tentang seuatu buku (GlobalID, isbn, judul, author, dll)

 image image

  • Salah Satu entity lagi pada Celestial Being Network (CBN) adalah "Library Tracker Service" (LTS)
  • LTS berguna mentrack siapa saja yang terhubung pada CBN dan buku-buku yang dimiliki oleh masing-masing perpustakaan
  • sebuah perpustakaan dapat mencari sebuah buku terdapat di perpustakaan mana yang tehubung melalui Celestial being Netowork melalui Library Tracker

image

image image

  • Terakhir, setelah sebuah aplikasi CB mendapatkan informasi adanya buku pada suatu pepustakaan lain pada CB Network, kedua entity dapat saling berkomunikasi secara peer-to-peer untuk menayakan availability suatu buku pada perpustakaan yang dimaksud

 

Celestial Being dibangun menggunakan teknologi

  • Microsoft Visual Studio 2008

VS 2008 ini merupakan tools utama yang digunakan untuk development WCF Apllicaiton (book detail service & library tracker), Windows Form (CB Client) dan Web From (CB Web-Client).  

WCF ini merupakan teknologin inti dari Celestial Being System. WCF digunakan pada komunikasi antara client ke tracker juga komunikasi antar client (peer-to-peer)

  • Microsoft .NET Framework 3.5
    • C# 3.0  : baik client maupun server diprogram menggunakan bahasa pemograman C# 3.0 yang sudah mensupport Linq
    • Linq : implentasi linq dilakukan sebagai untuk pemetaan object to realtional database

 

  • SQL Server 2005 / SQL Express

Sebagai database, di server (book detail service) kita gunakan SQL Server 2005 minimal versi Standard. sedangkan pada client yang tidak memiliki traffice telalu banyak kita gunakan SQL Express

  • ASP.NET 3.5 (Web-Client menggunakan ASPNET Ajax, dsb)

salah satu rencana kedepan adalah membeuat Web-Based Client dari aplikasi celestial being ini. Web-App ini bekerja layaknya desktop app, karena mengimplementasikan WCF dengan contract yang sama dengan desktop client.

 

Bisnis Proses

Celestial Being Network berjalan 24-7, dengan jumlah client yang keluar-masuk network celestial being yang bervariasi.
hal ini dikarenakan bervariasinya jam operasional masing-masing perpustakaan juga para volunteer yang membuka perpustakaan pribadi dengan cara menggunakan CB Client yang connect ke Celestial being network ini, juga memiliki variasi jam online

 

Jenis-Jenis Perpustakan bisa terbagi menjadi

  • Perpustakaan Besar  : Perpustakaan yang memiliki sangat banyak buku, biasanya ini merupakan perpustakaan lokal tingkat kabupaten sampai nasional (dan sejenisnya)
  • Perpustakaan Sedang : Perpustakaan yang miliki cukup banyak buku, namun ruang lingkup costumer nya terbatas, misalnya perpustakaan tingakt Fakultas di UI
  • Perpustakaan Kecil / Personal : merupakan kompulan volunteer maupun study group yang memiliki koleksi buku tidak banyak (sekitar dibawah 100 koleksi) namun bersedia meminjamkan bukunya ke orang lain yang membutuhkan, misalanya : MIC UI, koleksi buku Bpk. Zeddy.. dsb.

 

untuk keanggotaan, setap perpustakaan memiliki membership sistem yang bediri sendiri. seorang pengunjung dapat dengan mudah menjadi member dari suatu perpustakaan terdekat dengan rumahnya hanya dengan menunjukkan kartu identias (KTP, SIM, dsb). data membership disimpan oleh masing-masing perpustakaan pada database dan tidak dishare pada CB Network.

 

Book Encyclopedia Service (BES) merupakan suatu entiry bukan client pada CB Network. BES ini bekerja seperti halnya service pada Amazon.com dimana BES ini menyediakan service (WCF) yang memberikan detail data suatu buku yang akan di-counsume oleh CB client.

Library Tracker Service (LTS) bertindak mengindex kepemilikan buku juga memantau status online dari setiap perpustakaan. hal ini dilakukan dengan cara setiap beberapa detik, client mengirim message status ke LTS Server, client yang terlalu lama idle dianggap sudah offline (seperti bittorent kan ?)

 

ScreenShots

image
List buku yang dimiliki suatu perpustakaan

 

image 
Profile buku

 

image
Book Loan System

 

image '
User Management System

 

Resource

 

See you next Deculture - S.A.

Share this post: | | | |

Comments

cipto said:

pendek bener...

# June 23, 2008 1:35 PM

Wely said:

Berkat itu, dapat makan steak ya, Gi?

Enak gak steak lu?

Hahaha

# July 3, 2008 1:55 PM

The Notes of Sagi Arsyad said:

karena ada suatu wacana meng-open-source-kan Project Celestial Being di MIC UI, saya jadi memperdalam

# July 10, 2008 7:15 PM

The Notes of Sagi Arsyad said:

karena ada suatu wacana meng-open-source-kan Project Celestial Being di MIC UI, saya jadi memperdalam

# July 10, 2008 7:18 PM