BAB 2 LANDASAN TEORI 2.1 Teori Dasar 2.1.1 Data Data merupakan bentuk lain dari kata latin “datums” yang intinya kumpulan fakta yang dipakai untuk keperluan suatu analisa, diskusi, presentasi ilmiah, ataupun tes statistik. Menurut Hoffer et al. (2005, p5), Data adalah representasi dari objek dan peristiwa yang memiliki arti dan kepentingan dalam lingkungan pemakai. Data itu sendiri dibagi menjadi dua bagian, yaitu data primer dan data sekunder. Pembahasan mengenai dua jenis data tersebut adalah sebagai berikut: 2.1.1.1 Data Primer Data primer merupakan sumber data yang diperoleh langsung dari sumber asli (tidak melalui media perantara). Data primer dapat berupa opini subjek (orang) secara individual atau kelompok, hasil observasi terhadap suatu benda (fisik), kejadian atau kegiatan, dan hasil pengujian. Metode yang umum digunakan untuk mendapatkan data primer adalah survei dan observasi. 2.1.1.2 Data Sekunder Data sekunder merupakan sumber data penelitian yang diperoleh peneliti secara tidak langsung melalui media perantara (diperoleh dan dicatat oleh pihak lain). Data sekunder umumnya berupa bukti, catatan atau laporan historis yang 6 7 telah tersusun dalam arsip (data dokumenter) yang dipublikasikan dan yang tidak dipublikasikan. . 2.1.2 Basis Data Menurut Connolly ( 2005, p15 ), definisi basis data adalah kumpulan data yang dihubungkan secara bersama-sama, dan gambaran dari data yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. Berbeda dengan sistem file yang menyimpan data secara terpisah, pada basis data data tersimpan secara terintegrasi. Basis data bukan menjadi milik dari suatu departemen tetapi sebagai sumber daya perusahaan yang dapat digunakan bersama. Data dalam basis data disimpan dalam tiga struktur, yaitu file, tabel dan objek. File terdiri dari record dan field, tabel terdiri dari baris dan kolom. Objek terdiri dari data dan instruksi program yang memfungsikan data. Tabel terdiri dari kolomkolom yang saling terkait, seperti file yang terdiri dari record yang saling terkait. File didalam basis data dapat terhubung kepada beberapa tabel. Dalam sebuah tabel, data pada tiap kolom terdiri dari ukuran dan tipe yang sejenis (char atau numeric). 2.1.3 DBMS (Database Management System) DBMS merupakan suatu bentuk sistem yang mampu melakukan pengorganisasian dan pengolahan database pada komputer. Sistem ini dirancang untuk mampu melakukan berbagai data dengan beberapa referensi data yang sama baik mendefinisikan, membuat, memelihara, maupun mengontrolnya. DBMS memiliki beberapa fasilitas antara lain : 8 1. DDL ( Data Definition Language ), menspesifikasikan tipe data yang beserta strukturnya dan batasan mengenai data yang bisa disimpan. 2. DML ( Data Manipulation Language ), menambahkan, mengedit, menghapus, dan mendapatkan kembali data yang dilakukan melalui sebuah Query Language. 3. Mengontrol akses ke basis data untuk mencegah pengguna yang tidak memiliki hak akses data. Keuntungan DBMS menurut Connolly ( 2005, p26 ) adalah : 1. Kendali terhadap pengulangan data Pendekatan basis data berguna untuk menghilangkan redundasi data dengan cara mengintegrasikan setiap file sehingga penggandaan data yang sama tidak disimpan. Akan tetapi, tidak menghilangkan redundasi sepenuhnya melainkan mengendalikan jumlah redundasi basis data. 2. Konsisten data Menghilangkan atau mengendalikan redundasi, sehingga mengurangi resiko terjadinya ketidak konsistenan. 3. Akses data bersama Basis data dimiliki oleh cakupan suatu organisasi dan dapat digunakan bersama oleh pengguna yang berada di lingkungan organisasi tersebut. 4. Meningkatkan integritas data Integritas basis data mengacu pada validitas dan konsistensi data yang disimpan. Integritas biasanya menunjukkan batasan – batasan, seperti aturan konsistensi yang tidak boleh dilanggar dalam basis data. Batasan – batasan dapat diterapkan pada data atau pada relasi antar data. Integrasi 9 memungkinkan DBA untuk mendefinisikan, dan DBMS menerapkan batasan integritas 5. Meningkatkan keamanan data Karena DBMS memiliki integrasi yang tinggi, maka dapat menyebabkan data menjadi lebih rawan. Pengaksesan dari pengguna yang dibolehkan dapat dibatasi oleh operation type ( retrieval, insert, update, delete ). 6. Efisiensi biaya Penggabungan seluruh data operasional organisasi ke dalam satu basis data dan membuat serangkaian aplikasi yang bekerja pada satu sumber data ini sehingga dapat menghemat biaya. 7. Peningkatan data dan responsiveness Sebagai hasil dari integrasi, data yang melewati batasan departemen dapat langsung diakses oleh pengguna. Banyak DBMS menyediakan fasilitas query atau pembuat laporan yang memungkinkan pengguna untuk menanyakan pertanyaan khusus dan untuk mendapatkan informasi secara cepat dari terminalnya, tanpa membutuhkan programmer untuk membuat program yang menghasilkan informasi dari basis data. 8. Meningkatkan produktifitas DBMS menyediakan banyak fungsi-fungsi standar yang biasanya programmer harus tulis di aplikasi berbasis file. Perlengkapan dari fungsifungsi ini memungkinkan programmer untuk berkonsentrasi pada fungsifungsi khusus yang dibutuhkan oleh pengguna tanpa harus khawatir tentang detail implementasi. Hasilnya meningkatkan programmer dan mengurangi waktu pengembangan produktifitas 10 9. Meningkatkan pemeliharaan dengan data yang independence DBMS memisahkan data dengan aplikasi, sehingga membuat aplikasi tidak harus terpengaruh oleh perubahan data. 10. Meningkatkan concurrency Bila dua atau lebih pengguna dapat mengakses file yang sama secara bersamaan, kemungkinan pengaksesan tersebut akan saling mempengaruhi sehingga menyebabkan kehilangan informasi dan integritas. DBMS mengelola pengaksesan secara bersamaan pada basis data dan memastikan tidak ada masalah yang terjadi. 11. Memperbaiki backup dan layanan pemulihan DBMS menyediakan fasilitas yang mengurangi pemrosesan yang hilang dikarenakan kegagalan yang muncul disaat mengolah data. Kerugian DBMS menurut Connolly ( 2005, p29 ) adalah : 1. Kerumitan Karena penetapan fungsi dari DBMS yang baik, menyebabkan DBMS menjadi piranti lunak yang cukup rumit. Seluruh pengguna harus mengetahui fungsi-fungsi yang ada dengan baik, sehingga dapat memperoleh manfaatnya. 2. Size Karena kerumitan dari luasnya fungsi, membuat DBMS menjadi bagian yang sangat besar dalam piranti lunak. Kapasitas yang dibutuhkan hingga megabytes dan membutuhkan sejumlah besar memori untuk berjalan secara efisien. 11 3. Biaya kebutuhan DBMS Biaya DBMS sangat bervariasi, tergantung dari lingkungan organisasi dan fungsionalitas yang disediakan. Contoh : untuk satu pengguna DBMS pada PC mungkin hanya membutuhkan biaya US$100, untuk bentuk mainframe besar dengan pengguna yang banyak dibutuhkan biaya yang lebih mahal. 4. Biaya tambahan untuk piranti keras Kebutuhan penyimpanan data untuk DBMS dan basis data mungkin mengharuskan pembelian ruang penyimpanan tambahan. Untuk mencapai kinerja yang baik, dibutuhkan mesin yang lebih besar bahkan mesin khusus untuk menjalankan DBMS. 5. Biaya konfersi Dalam beberapa situasi, biaya tambahan piranti keras dan DBMS tak seberapa dibandingkan biaya untuk melakukan konfersi aplikasi yang ada untuk dapat dijalankan pada DBMS dan piranti keras yang baru. Biaya ini juga sudah termasuk di dalam pelatihan staff untuk menggunakan sistem baru 6. Kinerja DBMS dibuat lebih umum, karena tujuannya untuk dapat melayani aplikasi dalam jumlah banyak. Efek dari DBMS tersebut menyebabkan beberapa aplikasi tidak dapat bekerja secepat dari biasanya. 7. Tingkat kegagalan yang tinggi Sentralisasi sumber daya meningkatkan kerentanan sistem. Karena semua pengguna dan aplikasi bergantung pada ketersediaan DBMS, kegagalan komponen tertentu dapat membuat pengoperasian menjadi terhenti. 12 2.1.4 Database Lifecycle Berikut adalah bentuk siklus hidup basis data : Gambar 2.1 Skema gambar siklus hidup basis data Menurut Connoly (2005 ,p283) tahapan perancangan siklus hidup basis data : 1. Perencanaan basis data Kegiatan manajemen yang memungkinkan tahapan aplikasi basis data dapat direalisasikan seefisien dan seefektif mungkin 2. Definisi sistem Menentukan ruang lingkup dan batasan – batasan dari aplikasi basis data termasuk area utama dari aplikasi dan bagian dari kelompok pengguna 13 3. Pengumpulan data dan analisis Proses mengumpulkan dan menganalisis informasi tentang bagian dari organisasi yang harus didukung oleh aplikasi basis data, dan menggunakan informasi untuk mengidentifikasi pengguna sistem baru 4. Desain basis data Proses menciptakan desain untuk basis data yang akan mendukung operasi perusahaan dan tujuan yang dimulai dengan menggunakan pendekatan perancangan basis data. Berikut adalah pendekatan untuk desain basis data yaitu : 1. “bottom-up” Memulai pendekatan pada tingkat dasar atribut ( yang merupakan bagian dari entitas dan relasi ), dengan melalui analisis untuk masalah asosiasi antara atribut. Pendekatan “bottom-up” lebih cocok digunakan untuk bentuk desain basis data yang sederhana dengan jumlah atribut yang relatif sedikit. Pendekatan ini lebih sulit diterapkan pada desain basis data yang lebih komplek dengan jumlah atribut yang banyak, dimana akan mempersulit pembuatan fungsi dependensi antar atribut. 2. “top-down” Sebuah bentuk strategi yang tepat untuk desain basis data yang komplek. Pendekatan ini dimulai dengan pengembangan model data yang mengandung high-level entitas dan relasi kemudian menerapkan bentuk “top-down” untuk mengidentifikasi lower-level entitas, relasi dan atribut yang terkait. Pendekatan ini diilustrasikan dengan konsep Entity-Relationship yang dimulai dengan mengidentifikasi entitas dan 14 hubungan antara entitas yang memiliki keterkaitan dengan lingkungan organisasi. 3. “inside-out” Pendekatan ini hampir menyerupai dengan pendekatan “bottom-up” yang membedakan adalah mengidentifikasi terlebih dahulu satu set entitas utama dan kemudian menyebar ke berbagai entitas, relasi dan atribut yang memiliki keterkaitan dengan yang diidentifikasi pertama kali. 4. Mixed strategy Pendekatan ini menggunakan kedua pendekatan yaitu “bottom-up” dan “top-down” untuk berbagai macam model yang akan digabungkan semua bagiannya secara bersama – sama. Setelah menentukan pendekatan perancangan basis data, tahapan berikutnya dapat dijalankan yakni sebagai berikut : a. Perancangan model data Tujuan utama dari perancangan model data adalah untuk membantu dalam memahami arti dari data dan untuk memfasilitasi komunikasi tentang kebutuhan informasi. b. Konseptual desain basis data Proses membangun bentuk model informasi yang digunakan oleh sebuah organisasi, dan independent dari segala pertimbangan fisik. 15 c. Logical desain basis data Proses membangun bentuk model informasi yang digunakan oleh sebuah organisasi, tetapi independent dari DBMS tertentu dan pertimbangan fisik lainnya. d. Fisik desain basis data Proses yang membentuk suatu deskripsi implementasi basis data di dalam penyimpanan sekunder, mendeskripsikan struktur penyimpanan dan metode pengaksesan secara efisien. 5. Seleksi DBMS Pemilihan DBMS yang tepat untuk mendukung aplikasi basis data yang akan dibangun. 6. Desain aplikasi Desain user interface dan aplikasi program yang digunakan dengan memproses basis data. Terdapat 2 bagian di dalam desain aplikasi : a. Desain transaksi Bentuk aksi yang dilakukan oleh pengguna terhadap program aplikasi yang memiliki kendali dalam mengubah isi dari basis data. Desain transaksi menetapkan karakteristik dari transaksi yang di miliki basis data seperti : • Penggunaan data transaksi • Fungsionalitas data transaksi • Hasil output data transaksi • Kegunaan bagi pengguna 16 b. User Interface Design Bentuk perancangan yang akan dibangun bagi pengguna untuk memudahkan mengenali setiap perintah, tindakan, ataupun keterangan yang ditampilkan dari suatu basis data dalam bentuk aplikasi program secara fisik atau tergambar. 7. Prototyping Membuat rangka model dari aplikasi database dengan memberikan izin kepada perancang dan user untuk menggambarkan dan mengkaji kembali hasil perancangan sistem tersebut. Prototyping memiliki keuntungan dengan memudahkan proses pembuatan sistem dan pengimplementasiannya relatif murah. 8. Implementasi Realisasi fisik dari basis data dan desain aplikasi dengan cara melakukan pengimplementasian basis data melalui Data Definition Language ( DDL ) berasal dari DBMS yang bisa dimanipulasi transaksinya menggunakan Data Manipulation Language ( DML ). 9. Konfersi data dan muatan Memindahkan data yang ada ke dalam basis data dan mengkonfersi setiap aplikasi yang ada untuk dapat dijalankan ke dalam basis data yang baru. 10. Uji coba Proses menjalankan aplikasi program dengan tujuan untuk menemukan kesalahan yang terdapat dalam program. 17 11. Proses Pemeliharaan Melakukan monitor dan pemeliharaan terhadap instalasi sistem. Bertujuan untuk menjaga mutu, perbaikan, dan memudahkan mengetahui untuk melakukan pembaruan suatu sistem yang sedang berjalan. 2.1.5 Perancangan basis data 2.1.5.1 Perancangan konseptual model Menurut Connolly ( 2005, p442 ) sebuah model data konseptual terdiri dari : 1. jenis entitas 2. hubungan jenis ( relasi ) 3. atribut dan domain atribut 4. kunci primer dan kunci alternative 5. batasan integritas Model data konseptual lebih didukung oleh dokumentasi, termasuk kamus data yang merupakan hasil dari pengembangan suatu model. Berikut langkah yang akan diperlukan ketika akan melakukan pembuatan konseptual model : 1. Identifikasi jenis entitas Salah satu metode identifikasi yang bertujuan untuk memeriksa spesifikasi kebutuhan pengguna sehingga dapat mengetahui benda ataupun kata benda yang disebutkan ( contoh : manusia, tempat, konsep yang menarik ) dengan melalui ekstrasi dari kamus data. 18 Gambar 2.2 Kamus data untuk mendeskripsikan setiap entitas 2. Identifikasi jenis relasi Mengidentifikasi hubungan penting yang ada diantara jenis entitas yang sudah diidentifikasi dengan menggunakan Entity Relationship ( ER model ) untuk memvisualisasikan entitas dan hubungan. Bertujuan juga untuk menentukan batasan multiplisitas jenis hubungan ( fan and chasm trap ). Gambar 2.3 Model ER 19 Gambar 2.4 Kamus data untuk mendeskripsikan hubungan relasi antara 2 entitas 3. Identifikasi dan mengasosiasikan atribut dengan jenis entitas atau relasi Mengasosiasikan atribut dengan jenis entitas atau hubungan yang sesuai, identifikasi sederhana pada komposit atribut, atribut single valued / multi valued, dan turunan atribut. Gambar 2.5 Kamus data untuk mendeskripsikan atribut dalam entitas 4. Tentukan domain atribut Tentukan domain untuk atribut dalam konseptual model. 5. Tentukan kunci kandidat, primer, dan alternative atribut 20 Mengidentifikasi kunci kandidat untuk setiap jenis entitas dan jika ada terdapat lebih dari satu kunci kandidat maka pilihlah salah satu untuk dijadikan kunci primer. Gambar 2.6 Model ER yang sudah ditentukan kunci primer tiap entitas 6. Pertimbangkan penggunaan konsep – konsep permodelan Penggunaan salah satu bentuk konsep seperti spesialisasi atau generalisasi, agregasi, dan komposisi. 21 Gambar 2.7 Model ER yang sudah dilakukan generalisasi 7. Periksa model untuk permasalahan redundansi Periksa adanya redundansi dalam setiap model dengan cara memeriksa ulang kembali hubungan ( one to one ), menghapus hubungan berlebihan, dan mempertimbangan dimensi waktu. Gambar 2.8 Menghapus relasi yang redundan 22 8. Validasi konseptual model terhadap pengguna transaksi Pastikan bahwa konseptual model mendukung transaksi yang diperlukan. Mungkin dua pendekatan tersebut adalah menggambarkan transaksi dan menggunakan jalur transaksi. 9. Tinjau kembali konseptual model dengan pengguna Memastikan bagi pengguna untuk mempertimbangkan model dalam bentuk representasi yang “benar” dari persyaratan data yang diajukan oleh perusahaan. 2.1.5.2 Perancangan logikal model Menurut Connolly ( 2005, p462 ) tahapan yang harus dilakukan untuk mengubah dari bentuk konseptual model data ke logikal model data : 1. Turunkan hubungan untuk logikal model data Untuk membuat hubungan logikal model data yang terwakili dalam bentuk entitas, hubungan, dan atribut yang telah diidentifikasi. 2. Validasi relasi dengan menggunakan normalisasi Memvalidasi pengelompokan atribut dalam setiap relasi menggunakan aturan normalisasi. Tujuan dari normalisasi adalah untuk memastikan himpunan relasi memiliki jumlah yang minim tetapi atribut yang diperlukan masih mencukupi untuk persyaratan data yang diperlukan oleh perusahaan. 3. Validasi hubungan terhadap pengguna transaksi Tujuan dari langkah ini untuk memvalidasi logikal model data dapat mendukung transaksi yang diperlukan sesuai dengan spesifikasi kebutuhan pengguna. 23 4. Periksa batasan integritas Batasan integritas merupakan batasan yang dipaksakan untuk dapat melindungi basis data yang menjadi tidak akurat, tidak konsisten maupun tidak lengkap. 5. Tinjau logikal model data dengan pengguna Memastikan bahwa pengguna menganggap model untuk menjadi salah satu bentuk representasi yang tepat berdasarkan dari persyaratan data perusahaan. 6. Menggabungkan logikal model data ke dalam model global Langkah ini hanya diperlukan untuk desain basis data dengan pemandangan beberapa yang sedang dikelola menggunakan pendekatan view integrasi. Untuk memfasilitasi proses penggabungan harus menggunakan “lokal logikal model data” dan “global logikal model data”. Sebuah lokal logikal model data merepresentasikan satu atau lebih tetapi tidak dari pandangan semua pengguna basis data, berbeda dengan global logikal model data yang merepresentasikan dari pandangan seluruh pengguna basis data. 7. Periksa pertumbuhan masa depan Untuk menentukan adanya perubahan signifikan dalam waktu yang akan datang dan menilai apakah logikal model data dapat mengakomodasi perubahan tersebut. 24 2.1.5.3 Perancangan fisikal model Menurut Connolly ( 2005, p496 ) tahapan untuk melakukan perancangan fisikal adalah sebagai berikut : 1. Mengubah logikal model data ke DBMS Menghasilkan skema basis data relasional dari logikal model data yang dapat diimplementasikan ke dalam DBMS. 1.1 Desain relasi dasar Memutuskan bagaimana untuk merepresentasikan relasi dasar dapat diidentifikasi di logikal model data yang akan dimasukkan ke dalam DBMS. 1.2 Desain representasi dari data turunan Memutuskan bagaimana untuk merepresentasikan data turunan berada di logikal model data yang akan dimasukkan ke dalam DBMS. Nilai atribut berasal dari evaluasi atribut turunan dan hitungan. 1.3 Desain batasan umum Melakukan update untuk relasi yang dibatasi oleh batasan integritas yang mengatur “dunia nyata” transaksi berdasarkan representasi melalui update. Batasan biasanya tergantung dari bentuk DBMS dan sistem yang menyediakan fasilitas untuk mendefinisikan segala situasi umum. 2. Desain organisasi file dan indeks Menentukan pengorganisasian file secara optimal untuk menyimpan relasi dasar dan indeks yang diperlukan untuk mencapai performa yang 25 diinginkan dengan cara penyimpanan relasi dan tuples pada media penyimpanan sekunder. 2.1 Analisis transaksi Membuat perancangan basis data fisik secara efektif dengan cara mengenali atau mengidentifikasi kuantitatif informasi. Pengidentifikasian pada analisis transaksi sebagai berikut : • Transaksi yang sering digunakan dapat memberikan dampak besar terhadap performa • Transaksi yang merupakan transaksi bisnis yang kritis • Jangka waktu hari atau mingguan ketika akan ada permintaan tinggi yang dibuat pada basis data 2.2 Memilih organisasi file Menentukan organisasi file yang efektif untuk setiap relasional data. 2.3 Pemilihan indeks Menentukan penambahan indeks yang bertujuan untuk meningkatkan performa dari suatu sistem. Pemilihan atribut indeks sebagai berikut : • Atribut yang paling sering digunakan untuk penggabungan dengan operasi, karena hal ini akan membuat penggabungan operasi menjadi lebih efisien • Atribut yang paling sering digunakan untuk mengakses tuple dalam suatu relasi yang ada 2.4 Perkiraan kapasitas penyimpanan yang dibutuhkan 26 Mengestimasi ukuran kapasitas penyimpan yang diperlukan untuk menyimpan basis data. 3. Desain user view Sudah melalui pengidentifikasian selama pengumpulan kebutuhan dan analisis terhadap tahap pengembangan sistem basis data siklus hidup. 4. Desain mekanisme keamanan Merancang ukuran keamanan untuk basis data yang sudah di spesifikasikan untuk pengguna dengan memberikan mekanisme proteksi pada basis data untuk menghindari dari kejadian yang disengaja maupun tidak disengaja. 2.1.6 Normalisasi Menurut Harianto (2007, p18), normalisasi adalah suatu proses untuk melakukan pengelompokan data menjadi tabel yang menunjukkan entity dan relasinya. Proses normalisasi lebih merujuk pada pengujian kondisi, dimana kondisi diteliti untuk mengetahui letak kesulitan pada saat melakukan suatu perintah pada basis data ( contoh : insert, update, delete ). Kesulitan yang muncul tersebut akan di pecah menjadi beberapa tabel lagi untuk dapat mengoptimalkan basis data. 2.1.6.1 Kunci Normalisasi Menurut Harianto ( 2007, p18), ada beberapa kunci relasi dalam teknik normalisasi antara lain : 1. Candidate key Kunci yang di definisikan secara unik di dalam entitas. 27 2. Primary key Kunci yang tidak hanya mendefinisikan secara unik suatu kejadian tetapi juga dapat mewakili setiap kejadian dari entitas. Setiap kunci kandidat punya peluang menjadi kunci primer, tetapi dipilih satu saja yang dapat mewakili secara menyeluruh terhadap entitas yang ada. 3. Alternative key Kunci kandidat yang tidak dipakai sebagai kunci primer. Biasanya kunci alternative dipakai sebagai kunci untuk melakukan pengurutan data. 4. Foreign key Kunci yang melengkapi suatu relasi atau hubungan yang menunjukkan induknya. Kunci ditempatkan pada entitas anak yang direlasikan ke kunci primer pada induknya. Hubungan antara foreign dan primary adalah one to many. 2.1.6.2 Bentuk Normal Aturan normalisasi dinyatakan dalam normal ( N ). Bentuk normal adalah suatu aturan yang dikenakan pada relasi – relasi dalam basis data dan harus dipenuhi oleh relasi – relasi tersebut pada level – level normalisasi. Bentuk – bentuk normalisasi yang digunakan untuk mendesain suatu basis data sebagai berikut : 1. Bentuk tidak normal ( 0NF ) Bentuk ini merupakan kumpulan data yang akan direkam, bentuk seperti ini biasanya mengalami suatu duplikasi. 28 NIM Nama 1200988888 Andi 1200985685 Budi 1200974562 Dodi Mata Kuliah SIG, Bahasa Inggris, CB, Jarkom Kalkulus, Aljabar Linier, SBD Aljabar Linier, CB, Pemvis STATUS L,L,G,L L,G,L L,L,G Tabel 2.1 Tabel 0NF 2. Bentuk normal pertama ( 1NF ) Suatu relasi dikatakan normal pertama, jika dan hanya sudah membuang salah satu atribut yang memiliki nilai ganda. Tiap field hanya memiliki satu data, bukan berbentuk data yang majemuk ( dan bukan merupakan pecahan dari bagian data ). NIM Nama 1200988888 Andi 1200988888 Andi 1200988888 Andi 1200988888 Andi 1200985685 Budi 1200985685 Budi 1200985685 Budi dst dst Mata Kuliah SIG Bahasa Inggris CB Jarkom Kalkulus Aljabar Linier SBD dst STATUS L L G L L G L dst Tabel 2.2 Tabel 1NF 3. Bentuk normal kedua ( 2NF ) Suatu relasi dikatakan normal kedua, jika dan hanya sudah memenuhi kriteria normal pertama dan semua atribut tidak memiliki atribut ganda kembali, sehingga atribut yang bukan merupakan kunci primer harus bergantung fungsional atau dependensi sepenuhnya pada kunci primer. 29 NIM Nama 1200988888 Andi 1200985685 Budi dst dst NIM Mata Kuliah 1200988888 SIG 1200988888 Bahasa Inggris 1200988888 CB 1200988888 Jarkom 1200985685 Kalkulus 1200985685 Aljabar Linier 1200985685 SBD dst dst Status L L G L L G L dst Tabel 2.3 Tabel 2NF 4. Bentuk normal ketiga ( 3NF ) Suatu relasi berada dalam bentuk normal ketiga, jika relasi tersebut berada dalam bentuk normal kedua dan setiap atribut bukan kunci yang memiliki dependensi transitif terhadap kunci primer. 2.1.7 Entity Relationship Diagram Entity Relationship adalah metode permodelan basis data yang digunakan untuk menghasilkan skema konseptual untuk jenis atau model data semantik sistem. Sistem seringkali memiliki basis data relasional, dan memiliki ketentuan top-down. Diagram untuk menggambarkan Entity Relationship disebut ERD. Gambar 2.9 Model ERD 30 2.1.7.1 Notasi ERD Notasi Notasi simbolik yang digunakan pada Entity Relationship Diagram sebagai berikut : 1. Entitas Segala sesuatu yang dapat digambarkan oleh data. Entitas juga dapat diartikan sebagai individu yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lainnya. Ada dua macam entitas yaitu : a. Entitas kuat Entitas yang tidak memiliki ketergantungan terhadap entitas lainnya. Contoh : entitas anggota. b. Entitas lemah Entitas yang kemunculannya bergantung pada keberadaan entitas lainnya dalam suatu relasi. 2. Atribut Atribut merupakan pendeskripsian karakteristik dari entitas. Atribut digambarkan dalam bentuk lingkaran atau elips. Atribut yang menjadi kunci entitas atau key diberi garis bawah ataupun penebalan. 3. Relasi Relasi menunjukkan adanya hubungan diantara sejumlah entitas yang berasal dari himpunan entitas yang berbeda. ( himpunan entitas yang berelasi dengan himpunan lain diberikan dalam bentuk garis ) 31 2.1.7.2 Derajat Relasi Derajat relasi bertujuan untuk mengetahui jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Macam – macam kardinalitas : 1. One to one Setiap anggota entitas A hanya berhubungan dengan satu anggota B, begitu pula sebaliknya. Gambar 2.10 Relasi one to one 2. One to many Setiap anggota entitas A dapat berhubungan dengan lebih dari satu anggota B tetapi tidak sebaliknya. . Gambar 2.11 Relasi one to many 32 3. Many to many Setiap anggota entitas A dapat berhubungan dengan lebih dari satu anggota B dan demikian sebaliknya. Gambar 2.12 Relasi many to many 2.1.7.3 Metodologi ERD Tahapan pertama saat melakukan desain menggunakan model ER adalah menggambarkan kebutuhan informasi atau jenis informasi yang akan disimpan dalam basis data. Teknik pemodelan data dapat digunakan untuk menggambarkan setiap ontologi untuk wilayah tertentu. Tahapan berikutnya disebut desain logis, dimana data dipetakan ke dalam model data yang logis seperti model relasional. Model data yang logis ini kemudian dipetakan menjadi model fisik. Secara umum penyusunan metodologi ERD sebagai berikut : 1. Menentukan entitas Menentukan peran, kejadian, lokasi, hal nyata dan konsep dimana penggunaannya untuk menyimpan data. 33 2. Menentukan relasi Menentukan hubungan antar pasangan entitas menggunakan matriks relasi. 3. Rancang ER sementara Entitas digambarkan dengan kotak, dan relasi digambarkan menggunakan garis. 4. Isi kardinalitas Menentukan jumlah kejadian satu entitas untuk sebuah kejadian pada entitas yang berhubungan. 5. Tentukan kunci utama Menentukan atribut yang mengidentifikasikan keunikan suatu kelas entitas. 6. Rancang ERD berdasarkan kunci Menghilangkan relasi many to many dan memasukkan kunci primer serta kunci tamu pada masing – masing entitas. 7. Menentukan atribut Menentukan field – field yang diperlukan oleh sistem. 8. Pemetaan atribut Memasangkan atribut dengan entitas yang sesuai. 9. Rancang ERD berdasarkan atribut Mengatur ERD seperti langkah ke enam dengan menambahkan entitas atau relasi yang sudah dirancang menurut langkah ke delapan. 34 10. Pemeriksaan hasil Melihat kembali ERD yang sudah dibuat untuk disesuaikan dengan sistem yang akan dibangun, apabila belum, kembali lagi untuk melihat ke langkah pertama. 2.1.8 Flowchart Flowchart merupakan salah satu cara untuk merancang suatu sistem dengan memberikan sebuah gambaran langkah – langkah yang sesuai dengan prosedur. Flowchart berguna untuk menganalisis permasalahan yang berlaku di dalam sistem sehingga dapat ditemukan penyelesaian yang tepat. Tahapan untuk pembuatan Flowchart yaitu : 1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke kanan. 2. Aktivitas yang digambarkan harus didefinisikan dengan tepat dan dapat dimengerti oleh semua pembaca. 3. Kapan aktivitas dimulai dan berakhir harus ditentukan dengan jelas. 4. Setiap langkah dari aktivitas harus diuraikan dengan kata kerja. 5. Setiap langkah dari aktivitas harus berada pada urutan yang tepat 6. Perhatikan ruang lingkup aktivitas yang tidak berhubungan dengan kegiatan sistem 7. Gunakan symbol Flowchart standar 35 2.1.8.1 Jenis Flowchart 1. Flowchart sistem Merupakan flowchart yang menunjukkan alur kerja atau apa yang sedang dikerjakan di dalam sistem secara keseluruhan dan menjelaskan urutan dari prosedur yang berada di dalam sistem. Flowchart memberikan deskripsi secara grafik dari urutan prosedur – prosedur yang terkombinasi membentuk suatu sistem. 2. Flowchart dokumen Merupakan flowchart yang menunjukkan alur data yang ditulis melalui sistem. Fungsi utama dari Flowchart dokumen untuk menelusuri form dan laporan sistem dari satu bagian ke bagian lain baik bagaimana alur form dan laporan diproses, dicatat dan disimpan. 3. Flowchart skematik Bentuk tingkatan lebih tinggi dari Flowchart sistem yang menggunakan simbol flowchart standar, tetapi juga menggunakan simbol komputer, peripheral, form, atau peralatan yang digunakan dalam sistem. Kegunaan flowchart skematik untuk memberikan kemudahan bagi seseorang yang tidak familiar dengan simbol – simbol flowchart yang konvensional sehingga menghemat waktu yang dibutuhkan untuk mempelajari simbol abstrak sebelum dapat mengerti flowchart. 4. Flowchart program Flowchart program merupakan keterangan yang lebih rinci mengenai setiap langkah program atau prosedur sesungguhnya. Kegunaan untuk membantu programmer menganalisa urutan instruksi program. 36 5. Flowchart proses Teknik penggambaran rekayasa industrial yang memecah dan menganalisis langkah – langkah selanjutnya dalam suatu prosedur atau sistem. 2.1.8.2 Simbol Flowchart Gambar Deskripsi Untuk menunjukkan suatu sistem akan dimulai maupun sistem yang akan berakhir ( Start / End ) Mempresentasikan alur kerja sistem Menunjukkan bentuk operasi sistem ( contoh : Kirim order ) Merupakan percabangan untuk pemilihan alur kerja berikutnya ( contoh : Ya atau Tidak ) Penghubung antara flowchart 1 grup bagian dengan grup bagian yang lain Menunjukkan sistem yang ditunda. Merupakan hasil input ataupun output dari operasi kerja Bentuk representasi dari suatu dokumen ataupun laporan 37 Bentuk manual operasi kerja Merupakan hasil input dalam bentuk manual dari keyboard Penyimpanan data, yang diletakkan ke dalam hard drive, magnetic tape, memory card Merupakan basis magnetic disc data yang menggunakan Penyimpanan secara offline Penggabungan menjadi satu penyimpanan. dari berbagai macam item set yang ditampung dalam Merupakan proses ekstrasi yang menghilangkan hasil dari penggabungan satu atau lebih spesifik set item Tabel 2.4 Simbol Flowchart 38 2.1.9 Use Case Diagram Use Case diagram merupakan salah satu cara untuk menggambarkan interaksi sistem dengan lingkungan yang berada di luar sistem ( pemvisualisasian pengguna terhadap sistem ). Use Case diagram tersusun atas : 1. Aktor Merupakan pengguna yang terdapat dalam use case diagram. Peranannya sebagai pelaku aksi dalam proses suatu sistem. 2. Use Case Proses yang terjadi di dalam sistem. Menggambarkan skema kegiatan yang dilakukan oleh aktor. 3. Relasi Menggambarkan hubungan antara aktor dan use case. 4. Use Case narrative Penggambaran secara tekstual suatu kegiatan dan menerangkan bagaimana pengguna berinteraksi dengan sistem dalam menyelesaikan suatu tugas. 2.2 Teori Khusus yang Berhubungan Dengan Skripsi 2.2.1 Aset Tetap ( fixed asset ) Menurut Nicholas A.J Hastings ( 2010, p3 ) aset tetap merupakan aset yang berupa barang – barang fisik seperti tanaman, mesin, bangunan, kendaraan, pipa, kabel dan sebagainya. Aset tetap merupakan suatu barang berwujud yang memiliki nilai dengan periode melebihi satu tahun dan biasanya merupakan suatu alat untuk dapat melancarkan sistem produksi. Keuntungan dari aset tetap, aset yang dimiliki 39 tidak akan dihitung dalam beban pajak ( kecuali tanah dikarenakan tidak ada penyusutan nilai ). Aset dapat dikatakan tidak tetap apabila aset tersebut memiliki nilai barang kurang dari ketentuan perusahaan ( misalkan : perusahaan menentukan aset tetap adalah aset dengan nilai satu juta rupiah ke atas ). 2.2.2 Manajemen Manajemen merupakan suatu proses perencanaan, pengorganisasian, pengarahan dan pengawasan usaha-usaha para anggota organisasi dan penggunaan sumber-sumber daya organisasi lainnya agar mencapai tujuan organisasi yang ditetapkan. Prinsip manajemen merupakan dasar atau pedoman yang tidak boleh diabaikan untuk setiap pimpinan yang bertanggung jawab dalam melakukan manajemen. Prinsip – prinsip manajemen terdiri dari : 1. Pembagian kerja yang berimbang Melakukan perataan pembagian tugas kepada semua lingkup kerjanya dan memberikan beban kerja yang berimbang. 2. Pemberian kewenangan dan tanggung jawab Setiap kerabat kerja diberikan kewenangan sepenuhnya dan harus dilaksanakan sesuai dengan kewajiban yang sudah ditetapkan serta sanggup mempertanggung jawabkan kepada pimpinan secara langsung. 3. Disiplin Sanggup untuk melakukan suatu usaha yang sesuai dengan bidang kerjanya berdasarkan rencana, peraturan dan waktu yang sudah ditetapkan sesuai kebutuhan bersama. 40 4. Satu perintah Berikanlah satu tugas yang jelas dan tegas kepada kerabat kerja tanpa membebani dengan sejumlah perintah yang bersamaan baik antara sederajat pimpinan. 5. Satu arah Berikan tujuan yang jelas yang didasarkan pada rencana kerja sama. Manajemen dibagi menjadi lima fungsi : 1. Perencanaan Fungsi yang bertujuan untuk mengetahui langkah keputusan yang akan digunakan untuk menjalankan sebuah kegiatan yang dilihat dari segi ekonomis dan efektif pada waktu yang akan datang. 2. Pengorganisasian Fungsi yang bertujuan untuk mendefinisikan hubungan antara fungsi, personalia maupun faktor fisik supaya kegiatan dapat dilaksanakan secara terarah pada tujuan bersama. 3. Pengarahan Fungsi yang bertujuan untuk memberikan sebuah motivasi ataupun perintah yang sifatnya untuk mengarahkan supaya tindakan dapat sesuai dilaksanakan. 4. Pengkoordinasian Fungsi yang bertujuan untuk memberikan karyawan arahan dan dapat berintegrasi dengan baik sehingga dapat terfokus pada satu tujuan yang jelas. 41 5. Pengawasan Fungsi yang bertujuan untuk mengatur kegiatan supaya sesuai dengan persyaratan – persyaratan yang sudah di tetapkan dari rencana. 2.2.3 Manajemen Aset Menurut Nicholas A.J Hastings ( 2010, p4 ) manajemen aset adalah suatu himpunan yang terkait dengan mengidentifikasi aset apa yang dibutuhkan, mengidentifikasi kebutuhan dana, mengakuisisi aset, menyediakan logistik dan dukungan sistem pemeliharaan untuk aset, membuang atau memperbaharui aset sehingga secara efektif dan efisien dapat memenuhi tujuan yang diinginkan. Fungsi manajemen aset sangat diperlukan untuk memberikan pengetahuan aset dan kapasitas untuk pengelolaan terkait dan menjadikan sebagai kegiatan pendukung keputusan dalam konteks bisnis. Kegiatan pengelolaan aset terdapat diberbagai jenis organisasi, dan tidak terbatas pada kelompok pusat. Alasan inilah yang menyebabkan fungsi manajemen aset sangat berarti. Tujuan dan fungsi manajemen aset adalah untuk menyediakan sumber daya dan keahlian yang mendukung akuisisi, layanan dukungan dan pembuangan aset yang dibutuhkan oleh organisasi. Keuntungan dari manajemen aset berhubungan dengan akuntabilitas, manajemen layanan, manajemen resiko dan efisiensi keuangan : 1. Meningkatkan pengurusan dan akuntabilitas dengan a. Menunjukkan ke pemilik, pengguna dan pihak yang terkait bahwa layanan yang dihasilkan adalah layanan yang efektif dan efisien. 42 b. Menyediakan dasar untuk evaluasi dan penyeimbangan layanan, harga dan kualitas. c. Peningkatan akuntabilitas untuk pengguna sumber daya dengan penghitungan kinerja dan keuangan. d. Meningkatkan komunikasi dan hubungan pengguna layanan e. Meningkatkan pengertian pada kebutuhan layanan dan pilihan – pilihannya 2. Meningkatkan komunikasi dan hubungan dengan manajemen layanan dengan : a. Meningkatkan pengertian pada kebutuhan layanan dan pilihan – pilihannya. b. Konsultasi formal atau persetujuan dengan pengguna tentang level layanan. c. Pendekatan yang menyeluruh dari manajemen aset di dalam organisasi dengan team yang berasal dari multidisipilin manajemen. d. 3. Meningkatkan kenyamanan pelanggan dan citra perusahaan. Meningkatkan manajemen resiko dengan : a. Menganalisa kemungkinan dan konsekuensi dari kegagalan aset. b. Mengusahakan layanan yang berkala. c. Mengusahakan hubungan antara satu jaringan dengan jaringan yang lain. d. Mempengaruhi keputusan pada keputusan non – aset kebutuhan manajemen. melalui 43 4. Meningkatkan efisiensi keuangan dengan : a. Meningkatkan keahlian pengambilan keputusan berdasarkan biaya dan keuntungan dari beberapa alternatif. b. Mengatur program kerja ke depan dan kebutuhan pendanaannya. c. Pengenalan semua biaya dari kepemilikan atau pengoperasian aset melalui masa pakai aset tersebut. 2.2.3.1 Lifecycle Manajemen Aset Lifecycle Manajemen Aset berarti mempertimbangkan semua pilihan dan strategi manajemen sebagai bagian dari aset masa pakai (lifecycle), dari perencanaan sampai pemusnahan. Tujuan adalah untuk mencari biaya terendah dalam jangka panjang (bukan penghematan dalam jangka pendek) ketika membuat keputusan dalam aset manajemen. Gambar 2.13 Proses Pengembangan dan Implementasi Program Dari gambar diatas dapat diketahui fungsi secara detail : 1. Perencanaan Aset meliputi konfirmasi tentang pelayanan yang dibutuhkan oleh pelanggan dan memastikan bahwa aset yang diajukan 44 merupakan solusi yang paling efektif untuk memenuhi kebutuhan pelanggan. 2. Pengadaan Aset merupakan pengadaan atau peningkatan dari aset dimana pembiayaan dapat menjadi alasan yang diharapkan untuk menyediakan keuntungan diluar tahun pembiayaan. Sebuah pendekatan management yang berharga dapat diadopsi untuk menghasilkan solusi yang paling ekonmis dan kreatif. 3. Manajemen keuangan membutuhkan pengetahuan yang berhubungan dengan kepemilikan aset, termasuk pengadaan/skuisisi, operasi, maintenance, rehabilitasi, pemabaruan, depresiasi dan pembuangan dan pengambilan keputusan yang mendukung kefektifan biaya yang dikeluarkan. 4. Perawatan dan pengoperasian aset mempunyai fungsi yang berhubungan dengan kerja dan pengendalian aset dari hari ke hari dan biaya yang berhunbungan dengannya yang merupakan komponen penting dalam aset yang dinamis atau berumur pendek. 5. Kondisi dan kinerja aset dimana kinerja aset berhubungan dengan pada kemampuan dari aset untuk memenuhi target dari level layanan dan kondisi aset mencerminkan kondisi fisik dari aset. Memonitor kondisi dan kinerja aset adalah hal penting untuk mengetahui aset yang mempunyai kinerja kurang bagus atau yang sudah hampir gagal bekerja. 6. Penggantian Aset adalah penggantian yang cukup signifikan dari sebuah aset atau komponen aset untuk mengembalikan aset kepada 45 kondisi dan kinerja yang dibutuhkan. Manajer aset harus mempunyai kemampuan untuk mengidentifikasi solusi jangka panjang yang optimum melalui proses pengambilan keputusan yang formal. 7. Pembuangan Aset adalah pilihan ketika sebuah aset tidak diperlukan lagi, menjadi tidak ekonomis untuk di rawat atau direhabilitasi. Ini menyediakan kesempatan untuk mengkaji ulang konfigurasi, tipe dan lokasi dari aset dan proses layanan yang dihasilkan yang relevan dengan aktivitas. 8. Review Manajemen Aset melibatkan regulasi internal dan audit independent untuk meyakinkan siklus peningkatan aset manajemen yang berulang dan untuk mencapai atau memelihara praktek terbaik bagi perusahaan. 2.2.4 Java Java adalah sebuah bahasa pemrograman yang dapat dijalankan di berbagai komputer termasuk telepon genggam (handphone). Dikembangkan oleh Sun Microsystems dan diterbitkan tahun 1995. Java juga memiliki peralatan yang memudahkan pengguna untuk dapat melakukan Development Environment. Dimana teknologi sudah memberikan bantuan yang menyederhanakan beberapa fungsi penting ke dalam bentuk bagian tertentu ( compiler, interpreter, penyusun dokumentasi, paket kelas). Java memiliki karakteristik yang unik sehingga memiliki nilai lebih daripada penggunaan bahasa pemrograman lainnya. Antara lain : 46 1. Sederhana Java memiliki kemiripan yang cukup serupa dengan bahasa C maupun C++. Bahasa C maupun C++ merupakan bahasa dasar dari semua para programmer sehingga tentu saja Java yang sudah menyederhanakan bahasa C++ dengan menambahkan beberapa fitur pendukung yang belum ada dan membuang fitur yang menyebabkan C++ menjadi bahasa yang rumit dan sulit dikuasai. Kesederhanaan ini juga karena Java menggunakan sedikit tipe data seperti Boolean dan array. Sedangkan lainnya dimasukkan ke dalam class. 2. Orientasi Objek Java merupakan sebuah pemprograman berorientasi objek murni dimana semua yang berada di dalamnya merupakan objek kecuali tipe data yang primitive. 3. Memiliki Interpretasi Java adalah bahasa interpretasi, dimana sekali terpasang pada suatu mesin maka secara langsung menjalankan perintah yang ada/tertulis ( Tidak memedulikan platform ataupun sistem operasi yang terpasang ). Keuntungan yang memberikan keunggulan, dapat memotong lingkaran edit-compile-link-test, karena tanpa adanya langkah compile-link maka bekerja dalam lingkungan interpreter lebih sederhana dan hemat waktu. 4. Aman Java tidak memiliki atau menggunakan pointer secara langsung yang menunjuk pada suatu lokasi memori seperti bahasa C maupun C++. Java memiliki kendali penuh terhadap semua perintah yang dimiliki ( 47 lingkungan Java ). Para pengembang java memberikan solusi baik untuk mengurangi resiko ketika perintah Java akan dijalankan dengan menggunakan compiler Java yang dapat menghasilkan kode bite Java yang harus bisa melewati standar keamanan runtime Java. 5. Portable Tujuan penting pembuatan java adalah harus memiliki sifat portable. Sehingga apabila arsitektur baru ( baik itu piranti keras ataupun sistem operasi atau keduanya) berkembang, lingkungan Java dapat diterapkan dan dipindahkan pada mereka. Pada Java, semua tipe data primitif (integer, long, float, double dan sebagainya) memiliki ukuran tertentu, tidak bergantung pada mesin atau sistem operasi dimana program Java dijalankan. Hal ini sangat berlawanan dengan bahasa seperti C atau C++ yang menyerahkan ukuran tipe data primitif pada kompiler dan mesin (serta sistem operasi). Java portable karena kompiler Java sendiri ditulis menggunakan Java. 6. Dinamis Karena terinterpretasi, Java adalah bahasa yang benar-benar dinamis. Saat run time, lingkungan Java dapat mengembangkan dirinya dengan terhubung pada kelas-kelas yang mungkin terletak pada server-jauh pada suatu jaringan (mis alnya, lewat internet). Pada C++ setiap kali anggota variabel atau fungsi ditambahkan pada suatu kelas, maka kelas tersebut dan semua kode tambahan yang merujuk pada kelas tersebut perlu dikompile ulang. Java menyederhanakan masalah ini dengan menyerahkan pada runtime. Saat runtime interpreter Java melakukan resolusi nama ketika 48 terhubung dengan kelas-kelas yang bersangkutan. Interpreter Java juga bertanggung-jawab dalam menentukan penempatan obyek dalam memori. Dua fitur pada interpreter Java ini memecahkan masalah berkaitan degan perubahan defin isi kelas ketika digunakan kelas-kelas yang lain. 2.2.4.1 Tahap kompilasi Java Pemrograman java dapat dijalankan dengan berbagai cara. Hal ini tentunya sangat bergantung pada IDE yang digunakan. Namun pada dasarnya menuliskan program java dapat dilakukan dengan dua hal. Pertama menggunakan console dan text editor dan yang kedua dengan menggunakan IDE yang berbasis GUI (Graphical User Interface ) seperti NetBeans, Eclipse, JCreator. Pada umumnya tahap – tahap kompilasi java seperti gambar berikut ini : Gambar 2.14 Langkah Kompilasi Tahapan : 1. Menuliskan kode program pada text editor, console ataupun aplikasi berbasis GUI 49 2. Kode program yang sudah selesai dibuat selanjutnya disimpan di dalam berkas ( file ) dengan ekstension .java 3. Selanjutnya file ekstension .java dikompilasi menggunakan java compiler. 4. Hasil dari kompilasi berupa berkas bytecode dengan ekstension .class. Berkas yang mengandung bytecode kemudian akan dikonfersikan oleh Java interpreter menjadi bahasa mesin sesuai dengan jenis dan platform yang digunakan. 5. File hasil interpreter akan dilanjutkan untuk di ekseksuksi dan dijalankan. 2.2.5 Java Virtual Machine ( JVM ) Java Virtual Machine (JVM) adalah sebuah spesifikasi untuk sebuah komputer abstrak. JVM terdiri dari sebuah kelas pemanggil dan sebuah interpreter Java yang mengeksekusi kode arsitektur netral. Kelas pemanggil memanggil file .class dari kedua program Java dan Java API untuk dieksekusi oleh interpreter Java. Interpreter Java mungkin sebuah piranti lunak interpreter yang menterjemahkan satu kode byte pada satu waktu, atau mungkin sebuah just-intime (JIT) kompiler yang menurunkan bytecode arsitektur netral kedalam bahasa mesin untuk host computer. 2.2.6 J2ME J2ME ( Java 2 Platform Micro Edition ) merupakan sebuah platform java yang lebih bersifat micro dan lebih menghemat memori. J2ME yang sekarang memiliki 50 pengembangan dengan menambahkan fitur emulator guna membantu pengembang sehingga dapat mudah melakukan coding, testing dan debugging pada emulator. J2ME terbagi menjadi dua bagian, bagian pertama merupakan platform yang dipergunakan untuk mengembangkan aplikasi pada taraf small mobile device sedangkan bagian kedua merupakan platform yang dipergunakan untuk mengembangkan aplikasi pada taraf smart phone mobile device. Untuk taraf small device biasa menggunakan Connected Limited Device Configuration (CLDC) sedangkan untuk taraf smart phone menggunakan Connected Device Profile (CDC). Di bawah ini merupakan gambaran yang merepresentasikan hubungan J2ME dengan Java Platform yang lain Gambar 2.15 Skema Java 2.2.7 Visual Basic.NET 2.2.7.1 Visual Basic Merupakan sebuah bahasa pemrograman yang menawarkan IDE visual untuk pembuatan program piranti lunak dengan basis sistem operasi Microsoft. Visual basic merupakan hasil turunan dari bahasa BASIC ( Beginner’s Allpurpose Symbolic Instruction Code ) yang diciptakan oleh Prof. John Kemeny dan Thomas Eugene Kurtz. 51 2.2.7.2 Visual Basic .NET Alat untuk mengembangkan dan membangun sistem aplikasi yang bergerak di atas sistem .NET Framework, dengan menggunakan bahasa BASIC. Kelebihan dari VB .NET dapat melakukan perancangan windows form, aplikasi web berbasis ASP dan juga aplikasi command-line.