Recent twitter entries...

Kamis, 29 Desember 2011

Pengertian Komputer Server (Gateway)

Komputer Server (Gateway)
Komputer server (gateway) adalah merupakan penghubung antara computer
workstation dalam jaringan warnet dengan internet, dimana fungsinya adalah sebagai
penyalur paket TCP/IP. Dengan mempergunakan software proxy dan 1 (satu) buah
alamat IP yang terintegrasi ke internet dari ISP, maka seluruh komputer workstation
dalam jaringan warnet dapat mempergunakan akses internet.

Pengertian Warung Internet

Pengertian Warung Internet
Terminologi “Kubarnates (dalam bahasa Inggris)” berasal dari bahasa Yunani kuno
untuk merekayasa kata “Cybernatics” yaitu menamai suatu program studi baru yang
mengkaji dan mendalami tentang sistem “Control” dan “Communication” yang ada
hubunganya pada masing-masing (internal) maupun interaksi (eksternal) antara
mahluk ciptaan Tuhan dan mesin hasil rekayasa manusia
Dua kata (Control dan Communication) atau 2 C yang menjadi dasar dari
Cybernatics telah berkembang menjadi 3 (tiga) kata atau 3 C yaitu computer,
Communication, dan Content pada Cybernatics di era global milenium ini. Penggalan
kata Cyber kemudian menjadi awal dari berbagai istilah baru diantaranya Cyber-Cafe
yang dalam peristilahan bahasa Indonesia lebih dikenal dengan sebutan Warung
Internet atau biasa disingkat warnet.
Warung Internet adalah jasa yang ditawar oleh pemodel / pengelola jasa
internet untuk para pengguna yang membutuhkan informasi yang tersedia di Internet.

Pengertian Topologi

Topologi adalah bentuk tata letak dari hubungan antar komputer. Secara umum ada 3
(tiga) model topologi fisik yang sering dipergunakan didalam LAN yaitu:
1. Topologi Model Bus
2. Topologi Model Cincin (Ring)
3. Topologi Model Bintang (Star)

Pengertian Jaringan Komputer

Jaringan Komputer adalah hubungan antara beberapa komputer, peripheral
(misalnya modem, printer) dan peralatan pendukung lainya (misalnya telepon, fax)
yang saling dihubungkan satu dengan yang lain untuk dapat dipergunakan secara
bersama-sama. Jumlah komputer, peripheral dan peralatan pendukung lainnya yang
dihubungkan dapat bervariasi mulai dari minimal 2 (dua) unit sampai dengan beberapa
ratus unit. Setiap peralatan yang saling dihubungkan tersebut didalam pengertian
jaringan disebut sebagai sebuah Node.
Teknologi fisik sebuah jaringan komputer dapat diklasifikasikan atas 2 (dua)
bagian, yaitu:
1. Local Area Network (LAN) adalah sebuah jaringan dimana hubungan yang
terjadi hanya terbatas pada satu lokasi saja, misalnnya dalam sebuah
gedung. Media penghubung yang dipergunakan biasanya adalah sebuah
kabel.
2. Wide Area Network (WAN) adalah suatu jaringan yang terpisah oleh
sebuah area yang sangat luas, misalnya antar kota atau bahkan antar
negara. Komunikasi yang terjadi diantara jaringan ini dilakukan melalui
media telepon, satelit, dan bisa juga dipergunakan transmisi gelombang
mikro.
Manfaat yang akan diperoleh dengan membuat jaringan komputer antara lain,
yaitu :
1. Memberikan kesempatan kepada pengguna komputer untuk
mempergunakan sumber daya secara bersama-sama, seperti penggunaan
printer maupun memakai koneksi internet bersama.
2. Optimalisasi pemakaian perangkat sehingga tercapainya efisiensi seperti
tidak perlunya masing-masing komputer dilengkapi dengan printer
dikarenakan adanya jaringan sehingga 2 (dua) atau lebih komputer dapat
mempergunakan 1 (satu) printer.
3. Komunikasi antar sistem operasi yang berbeda sehingga tidak perlu
dalam sebuah jaringan komputer semuanya harus memakai sistem operasi
yang sama.

Pengertian Java

Pengenalan Java
Apa itu Java ?
Java adalah salah satu bahasa pemrograman berorientasi objek (OOPObject
Oriented Programming). Paradigma OOP menyelesaikan
masalah dengan merepresentasikan masalah ke model objek.
Keutamaan Java disbanding bahasa pemrograman lain:
- Cross platform, dengan adanya Java Virtual Machine(JVM)
- Pengembangannya didukung oleh programmer secara luas
- Automatic Garbage Collection, membebaskan programmer dari
tugas manajemen memori

Kelebihan Java dibandingkan dengan C++

Kelebihan Java dibandingkan dengan C++
o Pembuat program java telah merancang java untuk
menghilangkan pengalokasian dan dealokasi memori secara
manual, karena java memiliki Garbage Collection.
o Diperkenalkannya deklarasi array yang sebenarnya dan
menghilangkan aritmatika pointer. Hal ini yang sering
menyebabkan memori overwrite.
o Di hilangkannya multiple inheritance, mereka menggantinya
dengan interface.

EDISI JAVA

EDISI JAVA
Java adalah bahasa yang dapat di jalankan dimanapun dan
disembarang platform apapun, diberagam lingkungan : internet,
intranet, consumer Electronic products dan computer Applications.
The Java 2 platform tersedia dalam 3 edisi untuk keperluan
berbeda. Untuk beragam aplikasi yang dibuat dengan bahasa java,
java dipaketkan dalan edisi2 berikut :
1. Java 2 Standard Edition ( J2SE )
2. Java 2 Enterprise Edition ( J2EE )
3. Java 2 Micro Edition ( J2ME )
Masing – masing edisi berisi java 2 Software Development Kit (
J2SDK ) untuk mengembangkan aplikasi dan java 2 Runtime
Environment ( J2RE ) untuk menjalankan aplikasi.

SEJARAH JAVA

Proyek Java dimulai pada tahun 1991, ketika sejumlah insinyur
perusahaan Sun yang dimotori oleh James Gosling mempunyai
keinginan untuk mendesain sebuah bahasa komputer kecil yang dapat
dipergunakan untuk peralatan konsumen seperti kotak tombol saluran TV.
Proyek ini kemudian diberi nama sandi Green.
Keharusan untuk membuat bahasa yang kecil , dan kode yang
ketat mendorong mereka untuk menghidupkan kembali model yang
pernah dicoba oleh bahasa UCSD Pascal, yaitu mendesain sebuah
bahasa yang portable yang menghasilkan kode intermediate. Kode
intermediate ini kemudian dapat digunakan pada banyak komputer yang
interpreternya telah disesuaikan.
Karena orang-orang Sun memiliki latar belakang sebagai pemakai
unix sehingga mereka lebih menggunakan C++ sebagai basis bahasa
pemrograman mereka, maka mereka secara khusus mengembangkan
bahasa yang berorientasi objek bukan berorientasi prosedur. Seperti yang
dikatakan Gosling ”Secara keseluruhan, bahasa hanyalah sarana, bukan
merupakan tujuan akhir”. Dan Gosling memutuskan menyebut bahasanya
dengan nama “Oak” (diambil dari nama pohon yang tumbuh tepat diluar
jendela kantornya di Sun), tetapi kemudian nama Oak diubah menjadi
java, karena nama Oak merupakan nama bahasa komputer yang sudah
ada sebelumnya.
Pada tahun 1994 sebagian besar orang menggunakan mosaic,
browser web yang tidak diperdagangkan yang berasal dari pusat
Supercomputing Universitas Illinois pada tahun 1993.( Mosaic sebagian
ditulis oleh Marc Andreessen dengan bayaran $6.85 per jam, sebagai
mahasiswa yang melakukan studi praktek. Di kemudian hari ia meraih
ketenaran sebagai salah seorang pendiri dan pemimpin teknologi di
netscape)
Browser yang sesungguhnya dibangun oleh Patrick Naughton dan
Jonathan Payne dan berkembang ke dalam browser HotJava yang kita
miliki saat ini. Browser HotJava ditulis dalam Java untuk menunjukkan
kemampuan Java. Tetapi para pembuat juga memiliki ide tentang suatu
kekuatan yang saat ini disebut dengan applet, sehingga mereka membuat
browser yang mampu penerjemahkan kode byte tingkat menengah.
“Teknologi yang Terbukti” ini diperlihatkan pada SunWorld ’95 pada
tanggal 23 mei 1995, yang mengilhami keranjingan terhadap Java terus
berlanjut.
Kriteria “Kertas Putih” Java
Penulis Java telah menulis pengaruh “Kertas Putih” yang
menjelaskan tujuan rancangan dan keunggulannya. Kertas mereka
disusun lewat 11 kriteria berikut :
Sederhana (Simple)
Syntax untuk Java seperti syntax pada C++ tetapi syntax Java tidak
memerlukan header file, pointer arithmatic (atau bahkan pointer syntax),
struktur union, operator overloading, class virtual base, dan yang lainnya.
Jika anda mengenal C++ dengan baik, maka anda dapat berpindah ke
syntax Java dengan mudah tetapi jika tidak, anda pasti tidak berpendapat
bahwa Java sederhana.
Berorientasi Objek (Object Oriented)
Rancangan berorientasi objek merupakan suatu teknik yang
memusatkan rancangan pada data (objek) dan interface. Fasilitas
pemrograman berorientasi objek pada Java pada dasarnya adalah sama
dengan C++. Feature pemrograman berorientasi objek pada Java benarbenar
sebanding dengan C++, perbedaan utama antara Java dengan C++
terletak pada penurunanberganda (multiple inheritance), untuk ini Java
memiliki cara penyelesaian yang lebih baik.
Terdistribusi (Distributed)
Java memiliki library rutin yang luas untuk dirangkai pada protokol
TCP/IP sepetrti HTTP dan FTP dengan mudah. Aplikasi Java dapat
membuka dan mengakses objek untuk segala macam NET lewat URL
sama mudahnya seperti yang biasa dilakukan seorang programmer ketika
mengakses file sistem secara lokal.
Kuat (Robust)
Java dimaksudkan untuk membuat suatu program yang benarbenar
dapat dipercaya dalam berbagai hal. Java banyak menekankan
pada pengecekan awal untuk kemungkinan terjadinya masalah,
pengecekan pada saat run0time dan mengurangi kemungkinan timbulnya
kesalahan (error). Perbedaan utama antara Java dan C++ adalah Java
memiliki sebuah model pointer yang mengurangi kemungkinan penimpaan
(overwriting) pada memory dan kerusakan data (data corrupt).
Aman (Secure)
Java dimaksudkan untuk digunakan pada jaringan terdistribusi.
Sebelum sampai pada bagian tersebut, penekanan terutama ditujukan
pada masalah keamanan. Java memungkinkan penyusunan program
yang bebas virus, sistem yang bebas dari kerusakan.
Netral Arsitektur (Architecture Neutral)
Kompiler membangkitkan sebuah format file dengan objek
arsitektur syaraf, program yang di kompile dapat dijalankan pada banyak
prosesor, disini diberikan sistem run time dari Java. Kompiler Java
melakukannya dengan membangkitkan instruksi-instruksi kode byte yang
tidak dapat dilakukan oleh arsitektur komputer tertentu. Dan yang lebih
baiik Java dirancang untuk mempermudah penterjemahan pada banyak
komputer dengan mudah dan diterjemahkan pada komputer asal pada
saat run-time.
Portabel (Portable)
Tidak seperti pada C dan C++, di Java terdapat ketergantungan
pada saat implementasi (implement dependent). ukuran dari tipe data
primitif ditentukan, sebagaimana kelakuan aritmatik padanya. Librari atau
pustaka merupakan bagian dari sistem yang mendefinisikan interface
yang portabel.
Interpreter
Interpreter Java dapat meng-eksekusi kode byte Java secara
langsung pada komputer-komputer yang memiliki interpreter. Dan karena
proses linking dalam Java merupakan proses yang kenaikannya tahap
demi tahapdan berbobot ringan, maka proses pengembangan dapat
menjadi lebih cepat dan masih dalam penelitian.
Kinerja Yang Tinggi (High Performance)
Meskipun kinerja kode byte yang di interpretasi biasanya lebih dari
memadai, tetapi masih terdapat situasi yang memerlukan kinerja yang
lebih tinggi. Kode byte dapat diterjemahkan (pada saat run-time) de dalam
kode mesin untuk CPU tertentu dimana aplikasi sedang berjalan.
Multithreaded
Multithreading adalah kemampuan sebuah program untuk
melakukan lebih dari satu pekerjaan sekaligus. Keuntunga dari
multithreading adalah sifat respons yang interaktif dan real-time.
Dinamis
Dalam sejumlah hal, Java merupakan bahasa pemrograman yang
lebih dinamis dibandingkan dengan C atau C++. Java dirancang untuk
beradaptasi dengan lingkungan yang terus berkembang. Librari dapat
dengan mudah menambah metode dan variabel contoh yang baru tanpa
banyak mempengaruhi klien. Informasi tipr run-time dalam Java adalah
langsung (straigtforward).

Komponen Utama Database

Komponen Utama Database
Sebuah sistem database terdiri dari 4 (empat) komponen utama, yaitu :
a. Perangkat Keras (Hardware)
Merupakan perangkat keras yang dibutuhkan dalam pengelolaan database,
berupa komputer beserta seluruh kelengkapan yang dibutuhkan, seperti
prosesor, memori, harddisk sebagai media penyimpanan datanya, dan lain
sebagainya.
b. Data
Merupakan komponen yang akan diolah sehingga bernilai informasi dan dapat
dijadikan sebagai bahan pengambilan keputusan.
c. Perangkat Lunak (Software)
Perangkat lunak, dalam hal ini DBMS, berfungsi sebagai aplikasi untuk
mengelola database.
d. Pengguna (User)
Ada beberapa jenis/tipe pengguna terhadap suatu sistem database, yaitu :
1. Database Manager
Adalah satu modul program yang menyediakan antar muka (interface)
antara penyimpanan data tingkat rendah dalam database dengan program
aplikasi dan query yang diajukan ke sistem database.
2. Database Administrator (DBA)
Adalah orang yang mempunyai kekuasaan sebagai pusat pengontrol
terhadap seluruh sistem ,baik data maupun program yang mengakses
data.
Fungsi seorang database administrator adalah :
Mendefinisikan pola struktur database
Mendefiniskan struktur penyimpanan dan metode akses
Mampu memodifikasi pola dan organisasi fisik.
Memberikan kekuasaan pada user untuk mengakses data.
Menspesifikasikan keharusan/paksaan integritas data.
3. Database User
Pemakai database berdasarkan cara mereka berinteraksi terhadap sistem
di bagi atas :
a. Programer Aplikasi (PA)
Adalah seorang profesional komputer yang berinteraksi terhadap
sistem database dengan menulis program dan menggunakan Data
Manipulation Language (DML) yang dibuat dengan bahasa
pemrograman, seperti bahasa C, Pascal, Cobol, dan lain-lain.
Program-program yang dibuatnya disebut dengan program aplikasi.
b. User Mahir (Casual User)
Adalah pemakai yang berinteraksi dengan sistem database
menggunakan fasilitas query yang telah disediakan oleh DBMS dan
telah mahir menggunakannya.
c. User Umum (Naive User)
Adalah pemakai yang tidak berpengalaman, berinteraksi dengan
sistem database tanpa menulis program dan query, tapi hanya
menjalankan program-program aplikasi yang telah dibuat oleh
programer aplikasi.
d. User Khusus (Specialized user)
Adalah pemakai yang menulis aplikasi database tidak dalam kerangka
pemrosesan data secara tradisional tetapi untuk keperluan khusus,
seperti untuk aplikasi Artificial Inteligent, sistem pakar, pengolahan
citra dan lain-lain.

Pengelolaan Data Manual vs Database

Pengelolaan Data Manual vs Database
Secara umum pengelolaan data secara manual hanya cocok untuk mengelola data
dalam jumlah kecil dan informasi yang diharapkan terhadap data tersebut bersifat
monoton dan tidak banyak berulang. Kelemahan yang terdapat dalam pengelolaan data
secara manual adalah :
a. Duplikasi data
Duplikasi data terjadi karena masing-masing bagian mengelola data secara
sendiri-sendiri. Sehingga data yang sama tersimpan pada berbagai tempat.
Misalnya : Bagian kemahasiswaan telah menyimpan dan mengelola data
mahasiswa untuk kepentingannya, tapi di bagian jurusan juga menyimpan dan
mengelola data mahasiswa sesuai dengan kepentingannya juga.
b. Terbatasnya berbagi data
Hal inilah yang menyebabkan terjadi duplikasi data, karena antara satu bagian
dengan bagian lainnya tidak saling berhubungan atau berdiri sendiri.
c. Ketidakonsistennya data
Ketidakkonsistennya data terjadi karena terjadipenyimpanan dan pengelolaan
data yang sama di berbagai tempat. Misalnya : Si Dodi adalah mahasiswa
jurusan manajemen, pada semester 3 Dodipindah ke jurusan akuntansi. Bagian
kemahasiswaan telah mencatat dan menyimpan data Dodi sebagai mahasiswa
jurusan akuntansi. Tapi di bagian jurusan manajemen, karena tidak adanya
informasi, maka si Dodi tetap tercatat sebagai mahasiswa jurusan manajemen.
Tentu hal seperti ini akan berakibat fatal, bukan !
d. Kurangnya integritas data
Karena adanya ketidakkonsistenan data mengakibatkan kurangnya Integritas
terhadap data. Integritas menyangkut dalam hal kevalidan data.
e. Kesulitan dalam mendapatkan informasi
Misalnya pada suatu saat, kepala akademik menginginkan data mahasiswa
dengan IPK diatas 3.00. Maka tentu hal ini akan menghabiskan waktu yang
lama untuk memprosesnya, apalagi kalau jumlah data yang diolah sudah
mencapai lebih dari ribuan record.
f. Ketidakluwesan
Kurangnya respon dalam hal menghadapi perubahan dan pengembangan atas
informasi yang diinginkan. Misalnya, kalau terjadiperubahan terhadap data
yang diinginkan, maka haruslah diulang dari awal lagi. Begitu juga halnya
dengan tingkat kompatibilitas dengan perkembangan perangkat lunak di masa
depan.
Semua kelemahan-kelemahan dalam pengelolaan data secara manual diatas dapat
diatasi dengan pengelolaan data dalam suatu sistem database. Berikut keuntungan
menggunakan database dalam mengelola suatu sistem informasi ;
a. Duplikasi data dapat diminimalkan.
Duplikasi data dapat diminimalkan, dan biasanya data yang duplikat tersebut
merupakan field kunci. Hal ini memang tidak bisa di hindari, karena field kunci
ini digunakan nantinya sebagai key untuk hubungan antar tabel dan
menyangkut integritas serta independensi data.
b. Integritas data tinggi
Tingkat kevalidan data tinggi, karena data yang sama saling berelasi, sehingga
apabila ada perubahan pada suatu data, maka data yang sama difile yang lain
otomatis juga berubah.
c. Independensi data
Tingkat ketergantungan data sangat tinggi, dimana anda tidak bisa melakukan
perubahan terhadap suatu data, jika data tersebut sedang dipakai oleh file lain.
Misalnya ; Anda tidak dapat menghapus data matakuliah tertentu pada file
matakuliah, kalau matakuliah tersebut sedang diambil oleh mahasiswa pada file
KRS misalnya.
d. Konsistensi data tinggi
Ini berhubungan dengan independensi data, sehingga tingkat konsistensi data
jadi tinggi.
e. Dapat berbagi (sharing) data
Ini merupakan salah satu keunggulan dari pengelolaan data dengan sistem
database, dimana anda dapat saling berbagi dalam penggunaan file, baik
bersifat jaringan maupun client server.
f. Tingkat keamanan tinggi
Adanya pemberian password dan hak akses pada suatu file mengakibatkan
hanya orang yang berhak saja yang bisa mengakses file tersebut. Sehingga
lebih aman.
g. Mudahnya mendapatkan data
Proses mendapatkan data dan informasi pada database dapat dilakukan
dengan mudah, terutama menggunakan Structure Query Language (SQL),
yang merupakan bahasa standar dalam DBMS.

Database Management Sistem (DBMS)

Database Management Sistem (DBMS)
Database Management Sistem atau disingkat DBMS adalah perangkat lunak
(Software) yang berfungsi untuk mengelola database, mulai dari membuat database itu
sendiri, sampai dengan proses-proses yang berlaku dalam database tersebut, baik
berupa entry, edit, hapus, query terhadap data, membuat laporan dan lain sebagainya
secara efektif dan efisien. Salah satu jenis DBMS yang sangat terkenal saat ini adalah
Relational DBMS (RDBMS), yang merepresentasikan data dalam bentuk tabel-tabel
yang saling berhubungan. Sebuah tabel disusun dalam bentuk baris (record) dan kolom
(field)
Banyak sekali berkembang perangkat lunak RDBMS ini, misalnya MySQL, Oracle,
Sybase, dBase, MS. SQL, Microsoft Access (MS. Access) dan lain-lain.
Pada praktek nantinya, anda menggunakan perangkat lunak MS Access versi 2002,
karena perangkat lunak ini sudah termasuk kedalam paket aplikasi office dari Microsoft
XP. Dan yang terpenting MS. Access 2002 telah mencakup semua kebutuhan anda
terhadap pengelolaan database.
Ada tiga kelompok perintah yang digunakan dalam mengelola dan mengorganisasikan
data dalam RDBMS, yaitu :
1. Data Definition Language
Merupakan perintah-perintah yang digunakan oleh seorang Database Administrator
untuk mendefinisikan struktur dari database, baik membuat tabel baru, menentukan
struktur penyimpanan tabel, model relasi antar tabel, validasi data, dan lain
sebagainya.
2. Data Manipulation Language (DML)
Perintah-perintah yang digunakan untuk memanipulasi dan mengambil data pada
suatu database. Manipulasi yang dapat dilakukan terhadap data adalah :
Penambahan data
Penyisipan data
Penghapusan data
Pengubahan data
DML merupakan bahasa yang memudahkan pengguna dalam mengakses
database. Ada dua jenis DML :
a. Prosedural, mengharuskan pengguna untuk menentukan spesifikasi data apa
yang dibutuhkan dan bagaimana cara mendapatkannya. Contoh paket
bahasanya adalah dBase III, FoxBase, FoxPro.
b. Non Prosedural, pengguna hanya menentukan data apa yang dibutuhkan
tanpa harus tahu bagaimana cara mendapatkannya. Contoh paket bahasanya
diberi nama Structural Query Language (SQL).
3. Data Control Language
Bagian ini berkenaan dengan cara mengendalikan data, seperti siapa saja yang
bisa melihat isi data, bagaimana data bisa digunakan oleh banyak user, dan lainlain.
Lebih mengarah ke segi sekuritas data.

Pengertian Database

Pengertian Database.
Banyak sekali definisi tentang database yang diberikan oleh para pakar dibidang ini.
Database terdiri dari dua penggalan kata yaitu data dan base, yang artinya berbasiskan
pada data, tetapi secara konseptual, database diartikan sebuah koleksi atau kumpulan
data-data yang saling berhubungan (relation), disusun menurut aturan tertentu
secara logis, sehingga menghasilkan informasi. Sebuah informasi yang berdiri
sendiri tidaklah dikatakan database

pengertian E-COMMERCE

1.1 PENDAHULUAN
Walaupun istilah Electronic Commerce baru beberapa tahun terakhir mendapat
perhatian, sebenarnya Electronic Commerce telah ada dalam berbagai bentuk
selama lebih dari 20 tahun. Teknologi yang disebut dengan Electronic Data
Interchange (EDI) dan Electronic Funds Transfer (EFT) pertama kali diperkenalkan
pada akhir tahun 1970-an. Pertumbuhan penggunaan kartu kredit, Automated Teller
Machines dan perbankan via telepon di tahun 1980-an juga merupakan bentukbentuk
Electronic Commerce.
Komersialisasi dan privatisasi internet yang meningkat beberapa tahun yang lalu,
telah menjadi dasar pertumbuhan Electronic Commerce. Infrastruktur digital yang
menyediakan sarana efisien untuk komunikasi dan pertukaran informasi menjadi
media baru yang menarik untuk Electronic Commerce. Di masa lalu, dunia bisnis
bisa melakukan aktivitas antara satu dan lainnya melalui jaringan khusus tapi
pertumbuhan drastis dari internet telah merubah paradigma tersebut dan akhirnya
menjadikannya lebih luas. Electronic Commerce tradisional saat ini bisa dilakukan
oleh pendatang baru dengan skala international.
Istilah e-commerce dapat saja diartikan berbeda-beda oleh setiap orang, yang
penting untuk dimengerti adalah persamaan-persamaannya : e-commerce
melibatkan lebih dari satu perusahaan, dan dapat diaplikasikan hampir di setiap jenis
hubungan bisnis.
Sampai saat ini, website hanya terbatas pada informasi yang diberikan untuk
konsumen mengenai perusahaan dan apa yang ditawarkan oleh perusahaan
tersebut. Para pengunjung di website dapat melakukan lebih daripada hanya melihat
informasi ini, mereka bisa mengirimkan e-mail atau mengisi sebuah formulir, dan
membuat perjanjian yang lebih dari sekedar arti perjanjian secara tradisional. Ecommerce
mengizinkan anda untuk menjual produk-produk dan jasa secara online.
Calon pelanggan atau konsumen dapat menemukan website anda, membaca dan
melihat produk-produk, memesan dan membayar produk-produk tersebut secara
online.
Terdapat dua jenis perusahaan yang melakukan bisnis di internet. Jenis yang
pertama adalah perusahaan yang semata-mata hanya berada di internet.
Perusahaan jenis ini tidak mempunya toko atau melakukan bisnis secara tradisional.
Sebagai contoh : amazon.com dan cdnow.com. Sedangkan jenis perusahaan lainnya
menggunakan e-commerce di internet sebagai pengganti kegiatan bisnis yang ada.
Contoh jenis perusahaan ini adalah Barnes dan Noble. Selain menjual buku-buku di
tokonya ke negara lain, Barnes dan Noble mengoperasikan website-nya dimana
konsumen dapat mencari buku-buku yang menarik baginya untuk dibeli, dan
kemudian mereka dapat memesannya melalui website tersebut
Banyak perusahaan telah berpindah ke e-commerce dengan berbagai alasan.
Dengan menggunakan internet untuk menjual dan memasarkan produk-produknya,
perusahaan tersebut dapat menjangkau banyak pelanggan di seluruh dunia. Dengan
menggunakan teknologi baru ini, banyak perusahaan dapat memajukan penjualan
produk-produknya. Sebagai contoh : perusahaan komputer Compaq mulai menjual
komputer pribadi secara online pada musim gugur tahun lalu (1999), dan
menggunakan search engine Alta Vista, yang ditampilkan sebanyak 40 juta kali per
hari untuk mengajak pelanggan ke alamat compaq.com dan shopping.com, dimana
komputer pribadi tersebut dijual. Sebagai hasilnya, penjualan komputer pribadi
Compaq sangat tinggi yaitu hampir tiga kali lebih banyak dari yang diharapkan.

Jumat, 25 November 2011

PENGERTIAN DASAR FLOWCHART


PENGERTIAN DASAR FLOWCHART
Adalah Bagan-bagan yang mempunyai arus yang menggambarkan
langkah-langkah penyelesaian suatu masalah. Flowchart merupakan cara
penyajian dari suatu algoritma
Tujuan Membuat Flowchat :
Menggambarkan suatu tahapan penyelesaian masalah
Secara sederhana, terurai, rapi dan jelas
Menggunakan simbol-simbol standar
Dalam penulisan Flowchart dikenal dua model, yaitu Sistem Flowchart dan
Program Flowchart
System Flowchart :
Yaitu : bagan Yang memperlihatkan urutan prosedure dan proses dari
beberapa file di dalam media tertentu.
Melalui flowchart ini terlihat jenis media penyimpanan yang dipakai dalam
pengolahan data.
Selain itu juga menggambarkan file yang dipakai sebagai input dan
output.
Tidak digunakan untuk menggambarkan urutan langkah untuk
memecahkan masalah
Hanya untuk menggambarkan prosedur dalam sistem yang dibentuk

Analisis Algoritma/ Makalah Algoritma


Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
BAB I
ALGORITMA
1.1. Pendahuluan
Algoritma memegang peranan penting dalam bidang pemrograman. Sebegitu
pentingnya suatu algoritma, sehingga perlu dipahami konsep dasar algoritma. Apalagi
untuk seorang programer, tentu diperlukan suatu algoritma sehingga dapat membuat
program yang lebih efektif dan efisien. Bagi kebanyakan orang, algoritma sangat
membantu dalam memahami konsep logika pemrograman.
Algoritma adalah kumpulan instruksi yang dibuat secara jelas untuk menunjukan
langkah-langkah penyelesaian suatu masalah. Pada umumnya algoritma kurang lebih sama
dengan suatu prosedur yang sering dilakukan setiap hari, misalnya prosedur untuk
mengganti ban bocor/pecah, prosedur pemakaian telepon umum, prosedur membuat kue
dan lain-lain.
Dalam bidang komputer, misalnya EDP (Elektronik Data Processing) atau MIS
(Management Information System), algoritma sering dimanfaatkan untuk menyelesaikan
suatu masalah atau untuk proses pengambilan keputusan. Seorang sistem analisis (analisist
system) tentunya menggunakan algoritma untuk merancang suatu sistem. Bagi seorang
programer, algoritma digunakan untuk membuat modul-modul program.
Guna memahami suatu algoritma, harus dimiliki pengetahuan dasar matematika
karena pada dasarnya algoritma lahir dari konsep logika matematika. Disini yang perlu
dilatih adalah kemampuan logikanya agar benar-benar bisa menyusun langkah-langkah
penyelesaian masalah dengan baik.
Dalam buku ajar ini, disajikan konsep dasar dan analisis algoritma. Pada bagian
konsep dasar dibahas komponen utama, desain, dan contoh pembuatan. Selanjutnya, untuk
mendapatkan algoritma yang efisien serta mendapatkan rumusan matematika sebagai
ukuran kerumitan (kompleksitas) maka dibahas analisis algoritma dengan menggunakan
notasi O (big O).
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
1.2. Konsep Dasar Algoritma
Algoritma adalah kumpulan instruksi/perintah yang dibuat secara jelas dan
sistematis berdasarkan urutan yang logis (logika) untuk penyelesaian suatu masalah.
French,C.S. (1984) menyatakan sejumlah konsep yang mempunyai relevansi
dengan masalah rancangan program yaitu kemampuan komputer, kesulitan dan ketepatan.
Penerapan dari konsep tersebut biasanya digunakan dalam rancangan algoritma. Dalam
merancang sebuah algoritma, Fletcher (1991) memberikan beberapa cara atau metode yaitu
kumpulan perintah, ekspresi, tabel instruksi, program komputer, kode semu dan flow chart,
sedangkan Knuth (1973) menyarankan algoritma fundamental. Untuk keperluan
matematika dan program komputer metode yang sering digunakan yaitu :
1. Diagram Alir (Flow Chart)
2. Kode Semu (Pseudo Code)
3. Algoritma Fundamental
Knuth (1973) menyatakan 5 komponen utama dalam algoritma yaitu finiteness,
definiteness, input, output dan effectiveness. Sehingga dalam merancang sebuah algoritma
ada 3 (tiga) komponen yang harus ada yaitu:
1. Komponen masukan (input)
Komponen ini biasanya terdiri dari pemilihan variable, jenis variable, tipe variable,
konstanta dan parameter (dalam fungsi).
2. Komponen keluaran (output)
Komponen ini merupakan tujuan dari perancangan algoritma dan program.
Permasalahan yang diselesaikan dalam algoritma dan program harus ditampilkan dalam
komponen keluaran. Karakteristik keluaran yang baik adalah benar (menjawab)
permasalahan dan tampilan yang ramah (Frendly).
3. Komponen proses (processing)
Komponen ini merupakan bagian utama dan terpenting dalam merancang sebuah
algoritma. Dalam bagian ini terdapat logika masalah, logika algoritma (sintaksis dan
semantik), rumusan, metode (rekursi, perbandingan, penggabungan, pengurangan dan
lain-lain).
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
Konsep Logika
Matematika Format Algoritma
FlowChart
Algoritma
Fundamental
Knuth, 1973
Pseudo Code
Gambar 1.1. Struktur Hubungan dan Jenis Algoritma
1.3. Diagram Alir
Algoritma ini menggunakan sejumlah simbol untuk menyatakan kegiatan-kegiatan
secara keseluruhan. Simbol dan artinya dalam diagram alir sebagai berikut:
Proses Input dan
output
Prosedur/
Sub routin Fungsi
Keputusan
Terminal
(start dan end
Looping
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
Hubungan Paralel
Ya Tidak
Garis alir
Gambar 1.2. Simbol dan arti Diagram Alir
1.4. Kode Semu
Dalam merancang sebuah algoritma menggunakan kode semu, komponenkomponen
input, output dan proses harus terdefinisi secara jelas. Disamping itu beberapa
ketentuan dan aturan pendefinisian memang secara baku tidak ditemukan dalam beberapa
buku literatur, namun aturan-aturan yang di ajukan dibawah ini akan membantu
mempermudah perancangan algoritma dan evaluasi serta analisis algoritma.
Aturan-aturan tersebut :
1. Kode semu harus dimulai dengan judul. Aturan ini secara mudah dapat dimengerti
fungsi dan manfaatnya. Judul harus dapat menjelaskan spesifikasi masalah yang
dirancang algoritmanya. Penulisannya dapat dengan huruf kapital semuanya atau tidak.
2. Kode semu harus ditulis dengan nomor yang menunjukkan urutan-urutan langkahlangkah
dalam algoritma.
3. Pendeklarasian variabel, konstanta, parameter, rumus dan pernyataan harus sederhana
Dokumen
Hubungan
Pusat data
Input Manual
Operasi
Manual
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
Contoh. 1.1
Bandingkan kedua algoritma ini. Masalah : Mencari akar-akar persamaan non linear dengan
metode bagi dua.
A. Kode semu yang dirancang tidak menggunakan aturan.
Penyelesaian:
1. Formulasikan sebuah persaman non linier
2. Cari nilai bawah xb yang menyebabkan nilai fungsif(xb) positif atau negatif,
kemudian cari nilai atas xa yang menyebabkan nilai fungsi f(xa) berlawanan (positif
negatif) dengan nilai bawah.
3. Bandingkan nilai f(xb) dengan f(xa)
4. Jika f(xb).f(xa) > 0 maka ulangi langkah 2
5. Jika f(xb).f(xa) < 0 maka bagi dua interval xb dengan xa. Ulangi langkah 3
6. Jika f(xb).f(xa) = 0 maka iterasi berhenti, akar-akar persamaan x diperoleh
B. Kode semu yang dirancang menggunakan aturan
Penyelesaian:
Algoritma Bagi Dua
1. Formulasikan masalah f(x)
2. Cari taksiran bawah (xb) dan taksiran atas (xa)
3. Bandingkan dan evaluasi, jika f(xb).f(xa) > 0 maka ulangi langkah 2
4. Jika f(xb).f(xa) < 0 maka bagi dua interval dengan (xb+xa) / 2, kembali bandingkan
dan evaluasi.
5. Jika f(xb).f(xa) = 0 maka iterasi berhenti, akar-akar persamaan x diperoleh
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 6
1.5. Algoritma Fundamental
Knuth (1973)menyajikan format algoritma yang dapat digunakan secara bebas
untuk berbagai bahasa pemrograman, artinya dapat dengan mudah diimplementasikan
menggunakan Pascal, C, Fortran, PL atau BASIC. Secara umum notasi dan aturan yang
digunakan sebagai berikut :
1. Nama/judul algoritma harus ditulis dengan huruf kapital
Contoh : Algoritma BAGI DUA
2. Berikan komentar dan penjelasan pendahuluan. Penjelasan secara singkat tentang
algoritma.
Contoh : Algoritma BAGI DUA
Mencari akar persamaan dengan taksiran pertama xb dan xa
3. Langkah-langkah. Algoritma tersusun menurut nomor langkah-langkah diawali dengan
‘[......]’ untuk memberikan keterangan tentang langkah tersebut.
Contoh : 1. [formulasikan f(x)]
4. Komentar (comments). Komentar untuk penjelasan bagi pembaca ditulis dengan tanda
(......)
5. Pernyataan dan struktur Kontrol
Pernyataan adalah perintah yang terdapat didalam algoritm, sedangkan struktur kontrol
untuk mengendalikan pernyataan yang digunakan. Pernyataan dan struktur kontrol
terdiri dari :
a. Perintah pemberian nilai menggunakan ↔,
Contoh : A B (artinya A = B)
X 0 (artinya x bernilai 0)
X↔Y (artinya x dan y saling tukar)
b. Pernyataan IF
Perintah yang digunakan:
IF kondisi
Then.....
IF kondisi
Then.....
.......
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
else.....
c. Pernyataan Case
Perintah ini untuk menyeleksi pilihan tertentu. Bentuknya :
Select Case (ekspresi)
Case nilai 1 :
Case nilai 2 :
.
.
.
Case nilai n :
Default :
d. Pernyataan Repeat
Perintah pengulangan digunakan dengan bentuk :
Repeat for indeks = barisan nilai
Repeat while ekspresi logika
Repeat for indeks = barisan nilai while ekspresi logika
e. Pernyataan Goto dan Exitloop
Perintah untuk melompat ke langkah yang telah ditentukan dan keluar dari
pengulangan.
Bentuknya :
Goto step.....
Exitloop
f. Pernyataan Exit
Perintah untuk menghentikan algoritma.
6. Nama-nama variabel harus ditulis dengan huruf besar
7. Input dan output
Data dapat dimasukkan melalui variabel dengan pernyataan READ dengan bentuk :
Read : NAMA VARIABEL
Untuk mencetak pesan-pesan/tulisan (diapit dengan tanda kutip) dan juga variabel
digunakan pernyataan :
Write : tulisan dan atau nama variabel
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
8. Prosedur
Bentuk prosedur digunakan untuk modul algoritma yang berdiri sendiri untuk
menyelesaikan masalah tertentu. Pemakaian prosedur untuk masalah sederhana,
sedangkan algoritma untuk masalah umum. Bentuk yang digunakan :
Procedure nama prosedur
9. Fungsi
Sama dengan prosedur menggunakan bentuk :
Function nama fungsi
Contoh 1.2.
Masalah : Mencari elemen terbesar dari data dengan n bilangan.
Buatlah algoritma dari masalah ini menggunakan
a. Kode Semu
b. Diagram Alir
c. Algoritma Fundamental
Penyelesaian :
a. Kode semu (Pseudo Code)
Algoritma Maksimum
1. Mula-mula masukkan bilangan dalam register xi ke dalam register yang
dinamakan maks.
2. Untuk i = 2,3,....,n, lakukan : Bandingkan bilangan dalam register xi dengan
bilangan dalam register maks. Jika bilangan dalam register xi lebih besar
daripada bilangan dalam register maks, pindahkan bilangan dalam register xi ke
register maks; jika tidak jangan lakukan apa-apa.
3. Terakhir, bilangan dalam register maks adalah elemen terbesar di antara n
bilangan.
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
b. FlowChart (Diagram Alir)
Mulai
x1 = Maks
FOR i = 2 TO n
IF xi > Maks
Maks = xi
NEXT i
Maks
End
tidak
ya
c. Algoritma Fundamental
Algoritma MAKSIMUM
Mencari elemen terbesar di dalam data dengan n bilangan.
1. [Inisialisasi]
Maks x1
2. [Mulai Loop]
I 2
3. [Naikkan Pencacah]
I I + 1
4. [Bandingkan]
IF Maks < xi
THEN Maks xi ELSE GOTO 3
5. [Ulangi Loop]
GOTO 3
6. [Selesai]
Exit
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 
1.6. Analisis Algoritma dan Kompleksitas Algoritma
Seorang programer atau sistem analisis paling tidak harus memiliki dasar untuk
menganalisis algoritma. Analisis algoritma sangat membantu di dalam meningkatkan
efisiensi program. Kecanggihan suatu program bukan dilihat dari tampilan program, tetapi
berdasarkan efisiensi algoritma yang terdapat didalam program tersebut.
Pembuatan program komputer tidak terlepas dari algoritma, apalagi program yang
dibuat sangat kompleks. Program dapat dibuat dengan mengabaikan algoritma, tetapi
jangan heran bila seandainya ada orang lain yang membuat program seperti program anda
tersebut memiliki akses yang lebih cepat dan memakai memori yang sangat sedikit.
Analisis algoritma adalah bahasan utama dalam ilmu komputer. Dalam menguji
suatu algoritma, dibutuhkan beberapa kriteria untuk mengukur efisiensi algoritma.
Terdapat dua tipe analisis algoritma, yaitu :
1. Memeriksa kebenaran algoritma
Dapat dilakukan dengan cara perurutan, memeriksa bentuk logika, implementasi
algoritma, pengujian dengan data dan menggunakan cara matematika untuk
membuktikan kebenaran.
2. Penyederhanaan Algoritma
Membagi algoritma menjadi bentuk yang sederhana.
1.7. Notasi O (Big O)
Misalkan 4 program yang mensorting n bilangan dengan fungsi yang menyatakan
sejumlah langkah yang dijumlahkan masing-masing program untuk sorting n bilangan :
f1(n) = n, f2(n) = n2, f3 (n) = 2n, f4(n) = n!
Bila n = 4 maka f1 (n) = 4, f2 (n) = f3 (n) = 16 dan f4 (n) = 24 sedangkan untuk n = 100,
program ketiga akan memerlukan 21000 langkah.
Dalam analisis sebuah algoritma biasanya yang dijadikan ukuran adalah operasi
aljabar seperti penjumlahan, pengurangan, perkalian dan pembagian, proses pengulangan
(looping/Iterasi), proses pengurutan (sorting) dan proses pencarian (searching).
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 11
Definisi 1.1
Misalkan S sebuah himpunan fungsi riil untuk setiap domain D, dengan D = N, Z atau R.
Misalkan f,g S. Dikatakan f = O(g) jika ada bilangan positif c dan k sehingga
f (x) c g(x) untuk semua xD yang x > k
Dalam analisis algoritma ada 3 bagian yang dapat dianalisis yaitu kecepatan waktu,
kapasitas biaya dan kapasitas ruang. Ketiganya menggunakan notasi O.
Teorema 1.1
Misalkan f(x) = anxn + an-1xn-1 + ........ + a1x + a0 adalah fungsi polinom dan misalkan g(x) =
xn maka f= O(g).
Bukti :
Misalkan 1 1 0 c a a ... a a n n = + + + + . Misalkan x sebuah bilangan riil yang lebih dari 1,
maka
( )
...
...
...
( ) ...
1 1 0
1 1 0
1 0
1
1
1 0
cx c g x
a a a a x
a x a x a x a x
a x a x a x a
F x a x a x a
n
n
n n
n n n
n
n
n
n
n
n
n
n
n
= =
= + + + +
≤ + + + +
≤ + + + +
= + + +
Sehingga f = O(g)
Teorema 1.2.
Misalkan S sebuah himpunan fungsi dengan dominan D yang sama dengan D = n, Z atau R
dan kodomain (0,~). Misalkan f1, f2, g1, g2 S sehingga f1 = O(g1) dan f2 = O(g2), maka
dengan hubungan O diperoleh :
a). f1 + f2 = O(maks{g1,g2}) dan
b). f1 . f2 = O(g1,g2)
Buku Ajar Metode Numerik, didanai oleh Proyek HEDS tahun 2002 12
Bukti:
a) Karena f1=O(g1) dan f2=O(g2), ada bilangan positif c1, k1, c2, dan k2
sedemikian sehingga jika x D dan x > k1 maka |f1(x)| < c1 |g1(x)| dan
jika x > k2 maka |f2(x)| < c2|g2(x)|. Misalkan k=maks{k1, k2} dan c = c1
+ c2, maka
|(f1 + f2)(x)| = (f1+f2)(x)
= f1(x) + f2(x)
<c1|g1(x)| +c2|g2(x)|
= c1g1(x) + c2g2(x)
c1 max {g1(x), g2(x)}+c2 max{g1(x),g2(x)}
= (c1+c2) max {g1(x),g2(x)}
= c max{g1(x),g2(x)}
= c |(max{g1,g2})(x)|
maka f1 + f2 = O(max{g1,g2}(x))
b) |(f1f2)(x)| = |f1(x)| |f2(x)|
c1 |g1(x)| c2|g2(x)|
= c1 c2 |g1(x)g2(x)|
= c1 c2 |(g1g2)(x)|
= c |(g1g2)(x)|
sehingga f1f2 = O(g1g2)