11
BAB II TINJAUAN PUSTAKA
II.1. Sejarah Kecerdasan Buatan Selama bertahun-tahun para filsuf berusaha mempelajari kecerdasan yang dimiliki manusia. Dari pemikiran tersebut lahirlah AI sebagai cabang ilmu yang mempelajari dan meniru kecerdasan manusia. Sejak saat itu para peneliti mulai memikirkan perkembangan AI sehingga teori-teori dan prinsip-prinsipnya berkembang terus hingga sekarang. Abad ke-17 sampai abad ke-19, abad ini merupakan perkembangan kecerdasan buatan. Hal ini ditandai oleh penemuan kecerdasan buatan. (T.Sutojo, dkk ; 2011 : 3).
II.1.1. Kecerdasan Buatan Kecerdasan buatan yang dimaksud disini merujuk pada mesin yang mampu berfikir, menimbang tindakan yang di ambil, dan mampu mengambil keputusan seperti yang dilakukan oleh manusia. Berikut adalah beberapa defenisi kecerdasan buatan yang didefenisikan oleh beberapa ahli. Alan Turing, ahli matematika berkebangsaan Inggris yang dijuluki bapak komputer modern dan pembongkar sandi Nazi dalam era Perang Dunia II 1950, menetapkan defenisi Artificial Intelligent: “jika komputer tidak dapat dibedakan dengan manusia saat berbincang melalui terminal komputer, maka
11
12
bisa dikatakan komputer itu cerdas, mempunyai kecerdasan“. (T.Sutojo, dkk ; 2011 : 1-2). John McCarthy dari standford mendefenisikan kecerdasan sebagai “kemampuan untuk mencapai sukses dalam menyelesaikan suatu permasalahan“. (T.Sutojo, dkk ; 2011 : 1-2). Herbert Alexander Simon, “kecerdasan buatan merupakan kawasan penelitian, aplikasi, dan instruksi yang terkait dengan pemrograman komputer untuk melakukan sesuatu hal yang dalam pandangan manusia adalah cerdas“. (T.Sutojo, dkk ; 2011: 1-2).
II.2. Sistem Pakar Sistem pakar merupakan cabang dari Artificial Intelegence (AI) yang cukup tua karena sistem ini mulai dikembangjkan pada pertengahan 1960. Sistem pakar yang muncul peretama kali adalah General Purpose Solver (GPS) yang dikembangjkan oleh Newel dan Simon. Sampai saat ini sudah banyak sistem pakar yang dibuat seperti MYCIN untuk diagnosis penyakit, DENDRAL untuk mengidentifikasi struktur molekul campuran yang tak dikenal, XCON & XSEL untuk memebantu konfigurasi sistem komputer besar, SOPHIE untuk analisis sirkuit elektronik, Prospector digunakan dibidang geologi untuk membantu mencari dan menemukan deposit, FOLIO digunakan untuk membantu memberikan keputusan bagi seorang manager dalam stok dan investasi, DELTA dipakai untuk pemeliharaan lokomotif listrik diesel, dan sebagainya.
13
Istilah sistem pakar berasal dari istilah knowleddge based expert sistem, istilah ini muncul karena untuk memecahkan masalah, sistem pakar menggunakan pengetahuan seorang pakar yang diasukkan ke dalam komputer. Seseorang yang bukan pakar menggunakan sistem pakar untuk meningkatkan kemampuan pemecahan masalah, sedangkan seorang pakar menggunakan sistem pakar untuk knowledge – assistant. Berikut adalah beberapa pengertian sistem pakar. (T.Sutojo, dkk ; 2011 : 160). Menurut beberapa ahli sistem pakar adalah : 1. Sistem pakar adalah sebuah sistem yang menggunakan pengetahuan manusia dimana pengetahuan tersebut dimasukkan ke dalam sebuah komputer dan kemudian digunakan untuk menyelesaikan masalahmasalah yang biasanya membutuhkan kepakaran atau keahlian manusia. 2. Sistem pakar adalah program komputer yang merepresentasikan dan melakukan penalaran dengan pengetahuan beberapa pakar untuk memecahkan masalah atau memeberikan saran. 3. Sistem pakar adalah program yang berbasiskan pengetahuan yang menyediakan solusi „kualitas pakar‟ kepada masalah-masalah dalam bidang (domain) yang spesifik. II.2.1. Manfaat Sistem Pakar Sistem pakar menjadi sangat populer karena sangat banyak kemampuan dan manfaat yang diberikannya, di antaranya: 1. Meningkatkan produktivitas, karena sistem pakar dapat bekerja lebih cepat daripada manusia.
14
2. Membuat seorang yang awan bekerja seperti layaknya seorang pakar. 3. Meningkatkan kualitas, dengan memberi nasehat yang konsisten dan mengurangi kesalahan. 4. Mampu menangkap pengetahuan dan kepakaran seseorang. 5. Dapat beroperasi dilingkungan yang berbahaya. 6. Andal. Sistem pakar tidak pernah menjadi bosan dan kelelahan atau sakit. 7. Memudahkan akses pengetahuan seorang pakar. 8. Meningkatkan kapabilitas sistem komputer. Integrasi sistem pakar dengan sistem komputer lain membuat sistem lebih efektif dan mencakup lebih banyak aplikasi. 9. Mampu bekerja dengan informasi yang tidak lengkap atau tidak pasti. Berbeda dengan sistem komputer konvensional, sistem pakar dapat bekerja dengan informasi yang tidak lengkap. Pengguna dapat merespons dengan : :tidak tahu” atau “ tidak yakin” pada satu atau lebih pertanyaan selama konsultasi dan sistem pakar tetap akan memberikan jawabannya. 10. Bisa digunakan sebagai media pelengkap dalam pelatihan. Pengguna pemula yang bekerja dengan sistem pakar akan menjadi lebih berpengalaman karena adanya fasilitas penjelas yang berfungsi sebagai guru. 11. Meningkatkan kemampuan untuk menyelesaikan masalah karena sistem pakar mengambil sumber pengetahuan dari banyak pakar.
15
II.2.2. Kekurangan Sistem Pakar Selain manfaat, ada juga beberapa kekurangan dari sistem pakar, di antaranya: 1. Biaya yang sangat mahal untuk membuat dan memeliharanya. 2. Sulit dikembangkan karena keterbatasan keahlian dan ketersedian pakar. 3. Sistem pakar tidak 100 % bernilai benar.
II.2.3. Ciri-Ciri Sistem Pakar Ciri-ciri dari sistem pakar adalah sebagai berikut : 1. Terbetas pada domain keahlian tertentu 2. Dapat memberikan penalaran untuk data-data yang tidak lengkap atau tidak pasti. 3. Dapat menjelaskan alasan-alasan dengan cara yang dapat dipahami. 4. Bekerja berdasarkan kaidah/rule rule tertentu. 5. Mudah dimodifikasi. 6. Basis pengetahuan dan mekanisme inferensi terpisah. 7. Keluarannya bersifat anjuran. 8. Sistem dapat mengaktifkan kaidah secara searah yang sesuai, dituntun oleh dialog dengan pengguna.
II.2.4. Struktur Sistem Pakar Ada dua bagian penting dari sistem pakar, yaitu lingkungan pengembangan
(develepment
environment)
dan
lingkungan
konsultasi
(consultation environment). Lingkungan pengembangan digunakan oleh
16
pembuat sistem pakar untuk membangun komponen-komponennya dan memperkenalkan pengetahuan ke dalam knowladge base (basis pengetahuan). Lingkungan konsultasi digunakan oleh pengguna untuk berkonsultasi sehingga pengguna mendapatkan pengetahuan dan nasihat dari sistem pakar layaknya berkonsultasi dengan seorang pakar. (T.Sutojo, dkk ; 2011 : 166-167).
II.3. Teorema Bayes Metode yang diterapkan dalam pembuatan sistem pakar ini adalah metode pendekatan teorema bayes dengan cara kerja sebagai berikut : Bentuk teorema bayes untuk evidence tunggal E dan hipotesis H adalah : p(H|E,e) = p(E|H) x p(H) p(E) dengan : p(H|E) = probabilitas hipotesis H terjadi jika evidence E terjadi p(E|H) = probabilitas munculnya evidence E, jika hipotesis H terjadi p(H)
= probabilitas hipotesis H tanpa memandang evidence apapun.
p(E)
= probabilitas evidence E tanpa memandang apapun.
Bentuk teorema bayes untuk evidence gandal E1,E2, …, Em dan hipotesis ganda Hi,H2,… Hn adalah : P(Hi|E1E2…E3) =
p(E1| Hi) x p(E2| Hi) x … x p(Em| Hi) x p(Hi) nk=1 p(E1|Hk) x p(E2|Hk) x … x p(Em|Hk) x p(Hk)
17
II.4. Penyakit Mata Seperti kita ketahui penyakit mata pada manusia ada bermacam-macam seperti Glaukoma, Hordeolum, Kalazion, Katarak, Konjungtivitis, Entropion. Penyakit mata adalah penyakit yang berbahaya, bila tidak segera didiagnosa dan diobati maka dapat menimbulkan kebutaan pada mata ataupun timbul penyakit lainnya. Penyakit mata tersebut dapat didiagnosa melalui gejala-gejala yang timbul yang diderita oleh manusia tersebut ataupun melalui gambaran klinisnya. (Effendy, Nasrul, dkk; 2008 : 248). Jenis-jenis penyakit mata yang di rangkum adalah : II.4.1. Konjungtivitis Konjungtivitis merupakan radang konjungtiva atau radang selaput lender yang menutupi belakang kelopak dan bola mata. Gambaran klinis yang terlihat pada konjungtivitis dapat berupa hiperemi konjungtiva bulbi (injeksi konjungtiva), lakrimasi, eksudat dengan sekret yang lebih nyata di pagi hari, pseudoptosis akibat kelopak membengkak, kemosis, hipertropi papil, folikel, membrane, pseudomembran, granulasi, flikten, mata merasa seperti adanya benda asing, dan adenopati preaurikular. (Ilyas, Sidarta ; 2010; 121-122) Gejala : 1. Mata merah 2. Mata terasa nyeri 3. Mata merasa gatal 4. Mata berair 5. Keluar kotoran (belekan)
18
6. Penglihatan kabur 7. Sensitif terhadap cahaya 8. Lekas lelah apabila kerja dekat II.4.2. Trakoma Trakoma adalah infeksi pada mata yang disebabkan bakteri Chlamydia trachomatis. Bakteri ini berkembang biak dilingkungan yang kotor atau bersanitasi buruk. Lantaran itulah trakoma sering menyerang anak-anak, terutama di berbagai negara berkembang. Pemaparan bakteri berlangsung saat anak menggunakan alat atau benda yang sudah tercemari Chlamydia seoerti sapu tangan atau handuk. Gejala : 1. Mata merah 2. Keluar kotoran (belekan) 3. Pembengkakan kelopak mata dan kelenjar getah bening 4. Kornea kelihatan keruh Penanganan : -
Jauhkan alat/benda yang sudah dipakai penderita dari anggota keluarga yang lain.
-
Penderita biasanya akan diberi salep antibiotika yang mengandung tetracycline dan erythromycin selama sekitar satu bulan atau lebih
-
Jika tidak segera ditangani dapat menyebabkan pembentukan jaringan parut dikornea sehingga menyebabkan bulu mata melipat kedalam dan terjadilah gangguan penglihatan
19
-
Jika terjadi kelainan bentuk pada kelopak mata atau kornea kemungkinan perlu dilakukan tindakan pembedahan.
II.5. Unified Modeling Technique (UML) UML adalah sebuah bahasa yang telah menjadi standar dalam sebuah industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem. Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi 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 ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C. Seperti bahasa-bahasa lainnya, UML mendefenisikan notasi dan synta/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefenisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya Grady Booch OOD (Object-Oriented Software Engineering).
20
II.5.1. Deskripsi UML Konsep dasar UML terdiri dari structural ckassification, dynamic behavior, dan model management. UML biasa digunakan untuk : 1. Menggambarkan batasan sistem dan fungsi-fungsi sistem secara umum, dibuat dengan use case dan actor. 2. Menggambarkan kegiatan atau proses bisnis yang dilaksanakan secara umum, dibuat dengan interaction diagram. 3. Menggambarkan representasi struktur statik sebuah sistem dalam bentuk class diagrams. 4. Membuat model behavior yang menggambarkan kebiasaan atau sifat sebuah sistem dengan state transition diagrams. 5. Menyatakan arsitektur implementasi fisik menggunakan component and develepment diagrams. 6. Menyampaikan atau memperluas fungsionality dengan stereotypes. UML merupakan salah satu alat bantu yang sangat handal dalam bidang pengembangan sistem berorientasi objek karena UML menyediakan bahasa pemodelan visual yang memungkinkan pengembang sistem membuat blue print atas visinya dalam bentuk yang baku. UML berfungsi sebagai jembatan dalam mengkomunisasikan beberapa aspek dalam sistem melalui sejumlah elemen grafis yang bisa dikombinasikan menjadi diagram. UML mempunyai banyak diagram yang dapat mengakomodasi berbagai sudut pandang dari suatu perangkat lunak yang akan dibangun.
21
Diagram-diagram tersebut digunakan untuk : 1. Mengakomodasikan ide 2. Melahirkan ide-ide baru dan peluang-peluang baru. 3. Menguji ide dan membuat prediksi memahami struktur dan relasirelasinya. (Sugiarti, Yuni ; 2013 : 33-37)
II.5.2. Use case Diagram Dalam membuat sebuah sistem, langkah awal yang perlu dilakukan adalah menentukan kebutuhan. Terdapat dua jenis kebutusan, yaitu kebutuhan fungsional dan kebutuhan nonfungsional. Kebutuhan fungsional adalah kebutuhan pengguna dan stakeholder sehari-hari yang akan dimiliki oleh sistem, dimana kebutuhan ini akan digunakan oleh pengguna dan stakeholder. Sedangkan memperhatikan
kebutuhan
hal-hal
berikut
nonfungsional yaitu
adalah
performansi,
kebutuhan
yang
kemudahan
dalam
menggunakan sistem, kehandalan sistem, keamanan sistem, keungan, legalitas, dan operasional. Kebutuhan fungsional akan digambarkan melalui sebuah diagram yang dinamakan diagram use case. Use case diagram atau diagram use case merupakan pemodelan untuk menggambarkan kelakuan (behavior) sistem yang akan dibuat. Diagram use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem yang akan dibuat. Dengan pengertian cepat, diagram use case digunakan untuk mengetahui fungsi apa saja yang ada didalam sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut.
22
Terdapat beberapa simbol dalam menggambarkan use case diagram, yaitu use case, aktor, dan relasi. Hal yang perlu di ingat tentang diagram use case adalah diagram use case bukan menggambarkan tampilan antarmuka (user interface), arsitektur dari sistem, kebutuhan nonfungsional, dan tujuan performansi. (Sugiarti, Yuni ; 2013 : 41-42) Tabel II.1 Simbol Use case NO
GAMBAR
NAMA
KETERANGAN Menspesifikasikan himpuan peran yang pengguna mainkan ketika berinteraksi dengan use case. Hubungan dimana perubahan yang terjadi pada suatu elemen mandiri (independent) akan mempengaruhi elemen yang bergantung padanya elemen yang tidak mandiri (independent). Hubungan dimana objek anak (descendent) berbagi perilaku dan struktur data dari objek yang ada di atasnya objek induk (ancestor).
1
Actor
2
Dependency
3
Generalizatio n
4
Include
Menspesifikasikan bahwa use case sumber secara eksplisit.
5
Extend
Menspesifikasikan bahwa use case target memperluas perilaku dari use case sumber pada suatu titik yang diberikan.
6
Association
Apa yang menghubungkan antara objek satu dengan objek lainnya.
7
Sistem
Menspesifikasikan paket yang menampilkan sistem secara terbatas.
23
Deskripsi dari urutan aksi-aksi yang ditampilkan sistem yang Use case menghasilkan suatu hasil yang terukur bagi suatu aktor Interaksi aturan-aturan dan elemen lain yang bekerja sama Collaboration untuk menyediakan prilaku yang lebih besar dari jumlah dan elemen-elemennya (sinergi). Elemen fisik yang eksis saat aplikasi dijalankan dan Note mencerminkan suatu sumber daya komputasi
8
9
10
Sumber : Sugiarti, Yuni ; 2013 : 42
II.5.3. Class diagram Diagram kelas atau class diagram menggambarkan struktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. 1. Atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas 2. Atribut mendeskripsikan properti dengan sebaris teks didalam kotak kelas tersebut. 3. Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas. Diagram kelas mendeskripsikan jenis-jenis objek dalam sistem dan berbegai hubungan statis yang terdapat di antara mereka. Diagram kelas juga meunjukkan properti dari operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubungan-hubungan objek tersebut. Diagram kelas menggambarkan struktur dan deskripsi class, package, dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain.
24
Kelas memiliki tiga area pokok : 1. Nama 2. Atribut 3. Operasi Contoh kelas manusia : 1. Atribut : nama, usia, tanggal lahir 2. Method / operasi : berjalan, makan , minum
Tabel II.2. Simbol Class diagram NO 1
2
3
GAMBAR
NAMA
KETERANGAN Hubungan dimana objek anak (descendent) berbagi perilaku dan Generalization struktur data dari objek yang ada di atasnya objek induk (ancestor). Upaya untuk menghindari asosiasi Nary dengan lebih dari 2 objek. Association Class
4
Collaboration
5
Realization
6
Dependency
7
Association
Himpunan dari objek-objek yang berbagi atribut serta operasi yang sama. Deskripsi dari urutan aksi-aksi yang ditampilkan sistem yang menghasilkan suatu hasil yang terukur bagi suatu aktor Operasi yang benar-benar dilakukan oleh suatu objek. Hubungan dimana perubahan yang terjadi pada suatu elemen mandiri (independent) akan mempegaruhi elemen yang bergantung padanya elemen yang tidak mandiri Apa yang menghubungkan antara objek satu dengan objek lainnya
25
Interface 8
Sama dengan konsep interface dalam pemrograman berorientasi objek
Sumber : Sugiarti, Yuni ; 2013 : 59 II.5.4. Sequence Diagram Diagram sekuence menggambarkan kelakuan / prilaku objek padause case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan di terima antar objek. Oleh karena itu untuk menggambar diagram sekuences maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Tabel II.3 Simbol Sequence Diagram NO
GAMBAR
1
NAMA LifeLine
2
Message
KETERANGAN Objek entity, antarmuka yang saling berinteraksi.
Spesifikasi dari komunikasi antar objek yang memuat informasiinformasi tentang aktifitas yang terjadi
Spesifikasi dari komunikasi antar objek yang memuat informasiMessage informasi tentang aktifitas yang terjadi Sumber : Sugiarti, Yuni ; 2013
3
II.5.5. Activity Diagram Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Yang perlu di perhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas
26
sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. Diagram aktivitas mendukung perilaku paralel. Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang di rancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, dimana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. (Sugiarti, Yuni ; 2013 : 41-75). Tabel II.4. Simbol Activity Diagram NO
GAMBAR
NAMA
1
Actifity
2
Action
KETERANGAN Memperlihatkan bagaimana masingmasing kelas antarmuka saling berinteraksi satu sama lain State dari sistem yang mencerminkan eksekusi dari suatu aksi
3
Initial Node Bagaimana objek dibentuk atau diawali.
4
Actifity Final Node
Bagaimana dihancurkan
5
Fork Node
Satu aliran yang pada tahap tertentu berubah menjadi beberapa aliran
Sumber : Sugiarti, Yuni ; 2013
objek
dibentuk
dan
27
II.6. Visual Studio.NET 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, dimana di dalamnya beberapa jenis IDE pemrograman seperti Visual Basic, Visual C++, Visual Web Developer, Visual C#, dan Visual F#. Semua IDE pemrograman tersebut sudah mendukung penuh implementasi .Net Framework 4.0 yang merupakan pengembangan dari .Net Framework 3.5. adapun database standar yang disertakan adalah Microsoft SQL Server 2008 express. Visual Basic 2010 merupakan versi perbaikan dan pengembangan dari versi pendahulunya, yaitu Visual Basic 2008. Beberapa pengembangan yang terdapat didalamnya antara lain dukungan terhadap library terbaru dari Microsoft, yaitu .Net Framework 4.0, dukungan terhadap pengembangan aplikasi berbasis SilverLight, dukungan terhadap aplikasi berbasis Cloud Computing, serta perluasan dukungan terhadap database-database, baik standalone maupun database server.
Gambar II.1 Microsoft Visual Basic 2010 Sumber : wahana komputer ; 2010 : 3
28
Bahasa Visual Basic 2010 sendiri awalnya berasal dari bahasa pemrograman yang sangat populer dikalangan programmer komputer, yaitu bahasa BASIC, yang oleh Microsoft di adaptasi dalam program Microsoft Quick BASIC. Seiring berkembangnya teknologi komputasi dan desain, Microsoft mengeluarkan produk yang dinamakan Microsoft Visual Studio dengan Visual Basic di dalamnya. Saat ini versi Microsoft Visual studio yang beredar adalah versi 10 yang populer dengan nama Microsoft Visual Studio 2010, yang di dalamnya termasuk Microsoft Visual Basic 2010. (wahana komputer ; 2010 : 2-3)
II.7. 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 pengolahan data menyusul pendahulunya seperti IBM dan Oracle. SQL Server 2008 dibuat pada saat kemajuan dalam bidang hardware sedemikian pesat. (wahana komputer ; 2010)
II.7.1. Database Database atau basis data adalah sekumpulan data yang
memiliki
hubungan secara logika dan di atur dengan susunan tertentu serta disimpan dalam media penyimpanan komputer. Data itu sendiri adalah representasi dari semua fakta yang ada pada dunia nyata. Dalam database ada sebutan-sebutan untuk satuan data yaitu :
29
1. Karakter, ini adalah satuan
data terkecil. Data terdiri atas susunan
karakter yang pada akhirnya mewakili data yang memiliki arti dari sebuah fakta. 2. Field, adalah sekumpulan dari karakter yang mewakili fakta tertentu misalnya seperti nama siswa, tanggal lahir, dan lain-lain. 3. Record, adalah sekumpulan dari field. 4. Tabel, adalah sekumpulan dari record-record yang memiliki kesamaan entity dalam dunia nyata. Kumpulan dari tabel adalah database, wujud fisik sebuah database dalam komputer adalah sebuah file. 5. File, adalah bentuk fisik dari penyimpanan data.
II.7.2. Sistem Database Relasional SQL Sever 2008 termasuk salah satu mesin database relasional. Ide tentang sistem database relasional pertama kali dicetuskan oleh seorang yang bernama E.F.Codd lewat sebuah artikel yang berjudul “A Relational Model of Data for Large Shared Data Banks“. Artikel tersebut ditulis tahun 1970. Sistem database relational berdasarkan pada metode matematika. Sistem ini menggantikan metode lama yang berdasarkan network dan hirarki. Metode relasional ini bekerja berdasarkan keterkaitan antartabel.
II.7.3. Entity Relationship Diagram Pada dasarnya ERD adalah sebuah diagram yang secara konseptual memetakan hubungan antar penyimpanan. ERD ini digunakan untuk melakukan
30
pemodelan terhadap struktur data dan hubungannya. Penggunaan ERD ini dilakukan untuk mengurangi tingkat kerumitan penyusunan sebuah database yang baik. Entity dapat bearti sebuah obyek yang dapat dibedakan dengan obyek lainnya. Obyek tersebut harus memiliki komponen-komponen data (atribut atau field) yang membuatnya dapat dibedakan dari obyek yang lain. Dalam dunia database entity memiliki atribut yang menjelaskan karakteristik dari entity tersebut. Ada dua macam atribut yang dikenal dalam entity yaitu atribut yang berperan sebagai kunci primer dan atribut deskriptif. Hal ini bearti setiap entity memiliki himpunan yang diperlukan sebuah primary key untuk membedakan anggota-anggota dalam himpunan tersebut. Atribut dapat memiliki sifat-sifat sebagai berikut: 1. Atomic, adalah sifat dari atribut yang menggambarkan bahwa atribut tersebut berisi nilai yang spesifik dan tidak dapat dipecah lagi. Contoh dari sifat atomik adalah field status dari tabel karyawan yang hanya berisi menikah atau single. 2. Multivalued, sifat ini menandakan atribut ini bisa memiliki lebih dari satu nilai untuk tiap entity tertentu. Misalnya adalah field hobi. 3. Composite, atribut yang bersifat komposit adalah atribut yang nilainya adalah gabungan dari beberapa atribut yang bersifat atomik. Contohnya adalah atribut alamat yang dapat dipecah menjadi atribut atomik berupa alamat, kode pos, no telepon, dan kota.
31
II.7.4. Normalisasi Data Normalisasi data adalah proses dimana tabel-tabel pada database dites dalam hal kesalingtergantungan di antara field-field pada sebuah tabel. Misalnya jika pada sebuah tabel terdapat ketergantungan terhadap lebih dari satu field dalam tabel tersebut, maka tabel tersebut harus dipecah menjadi banyak tabel. Banyaknya tabel pecahannya bergantung pada seberapa banyak ketergantungannya. Tiap tabel hanya boleh memiliki sebuah field kunci yang menjadi ketergantungan dari field lainnya dalam tabel tersebut. Pada proses normalisasi data, aturan yang dijadikan acuan adalah metode ketergantungan fungsional. Teorinya adalah bahwa tiap kolom dalam sebuah tabel selalu memiliki hubungan yang unik dengan sebuah kolom kunci. Misalnya pada sebuah tabel data_siswa ada field nomor induk dan field nama siswa serta field tanggal lahir. Maka ketergantungan fungsionalnya dapat dinyatakan sebagai berikut : nmr_induk
nm_siswa dan nmr_induk
Tgl_lahir. Artinya nm_siswa memiliki ketergantungan fungsional terhadap nmr_induk. Field nm_siswa isinya ditentukan oleh field nmr_induk. Maksud dari semua itu adalah nmr_induk adalah field kunci yang menentukan karena tidak ada nomor induk yang sama pada satu sekolah, jadi field nmr_induk dapat dijadikan patokan untuk mengisi nm_siswa dan field lainnya. (wahana komputer ; 2010 : 2-35).