Implementasi Random Numbers Java untuk Menciptakan Missing Value dari suatu Tabel

dokumen-dokumen yang mirip
BAB III METODOLOGI PENELITIAN

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB I PENDAHULUAN. cara berpikir manusia yang disebut sebagai artificial intelligence atau lebih

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. masyarakat dengan Kuliah Kerja Nyata (KKN) merupakan suatu bentuk kegiatan

BAB III METODE PENELITIAN. Dalam penelitian ini, alat yang di gunakan adalah sebagai berikut: 1. Perangkat Keras (Hardware)

BAB IV ANALISIS, PERANCANGAN, DAN IMPLEMENTASI PERANGKAT LUNAK

BAB I PENDAHULUAN. Ini disebabkan oleh berkembangnya ilmu pengetahuan dan teknologi dan adanya

BAB 1 PENDAHULUAN. Belakangan ini, kontes pemrograman banyak diadakan oleh lembaga lembaga

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM

SISTEM MANAJER PADA SISTEM KOLABORASI BERBASIS WEB

ANALISIS DAN PERANCANGAN PERANGKAT LUNAK

BAB I PENDAHULUAN. salah satunya adalah komputer. Seperti halnya pada perusahaan perusahaan dan

BAB III METODE PENELITIAN

BAB III METODOLOGI PENELITIAN. Penelitian ini dilakukan di Jurusan Ilmu Komputer Fakultas Matematika dan Ilmu

BAB III ANALISIS DAN PERANCANGAN

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Rancangan Aplikasi Pemilihan Soal Ujian Acak Menggunakan Algoritma Mersenne Twister Pada Bahasa Pemrograman Java

BAB I PENDAHULUAN. keunggulan kompetitif (competitive advantage) dengan strategi keunggulan biaya

BAB III METODE PENELITIAN. digunakan sebagai pendekatan dalam memecahkan masalah. Biasanya kerangka

PERANCANGAN DAN IMPLEMENTASI SISTEM INFORMASI SEKOLAH (STUDI KASUS SMP N 2 PATIKRAJA BANYUMAS)

PEMANFAATAN ARDUINO DALAM PENGEMBANGAN SISTEM KEAMANAN RUMAH BERBASIS WEB

BAB I PENDAHULUAN. Ini disebabkan oleh berkembangnya ilmu pengetahuan dan teknologi dan adanya

Simulasi Aplikasi Pemesanan Tiket Travel Melalui Wireless dengan Teknologi J2ME

BAB I PENDAHULUAN 1.1. Latar Belakang

BAB II LANDASAN TEORI

BAB V IMPLEMENTASI DAN PENGUJIAN

Implementasi Sistem Informasi Penjualan Untuk Minimarket

HARITS SUBHAN NIM : L

BAB IV HASIL DAN UJI COBA

Bab 3 Metode dan Perancangan Sistem

BAB II LANDASAN TEORI

BAB I PENDAHULUAN. Dengan kemajuan teknologi informasi dewasa ini, kebutuhan akan

BAB IV ANALISA DAN PEMBAHASAN

Pengamanan Sistem Login Aplikasi Menggunakan Protokol ID Based Diffie-Hellman Key Agreement

BAB IV HASIL DAN UJI COBA

BAB 1 PENDAHULUAN 1.1 Latar Belakang

PERANGKAT LUNAK PENGARSIPAN SURAT MASUK DAN KELUAR BERBASIS WEB DI DISPHUBKOMINFO KABUPATEN PANGANDARAN

BAB IV HASIL DAN UJI COBA

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

BAB III ANALISA DAN PERANCANGAN. Pada dasarnya perancangan sistem yang dibuat oleh peneliti adalah

BAB I PENDAHULUAN. dibutuhkan oleh banyak instansi dan perusahaan-perusahaan milik negara maupun

BAB IV HASIL DAN UJI COBA

DAFTAR ISI. PRAKATA... iv. ARTI LAMBANG DAN SINGKATAN... vi. ABSTRACT... vii. INTISARI... viii. DAFTAR ISI... ix. DAFTAR GAMBAR...

RANCANG BANGUN SISTEM INFORMASI PELAYANAN UNIT SISTEM INFORMASI SEKOLAH TINGGI TEKNOLOGI GARUT BERBASIS WEB DAN ANDROID

HASIL DAN PEMBAHASAN. 2 Perangkat keras: Prosesor AMD Athlon II 245 2,9 GHz; Memori 2046 MB; HDD 160 GB. Client:

Dibuat Oleh : 1. Andrey ( )

BAB I PENDAHULUAN. semakin relatif sulit juga untuk mengambil keputusan terhadap suatu

SISTEM KLASIFIKASI SOAL PILIHAN GANDA BERDASARKAN PROPORSI TINGKAT KESUKARAN DENGAN MENGGUNAKAN METODE BAYES. (Studi Kasus: Tingkat Sekolah Dasar)

BAB I PERSYARATAN PRODUK

BAB I PENDAHULUAN. teknologi berbasis komputer, walaupun perusahaan sudah menggunakan

BAB I PENDAHULUAN. (SIG) adalah salah satu sistem informasi yang dibahas dalam ilmu komputer, yang

Gambar 3.1. SDLC Alur Penelitian


PENGEMBANGAN SISTEM PENDUKUNG BIMBINGAN OLINE TUGAS AKHIR (BIOTA) BERBASIS ANDROID


BAB 3 METODE PENELITIAN

BAB IV HASIL DAN UJI COBA

BAB IV HASIL DAN UJICOBA. Berikut adalah tampilan hasil dan pembahasan dari penerapan metode

IMPLEMENTASI ONLINE TESTING DENGAN BATCH PROCESSING SYSTEM

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Perumusan Masalah

BAB III ANALISA DAN DESAIN SISTEM

BAB 2 LANDASAN TEORI. yang saling berinteraksi untuk mencapai tujuan. yang dimaksud dengan data dan informasi? Data adalah fakta fakta yang

BAB III CARA DAN METODOLOGI PENELITIAN

BAB III ANALISIS DAN DESAIN SISTEM

4. BAB IV ANALISIS DAN PERANCANGAN SISTEM. diusulkan perancangan sistem baru, dimana kinerja dari suatu sistem yang baru

BAB III METODE PENELITIAN

BAB III METODOLOGI PENELITIAN. dalam pengumpulan data atau informasi guna memecahkan permasalahan dan

BAB III METODE PENELITIAN

BAB III ANALISIS DAN PERANCANGAN

PEMANFAATAN ARDUINO DALAM PENGEMBANGAN SISTEM RUMAH PINTAR BERBASIS MOBILE DAN WEB (Studi Kasus : Penjadwalan Lampu Rumah)

STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Genap Tahun 2010/2011

BAB I PENDAHULUAN. alat komunikasi universal pada ruang lingkup internasional. Pembelajaran bahasa

BAB III OBJEK DAN METODOLOGI PENELITIAN. sesuai dengan pendapat Sugiyono (2003:58) mendefinisikan bahwa:

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM. telah dijelaskan pada bab sebelumnya. Analisis yang dilakukan bertujuan untuk

PERANGKAT LUNAK PEMBELAJARAN PANCAINDRA MANUSIA UNTUK TINGKAT PELAJAR SMP BERBASIS ANDROID

baris data atau rekaman data

1. PENDAHULUAN 1.1 LATAR BELAKANG

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

BAB III ANALISIS DAN DESAIN SISTEM

BAB I PENDAHULUAN. 1.1 Latar Belakang. 1.2 Rumusan masalah

APLIKASI PENJUALAN HANDPHONE

BAB III METODOLOGI PENELITIAN

Penggunaan Metode Pemrograman Berorientasi Objek Dalam Sistem Informasi Akademik Pada SMP Negeri 1 Pengadegan

ABSTRACT. vii. Abstract

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

SISTEM PENANDA KEPEMILIKAN FILE DOKUMEN MENGGUNAKAN METODE DIGITAL WATERMARK PADA FILE PENELITIAN DOSEN UNIVERSITAS MUSLIM INDONESIA

DAFTAR ISI. Halaman HALAMAN JUDUL LEMBAR PERSETUJUAN LEMBAR PENGESAHAN LEMBAR PERSEMBAHAN MOTTO ABSTRAK ABSTRACK

BAB II ANALISIS DAN PERANCANGAN. Pengertian dari Java adalah bahasa pemrograman. serbaguna. Java dapat digunakan untuk membuat suatu program

3.2. Analisa Masalah 3-1.

BAB I PENDAHULUAN. masyarakat yang tinggal di daerah terpencil, masyarakat di daerah-daerah konflik,

BAB IV HASIL DAN UJI COBA

BAB III METODE PENELITIAN. penelitian adalah pada semester Genap Tahun Pelajaran

BAB 1 PENDAHULUAN. Algoritma Banker dikemukakan oleh Edsger W.Djikstra dan merupakan salah satu

BAB III METODE PENELITIAN. Penelitian ini dilakukan di Jurusan Ilmu Komputer, Fakultas Matematika dan

IMPLEMENTASI DAN PENGUJIAN

BAB IV HASIL DAN UJI COBA

PERANCANGAN APLIKASI PENGACAKAN CITRA MENGGUNAKAN M-SEQUENCE BERDASARKAN PARAMETER

BAB IV HASIL DAN PEMBAHASAN

Transkripsi:

Implementasi Random Numbers Java untuk Menciptakan Missing Value dari suatu Tabel Jasman Pardede 1) 1) Teknik Informatika Fakultas Teknologi Industri, Institut Teknologi Nasional Jl. PKH. Hasan Mustapa No.23, Bandung 40124 Indonesia email : pardede_js@yahoo.com ABSTRAK Missing value dapat diartikan sebagai data atau informasi yang hilang atau tidak tersedia mengenai subjek penelitian pada variabel tertentu akibat faktor non sampling error. Missing value merupakan hal yang sangat sering ditemui dan digunakan di dalam pengembangan aplikasi data mining dan beberapa kasus yang berhubungan dengan bidang statistik. Pada beberapa penelitian terhadap suatu algoritma yang berhubungan dengan penanganan missing value, seperti algoritma CB*, TPDA, sangat membutuhkan data missing value. Hasil algoritma dengan missing value diharapkan akan menghasilkan kesimpulan yang hampir sama dengan data lengkap. Untuk membuktikan bahwa suatu algoritma dengan data lengkap dan data yang memiliki missing value memiliki kesimpulan yang hampir sama, maka diperlukan suatu data lengkap dan data missing value yang diperoleh dari data lengkapnya. Untuk itu diperlukan suatu aplikasi yang dapat menciptakan suatu data missing value yang diperoleh dari data lengkapnya. Pada penelitian ini akan mengimplementasikan Random Numbers Java, yaitu class Random yang terdapat pada package java.util, untuk menciptakan missing value dari suatu tabel yang memiliki data lengkap berdasarkan persentasi data yang akan dibangkitkan missing value-nya. Kata Kunci : Random Numbers, Java, missing value, algoritma, tabel

1. Pendahuluan Missing value dapat diartikan sebagai data atau informasi yang hilang atau tidak tersedia mengenai subjek penelitian pada variabel tertentu akibat faktor non sampling error. Hal ini disebabkan oleh beberapa hal diantaranya non-respon, kelalaian saat melakukan perekaman data atau bahkan oleh hal lain yang tidak diketahui sebabnya. Missing value merupakan hal yang sangat sering ditemui dan digunakan di dalam pengembangan aplikasi data mining dan beberapa kasus yang berhubungan dengan bidang statistik. Saat ini telah banyak metode yang digunakan dalam mengambil informasi di dalam kumpulan data yang lengkap diantaranya, algoritma B, algoritma PC dan lain sebagainya [7]. Disamping itu terdapat banyak metode yang digunakan di dalam menangani masalah nilai tidak lengkap (missing value) diantaranya algoritma K2, CB, BC, BSEM, CB* dan TPDA. Untuk membuktikan kedua metode itu dapat menghasilkan informasi yang hampir sama maka dapat dilakukan dengan mengimplementasikan data yang tidak ada missing value pada metode yang tidak ada missing value dan kemudian dari data awal dibangkitkan data yang missing value kemudian diterapkan salah satu metode yang menggunakan missing value apakah memberikan informasi yang hampir mendekati atau sama. Untuk membantu di dalam pembuktian kedua metode tersebut, maka pada penelitian ini peneliti akan mengimplementasikan Randomize Java untuk menciptakan tabel missing value. Sehingga akan dapat memberikan informasi bahwa kedua metode dapat dianggap menghasilkan informasi yang hampir mendekati nilai kebenarannya. Penelitian ini bertujuan untuk melakukan analisis, perancangan, dan pengimplementasian random numbers java untuk menciptakan missing value dari suatu tabel. 2. Studi Konsep Penciptaan Missing Value Pengembangan aplikasi perangkat lunak yang dapat memfasilitasi penciptaan missing value pada suatu tabel perlu memperhatikan beberapa hal penting yaitu pengertian bilangan acak, penciptaan bilangan acak pada java, pengertian missing value, serta algoritma penciptaan missing value yang digunakan pada penelitian ini. 2.1. Bilangan Acak (Random Number) Dasar pengembangan studi simulasi adalah kemampuan untuk menghasilkan bilangan acak, dimana suatu bilangan acak mewakili nilai suatu variabel acak yang didistribusikan secara seragam pada (0,1). Bilangan acak berarti suatu bilangan yang diambil dari sekumpulan bilangan, dimana tiap-tiap elemen dari kumpulan bilangan tersebut mempunyai peluang yang sama untuk terambil [4]. Proses pengambilan bilangan acak itu sendiri merupakan suatu random event (peristiwa acak), yang berarti peristiwa dimana proses dan hasilnya tidak dapat diperediksi. Algoritma pembangkit bilangan acak harus memenuhi syarat-syarat yang telah ditentukan pada Request For Command 1750 (RFC 1750), yaitu [6]: 1. Tidak dapat diperediksi, suatu algoritma pembangkit bilangan acak harus bersifat tidak dapat diperediksi hasil keluarannya. 2. Tahan akan skew (pembelokan), bila perangkat keras dimanipulasi maka algoritma dapat tahan terhadap manipulasi sumber bilangan tersebut hingga level tertentu yang tidak mungkin lagi dapat ditahan. 3. Memiliki fungsi penggabungan dan pengacakan, untuk mencegah penyerangan terhadap algoritma secara keseluruhan. Pembangkitan bilangan acak terbagi atas dua tipe, yaitu Pembangkitan Bilangan Acak Semu (pseudo-random), menggunakan rutinitas algoritma yang mengimplementasikan rumus matematika untuk menghasilkan bilangan yang terlihat acak, dan Pembangkitan Bilangan Acak Penuh (trully random), menghasilkan baris bilangan dari ekstraksi fenomena aktivitas fisika dan kemudian mengirimkannya kepada komputer melalui interface dengan port serial atau parallel. Kebanyakan bahasa komputer sudah mempunyai pembangkit bilangan acak terpasang yang dapat dipanggil untuk membangkitkan bilangan acak [3]. 2.2. Random Numbers Java Java menyediakan dua pendekatan dalam pembangkitan bilangan acak, yaitu melalui class java.lang.math dan java.util.random. Class java.lang.math mendefinisikan metode random yang akan mengembalikan bilangan pseudo-random antara 0.0 (inklusif) dan 1.0

(ekslusif). Jenis bilangan acak yang dapat diperoleh pada class Math adalah suatu nilai bertipe double. Class Random yang terdapat pada package java.util adalah pembangkit bilangan pseudo-random dengan menggunakan algoritma yang diambil dari The Art of Computer Programming oleh Donald Knuth [5]. Untuk menghasilkan bilangan acak yang lebih baik, kita dapat menggunakan class java.util.random. Class ini menyediakan pendekatan yang lebih praktis dan mendukung tipe-tipe lain selain double, termasuk distribusi Gaussian. 2.3. Missing Value Missing value merupakan salah satu penyebab suatu data dikatakan tidak valid atau masih merupakan data kotor. Missing value dengan jumlah banyak akan menghilangkan sejumlah informasi yang seharusnya dibutuhkan untuk diolah. Missing value dapat diartikan sebagai data atau informasi yang hilang atau tidak tersedia mengenai subjek penelitian pada variabel tertentu akibat faktor non sampling error. Faktor non sampling error yang dimaksud adalah [1] : 1. Interviewer recording error, terjadi akibat kealpaan petugas pengumpul data (pewawancara), misalnya ada sejumlah pertanyaan yang terlewatkan. 2. Respondent inability error, terjadi akibat ketidakmampuan responden dalam memberikan jawaban akurat, misalnya karena tidak memahami pertanyaan, bosan atau kelelahan (respondent fatigue) akhirnya responden mengosongkan sejumlah pertanyaan atau berhenti mengisi kuesioner di tengah jalan. 3. Unwillingness respondent error, tejadi karena responden tidak berkenan memberikan jawaban yang akurat, misalnya pertanyaan soal penghasilan, usia, berat badan, pengalaman melakukan pelanggaran hukum, dan lain-lain. Saat ini telah ada beberapa metode yang digunakan di dalam menangani missing value diantaranya Metode K-Means Imputation. Penggunaan missing value sangat penting peranannya dalam pengembangan aplikasi data mining, diantaranya algoritma yang berhubungan dengan missing value adalah algoritma K2, CB, BC, BSEM, CB*, TPDA dan lainlain. 2.4. Algoritma Menciptakan Missing Value Algoritma yang digunakan untuk menciptakan missing value pada penelitian ini adalah sebagai berikut : a. Tentukan persentasi data yang akan dibangkitkan missing value-nya. b. Hitung banyaknya baris dan kolom suatu tabel yang akan dibangkitkan missing value-nya. c. Bangkitkan bilangan acak dalam menentukan baris yang menjadi baris data yang hilang. d. Bangkitkan bilangan acak dalam menentukan kolom yang menjadi kolom data yang hilang. e. Cek apakah pada baris dan kolom yang diperoleh dari (c) dan (d) telah memiliki nilai null, jika ya ulangi langkah (c) dan (d). Jika tidak masuk ke langkah (f). f. Cek apakah pengubahan nilai baris dan kolom pada langkah (c) dan (d) mengakibatkan penghapusan satu baris (row) tabel, jika ya ulangi langkah (c) dan (d). Jika tidak masuk ke langkah (g). g. Ubah nilai tabel yang bersesuaian dengan baris dan kolom tabel yang didapatkan dari (c) dan (d) dengan nilai null. h. Lakukan proses (c) sampai (g) secara berulang sampai di dapatkan persentasi yang diminta sesuai dengan yang diberikan pada (a). 3. Hasil Percobaan Untuk menghasilkan bilangan acak dalam menentukan baris dan kolom suatu tabel yang akan dihilangkan, pada penelitian ini peneliti menggunakan class java.util.random, yaitu class yang penggunaannya menggunakan pendekatan yang lebih praktis dan juga mendukung tipe bilangan bulat (int). Penciptaan nilai missing value dari suatu tabel pada penelitian ini, mengikuti algoritma yang dinyatakan pada sub bab 2.4. Kebutuhan perangkat lunak dalam mendukung penciptaan missing value, memerlukan beberapa fungsionalitas seperti yang dinyatakan pada use case diagram pada Gambar 1.

Gambar 1 Use case diagram Gambar 2 Model konseptual aplikasi penciptaan missing value

3.1. Perancangan Sistem Berdasarkan kebutuhan fungsionalitas yang harus dipenuhi dalam memfasilitasi kebutuhan perangkat lunak seperti yang dinyatakan pada use case diagram pada Gambar 1, maka peneliti mendapatkan model konseptual dari aplikasi penciptaan missing value seperti yang dinyatakan pada Gambar 2. 3.2. Implementasi Sistem Perangkat lunak aplikasi, memerlukan dukungan perangkat lunak lain dalam implementasinya seperti, sistem operasi Windows atau Linux, bahasa pemrograman java dan database MySQL Server 5.0. 3.3. Teknik Pengujian Teknik pengujian yang digunakan adalah teknik pengujian black box testing. Pengujian ini memungkinkan pemrogram untuk memperoleh sekumpulan kondisi masukan (input) yang akan secara penuh menjalankan semua kebutuhan fungsional untuk sebuah program. Dalam hal ini diambil salah satu butir uji, yaitu CreateMissingValue seperti yang ditunjukkan pada Tabel 1. Tabel 1 Pengujian create missing value 5% Identifikasi AMVC-01 Nama Butir Uji CreateMissingValue Tujuan Media dalam menciptakan tabel missing value dan menyimpan hasil penciptaan data missing value ke tabel baru Deskripsi Pengguna menulis nilai persentasi ke teks field aplikasi kemudian tekan Proses Kondisi Awal Pengguna telah memilih tabel yang akan diciptakan missing value-nya Pengujian Skenario Uji 1. Masukkan nilai persentasi yang akan diciptakan nilai missing value-nya 2. Tekan Proses Kriteria Evaluasi Hasil Pengguna mempunyai hak untuk menciptakan tabel baru pada suatu database Kasus dan Hasil Uji (Data Normal) Masukan Harapan Pengamatan Kesimplan Bilangan Real [X] Terima [ ] Tolak Ciptakan tabel missing value dari tabel yang telah dipilih dengan nama tabel, namatabelawal_persentasi, kemudian jumlahkan nilai missing value dari setiap field yang dimiliki, kemudian tampilkan ke pengguna. Ciptakan tabel missing value dari tabel yang telah dipilih dengan nama tabel, namatabelawal_persentasi, kemudian jumlahkan nilai missing value dari setiap field yang dimiliki, kemudian tampilkan ke pengguna. Pada pengujian ini peneliti menggunakan tabel visitasia1 dengan jumlah data sebanyak 5000 data. Informasi tabel visitasia1 direpresentasikan seperti pada Gambar 3. Hasil pengujian create missing value dengan persentasi 5 % yang dilakukan oleh pengguna pada tabel visitasia1 direpresentasikan seperti pada Gambar 4. Proses pembangkitan bilangan acak dalam penentuan baris dan kolom yang akan dihilangkan datanya saat pengujian ini, diperoleh bahwa pada penghilangan data pertama dilakukan pada baris 1683 dan kolom 1, data kedua dilakukan pada baris 4874 dan kolom 3 dan seterusnya sampai 250 data telah dihilangkan, seperti yang ditunjukkan pada Gambar 5.

Pemilihan tabel Field nilai persentasi missing value Gambar 3 Display informasi tabel visitasia1 Missing value Tabel baru yang diciptakan Gambar 4 Hasil penciptaan missing value 5 % dari tabel visitasia1

(baris, kolom) Gambar 5 Proses penciptaan bilangan acak dalam menentukan baris dan kolom 4. Kesimpulan Berdasarkan penelitian yang dilakukan, beberapa kesimpulan yang dapat diambil sebagai berikut : 1. Pada penelitian ini telah mengimplementasikan Randomize Java, class Random yang ada pada packege java.util, untuk menciptakan tabel missing value dari suatu tabel dengan mengikuti algoritma yang dinyatakan pada sub bab 2.4. 2. Aplikasi yang dikembangkan dapat menciptakan nilai missing value sesuai dengan persentasi yang diharapkan pengguna dengan nilai missing value yang dapat berubahubah walaupun pada tabel yang sama dengan persentasi yang sama. Daftar Pustaka [1] Acock, A.C (2005), Working With Missing Values, Oregon State University, http://people.oregonstate.edu/~acock/gwoth-curves/worling%20with20missing%20value.pdf (diakses pada Juni 2010) [2] Gosling, James et al. (1996). The Java Language Specification, Sun Microsystems. [3] Knudsen, J.B. (1998). Java Cryptography, First Edition, O Reilly. [4] LavaRnd, Terms & Definitions : Pseudo-Random Number Generator, http://www.lavarnd.org/faq/prng.html (diakses pada Juni 2010) [5] Naughton, P.(1996), The Java HandBook, McGraw-Hill, Inc. [6] Request For Commands 1750. http://www.ietf.org/rfc/rfc1750.txt. (diakses pada juni 2010). [7] Sophia, A.(2005), Algoritm PC sebagai Alternatif Pendekatan Analisis Dependensi untuk Konstruksi Struktur Bayesian Network dalam Data Mining, Laporan Tugas Akhir, Departemen Teknik Informatika ITB