BAB II TINJAUAN PUSTAKA
II.1.
Data Mining
II.1.1. Pengertian Data Mining Nama data mining sebenarnya mulai dikenal sejak tahun 1990, ketika pekerjaan pemanfaatan data menjadi sesuatu yang penting dalam berbagai bidang, mulai dari bidang akademik, bisnis, hingga medis (Prasetyo, Eko ; 2014 : 3). Data Mining adalah suatu istilah yang digunakan untuk menguraikan penemuan pengetahuan di dalam database. 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. Data mining erat kaitanya dengan machine learning. Machine learning adalah suatu area dalam artificial intelligence atau kecerdasan buatan yang berhubungan dengan pengembangan teknik – teknik yang bisa diprogramkan dan belajar dari data masa lalu. Hubungan yang dicari dalam data mining dapat berupa hubungan antara dua atau lebih dalam satu dimensi. Keluaran dari data mining bisa dipakai untuk memperbaiki pengambilan keputusan di masa depan berdasarkan informasi yang diperoleh dari data masa lalu (Kusrini, Emha Taufiq Lutfi ; 2009 : 3-5). Istilah data mining memiliki beberapa padanan, seperti knowledge discovery atau pattern recognition. Kedua istilah tersebut sebenarnya memiliki
13
14
ketepatannya masing – masing. Istilah knowledge discovery atau penemuan pengetahuan tepat digunakan karena tujuan utama dari data mining untuk mendapatkan pengetahuan yang masih tersembunyi didalam bongkahan data. Istilah pattern recognition atau pengenalan pola pun tepat untuk digunakan karena pengetahuan yang hendak digali berbentuk pola – pola yang mungkin juga masih perlu digali dari dalam bongkahan data yang tengah dihadapi (Sani Santoso, Dedy Suryadi ; 2010 : 2 )
II.1.2. Proses Knowledge Discovery in Database (KDD) Salah satu tahapan dalam keseluruhan proses knowledge discovery in database (KDD) adalah data mining. Proses KDD secara garis besar dapar dijelaskan sebagai berikut : 1. Data Selection Pemilihan (seleksi) data dari sekumpulan data operasioanal perlu dilakukan sebelum tahap penggalian informasi dalam KDD dimulai. Data hasil seleksi yang akan digunakan untuk proses data mining, disimpan dalam suatu berkas, terpisah dari basis data operasional. 2. Pre-processing/ Cleaning Sebelum proses data mining dapat dilaksanakan, perlu dilakukan proses cleaning pada data yang mejadi fokus KDD. Proses cleaning mencakup antara lain membuang duplikasi data, memeriksa data yang inkonsisten dan memperbaiki keslaahan pada data, seperti kesalahan cetak (tipografi).
15
3. Transformation Coding adalah proses transformasi pada data yang telah dipilih, sehingga data tersebut sesuai untuk proses data mining. Proses coding dalam KDD merupakan proses kreatif dan sangat tergantung pada jenis atau pola informasi yang akan dicari dalam basis data. 4. Data Mining Data Mining adalah proses mencari pola atau informasi menarik dalam data terpilih dengan menggunakan teknik atau metode tertentu. Teknik, metode, atau algoritma dalam data mining sangat bervariasi. Pemilihan metode atau algoritma yang tepat sangat tergantung pada tujuan dan proses KDD secara keseluruhan. 5. Interpretation/ Evaluation Pola informasi yang dihasilkan dari proses data mining perlu ditampilkan dalam bentuk yang mudah dimengerti oleh pihak yang berkepentingan. Tahap ini merupakan bagian dari proses KDD yang disebut interpretation. Tahap ini mencakup pemeriksaan apakah pola yang ditemukan bertentangan dengan fakta atau hipotesis yang ada sebelumnya (Kusrini, Emha Taufiq Lutfi ; 2009 : 7).
16
Knowledge Data Mining Transformation Preprocessing
Patterns
Interpretation/ Evaluation
.... ....
Selection
Transformed Data Preprocessed Data
Data Target Data
Gambar II.1. Proses KDD (Sumber : Hermawati ; 2009 : 6)
II.1.3. Pengelompokkan Data Mining Data mining dibagi menjadi beberapa kelompok berdasarkan tugas yang dapat dilakukan, yaitu : 1. Deskripsi Terkadang peneliti dan analis secara sederhana ingin mencoba mencari cara untuk menggambarkan pola dan kecenderungan yang terdapat dalam data. Deskripsi dari pola dan kecenderungan sering memberikan kemungkinan penjelasan untuk suatu pola atau kecenderungan. 2. Estimasi Estimasi hampir sama dengan klasifikasi, kecuali variabel target estimasi lebih ke arah numerik daripada ke arah kategori. Model dibangun menggunakan record lengkap yang menyediakan nilai dari variabel target sebagai nilai prediksi.
17
3. Prediksi Prediksi hampir sama dengan klasifikasi dan estimasi, kecuali bahwa dalam prediksi nilai dari hasil akan ada di masa mendatang. Beberapa metode dan teknik yang digunakan dalam klasifikasi dan estimasi dapat pula digunakan untuk prediksi. 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. 5. Pengklusteran Pengklusteran merupakan pengelompokkan record, pengamatan, atau memperhatikan dan membentuk kelas objek – objek yang memiliki kemiripan. Kluster adalah kumpulan record yang memiliki kemiripan satu dengan lainnya dan memiliki ketidakmiripan dengan record – record dalam kluster lain. Algoritma pengklusteran mencoba untuk melakukan pembagian terhadap keseluruhan data menjadi kelompok – kelompok yang memiliki kemiripan (homogen), yang mana kemiripan record dalam satu kelompok aan bernilai maksimal, sedangkan kemiripan dengan record dalam kelompok lain akan bernilai minimal. 6. Asosiasi Tugas asosiasi dalam data mining adalah menemukan atribut yang muncul dalam satu waktu. Dalam dunia bisnis lebih umum disebut analisis keranjang belanja (Kusrini, Emha Taufiq Lutfi ; 2009 : 10-12).
18
II.2.
Algoritma Apriori Algoritma a priori termasuk jenis aturan asosiasi pada data mining. Aturan
yang menyatakan asosiasi antara beberapa atribut sering disebut affinity analysis atau market basket analysis. Analisis asosiasi atau association rule mining adalah teknik data mining untuk menemukan aturan asosiatif antara suatu kombinasi item. Analisis asosiasi dikenal juga sebagai salah satu teknik data mining yang menjadi dasar dari berbagai teknik data mining lainnya. Secara khusus, salah satu tahap analisis asosiasi yang menarik perhatian banyak peneliti untuk menghasilkan algoritma yang efisien adalah analisis pola frekuensi tinggi (frequent pattern minin). Penting tidaknya aturan asosiatif dapat diketahui dengan dua parameter, yaitu support dan confidence. Support (nilai penunjang) adalah persentase kombinasi item tersebut dalam database, sedangkan confidence (nilai kepastian) adalah kuatnya hubungan antar-item dalam aturan asosiasi. Analisi asosiasi didefinisikan suatu
proses untuk menemukan semua
aturan asosiasi yang memenuhi syarat minimum untuk support (minimum support) dan syarat minimum untuk confidence (minimum confidence). Metodologi dasar analisis asosiasi terbagi menjadi dua tahap : 1. Analisis Pola Frekuensi Tinggi dengan Algoritma Apriori Tahap ini mencari kombinasi item yang memenuhi syarat minimum dari nilai support dalam basis data. Nilai support sebuah item diperoleh dengan menggunakan rumus berikut :
19
Support =
Jumlah Transaksi mengandung A x 100% Total Transaksi
Sementara, nilai support dari 2 item diperoleh dengan menggunakan rumus :
Support A B=
Frequent
Jumlah Transaksi mengandung A dan B Total Transaksi
itemset
menunjukkan itemset
x 100%
yang memiliki
frekuensi
kemunculan lebih dari nilai minimum yang ditentukan (ᴓ). Misalkan ᴓ = 2, maka semua itemsets yang frekuensi kemunculannya lebih dari atau sama dengan 2 kali disebut frequent. Himpunan dari frequent k-itemset dilambangkan dengan Fk. 2. Pembentukan Aturan Asosiasi Setelah semua pola frekuensi tinggi ditemukan, barulah dicari aturan asosiasi yang memenuhi syarat minimum untuk confidence dengan menghitung confidence aturan asosiatif A → B. Nilai confidence dari aturan A → B diperoleh dengan rumus berikut : Jumlah Transaksi Mengandung A dan B Confidence = P ( A | B ) =
x100%
Jumlah Transaksi Mengandung A
Untuk menentukan aturan asosiasi yang akan dipilih maka harus diurutkan berdasarkan Support × Confidence. Aturan diambil sebanyak n aturan yang memiliki hasil terbesar (Kusrini dan Emha Taufiq Lutfi ; 2009 : 149-155).
20
II.2.1. Implementasi Apriori Misalkan : Tabel II.1. Transaksi item belanja yang dibeli ID
Itemset
1
A.Buku, C.Pensil, D.Penghapus
2
B.Pulpen, C.Pensil, E.Penggaris
3
A.Buku, B.Pulpen, C.Pensil, E.Penggaris
4
B.Pulpen, E.Penggaris
Misalkan diinginkan minsup : 50% (2 dari 4 transaksi) Langkah 1: L1={large 1-itemset} Tabel II.2. Jenis item dengan Support yang telah ditentukan Itemset
Support
A
50%
B
75%
C
75%
D
25%
E
75%
Langkah 2: Mencari kandidat itemset untuk L2: 2.1 : Gabungkan itemset pada L1 (algoritma apriori-gen) { A B, A C, A D, A E, B C, B D, B E, C D, C E, D E} 2.2 : Hapus yang tidak ada dalam itemset Itemset { B D, DE} dihapus karena tidak ada dalam itemset
21
Langkah 3 : Hitung support dari setiap kandidat itemset Tabel II.3. Pola kombinasi 2 item set Itemset
Support
AB
25 %
AC
50 %
AD
25 %
AE
25%
BC
50%
BE
75%
CD
25%
CE
50%
Langkah 4 : L2 { large 2-itemset} Tabel II.4. Pola kombinasi 2 item set yang memenuhi Minimum Support Itemset
Support
AC
50 %
BC
50%
BE
75%
CE
50%
Langkah 5 : Ulangi langkah 2-4 5.1 : Gabungkan itemset pada L2 & L2:
22
Tabel II.5. Pola kombinasi 3 item set Itemset
Hasil Gabungan 3 itemset
AC+BC
ACB
AC+BE
A C B, A C E, A B E
AC+CE
ACE
BC+BE
BCE
BC+CE
BCE
BE+CE
BCE
5. 2 : Hapus yang tidak ada dalam itemset : { A C E } Langkah 6 : Hitung support dari setiap kandidat itemset L3 Tabel II.6 Pola kombinasi 3 item set yang memenuhi Minimum Support Itemset
Support
ABC
25 %
ABE
25 %
BCE
50 %
Langkah 7 : L3 { large 3-itemset } Itemset yang mendekati minsup yaitu { B C E} Langkah 8 : Hentikan penelusuran karena sudah tidak ada lagi kandidat untuk 4itemset.
23
Dari hasil – hasil diatas hasil akhir sebagai berikut: L1 L2 A 50% AC 50% B
75%
BC
50%
C
75%
BE
75%
D
25%
CE
50%
E
75%
L3 BCE
50%
Untuk mencari aturan asosiasi diperlukan juga minconf Misal minconf : 75 %, aturan asosiasi yang mungkin terbentuk: Tabel II.7. Aturan Asosiasi Final Aturan (X Y)
Sup(X Y)
Sup(X)
Confidence
BCE
50%
50%
100%
BEC
50%
75%
66.67%
CEB
50%
50%
100%
AC
50%
50%
100 %
CA
50%
75%
66.67%
BC
50%
75%
66.67%
CB
50%
75%
66.67%
BE
75%
75%
100%
EB
75%
75%
100%
CE
50%
75%
66.67%
EC
50%
75%
66.67%
24
II.3.
Persediaan Barang
II.3.1. Pengertian Persediaan Barang Persediaan barang (inventory) adalah istilah yang dipakai untuk menunjukkan barang – barang yang dimiliki untuk dijual kembali atau digunakan untuk diproses menjadi barang – barang yang akan dijual. Pengelolaan persediaan merupakan elemen penting dalam perusahaan. Manajemen persediaan yang efektif merupakan kunci keberhasilan dalam operasional perusahaan, khususnya dalam perusahaan dagang dan perusahaan manufaktur (pabrikasi). Manajemen persediaan yang efektif akan berusaha untuk mempertahankan kuantitas dan jenis persediaan yang cukup untuk memenuhi permintaan pelanggan, di sisi lain juga harus menghindari biaya penyimpanan sebagai akibat penentuan kebijakan persediaan dalam jumlah besar. Persediaan barang dalam perusahaan dagang dan dalam perusahaan manufaktur adalah jumlah yang mempengaruhi besarnya angka dalam neraca maupun laporan laba rugi. Oleh karena itu, persediaan barang yang dimiliki dalam satu periode harus dapat dibedakan mana yang sudah dapat dikategorikan sebagai biaya (harga pokok penjualan) yang akan dilaporkan dalam laporan laba rugi dan mana yang masih belum terjual yang nantinya akan menjadi persediaan dalam neraca. Persediaan merupakan bagian yang sangat besar dari keseluruhan aktiva lancar yang dimiliki suatu perusahaan, walaupun persentasenya berbeda antara perusahaan satu dengan lainnya. (Tofik,Moch ; 2012 : 1)
25
II.4.
Visual Basic 2010
II.4.1. Pengertian Visual Basic 2010 Visual Basic merupakan salah satu bahasa pemrograman yang handal dalam lingkungan Windows. Visual Basic telah merajai pasar pembuatan software / perangkat lunak sampai beberapa dekade tanpa ada yang menyaingi. Visual Basic 2010 merupakan teknologi terbaru yang masuk ke dalam Visual Studio bersama dengan C#, C++, dan yang lainnya. Visual Basic adalah salah satu development tools untuk membangun aplikasi dalam lingkungan Windows. Visual Basic menggunakan pendekatan visual untuk merancang user interface dalam bentuk form, sedangkan untuk codingnya menggunakan dialek bahasa BASIC yang cenderung mudah dipelajari. Pada pemrograman visual, pengembangan aplikasi dimulai dengan pembentukan user interface, kemudian mengatur properties dari objek-objek yang digunakan dalam user interface, dan baru dilakukan penulisan kode program untuk menangani ke jadian-kejadian (event). Visual Basic 2010 merupakan salah satu bagian dari produk pemograman terbaru yang dikeluarkan oleh Microsoft, yaitu Microsoft Visual Studio 2010. Sebagai produk lingkunan pengembangan terintegrasi atau IDE andalan yang dikeluarkan oleh Microsoft (Wahana Komputer ; 2010 : 2).
26
II.5.
Basis Data
II.5.1. Pengertian Basis Data Basis data merupakan suatu kumpulan data terhubung yang disimpan secara bersama – sama pada suatu media, tidak perlu suatu kerangkapan data, data disimpan dengan cara – cara tertentu sehingga mudah digunakan atau ditampilkan kembali. Data dapat digunakan oleh satu atau lebih program – program aplikasi secara optimal, data disimpan tanpa mengalami ketergantungan dengan program yang akan menggunakannya, data disimpan sedemikian rupa sehingga proses penambahan, pengambilan dan modifikasi data dapat dilakukan dengan mudah dan terkontrol. (Sutanta, Edhy ; 2011 : 29) Istilah sistem basis data berbeda dengan basis data. Sistem basis data mempunyai lingkup yang lebih luas dibanding basis data. Sistem basis data didefinisikan sebagai sekumpulan subsistem yang terdiri atas basis data dengan para pemakai yang menggunakan basis data secara bersama – sama, personal yang merancang dan mengelola basis data serta sistem komputer yang mendukungnya. (Sutanta, Edhy ; 2011 : 32) II.5.2. Kriteria Penting Basis Data Adapun kriteria penting yang harus dipenuhi pada suatu basis data, yaitu : 1.
Berorientasi pada data (data oriented) dan bukan berorientasi pada program (program oriented) yang akan menggunkannya. Untuk memenuhi kriteria ini maka basis data harus disimpan secara terpisah dengan program aplikasinya. Umumnya paket – paket aplikasi pengolahan basis data (Database Management System / DBMS) yang tersedia telah dirancang
27
sedemikian rupa sehingga basis data disimpan sebagai sekumpulan file yang terpisah dengan program yang mengaksesnya. 2.
Data dalam basis data dapat berkembang dengan mudah, baik volume maupun strukturnya. Struktur basis data juga mengalami perubahan seiring dengan kebutuhan subsistem–subsistem pengolahan data yang baru.
3.
Data yang ada dapat memenuhi kebutuhan sistem–sistem baru secara mudah. Ketika terjadi perubahan sistem yang baru maka data–data dalam basis data harus dapat memenuhinya.
4.
Data dapat digunakan dengan cara yang berbeda–beda. Data dalam basis data dapat diakses menggunakan program aplikasi, menggunakan instruksi– instruksi yang bersifat interaktif, menggunakan bahasa query dan lain–lain.
5.
Kerangkapan data (data redudancy) minimal. Kerangkapan data dapat mengakibatkan
permasalahan
yang
menyulitkan
ketika
dilakukan
pengolahan data dikemudian hari. (Sutanta, Edhy ; 2011 : 30) II.5.3. Komponen Dasar Sistem Basis Data Sistem basis data mempunyai beberapa elemen penting, yaitu : 1. Basis data sebagai inti dari sistem basis data. 2. Perangkat lunak (software) untuk perancangan dan pengelolaan basis data. 3. Perangkat keras (hardware) sebagai pendukung operasi pengolahan basis data. 4. Manusia (brainware) yang mempunyai peranan penting dalam sistem tersebut, yaitu sebagai pemakai atau para spesialis informasi yang
28
mempunyai fungsi sebagai perancang atau pengelola. (Sutanta, Edhy ; 2011 : 33) II.5.4. Hierarki Data Adapaun susunan/hierarki data hingga tersusun suatu sistem basis data, sebagai berikut : 1. Sistem basis data, merupakan sekumpulan subsistem yang terdiri atas basis data dengan para pemakai yang menggunakan basis data secara bersama – sama, personal – personal yang merancang dan mengelola basis data, teknik – teknik untuk merancang dan mengelola basis data serta sistem komputer untuk mendukungnya. 2. Basis data, merupakan sekumpulan dari bermacam – macam tipe record yang memiliki hubungan antar-record dan rincian data terhadap obyek tertentu. 3. File, merupakan sekumpulan record sejenis secara relasi yang tersimpan dalam media penyimpanan sekunder. 4. Record, merupakan sekumpulan field/atribut/data item yang saling berhubungan terhadap obyek tertentu. 5. Data item/field/atribut, merupakan unit terkecil yang disebut data, yaitu sekumpulan byte yang mempunyai makna. 6. Data agregate, merupakan sekumpulan data item/field/atribut dengan ciri tertentu dan diberi nama. 7. Byte, adalah bagian terkecil yang dialamatkan dalam memori. Byte merupakan sekumpulan bit yang secara konvensional terdiri atas
29
kombinasi 8 bit biner yang menyatakan sebuah karakter dalam memori (1 byte = 1 karakter). 8. Bit, adalah sistem biner yang terdiri dari dua macam nilai, yaitu 0 dan 1. Sistem biner merupakan dasar yang dapat digunakan untuk komunikasi antara manusia dan mesin (komputer). (Sutanta, Edhy ; 2011 : 35-37) II.5.5. Model Data dalam Basis Data Model data merupakan suatu cara untuk menjelaskan tentang data – data yang tersimpan dalam basis data dan bagaimana hubungan antar data tersebut untuk para pengguna (user) secara logika. Secara garis besar model data dapat dikelompokkan dalam tiga macam, yaitu : 1. Object based data model, merupakan himpunan data dan prosedur/relasi yang menjelaskan hubungan logik antar data dalam suatu basis data berdasarkan pada obyek datanya. Model ini terbagi atas : a. Entity
relationship
model,
merupakan
suatu
model
untuk
menjelaskan hubungan antar data dalam basis data berdasarkan suatu persepsi bahwa real world terdiri dari obyek–obyek dasar yang mempunyai hubungan/kerelasian antar obyek-obyek tersebut yang dilukiskan dengan menggunakan simbol-simbol grafis tertentu. b. Semantic model, hampir sama dengan entity relationship model. Perbedaannya adalah kerelasian antar obyek dasar tidak dinyatakan dengan simbol, tetapi secara semantik, yaitu menggunakan tandatanda.
30
2. Record based data model, model ini mendasarkan pada record/rekaman untuk menjelaskan kepada para pengguna tentang hubungan logik antar data dalam basis data. Model ini terdiri atas : a. Hierarchycal model, sering pula disebut sebagai tree structure, menjelaskan kepada pengguna tentang hubungan logik antar data dalam basis data dalam bentuk hubungan bertingkat. b. Network model, sering disebut sebagai plex structure. Seperti halnya hierarchycal model, network model dapat dideskripsikan ke dalam struktur hubungan bertingkat yang tersusun atas node-node. c. Relational model, menjelaskan kepada pengguna tentang hubungan logik antar data dalam basis data dengan merepresentasikan kedalam bentuk tabel-tabel yang terdiri atas sejumlah baris yang menunjukkan record dan kolom yang menunjukkan atribut tertentu. Relational model merupakan pemodelan yang banyak digunakan dalam perancangan basis data. 3. Physical based data model, model ini mendasari pada teknis penyimpanan record/rekaman dalam basis data. Model ini jarang digunakan untuk memodelkan data kepada para pengguna karena relatif rumit dan kompleks sehingga sering menyulitkan penggunanya. (Sutanta, Edhy ; 2011 : 86-87)
31
II.6.
SQL Server 2008
II.6.1. Pengertian SQL Server 2008 SQL Server 2008 adalah sebuah terobosan baru dari Microsoft dalam bidang database. SQL Server adalah sebuah DBMS (Database Management System) yang dibuat oleh Microsoft untuk ikut berkecimpung dalam persaingan dunia (Wahana Komputer ; 2010 ; 2) . SQL Server 2008 memiliki suatu GUI ( Graphic User Interface ) yang dapat digunakan untuk melakukan aktivitas sehari-hari berkaitan dengan database, seperti menulis T-SQL, melakukan backup dan restore database, melakukan security database terhadap aplikasi dan sebagainya. Pada GUI tersebut terdapat setingan terhadap SQL Server untuk bekerja lebih optimal. Settingannya juga bisa dilakukan dengan menggunakan script untuk memudahkan developer mengubah setting pada SQL Server 2008.
II.7.
UML (Unified Modeling Language) Menurut Windu Gata (2013 : 4) Hasil pemodelan pada OOAD
terdokumentasikan dalam bentuk Unified Modeling Language (UML). UML adalah bahasa spesifikasi standar yang dipergunakan untuk mendokumentasikan, menspesifikasikan dan membangun perangkat lunak. UML merupakan metodologi dalam mengembangkan sistem berorientasi objek dan juga merupakan alat untuk mendukung pengembangan sistem. UML saat ini sangat banyak dipergunakan dalam dunia industri yang merupakan standar bahasa pemodelan umum dalam industri perangkat lunak dan pengembangan sistem.
32
Alat bantu yang digunakan dalam perancangan berorientasi objek berbasiskan UML adalah sebagai berikut : II.7.1. Use case Diagram Use case diagram merupakan pemodelan untuk kelakukan (behavior) sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Dapat dikatakan use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut. Berikut ini adalah simbol-simbol yang digunakan dalam use case diagram, yaitu : Tabel II.8. Simbol – Simbol Use Case Diagram Simbol Use case Nama use case
Aktor / actor
nama aktor
Asosiasi/ association
Deskripsi Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor, biasanya dinyatakan dengan menggunakan kata kerja diawal diawal frase nama use case orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari actor adalah gambar orang, tapi aktor belum tentu merupakan orang; biasanya dinyatakan menggunakan kata benda di awal nama aktor.
Komunikasi antara actor dan use case yang berpartisipasi pada use case atau use case memiliki interaksi dengan aktor
33
Ekstensi / extend <<extend>>
Relasi use case tambahan kesebuah use case dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan itu: mirip dengan prinsip inheritance pada pemograman berorientasi objek; biasanya use case tambahan memiliki nama depan yang sama dengan use case yang ditambahkan, misal Validasi username
<<extend>> Validasi user
<<extend>> Validasi sidik jari
Arah panah mengarah pada use case yang ditambahkan; biasanya use case yang menjadi extend-nya merupakan jenis yang sama dengan use case yang menjadi induknya. Generalisasi/generalization Hubungan generalisasi dan spesialisasi (umum – khusus) antara dua buah use case dimana fungsi yang satu adalah fungsi yang lebih umum dari lainnya, misalnya: Ubah data
Mengelola data
Input data
Arah panah mengarah pada use case yang menjadi generalisasinya (umum).
34
Menggunakan / include / uses
Relasi use case tambahan ke sebuah use case dimana use case yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat use case ini.
<
>
Ada dua sudut pandang yang cukup besar mengenai include di use case : include berarti use case yang ditambahkan akan selalu dipanggil saat use case tambahan dijalankan.
<<uses>>
uses berarti use case yang tambahan akan selalu melakukan pengecekan apakah use case yang ditambahkan telah dijalankan sebelum use case tambahan dijalankan.
Sumber : (Rosa A.S, M.Shalahuddin ; 2013 : 155-158). II.7.2. Diagram Aktivitas (Activity Diagram) Activity Diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Berikut ini adalah simbol-simbol yang digunakan dalam activity diagram, yaitu : Tabel II.9. Simbol - Simbol Activity Diagram Simbol
Deskripsi
Status awal
Status awal aktivitas sistem, sebuah diagram aktivitas memiliki sebuah status awal.
Aktivitas
Aktivitas yang dilakukan sistem, aktivitas biasanya diawali dengan kata kerja.
Percabangan / decision
Asosiasi percabangan dimana jika ada pilihan aktivitas lebih dari satu.
35
Penggabungan / join
Asosiasi penggabungan dimana lebih dari satu aktivitas digabungkan menjadi satu.
Status akhir
Status akhir yang dilakukan sistem, sebuah diagram aktivitas memiliki sebuah status akhir.
Swimlane
Memisahkan organisasi bisnis yang bertanggungjawab terhadap aktivitas yang terjadi.
nama swimlane
Sumber : (Rosa A.S, M.Shalahuddin; 2013 : 161-163). II.7.3. Diagram Kelas (Class Diagram) Merupakan hubungan antar kelas dan penjelasan detail tiap-tiap kelas di dalam model desain dari suatu sistem, juga memperlihatkan aturan-aturan dan tanggng jawab entitas yang menentukan perilaku sistem. Class diagram juga menunjukkan atribut-atribut dan operasi-operasi dari sebuah kelas dan constraint yang berhubungan dengan objek yang dikoneksikan. Class diagram secara khas meliputi: Kelas (Class), Relasi, Associations, Generalization
dan
Aggregation,
Atribut
(Attributes),
Operasi
(Operations/Method), Visibility, tingkat akses objek eksternal kepada suatu operasi atau atribut. Hubungan antar kelas mempunyai keterangan yang disebut dengan multiplicity atau kardinaliti.
36
Tabel II.10. Multiplicity Class Diagram Multiplicity 1 0..* 1..* 0..1 n..n
Penjelasan Satu dan hanya satu Boleh tidak ada atau 1 atau lebih 1 atau lebih Boleh tidak ada, maksimal 1 Batasan antara. Contoh 2..4 mempunyai arti minimal 2 maksimum 4 (Sumber : Windu Gata ; 2013 : 9)
II.7.4. Diagram Urutan (Sequence Diagram) Sequence diagram menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar objek. Simbol-simbol yang digunakan dalam sequence diagram, yaitu : Tabel II.11. Simbol Sequence Diagram Simbol Aktor
Deskripsi orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari actor adalah gambar orang, tapi actor belum tentu merupakan orang;
nama aktor
Garis hidup / lifeline
biasanya dinyatakan menggunakan kata benda di awal nama actor. Menyatakan kehidupan suatu objek.
37
Objek
Menyatakan objek yang berinteraksi pesan.
nama objek : nama kelas
Waktu aktif
Menyatakan objek dalam keadaan aktif dan berinteraksi, semua yang terhubung dengan waktu aktif ini adalah tahapan yang dilakukan didalamnya.
Pesan tipe create
Menyatakan suatu objek membuat objek yang lain, arah panah mengarah pada objek yang dibuat
<>
Pesan tipe call
Menyatakan suatu objek memanggil operasi / metode yang ada pada objek lain atau dirinya sendiri.
1 : nama_metode{}
Pesan tipe send
Menyatakan bahwa suatu objek mengirimkan data / masukan / informasi ke objek lainnya, arah panah mengarah pada objek yang dikirimi.
1 : masukan
Pesan tipe return
1 : keluaran
Pesan tipe destroy
Menyatakan bahwa suatu objek yang telah menjalankan suatu operasi atau metode menghasilkan suatu kembalian ke objek tertentu, arah panah mengarah pada objek yang menerima kembalian.
Menyatakan suatu objek mengakhiri hidup objek yang lain, arah panah mengarah pada
38
<<destroy>>
objek yang diakhiri, sebaiknya jika ada create maka ada destroy.
Sumber : (Rosa A.S, M.Shalahuddin ; 2013 : 165-167)