BAB II TINJAUAN PUSTAKA II.1.Kecerdasan Buatan II.1.1. Artificial Inteligence (AI) Artificial Intelligence (AI) atau kecerdasan buatan merupakan cabang dari ilmu komputer yang konsern dengan pengautomatisasi tingkah laku cerdas. Pernyataan tersebut juga dapat di jadikan defenisi dari AI. Defenisi ini menunjukan bahwa AI adalah bagian dari komputer sehingga harus di dasarkan pada sound theoritical (teori suara) dan prinsip-prinsip aplikasi dari bidangnya. Prinsip-prinsip ini meliputi struktur data yang digunakan dalam representasi pengetahuan ,algoritma yang diperlukan untuk mengaplikasikan pengetahuan tersebut, serta bahasa dan teknik pemrograman yang di gunakan dalam mengimplementasikanya. (Anita Desiani & Muhammad Ardhani ; 2006: 1) II.1.2. Area Aplikasi Artificial Inteligence (AI) Ada dua hal yang sangat mendasar mengenai penellitian-penelitian AI, yaitu knowledge representation (representasi pengatahuan) dan search (Pelacakan).Para peneliti AI terus mengembangkan berbagai jenis teknik baru dalam AI seperti vision dan percakapan , pemrosesan bahasa alamidan permasalahan khusus seperti diagnosa medis. (Anita Desiani & Muhammad Ardhani ; 2006: 6) 12 AI seperti bidang ilmu lainya juga memiliki sejumlah sub disiplin ilmu yang sering di gunakan untuk pendekatan yang esensial bagi penyelesaian suatu masalah dan dengan aplikasi bidang AI yang berbeda. Berikut ini merupakan sejumlah bidang terapan utama dan kontriusinya terhadap perkembangan AI yang di gambarkandal bentuk pohon berikut ini: Gambar II.1. Bidang Terapan AI (Anita Desiani & Muhammad Ardhani ; 2006: 7) 13 II.2. Sistem Bisnis Cerdas II.2.1. Data Mining Tan(2006) mendefenisikan data mining sebagai proses untuk mendapatkan informasi yang berguna dari gudang basis data yang besar. Data Mining juga dapat diartikan sebagai pengekstrakan informasi baru yang diambil dari bongkahan data besar yang membantu dalam pengamibilan keputusan. Istilah data mining kadang di sebut juga knowledge discovery. Salah satu teknik yang dibuat dalam data minig aalah bagaimana menulusuri data yang ada untuk membangunsebuah model, kemudian menggunakan model tersebut agar dapat mengenali pola data yang lain yang tidak berada dalam basis data yang tersmpan. Kebutuhan untuk prediksi juga dapatt dimanfaatkan teknik ini. Dalam data mining , pengelompokan data juga bisa dilakukan. Tujuanya adalah agar kita dapat mengetahui pola universal data-data yang ada. Anomali data transaksi juga perlu juga perlu di deteksi untuk dapat mengetahui tindak lanjut berikutnya yang diambil. Semua hal tersebut bertujuan mendukung kegiatan operasional perusahaan sehingga tujuan akhir perushaan di harapkan dapat tercapai. (Eko Prasetyo; 2012; 2) Data mining adalah proses yang menggunakan teknik statistik, matematika, kecerdasan buatan, dan machine learning untuk mengekstraksi dan mengidentifikasi informasi yang bermanfaat dan pengetahuan yang terkait dari berbagai database besar. (Turban, E., J.E. Aronson dan T.P. Liang. 2005). Istilah data mining memiliki hakikat sebagai disiplin ilmu yang tujuan utamanya 14 adalah untuk menemukan, menggali, atau menambang pengetahuan dari data tau informasiyang kita miliki. Data mining, sering juga disebut sebagai Knowledge Discovery in Database (KDD). KDD adalah kegiatan yang meliputi pengumpulan, pemakaian data, historis untuk menemukan keteraturan, pola atau hubungan dalam set data berukuran besar. (Santosa, B. 2007). II.2.2. Posisi Data Mining Dalam Berbagai Disiplin Ilmu Para ahli berusaha menentukan posisi bidang data mining diantara bidangbidang yang lain. Hal in dikarenakan ada kesamaan antara sebagian bahasan dalam data mining dengan bahasan di bidang lain. Memang tidak seratus persen sama, tetapi ada sejum;ah kesamaan karakteristik dalam beberapa hal. Kesamaan bidang data mining dengan bidang ststistik adalah penyampelan, estimasi, dan pengujian hipotesis. Kesamaan dengan kecerdasan buatan (artificial intelligence), pengenalan pola (pattern recognition), dan pembelajaran mesin (machine learning) adalah algoritma pencarian, teknik pemodelan, dan teori pembelajaran, seperti yang di tunjukkan pada gambar II.2 STATIST IK DATA MINING AI,MACHINE LEARNING,PAT TERN RECOGNITION Teknologi Database, Parallel Computing, Distributed Computing Gambar II.2. Posisi data mining di antara beberapa bidang ilmu (Sumber : Eko Prasetyo; 2012;4) 15 Bidang lain yang juga memengaruhi data mining adalah teknologi basis data, yang mendukung penyediaan penyimpanan yang efisien, pengindeksan, dan pemrosesan query. Teknik komputasi parallel sering di gunakan untuk memberikan kinerja yang tinggi untuk ukuran set data yang besar, sedangkan komputasi terdistribusi dapat digunakan untuk menangani masalah ketika data tidak dapat di simpan di satu tempat.(Eko Prasetyo;2012;4) II.2.3. Pengelompokan Data Mining Ada beberapa teknik yang dimiliki data mining berdasarkan tugas yang bisa dilakukan, yaitu: (Jurnal EECCIS Vol.7, No. 1,2013) 1. Deskripsi Terkadang peneliti dan analisis secara sederhana ingin mencoba mencari cara untuk menggambarkan pola dan kecendrungan yang terdapat dalam data. Sebagai contoh, petugas pengumpulan suara mungkin tidak dapat menemukan keterangan atau fakta bahwa siapa yang tidak cukup akan sedikit didukung dalam pemilihan presiden. Deskripsi dari pola dan kecendrungan sering memberikan kemungkinan penjelasan untuk suatu pola atau kecendrungan. 2. Estimasi Estimasi hampir sama dengan klasifikasi, kecuali variabel target estimasi lebih ke arah numerik dari pada ke arah kategori. Model dibangun menggunakan record lengkap yang menyediakan nilai dari variabel target sebagai nilai prediksi. Selanjutnya, pada peninjauan berikutnya estimasi nilai dari variabel target dibuat berdasarkan nilai variabel prediksi. Sebagai contoh, akan dilakukan estimasi 16 prediksi minat pembeli barang elektronik pada pelanggan berdasarkan umur pelanggan, jenis kelamin, dan kegunaan. Hubungan antara minat pembeli barang elektronik dan nilai variabel prediksi dalam proses pembelajaran akan menghasilkan model estimasi. Model estimasi yang dihasilkan dapat digunakan untuk kasus baru lainnya. 3. Prediksi Prediksi hampir sama dengan klasifikasi dan estimasi, kecuali bahwa dalam prediksi nilai dari hasil akan ada di masa mendatang. Contoh prediksi dalam bisnis dan penelitian adalah : a. Prediksi harga barang elektronik dalam tiga bulan yang akan datang. b. Prediksi presentase kenaikan pembelian tahun depan jika penjualan barang dinaikan. Beberapa metode dan teknik yang digunakan dalam klasifikasi dan estimasi dapat pula digunakan (untuk keadaan yang tepat) untuk prediksi. c. Melakukan pengklusteran terhadap transaksi, dalam jumlah besar. 4. Klasifikasi Dalam klasifikasi, terdapat target variabel kategori. Sebagai contoh, penggolongan pendapatan dapat dipisahkan dalam tiga kategori, yaitu pendapatan tinggi, pendapatan sedang, dan pendapatan rendah. Contoh lain klasifikasi dalam bisnis dan penelitian adalah : 17 a. Menentukan apakah suatu pilihan merupakan pilihan yang sesuai atau tidak . b. Memperkirakan apakah suatu pengajuan barang elektronik oleh nasabah merupakan suatu kredit yang baik atau buruk. c. Mendiagnosis barang elektronik untuk mendapatkan termasuk kategori apa. 5. Clustering Pengklusteran merupakan pengelompokan record, pengamatan, atau memperhatikan dan membentuk kelas objek-objek yang memiliki kemiripan. Kluster adalah kumpulan record yang memiliki kemiripan suatu dengan yang lainnya dan memiliki ketidakmiripan dengan record dalam kluster lain. Pengklusteran berbeda dengan klasifikasi yaitu tidak adanya variabel target dalam pengklusteran. Pengklusteran tidak mencoba untuk melakukan klasifikasi, mengestimasi, atau memprediksi nilai dari variabel target. Akan tetapi, algoritma pengklusteran mencoba untuk melakukan pembagian terhadap keseluruhan data menjadi kelompok- kelompok yang memiliki kemiripan (homogen), yang mana kemiripan dengan record dalam kelompok lain akan bernilai minimal. Contoh pengklusteran dalam bisnis dan penelitian adalah : a. Mendapatkan kelompok-kelompok konsumen untuk target pemasaran dari suatu produk bagi perusahaan yang tidak memilikidana pemasaran yang besar. 18 b. Untuk tujuan audit akutansi, yaitu melakukan pemisahan terhadap prilaku finansial dalam baik dan mencurigakan. c. Melakukan pengklusteran terhadap barang elektronik, dalam jumlah besar. 6. Asosiasi Tugas asosiasi dalam data mining adalah menemukan atribut yang muncul dalam suatu waktu. Dalam dunia bisnis lebih umum disebut analisis keranjang belanja. Contoh asosiasi dalam bisnis dan penelitian adalah : a. Meneliti jumlah pelanggan dari perusahaan telekomunikasi seluler yang diharapkan untuk memberikan respon positif terhadap penawaran upgrade layanan yang diberikan. b. Menemukan barang yang dibeli secara bersamaan dan barang yang tidak pernah dibeli bersamaan.. II.2.4. Tahap-tahap Data Mining Sebagai suatu rangkaian proses, data mining dapat dibagi menjadi beberapa tahap proses yang diilustrasikan pada Gambar II.3 Tahap-tahap tersebut bersifat interaktif, knowledge base. pemakai terlibat langsung atau dengan perantaraan 19 Gambar II.3. Konsep Data Mining (Sumber : Jurnal EECCIS Vol.7, No. 1,2013) II.2.5. Peminatan Peminatan adalah suatu keputusan yang di lakukan oleh mahasiswa atau peserta didik untuk memilih kelompok mata pelajaran sesuai minat, bakat, dan kemampuan selama mengikuti pembelajaran. Pemilihan peminatan di lakukan atas dasar kebutuhan yang bertujuan untuk melanjutkan sebuah mata pelajaran yang yang berhubungan dengan peminatan yang telah di pilih. II.3. Metode Naive Bayes Naive Bayes merupakan sebuah pengklasifikasian probabilistik sederhana yang menghitung sekumpulan probabilitas dengan menjumlahkan frekuensi dan kombinasi nilai dari dataset yang diberikan. Algoritma mengunakan teorema 20 Bayes dan mengasumsikan semua atribut independen atau tidak saling ketergantungan yang diberikan oleh nilai pada variabel kelas(Patil dan Sherekar, 2013). Definisi lain mengatakan Naive Bayes merupakan pengklasifikasian dengan metode probabilitas dan statistik yang dikemukan oleh ilmuwan Inggris Thomas Bayes, yaitu memprediksi peluang di masa depan berdasarkan pengalaman dimasa sebelumnya (Bustami, 2013) Naive Bayes didasarkan pada asumsi penyederhanaan bahwa nilai atribut secara konditional saling bebas jika diberikan nilai output. Dengan kata lain, diberikan nilai output, probabilitas mengamati secara bersama adalah produk dari probabilitas individu (Mujib dkk, 2013). Keuntungan penggunaan Naive Bayes adalah bahwa metode ini hanya membutuhkan jumlah data pelatihan (Training Data) yang kecil untuk menentukan estimasi paremeter yang diperlukan dalam proses pengklasifikasian. Naive Bayes sering bekerja jauh lebih baik dalam kebanyakan situasi dunia nyata yang kompleks dari pada yang diharapkan (Pattekari dan Parveen,2012). II.3.1. Persamaan metode Naive Bayes Persamaan dari teorema Bayes adalah (Bustami,2013) : .......................... (1) (Citec Journal, Vol. 2, No. 3,2015) 21 Di mana : X : Data dengan class yang belum diketahui H : Hipotesis data merupakan suatu class spesifik P(H|X) : Probabilitas hipotesis H berdasar kondisi X (posteriori probabilitas) P(H) : Probabilitas hipotesis H (prior probabilitas) P(X|H) : Probabilitas X berdasarkan kondisi pada hipotesis H P(X) : Probabilitas X Untuk menjelaskan metode Naive Bayes, perlu diketahui bahwa proses klasifikasi memerlukan sejumlah petunjuk untuk menentukan kelas apa yang cocok bagi sampel yang dianalisis tersebut. Karena itu, metode Naive Bayes di atas disesuaikan sebagai berikut : ....................... (2) (Citec Journal, Vol. 2, No. 3,2015) Di mana Variabel C merepresentasikan kelas, sementara variabel F1 ... Fn merepresentasikan karakteristik petunjuk yang dibutuhkan untuk melakukan klasifikasi. Maka rumus tersebut menjelaskan bahwa peluang masuknya sampel karakteristik tertentu dalam kelas C (Posterior) adalah peluang munculnya kelas C (sebelum masuknya sampel tersebut, seringkali disebut prior), dikali dengan peluang kemunculan karakteristik karakteristik sampel pada kelas C (disebut juga likelihood), dibagi dengan peluang kemunculan karakteristik karakteristik sampel 22 secara global ( disebut juga evidence). Karena itu, rumus diatas dapat pula ditulis secara sederhana sebagai berikut : ......................(3) (Citec Journal, Vol. 2, No. 3,2015) Nilai Evidence selalu tetap untuk setiap kelas pada satu sampel. Nilai dari posterior tersebut nantinya akan dibandingkan dengan nilai nilai posterior kelas lainnya untuk menentukan ke kelas apa suatu sampel akan diklasifikasikan. Penjabaran lebih lanjut rumus Bayes tersebut dilakukan dengan menjabarkan menggunakan aturan perkalian sebagai berikut : ....(4) (Citec Journal, Vol. 2, No. 3,2015) Dapat dilihat bahwa hasil penjabaran tersebut menyebabkan semakin banyak dan semakin kompleksnya faktor - faktor syarat yang mempengaruhi nilai probabilitas, yang hampir mustahil untuk dianalisa satu persatu. Akibatnya, perhitungan tersebut menjadi sulit untuk dilakukan. Di sinilah digunakan asumsi independensi yang sangat tinggi (naif), bahwa masing masing petunjuk (F1,F2...Fn) saling bebas (independen) satu sama lain. Dengan asumsi tersebut, maka berlaku suatu kesamaan sebagai berikut: 23 .(5 ) (Citec Journal, Vol. 2, No. 3,2015) Untuk i≠j , sehingga (6) (Citec Journal, Vol. 2, No. 3,2015) Persamaan di atas merupakan model dari teorema Naive Bayes yang selanjutnya akan digunakan dalam proses klasifikasi. Untuk klasifikasi dengan data kontinyu digunakan rumus Densitas Gauss : (7) (Citec Journal, Vol. 2, No. 3,2015) Di mana : P : Peluang Xi : Atribut ke i xi : Nilai atribut ke i Y : Kelas yang dicari yi : Sub kelas Y yang dicari µ : mean, menyatakan rata – rata dari seluruh atribut σ : Deviasi standar, menyatakan varian dari seluruh atribut 24 Alur dari metode Naive Bayes dapat dilihat pada gambar II.7 sebagai berikut : Gambar II.4 Skema Naive Bayes (Citec Journal, Vol. 2, No.3, 2015) 1. Baca data training 2. Hitung Jumlah dan probabilitas, namun apabila data numerik maka : a. Cari nilai mean dan standar deviasi dari masing masing parameter yang merupakan data numerik. Adapun persamaan yang digunakan untuk menghitung nilai rata – rata hitung ( mean ) dapat dilihat sebagai berikut : 25 atau .(8 ) (Citec Journal, Vol. 2, No. 3,2015) di mana : µ : rata – rata hitung ( mean ) xi : nilai sample ke -i n : jumlah sampel dan persamaan untuk menghitung nilai simpangan baku ( standar deviasi ) dapat dilihat sebagai berikut : . (9) (Citec Journal, Vol. 2, No. 3,2015) di mana : σ : standar deviasi xi : nilai x ke -i µ : rata-rata hitung n : jumlah sampel b. Cari nilai probabilistik dengan cara menghitung jumlah data yang sesuai dari kategori yang sama dibagi dengan jumlah data pada kategori tersebut. 26 3. Mendapatkan nilai dalam tabel mean, standart deviasi dan probabilitas. 4. solusi kemudian dihasilkan II.4. Sekilas Tentang SQL Server 2008 II.4.1. Pengenalan Database, DBMS dan RDBMS Basis data (atau database) adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut (Achmad Solihin ; 2010 : 6) Database digunakan untuk menyimpan informasi atau data yang terintegrasi dengan baik di dalam komputer. Untuk mengelola database diperlukan suatu perangkat lunak yang disebut DBMS (Database Management System). DBMS merupakan suatu sistem perangkat lunak yang memungkinkan user (pengguna) untuk membuat, memelihara, mengontrol, dan mengakses database secara praktis dan efisien. Dengan DBMS, user akan lebih mudah mengontrol dan memanipulasi data yang ada. Sedangkan RDBMS atau Relationship Database Management System merupakan salah satu jenis DBMS yang mendukung adanya relationship atau hubungan antar tabel. Di samping RDBMS, terdapat jenis DBMS lain, misalnya Hierarchy DBMS, Object Oriented DBMS, dan sebagainya.(Achmad Solihin ; 2010 : 6) 27 1. Beberapa Istilah Database. a. Table Sebuah tabel merupakan kumpulan data (nilai) yang diorganisasikan ke dalam baris (record) dan kolom (field). Masing-masing kolom memiliki nama yang spesifik dan unik. b. Field Field merupakan kolom dari sebuah table. Field memiliki ukuran type data tertentu yang menentukan bagaimana data nantinya tersimpan. c. Record Record merupakan sebuah kumpulan nilai yang saling terkait. d. Key Key merupakan suatu field yang dapat dijadikan kunci dalam operasi tabel. Dalam konsep database, key memiliki banyak jenis diantaranya Primary Key, Foreign Key, Composite Key, dan lain-lain. e. SQL SQL atau Structured Query Language merupakan suatu bahasa (language) yang digunakan untuk mengakses database. SQL sering disebut juga sebagai query. (Achmad Solihin ; 2010 : 7) 2. Hierarki Database 28 Dalam konsep database, urutan atau hierarki database sangatlah penting. Urutan atau hierarki database digambarkan seperti pada gambar II.7. dibawah ini Gambar II.5. Hirarki Database (Sumber : Achmad Solihin ; 2010:7) II.4.2. SQL Server 2008 SQL Server 2008 R2 (dahulu nama kode SQL Server “Kilimanjaro”) diumumkan di TechEd 2009, dan dirilis untuk manufaktur pada 21 April 2010. SQL Server 2008 R2 menambahkan fitur tertentu untuk SQL Server 2008 termasuk data master manajemen sistem dicap sebagai Master Data Services , manajemen pusat data entitas master dan hirarki. Juga Multi Server Management, terpusat konsol untuk mengelola beberapa SQL Server 2008 29 instance dan jasa, termasuk database relasional, Reporting Services, Analysis Services & Integration Services. Adapun tampilan utama SQL Server 2008 R2 : Gambar II.6. SQL Server 2008 R2 (Sumber : Achmad Solihin ; 2010:7) SQL Server 2008 R2 meliputi sejumlah layanan baru, termasuk PowerPivot untuk Excel dan SharePoint, Master Data Services, StreamInsight, Report Builder 3.0, Reporting Services Add-in untuk SharePoint, sebuah lapis fungsi Data dalam Visual Studio yang memungkinkan kemasan database berjenjang sebagai bagian dari aplikasi, dan Utility SQL Server yang bernama UC (Utility Control Point), bagian dari AMSM (Aplikasi dan Multi-Server Management) yang digunakan untuk mengelola beberapa SQL Server. Microsoft SQL Server tersedia dalam beberapa edisi, dengan set fitur yang berbeda dan menargetkan pengguna yang berbeda. Edisi ini adalah: 1. SQL Server Compact Edition (SQL CE) Edisi kompak adalah mesin database tertanam. Berbeda dengan edisi lain dari SQL Server, SQL CE mesin didasarkan pada SQL Mobile (awalnya 30 dirancang untuk digunakan dengan perangkat genggam) dan tidak berbagi binari yang sama. Karena ukurannya yang kecil (1 MB DLL jejak), ia memiliki fitur mencolok mengurangi diatur dibandingkan dengan edisi lainnya. Misalnya, mendukung subset dari tipe data standar, tidak mendukung prosedur yang tersimpan atau Tampilan atau batch multi-pernyataan (antara keterbatasan lain).Hal ini terbatas pada ukuran basis data maksimal 4 GB dan tidak dapat dijalankan sebagai layanan Windows, Compact Edition harus di-host oleh aplikasi menggunakannya. Versi 3.5 mencakup pekerjaan yang cukup yang mendukung ADO.NET Layanan Sinkronisasi. 2. SQL Server Developer Edition SQL Server Developer Edition mencakup fitur yang sama seperti SQL Server Enterprise Edition, tetapi dibatasi oleh lisensi yang akan hanya digunakan sebagai pengembangan dan sistem pengujian, dan bukan sebagai server produksi. Edisi ini tersedia untuk download oleh siswa secara gratis sebagai bagian dari Microsoft ‘s DreamSpark program. 3. Embedded Edition SQL Server 2005 (SSEE) SQL Server 2005 Edition Embedded adalah contoh bernama dikonfigurasi secara khusus dari mesin database SQL Server Express yang hanya dapat diakses oleh Jasa Windows tertentu. 4. SQL Server Enterprise Edition 31 SQL Server Enterprise Edition adalah edisi fitur lengkap dari SQL Server, termasuk mesin database inti dan add-on jasa, sedangkan termasuk berbagai alat untuk membuat dan mengelola sebuah cluster SQL Server. 5. SQL Server Edition Evaluasi SQL Server Edition Evaluasi, juga dikenal sebagai Trial Edition, memiliki semua fitur dari Edisi Enterprise, tetapi terbatas pada 180 hari, setelah itu alat akan terus berjalan, tetapi layanan server akan berhenti. 6. SQL Server Express Edition SQL Server Express Edition adalah free edition skala bawah, SQL Server, yang meliputi database engine inti. Meskipun tidak ada batasan pada jumlah database atau pengguna yang didukung, hal ini terbatas untuk menggunakan satu prosesor, memori 1 GB dan 4 file database GB (10 GB file database dari SQL Server 2008 Express R2). Seluruh database disimpan dalam satu .mdf file, dan dengan demikian sehingga cocok untuk deployment XCOPY . Hal ini dimaksudkan sebagai pengganti MSDE . Dua edisi tambahan menyediakan superset dari fitur tersebut tidak di Edisi Express asli. Yang pertama adalah SQL Server Express dengan Tools, yang meliputi SQL Server Management StudioBasic Server. SQL Express dengan Advanced Layanan menambahkan teks lengkap kemampuan pencarian dan layanan pelaporan. 32 7. SQL Server Fast Track SQL Server Fast Track ini khusus untuk skala data perusahaan pergudangan penyimpanan dan pengolahan intelijen bisnis, dan berjalan pada-arsitektur perangkat keras referensi yang dioptimalkan untuk Fast Track. II.5. UML (Unified Modelling Language) UML singkatan dari Unified Modeling Language yang berarti bahasa pemodelan standar. Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah system. (Dharwiyanti, 2003). UML sendir juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan dalam system software. Notasi standar yang disediakan UML bias digunakan sebagai alat komunikasi bagi para pelaku dalam proses analisis yaitu, diagram use case, diagram sequence, dan diagram class. Dengan menggunakan UML dapat membuat model untuk semua jenis aplikasi piranti perangkat lunak, dimana aplikasi tersebut dapat berjalan pada piranti perangkat keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka UML cocok untuk penulisan piranti lunak dalam bahasa pemrograman yang berorientasi objek. (Dharwiyanti, 2003). 33 UML dapat diaplikasikan untuk maksud tertentu, biasanya antara lain untuk : 1. Merancang perangkat lunak 2. Sarana komunikasi antara perangkat lunak dengan proses bisnis. 3. Menjabarkan sistem secara rinci untuk analisa dan mencari apa yang diperlukan sistem. 4. Mendokumentasi sistem yang ada, proses-proses dan organisasinya. 1. Diagram Use Case Use case adalah rangkaian atau uraian sekelompok yang saling terkait dan membentuk sistem secara teratur yang di lakukan atau diawasi oleh sebuah actor. Use case digunakan untuk membentuk tingkah laku benda dalam sebuah model serta direalisasikan oleh sebuah kolaborasi.(Hamim Tohari ;2014; 47) Diagram Use case menggambarkan fungsionalitas yang di harapkan dari sebuah sistem. Hal yang di tekankan pada diagram ini adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara actor dengan sistem. Use case mentatakan sebuah aktivitas atas pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanj, dan lain sebagainya. Aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. .(Hamim Tohari ;2014; 48) Gambar II.7 menampilkan Simbol-simbol use case diagram 34 Gambar II.7. Simbol-Simbol Use Case (Sumber : kuliahtoni.blogspot.co.id) Elemen use case terdiri dari : a. Diagram use case, disertai dengan narasi dan skenario. b. Aktor ( actor ), mendefinisikan entitas diluar sistem yang memakai sistem. 35 c. Asosiasi (assosiations), mengindikasikan aktor mana yang berinteraksi dengan use case dalam suatu sistem. d. << include >>dan << extend >>. Merupakan indikator yang menggambarkan jenis relasi dan interaksi antar use-case. e. Generalisasi ( generalization ), menggambarkan hubungan turunan antar use case atau antar aktor. (Prabowo Pudjo Widodo & Herlawati ; 2011: 35) 2. Class Diagram Kelas (Class) adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan perancangan berorientasi objek. Kelas menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut(metode/fungsi).(Hamim Tohari ;2014; 84) Dalam pemodelan statis dari sebuah sistem, digram kelas biasanyadi gunakan untuk memodelkan salah satu dari tiga hal berikut: 1. Pembendaharaan dari system 2. Kolaborasi 3. Skema basis data logical Kelas memiliki tiga area pokok: 1. Nama (stereotype) 2. Atribut 3. Metode atau operasi 36 Atribut dan metode dapat memiliki salah sifat berikut: 1. Private, tidak dapat di panggil dari luar class yang bersangkutan 2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya 3. Public, dapat dipanggil oleh siapa saja Kelas dapat berupa implementasi dari sebuah interface, yaitu class absrak yang hanya memiliki metode. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metode pada saat run-time. .(Hamim Tohari ;2014; 84) Gambar II.8. Simbol-Simbol Class Diagram (Sumber : wordpress.com : 2013;05;class) 3. Activity Diagram Activity diagram memodelkan workflow proses bisnis dan urutan aktivity tes dalam sebuah proses. Diagram ini sangat mirip dengan flowchart karena 37 memodelkan workflow dari satu aktivitas ke aktivitas lainya atau dari aktivitas ke status. Membuat activity diagram pada awal pemodelan proses cukup menguntungkan untuk membantu memahami keseluruhan proses. Aktivity diagram juga bermanfaat untuk menggambarkan parallel behaviour atau menggambarkan interaksi antara beberapa use case. Gambar II.9. Simbol-Simbol Activity Diagram (Sumber : wordpress.com : 2013;05;class) 4. Squence Diagram Squence Diagram menggambarkan interaksi antara sejumlah objek dalam urutan waktu. Kegunaan untuk menunjukan rangkaian pesan yang di kirim antara objek juga interaksi antar objek yang terjadi pada titik tertentu dalam eksekusi sistem. Dalam UML, objek, pada diagram sequence digambarkan dengan segi 38 empat, yang berisinama dari objek yang di garis bawahi. Terdapat tiga (3) cara untukmenamai objek yaitu, nama objek, nama objek dan class serta nama class. Misalnya: (Hamim Tohari ;2014; 104) BRI BRI: Bank :Bank Object name Object name & class name class name Gambar II.10. penamaan objek Squence Diagram (Sumber : Hamim Tohari ;2014; 104) Pada diagram sequence, setiap objek hanya memiliki garis yang di gambarkan garis putus-putus ke bawah. Pesan antar objek di gambarkan dengan anak panah dari objek yang mengirimkan pesan ke objek yang menerima pesan. (Hamim Tohari ;2014; 104) Gambar II.10 menampilkan Simbol-simbol sequence diagram 39 Gambar II.11. Simbol-Simbol sequence Diagram (Sumber : wordpress.com : 2013;05) II.6. Microsoft Visual Basic 2010 Visual Basic 2010 merupakan salah satu bagian dari produk pemrograman terbaru yang dikeluarkan oleh Microsoft, yaitu Microsoft visual studio 2010. Visual studio merupakan produk pemrograman andalan dari Microsoft corporation, di mana di dalamnya berisi beberapa jenis IDE pemrograman seperti Visual Basic, Visual C++, Visual Web Develover, Visual C#, dan Visual F#. Semua IDE pemrograman tersebut sudah mendukung penuh implementasi .Net Framework terbaru, yaitu .Net Framework 4.0 yang merupakan pengembangan dari .Net Framework 3.5. Adapun database standar yang di sertakan adalah Microsoft SQL server 2008 exprees. 40 Visual Basic 2010 merupakan versi perbaikan dan pengembangandari versi pendahulunya, yaitu visual Basic 2008. Beberapa pengembangan yang terdapat di antara lain dukungan terhadap library terbaru dari microsoft, yaitu.Net Framework 4.0, dukungan terhadap library terbaru dari Microsoft , yaitu .Net Framework 4.0, dukungan terhadap pengembangan aplikasi menggunakan Microsoft SilverLight, dukungan terhadap aplikasi berbasis cloud computing, serta perluasan dukungan terhadap database, baik standalone maupun database server.(Wahana Komputer ; 2011;2). Gambar II.12 menampilkan tampilan utama Microsoft Visual Studio 2010 : Gambar II.12. Tampilan Microsoft Visual Studio 2010 (Sumber : Wahana Komputer ; 2011;2-3)