Narotama Collection http://ejournal.narotama.ac.id
TUGAS AKHIR SISTEM PAKAR UNTUK MENGATASI KERUSAKAN MESIN SEPEDA MOTOR
Oleh : LUKMAN KHAKIM NIM : 04102017
PROGRAM STUDI SISTEM KOMPUTER FAKULTAS ILMU KOMPUTER UNIVERSITAS NAROTAMA SURABAYA 2006 1
Narotama Collection http://ejournal.narotama.ac.id
TUGAS AKHIR SISTEM PAKAR UNTUK MENGATASI KERUSAKAN MESIN SEPEDA MOTOR
Oleh : LUKMAN KHAKIM NIM : 04102017
Diajukan untuk memenuhi salah satu syarat untuk memperoleh gelar Sarjana Komputer (S.Kom) pada Program Studi Sistem Komputer Fakultas Ilmu Komputer Universitas Narotama Surabaya
Dosen Pembimbing
Ir. Tony Hartono Bagio, MT, MM
2
Narotama Collection http://ejournal.narotama.ac.id
SYSTEM OF EXPERT TO OVERCOME DAMAGE OF MOTORBIKE MACHINE Oleh : Lukman Khakim, Dosen Pembimbing : Ir. Tony Hartono Bagio, MT, MM.
ABSTRACT Artificial Intelligence ( AI) represent new breakthrough in computer science expanding very fast. Expert system is one of them is very interesting to be developed, like in the field of workshop of about motorbike machine damage needing repair consultancy quickly and accurate. Along of the the problems is hence needed by an system which can overcome above problem. Where later applying from this expert system will be able to very assistive mechanic, what is pursuant to knowledge from all expert. Started from kinds of damage, damage type, and also distinguish damage of motorbike machine, cap it all diagnosa and solution to handle damage machine of the motorbike. The system is implemented on Microsoft Windos using Visual Basic 6.0. Keyword : system of Expert to overcome damage of motorbike machine.
3
Narotama Collection http://ejournal.narotama.ac.id
SISTEM PAKAR UNTUK MENGATASI KERUSAKAN MESIN SEPEDA MOTOR Oleh : Lukman Khakim, Dosen Pembimbing : Ir. Tony Hartono Bagio, MT, MM. ABSTRAKSI Dalam ilmu komputer, banyak ahli yang berkonsentrasi pada pengembangan kecerdasan buatan atau Artificial Intelligence (AI). AI adalah suatu studi khusus di mana tujuannya adalah membuat komputer berfikir dan bertindak seperti manusia. Banyak implementasi AI dalam bidang komputer, misalnya Decision Support System (Sistem Penunjang Keputusan), Robotic, Natural Language (Bahasa Alami), Neural Network (Jaringan Saraf), dan lain-lain. Contoh bidang lain pengembangan kecerdasan buatan adalah sistem pakar yang menggabungkan pengetahuan dan penelusuran data untuk memecahkan masalah yang secara normal memerlukan keahlian manusia. Tujuan pengembangan sistem pakar sebenarnya bukan untuk menggantikan peran manusia, akan tetapi untuk mensubtitusikan pengetahuan manusia ke dalam bentuk sistem, sehingga dapat digunakan oleh orang banyak. Oleh karena permasalahan tersebut maka diperlukan suatu sistem yang dapat mengatasi persoalan diatas. Dimana nantinya hasil dari sistem pakar ini akan dapat sangat membantu mekanik, Hanya pakar tertentu saja yang dapat mengakses sistem ini karena demi menjaga keamanan data yang dimiliki oleh pakar tersebut.
Kata Kunci : Sistem pakar
4
Narotama Collection http://ejournal.narotama.ac.id
BAB I PENDAHULUAN 1.1 LATAR BELAKANG Dalam ilmu komputer, banyak ahli yang berkonsentrasi pada pengembangan kecerdasan buatan atau Artificial Intelligence (AI). AI adalah suatu studi khusus di mana tujuannya adalah membuat komputer berfikir dan bertindak seperti manusia. Banyak implementasi AI dalam bidang komputer, misalnya Decision Support System (Sistem Penunjang Keputusan), Robotic, Natural Language (Bahasa Alami), Neural Network (Jaringan Saraf), dan lain-lain. Contoh bidang lain pengembangan kecerdasan buatan adalah sistem pakar yang menggabungkan pengetahuan dan penelusuran data untuk memecahkan masalah yang secara normal memerlukan keahlian manusia. Tujuan pengembangan sistem pakar sebenarnya bukan untuk menggantikan peran manusia, akan tetapi untuk mensubtitusikan pengetahuan manusia ke dalam bentuk sistem, sehingga dapat digunakan oleh orang banyak. Oleh karena permasalahan tersebut maka diperlukan suatu sistem yang dapat mengatasi persoalan diatas. Dimana nantinya hasil dari sistem pakar ini akan dapat sangat membantu mekanik, Hanya pakar tertentu saja yang dapat mengakses sistem ini karena demi menjaga keamanan data yang dimiliki oleh pakar tersebut. Sistem pakar ini menggunakan database Access dari Ms.Office dan menggunakan bahasa pemprograman visual basic 6.0.
1.2 MAKSUD DAN TUJUAN Adapun maksud dan tujuan yang dapat diperoleh dengan mengembangkan sistem pakar untuk mengatasi kerusakan mesin sepeda motor, adalah sebagai berikut : 1. Masyarakat awam non-pakar (mekanik) dapat memanfaatkan keahlian sistem pakar ini di dalam bidang perawatan dan solusi kerusakan mesin sepeda motor tanpa kehadiran langsung seorang pakar. 2. Meningkatkan produktivitas kerja, yaitu bertambah efisiensi pekerjaan karena dengan sistem pakar ini kerusakan mesin sepeda motor akan lebih mudah diketahui hasil dan solusinya.
5
Narotama Collection http://ejournal.narotama.ac.id
3. Penghematan waktu dalam menyelesaikan masalah kerusakan-kerusakan mesin sepeda motor yang kompleks yang biasanya memakan waktu lama dalam mencari solusinya. 4. Memberikan penyederhanaan solusi untuk kasus-kasus kerusakan mesin sepeda motor yang kompleks dan berulang-ulang. 5. Pengetahuan dari seorang pakar mesin sepeda motor dapat didokumentasikan tanpa ada batas waktu dalam sistem pakar ini.
1.3 MANFAAT Untuk membantu mekanik mesin sepeda motor mewujudkan maksud dan tujuan tersebut, maka tersedia layanan – layanan sebagai berikut : 1. Perancangan Konsep dan pembuatan sistem pakar ini, antara lain : a.
Macam dan jenis kerusakan mesin pada sepeda motor
b.
Penelusuran kerusakan mesin pada sepeda motor sehingga mendapat solusinya.
2. Dalam Menu utama terdapat submenu yang membedakan antara pemakai dan pakar pada waktu login.
1.4 RUANG LINGKUP Agar tidak sampai meluas dan terarah karena itu pembatasan pembahasan dari tugas akhir ini meliputi : 1. Perancangan Konsep sistem pakar sangat sederhana dengan di dukung proses yang disajikan secara lengkap dan akurat dalam bentuk tampilan visual serta instruksiinstruksinya untuk mengatasi kerusakan mesin sepeda motor lebih mudah dipahami bagi para mekanik mesin sepeda motor. 2. Konsultasi dalam sistem pakar ini nantinya user interface karena sesuai dengan kerusakan mesin sepeda motor yang dibuat berdasarkan pengetahuan pakar, mekanik mesin sepeda motor.
6
Narotama Collection http://ejournal.narotama.ac.id
BAB II LANDASAN TEORI 2.1 Pendahuluan Dalam ilmu komputer, banyak ahli yang berkonsentrasi pada pengembangan kecerdasan buatan atau Artificial Intelligence (AI). AI adalah suatu studi khusus di mana tujuannya adalah membuat komputer berfikir dan bertindak seperti manusia. Banyak implementasi AI dalam bidang komputer, misalnya Decision Support System (Sistem Penunjang Keputusan), Robotic, Natural Language (Bahasa Alami), Neural Network (Jaringan Saraf), dan lain-lain. Perkembangan AI merupakan terobosan baru dalam Ilmu komputer. AI pertama kali dikembangkan oleh General Electric yang menggunakan komputer pertama kali dalam dunia bisnis. AI dipopulerkan pertama kali oleh John McCarthy pada tahun 1945, sebagai tema ilmiah dibidang komputer yang diadakan di Dortmouth College. Pada tahun yang sama komputer berbasis AI pertama kali dikembangkan dengan nama Logic Theorist yang melakukan penalaran terbatas untuk teorema kalkulus. Perkembangan ini mendorong para peneliti untuk mengembangkan program lain yang disebut sebagai General Problem Solver (GPS). Program ini bertujuan untuk memecahkan berbagai jenis masalah dan ternyata menjadi tugas yang sangat besar untuk dikembangkan. Setelah GPS, ternyata AI dikembangkan dalam bidang permainan (game) misalnya program catur oleh Shanon (1955) dan Program untuk pengecekan masalah oleh Samuel (1963). Banyak juga ahli yang mengimplementasikan AI dalam bidang bisnis dan matematika. Tahun 1972, Nevell dan Simon memperkenalkan Teori Logika secara konseptual yang kemudian berkembang pesat dan menjadi acuan pengembangan sistem berbasis kecerdasaan buatan lainnya. MYCIN adalah salah satu program yang dibuat oleh Shortlife dengan bahasa pemprograman LISP. MYCIN menyimpan ± 500 basis pengetahuan dan basis aturan untuk mendiagnosis penyakit manusia . program ini juga mengimplementasikan metode penelusuran dan pemecahan masalah, serta MYCIN menjadi acuan penting untuk pengembangan sistem pakar. Secara modern karena didalamnya terintegrasi semua komponen standar yang dibutuhkan oleh sistem pakar sendiri. Contoh bidang lain pengembangan kecerdasan buatan adalah sistem pakar yang menggabungkan pengetahuan dan penelusuran data untuk memecahkan masalah yang secara normal memerlukan keahlian manusia. Tujuan
7
Narotama Collection http://ejournal.narotama.ac.id
pengembangan sistem pakar sebenarnya bukan untuk menggantikan peran manusia, akan tetapi untuk mensubtitusikan pengetahuan manusia ke dalam bentuk sistem, sehingga dapat digunakan oleh orang banyak. 2.2 Pengertian Sistem Pakar Suatu sistem disebut sebagai sistem pakar jika mempunyai ciri dan karakteristik tertentu. Hal ini juga harus di dukung oleh komponen-komponen sistem pakar yang mampu menggambarkan tentang ciri dan karakteristik tersebut. Ada lima komponen penting dalam sistem pakar yaitu akuisisi pengetahuan, basis pengetahuan dan basis aturan, mekanisme inferensi, fasilitas penjelasan program dan antar muka pemakai yang merupakan satu kesatuan yang tidak dapat dipisahkan. Sedangkan fasilitas belajar mandiri merupakan komponen yang
Fakta Dan Aturan
Fasilitas Akuisisi Pengetahuan
Fakta dan Query Fakta dan Aturan
Basis Pengetahuan dan Basis Aturan (DBMS)
Fakta yang Disimpan
Fakta dan
Aturan
Fakta baru
Konsultasi dan Pertimbangan
Mekanisme Inferensi
Fakta yang dikembalikan
Fasilitas belajar mandiri
Gambar 2.1 Struktur Bagan Sistem Pakar 2.3 Komponen-komponen sistem pakar 2.3.1 Fasilitas Akusisi Pengetahuan Fasilitas ini merupakan suatu proses untuk mengumpulkan data-data pengetahuan akan suatu masalah dari pakar. Bahan pengetahuan dapat ditempuh dengan beberapa cara, misalnya
8
Fasilitas Penjelasan Sistem
mendukung sistem pakar sebagai kecerdasan buatan tingkat lanjut.
Narotama Collection http://ejournal.narotama.ac.id
mendapatkan pengetahuan dari buku, jurnal ilmiah, para pakar di bidangnya, laporan, literature, dan seterusnya. Sumber diolah dan diorganisasikan secara terstruktur menjadi basis pengetahuan. Sumber pengetahuan tersebut harus dapat diperoleh dengan kemampuan untuk mengolah data-data tersebut menjadi solusi yang efisien, komunikasi yang baik dan kerjasama tim yang solid. Karena itu semua kemampuan itu menjadi hal yang mutlak diperlukan oleh seorang pengembang sistem. Contoh akuisisi pengetahuan adalah diagnosis kerusakan mesin sepeda motor yang dimulai dengan mengumpulkan data tentang macam-macam kerusakan, penyebab kerusakan, ciri-ciri kerusakan sampai pada solusinya. Data tentang kerusakan mesin ini dapat diperoleh langsung dari pakar dibidangnya. 2.3.2 Basis Pengetahuan dan Basis Aturan Setelah proses akuisisi pengetahuan selesai dilakukan, maka pengetahuan tersebut harus direprensentasikan menjadi basis pengetahuan dan basis aturan yang selanjutnya dikumpulkan, dikodekan, diorganisasikan dan digambarkan dalam bentuk rancangan lain menjadi bentuk yang sistematis. Ada beberapa cara mereprentasikan data menjadi basis pengetahuan, seperti yang dikemukakan oleh Barr dan Feigenbaum (1981), yaitu data dalam bentuk atribut, aturanaturan, jaringan semantic, frame dan logika. Semua bentuk reprentasi data tersebut bertujuan untuk menyederhanakan data sehingga mudah dimengerti dan mengefektifkan proses pengembangan program. 2.3.3 Mekanisme Inferensi Mekanisme inferensi adalah bagian dari sistem pakar yang melakukan penalaran dengan menggunakan isi daftar aturan berdasarkan urutan dan pola tertentu. Selama proses konsultasi antar sistem dan pemakai, mekanisme inferensi menguji aturan satu demi satu sampai kondisi aturan itu benar. Secara umum ada dua teknik utama yang digunakan dalam mekanisme inferensi untuk pengujian aturan , yaitu penalaran maju (fordward reasoning) dan penalaran mundur (backward reasoning). Dalam penalaran maju, aturan-aturan diuji satu demi satu dalam aturan tertentu. Urutan itu mumgkin berupa urutan pemasukan aturan ke dalam basis aturan atau juga urutan lain yang ditentukan oleh pemakai. Saat tiap aturan diuji, sistem pakar akan mengevaluasi apakah
9
Narotama Collection http://ejournal.narotama.ac.id
kondisinya benar atau salah. Jika kondisinya salah, aturan itu tidak disimpan kemudian aturan berikutnya diuji. Sebaliknya kondisinya salah, aturan itu tidak disimpan dan aturan berikutnya diuji. Proses ini akan terulang (iterative) sampai seluruh basis aturan teruji dengan berbagai kondisi. Informasi
Cek dalam basis aturan Cek aturan berikutnya
benar
Simpan aturan tersebut
benar
Cek apakah ada aturan
Cek aturan
salah
berikutnya
yang sesuai
salah
selesai
Gambar 2.2. Penalaran maju Sebagai contoh penalaran maju adalah mengecek kerusakan mesin kendaraan bermotor akan dimulai dengan macam-macam kerusakan mesin yang ditelusuri kemudian dilanjutkan dengan jenis-jenis dari macam kerusakan yang dipilih, dan seterusnya sampai pada diagnosa kerusakan dan hasil akhir kesimpulan kerusakan tersebut. Penalaran maju seperti yang digambarkan diatas sangat baik jika bekerja dengan permasalahan yang dimulai dengan rekaman informasi awal dan ingin dicapai penyelesaian akhir, maka seluruh proses akan dikerjakan secara berurutan maju. Tetapi dalam masalah-
10
Narotama Collection http://ejournal.narotama.ac.id
masalah yang lain penalaran bisa saja dimulai dari hasil akhir yang berupa suatu hipotesis dan akan dicari pembuktiannya. Kasus semacam ini harus diselesaikan dengan penalaran mundur. Sebagai contoh penalaran mundur adalah pengecekan kerusakan mesin yang tidak dimulai dari pengecekan macma-macam kerusakan, tetapi dimulai dengan hipotesis akhir, bahwa tekanan kompresi di dalam silinder mesin terlalu rendah dan ingin dibuktikan bahwa kerusakan tersebut merupakan kerusakan mesin akibat kehilangan daya. Oleh sebab itu penalaran akan dimulai dari hipotesis hingga kemudian sampai pada pembuktiannya. Selain teknik penalaran, diperlukan juga teknik penulusuran data dalam bentuk network atau jaringan yang terdiri atas node-node berbentuk tree atau pohon. Ada 3 (tiga) teknik yang digunakan dalam proses penelusuran data, yaitu Depth First Search, Breadth First Search dan Best First Search. Depth first Search adalah teknik penelusuran data pada node-node secara vertical dan sudah terdefinisikan, misalnya dari kiri ke kanan. Keuntungan pencarian dengan teknik ini adalah bahwa penelusuran masalah dapat digali secara mendalam sampai ditemukannya kepastian solusi yang optimal. Kekurangan teknik penelusuran ini adalah membutuhkan waktu yang sangat lama untuk ruang lingkup masalah yang besar.
Gambar 2.3. Penulusuran data dengan Depth First Search
11
Narotama Collection http://ejournal.narotama.ac.id
Breadth First Search adalah teknik penelusuran data pada semua node dalam satu level atau tingkatan sebelum ke level atau tingkatan dibawahnya. Keuntungan pencarian dengan teknik ini adalah sama dengan depth first search , hanya saja penelusuran dengan teknik ini mempunyai nilai tambah, dimana semua node akan dicek secara menyeluruh pada setiap tingkatan node. Kekurangan teknik penelusuran ini terletak pada waktu yang dibutuhkan yang sangat lama apabila solusi berada dalam posisis node terakhir sehingga menjadi tidak efisien. Kekurangan dalam implementasi juga perlu dipertimbangkan, misalnya teknik penelusuran menjadi tidak interaktif antara pemakai dan sistem karena menyebabkan tidak adanya relasi antar satu topik dengan topik yang lain atau harus melompat dari satu topik ke topik yang lain sebelum topik tersebut selesai ditelusuri.
Gambar 2.4. Penulusuran data dengan Breadth First Search
Penelusuran Best First Search adalah teknik penelusuran yang menggunakan pengetahuan-pengetahuan akan suatu masalah untuk melakukan panduan pencarian kearah node tempat dimana solusi berada. Pencarian jenis ini dikenal juga sebagai heuristik. Pendekatan yang dilakukan adalah mencari solusi yang terbaik berdasarkan pengetahuan yang
12
Narotama Collection http://ejournal.narotama.ac.id
dimiliki sehingga penelusuran dapat ditentukan harus dimulai darimana dan bagaimana menggunakan proses terbaik untuk mencari solusi. Keuntungan jenis penelusuran ini adalah mengurangi beban komputasi karena hanya solusi yang memberikan harapan saja yang diuji dan akan berhenti apabila solusi mendekati yang terbaik. Ini merupakan model yang menyerupai cara manusia mengambil solusi, hanya saja solusi yang diambil bisa saja salah dan tidak ada jaminan bahwa solusi yang dihasilkan merupakan solusi yang mutlak benar.
2.3.4 Fasilitas Penjelasan Sistem Fasilitas penjelasan sistem merupakan bagian dari sistem pakar yang memberikan penjelasan tentang bagaimana program dijalankan, apa yang harus dijelaskan kepada pemakai tentang suatu masalah, memberikan rekomendasi kepada pemakai, mengakomodasi kesalahan pemakai dan menjelaskan suatu masalah terjadi. Fasilitas penjelasan sistem harus mampu menjelaskan bagaimana harus memeriksa sekering yang putus atau bagaimana memeriksa aki motor, sehingga pemakai dapat mengerti dengan jelas apa yang harus dilakukannya. Dalam sistem pakar, fasilitas penjelasan sistem sebaiknya diintegrasikan ke dalam tabel basis pengetahuan dan basis aturan karena hal ini lebih memudahkan perancangan sistem.
2.3.5 Antarmuka Pemakai Antarmuka pemakai memberikan fasilitas komunikasi antara pemakai dan sistem, memberikan berbagai fasilitas informasi dan berbagai keterangan yang bertujuan untuk membantu mengarahkan alur penelusuran masalah sampai ditemukan solusi. Pada umumnya, antar muka pemakai juga berfungsi untuk menginputkan pengetahuan baru ke dalam basis pengetahuan sistem pakar, menampilkan fasilitas penjelasan sistem dan memberikan tuntunan penggunaan sistem secara menyeluruh langkah demi langkah sehingga pemakai mengerti apa yang dilakukan terhadap sistem. Syarat utama membangun antar muka pemakai adalah kemudahan dalam menjalankan sistem. Semua kesulitan dalam membangun suatu program harus disembunyikan, yang ditampilkan hanyalah tampilan yang interaktif, komunikatif dan kemudahan pakai. 2.4 Tahapan Pengembangan Sistem Pakar Terdapat 6 (enam) tahap atau fase dalam pengembangan sistem pakar. Penjelasan berikut merupakan penjelasan secara garis besar tentang fase-fase pengembangan tersebut pada gambar 2.3.
13
Narotama Collection http://ejournal.narotama.ac.id
Fase I Inisialisasi Kasus
Definisi Masalah Kebutuhan Sistem Evaluasi Solusi alternatif Vertifikasi pendekatan sistem Penyesuaian Pengaturan Masukan
Fase II Analisis Dan Desain Sistem
Konseptualisasi rancangan dan desain Strategi pengembangan Materi pengetahuan Komputasi materi Kemudahan pengenalan Analisa efisiensi
Fase III Prototype dasar kasus
Membangun Prototype Pengujian dan Pengembangan Demonstrasi dan kemudahan analisa Penyelesaian desain
Fase IV Pengembangan Sistem
Membangun basis pengetahuan Pengujian, evaluasi pengembangan basis pengetahuan Perencanaan integrasi sistem
Fase V Implementasi Sistem
Proses inputan pemakai Inisialisasi, demonstrasi dan penerapan sistem Orientasi dan latihan Keamanan Dokumentasi Integrasi dan pengujian kasus
Fase VI Implementasi Tahap Lanjut
Operasional Perawatan dan pengembangan sistem Evaluasi sistem secara periodik
Gambar2.3. Fase Pengembangan Sistem Pakar 1.Identifikasi Tahap ini merupakan tahap penentuan hal-hal penting sebagai dasar dari permasalahan yang akan dianalisis. Tahap ini merupakan tahap untuk mengkaji dan membatasi masalah yang akan diimplementasikan dalam sistem. Setiap masalah yang diidentifikasikan harus
14
Narotama Collection http://ejournal.narotama.ac.id
dicari solusi, fasilitas yang akan dikembangkan, penentuan jenis bahasa pemprograman dan tujuan yang ingin dicapai dari proses pengembangan tersebut. Apabila proses identifikasi masalah dilakukan dengan benar maka akan dicapai hasil yang optimal. 2. Konseptualisasi Hasil identifikasi masalah dikonseptualisasikan dalam bentuk relasi antar data, hubungan antar data, hubungan antar pengetahuan dan konsep-konsep penting dan ideal yang akan diterapkan dalam sistem. Konseptualisasi juga menganalisis data-data penting yang harus didalami bersama dengan pakar dibidang permasalahan tersebut. Hal ini dilakukan untuk memperoleh konfirmasi hasil wawancara dan observasi sehingga hasilnya dapat memberikan jawaban pasti bahwa sasaran permasalahan tepat, benar dan sudah sesuai. 3. Formalisasi Apabila tahap konseptualisasi telah selesai dilakukan, maka di tahap formalisasi konsepkonsep tersebut diimplementasikan secara formal, misalnya memberikan kategori sistem yang akan dibangun, mempertimbangkan beberapa faktor pengambilan keputusan seperti keahlian manusia, kesulitan dan tingkat kesulitan yang mungkin terjadi, dokumentasi kerja dan sebagainya. 4.
Implementasi Apabila pengetahuan sudah diformalisasikan secara lengkap, maka tahap implementasi dapat dimulai dengan membuat garis besar masalah kemudian memecahkan masalah ke dalam modul-modul. Untuk memudahkan maka harus diindentifikasikan: a. Apa saja yang menjadi inputan. b.
Bagaimana prosesnya digambarkan dalam bagan alur dan basis pengetahuan aturannya.
c.
Apa saja yang menjadi output atau hasil dan kesimpulannya.
Sesudah itu semua diubah dalam bahasa yang mudah dimengerti oleh komputer dengan menggunakan tahapan fase seperti gambaran fase pengembangan sistem pakar. 5.
Evaluasi Sistem pakar yang selesai dibangun, perlu untuk dievaluasi untuk menguji dan menemukan kesalahannya. Hal ini merupakan hal yang umum dilakukan karena suatu sistem belum tentu sempurna setelah selesai pembuatannya sehingga proses evaluasi diperlukan untuk penyempurnaannya. Dalam evaluasi akan ditemukan bagian-bagian yang harus dikoreksi untuk menyamakan permasalahan dan tujuan akhir pembuatan sistem.
15
Narotama Collection http://ejournal.narotama.ac.id
6.
Pengembangan Sistem pengembangan sistem diperlukan sistem yang dibangun tidak menjadi usang dan investasi sistem tidak sia-sia. Hal pengembangan sistem yang paling berguna adalah proses dokumentasi sistem dimana di dalamnya tersimpan semua hal penting yang dapat menjadi tolak ukur pengembangan sistem dimasa mendatang termasuk didalamnya adalah kamus pengetahuan masalah yang diselesaikan.
2.5 Type Data Seperti contoh pada tabel MAHASISWA, DOSEN, KULIAH DAN lain-lain telah menetapkan Tipe dari masing-masing atribut (kolom), sebagai contoh bila kita telah menetapkan salah satu bertipe Integer, maka hanya mungkin penyimpanan data bulat berkisar antara –32768 sampai dengan 32767. tak dapat dimasuki nilai diluar batas tersebut, atau nilai real, ataupun bernilai string. Secara umum arti Domain adalah sama artinya dengan istilah Tipe itu sendiri. Akan tetapi, tipe data lebih merujuk pada kemampuan penyimpanan data yang tak mungkin bagi suatu atribut secara fisik, tanpa melihat layak atau tidaknya data tsb dipakai, sedangkan Domain lebih menekankan batas-batas nilai yang diperbolehkan bagi suatu atribut. Contoh tabel Kuliah, tipe data untuk Sks adalah integer. Secara fisik kita dapat mengisi, bilangan apa saja asalkan pada koridor antara –32768 s/d 32767, untuk atribut Sks, tetapi kita mengetahui dengan pasti nilai tersebut adalah tidak pantas (invalid), dari kenyataan yang ada kita ketahui data yang valid untuk atribut Sks, adalah 1, 2, 3, 4. jadi Domain untuk atribut Sks adalah 1, 2, 3, 4.
Tipe
Rentang Nilai
Byte
Byte
0…255
1
Word
0..65535
2
Longword
0..4294967295
4
ShortInt
-128…127
1
SmallInt
-32768…32767
2
16
Narotama Collection http://ejournal.narotama.ac.id
LongInt
-2147483648..2147483647
4
Integer
-32768..32767
2
Cardinal
0..4294967295
4
Int64
-263..263-2
8
2.6 Relasi Relation = menunjukkan hubungan antara sejumlah entity yang berasal dari entitas yang berbeda. Contoh: A∩B, A∅B Entity = (himpunan) individu suatu objek. Contoh: Semua pelanggan, atau pelanggan saja : Edi, Agus, Budi. 2.6.1. Derajat Relasi a.121 (One to One) b.12N (One to Many) c. N21 (Many to One) d.N2N (Many to Many) a. Relasi Satu ke Satu • 12N (One to Many)
A• B• C• D• E•
•1 •2 •3 •4 •5
•
Contoh 1 dosen mengajar >= 1 Matakuliah
•
( Setiap Dosen Mengajar beberapa mata kuliah, Sebaliknya setiap mata kuliah diajar satu dosen)
• •
Contoh 1 Dosen Mengajar >= 1 Mata kuliah ( Setiap Dosen Mengajar beberapa mata kuliah, Sebaliknya setiap mata kuliah diajar satu dosen)
b. Relasi Satu ke Banyak • 12N (One to Many)
A• B• C• D• E•
•1 •2 •3 •4 •5
17
Narotama Collection http://ejournal.narotama.ac.id
c. Relasi Banyak ke Satu • N21 (Many to One) A• B• C• D• E•
•
Contoh beberapa Mata kuliah diajar 1 Dosen ( Beberapa mata kuliah diajar satu dosen)
•
Contoh Mahasiswa mempelajari Mata kuliah
•1 •2 •3 •4 •5
d. Relasi Banyak ke Banyak • N2N (Many to Many)
A• B• C• D• E•
•1 •2 •3 •4 •5
2.7 E-R Diagram •
Himpunan Entitas
Atribut, key
•
Atribut ( yang sebagai key diberi underline )
Relasi
•
Himpunan Relasi
•
Himpunan Penghubung antara HP dan HE, HE dan atribut
•
121, 12N, N2N
Entitas
18
Narotama Collection http://ejournal.narotama.ac.id
2.7.1
Relasi Satu ke Satu Diagram E-R untuk One ke One KodeJur
idDos NamaDos
1
Dosen
NamaJur
KodeJur
idDos
1
Ketua
Jurusan
2.7.2 Relasi Satu ke Banyak IdDos
KodeMK KodeMK
IdDos
Dosen
NamaDos
1
N
Mengajar
waktu
tempat
KULIAH
NamaKul
SMT SKS
19
Narotama Collection http://ejournal.narotama.ac.id
2.7.3 Relasi Banyak ke Banyak Diagram E-R untuk Banyak ke banyak NamaMhs
KodeMK KodeMK
Nim nim
Mahasiswa
AlamatMhs
N
Mengajar
N
KULIAH
NamaKul
IPK
SMT SKS
Gambar3.2 Tabel Relationship
20