Kamis, 07 Februari 2008

Tugas TIK Semester 2 (pengertian chatting)

PENGERTIAN CHATTING

1.Topik : Aplikasi web dan komunikasi asinkron.
2.Objektif : Agar mahasiswa dapat membuat aplikasi berbasis web yang dapat menangani session dan komunikasi asinkron.
3.Deskripsi persoalan:Mahasiswa (berkelompok, maksimal 3 orang per kelompok) diminta untuk membuat sebuah aplikasi chatting berbasis web dengan ketentuan sebagai berikut:

Tentang aplikasi chatting

a.Real time. Aplikasi chatting dijelaskan sebagai suatu aplikasi yang memungkinkan pengguna berkomunikasi tekstual secara langsung (live/real time) dengan pengguna lain.


b.Nickname. Pengguna harus memasukkan nickname (tanpa password) sebagai identifikasi unik dalam sistem. Nickname tersebut berlaku dan dikenali oleh sistem selama masa sesi pengaksesan berlangsung, hingga pengguna "keluar" dari ruang chatting atau browser ditutup.


c.Public room. Komunikasi berlangsung dalam sebuah ruang chatting virtual (public room) yang berisi banyak orang. Ketika masuk, pengguna langsung tergabung ke dalam public room di mana di ruang tersebut pesan dari seorang pengguna dapat dibaca oleh semua pengguna yang lain.


d.Send message. Pengguna dapat mengetikkan teks percakapan pada suatu area pengetikan pesan, dan menekan sebuah tombol (atau Enter) untuk mengirimkan teks tersebut. Teks pesan percakapan dari semua pengguna ditampilkan pada suatu area tampilan percakapan, terurut berdasarkan waktu diterimanya pesan tersebut oleh server. Pesan yang terakhir ditampilkan di bawah.


e.Auto refresh. Area tampilan percakapan otomatis diupdate selama beberapa detik sekali (dan pada saat pengguna mengirimkan pesan baru) sehingga pengguna selalu mengetahui percakapan pengguna lain yang sedang berlangsung tanpa harus melakukan refresh halaman secara manual.


Tentang teknis implementasi


Implementasi program di sisi server menggunakan PHP. Implementasi program di sisi client menggunakan JavaScript (DHTML).
Pada intinya terdapat dua halaman: halaman login (untuk meng-input-kan nickname) dan halaman percakapan.
Halaman login memiliki sebuah form yang di-submit menggunakan method POST ke sebuah file PHP. File ini akan menyimpan nickname ke variabel session, dan kemudian melakukan redirect ke halaman percakapan.
Jika pengguna langsung masuk ke halaman percakapan tanpa login, akan di-redirect otomatis ke halaman login.
Informasi nickname disimpan dan dibaca dari variabel session.
Pengiriman pesan dan pengambilan pesan terbaru (refresh percakapan) harus dilakukan menggunakan AJAX, dan tanpa terjadi refresh halaman. Tidak diperkenankan untuk menggunakan Flash, Java applet, atau pun ActiveX.Petunjuk: lakukan update innerHTML.
Data percakapan di server dapat disimpan di file atau database (pilih salah satu). Jika menggunakan file, pastikan file tersebut mempunyai permission untuk ditulisi (gunakan perintah chmod). Jika menggunakan database, mintalah account database MySql ke admin@informatika.org.
Setiap pesan percakapan ditampilkan dengan diawali nickname yang mengetikkan pesan tersebut.
Setiap ada pengguna yang masuk atau keluar, ditampilkan pesan dari system (sebagai bagian dari percakapan) bahwa ada pengguna dengan nickname tertentu yang baru masuk atau keluar.
Deliverables:
Sejumlah file PHP (dengan file utama diberi nama index.php) beserta semua file pendukungnya (HTML, JavaScript, CSS, dan gambar) jika ada
Laporan dalam bentuk file MS Word (dengan nama file laporan.doc) dan print-out, yang di dalamnya harus menjelaskan hal-hal sebagai berikut :
Deskripsi singkat mengenai aplikasi chatting yang dibuat (nama aplikasi, cara menggunakan, dll)
Perancangan dan teknik implementasi (misalnya bagaimana layout tampilan, bagaimana strategi implementasi area percakapan yang dinamis, bagaimana format penyimpanan data percakapan di server, bagaimana cara mengambil bagian percakapan untuk dikirim ke pengguna tertentu, dst)
Daftar seluruh nama file beserta keterangan singkat mengenai isi/kegunaannya
Contoh tampilan halaman login dan halaman percakapan hasil capture. Untuk mengurangi ukuran file dokumen, gambar hasil capture harus di-resize ke ukuran secukupnya menggunakan software pengolah gambar.
Cerita mengenai kesan/kesulitan/pengalaman yang dialami selama mengerjakan tugas ini Semua source code tidak perlu disertakan dalam laporan.
Protokol pengumpulan:
Satu kelompok terdiri atas maksimal 3 orang. Anggota kelompok ditentukan sendiri oleh mahasiswa, dan tidak boleh lintas kelas (harus dalam satu kelas yang sama).
Semua file (termasuk file MS Word) diletakkan pada server students.if.itb.ac.id di direktori web masing-masing, yaitu di /home/if13***/public_html/if3292/chat/Setiap anggota kelompok harus memiliki semua file tersebut di direktorinya masing-masing.
Aplikasi harus dapat diakses minimal menggunakan browser MS Internet Explorer versi 6 dengan URL http://students.if.itb.ac.id/~if13***/if3292/chat/index.php
Semua file harus sudah di-upload paling lambat tanggal ??? April 2006, dan tidak diperkenankan melakukan update lagi setelah itu.
Laporan dalam bentuk print-out dikumpulkan di ??? pada tanggal yang sama.
AssessmentPenilaian ditekankan pada kelengkapan teknis implementasi seperti yang disebutkan pada deskripsi persoalan, dan penjelasannya pada laporan.
Grading system:
Kriteria
Bobot
Aplikasi web berjalan dengan baik dan benar untuk melakukan chatting
25
Implementasi konsep session dan komunikasi asinkron
25
Laporan lengkap sesuai spesifikasi yang diminta
30
Aplikasi mudah digunakan, tampilan cukup menarik
10
Source code menggunakan indentasi dan disertai komentar sehingga relatif mudah dibaca
10
Penjelasan detil penilaianNilai maksimum yang bisa diberikan adalah 100.
Aplikasi berjalan dengan baik dan benar.
Pengguna dapat melakukan login menggunakan nickname tertentu (bebas).
Sejumlah pengguna (lebih dari 3) dapat bergabung bersamaan dalam sebuah ruang chatting.
Pengguna dapat membaca pesan dari pengguna lain pada area percakapan.
Pengguna dapat mengirimkan pesan untuk ditampilkan di area percakapan.
Pengguna dapat keluar dari ruang chatting dengan meng-klik link/tombol keluar.
Implementasi konsep session dan komunikasi asinkron
Informasi nickname disimpan dan dibaca dari variabel session.
Pesan pada area percakapan diupdate otomatis setiap beberapa detik sekali tanpa refresh halaman dan tanpa membutuhkan aksi apa pun dari pengguna.
Ketika pengguna mengetikkan pesan, update area percakapan dapat terus berlangsung.
Laporan lengkap sesuai spesifikasi yang dimintaSudah jelas, seperti yang tertera di bagian Deliverables.Perhatikan bahwa porsi nilai yang terbesar ada pada pembuatan laporan/dokumentasi ini, jangan hanya terpaku pada pembuatan aplikasinya saja, Anda juga harus dapat menjelaskan/menceritakan apa yang Anda rancang, apa yang Anda ketahui, apa yang berhasil Anda kerjakan, apa yang gagal/sulit Anda kerjakan, dll.
Aplikasi mudah digunakan, tampilan cukup menarikTanyakan pada diri Anda sendiri, apa yang Anda alami dan rasakan ketika menggunakan aplikasi yang Anda buat (mudah dimengerti atau bikin frustasi?), dan bayangkan apa yang akan dirasakan oleh orang lain, terutama asisten yang akan menilai pekerjaan Anda.
Source code menggunakan indentasi dan disertai komentar sehingga relatif mudah dibaca.Buatlah baris-baris program dengan komentar yang singkat seakan-akan Anda sedang bercerita tentang isi program Anda itu kepada orang lain.
IF3292 - T1, 03/04/2006, EN

Tidak ada komentar: