Upload
chesterzee
View
19
Download
0
Embed Size (px)
DESCRIPTION
Skripsi
Citation preview
BAB II
LANDASAN TEORI
Pada bab kedua ini, memberikan pembahasan tentang teori-teori yang berhubungan
dengan perancangan sistem informasi komputerisasi administrasi keuangan MA Mazro'atul Huda
Karanganyar Demak. Hal-hal yang dijelaskan yaitu :
• Konsep Dasar Sistem
Pengertian dan definisi sistem pada berbagai bidang berbeda-beda, tetapimeskipun
istilah sistem yang digunakan bervariasi, semua sistem pada bidang-bidang tersebut
mempunyai beberapa persyaratan umum, yaitu sistem harus mempunyai elemen,
lingkungan, interaksi antar elemen, interaksi antara elemen dengan lingkungannya, dan
yang terpenting adalah sistem harus mempunyai tujuan yang akan dicapai.
Berdasarkan persyaratan ini, sistem dapat didefinisikan sebagai seperangkat elemen
yang digabungkan satu dengan lainnya untuk suatu tujuan bersama.Kumpulan elemen
terdiri dari manusia, mesin, prosedur, dokumen, data atau elemen lain yang terorganisir
dari elemen-elemen tersebut. Elemen sistem disamping berhubungan satu sama lain, juga
berhubungan dengan lingkungannya untuk mencapai tujuan yang telah ditentukan
sebelumnya.
Terdapat beberapa definisi sistem yaitu :
“Sebuah sistem terdiri dari bagian-bagian saling berkaitan yang beroperasi bersama
untuk mencapai beberapa sasaran atau maksud”. (Gordon B. Davis : 1984)
“Sistem adalah himpunan dari unsur-unsur yang saling berkaitan sehingga
membentuk suatu kesatuan yang utuh dan terpadu”. (Ramond Mcleod (2001).
• Karakteristik Sistem
• Komponen Sistem
Komponen sistem atau elemen sistem dapat berupa :
• Elemen-elemen yang lebih kecil yang disebut sub sistem, misalkan sistem
komputer terdiri dari sub sistem perangkat keras, perangkat lunak dan
manusia
• Elemen-elemen yang lebih besar yang disebut supra sistem. Misalkan bila
perangkat keras adalah sistem yang memiliki sub sistem CPU, perangkat I/O
dan memori, maka supra sistem perangkat keras adalah sistem komputer.
• Batas sistem
Batas sistem merupakan daerah yang membatasi antara suatu sistem
dengan sistem yang lainnya atau dengan lingkungan luarnya. Batas sistem ini
memungkinkan suatu sistem dipandang sebagai suatu kesatuan. Batas suatu
sistem menunjukkan ruang lingkup dari sistem tersebut.
• Lingkungan luar sistem
Lingkungan dari sistem adalah apapun di luar batas dari sistem yang
mempengaruhi operasi sistem. Lingkungan luar sistem dapat bersifat
menguntungkan dan dapat juga bersifat merugikan sistem tersebut. lingkungan
luar yang mengutungkan merupakan energi dari sistem dan dengan demikian
harus tetap dijaga dan dipelihara. Sedang lingkungan luar yang merugikan harus
ditahan dan dikendalikan, kalau tidak akan mengganggu kelangsungan hidup dari
sistem.
• Penghubung
Penghubung merupakan media perantara antar subsistem. Melalui
penghubung ini memungkinkan sumber-sumber daya mengalir dari satu
subsistem ke subsistem lainnya. Output dari satu subsistem akan menjadi input
untuk subsistem yang lainnya dengan melalui penghubung. Dengan penghubung
satu subsistem dapat berinteraksi dengan subsistem yang lainnya membentuk satu
kesatuan.
• Masukkan
Masukan adalah energi yang dimasukkan ke dalam sistem. Masukan dapat
berupa maintenance input dan sinyal input. Maintenance input adalah energi
yang dimasukkan supaya sistem tersebut dapat beroperasi. Sinyal input adalah
energi yang diproses untuk didapatkan keluaran.
• Keluaran
Keluaran adalah hasil dari energi yang diolah dan diklasifikasikan
menjadi keluaran yang berguna dan sisa pembuangan. Keluaran dapat merupakan
masukan untuk subsistem yang lain atau kepada supra sistem.
• Pengolah
Suatu sistem dapat mempunyai suatu bagian pengolah atau sistem itu
sendiri sebagai pengolahnya. Pengolah yang akan merubah masukan menjadi
keluaran. Suatu sistem produksi akan mengolah masukan berupa bahan baku dan
bahan-bahan yang lain menjadi keluaran berupa barang jadi.
• Sasaran atau tujuan
Suatu sistem pasti mempunyai tujuan atau sasaran. Kalau suatu sistem
tidak mempunyai sasaran, maka operasi sistem tidak akan ada gunanya. Sasaran
dari sistem sangat menentukan sekali masukan yang dibutuhkan sistem dan
keluaran yang akan dihasilkan sistem. Suatu sistem dikatakan berhasil bila
mengenai sasaran atau tujuannya.
• Klasifikasi Sistem
• Sistem abstrak dan sistem fisik. Sistem abstrak adalah sistem yang berupa
pemikiran atau ide-ide yang tidak tampak secara fisik. Misalnya sistem teologia,
yaitu sistem yang berupa pemikiran-pemikiran hubungan antara manusia dengan
tuhan. Sistem fisik merupan sistem yang ada secara fisik misalnya sistem
komputer, sistem akuntansi dan sistem produksi.
• Sistem alamiah (natural system) dan sistem buatan manusia (human made
system). Sistem alamiah adalah sistem yang terjadi melalui proses alam,
misalnya sistem perputaran bumi. Sistem buatan manusia adalah sistem yang
dirancang oleh manusia. Sistem buatan manusia yang melibatkan interaksi antara
manusia dengan mesin disebut dengan human machine system atau ada yang
menyebut dengan man machine system, karena menyangkut penggunaan
komputer yang berinteraksi dengan manusia.
• Sistem tertentu (deterministic system) dan sistem tak tentu (probabilistic system).
Sistem tertentu beroperasi tertentu dengan tingkah laku yang sudah dapat
diprediksi. Inteaksi diantara bagian-bagiannya dapat dideteksi dengan pasti,
sehingga keluaran dari sistem dapat diramalkan. Sistem komputer adalah contoh
dari sistem tertentu yang tingkah lakunya dapat dipastikan berdasarkan program-
program yang dijalankan. Sistem tak tentu adalah sistem yang kondisi masa
depannya tidak dapat diprediksi karena mengandung unsur probabilitas.
• Sistem tertutup (closed system) dan sistem terbuka (open system). Sistem tertutup
merupakan sistem yang tidak berhubungan dan tidak terpengaruh oleh
lingkungan luarnya. Sistem ini bekerja secara otomatis tanpa adanya turut
campur tangan dari pihak diluarnya. Secara teoritis sistem tertutup ada, tetapi
kenyataan tidak ada sistem yang benar-benar tertutup yang ada hanyalah
relatively closed system (secara relatif tertutup, tidak benar-benar tertutup),
sedang sistem terbuka adalah sistem yang berhubungan dan terpengaruh oleh
lingkungan luarnya. Sistem ini menerima masukan dan menghasilkan keluaran
untuk lingkungan luar atau subsistem yang lainnya, karena sistem sifatnya
terbuka dan tepengaruh oleh lingkungan luarnya, maka suatu sistem harus
mempunyai sistem pengendalian yang baik. Sistem-sistem yang baik harus
dirancang sedemikian rupa, sehingga secara relatif tertutup karena sistem tertutup
akan bekerja secara otomatis dan terbuka untuk pengaruh yang baik saja.
• Konsep Dasar Informasi
• Pengertian Informasi
Menurut Raymond Mcleod, :
“Informasi adalah data yang telah diolah menjadi bentuk yang memiliki arti bagi si
penerima dan bermanfaat bagi pengambilan keputusan saat ini atau mendatang”.
Secara umum informasi dapat didefinisikan sebagai hasil dari pengolahan
data dalam suatu bentuk yang lebih berguna dan lebih berarti bagi penerimanya yang
menggambarkan suatu kejadian-kejadian yang nyata yang digunakan untuk
pengambilan keputusan.
Sumber dari informasi adalah data. Data adalah kenyataan yang
menggambarkan suatu kejadian-kejadian dan kesatuan nyata. Kejadian-kejadian
adalah sesuatu yang terjadi pada saat tertentu. Di dalam dunia bisnis, kejadian-
kejadian yang sering terjadi adalah transaksi perubahan dari suatu nilai yang disebut
transaksi. Kesatuan nyata adalah berupa suatu obyek nyata seperti tempat, benda dan
orang yang betul-betul ada dan terjadi.
Data merupakan bentuk yang masih mentah, belum dapat bercerita banyak
sehingga perlu diolah lebih lanjut. Data diolah melalui suatu metode untuk
menghasilkan informasi. Data dapat berbentuk simbol-simbol semacam huruf, angka,
bentuk suara, sinyak, gambar, dsb.
Data yang diolah melalui suatu model menjadi informasi, penerima kemudian
menerima informasi tersebut, membuat suatu keputusan dan melakukan tindakan,
yang berarti menghasilkan suatu tindakan yang lain yang akan membuat sejumlah
data kembali. Data tersebut akan ditangkap sabagai input, diproses kembali lewat
suatu model dan seterusnya membentuk suatu siklus. Siklus informasi ini dapat
digambarkan sebagai berikut :
Gambar 2.1. Siklus Informasi
• Fungsi Informasi
Informasi mempunya beberapa fungsi diantaranya adalah :
• Untuk meningkatkan pengetahuan bagi si pemakai
• Untuk mengurangi ketidakpastian dalam proses pengambilan keputusan
pemakai
• Menggambarkan keadaan yang sebenarnya dari sesuatu hal.
• Kualitas Informasi
Informasi yang berkualitas harus akurat, tepat pada waktunya dan relevan.
• Akurat
Berarti informasi harus bebas dari kesalahan-kesalahan dan tidak bias atau
menyesatkan. Akurat juga berarti informasi harus jelas mencerminkan
maksudnya. Informasi harus akurat karena dari sumber informasi sampai ke
penerima informasi kemungkinan terjadi gangguan yang dapat merubah atau
merusak informasi tersebut.
• Tepat Waktu
Berarti informasi yang datang pada penerima tidak boleh terlambat.
Informasi yang sudah usang tidak akan mempunyai nilai lagi. Karena informasi
merupakan landasan di dalam pengambilan keputusan. Bila pengambilan
keputusan terlambat, maka dapat berakibat fatal bagi organisasi. Saat ini
mahalnya nilai informasi disebabkan harus cepatnya informasi itu didapat
sehingga diperlukan teknologi-teknologi mutakhir untuk mendapatkan, mengolah
dan mengirimkannya.
• Relevan
Berarti informasi tersebut mempunyai manfaat untuk pemakainya.
Relevansi informasi untuk tiap-tiap orang berbeda-beda.
• Konsep Dasar Sistem Informasi
• Pengertian Sistem Informasi
Menurut Mc Leod : “Sistem Informasi merupakan sistem yang mempunyai
kemampuan untuk mengumpulkan informasi dari semua sumber dan menggunakan
berbagai media untuk menampilkan informasi”.
Sistem informasi dapat didefinisikan sebagai suatu sistem di dalam suatu
organisasi yang merupakan kombinasi dari orang-orang, fasilitas, teknologi, media
prosedur-prosedur dan pengendalian yang ditujukan untuk mendapatkan jalur
komunikasi penting, memproses tipe transaksi rutin tertentu, memberi sinyal kepada
manajemen dan yang lainnya terhadap kejadian-kejadian internal dan eksternal yang
penting dan menyediakan suatu dasar informasi untuk pengambilan keputusan.
• Komponen Sistem Informasi
Komponen sistem informasi terdiri dari 5 komponen, kelima komponen
sistem informasi tersebut dapat diklasifikasikan sebagai hardware dan software yang
berfungsi sebagai mesin, people dan procedures yang merupakan manusia dan
tatacara menggunakan mesin, data yang merupakan jembatan penhubung antara
manusia dan mesin agar terjadi suatu proses pengolahan data.
• Hardware
Hardware dalam komponen sistem informasi dapat di golongkan menjadi
beberapa bagian, yaitu:
• Peralatan penyimpanan data
Disk merupakan perangkat yang paling sering digunakan sebagai
peralatan penyimpanan. Disk diorganisasikan berupa silinder-silinder dengan
tiap permukaan terdapat head yang ditumpuk secara vertikal. Head terdiri dari
beberapa track. Dan treck terbagi menjadi sektor-sektor.
• Peralatan input
Peralatan input merupakan alat yang digunakan untuk menerima
input.
• Peralatan output
Peralah output merupakan suatu alat keluaran/tampilan suatu data
setelah mengalami proses. Output yang dihasilkan dari pengolahan data
digolongkan kedalam 4 macam bentuk yaitu:
• Tulisan: terdiri dari huruf, kata, angka, karakter khusus, dan simbol-
simbol lainnya.
• Image: didalam suatu bentuk grafik atau gambar.
• Bentuk yang dapat dibaca oleh mesin dalam bentuk simbol yang hanya
dibaca dan dimengerti oleh komputer.
• Suara: dalam bentuk musik atau omongan.
• Peralatan komunikasi data
Komunikasi adalah suatu bagian dari ilmu komunikasi yang
mengkhususkan diri pada penyampaian informasi yang berupa teks dan
gambar.
• Software
Software merupakan kumpulan dari perintah /fungsi yang ditulis dengan
aturan tertentu untuk memerintahkan komputer melaksanakan tugas tertentu.
• Data
Data merupakan komponen dari informasi yang akan diproses lebih lanjut
untuk menghasilkan informasi. Data merupakan jembatan penghubung antara
manusia dan mesin agar terjadi suatu proses pengolahan data. Himpunan data
akan mempunyai sifat yang unik, yaitu:
• Saling berkaitan (interrelated), data-data tersebut akan saing
berkaitan/terintegrasi dan tersimpan secara terorganisir didalam suatu media
penyimpanan.
• Kebersamaan (Shared), daya yang terintegrasi tersebut dapat diakses oleh
berbagai macam pengguna/orang tetapi hanya satu yang dapat merubahnya
yaitu Database Administrator (DBA).
• Terkendali (controlled), data yang terintegrasi hanya dapat diubah oleh
Database Administrator (DBA).
• Prosedur
Dokumentasi prosedur/proses sistem, buku penuntun operasional dan
teknis. Prosedur menghubungkan berbagai perintah dan aturan yang akan
menentukan rancangan dan penggunaan sistem informasi.
• Manusia
Manusia adalah mereka yang terlibat dalam kegiatan sistem informasi
seperti operator, pemimpin sistem informasi dan sebagainya.
Gambar 2.2. Lima Komponen Sistem Informasi
Sumber: Al-Bahra Bin Ladjamudin
• Konsep Dasar Sistem Komputer
Komputer berasal dari kata to compute yang artinya menghitung. Tetapi apabila kita
tinjau dari kata tersebut dengan fungsi komputer dewasa ini kita melihat ketidakcocokan,
dimana komputer sekarang dapat digunakan untuk berbagai pekerjaan. Secara umum
komputer dapat diartikan serangkaian atau sekelompok mesin elektronika yang terdiri dari
ribuan bahkan jutaan komponen yang saling bekerjasama, serta membentuk suatu sistem
kerja yang rapi dan teliti. Sistem kerja ini kemudian dapat digunakan untuk melaksanakan
serangkaian pekerjaan secara otomatis berdasarkan urutan instruksi atau program yang
telah diberikan kepadanya.
Komputerisasi bermakna sebagai penggunaan komputer sebagai alat bantu dalam
kegiatan pengolahan data, untuk menggantikan prosedur pengolahan data secara manual.
Prosedur pengolahan data yang dilakukan secara manual meliputi kegiatan pengumpulan
data, melakukan pengelompokan, pengurutan, penghitungan, yang pada akhirnya
menyusunnya dalam sejumlah bentuk laporan untuk berbagai keperluan yang ada. (Edi
Purwono, 2002).
• Konsep Dasar Administrasi Keuangan
• Pengertian Administrasi
Dalam buku Pengantar Ilmu Administrasi Negara Drs. Darmanto, M.Si. Mengutip
beberapa definisi administrasi antara lain :
• Leonard D. White: Administrasi adalah suatu proses yang pada umumnya
terdapat pada semua usaha kelompok, negara atau swasta, sipil atau militer, usaha
yang besar dan kecil.
• H.A Simon: Administrasi adalah kegiatan dari kelompok yang mengadakan
kerjasama untuk menyelesaikan tujuan bersama.
• William H. Newman: Administrasi adalah bimbingan, kepemimpinan, dan
pengawasan atas usaha-usaha kelompok individu, terhadap tercapainya tujuan
bersama.
Dengan memperhatikan penjelasan tersebut di atas maka dapat diketahui
bahwa ciri-ciri administrasi adalah sebagai berikut:
• Adanya kelompok manusia (2 orang atau lebih)
• Adanya kerjasama dari kelompok tersebut
• Adanya bimbingan, kepemimpinan, dan pengawasan
• Adanya tujuan kelompok
• Pengertian Keuangan
Keuangan adalah hal yang berkaitan dengan uang. Keuangan juga berarti
masalah pembayaran dan pembiayaan untuk kebutuhan baik pribadi maupun
organisasi.
• Pengertian Administrasi Keuangan
Menurut Prof. Dr. Sondang P. Siagian, MPA, dikutip oleh Martono dan Agus
Harjito (1998 : 2) secara ilmu administrasi adalah keseluruhan proses kerja sama
antara dua orang atau lebih yang didasarkan atas rasionalitas tertentu dalam rangka
pencapaian tujuan yang telah ditentukan sebelumnya dan memanfaatkan sarana dan
prasarana tertentu secara berdaya guna dan berhasil guna.
Administrasi secara sempit adalah berasal dari kata administratie (Belanda),
meliputi kegiatan catat mencatat, surat menyurat, pembukuan ringan, ketik mengetik,
agenda yang bersifat teknis ketatausahaan.
Administrasi secara luas adalah berasal dari kata administration (inggris),
kegiatan dari pada kelompok yang mengadakan kerja sama untuk mencapai tujuan
bersama.
Administrasi secara seni adalah yang dapat mendorong, menggairahkan
dalam melaksanakan suatu aktifitas demi pencapaian tujuan. Dalam artian kita
merasa enjoy dalam pelaksanaan suatu aktivitas sebagai tanggung jawab.
Menurut Prof. Dr. Mr. S. Prajudi Atmosudirjo administrasi adalah suatu
bantuan kepada seseorang yang harus menunaikan tugas, jabatan / menjalankan suatu
usaha tertentu.
Menurut Drs. A.W. Wijaya administrasi adalah segenap proses
penyelenggaraan kegiatan usaha kerja sama sekelompok orang untuk mencapai
tujuan tertentu.
Jadi administrasi keuangan adalah proses pengelolaan yang melibatkan semua
kegiatan yang berhubungan dengan keuangan, pembuatan laporan keuangan dan
pencapaian tujuan untuk kepentingan bersama.
• Perancangan Sistem
Dalam suatu proses pengembangan software, analisa dan rancangan telah
merupakan terminologi yang sangat tua. Pada saat masalah ditelusuri dan spesifikasi
dinegoisasikan, dapat dikatakan kita berada pada tahap rancangan. Merancang adalah
menemukan suatu cara untuk menyelesaikan masalah, salah satu tool / model untuk
merancang pengembangan software yang berbasis object oriented adalah UML.
• Teknik Dasar OOA/D (Object-Oriented Analysis/Design)
Dalam dunia pemodelan, metodologi implementasi obyek walaupun terikat
kaidah-kaidah standar, namun teknik pemilihan obyek tidak terlepas pada
subyektifitas software analyst & designer. Beberapa obyek akan diabaikan dan
beberapa obyek menjadi perhatian untuk diimplementasikan di dalam sistem. Hal ini
sah-sah saja karena kenyataan bahwa suatu permasalahan sudah tentu memiliki lebih
dari satu solusi. Ada 3 (tiga) teknik/konsep dasar dalam OOA/D, yaitu pemodulan
(encapsulation), penurunan (inheritance) dan polymorphism.
• Pemodulan (Encapsulation)
Pada dunia nyata, seorang ibu rumah tangga menanak nasi dengan
menggunakan rice cooker, ibu tersebut menggunakannya hanya dengan menekan
tombol. Tanpa harus tahu bagaimana proses itu sebenarnya terjadi. Disini
terdapat penyembunyian informasi milik rice cooker, sehingga tidak perlu
diketahui seorang ibu. Dengan demikian menanak nasi oleh si ibu menjadi
sesuatu yang menjadi dasar bagi konsep information hiding.
• Penurunan (Inheritance)
Obyek-obyek memiliki banyak persamaan, namun ada sedikit perbedan.
Contoh dengan beberapa buah mobil yang mempunyai kegunaan yang berbeda-
beda. Ada mobil bak terbuka seperti truk, bak tertutup seperti sedan dan minibus.
Walaupun demikian obyek-obyek ini memiliki kesamaan yaitu teridentifikasi
sebagai obyek mobil, obyek ini dapat dikatakan sebagai obyek induk (parent).
Sedangkan minibus dikatakan sebagai obyek anak (child), hal ini juga berarti
semua operasi yang berlaku pada mobil berlaku juga pada minibus.
• Polymorphism
Pada obyek mobil, walaupun minibus dan truk merupakan jenis obyek
mobil yang sama, namun memiliki juga perbedaan. Misalnya suara truk lebih
keras dari pada minibus, hal ini juga berlaku pada obyek anak (child) melakukan
metoda yang sama dengan algoritma berbeda dari obyek induknya. Hal ini yang
disebut polymorphism, teknik atau konsep dasar lainnya adalah ruang lingkup /
pembatasan. Artinya setiap obyek mempunyai ruang lingkup kelas, atribut, dan
metoda yang dibatasi.
• Pengenalan UML
UML sebagai sebuah bahasa yang memberikan vocabulary dan tatanan
penulisan kata-kata dalam ‘MS Word’ untuk kegunaan komunikasi. Sebuah bahasa
model adalah sebuah bahasa yang mempunyai vocabulary dan konsep tatanan /
aturan penulisan serta secara fisik mempresentasikan dari sebuah sistem. Seperti
halnya UML adalah sebuah bahasa standard untuk pengembangan sebuah software
yang dapat menyampaikan bagaimana membuat dan membentuk model-model, tetapi
tidak menyampaikan apa dan kapan model yang seharusnya dibuat yang merupakan
salah satu proses implementasi pengembangan software.
UML tidak hanya merupakan sebuah bahasa pemograman visual saja,
namunjuga dapat secara langsung dihubungkan ke berbagai bahasa pemograman,
seperti JAVA, C++, Visual Basic, atau bahkan dihubungkan secara langsung ke
dalam sebuah object-oriented database. Begitu juga mengenai pendokumentasian
dapat dilakukan seperti; requirements, arsitektur, design, source code, project plan,
tests, dan prototypes.
• Diagram-Diagram UML
UML 2 terdiri dari 13 jenis diagram resmi seperti tertulis dalam Tabel 2.1 dan
mengklasifikasi mereka seperti pada gambar 2.2. Meskipun jenis-jenis diagram ini
merupakan cara orang-orang memperlakukan UML dan cara mengorganisasikan
buku ini, para perancang UML tidak memandang diagram sebagai bagian yang
sentral. Dan hasilnya, jenis-jenis diagram sebagai bagian yang sentral. Acapkali
secara legal dapat menggunakan elemen-elemen dari satu jenis diagram untuk
diagram yang lain. Standard UML menunjukkan bahwa elemen-elemen tertetu hanya
diambil dari jenis diagram tertentu, tetapi ini bukanlah hal yang dianjurkan.
No. Diagram Kegunaan Turunan
1 Activity Behavior prosedural dan paralel
Di UML 1
2 Class Clas, fitur, dan hubungan-hubungan
Di UML 1
3 Communication Interaksi antar objek, penekanan pada jalur
Diagram kolaborasi UML 1
4 Component Struktur dan koneksi komponen
Di UML 1
5 Composite structure
Dekomposisi runtime sebuah class
Baru di UML 2
6 Deployment Pemindahan artifak ke node
Di UML 1
7 Interaction overview
Campuran sequence dan activity diagram
Baru di UML 2
8 Object Contoh konfigurasi dari contoh-contoh
Tidak resmi di UML 1
9 Package Struktur hierarki compile time
Tidak resmi di UML 1
10 Sequence Interaksi antar objek, penekanan pada sequence
Di UML 1
11 State machine Bagaimana even mengubah objek selama aktif
Di UML 1
12 Timing Interaksi antar objek, penekanan pada timing
Baru di UML 2
13 User case Bagaimana pengguna berinteraksi dengan sebuah sistem
Di UML 1
Tabel 2.1. Tabel Jenis Diagram UML
Gambar 2.3. Klasifikasi Diagram UML
Sumber : UML Distilled Panduan Singkat Bahasa Pemodelan Objek Standar
(Martin Fowler)
• Use Case Diagram
Pada umumnya use case sistem merupakan sebuah interaksi dengan
perangkat lunak, sedangkan sebuah use case bisnis berbicara tentang bagaimana
sebuah bisnis menanggapi seorang konsumen atau sebuah event. Use case
diagram berfungsi untuk menggambarkan kebutuhan system dari sudut pandang
user, mengfokuskan pada proses komputerisasi (automated processes),
menggambarkan hubungan antara use case dan actor, serta menggambarkan
proses system (kebutuhan system dari sudut pandang user).
Gambar 2.4. Contoh Use Case Diagram
• Activity Diagram
Activity diagram adalah teknik untuk menggambarkan logika prosedural,
proses bisnis, dan jalur kerja. Dalam beberapa hal, diagram ini memainkan peran
mirip sebuah diagram alir, tetapi perbedaan prinsip antara diagram ini dan notasi
diagram alir adalah diagram ini mendukung behavior paralel.
Gambar 2.5.
Contoh Activity Diagram
• Class Diagram
Kelas diagram adalah representasi visual dari sebuah aplikasi yang
menunjukkan class dan hubungan antar class. Class diagram juga
mendeskripsikan jenis-jenis objek, properti dan operasi sebuah class dan batasan-
batasan yang terdapat dalam hubungan objek tersebut.
Gambar 2.6. Contoh
Class Diagram
• Sequence Diagram
Sequence diagram secara khusus menjabarkan behavior sebuah skenario
tunggal. Diagram ini tersebut menunjukkan sejumlah objek contoh dan pesan-
pesan yang melewati objek-objek ini di dalam use case.
Gambar 2.7. Contoh Sequence Diagram
• Perancangan Masukan dan Keluaran (Input Output Design)
• Design Input
Untuk membuat tahapan baru ke dalam perkembangan sistem adalah
dengan menggunakan dokumen dan prosedur desain input sehingga
perkembangan sistem dapat berkembang dengan cepat dan akurat pada system
informasi.
Tujuan desain input :
• Untuk mengidentifikasikan biaya pemasukan data.
• Untuk menjamin kemasukan data dapat diterima dan dimengerti oleh
pemakai.
• Desain Output
Desain Output merupakan keberhasilan dari sistem informasi. Setelah
desain input data file berlangsung maka akan terjadi desain output.
• Konsep Dasar Java
• Sejarah Singkat Bahasa Pemrograman Java
Java secara resmi diperkenalkan oleh SUN pada dunia pada tanggal 23 Mei
1995. Sedangkan sejarah pembangunan Java sendiri sudah dimulai sejak tahun 1991.
Saat itu tim “Stealth Project” mengadakan pertemuan (brainstorming) untuk
menciptakan suatu sistem software yang mampu berjalan pada alat-alat elektronik
(small devices).
James Gosling berkonsentrasi pada ide pembuatan bahasa pemrograman.
Pada Juni 1991, muncullah bahasa interpreter “Oak” yang menjadi cikal bakal dari
Java. Kemudian secara resmi pada tahun 1995 Java diperkenalkan bersama dengan
browser HotJava, Java pun merambah ke dunia web.
Kenyataan ini mungkin agak sedikit berbeda dengan ide pembuatan Java pada
awalnya. Internet ternyata membantu menjadikan Java terkenal seperti sekarang ini.
Memang harus diakui karena semakin berkembangnya Internet, maka fokus
pemograman saat ini mengarah ke pemograman Internet itu sendiri.
Saat ini Java dibagi menjadi 3 macam framework atau teknologi yaitu J2SE
untuk pemogramman aplikasi berbasis console dan destop, kemudian J2EE untuk
pemogramman aplikasi berskala enterprise seperti aplikasi web-base (JSP dan
Servlet), komponen (EJB), Web Services dan lain – lain. Kemudian framework yang
terakhir adalah J2ME untuk pemogramman small divice seperti hanphone dan pda.
• Kelebihan dan Karakteristik Java
Sintaks bahasa pemogramman Java adalah pengembangan dari bahasa
pemogramman C/C++. Sehingga bagi mereka yang sudah terbiasa dengan C/C++,
tidak akan mengalami kesulitan mempelajari bahasa pemogramman Java.
Java adalah bahasa pemogramman yang sederhana dan tangguh. Berikut ini
adalah beberapa karakteristik dari Java sesuai dengan white paper dari Sun.
• Berorientasi Object, java telah menerapkan konsep pemograman berorientasi
object yang modern dalam implementasinya
• Robust, java mendorong pemograman yang bebas dari kesalahan dengan bersifat
strongly typed dan memiliki run-time checking
• Protable, program java dapat berjalan pada sistem operasi apapun yang miliki
Java Virtual Machine
• Multithreading, Java mendukung pemograman multithreading dan telah
terintegrasi secara langsung dalam bahasa Java.
• Dinamis, program Java dapat melakukan sesuatu tindakan yang ditentukan pada
saat eksekusi program dan bukan pada saat kompilasi.
• Sederhana, Java menggunakan bahasa yang sederhana dan mudah dipelajari.
• Terdistribusi, Java didesain untuk berjalan pada lingkungan yang terdistribusi
seperti halnya internet.
• Aman, aplikasi yang dibuat dengan bahasa java lebih dapat dijamin keamanannya
terutama untuk aplikasi internet.
• Netral secara arsitektur, Java tidak terikat pada suatu mesin atau sistem operasi
tertentu.
• Interpreted, aplikasi Java bisa dieksekusi pada platform yang berbeda-beda
karena melakukan interpretasi pada bytecode.
• Berkinerja Tinggi, bytecode Java telah teroptimasi dengan baik sehingga
eksekusi program dapat dilakukan secara cepat.
• Beberapa Istilah dalam Bahasa Pemrograman Java
• Modifier
Modifiers digunakan untuk menentukan penggunaan dari suatu data,
methods dan class. Contoh modifiers adalah public, static, private, final, abstract
dan protected. Penggunaan modifier berfungsi untuk melakukan enkapsulasi
(membungkus data) pada objeck. Dengan menggunakan modifier kita dapat
menentukan siapa saja yang boleh menggunakan atau mengakses member dari
suatu objek.
• Class Modifier
Bentuk penggunaan modifier pada class:modifier class NamaClass{ … …}
Modifier Keterangan
(default) Class visible atau dapat digunakan hanya
pada package yang sama
public Class visible terhadap semua package yang
berbeda – beda
final Class tidak dapat diturunkan lagi / extends
• Method Modifier
Bentuk penggunaan method modifier:modifier tipe-data namaMethod(parameter){ … …}
Berikut ini adalah daftar modifier yang dapat digunakan pada method.
Modifier Keterangan
(default) Method visible atau dapat digunakan hanya
pada package yang sama
public Method visible pada semua package
private Method visible hanya di dalam class itu
sendiri
protected Method visible didalam package dan sub
classnya
static Lihat sub bab sebelumnya
final Method tidak dapat diubah / dioverride pada
subclass (dibahas pada bab selanjutnya)
abstract Method harus dioverride / didefinisikan pada
subclassnya (dibahas pada bab selanjutnya)
• Statements
Statements merupakan baris perintah atau kumpulan perintah. Setiap
statements pada java selalu diakhiri dengan titik koma ( ; ).
• Statement Break
Penggunaan break yang utama adalah untuk menghentikan proses
perulangan di dalam while, do-while atau di dalam for. Perhatikan contoh
program berikut ini:class TestBreak{ public static void main(String[] args){ System.out.println(“Sebelum for”); for(int x=0;x<10;x++){ if(x==4) break; System.out.pritnln(“Nilai x : ”+x); } System.out.println(“Setelah For”); }}
• Statement Continue
Terkadang dalam mengeksekusi suatu kode dalam perulangan anda ingin
terus melakukan perulangan, tetapi karena kondisi tertentu anda ingin kode
setelah posisi tertentu tersebut tidak dieksekusi. Di sinilah kita dapat
menggunakan continue. Perhatikan contoh berikut ini:class TestContinue{ public static void main(String[] args){ int x=10; System.out.println(“Sebelum while”); while(x<=50){ x++; if(x%2==0) continue; System.out.println(“Nilai x : ”+x); } System.out.println(“Sesudah while”); }}
• Statement Return
Perintah dalam Java terakhir yang dapat dikategorikan sebagai jump adalah
perintah return yang digunakan di dalam method. Method dipanggil oleh
bagian lain dari program. Dengan menggunakan perintah return, alur eksekusi
dikembalikan ke bagian program yang memanggil method tersebut.
public class Orang{ public String cetakNama(){return Hello Nama Saya Hendro!”; } public statc void main(String[] args){ Orang org = new Orang(); System.out.println(“Sebelum panggil method”); System.out.println(org.cetakNama()); System.out.println(“Sesudah panggil method”); }}
• Blocks
Blocks digunakan untuk membentuk suatu grup statements. Blocks
diawali dengan kurung kurawal buka ( { } dan kurung kurawal tutup ( } ). Blocks
dapat digunakan secara nested (blocks didalam blocks).
• Classes
Classes merupakan inti dari program Java. Suatu class merupakan
“blueprint” untuk menciptakan suatu object. Dengan mendeklarasikan suatu
class, maka kita telah mendeklarasikan suatu tipe data baru (tipe data referensi).
Dengan menggunakan tipe data class ini, kita dapat menciptakan instance-nya
yang merupakan objek sesungguhnya. Bentuk dasar class adalah sebagai berikut:class NamaClass{tipe-data namaVariabel1;….….tipe-data namaVariabelN;tipe-data namaMethod1(parameter){ //implementasi method1}….….tipe-data namaMethodN(parameter){ //implementasi methodN}
}
• Method
Methods merupakan kumpulan statements yang berfungsi melakukan
tugas tertentu di dalam program. Untuk aplikasi Java kecuali Applet harus
mempunyai method main(). Bentuk umum pendeklarasian method adalah sebagai
berikut:tipe-data namaMethod(daftar-parameter){ //implementasi}
• Aturan Penamaan (Naming Convention)
• Penamaan Class
Huruf pertama setiap kata harus huruf besar. Contoh:
• HelloWorld
• Employee
• BankAccount
• Penaaam Method
Huruf pertama setiap kata harus huruf besar, kecuali kata pertama. Contoh:
• getEmployeeName()
• setSpeedLimit()
• accelerate()
• Penaaam Field atau Variabel
Huruf pertama setiap kata harus huruf besar, kecuali kata pertama. Contoh:
• employeeName
• employeeAccountNumber
• address
• Penamaan Konstanta / Constant
Semua huruf harus huruf besar. Apabila lebih dari satu kata, gunakan underscore
( _ ) sebagai pemisah. Contoh:
• PI
• MIN_RATE
• MAX_HEIGHT
• Struktur Penulisan SourceCode Java
• Array
• Array Satu Dimensi
Array adalah sebuah set variabel yang diberi nama tertentu yang memiliki
tipe data yang sama. Tiap variabel di dalam array disebut elemen, dimana tiap
elemen memiliki indeks dengan tipe integer.
Berikut ini contoh deklarasi array:
• int[] nilaiSiswa; //cara ini lebih dianjurkan
• int nilaiSiswa[];
• float[] jumlahPanen;
Array yang sudah dideklarasikan perlu didefinisikan, seperti contoh berikut:
• nilaiSiswa = new int[50];
• jumlahPanen = new float[100];
Untuk memberikan nilai kepada sebuah elemen array caranya dengan
menyebutkan nama array yang diikuti indeks dan nilai yang diberikan, seperti
contoh berikut:
• nilaiSiswa[0] = 8;
• jumlahPanen[2] = 223.66;
• Array Multidimensi
Cara pendeklarasian array multidimensi ini pada dasarnya sama dengan array
satu dimensi di mana anda cukup menambahkan [] sesuai dengan dimensi
yang anda inginkan. Contoh:
• int[][] arr2; //array 2 dimensi
• int[][][] arr3; //array 3 dimensi
• int[][][][] arr4; //array 4 dimensi
Untuk pengalokasian memori array multidimensi, memiliki sintaks yang
sama dengan array satu dimensi. Contoh:
• int[][] arr2 = new int[3][4];
• Pernyataan Kontrol
• Percabangan If
Pernyataan if digunakan untuk menguji suatu kondisi kemudian mengerjakan
pernyataan yang lain sesuai hasil pengujian. Bentuk pernyataan if adalah:
if(ekspresi) pernyataan;
Contoh:
if(angka % 2 != 0) ++angka;if(nilai<10) System.out.println (“kurang dari 10”);if(nilai<51){ System.out.println(“Tidak lulus”); status=false;}
Untuk menambahkan pernyataan yang akan dijalankan jika kondisi uji salah,
maka dapat ditambahkan klausa else, seperti contoh berikut:if(nilai<51){ System.out.println(“Tidak lulus”); status=false;}else{ System.out.println(“Lulus”); status=true;}
Untuk melakukan pengujian lebih dari satu kali, dapat ditambahkan klause
else if, seperti contoh berikut:if(nilai<51){ System.out.println(“Tidak lulus”); status=false;}else if((nilai>51) && (nilai<71)){ System.out.println(“Lulus, status=cukup”); status=true;}else { System.out.println(“Lulus, status=memuaskan”); status=true;}
• Percabangan Switch
Pernyataan switch digunakan untuk menguji beberapa pilihan berdasarkan
beberapa nilai tertentu. Ekspresi yang digunakan harus menghasilkan data
dengan tipe char, byte, short dan int. Bentuk dari pernyataan switch adalah
sebagai berikut:switch(ekspresi){ case a: pernyataan; break; ..... default: pernyataan; break;}
Contoh:
switch(status){ case 1: gaji = 500000; break; case 2: gaji = 750000; break; default:]gaji = 300000;break;}
• Struktur Perulangan
• Perulangan For
Pernyataan for digunakan untuk melakukan perulangan dengan menentukan
kondisi perulangan dan pernyataan increment. Bentuk pernyataan for adalah
sebagai berikut:for(inisialisasi ; kondisi; increment){ pernyataan1; pernyataan2; ....}
Contoh:
byte nilai=1;for (int i=0; i<8; i++){ nilai *= 2;}
• Perulangan While
Pernyataan while digunakan untuk melakukan perulangan dengan
menentukan kondisi yang menyebabkan perulangan dihentikan. Bentuk
pernyataan while adalah sebagai berikut:while(ekspresi){ pernyataan1; pernyataan2; ....}
Contoh:
while (int i < 10){ nilai += 10; i++;}
• Perulangan do-while
Penggunaan do-while ini mirip dengan bentuk while di atas. Perbedaan
utamanya hanyalah dua, yaitu:
• Penyataan yang ingin dieksekusi harus diletakan di dalam blok kode,
sekalipun hanya ingin mengeksekusi satu buah penyataan saja.
• Pengecekan kondisi (true atau false) dilakukan pada bagian akhir
sehingga pernyataan yang ada di dalam blok perulangan akan dieksekusi
minimal satu kali, sekalipun eksekusi do-while pertama kali menemukan
kondisi bernilai false.
Penggunaan bentuk do-while mengikuti bentuk berikut ini:do{ Pernyataan1; Pernyataan2; ....}while(kondisi);
• Konsep Dasar NetBeans IDE 6.5
NetBeans mengacu pada dua hal, yakni platform untuk pengembangan aplikasi
desktop java, dan sebuah Integrated Development Environment (IDE) yang dibangun
menggunakan platform NetBeans. Platform NetBeans memungkinkan aplikasi dibangun
dari sekumpulan komponen perangkat lunak moduler yang disebut ‘modul’. Sebuah modul
adalah suatu arsip Java (Java archive) yang memuat kelas-kelas Java untuk berinetraksi
dengan NetBeans Open API dan file manifestasi yang mengidentifikasinya sebagai modul.
Aplikasi yang dibangun dengan modul-modul dapat dikembangkan dengan menambahkan
modul-modul baru. Karena modul dapat dikembangkan secara independen, aplikasi
berbasis platform NetBeans dapat dengan mudah dikembangkan oleh pihak ketiga secara
mudah dan powerful.
• Akses Data
Untuk melakukan akes data, Java menyediakan banyak cara. Cara yang sering
dipakai adalah koneksi dengan jdbc. Akan tetapi, untuk mempermudah dan
mempersingkat proses manipulasi data, banyak kalangan yang mengembanngkan
framework diantaranya :
• Hibernate Framework
Hibernate merupakan framework Object Relational Mapping, dimana dengan
framework ini kita bisa lebih mudah melakukan proses Persistence.
• Spring Framework
Framework ini memperkenalkan konsep IoC (Injection of Controll) dan dikenal
dengan nama Dependency Injection. selain itu Spring juga terus berkembang.
Spring dapat dikatakan sebsagai Framework Enterprise, karena bisa ditempatkan
dimana saja dan dapat diintegrasikan dengan berbagai framework seperti
Hibernate
• Apache Lucene
Lucene ini merupakan framework untuk information retrieval, dimana dengan
lucene ini, untuk membangun sistem yang support IR, akan lebih mudah. Hampir
sama seperti melakukan proses save ke database.
• Apache ActiveMQ
Activemq merupakan implementasi dari JMS. Activemq sangat bagus jika kita
membangun aplikasi yang membuatuhkan fasilitas JMS. namun jika kita
menggunakan Enterprise Server seperti GlassFish, JBoss, Geronimo, Websphere.
ActiveMQ jadi tidak perlu digunakan. Akan tetapi, jika kita akan membangun
sebuah sistem yang perlu JMS tanpa menggunakan Enterprise Server, ActiveMQ
wajib dipakai.
• NetBeans IDE 6.5 sebagai IDE (Integrated Development Environment) Java
yang handal
Untuk mempermudah pengembangan aplikasi berbasis Java, sangat
dibutuhkan IDE yang handal. Java mempunyai banyak IDE yang dapat kita
pergunakan untuk membantu mempermudah dan mempercepat pengembangan
program aplikasi. Beberapa IDE Java yang terkenal diantaranya Kawa Pro,
SyncJedit, JBuilder, Eclipse dan lain sebagainya.
Dalam penulisan skripsi ini, untuk menunjang perancangan dan pembangunan
aplikasinya, penulis memanfaatkan NetBeans IDE 6.5. Beberapa alasan penulis
adalah kelengkapan NetBeans IDE 6.5 untuk membangun sebuah aplikasi, karena
telah dilengkapi :
• Matisse GUI builder memungkinkan pengembangan aplikasi java desktop
menggunakan vusial GUI designer. Matisse memanfaatkan Group layout yang
dikembangkan oleh swing engineer untuk menjadi fondasi layouting bagi aplikasi
Swing. Dengan adanya Matisse kita bisa mengucapkan selamat tinggal cara lama
membuat aplikasi swing, yaitu dengan mengetik satu-satu proses layouting dan
pembuatan komponen GUI. Matisse memotong nyaris 90% waktu yang
digunakan untuk membuat layout aplikasi swing di masa lalu.
• Netbeans Mobility Pack bersama Matisse GUI builder adalah mahkota netbeans,
dua module ini menjadi feature yang banyak dicari user dan tidak ada IDE lainya
yang mempunyai feature sebagus ini. Development Java ME menggunakan
Mobility Pack sangat mudah dan menyenangkan, Netbeans menyediakan
komponen yang dapat ditambahkan dengan mudah. Flow Editor memudahkan
user untuk merancang "aliran" aplikasi Java ME secara visual, hanya perlu
operasi drag-n-drop sederhana untuk merancang "aliran" aplikasi Java ME.
• UML Designer merupakan bagian dari Netbeans Enterprise Pack untuk
memudahkan desain aplikasi berbasis OOP. Cukup dengan membuat design
UMLnya kita bisa mengenerate class java secara otomatis. Proses ini mengurangi
waktu yang diperlukan untuk mendesign API dari aplikasi yang akan kita
kembangkan. UML designer juga memungkinkan adanya proses reverse
engineering dari kode yang sudah dibuat untuk menghasilkan UML Class
Diagram
• Netbeans Visual Web Pack memungkinkan pengembangan aplikasi berbasis Java
EE 5 dengan ditambah fungsionalitas dari JSF-AJAX. Pack ini memungkinkan
kita mendevelop aplikasi web secara visual menggunakan operasi drag-n-drop.
Banyak sekali komponen JSF yang sudah dilengkapi dengan kemampuan AJAX
siap digunakan hanya dengan melakukan drag-n-drop, sederhana.
• Feature databinding memungkinkan kita mengambil komponen table dari
database dan meletakkan kedalam komponen JSF, abra-kadabra, secara otomatis
table tersebut dibind dengan komponen JSF tersebut. Tidak hanya table, kita juga
bisa mendefinisikan query yang melakukan join untuk kemudian di-bind dengan
komponen JSF secara otomatis. Query yang dibuat pun dapat digenerate dari
feature visual query editor. Visual Web Pack juga mempunyai editor CSS yang
canggih yang memungkinkan kita membuat CSS file untuk mendekorasi
komponen JSF. AJAX komponen juga tersedia dalam pack ini, kita bisa
menggunakan AJAX komponen untuk membuat aplikasi menjadi jauh lebih
interaktif mengikuti paradigma Web 2.0.
• Netbeans Profiler sudah tersedia semenjak versi 4.1, kita dapat memonitor
penggunaan CPU maupun penggunaan memory menggunakan netbeans profiler.
Dalam versi 5.5, netbeans profiler dilengkapi dengan kemampuan melakukan
profiling terhadap aplikasi Java EE, tidak hanya Java SE. Tidak seperti profiler
lain, kita bisa mendefinisikan bagian mana saja yang akan diperiksa, sehingga
Netbeans profiler dapat melakukan pekerjaanya secara efisien dan tepat sasaran.
Dengan Netbeans Profiler kita dapat : Memonitor aplikasi, menganalisis
performance, menganalisis sebagian kode program, penggunaan memori dan
custom profiling.
• Sun Web Development Pack digunakan untuk mengembangkan aplikasi berbasis
AJAX, web service dan beberapa feature lain yang mendukung paradigma Web
2.0. Pack ini masih dalam pengembangan dan dalam masa uji coba (beta) dan
memerlukan banyak feedback dari user. Walau belum masuk dalam jajaran
Netbeans Pack, tetapi fasilitasnya sudah cukup banyak dan dapat berjalan
sempurna di netbeans 5.5. Didalamnya terdapat beberapa sub module antara lain :
jMaki, RESTfull Webservice dan Rome project. jMaki membundle banyak sekali
komponen AJAX yang keren abis, seperti FishEye, yahoo map, google map dan
lain sebagainya. RESTful web service merupakan arsitektur web service yang
bersifat statless, sifat ini memungkinkan dihematnya bandwith selama proses
komunikasi antara client dan server.
• Komponen untuk Membangun Aplikasi Berbasis Desktop pada NetBeans IDE
6.5
NetBeans IDE 6.5 menyediakan komponen-komponen yang dapat kita
pergunakan untuk membangun aplikasi berbasis desktop. Dengan Mattise GUI
Builder kita dapat dengan mudah membangun aplikasi berbasis desktop dengan
NetBeans 6.5. Beberapa komponen yang sering kita pakai diantaranya :
• Project
NetBeans IDE 6.5 membuldel project menjadi susunan yang teratur pada hierarki
direktori standar Java. Sehingga class-class yang ada akan diletakkan pada
folder-folter yang telah ditentukan.
Gambar 2.8. Mattise GUI Builder NetBeans IDE 6.5
• Component Pallete
Component Pallete merupakan pallate yang menyediakan komponen-komponen
untuk membangun aplikasi dengan NetBeans. Masing-masing mempunyai fungsi
yang berbeda.
Gambar 2.9. Component
Pallete
• Event
Event adalah peristiwa atau kejadian yang diterima oleh suatu object,
misalnya klik, drag, drop, dan lain-lain. Event yang diterima obyek akan memicu
NetBeans IDE 6.5 untuk memeriksa keberadaan kode program yang
didefinisikan dalam event tersebut untuk segera dijalankan.
• Kode Program (Source Code)
Kode program adalah serangkaian tulisan perintah yang akan
dilaksanakan jika suatu object dijalankan. Kode program ini akan mengontrol dan
menentukan jalannya suatu object. Dalam jendela code inilah setiap source code
untuk aplikasi program dalam NetBeans IDE 6.5 ditulis. Semakin banyak
diperlukan pengembangan aplikasi, maka akan semakin banyak kode yang harus
ditulis untuk mengingat segala sesuatunya bersama-sama.
Gambar 2.10.
Jendela Source Editor NetBeans IDE 6.5
• Method
Metode adalah suatu set perintah halnya prosedur dan fungsi, tetapi sudah
tersedia di dalam suatu object. Metode biasanya akan mengerjakan suatu tugas
khusus pada suatu object.
Contoh :public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { FrameSiswa framesiswa = new FrameSiswa(); framesiswa.setVisible(true); framesiswa.setLocationRelativeTo(null); } });}
• Properties
Properties digunakan untuk menentukan setting suatu komponen. Satu
komponen biasanya memiliki beberapa properties yang dapat diatur langsung
dari jendela properties atau lewat kode program. Bentuk property akan
menentukan cara kerja komponen yang berhubungan pada saat program tersebut
dijalankan. Jendela properties menguraikan setiap elemen individual pada
aplikasi yang dibuat.
Gambar 2.11. Properties Components
NetBeans IDE 6.5
• Konsep Dasar IReport
Ireport merupakan produk OpenSource dari JasperReport. IReport juga dapat
diintegrasikan langsung pada NetBeans IDE. Hal ini menjadikan IReport lebih mudah
untuk digunakan dan lebih praktis.
IReport juga telah banyak mendukung berbagai macam koneksi database dari
bahasa pemrograman Java. Dukungan IReport diantaranya apda koneksi dengan jdbc,
Netbeans JDBC Connection, XML File DataSource, JavaBeans Set DataSource, File CSV
DataSource, JRDataSource Provider, Custom JRDataSource, Empty DataSource,
Hibernate Connection, Spring Loaded Hibernate Connection, EJBQL Connection, XMLA
Server, Mondrian OLAP Connection, Query Execute Mode. Selain itu IReport juga dapat
mengekspor laporan ke dalam bentuk file pdf, xls, dan lain sebagainya, sehingga hal ini
menambah popularitas IReport.
Gambar 2.12. IReport pada NetBeans IDE 6.5
• Konsep Dasar Database MySQL
• Pengertian Structured Query Language (SQL)
Structured Query Language disingkat SQL adalah bahasa standar yang
digunakan dalam database management system (DBMS) untuk berkomunikasi
dengan basis data atau database, yang meliputi perintah-perintah untuk mengganti
isi atau memodifikasi struktur database, mengganti setting dan membuat sistem
security data, memberi dan menentukan wewenang user pada database atau tabel,
mentransfer data dari satu database ke database lain, menangani proses transaksi
dalam suatu aplikasi (Kok Yung, 2003).
Database itu sendiri dapat dianggap sebagai suatu penyusunan data agar
dapat diakses dengan mudah dan cepat, yang disimpan secara terstruktur dalam
suatu media pengingat yang sering disebut dengan harddisk. Database merupakan
sekumpulan data yang terdiri atas satu atau lebih tabel yang terintegrasi satu sama
lain dan disimpan dengan beberapa cara pengorganisasian, dimana setiap pemakai
(user) diberi wewenang (otorisasi) untuk dapat mengakses (mengubah, mengubah,
menganalisis, menambah, serta memperbaiki) data dalam tabel-tabel tersebut (Kok
Yung, 2003).
Database Management System (DBMS) dapat melakukan pekerjaan untuk
menambah, menghapus, memanipulasi serta memperoleh data atau informasi
berdasar perintah SQL yang diberikan melalui sebuah aplikasi yang berupa
program develop menggunakan Visual Studio, .NET, Java, Phyton, Borland dan
bahasa program lainnya. Jika ingin mendapatkan suatu informasi, maka perintah
SQL tersebut diketikkan pada aplikasi database. Perintah-perintah tersebut akan
diteruskan ke DBMS untuk diproses. Pada saat DBMS melakukan tugasnya,
DBMS tersebut akan mengambil atau memanipulasi data-data dalam database
sesuai perintah SQL yang diterimanya, dan kemudian memberikan atau
mengembalikan data yang telah diproses.
• Sejarah Structured Query Language (SQL)
Pertengahan tahun 1970-an, vendor database berlomba-lomba
mengimplementasikan database relational yang berbasiskan model relational. IBM
sendiri tengah mengembangkan produk relasionalnya yang bernama System/R,
untuk bahasa querynya IBM menciptakan SEQUEL. Ciri-ciri bahasa ini adalah
mirip bahasa Inggris, deklaratif, dan high level yang mirip dengan bahasa
pemrograman COBOL.
Ternyata System/R tidak sukses di pasaran, sehingga IBM pada tahun 1979
menciptakan produk database relasional yang lain yaitu DB/2. Namun bahasa
SEQUEL ternyata diminati oleh vendor lain seperti Oracle dan Ingres yang
akhirnya diubah menjadi SQL oleh IBM.
Awal tahun 1980-an sudah ada produk database yang menggunakan SQL.
Badan standar Amerika, ANSI akhirnya mengadopsi SQL menjadi standar tahun
1986. Satu tahun kemudian ISO mengangkat SQL sebagai bahasa standar. Standar
pertama ini sering disebut SQL-86 atau SQL-87.
Standar berikutnya adalah SQL-89 yang merupakan versi minor dari SQL-
87. dokumen standar SQL-89 (belum schema, full outer join, dan cascade
update/delete untuk foreign key constraint. SQL-92 merupakan generasi kedua
standar SQL dan sering disebut SQL2, penambahannya antara lain : information
schema, berbagai tipe join, union di view, tipe-tipe data tanggal, domain, ALTER
TABLE, CASE.
SQL-1999 merupakan generasi ketiga standar SQL dan dijuluki SQL3,
penambahan fiturnya antara lain tabel inheritance, tipe data komposit (array, row)
dan tipe data referensi (pointer), recursive query, regex, trigger, tipe data Boolean
dan savepoint. SQL:2003 merupakan standar SQL yang berkaitan dengan XML.
• MySQL sebagai bahasa Structured Query Language (SQL)
MySQL merupakan salah satu database relasional yang mendukung
pemakaian Structured Query Language (SQL) dan dirancang untuk penggunaan
aplikasi dengan arsitektur client-server, yang memungkinkan pengguna untuk
mengolah data didalam database tersentral pada komputer pusat yang disebut
dengan server. Sedangkan informasi yang dihasilkan dapat digunakan bersama-
sama oleh beberapa user didalam komputer lokalnya yang disebut client. (Ridwan
Sanjaya dan Yoni Eza Ikhmawan, 2003).
Pada awalnya MySQL dioperasikan hanya pada satu platform saja. Namun
seiring perkembangan teknologi, maka MySQL dapat dioperasikan ke dalam
berbagai platform seperti Windows, Linux dan Free BSD. Kecepatan akses MySQL
dan kemampuannya untuk integrasi ke dalam berbagai bahasa pemrograman yang
menjadikannya standar dalam pemrograman.
MySQL dapat dengan bebas didownload melalui http://www.mysql.com
atau melalui server terdekat dengan Indonesia, antara lain http://mysql.hjc.edu.sg
(Singapura), http://mysql.ntcu.edu.tw (Taiwan), dan
http://mirror.aarnet.edu.au/mysql (Australia).
Pada platform sistem operasi Linux, MySQL merupakan paket aplikasi
database yang sangat populer dan hampir setiap distro Linux telah membundlenya.
Untuk masing-masing distro telah memaketkan sesuai jenis distronya, misalkan
debiat / ubuntu (*.deb), Mandriva, OpenSuse (*rpm) dan lain sebagainya. Untuk
mempermudah pengaturan juga telah disediakan MySQL Admin dalam versi GUI,
sehingga kita tidak perlu report harus menghafalkan sintax-sintax SQL.
Gambar 2.13. MySQL Administrator
Sedangkan untuk dapat mencoba mengoperasikan perintah-perintah SQL
dapat menggunakan MySQL Monitor.
Gambar 2.14. MySQL Monitor
• Tipe Data MySQL
MySQL menyediakan beberapa tipe data seperti integer, long, single,
double, currency, string, byte, Boolean, date, object, variant.
Adapun jenis tipe data MySQL antara lain:
Tabel 2.2. Tabel Tipe Data MySQL
Type Range
tinyint Ukuran terkecil dari integer.Signed range : -128 s.d 127Unsigned range : 0 s.d 255
smallint Ukuran kecil dari integer.Signed range : -32768 s.d 32767Unsigned range : 0 s.d 65535
mediumint Ukuran menengah dari integerSigned range : -8388608 s.d 8388607Unsigned range : 0 s.d 16777215
int, integer IntegerSigned range : -2147483648 s.d 2147483647Unsigned range : 0 s.d 4294967295
bigint Ukuran terbesar dari integerSigned range : -9223372036854775808 s.d 9223372036854775808Unsigned range : 0 s.d 18446744073709551615
float Presisi tunggalRange : -3.402823466E+38 s.d -1.175494351E-38,0, 1.175494351E-38 s.d 3.402823466E+38
double,double precision, real
Presisi gandaRange : -7976931348623157E+308 s.d -2.2250738585072014E-308, 0, dan 2.2250738585072014E-308 s.d 1.7976931348623157E+308
decimal,numeric
Pecahan dengan range seperti tipe data DOUBLE
Date TanggalFormat : 'YYYY-MM-DD'
datetime Kombinasi tanggal dan jamRange : '1000-01-01 00:00:00's.d ‘9999-12-31 23:59:59'
Format : 'YYYY-MM-DD HH:MM:SS'timestamp Kombinasi tanggal dan jam yang berisi waktu saat
tabel diakses.Range : '1970-01-01 00:00:00's.d Tahun 2037
Format: YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD, atau YYMMDD
Time JamRange : '-838:59:59's.d '838:59:59'Format : 'HH:MM:SS'
Year TahunRange : 1901 s.d 2155 (4 digit),1970-2069 (2 digit)Format : 'YYYY'
Char Karakter dengan panjang tetap sesuai saat pembuatan tabel dengan karakter spasi dihilangkan pada saat penyimpananRange : 1 s.d 255 characters
nchar,national char
Karakter dengan panjang tetap sesuai saat pembuatan tabel namun karakter spasi tidak dihilangkan pada saat penyimpananRange : 1 s.d 255 characters.
varchar Karakter dengan panjang sesuai saat panjang karakter ditulis, dengan karakter spasi dihilangkan pada saat penyimpanan.Range : 1 s.d 255 characters.
tinyblob,tinytext
TEXT/BLOB dengan panjang maksimal 255 karakter
mediumblob, mediumtext
65535
longblob,longtext
16777215
enum ('value1', 'value2', …)
Obyek string yang hanya boleh diisi dari daftar pilihan value yang diberikan, NULL, atau error valueMaksimum value : 65535
set ('value1', 'value2', …)
Obyek string yang hanya boleh diisi dari daftar pilihan value yang diberikan, NULL, atau error valueMaksimum value : 64
Sumber : Ridwan Sanjaya dan Yoni Eza Ikhmawan, 2003
• Bahasa SQL
Dalam SQL terdapat tiga subbahasa, yaitu Data Definition Language (DLL)
yang digunakan untuk membangun objek-objek dalam database, seperti tabel dan
indeks; Data Manipulation Language (DML) yang digunakan untuk menambah,
mencari, mengubah dan menghapus baris dalam tabel; dan Data Control Language
(DCL) yang digunakan untuk menangani masalah sekuriti dalam database. Ketiga
komponen ini dapat diakses setelah database dibuka atau dipanggil. (Ridwan
Sanjaya dan Yoni Eza Ikhmawan, 2003).
Hal yang perlu diperhatikan dalam pembuatan database adalah penulisan
nama database tidak diperbolehkan menggunakan spasi dan karakter non standar.
Bentuk penulisan perintah untuk membuat database baru adalah :
Create database nama_databases;
Untuk membuat database latihan:
create database latihan;
Sedangkan untuk melihat keseluruhan database dapat digunakan perintah :
shows databases;
Untuk memanggil atau menggunakan database digunakan perintah:
use nama_database;
Untuk menggunakan database latihan:
use latihan;
Untuk menghapus database digunakan perintah:
drop database nama_database;
Untuk menghapus database latihan:
drop database latihan;
• Sintak Data Definition Language (DLL)
Sintak Data Definition Language terdiri atas create, alter, dan drop.
DDL bertugas untuk membuat objek SQL dan menyimpan definisinya dalam
tabel. Contoh obyek yang dimaksud adalah tabel, view, dan index. Pembuatan
tabel, serta perintah untuk menghapus tabel, dilakukan dengan subbahasa yang
tergolong dalam DDL.
• Membuat Tabel
Struktur penulisan:create table nama_table (nama_field type, …);
Sintaks membuat tabel produk :create table produk (nama varchar(25), harga bigint);
• Mengganti nama tabel
Struktur penulisan:alter table nama_table_lama rename nama_table_baru;
Sintaks mengganti tabel produk menjadi tabel barang:
alter table produk rename barang;
• Menghapus tabel
Struktur penulisan:
drop table nama_table;
Sintaks menghapus tabel barang:
drop table barang;
• Sintak Data Manipulation Language (DML)
Data Manipulation Language (DML) terdiri dari select, update, insert, dan
delete.
• Memasukkan data (insert)
Ada dua perintah yang dapat digunakan untuk memasukkan data ke dalam
tabel:insert into nama_table values (isi_field1, isi_field2, ..., isi_fieldn);
Contoh:insert into barang values (‘Buku’, 45000);
Jenis perintah yang kedua:insert into nama_table (nama_field1, nama_field2, ..., nama_fieldn) values (isi_field1, isi_field2, ..., isi_fieldn);
Contoh:insert into barang (nama, harga) values (‘Buku’, 45000);
• Menampilkan data (select)
Perintah select digunakan untuk menampilkan data. Perintah ini hampir
90% digunakan dalam pemakaian database MySQL untuk menampilkan
informasi berdasarkan kriteria dan urutan tertentu.
Struktur penulisanselect [fields] from [nama_tabel]where [kondisi]order by [nama_field]group by [nama_field] asc|desclimit [batasan];
Setelah penulisan select, [fields] dapat diganti dengan menyebutkan
satu nama field saja atau beberapa field sekaligus yang dipisah dengan
tanda koma (,), penulisan field-field tersebut digunakan untuk
memunculkan data dari kolom mana saja yang akan ditampilkan. Jika
seluruh kolom akan ditampilkan, dapat menggunakan tanda asterik (*)
untuk mewakilinya.
Kemudian perintah dilanjutkan dengan penulisan from
[nama_tabel], yang dimaksudkan untuk menyebutkan nama tabel yang akan
digunakan sebagai sumber untuk menampilkan kolom-kolom yang telah
disebutkan sebelumnya.
Contoh penulisan:select * from produk;select nama, harga from produk;
Sedangkan pada baris where [kondisi], dituliskan kriteria apa saja yang
disyaratkan untuk menampilkan data.
Contoh : untuk menampilkan produk pasta gigi:select * from produk where nama = ‘Pasta Gigi’;
Klausa order by digunakan untuk mengurutkan hasil. Untuk mengurutkan
berdasarkan urutan terkecil ke besar dapat menggunakan asc (ascending),
sedangkan untuk mengurutkan data yang terbesar ke yang kecil digunakan
desc (descending).
Contoh :select * from produk order by nama desc;
• Mengubah data (Update)
Digunakan untuk proses update (memperbaharui data) agar sesuai dengan
kondisi yang diinginkan.
Struktur penulisan:update nama_tabel set nama_field1=isi_baru1, nama_field2=isi_baru2, . . ., nama_fieldn=isi_barun where kriteria;
Contoh untuk mengubah nama produk pasta gigi menjadi odol:update produk set nama=”Odol” where nama=”Pasta gigi”;
• Menghapus data (Delete)
Digunakan untuk menghapus data apabila terdapat kesalahan data atau data
sudah tidak dipakai lagi.
Struktur penulisan:delete from nama_tabel where kriteria;
Contoh untuk menghapus nama produk pasta gigi:delete from produk where nama=”Pasta gigi”;
• Sintaks Data Control Language (DCL)
Data Control Language (DCL) merupakan alat kontrol keamanan terhadap
database dan tabelnya yang terdiri dari dua yaitu grant dan revoke.
Yang berhak pemberian perintah ini adalah adalah user yang mempunyai hak
sebagai admin (root).
• Grant
Grant digunakan untuk mengizinkan user mengakses table dalam database
tertentu.
Struktur penulisan:grant [privileges] on nama_tabel | nama_database.namatabel] to [nama_user];
Privileges dapat diisi dengan all privileges, jika hak akses terhadap database
atau tabel tertentu diberikan semuanya. Jika hanya diberikan untuk satu
tabel tertentu atau beberapa saja, dapat memilih diantara privileges alter,
create, delete, drop, file, reload, index, insert, process, references, reload,
select, shutdown, update, dan usage.
Contoh penggunaan grant untuk mengizinkan user “farazinux” mengakses
semua isi (disimbolkan dengan asterik atau *) yang ada pada database
latihan.grant all priveleges on latihan.* to farazinux@localhost;flush privileges;
• Revoke
Kebalikan dari Grant, Revoke digunakan untuk mencabut kembali izin yang
sudah diberikan sebelumnya oleh grant.
Struktur penulisan:revoke [privileges] on [nama_tabel | nama_database.namatabel] to [nama_user];
Contoh penggunaan revoke untuk mencabut user “farazinux” dari hak
delete pada semua database latihanrevoke delete on latihan.* to farazinux@localhost;flush privileges;