BAB II TINJAUAN PUSTAKA
II.1.
Sistem Pakar Sistem merupakan kumpulan elemen yang saling berkaitan yang
betanggung jawab memproses masukan (input) sehingga menghasilkan keluaran (output). (Kusrini:2007:11) Langkah pertama dalam menyelesaikan setiap masalah adalah dengan mendefinisikan terlebih dahulu ruang lingkup permasalahan tersebut atau domain untuk permasalahan yang akan diselesaikan. Hal ini juga berlaku untuk pemrograman Artificial Intelligent (AI). Professor Edward Feingenbeum dari Universitas Stanford yang merupakan seorang pelopor awal dari teknologi sistem pakar, yang mendefinisikan sistem pakar sebagai “…suatu program computer cerdas yang menggunakan knowledge (pengetahuan) dan prosedur inferensi untuk menyelesaikan masalah yang cukup sulit sehingga membutuhkan seorang ahli untuk menyelesaikannya.” Suatu Sistem Pakar adalah suatu sistem komputer yang menyamai (emulates) kemampuan pengambilan keputusan dari seorang pakar. Istilah emulates berarti bahwa sistem pakar diharapkan dapat bekerja dalam semua hal seperti seorang pakar. (Arhami:2005:2) Sistem Pakar adalah salah satu cabang dari AI yang membuat pengunaan secara luas knowledge yang khusus untuk penyelesaian masalah tingkat manusia yang pakar. Seorang pakar adalah orang yang mempunyai keahlian dalam bidang
11
12
tertentu, yaitu pakar yang mempunyai knowledge atau kemampuan khusus yang orang lain tidak mengetahui atau mampu dalam bidang yang dimilikinya. Knowledge dalam sistem pakar mungkin saja seorang ahli, atau knowledge yang umumnya terdapat dalam buku, majalah dan orang yang mempunyai pengetahuan tentang suatu bidang. Istilah sistem pakar, sistem knowledge-base, atau sistem pakar knowledge-base, sering digunakan dengan arti yang sama. Kebanyakan orang menggunkan istilah sistem pakr karena lebih singkat, bahkan walau belum benar-benar pakar, hanya menggunakan knowledge secara umum.
Fakta
Knowledge-Base
USER Keahlian Mesin Inferensi
Sistem Pakar Gambar. II.1 Konsep Dasar Fungsi Sistem Pakar Sumber: (Arhami:2005:4) Gambar II.1 menggambarkan konsep dasar suatu sistem pakar knowledgebase. Pengguna menyampaikan fakta atau informasi untuk sistem pakar dan kemudian menerima saran dari pakar atau jawaban ahlinya. Bagian dalam sistem pakar terdiri dari 2 komponen utama, yaitu knowledge-base yang berisi knowledge dan mesin inferensi yang menggambarkan kesimpulan. Kesimpulan tersebut merupakan respons dari sistem pakar atas permintaan pengguna.
13
II.1.1. Keuntungan Sistem Pakar Ada banyak keuntungan bila menggunakan sistem pakar, di antaranya adalah (Arhami:2005:10): 1. Menjadikan pengetahuan dan nasihat lebih mudah didapat. 2. Meningkatkan output dan produktivitas. 3. Menyimpan kemampuan dan keahlian pakar. 4. Meningkatkan penyelesaian masalah menerusi panduan pakar, penerangan, sistem pakar khas. 5. Meningkatkan reliabilitas. 6. Memberikan respons (jawaban) yang cepat. 7. Merupakan panduan yang inteligence (cerdas). 8. Dapat bekerja dengan informasi yang kurang lengkap dan mengandung ketidakpastian. 9. Intelligence database (basis data cerdas), bahwa sistem pakar dapat digunakan untuk mengakses basis data dengan cara cerdas. II.1.2. Kelemahan Sistem Pakar Selain keuntungan di atas, sistem pakar seperti halanya sistem lainnya, juga memiliki kelemahan di antaranya adalah (Arhami:2005:10) : 1. Masalah dalam mendapatkan pengetahuan di mana pengetahuan tidak selalu bisa didapatkan dengan mudah, karena kadangkala pakar dari masalah yang kita buat tidak ada, dan kalaupun ada kadang-kadang pendekatan yang dimiliki oleh pakar berbeda-beda.
14
2. Untuk membuat suatu sistem pakar yang benar-benar berkualitas tingi sangatlah sulit dan memerlukan biaya yang sangat besar untuk pengembangan dan pemeliharaannya. 3. Boleh jadi sistem tak dapat membuat keputusan. 4. Sistem pakar tidaklah 100% menguntungkan, walaupun seorang tetap tidak sempurna atau tidak selalu benar. Oleh karena itu perlu diuji ulang secara teliti sebelum digunakan. Dalam hal ini peran manusia tetap merupakan faktor dominan. II.1.3. Konsep Umum Sistem Pakar Pengetahuan dari suatu sistem pakar mungkin dapat dipresentasikan dalam sejumlah cara. Salah satu metode yang paling umum untuk merepresentasikan pengetahuan adalah dalam bentuk tipe aturan (rule) IF...THEN (jika...maka). Walaupun cara di atas sangat sederhana, namun banyak hal ang berarti dalam membangun sistem pakar dengan mengekspresikan pengetahuan pakar dalam bentuk aturan di atas. (Arhami:2005:11) II.1.4. Struktur Sistem Pakar Sistem pakar disusun oleh dua bagian utama, yaitu lingkunan pengembangan
(development
environment)
dan
lingkungan
konsultasi
(consultation environment) (Turban, 1995). Lingkungan pengembangan sistem pakar digunakan untuk memasukkan pengetahuan pakar ke dalam lingkungan sistem pakar, sedangkan lingkungan konsulatasi digunakan oleh pengguna yang bukan pakar guna memperoleh pengetahuan pakar. Komponen-komponen sistem pakar dalam kedua bagian tersebut dapat dilihat di bawah ini. (Arhami:2005:14)
15
LINGKUNGAN PENGEMBANGAN
LINGKUNGAN KONSULTASI Pemakai Fakta tentang Kejadian tertentu
Basis Pengetahuan : fakta dan aturan
Antar Muka
Knowledge engineer
Fasilitas Penjelasan
Akuisisi Pengetahuan
Mesin Inferensi Aksi yang direkomendasikan
Pakar Workplace
Perbaikan Pengetahuan
Gambar II.2 Arsitektur Sistem Pakar Sumber : (Arhami:2005:14) Komponen-komponen yang terdapat dalam sistem pakar adalah sebagai berikut : II.1.4.1. Antarmuka Pengguna (User Interface) User interface merupakan mekanisme yang digunakan oleh pengguna dan sistem pakar untuk berkomunikasi. Antarmuka menerima informasi dari pemakai dan mengubahnya ke dalam bentuk yang dapat diterima oleh sistem. Selain itu antarmuka menerima informasi dari sistem dan menyajikannya ke dalam bentuk yang dapat dimengerti oleh pemakai. Menurut McLeod (1995),
16
pada bagian ini terjadi dialog antara program dan pemakai, yang memungkinkan sistem pakar menerima intruksi dan informasi (input) dari pemakai, juga memberikan informasi (output) kepada pemakai.(Arhami:2005:14) II.1.4.2. Basis Pengetahuan Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi dan penyelesaian masalah. Komponen sistem pakar ini disusun atas dua elemen dasar, yaitu fakta dan aturan. Fakta merupakan informasi tentang obyek dalam area permasalahan tertentu, sedang aturan merupakan informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui. (Arhami:2005:15) Dalam studi kasus pada sistem yang berbasis pengetahuan terdapat beberapa karakteristik yang dibangun untuk membantu kita dalam membentuk serangkaian prinsip-prinsip arsitekturnya. Prinsip tersebut meliputi : a. Pengetahuan merupakan kunci kekuatan sistem pakar. b. Pengetahuan sering tidak pasti dan tidak lengkap. c. Pengetahuan sering miskin spesifikasi. d. Amatir menjadi ahli secara bertahap. e. Sistem pakar harus fleksibel. f. Sistem pakar harus transparan. II.1.4.3. Akuisisi Pengetahaun (Knowledge Acquisition) Akuisisi pengetahuan adalah akumulasi, transfer dan transformasi keahlian dalam menyelesaikan masalah dari sumber pengetahuan ke dalam program komputer. Dalam tahap ini knowledge engineer berusaha menyerap
17
pengetahuan untuk selanjutnya ditransfer ke dalam basis pengetahuan. Pengetahuan diperoleh dari pakar, dilengkapi dengan buku, basis data, laporan penelitian dan pengalaman pemakai. (Arhami:2005:16) II.1.4.4. Mesin Inferensi Komponen ini mengandung mekanisme pola pikir dan penalaran yang digunakan oleh pakar dalam menyelasikan suatu masalah. Mesin inferensi adalah program komputer yang memberikan metodologi untuk penalaran tentang informasi yang ada dalam basis pengetahuan dan dalam workplace dan untuk memformulasikan kesimpulan. (Arhami:2005:19) II.1.4.5. Workplace Workplace merupakan area dari sekumpulan memori kerja (working memory). Workplace digunakan untuk merekam hasil-hasil antara dan kesimpulan yang dicapai. (Arhami:2005:22) II.1.4.6. Fasilitas Penjelasan Fasilitas
penjelasan
adalah
komponen
tambahan
yang
akan
meningkatkan kemampuan sistem pakar. Komponen ini menggambarkan penalaran sistem kepada pemakai. (Arhami:2005:22) II.1.4.7. Perbaikan Pengetahuan Pakar memiliki kemampuan untuk menganalisis dan meningkatkan kinerjanya serta kemampuan tersebut adalah penting dalam pembelajaran terkomputerisasi, sehingga program akan mampu menganalisis penyebab kesuksesan dan kegagalan yang akan dialaminya. (Arhami:2005:22)
18
II.1.5. Inferensi Inferensi merupakan proses untuk menghasilkan informasi dari fakta yang diketahui atau diasumsikan. Inferensi adalah konklusi logis (logical conclusion) atau implikasi berdasarkan informasi yang tersedia.(Kusrini:2006:35) Ada dua metode inferensi yang penting dalam system pakar, yaitu : 1. Runut Maju (Forward Chaining) Runut maju berarti menggunakan himpunan aturan kondisi-aksi. Dalam metode ini, data digunakan untuk menetukan aturan mana yang akan dijalankan, kemudian aturan tersebut dijalankan. Mungkin proses menambahkan data ke memori kerja. DATA A =1 B =2
ATURAN Jika A = 1 dan B = 2 Maka C = 3 Jika C =3 MAKA D = 4
Kesimpulan D=4
Gambar II.3. Runut Maju (Forward Chaining) 2. Runut Balik (Backward Chaining) Runut Balik merupakan metode penalaran kebalikan dari runut maju. Dalam runut balik, penalaran dimulai dengan tujuan merunut balik ke jalur yang akan mengarahkan ke tujuan tersebut. SUB TUJUAN A =1 B =2
ATURAN Jika A = 1 dan B = 2 Maka C = 3 Jika C =3 MAKA D = 4
Gambar II.4. Runut Balik (Backward Chaining) Sumber : (Kusrini:2006:36)
TUJUAN
D=4
19
II.2.
Osteoarthritis Pada usia lanjut rentan terhadap penyakit sendi, lebih dari 100 jenis
penyakit sendi, yang dikenal dengan, Osteoarthritis (OA) merupakan kelainan sendi yang paling sering ditemukan. Penyakit ini bersifat progesif lambat, umumnya terjadi pada usia lanjut, walaupun usia bukan satu-satunya faktor resiko. OA menyerang sendi-sendi penopang tubuh seperti lutut, pinggul, bahu, maupun tulang belakang. Ada beberapa faktor resiko yang diketahui berhubungan erat dengan terjadinya OA sendi lutut, yakni usia, jenis kelamin, pekerjaan, obesitas, genetik, suku bangsa, dan faktor lain. Gambaran klinik osteoarthritis pada umumnya penderita OA mengatakan bahwa keluhan-keluhan sudah berlangsung lama, berkembang secara perlahan-lahan. Gangguan gerak dan fungsi pada OA sendi lutut dapat terjadi seperti: nyeri saat berjalan (antalgic gait), kaku sendi setelah duduk lama atau bangun tidur, nyeri bila lutut diluruskan penuh, atau ditekuk penuh, pembesaran sendi dan lain sebagainya. Osteoarthritis (OA) adalah gangguan yang terjadi pada satu atau lebih sendi lutut, awalnya oleh adanya gangguan lokal pada kartilago dan bersifat progesif degeneratif, remodeling pada tulang subkondral dan inflamasi sekunder membran sinovial. OA menyerang sendi-sendi penopang berat badan. Sendi yang paling banyak mengalami osteoarthritis adalah sendi lutut. Pada usia diatas 60 tahun hampir 80% osteoarthritis, mengenai sendi lutut. Dan gejala klinik yang paling menonjol adalah nyeri. (Jurnal Fisioterafi;2012:23)
20
II.3.
PHP dan MySQL
II.3.1. PHP PHP (PHP Hypertext Preprocessor) adalah bahasa pemrograman yang berjalan dalam sebuah webserver dan berfungsi sebagai pengolah data pada sebuah server. Dengan menggunakan program PHP, sebuah website akan lebih interaktif dan dinamis. (MADCOMS;2011:11) PHP merupakan bahasa pemrograman pembuatan web yang ditemukan oleh Rasmus Lerdoff. PHP memberikan kemampuan lebih daripada HTML dan banyak digunakan karena fitur-fiturnya yang ringan, opensources. (untuk menggunakannya tidak perlu membayar) dan member banyak dukungan terhadap database(MySQL, PostgerSQL, IBM DB2, dll). (Ali Akbar:2005:21) II.3.2. MySQL MySQL adalah sebuah program database server yang mampu menerima dan mengirimkan datanya dengan sangat cepat, multi user serta menggunakan perintah SQL (Structured Query Language). (Bunafit Nugroho:2005:1) MySQL merupakan sebuah database server yang free, artinya kita bebas menggunakan database ini untuk keperluan pribadi atau usaha tanpa harus membeli atau membayar lisensinya. MySQL pertama kali dirintis oleh seorang programmer database bernama Michael Widenius. Selain sebagai database server, MySQL juga merupakan program yang dapat mengakses suatu database MySQL yang berposisi sebagai server. Pada saat itu berarti program kita berposisi sebagai Clieny. Jadi MySQL adalah sebuah database yang dapat digunakan baik sebagai Client maupun Server.
21
II.4.
Dreamweaver dan Web Macromedia adalah aplikasi standar industri yang digunakan untuk
membuat halaman web. Kemasyhuran Dreamweaver tidak terlepas dari pesatnya kemajuan dunia internet sekarang ini. Internet memungkinkan semua penduduk dunia saling terhubung secara instan melalui computer yang terhubung ke jaringan intrenet. (Ali Akbar:2005:11) Halaman web merupakan salah satu wahana yang digunakan untuk berkomunikasi di dunia internet. Halaman web menjadi terkenal karena halaman web ditulis menggunakan format teks murni (plain text) yang konsekuensi ukurannya akan sangat kecil sehingga sangat efisien digunakan di jaringan internet. Halaman web ditulis menggunakan format dasar HTML yang singkatannya adalah Hypertext MarkUp Language. Selain HTML, masih ada beberapa bahasa lain seperti PHP, ASPX, CGI, JSP dan lain sebagainya.
II.5. Unified Modelling Language (UML) Unified Modelling Language (UML) adalah salah satu alat bantu yang sangat handal di dunia pengembangan sistem yang berorientasi obyek. Hal ini disebabkan karena UML menyediakan bahasa pemodelan visual
yang
memungkinkan bagi pengembangan sistem untuk membuat cetak biru atas visi mereka dalam bentuk uang baku, mudah dimengerti serta dilengkapi dengan mekanisme yang efektif untuk berbagi (sharing) dan mengkomunikasikan rancangan mereka dengan yang lain. (Munawar:2005:1) UML merupakan kesatuan dari bahasa pemodelan yang dikembangkan oleh Booch, Object Modeling Technique (OMT) dan Object Oriented Software
22
Engineering (OOSE). Metode Booch dari Grady Booch sangat terkenal dengan nama metode Design Object Oriented. Metode ini menjadikan proses analisis dan design ke dalam empat tahapan iterative, yaitu: identifikasi kelas-kelas danobyekobyek, identifikasi semantik dari hubungan obyekb dan kelas tersebut, perinciaan interface dan implementasi. Keunggulan metode Booch adalah pada detil dan kayanya dengan notasi dan elemen. Beberapa pemodelan pada UML di antaranya adalah sebagai berikut : II.5.1. Use Case Diagram Use Case adalah deskripsi fungsi dari sebuah sistem dari perspektif pengguna. Use case bekerja dengan cara mendeskripsikan tipikal interaksi antara user (pengguna) sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Urutan langkah-langkah yang menerangkan antara pengguna dan sistem disebut scenario. Setiap scenario mendeskripsikan urutan kejadian. Setiap urutan diinisialisasikan oleh orang, sistem yang lain, perangkat keras atau urutan waktu. Dengan demikian secar singkat bisa dikatakan use case adalah serangkain scenario yang digabungkan bersama-sama oleh tujuan umum pengguna.(Munawar:2005:63) Dalam konteks UML, tahap konseptualisasi dilakukan dengan pembuatan use case diagram yang sesungguhnya merupakan deskripsi peringkat tinggi bagaimana perangkat lunak (aplikasi) akan digunakan oleh penggunanya. Selanjutnya, use case diagram tidak hanya sangat penting pada saat analisis, tetapi juga sangat penting dalam tahap perancangan (design), untuk mencari kelas-kelas yang terlibat alam aplikasi, dan untuk melakukan pengujian (testing).
23
Saat akan mengembangkan use case diagram, hal yang pertama kali harus dilakukan adalah mengenali actor untuk sistem yang sedang dikembangkan. Dalam hal ini, ada beberapa karakteristik untuk para actor, yaitu actor yang ada di luar sistem yang sedang dikembangkan dan actor yang berinteraksi dengan sistem yang sedang dikembangkan.(Nugroho:2009:7) Pembukaan Rekening
Nasabah (Aktor)
Penabungan
Penarikan
Transfer AntarRekening
Penutupan Rekening
Gambar II.3 Contoh Use Case Diagram Sumber : (Adi Nugroho:2009:8) II.5.2. Sequence Diagram Sequence diagram digunakan untuk menggambarkan perilaku pada sebuah skenario. Diagram ini menunjukkan sejumlah contoh obyek dan message (pesan) yang diletakkan diantara obyek-obyek ini didalam use case. (Munawar:2005:87) Komponen sequence diagram terdiri atas obyek yang dituliskan dengan kotak segiempat bernama. Message diwakili oleh garis dengan tanda panah dan waktu yang ditunjukkan dengan progress vertical.
24
Sequence diagram juga menampilkan interaksi anatar suatu kelas dengan kelas yang lainnya, bagaimana suatu message (pesan) dikirimkan dari suatu kelas ke kelas yang lainnya, dengan penekanan lebih pada urutan kejadian menurut waktu. Keunggulan dari Sequence diagram memperlihatkan dengan baik urutan interaksi yang terjadi antara suatu kelas dengan kelas lainnya, tetapi mengabaikan pengorganisasiannya.(Adi Nugroho;2009:100) Rekening
ATM
Slip
Nasabah
Cek Saldo
Ambil Saldo
Tampilkan Saldo
Penarikan Uang
Berikan Uang
Cetak Slip
Gambar II.6 Contoh Sequence Diagram Sumber : (Adi Nugroho:2009:25) II.5.3. Class Diagram Class didefenisikan sebagai kumpulan/himpunan objek yang memiliki kesamaan dalam atribut/properti, perilaku (operasi), serta cara berhubungan dengan objek lain. (Adi Nugroho:2009:18)
25
Selain itu, kita juga mendefenisikan objek sebagai konsep, abstraksi dari sesuatu dengan batas nyata, sehingga kita dapat menggambarkan secara sistematis. Pemahaman objek memiliki dua fungsi, yaitu : a. Memudahkan untuk mempelajari secara seksama hal-hal yang ada di dunia nyata. b. Menyediakan suatu dasar yang kuat dalam implementasi ke dalam sistem terkomputerisasi. (Adi Nugroho:2009:17) Nasabah
Mesin ATM
No_Nasabah Nama No_Kartu PIN .....
No_Mesin Lokasi ....
Mengakses
Masukkan Kartu Masukkan_Jenis_Transaksi() ..... Ambil Kartu .....
Tampilkan_Layar_Utama() Permintaan_PIN() Permintaan_Jenis_Transaksi() ... Mencetak_Slip() ...
Gambar II.4 Contoh Class Diagram Sumber : (Adi Nugroho:2009:39) II.5.4. Collaboration Diagram Colaboration Diagram adalah perluasan dari obyek diagram. (Obyek diagram menunjukkan obyek-obyek dan hubungannya satu dengan yang lain). Collaboration diagram menunjukkan message-message obyek yang dikirimkan satu sama lain.(Munawar:2005:101) Untuk menunjukkan sebuah pesan, buatlah tanda panah didekat garis asosiasi diantara 2 obyek. Arah panah menunjukkan obyek yang menerima pesan. Label di dekat panah menunjukkan pesannya apa. Tipikal message meminta
26
kepada obyek yang menerimanya untuk menjalankan salah satu operationnya. Sepasang tanda kurung digunakan untuk mengakhiri message. Jika ada parameter bisa diletakkan diantara tanda kurung. Collaboration diagram memungkinkan kita untuk melihat pengorganisasian kelas-kelas yang saling berinteraksi, namun untuk kelas-kelas yang jumlahnya banyak, diagram ini sulit untuk dibaca.(Adi Nugroho:2009:101) Nasabah ATM
3. Tampilkan saldo
2. Ambil Saldo
4. Penarikan Uang 5. Berikan Uang
Rekening Slip
5. Cetak Slip
Gambar II.8 Contoh Collaboration Diagram Sumber : (Adi Nugroho:2009:101) II.5.5. Activity Diagram Activity Diagram adalah teknik untuk mendeskripsikan logika procedural, proses bisnis dan aliran kerja dalam banyak kasus. Activity diagram mempunyai peran seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung prilaku paralel sedangkan flowchart tidak bisa. (Munawar:2005:109).
27
Nasabah
Mesin ATM
Bank
Nasabah Memasukkan Kartu ATM Mesin ATM Menanyakan PIN Nasabah Memasukkan PIN Pemeriksaan PIN
Mesin ATM menanyakan Jumlah
Nasabah Memasukkan Jumlah Mesin ATM Memeriksa Saldo
Mesin ATM Mengurangi Saldo Mesin ATM Mengeluarkan Uang Tunai
Nasabah Mengeluarkan Uang Tunai
Mesin ATM mengeluarkan Kartu ATM
Gambar II.5 Contoh Activity Diagram Sumber : (Adi Nugroho:2009:11)
28
II.6.
Normalisasi Normalisasi adalah suatu proses yang digunkan untuk menentukan
pengelompokan atribut-atribut dalam sebuah relsi sehingga diperoleh relsi yang berstruktur baik.(Abdul Kadir:2009:116) Dalam hal ini yang dimaksud dengan relasi yang berstruktur baik adalah yang memenuhi dua kondisi berikut : a) Mengandung redudansi sedikit kemungkinan. b) Memungkinkan baris-baris dalam relasi disisipkan, dimodifikasi dan dihapus tanpa menimbulkan kesalahan atau ketidakkonsistenan. II.6.1. Bentuk normal Pertama (1NF / First normal form) Yang disebut dengan bentuk normal pertama (1NF) adalah suatu keadaan yang membuat setiap perpotongan baris dan kolom dalam relasi hanya berisi satu nilai. (Abdul Kadir:2009:130) II.6.2. Bentuk Normal Kedua (2NF / Second normal form) Bentuk normal kedua adalah suatu bentuk yang menyaratkan bahwa relasi harus sudah berada dalam bentuk normal pertama dan tidak mengandung dependensi parsial. (Abdul Kadir:2009:132) II.6.3. Bentuk Normal Ketiga (3NF / Third normal form) Bentuk normal ketiga adalah suatu keadaan yang menyaratkan bahwa relasi harus sudah berada dalam bentuk normal kedua dan tidak mengandung dependensi transistif. (Abdul Kadir:2009:136)
29
II.6.4. Bentuk Normal Boyce-Codd (BCNF / Boyce-Codd normal form) BCNF (Boyce-Codd Normal Form) atau bentuk normal Boyce-Codd adalah suatu keadaan yang menyaratkan bahwa setiap determinan (penentu) dalam suatu relasi berkedudukan sebagai kunci kandidat. (Abdul Kadir:2009:138) II.7.
Entity Relational Diagram (ERD) Model E-R adalah suatu model yang digunakan untuk menggambarkan
data dalam bentuk entitas, atribut dan hubungan antar entitas. Huruf E sendiri menyatakan entitas dan R menyatakan hubungan (dari kata relationship). Model ini dinyatakan dalam bentuk diagram. Itulah sebabnya model E-R acapkali juga disebut sebagai diagram E-R. perlu diketahui bahwa model seperti ini tidak mencerminkan bentuk fisik yang nantinya akan disimpan dalam database, melainkan hanya bersifat konseptual. Itulah sebabnya model E-R tidak bergantung pada produk DBMS yang akan digunakan. Contoh sebuah model E-R ditunjukkan pada gambar di bawah ini :
Mahasiswa
Membimbing
Mengambil
Dosen
Gambar II.10 Contoh model E-R Sumber: (Abdul kadir:2009:30)
MataKuliah
Mengajar
30
Secara garis besar model E-R di atas menerangkan hubungan antara : a) Mahasiswa dan matajukiah yang diambil, b) Dosen dan mahasiswa yang dibimbing, c) Dosen dan matakuliah yang diajar. Dalam hal ini MAHASISWA, MATAKULIAH, dan DOSEN menyatakan tipe entitas dan Mengambil, Membimbing, dan Mengajar menyatakan hubungan. Sekedar untuk diketahui, model E-R melibatkan sejumlah notasi. Beberapa notasi dasar dalam model E-R ditunjukkan pada tabel II.1. Tabel II.1 Sejumlah notasi pada model E-R Simbol
Kardinalitas hubungan
Entitas
Attribute
Relasi
Sumber: (Abdul Kadir:2009:31) II.8.
Kamus Data Kamus data (KD) atau data dictionary (DD) atau disebut juga dengan
istilah systems data dictionary adalah catalog fakta tentang data dan kebutuhankebutuhan informasi dari suatu sistem informasi. Dengan menggunakan KD, analisis sistem dapat mendefinisikan data yang mengalir di sistem dengan
31
lengkap. KD dibuat pada tahap analisis sistem dan digunakan baik pada tahap analisis maupun pada tahap perancangan sistem. Pada tahap analisis, KD dapat digunakan sebagai alat komunikasi anatara analisis sistem dengan pemakai sistem tentang data yang mengalir di sistem, yaitu tentang data yang masuk ke sistem dan tentang informasi yang dibutuhkan oleh pemakai sistem. Pada tahap perancangan sistem, KD digunakan untuk merancang input, merancang laporan-laporan dan database. KD dibuat berdasarkan arus data yang di DAD. Arus data di DAD sifatnya adalah global, hanya ditunjukkan nama arus datanya saja. (Jogiyanto:2005:725)