Pertimbangan Penulisan Modul Praktikum

7 December 2011 4 comments

Modul praktikum merupakan komponen penting dalam suatu proses praktikum, dalam bidang apapun termasuk Ilmu Komputer atau Informatika. Modul praktikum merupakan pegangan utama bagi mahasiswa (praktikan) dan asisten praktikum dalam melaksanakan praktikum. Apa yang harus dikuasai oleh praktikan, secara garis besar, terdapat dalam modul tersebut. Namun, kadang muncul pertanyaan, apa yang dijadikan landasan dalam pembuatan modul praktikum? Apakah itu sesuai kebutuhan zaman atau orang? Apa tool yang harus digunakan? Siapa yang bertanggungjawab menulis modul praktikum?

Read more…

Instalasi Modem USB Huawei EC167 AHA di Arch Linux

22 November 2011 1 comment

Modem USB Huawei semakin banyak digunakan pengguna Internet di Indonesia. Beberapa vendor (ISP) Internet juga menyediakan paket perdana koneksi Internet dengan modem-modem tersebut. Pada sistem operasi Windows, modem model ini mudah diinstal karena telah tersedia software instalasi yang bersifat autorun dan friendly. Khusus distribusi Linux, sejauh ini, hanya Ubuntu (menurut pengalaman pribadi) yang mudah dan hampir otomatis berjalan. Linux lain? setidaknya di Arch Linux memerlukan sedikit pekerjaan tambahan.

Tulisan ini sesuai pengalaman kami menginstal Modem Huawei EC167 yang dipaket oleh AHA (Esia Telecommunication) di Arch Linux. Langkah-langkah yang diuraikan di sini sudah diuji keshohihannya dan berhasil dengan baik. Jika terjadi perbedaan hasil… maka kemungkinan karena adanya kekurangan pada paket-paket yang diinstal.

Read more…

Ilustrasi Preprocessing & Searching Dalam Text Mining

1 November 2011 Leave a comment

Bidang Text Mining atau Information Retrieval semakin maju dan banyak digunakan. Dua tugas penting dalam bidang ini adalah PreProcessing dan Searching. Kualitas Dokumen yang dikembalikan ke pengguna oleh suatu Search Engine sangat tergantung pada kualitas fitur yang dihasilkan pada tahapan Preprocessing dan kemampuan pendekatan perankingngan yang dipakai saat pencarian atau perhitungan kemiripan.

Kali ini, kami coba memberikan sebuah contoh ilustratif bagaimana preprocessing dilakukan. Kemudian, jika terdapat suatu query, bagaimana query ini diperlakukan dan kemudian dihitung kemiripannya dengan daftar dokumen yang tersedia.

Klik link berikut dan nikmati file PDF-nya ;-)

Scala – Mirip Java dan Reliability Scale

19 August 2011 2 comments

Scala adalah bahasa pemrograman general purpose yang dirancang untuk mengungkapkan pola pemrograman umum secara cara ringkas, elegan, dan aman. Scala dapat dengan baik mengintegrasikan fitur bahasa berorientasi obyek dan fungsional, memungkinkan Programmer Java dan lainnya lebih produktif. Kode ukuran biasanya berkurang dengan faktor dua sampai tiga bila dibandingkan dengan aplikasi Java yang setara.

Banyak perusahaan yang telah bergantung pada Java untuk aplikasi bisnis penting meraka beralih ke Scala untuk meningkatkan produktivitas pengembangan mereka, skalabilitas dan kehandalan aplikasi secara keseluruhan.

Read more…

HaXe – Bahasa Pemrograman Lintas Platform

18 August 2011 Leave a comment

Mau cepat dan lebih lengkap? langsung saja ke: http://www.haxe.org

Minggu lalu saya tiba-tiba kenalan dengan bahasa pemrograman “baru”, setidaknya bagi saya, namanya HaXe. Coba baca-baca, dan ternyata menarik sekali. Nah, di sini saya coba posting sedikit tentang apasih HaXe ini.

Read more…

Kemiripan & Klasifikasi Teks – Contoh Perhitungan

11 January 2011 2 comments

Sebagian besar aplikasi web berbasis search engine, information retrieval atau text mining, biasanya melibatkan penanganan query dan klasifikasi dokumen. Penanganan query biasanya menghitung tingkat kemiripan atau relevansi antara query dan daftar dokumen yang tersedia di dalam sistem. Sedangkan klasifikasi adalah pengelompokan dokumen-dokumen ke dalam kelas-kelas yang telah didefinisikan sebelumnya.

Penanganan query dan klasifikasi adalah dua proses yang berbeda, meskipun keduanya dapat menggunakan pendekatan yang beririsan. Perlu dipahami pula, ada perbedaan antara klasifikasi dan clustering, meskipun banyak orang menggunakan 2 istilah ini secara bergantian untuk maksud yang sama. Klasifikasi telah menyiapkan daftar kelas tujuan (pre-defined) sedangkan clustering tidak – hasil clustering dibiarkan membentuk kelas masing-masing. Detailnya tentu dapat dijumpai pada paper yang membahas tentang clustering dan klasifikasi.

Berikut ini adalah 2 file yang berisi:

1. Cosine Similarity. Langkah-langkah praktis menghitung kemiripan antara suatu Query (Q) dengan daftar dokumen (dengan semua dokumen). Kemudian dilakukan pengurutan dan dikembalikan kepada pengguna. Contoh ini memperlihatkan perhitungan kemiripan menggunakan cosine similaity.

Klik dan download!

2. Klasifikasi kNN. Langkah-langkah praktis mengelompokkan suatu dokumen ke dalam salah satu dari 2 kelas tujuan yang pre-defined. Pendekatan yang digunakan adalah kNN. Perhitungan kemiripan digunakan untuk mendapatkan k tetangga terdekat dari dokumen yang akan diklasifikasikan. Nilai k=4 dijadikan default.

Klik dan Download!.

Semoga dua contoh di atas bermanfaat :-)

UAS Metodologi Penulisan Ilmiah

11 January 2011 Leave a comment

Para mahasiswa yang mengambil kuliah MPI yang saya ampu. Semua proposal TA yang masuk telah saya koreksi. Sementara hanya Saiful, Rohmi, Hapso dan Sulis yang dinyatakan lulus (dan mereka memang sudah maju seminar proposal). Lainnya harus melakukan revisi.

Proposal yang telah saya koreksi ada di meja Admin labjar, mas Saiful. Silakan di ambil dan lakukan revisi sesuai dengan panduan penulisan proposal TA Teknik Informatika Unijoyo, versi terbaru. Selain itu, kesalahan utama ada pada Rumusan Masalah dan Tujuan yang tidak jelas, salah atau mengambang.

Proposal baru (hasil revisi) dan proposal yang telah dikoreksi harus dikumpulkan kembali paling Jumat, 14 Januari 2011, jam 09.00. Keterlambatan tidak ditolerir. Jangan lupa absen kehadiran UAS pada saat pengumpulan revisi.

Selamat belajar dan berkarya, semoga sukses selalu :-)

Categories: Serba-serbi

Soal + Jawaban UAS Web Engineering 2010

7 January 2011 6 comments

Ujian Akhir Semester (UAS) untuk matakuliah Web Engineering telah berlalu. Berikut ini adalah soal dan jawabannya. Silakan cek jawaban anda dan kira-kira berapa persen jawaban benar anda tuliskan (jika anda ikut UAS-nya).

Soal 1:
Sebutkan 4 ukuran dasar untuk mengetahui kinerja dari suatu aplikasi web!

Jawaban:
1. Throughput. Jumlah permintaan yang dapat diselesaikan per satuan waktu
2. Response time (waktu respon). Total waktu dihabiskan antara pengajuan permohonan sampai dengan sampai respon ditangani
3. Utilisasi. Waktu yang dihabiskan sistem hanya untuk bekerja (sibuk), termasuk menangani request dari client. Misal: 12 jam dalam sehari = 50%.
4. Availability (ketersediaan). Waktu sistem beroperasi, siap menerima request dari client, misalnya 24 x 7.

Soal 2:
Pendekatan AJAX meningkatkan usability (kebergunaan) dari aplikasi web. Namun, setidaknya ada 3 kekurangan dari AJAX. Sebutkan!

Jawaban:
1. Aplikasi AJAX memerlukan bandwidth yang lebih besar karena sering terjadi proses update secara dinamis dan otomatis
2. Pengguna tidak mengetahui bagian mana saja yang telah diupdate, karena update terjadi tanpa menunggu interaksi langsung dari pengguna
3. Pengguna tidak dapat kembali ke tampilan sebelumnya pada web browser (tombol Back seolah tidak berfungsi).

Soal 3:
Sebutkan 6 masalah penting dan termasuk kebutuhan yang harus ditangani dalam suatu proses pengembangan aplikasi web!

Jawaban:
1. Siklus pengembangan yang singkat (waktunya pendek)
2. Requirement (kebutuhan stakeholder dan tuntutan teknologi) yang cepat berubah
3. Deadline rilis dari aplikasi web tidak dapat ditunda tetapi content-nya harus fleksibel
4. Pengembangan secara paralel dari beberapa rilis plikasi yang berbeda
5. Reuse (penggunaan ulang beberapa komponen atau framework) dan integrasi dengan berbagai aplikasi yang telah ada.
6. Menyesuaikan tingkat kompleksitas dari aplikasi web.

Soal 4:
Aplikasi web sulit dipisahkan dari server database. Penjahat biasanya memanfaatkan serangan SQL Injection untuk menyerang sistem web yang disediakan. Jelaskan apa yang harus dilakukan untuk mengamankan sistem dari serangan SQL Injection tersebut!

Jawaban:
1. Parameter verification. Setiap SQL yang masuk harus diperiksa untuk memastikan bahwa formatnya telah sesuai dengan yang diharapkan oleh pengembang aplikasi web.
2. Prepared statament. Merupakan fitur yang dimiliki banyak database modern. Pernyataan dan parameter dikirim ke server database secara terpisah. Database akan memeriksa tipe dari parameter.
3. Exception handling. Tangani kemungkinan error setiap transaksi (mengambil, mengubah atau menghapus) database dengan memasukkan transaksi tersebut ke dalam blok exception.
4. Prinsip least privilege. Berikan hak minimal kepada aplikasi web dalam mengakses ke server database, misalnya pengguna A (mewakili aplikasi web) hanya dapat memberikan perintah SELECT. Jika penyerang memberikan perintah UPDATE atau DELETE, maka transaksi yang dilakukan otomatis tertolak.

Soal 5:
Sebutkan 6 karakteristik utama dari Web Semantik yang dipaparkan oleh Koivunen dan Miller!

Jawaban:
1. Segala sesuatu dapat diidentifikasi dengan URI
2. Sumber daya dan link dapat diketik
3. Informasi yang tidak lengkap harus ditoleransi
4. Tidak ada klaim untuk kebenaran mutlak
5. Memungkikan terjadinya evolusi informasi atau sumber daya
6. Desain yang minimalis.

Semoga soal dan jawaban di atas bermanfaat :-)

True SE: Web Portal + Search Engine trunojoyo.ac.id

3 January 2011 3 comments

Hampir semua universitas atau perguruan tinggi di Indonesia mempunyai situs, baik untuk level universitas, unit/fakultas, jurusan/program studi sampai dengan laboratorium, dosen, unit kegiatan mahasiswa bahwa blog. Begitu pula pada Universitas Trunojoyo. Makin lama makin banyak informasi yang tersedia pada website-website di bawah domain trunojoyo.ac.id, bukan hanya www.trunojoyo.ac.id.

Sayangnya, ada beberapa hal yang sangat menyusahkan pengunjung mendapatkan informasi secara lengkap dan terpadu dari website-website tersebut. Pertama, situs web utama, www.trunojoyo.ac.id tidak menyediakan akses ke berbagai situs lain yang berada di bawah domain yang sama. Pengunjung harus mengetahui setiap alamat (URL) yang perlu dikunjungi. Kedua, pengunjung tidak dapat mengetahui dimana saja informasi terkait tersedia. Misalnya beasiswa, jika pada situs web Fakultas Teknik terdapat pengumuman beasiswa XYZ, dimana informasi lebih detail atau terkait tersedia? di Fakultas lain atau di Universitas?

Read more…

Membaca Halaman Web per Byte dengan URLConnection

27 December 2010 Leave a comment

Pada dasarnya, stream atau aliran data di jaringan dibaca byte demi byte (karakter demi karakter, satu karakter memerlukan 1 byte memory, 8 bit).

Berikut ini adalah kode program yang dapat digunakan untuk membaca halaman web byte demi byte menggunakan kelas URLConnection:

//Download halaman web menggunakan URL & URLConnection
import java.io.BufferedInputStream;
import java.net.URL;
import java.net.URLConnection;

public class URLConnectionPage {
  public static void main(String[] args) throws Exception {
    URLConnection urlc = new URL("http://localhost").openConnection();

    BufferedInputStream buffer = new BufferedInputStream(urlc.getInputStream());

    int byteRead;
    while ((byteRead = buffer.read()) != -1){
      System.out.print((char) byteRead);
    }
    buffer.close();
  }
}

Jika anda tetap ingin membaca stream data web yang diterima baris demi baris, kode program di bawah ini dapat digunakan. Yang terjadi dibelakang layar tetap, yaitu membaca byte demi byte, perbedaan hanya dari sisi programan:

import java.net.*;
import java.io.*;

public class URLConnectionReader {
    public static void main(String[] args) throws Exception {
        URL unijoyo = new URL("http://www.trunojoyo.ac.id/");
        URLConnection yc = unijoyo.openConnection();
        BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
        String inputLine;

        while ((inputLine = in.readLine()) != null)
            System.out.println(inputLine);
        in.close();
    }
}

Follow

Get every new post delivered to your Inbox.