Wednesday, September 28, 2011

Pengalaman Pribadi pada Sistem Informasi

Sebelum menjelaskan mengenai pengalaman dalam analisa pada Sistem Informasi, ada beberapa hal yang ingin saya bagikan terlebihi dahulu mengenai Sistem Informasi, yaitu definisi dari Sistem Informasi itu sendiri, menurut saya secara singkat, Sistem Informasi adalah suatu gabungan Informasi/komponen itu sendiri dan beberapa aktivitas dari pengguna Informasi itu sendiri dengan tujuan untuk mendukung operasi dan manajemen nya, ringkas nya adalah keterkaitan antara suatu komponen dengan komponen lainnya untuk menghasilkan suatu Informasi.
Dan dalam definisi yang lebih luas nya ialah :
"sistem yang sering digunakan merujuk kepada interaksi antara orang, proses algoritmik, data, dan teknologi. Dalam pengertian ini, istilah ini digunakan untuk merujuk tidak hanya pada penggunaan organisasi teknologi informasi dan komunikasi (TIK), tetapi juga untuk cara di mana orang berinteraksi dengan teknologi ini dalam mendukung proses bisnis."

Pengalaman menggunakan Sistem informasi pertama saya adalah terjadi pada saat pengisian KRS pada PSMA ONLINE, terlihat di situ kita sebagai pengguna komputer di haruskan mengisi beberapa data diri, dan yang nantinya akan dimasukan ke dalam database yang sudah di bentuk untuk memunculkan Informasi data kita sendiri, hal tersebut adalah contoh dari sebuah interaksi pengguna nya dengan komputer itu sendiri, untuk mendapatkan Informasi. Hal kedua yaitu pada saat praktikum AP (Algoritma Pemrograman), visual basic pernah saya gunakan pada praktikum tersebut, visual basic juga merupakan suatu program yang digunakan untuk meng-Input suatu data / informasi kedalam database, dan menurut saya itu juga termasuk kedalam Sistem Informasi.

Monday, January 10, 2011

Dasar Algoritma dan Pemrograman

Algoritma adalah langkah-langkah atau urutan proses untuk mencapai sesuatu. Pada dasarnya, algoritma tidak hanya berkaitan dengan ilmu komputer. Sebagai contoh, langkag-langkah untuk memasak mie bisa dikatakan sebagai algoritma memasak mie
Dalam ilmu komputer, proses logis yang dilakukan secara berurutan untuk memecahkan sebuah permasalahan dengan bantuan komputer. Algoritma mengajarkan kita untuk mencari solusi terbaik dari setiap masalah yang ingin dipecahkan. Sedangkan bahasa pemrograman hanyalah sarana untuk menerjemahkan algoritma tersebut sehingga bisa dimengerti oleh komputer.

struktur algoritma secara umum :

nama program
initial state (is) : kondisi sebelum eksekusi program
final state (fs) : kondisi yang ingin dicapai

kamus : variabel yang dibutuhkan dalam program
algoritma : isi algoritma

contoh penulisan algoritma :

program tampil_nama
IS : user menginputkan nama
FS : nama inputan user ditampilkan

kamus
nama : string

algoritma
input(nama)
output(nama)

terjemahan dalam pascal :

program tampil_nama;
uses crt;

var
nama : string;

begin
write('masukan nama : '); readln(nama);
writeln('nama anda : ', nama);
readln;
end.

tiap tiap bagian nya, sbb :

[-] nama program
digunakan untuk menjelaskan atau memberi keterangan program apa sih yang kita buat. jadi buat memudahkan kita (dokumentasi). terus kalo dak diisi gimana ?? ya dak apa2. selama temen-temen inget tu program buat apa.

[-] IS dan FS
memberikan gambaran bagaimana sih program itu jalannya. kalo dalam pemrograman biasanya dibuat jadi bentuk komentar. penting dak ?? jawabannya tergantung. kalo program yang agan buat masih dalam skala kecil, ya dak masalah dak diisi. nah, kalo programnya kompleks plus gunain banyak fungsi ama prosedur, baru bermasalah kalo dak diisi silakan coba sendiri aja ntar apa masalahnya

[-] kamus
untuk tempat deklarasiin variabel yang dibutuin. buat yang baru belajar, biasakan mendeklarasikan variabel di awal, walau ada beberapa bahasa yang memungkinkan pendeklarasian variabel dimana aja. tujuannya, ya biar program agan rapi trus dak pusing (ini berlaku buat yang baru belajar, kalo udah expert mah terserah aja).
hal yang paling penting dalam pendeklarasian variabel adalah tipe dari variabel tersebut. selama ini mungkin kita tahu kalo bilangan bulan kita bilang bertipe integer, tapi integer pun ada banyak jenis, misalnya ada byte, word, long ingt, integer, dll. terus apa bedanya ??
bedanya adalah kemampuan untuk menyimpan nilai yang bisa direpresentasikan. Bingung ???

ini maksudnya :
tipe byte merepresentasikan bilangan 0-255, jadi kalo agan masukin angka 300, tidak akan bisa disimpan karena angka tertingginya 255. nilai yang lebih dari 255 ini akan diulang lg dari 0 jadi 256=0, 257=1, dst. 300 akan menjadi 44.

terus kalo udah tau apa gunanya ?? pertama buat nangkal error program. kayak contoh di atas, kita maunya mroses bilangan ampe 1000 tapi malah tipenya byte. yang kedua, menghemat memori. misalnya kita cuman butuh nilai yang kurang dari 100, biasanya buat menu, kita pake tipe integer (max value = 32767), itu mubasir. padahal byte aja udah cukup.

kemudian penamaan variabel juga perlu diperhatikan, usahakan nama variabel sesuai dengan fungsi variabel. misal kita buat variabel namanya "nama" tapi isinya ternyata umur. buat yang baru belajar, usahakan memberikan penamaan variabel yang baik and konstan, biar dak pusing sendiri

berikut adalah tipe variabel yang ada dalam pascal :
a. Bilangan bulat
ini dipake buat merepresentasikan bilangan bulat. operasi yang bisa dilakukan adalah semua operasi aritmatik kecuali pembagian, maksudnya integer : integer = real. jangan pernah manyimpan hasil pembagian integer di dalam integer
adapun jenis-jenisnya :
- Byte = 0 s/d +255
- Shortint = -128 s/d +127
- integer = -32768 s/d 32767
- Word = 0 s/d 65535
- Longint = -2147483648 s/d 2147483647

b. Bilangan real
dipake buat nyimpen bilangan yang ada koma-komanya (pecahan)

c. char
dipake buat nyimpen 1 karakter. kalo karakternya banyak, bisa disimpen di string. jadi string itu kumpulan dari beberapa char

d. boolean
dipake buat nyimpen nilai bener salah (true/false)

e. array atau tabel
dipake buat nyimpen banyak nilai. modelnya kayak laci-laci. penjelasan lebih lanjutnya ntar.

itu contoh beberapa variabel yang ada dalam pascal. buat bahasa pemrograman lain, variabelnya lain juga. silakan temen-temen cari tau sendiri (tanya mbah gogel).

selain variabel, ada juga yang namanya constanta. sesuai namanya, kalau constanta nilainya tetap, tidak berubah. berbeda dengan variabel yang nilainya bisa berubah-rubah.

[-] algoritma
disini kita menulis bagaimana sih langkah-langkah yang dilakukan buat mecahin masalah kita. hal yang perlu diperhatikan, compiler mekeksekusi syntax itu baris perbaris. jadi biasakan berpikir secara sistematis dan terurut.


demikian penjelasan mengenai struktur algoritma secara umum...




biar lebih mantab belajarnya kita langsung coba ke studi kasus aja ya.
ini dalah contoh kasus klasik dalam pemrograman.

[-] nama program
digunakan untuk menjelaskan atau memberi keterangan program apa sih yang kita buat. jadi buat memudahkan kita (dokumentasi). terus kalo dak diisi gimana ?? ya dak apa2. selama temen-temen inget tu program buat apa.

[-] IS dan FS
memberikan gambaran bagaimana sih program itu jalannya. kalo dalam pemrograman biasanya dibuat jadi bentuk komentar. penting dak ?? jawabannya tergantung. kalo program yang agan buat masih dalam skala kecil, ya dak masalah dak diisi. nah, kalo programnya kompleks plus gunain banyak fungsi ama prosedur, baru bermasalah kalo dak diisi silakan coba sendiri aja ntar apa masalahnya

[-] kamus
untuk tempat deklarasiin variabel yang dibutuin. buat yang baru belajar, biasakan mendeklarasikan variabel di awal, walau ada beberapa bahasa yang memungkinkan pendeklarasian variabel dimana aja. tujuannya, ya biar program agan rapi trus dak pusing (ini berlaku buat yang baru belajar, kalo udah expert mah terserah aja).
hal yang paling penting dalam pendeklarasian variabel adalah tipe dari variabel tersebut. selama ini mungkin kita tahu kalo bilangan bulan kita bilang bertipe integer, tapi integer pun ada banyak jenis, misalnya ada byte, word, long ingt, integer, dll. terus apa bedanya ??
bedanya adalah kemampuan untuk menyimpan nilai yang bisa direpresentasikan. Bingung ???

ini maksudnya :
tipe byte merepresentasikan bilangan 0-255, jadi kalo agan masukin angka 300, tidak akan bisa disimpan karena angka tertingginya 255. nilai yang lebih dari 255 ini akan diulang lg dari 0 jadi 256=0, 257=1, dst. 300 akan menjadi 44.

terus kalo udah tau apa gunanya ?? pertama buat nangkal error program. kayak contoh di atas, kita maunya mroses bilangan ampe 1000 tapi malah tipenya byte. yang kedua, menghemat memori. misalnya kita cuman butuh nilai yang kurang dari 100, biasanya buat menu, kita pake tipe integer (max value = 32767), itu mubasir. padahal byte aja udah cukup.

kemudian penamaan variabel juga perlu diperhatikan, usahakan nama variabel sesuai dengan fungsi variabel. misal kita buat variabel namanya "nama" tapi isinya ternyata umur. buat yang baru belajar, usahakan memberikan penamaan variabel yang baik and konstan, biar dak pusing sendiri

berikut adalah tipe variabel yang ada dalam pascal :
a. Bilangan bulat
ini dipake buat merepresentasikan bilangan bulat. operasi yang bisa dilakukan adalah semua operasi aritmatik kecuali pembagian, maksudnya integer : integer = real. jangan pernah manyimpan hasil pembagian integer di dalam integer
adapun jenis-jenisnya :
- Byte = 0 s/d +255
- Shortint = -128 s/d +127
- integer = -32768 s/d 32767
- Word = 0 s/d 65535
- Longint = -2147483648 s/d 2147483647

b. Bilangan real
dipake buat nyimpen bilangan yang ada koma-komanya (pecahan)

c. char
dipake buat nyimpen 1 karakter. kalo karakternya banyak, bisa disimpen di string. jadi string itu kumpulan dari beberapa char

d. boolean
dipake buat nyimpen nilai bener salah (true/false)

e. array atau tabel
dipake buat nyimpen banyak nilai. modelnya kayak laci-laci. penjelasan lebih lanjutnya ntar.

itu contoh beberapa variabel yang ada dalam pascal. buat bahasa pemrograman lain, variabelnya lain juga. silakan temen-temen cari tau sendiri (tanya mbah gogel).

selain variabel, ada juga yang namanya constanta. sesuai namanya, kalau constanta nilainya tetap, tidak berubah. berbeda dengan variabel yang nilainya bisa berubah-rubah.

[-] algoritma
disini kita menulis bagaimana sih langkah-langkah yang dilakukan buat mecahin masalah kita. hal yang perlu diperhatikan, compiler mekeksekusi syntax itu baris perbaris. jadi biasakan berpikir secara sistematis dan terurut.


demikian penjelasan mengenai struktur algoritma secara umum...

SUMBER

Ajax Autocompleter dengan PHP

Tentunya sudah pernah melihat si 'embah Google' khan! google menerapkan ajax auto completer pada textbox pencariannya! misalkan ketika kita mengetikkan kata ajax pada textbox pencarian maka secara otomatis google akan menampilkan kata yang terkait dengan ajax. Nah, kata ajax tutorial, ajax control toolkit, ajax examples,dsb merupakan ajax auto completer!

Selain berfungsi sebagai pembantu atau pelengkap kata yang akan dicari, dapat berfungsi juga untuk meminimalisir terjadi kesalahan penulisan. Ane mencoba akan sharing membuat ajax autocompleter dengan menggunakan bahasa pemrograman PHP (PHP versi 5).

Skenario :

* Suatu ketika universitas 'X' ingin melakukan pencarian mahasiswanya berdasarkan nama lengkapnya! misal. ingin mencari nama 'aditya nursyahbani'. Ketika diketikkan nama tsb dan klik tombol cari hasil pencarianpun muncul mahasiswa dengan nama tsb.

* Misal universitas 'X' tersebut melakukan query pencarian dengan "SELECT x FROM y WHERE x = '$katakunci' " pada aplikasinya. Artinya kita harus mengetikan nama yang lengkap dan benar2 sesuai dengan namanya. Permasalahan: pencarian spesifik, harus mengetikkan nama dengan benar dan tepat jika tidak, pencarian tidak ditemukan.

* Misal universitas 'X' tersebut melakukan query pencarian dengan "SELECT x FROM y WHERE x LIKE '$katakunci%' " pada aplikasinya. Artinya aplikasi mencari berdasarkan kata yang mengandung atau mirip dengan kata kunci dimana '%' dapat digantikan kata atau frasa dari a-z. Permasalahan yang timbul ketika nama yang akan dicari sangat banyak (pasaran, red) misal. 30 org. Mau ga mau harus mengetikkan nama lengkapnya juga! xixixi... ditambah lagi nama org yang mau dicari panjang gilaa... =).

* Ajax Autocompleter solusinya! kita buat ajax autocompleter dengan mengambil data dari database.


Persiapan :

* Webserver (Apache or IIS)

* MySQL

* PHP5. (ane menggunakan paket XAMPP yg sudah termasuk apache,php,MySQL,dll)

* Web browser yang mendukung AJAX. (penulis menggunakan mozilla firefox)

* IDE menggunakan Macromedia Dreamweaver atau apalah sesuka hati


Langkah-Langkahnya :

* Pertama buat databasenya, gunakan phpmyadmin. Caranya jalankan XAMPP-nya, buka web browser (Mozilla Firefox) dan ketikkan http://localhost/phpmyadmin dan create database dengan nama ajax. Kemudian pilih tab menu import dan browse file hasil dumpingan dengan nama ajax.sql yang dapat didownload pada menu download dibawah.

* Langkah selanjutnya, buat folder autocomplete pada root directory atau jika menggunakan XAMPP yang diinstal di drive C, letakkan folder tsb pada 'C:\xampp\htdocs\buat folder autocomplete disini'.

Buat file template dengan nama Index.html, letakkan pada folder autocomplete
Buat file PHP dengan nama Proses.php, letakkan pada folder autocomplete
Finally, Testing aplikasi dengan mengetikkan URL pada web browser : http//localhost/autocomplete .

Download Source Code :

Ajax.sql

jquery-1.2.1.pack.js

upArrow.png

SUMBER