Anda di halaman 1dari 26

7

BAB 2
LANDASAN TEORI

2.1 Visualisasi Data

Teknik visualisasi adalah konversi data ke dalam format visual atau tabel
sehingga karakteristik dari data dan relasi di antara item data atau atribut dapat di
analisis dan dilaporkan. Teknik visualisasi memudahkan manusia untuk
menangkap konsep dari data yang ditampilkan karena pada dasarnya manusia
lebih mudah mengartikan sebuah gambar daripada teks yang menjelaskan
tentang makna gambar tersebut.
Teknik visualisasi dapat diterapkan ke dalam sistem informasi atau
aplikasi dengan koneksi database, sehingga data dapat diproses dan ditampilkan
secara dinamis, real time. Hal ini bertujuan untuk memperluas pemanfaatan data.
(Teknik Visualisasi Grafik Berbasis Web Di Atas Platform Open Source oleh
Indri J uwita Asmara, Elmi Achelia, Wildan Maulana, Rini Wijayanti, Yan
Rianto dari Pusat Penelitian Perkembangan Iptek, Lembaga Ilmu Pengetahuan
Indonesia)
http://journal.uii.ac.id/index.php/Snati/article/viewFile/1275/1083

2.2 Database dan DBMS

Pada dasarnya, data belum mempunyai arti bagi penerimanya dan
masih memerlukan adanya suatu pengolahan. Data bisa berwujud suatu
8

keadaan, gambar, suara, huruf, angka, matematika, bahasa ataupun simbol-


simbol lainnya yang bisa digunakan sebagai bahan untuk melihat lingkungan,
objek, kejadian ataupun suatu konsep.
Untuk mendapatkan informasi dari data yang dimiliki, maka data perlu
dibentuk dalam format tertentu. Langkah pertama adalah dengan
mengorganisasikan data ke dalam bentuk database. Database merupakan
sekumpulan data yang berelasi secara logikal dan sebuah deskripsi data yang
dirancang untuk menemukan informasi yang dibutuhkan oleh sebuah
organisasi (Connolly dan Begg, 2005, p15).
Database ini perlu dibuat, dirancang, dipelihara dan diatur aksesnya
dan yang melakukan semuanya itu biasa disebut Database Management
System. Database Management System adalah sebuah sistem software yang
memungkinkan user untuk mendefinisikan, membuat, memelihara, dan
mengontrol akses ke database (Connolly dan Begg, 2005, p17). Dengan
adanya DBMS (Database Management System) tentunya database akan
memiliki kelebihan sebagai berikut (Connolly dan Begg, 2005, p26):
1.1 Kontrol terhadap pengulangan data
1.2 Data yang dihasilkan konsisten
1.3 Pada beberapa data yang sama akan semakin banyak informasi yang
diperoleh
1.4 Data dapat dipakai secara bersama-sama
1.5 Memperbaiki integritas data
1.6 Memperbaiki keamanan data
1.7 Adanya penetapan standarisasi
9

1.8 Skala ekonomi


1.9 Mengatasi konflik kebutuhan
1.10 Memperbaiki pengaksesan data dan respons data
1.11 Meningkatkan produktivitas
1.12 Memperbaiki pemeliharaan data melalui ketergantungan data dengan
data yang lain
1.13 Meningkatkan concurrency
1.14 Meningkatkan layanan backup data dan recovery

Namun di lain pihak tentunya DBMS (Database Management System)
memiliki kekurangan sebagai berikut:
a. Memiliki sistem yang kompleks yang mengakibatkan ukuran menjadi
semakin besar
b. DBMS memiliki harga yang bervariasi tergantung fungsi dan kebutuhan
c. Penambahan biaya untuk perangkat keras yang dibutuhkan
d. Penambahan biaya konversi, contohnya melatih staff untuk mempelajari
penggunaan DBMS
e. Karena DBMS dirancang untuk mengakses lebih dari satu aplikasi
sehingga performasinya menurun dibandingkan sebuah sistem file-based.
f. Kegagalan DBMS mengakibatkan operasi tidak dapat berjalan

Dalam praktiknya, DBMS ini menjadi alat yang sangat membantu
dalam meningkatkan performa dari database ketika database ini bersangkutan
dengan OLTP (Online Transactional Processing). OLTP adalah sebuah sistem
10

yang berkaitan dengan user agar user dapat memasukkan, mengubah, atau
menghapus data transaksi yang terjadi sehari-hari yang disimpan di dalam
DBMS.

2.3 Java

2.3.1 Sejarah Teknologi Java



Bahasa pemograman J ava merupakan suatu bahasa pemograman yang
dikembangkan oleh Sun Microsystems di California pada tahun 1991, yang
dipimpin oleh J ames Gosling. Bahasa pemograman J ava adalah bahasa
pemograman berbasis object oriented yang modern. J ava memiliki sintaks
yang mirip dengan bahasa C dan C++, tetapu J ava menghilangkan banyak
kelebihan C dan C++ yang menjadikan C dan C++ menjadi kompleks,
membingungkan dan tidak aman. J ava platform dikembangkan untuk
mengakomodasikan masalah pembangunan piranti lunak untuk media yang
terhubung ke jaringan. J ava dirancang untuk mendukung arsitektur komputer
yang berbeda-beda. Untuk mencapai kebutuhan tersebut, sebuah program
yang telah dikompilasi harus dapat dipindahkan di dalam jaringan, bekerja di
client dan menjamin keamanan client yang memakainya.
J ava merupakan salah satu bahasa pemograman yang multi-platform,
maksudnya bahasa pemrograman ini dapat dijalankan pada sistem operasi
yang berbeda-beda. Namun untuk dapat menjalankan program java, sistem
opreasi tersebut harus memiliki java Virtual Machine (J VM) yang sudah ter-
install di dalamnya (http://java.sun.com/docs/books/vmspec/2nd-
11

edition/html/Introduction.doc.html). Pengembang menawarkan pilihan tiga


edisi platform J ava tergantung pada kebutuhan:
1. Teknologi J ava kecil dan perangkat mobile (J 2ME)
2. Teknologi J ava di PC desktop (J 2SE)
3. Teknologi J ava di Web Services (J 2EE)

2.3.2 Java Virtual Machine

J ava Virtual Machine (J VM) merupakan inti dari J ava platfrom. J VM
sebenarnya adalah komponen teknologi yang bertanggung jawab untuk
menangani perangkat keras, sistem operasi, hasil kompilasi dari proagram
J ava (file.class) dan melindungi pengguna dari program yang tidak dikenali.
J VM adalah sebuah mesin komputasi yang abstrak. Seperti sebuah
mesin komputasi yang nyata, J VM memilki suatu rangkaian instruksi dan
memanipulasi area memory pada saat runtime. Sangat beralasaan dalam
memgimplementasikan suatu bahasa pemograman dengan menggunakan
sebuat virtual machine, karena dengan menggunakan mesin virtual tersebut ,
bahasa pemrograman yang dibuat hanya tergantung kepada mesin virtual
tersebut, tidak lagi tergantung terhadap jenis perangkat keras yang digunakan
oleh mesin atau jenis sistem opreasi yang digunakan, karena penanganan
terhadap mesin dan sistem operasi merupakan tugas dari J VM.
J VM tidak mengenali bahasa pemograman J ava, J VM hanya
mengenali format binary, format file clas. Sebuah file class mengandung
instruksi J VM atau yang disebut bytecode
12

(http://java.sun.com/docs/books/vmspec/2nd-
editon/html/Introduction.do.html).

2.3.3 Object Oriented dalam Java

Di dalam J ava, konsep Object Oriented merupakan hal yang wajib
dikuasai sebelum menggunakan bahasa ini. Untuk mengerti akan OOP lebih
lanjut, maka perlu diketahui apa itu object, apa itu class, bagaimana object dan
class berhubungan, dan bagaimana object berkomunikasi, dan lain-lain.

2.3.3.1 Object
Dalam kehidupan nyata object memiliki dua karakteristik. Semua
object memiliki state dan behavior. Sebagai contoh, anjing memiliki state
(nama, warna, keturunan, menjadi lapar) dan mempunyai behavior (menyalak,
mengambil, menggoyangkan ekor). Sepeda memiliki state (gigi, pedal, dua
roda, jumlah gigi) dan mempunyai behavior (mengerem, mempercepat,
memperlampat ,mengganti gigi).
Object di dalam bahasa pemrograman adalah model dari object dunia nyata,
yang juga mempunyai state dan behavior. Object menyimpan state mereka
dalam satu atau lebih variabel (property) dan behavior dengan method (fungsi
yang berhubungan sebuah object) seperti yang digambarkan pada gambar 2.1
(http://java.sun.com/docs/books/tutorial/java/concepts/object.html).


13

2.3.3.2 Class
Dalam kehidupan nyata, anda mungkin memiliki banyak benda
(object) yang sama. Contohnya, sepeda anda hanyalah satu dari sekian banyak
sepeda yang ada di dunia. Dalam pandangan object oriented, sepeda anda
dapat dikatakan sebagai sebuah instance dari class yang bernama sepeda.
Sepeda mempunyai beberapa state dan behavior seperti yang telah disebutkan
pada pembahasan tentang object di atas. Walaupun demikian, masing-masing
object sepeda dapat memiliki state yang berbeda dengan object sepeda
lainnya.



Saat membuat sepeda, pabrik dapat membuat banyak sepeda dari
sebuah cetakan yang sama. Akan sangat tidak efisien bila membuat sebuah
cetakan baru untuk setiap yang diproduksi. Dalam program, cetakan untuk
membuat sebuah object disebut class. Gambaran umum suatu clas secara
14

visual dapat dilihat pada gambar 2.2


(http://java.sun.com/docs/books/tutorial/java/concepts/class.html).

2.3.3.3 Inheritance
Sepeda gunung, sepeda balap, dan tandem merupakan jenis-jenis
sepeda. Dalam OOP sepeda gunung, sepeda balap, dan tandem merupakan
subclass dari class sepeda. Demikian pula class sepeda merupakan superclass
dari sepeda gunung, sepeda balap. Dan tandem. Hubungan class-class tersebut
dapt dilihat pada gambar 2.3.


Masing-masing subclass mewarisi state (property) dari superclass,
selain itu subclass juga mewarisi behavior (method) dari superclass. Subclass
dapat membuat property dan method yang sama dengan yang diwariskan oleh
15

superclass. Method yang sama tersebut yang disebut sebagai override method
(http://java.sun.com/docs/books/tutorial/java/concepts/inheritance.html).

2.3.3.4 Interface
Di dalam bahasa pemrograman J ava, interface berarti sebuah media
yang berhubungan dengan bagaimana sebuah object berinteraksi dengan
object lainnya. Sebuah interface dapat dianalogikan seperti sebuah protocol
(an agreed on behavior).
Untuk membuat suat program J ava yang dinamis yang dapat memanggil
program J ava lainnya, dapat digunakan J ava Reflection dan ClassLoader.
(http://java.sun.com/docs/books/tutorial/java/concepts/interface.html).

2.3.4 Reflection dan ClassLoader

Format binary file yang berekstension .class merupakan file yang
dihasilkan dari proses kompilasi yang dilakukan oleh kompiler java dari
source code program java. File binary class memiliki format tertentu yang
mengikuti spesifikasi yang dikeluarkan oleh Sun sehingga J ava Virtual
Machine dapat mengenali format tersebut dan menggunakannya.
Dengan menggunakan reflection kita dapat mengakses informasi
internal dari sebuah class dari file class-nya sehingga dapat di-load ke dalam
J VM, dan dengan menggunakan reflection dapat menuliskan program yang
berhubungan dengan sebuah class ketika saat program tersebut di eksekusi
bukan pada source code. Dengan kemampuan ini, menjadikan reflection
16

sebuah alat yang berguna untuk membangun aplikasi yang bersifat fleksibel,
dimana perubahan atau penanganan class dapat dilakukan pada saat runtime.
Bahasa seperti c dan c++mengkompilasi source code menjadi bahasa native
memerlukan bagian linking setelah sourc code dikompilasi. Proses linking
mengabungkan kode dari beberapa hasil source yang dikompilasi dengan kode
library untuk membentuk program yang dapat di eksekusi. Sedangkan java
menerapkan konsep yang berbeda, dengan menggunakan java, class-class
yang dihasilkan oleh kompiler akan di-load oleh J VM ketika diperlukan,
sehingga tidak diperlukan proses linking dengan bahasa native dari mesin.
J ava menerapkan late binding, sehingga suatu aplikasi dapat ditulis
menggunakan suatu interface tertentu denga implementasi aktual tidak
disebutkan sampai ketika pada saat run time.
Aturan untuk melakukan loading suatu clas telah dijelaskan secara
terperinci didalma spesifikasi J VM. Prinsip dasarnya adalah suatu class akan
di-load oleh J VM ketika dibutuhkan. Setiap class yang di-load mungkin
memiliki class lain yang tergantung kepada class tersebut, sehingga proses
loading tersebut menjadi rekursif.
Definisi class di dalam J ava dan spesifikasi dari J VM memberikan
suatu kerangka kerja yang sangat hebat dalam menciptakan suatu assembly
code ketika run time. Melalui kegunaan dari suatu class loader, fleksibilitas
dari sebuat class loader memungkinkan untuk melakukan loading suatu class
secara dinamis ketika suatu aplikasi dijalankan.
17

Suatu harga yang mesti dibayar dengan fleksibilitas tersebut adalah kerja
mesin yang lebih ketika pertama menjalankan suatu aplikasi. Beberapa ratus
class haris di-load oleh J VM sebelum dia dpat mengeksekusi aplikasi tersebut.
J ava menyediakan paket java.lang.reflection di mana di dalam paket tersebut
terdapat beberapak class yang digunakan untuk mendukung reflection, antara
lain :

1. class Class
Merupakan class yang terdapat method sebagai class loader, yaitu
dengan static method forName(), kita dapat membaca suatu byte code dari
sebuah class dan dijadikan object dari class Class.

2. class Constructor
Merupakan class yang digunkan untuk mendapatkan constructor dari
suatu class.

3. class Field
Merupakan class yang digunakan untuk mendapatkan attribute dari
suatu class.

4. class Method
Merupakan class yang digunakan untuk mendapatkan method dari
suatu class. J ava juga mendukung dalam pembuatan aplikasi yang terhubung
melalui jaringan. Banyak teknik yang dapat digunkan untuk membuat aplikasi
18

J ava yang saling berhubungan melalui jaringan intranet maupun internet.


Salah satu yang dapat digunakan adalah Remoter Method Invocation (J VM)
(Green, 2003).

2.3.5 J2SE

J 2SE adalah J ava 2 Standard Edition, adalah tools yang digunakan
untuk membuat stand alone application biasa dan applet. Di dalamnya ada
istilah2x lagi ada j2sdk (ini adalah standard development kit, diperlukan kalau
anda ingin membuat 'J 2SE' application),

J RE (ini adalah runtime environment, ini diperlukan untuk
menjalankan stand alone java application dan applet), di dalam jre sendiri ada
yang namanya jvm (java virtual machine, adalah engine yang mengeksekusi
java bytecode) dan standard api/library. Yang nempel dibelakangnya adalah
versinya, yang terbaru sekarang adalah 1.5.0 beta 2, sedangkan yang sudah
stabil adalah versi 1.4.2

Keuntungan dalam menggunakan J 2SE adalah
Ease of Development
Scalability and Performance
Monitoring and Manageability
Desktop Client
19

(http://java.sun.com/developer/technicalArticles/releases/j2se15/)

Edisi Standar J ava Platform ini dirancang khusus untuk
mengembangkan aman, portabel, aplikasi kinerja tinggi untuk jangkauan
terluas platform komputer desktop mungkin, termasuk Apple Macintosh,
Linux, Microsoft Windows dan Sun Solaris. Kompatibel desktop, terutama di
environmemts heterogen, mewakili kenaikan produktivitas pengguna,
komunikasi, dan kolaborasi, serta biaya yang cukup besar dari-kepemilikan
tabungan. J ava desktop teknologi dapat digunakan untuk menciptakan
aplikasi-aplikasi client dan applet yang cepat, aman, dan portabel. Sebagian
besar teknologi dimasukkan sebagai bagian dari J ava SE (juga dikenal sebagai
J RE atau J ava Runtime Environment), yang merupakan pra-instal pada lebih
dari 90% dari semua sistem desktop pada berbagai sistem operasi. Lain
teknologi J ava Desktop tersedia sebagai salah satu ekstensi J awa didownload
terpisah, atau sebagai proyek sumber terbuka di java.net. Akhirnya, Netbeans
IDE dengan GUI terpadu pembangun membawa semuanya bersama-sama,
sehingga dapat dengan mudah membangun aplikasi desktop Anda.
(http://www.sun.com/java/about/)

2.4 iReport

iReport adalah aplikasi open source yang meyediakan kemampuan
untuk mendesain dan membuat laporan yang kompleks secara visual
20

menggunakan library J asperReports, yang merupakan aplikasi open source


pembuat laporan yang tersedia saat ini. Data yang digunakan untuk mencetak
laporan dapat diperoleh dari berbagai jenis sumber data termasuk database,
OLAP XML / A koneksi, file XML, CSV file, J avaBeans atau bahkan
sumber-sumber yang disediakan oleh pengguna. iReport juga menyediakan
built-in permintaan dukungan untuk beberapa bahasa-bahasa seperti SQL,
HQL, XPath, EJ BQL dan MDX bahkan memungkinkan untuk untuk
memasukan beberapa bahasa khusus seperti PL / SQL. iReport menyediakan
fasilitas pendukung yang lengkap untuk membuat dan menguji sumber data,
mendesain laporan, melihat preview dan mengekspor hasil laporan dalam
beberapa jenis format file seperti PDF, HTML, XML, Word (RTF), Excel,
OpenOffice (ODF), teks dan CSV. Untuk para pengembang aplikasi, iReport
J asper sangat membantu menghasilkan file yang dapat digunakan dalam
aplikasi J ava (web dan aplikasi desktop) untuk menghasilkan laporan yang
dinamis dalam format apapun. Untuk melakukan proses integrasi
J asperReports sangatlah mudah, pengembang aplikasi hanya memerlukan
beberapa baris kode untuk membuat integrasi dengan aplikasi java apapun.
IReport dapat digunakan untuk menempatkan dan mengedit laporan dalam
J asperServer, sebuah open source performa tinggi laporan server yang
menyediakan layanan tambahan seperti keamanan, sumber daya repositori ,
laporan penjadwalan, webservices untuk integrasi dengan aplikasi lain dan
suatu antarmuka web untuk mengelola, melaksanakan, dan menghasilkan
laporan.
(http://jasperforge.org/plugins/mwiki/index.php/Ireport/What_is_iReport)
21

2.5 INTERAKSI MANUSIA dan KOMPUTER (IMK)


2.5.1 Teori Tentang Interaksi Manusia dan Komputer

Seiring dengan berkembangnya teknologi informasi, program-program
baru bermunculan dengan desain yang menarik. Namun hal itu belumlah
cukup karena pengguna (user) menginginkan adanya interaksi dengan
program-program yang user-friendly agar mereka lebih mudah menjalankan
program tersebut. Hal inilah yang mendasari lahirnya disiplin ilmu baru yang
disebut Interaksi Manusia dan Komputer (IMK).
Secara garis besar, Interaksi Manusia dan Komputer adalah disiplin
ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi
sistem komputer interaktif untuk digunakan oleh manusia, serta studi
fenomena-fenomena besar yang berhubungan dengannya. Ilmu ini secara
khusus menitikberatkan pada perancangan dan evaluasi antarmuka pemakai
(user interface).

2.5.2 Tujuan Desain Sistem Interaksi Manusia dan Komputer

a) Fungsionalitas yang sesuai (Shneiderman, 1998, pp 11)


1) Tugas-tugas apa saja yang diperlukan?
2) Sistem dengan fungsionalitas yang kurang memadai akan
mengecewakan user dan sering ditolak atau tidak digunakan.
3)Sistem dengan fungsionalitas yang berlebihan berbahaya
implementasi, pemeliharaan, proses belajar serta penggunaannya sulit.
22


b) Standardisasi, integrasi, konsistensi dan portabilitas
(Shneiderman, 1998, pp 13)
- Standardisasi: keseragaman sifat-sifat antarmuka user pada aplikasi
yang berbeda.
- Integrasi: kesatuan dari berbagai paket aplikasi dan software tools.
- Konsistensi: keragaman dalam suatu program aplikasi: urutan
perintah, istilah, satuan, warna dan sebagainya.
- Portabilitas: dimungkinkan data dikonversi dan dipindahkan dan
dimungkinkannya antar muka user dipakai di berbagai lingkungan
perangkat lunak dan perangkat keras.

c) Kehandalan, ketersediaan, keamanan dan integritas data
(Shneiderman, 1998, pp 12)
- Kehandalan: berfungsi sesuai dengan diinginkan, tampilan akurat.
- Ketersediaan: siap ketika hendak digunakan, jarang mengalami
masalah.
- Keamanan: terlindung dari akses yang tidak diinginkan dan
kerusakan yang disengaja.
- Integritas data: keutuhan data terjamin, tidak mudah dirusak atau
diubah oleh orang yang berhak.

d) Penjadwalan dan anggaran (Shneiderman, 1998, pp 14)
- Adanya persaingan dengan vendor lain.
23

- Sistem perlu disiapkan tepat pada waktunya.


- Sistem yang mahal sulit untuk diterima.

2.5.3 Beberapa Syarat Sistem Yang Interaktif

Menurut Shneiderman (1992) ada lima kriteria yang harus
dipenuhi oleh suatu sistem yang interaktif antara lain :

a) Waktu belajar yang tidak lama.
Berapa lama orang biasa dalam masyarakat pemakai dapat
mempelajari cara kerja sistem.

b) Kecepatan penyajian informasi yang tepat.
Berapa lama pelaksanaan kerja dari sistem.

c) Retensi.
Pemakai mampu mengingat pengetahuan yang mereka dapatkan dari
sistem yang bersangkutan setelah melampaui jangka waktu tertentu.

d) Tingkat kesalahan pemakai.
Berapa banyak kesalahan serta kesalahan-kesalahan apa saja yang
dibuat oleh pemakai.

24

e) Kepuasan pribadi.
Bagaimana keinginan pemakai terhadap berbagai aspek pada sistem.
Selain itu Shneiderman juga mengutip pernyataan dari Donald A.
Norman yang mengusulkan sistem yang interaktif yakni :
Kondisi dan aksi alternatif harus dapat terlihat oleh pemakai.
Harus ada konseptual yang baik serta gambar sistem harus
konsisten.
Pemakai harus mendapat umpan balik yang terus menerus.
Antar muka yang dibuat harus memiliki pemetaan yang baik
mencakup hubungan tiap-tiap tingkat.
Konsistensi yang dimaksud oleh Shneiderman adalah urutan
aksi harus tersusun dengan urut, dapat diduga serta dijelaskan oleh
beberapa aturan sehingga pemakai dapat memahami sistem tersebut
serta lebih mudah dalam mengakses sistem sesuai yang mereka
inginkan. Namun kenyataannya tidak semua sistem harus konsisten
karena kadang-kadang ketidakkonsistenan sangat diperlukan dalam
suatu sistem.

2.5.4 Model Sistem Interaksi

Menurut Shneiderman (1992) ada lima model interaksi yang
sering dipakai yaitu:
a) Menu
b) Isian
25

c) Manipulasi langsung
d) Bahasa perintah
e) Bahasa natural


2.5.5 Motivasi Yang Dipengaruhi Faktor Manusia Dalam
Perancangan Sistem

a) Sistem yang krisis bagi kehidupan (Shneiderman, 1998, pp
16)
- Yang termasuk di dalam ini adalah pengendalian lalu-lintas udara,
reaktor nuklir, pembangkit lisrik, pesawat antariksa, operasi militer,
dan peralatan medis.
- Biaya mahal tidak menjadi masalah, namun diharapkan
menghasilkan efektivitas dan kehandalan yang tinggi
- Waktu pelatihan yang lama tidak menjadi masalah, namun kinerja
pemakai cepat dan bebas kesalahan walaupun pemakai sedang tertekan
atau stress .
- Kepuasan subjektif bukan merupakan masalah berarti, karena
pemakai bermotivasi tinggi.



26

b) Pemakaian industri dan komersial (Shneiderman, 1998, pp


16-17)
- Yang termasuk di dalam ini adalah perbankan, asuransi, pemesanan
barang, manajemen inventaris, pemesanan tiket pesawat dan hotel,
penyewaan mobil, manajemen kartu kredit, dan sebagainya
- Biaya yang lebih rendah lebih disukai meskipun kehandalan
dikorbankan
- Retensi diperoleh dari seringnya penggunaan
- Kemudahan belajar penting karena biaya belajar mahal. Tingkat
kesalahan dianggap biaya (cost)
- Kecepatan kinerja penting tetapi kelelahan operator ditoleransikan

c) Aplikasi kantor, rumah dan hiburan (Shneiderman, 1998,
pp 17)
- Yang termasuk di dalam ini adalah aplikasi komputer rumah
termasuk pengolah kata, video game, program pendidikan, e-mail, dan
manajemen bisnis kecil.
- Kemudahan belajar, tingkat kesalahan yang rendah, dan kepuasan
subjektif diutamakan karena penggunaan tidak senambung dan
persaingan sangat ketat.
- Biaya rendah penting karena persaingan.
- Pendekatan desain yang berlapis atau berstruktur penting karena
pemakai berevolusi dari pemula menjadi mahir.
- Retensi sangat mungkin salah, sehingga perlu bantuan on-line.
27

d) Sistem eksplorasi, kreatif, dan kerja sama (Shneiderman,


1998, pp 17-18)
- Yang termasuk di dalam ini adalah ensiklopedia elektronik,
menjelajah dunia internet, formasi hipotesis statistik, pengambilan
keputusan bisnis, simulasi ilmiah, pemrograman, sistem komposisi
musik, sistem pakar, video conferencing, electronic meeting,
groupware, dan sebagainya.
- Pemakaian bisa sering, bisa juga tidak.
- Pengukuran beberapa faktor manusia yang sulit.
- Pemakai memiliki pengetahuan dalam bidang tugasnya tetapi
pemula dalam konsep komputer , memiliki motivasi dan harapan
tinggi.
- Perancangan sistem yang sulit. Perancang harus membuat sistem
transparan sehingga pemakai mudah terserap dalam bidang tugasnya.

2.5.6 Delapan aturan emas untuk desain interface menurut Ben
Shneiderman (1998, pp 74-75) :

- Berusaha keras untuk tetap konsisten.


- Memungkinkan frequent users untuk menggunakan shortcuts.
- Memberikan umpan balik yang informatif.
- Merancang dialog untuk menghasilkan keadaan akhir.
- Memberikan pencegahan kesalahan dan penanganan kesalahan yang
sederhana.
- Mengizinkan pembalikan aksi (undo) dengan mudah.
28

- Mendukung internal locus of control (pemakai menguasai sistem


atau inisiator, bukan responden).
- Mengurangi beban ingatan jangka pendek (rule of thumb).

2.5.7 Aspek-aspek yang diperhatikan dalam merancang sistem
menurut Foley dan Van Dam :
- Conceptual level : suatu model yang menggambarkan keadaan
mental / kognitif pemakai dalam sistem yang interaktif.
- Semantic level : menggambarkan arti yang disampaikan oleh
perintah masukan (input) pemakai dan keluaran (output) dari
komputer.
- Syntatic level : menjelaskan bagaimana satuan (kata-kata) dirangkai
menjadi sebuah kalimat lengkap yang memerintahkan computer untuk
melakukan tugas tertentu.
- Lexical level : ketidakbergantungan antara berbagai komponen
dimana user memberikan sebuah syntax khusus.

2.6 Open Source
Dalam pengembangan aplikasi visualisasi data ini akan
diimplementasikan secara open source agar pengembangan dapat dilakukan oleh
umum dan terdistribusi secara gratis sehingga dapat membantu orang-orang yang
membutuhkan. Untuk kedepannya aplikasi open source untuk visualisasi data ini
diharapkan memiliki komunitas tersendiri dimana komunitas disini dapat saling
29

berbagi dan membangun aplikasi open source visualisasi data ini agar menjadi
lebih baik seperti linux.
Dibanding dengan produk yang sudah ada seperti Oracle Businnes
Intelegence, memiliki licence yang mahal untuk digunakan terutama untuk
perusahaan menengah ke bawah. Maka pilihan untuk pembuatan aplikasi Open
Source sangatlah bagus. Berdasarkan data yang diperoleh dari harga lisensi dari
OBI (Oracle Business Inteligance) mencapai $11.500(20 januari 2010).
https://shop.oracle.com/pls/ostore/f?p=ostore:2:0:::2:PROD_HIER_ID:450988214
9421805720002

3.6.1 Definisi Open Source
Open Source adalah sistem pengembangan yang tidak dikoordinasi oleh
suatu individu / lembaga pusat, tetapi oleh para pelaku yang bekerja sama dengan
memanfaatkan kode sumber (source-code) yang tersebar dan tersedia bebas
(biasanya menggunakan fasilitas komunikasi internet). Pola pengembangan ini
mengambil model ala bazaar, sehingga pola Open Source ini memiliki ciri bagi
komunitasnya yaitu adanya dorongan yang bersumber dari budaya memberi, yang
artinya ketika suatu komunitas menggunakan sebuah program Open Source dan
telah menerima sebuah manfaat kemudian akan termotivasi untuk menimbulkan
sebuah pertanyaan apa yang bisa pengguna berikan balik kepada orang banyak.
30

Pola Open Source lahir karena kebebasan berkarya, tanpa intervensi


berpikir dan mengungkapkan apa yang diinginkan dengan menggunakan
pengetahuan dan produk yang cocok. Kebebasan menjadi pertimbangan utama
ketika dilepas ke publik. Komunitas yang lain mendapat kebebasan untuk belajar,
mengutak-ngatik, merevisi ulang, membenarkan ataupun bahkan menyalahkan,
tetapi kebebasan ini juga datang bersama dengan tanggung jawab, bukan bebas
tanpa tanggung jawab.
http://id.wikipedia.org/wiki/Sumber_terbuka#Pergerakan_sumber_terbuk
a_dan_perangkat_lunak_bebas
3.6.2 Syarat Open Source
Open source tidak hanya berarti akses ke kode sumber. Ketentuan
distribusi dari perangkat lunak open source harus memenuhi kriteria sebagai
berikut:
1. Free Redistribution
Lisensi tidak membatasi pihak manapun dalam melakukan penjualan
atau pembagian perangkat lunak tersebut. Lisensi tidak mendapatkan sebuah
royalti atau biaya lain untuk penjualan tersebut.
2. Source Code
Program harus menyertakan source code, dan harus mengizinkan
distribusi source code maupun bentuk dikompilasi(class).Walaupun aplikasi open
31

source tidak menyertakan source code secara langsung dalam proses


pendistribusian namun diperoleh dengan mudah. Sebagai contoh dengan cara
mendownload melalui internet tanpa biaya. Source code dapat didapatkan dalam
bentuk yang umum digunakan seperti file berektensi java sehingga seorang
programmer dapat memodifikasi program.
3. Derived Works
Lisensi harus memungkinkan modifikasi dan pengembangan lebih lanjut,
serta harus memungkinkan untuk didistribusikan.
4. Integrity of The Author's Source Code
Lisensi dapat membatasi perubahan yang dilakukan pada source code
yang didistribusikan. Akan tetapi, lisensi tersebut memperbolehkan pendistribusian
source code yang telah dimodifikasi tersebut dengan nama dan versi yang berbeda.
5. No Discrimination Against Persons or Groups
Lisensi tidak boleh mendiskriminasikan seseorang atau sekelompok
orang.
6. No Discrimination Against Fields of Endeavor
Lisensi tidak boleh membatasi seseorang dari memanfaatkan program
dalam bidang usaha tertentu. Sebagai contoh, tidak membatasi program dari
penggunaan dalam bisnis, atau bidang lain.
32

7. Distribution of License
Hak-hak yang melekat pada program harus berlaku untuk semua
pengguna program ini dan disebarluaskan tanpa memerlukan lisensi tambahan dari
pihak-pihak lain.
8. License Must Not Be Specific to a Product
Aplikasi Open Source ini tidak boleh bergantung dengan aplikasi lain
yang terdistribusi dibawah program berlisensi(tidak gratis).
9. License Must Not Restrict Other Software
Lisensi harus tidak mempunyai batasan pada perangkat lunak lain yang
didistribusikan bersama dengan perangkat lunak berlisensi.. Sebagai contoh, lisensi
tidak boleh membatasi sebuah program lain yang didistribusikan pada media yang
sama , harus perangkat lunak open source.
10. License Must Be Technology-Neutral
Tidak ada ketentuan dari lisensi dapat didasarkan pada setiap individu
teknologi.
http://www.opensource.org/docs/osd

Anda mungkin juga menyukai