11
BAB II TINJAUAN PUSTAKA
II.1. Kecerdasan Buatan II.1.1. Definisi Kecerdasan Buatan Kecerdasan buatan berasal dari bahasa Inggris “Artificial Intelligence” atau disingkat AI, yaitu intelligence adalah kata sifat yang berarti cerdas, sedangkan artificial artinya buatan. Kecerdasan buatan yang dimaksud di sini merujuk pada mesin yang mampu berfikir, menimbang tindakan yang akan diambil, dan mampu mengambil keputusan seperti yang dilakukan oleh manusian (Sutujo, dkk; 2011:1). Berikut adalah beberapa definisi kecerdasan buatan yang telah didefinisikan oleh beberapa ahli :
Herbert Alexander Simon (June 15, 1916-February 9, 2001): “Kecerdasan buatan (Artificial Intelligence) merupakan kawasan penelitian, aplikasi, dan instruksi yang terkait dengan pemrograman computer untuk melakukan sesuatu hal yang dalam pandangan manusia adalah cerdas”.
Rich and Knight (1991): “Kecerdasan buatan (AI) merupakan sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia”.
Encyclopedia Britannica: “Kecerdasan buatan (AI) merupakan cabang dari ilmu computer yang dalam merepresentasi pengetahuan lebih banyak menggunakan bentuk simbol-simbol
11
12
dari pada bilangan dan memproses informasi berdasarkan metode heuristis atau dengan berdasarkan sejumlah aturan”. Menurut Winston dan Prendergast (1984), tujuan dari kecerdasan buatan adalah: 1. Membuat mesin menjadi lebih pintar (tujuan utama) 2. Memahami apa itu kecerdasan (tujuan ilmiah) 3. Membuat mesin lebih bermanfaat (tujuan entrepreneurial)
II.2. Sistem Pakar ( Expert System ) II.2.1. Definisi Sistem Pakar Sistem pakar merupakan cabang dari Artificial Inteliligence(AI) yang cukup tua karena sistem ini mulai dikembangkan pada pertengahan 1960. Sistem pakar yang muncul pertama kali adalah General-purpose problem solver (GPS) yang dikembangkan oleh Newel dan Simon (Sutojo, dkk; 2011:159). Menurut beberapa ahli sistem pakar adalah :
Sistem pakar adalah sebuah sistem yang menggunakan pengetahuan manusia dimana pengetahuan tersebut dimasukkan ke dalam sebuah computer dan kemudian digunakan untuk menyelesaikan masalah-masalah yang biasanya membutuhkan kepakaran atau keahlian manusia (Turban (2001, p402)).
Sistem pakar adalah program komputer yang merepresentasikan dan melakukan penalaran dengan pengetahuan beberapa pakar untuk memecahkan masalah atau memeberikan saran (Jackson (1993,p3)).
Sistem pakar adalah program
yang berbasiskan pengetahuan yang
menyediakan solusi „kualitas pakar‟ kepada masalah-masalah dalam bidang
13
(domain) yang spesifik (Luger dan Stubblefield (1993, p308)). Sistem pakar adalah sistem komputer yang ditujukan untuk meniru semua aspek (emulates) kemampuan pengambilan keputusan (decision making) seorang pakar, Sistem pakar memanfaatkan secara pengetahuan khusus selayaknya seorang pakar untuk memecahkan masalah (Rika Rosnelly; 2012:2). II.2.2. Manfaat Sistem Pakar Sistem pakar menjadi sangat populer karena sangat banyak kemampuan dan manfaat yang diberikannya, diantaranya : 1. Meningkatkan produktivitas, karena sistem pakar dapat bekerja lebih cepat dari pada manusia. 2. Membuat seseorang yang awam bekerja seperti layaknya seorang pakar. 3. Meningkatkan kualitas, dengan member nasehat yang konsisten dan mengurangi kesalahan. 4. Mampu menangkap pengetahuan dan kepakaran seseorang 5. Dapat beroperasi di lingkungan yang berbahaya. 6. Memudahkan akses pengetahuan seorang pakar. 7. Andal, Sistem pakar tidak pernah menjadi bosan kelelehan atau sakit. 8. Meningkatkan kapabilitas sistem komputer. Integrasi sistem pakar dengan sistem computer lain membuat sistem lebih efektif dan mencakup lebih banyak aplikasi. 9. Mampu bekerja dengan informasi yang tidak lengkap atau tidak pasti. 10. Bisa digunakan sebagai media pelengkap dalam pelatihan.
14
11. Meningkatkan kemampuan untuk menyelesaikan masalah karena sistem pakar mengambil sumber pengetahuan dari banyak pakar.(Sutojo, dkk; 2011:161). II.2.3. Kekurangan Sistem Pakar Selain manfaat, ada juga beberapa kekurangan yang ada pada sistem pakar, diantaranya : 1. Biaya yang sangat mahal untuk membuat dan memeliharanya. 2. Sulit dikembangkan karena keterbatasan keahlian dan ketersediaan pakar. 3. Sistem pakar tidak 100 % bernilai benar(Sutojo, dkk; 2011:161). II.2.4. Karakteristik Sistem Pakar Sistem pakar umumnya dirancang untuk memenuhi beberapa karakteristik umum berikut ini :
Kinerja sangat baik (high performance). Sistem harus mampu memberikan respon berupa saran (advice) dengan tingkat kualitas yang sama dengan seorang pakar atau melebihinya.
Waktu respon yang baik (adequate respn time). Sistem juga harus mampu bekerja dalam waktu yang sama baiknya (reasonable) atau lebih cepat dibandingkan dengan dengan seorang pakar dalam mengahsilkan keputusan.
Dapat diandalkan (good reliability. Sistem harus dapat diandalkan dan tidak mudah rusak / crash.
Dapat dipahami (understandable). Sistem harus mampu menjelaskan langkah-langkah penalaran yang dilakukannya seperti seorang pakar.
15
Fleksibel (fleksibility). Sistem harus menyediakan mekanisme untuk menambah, mengubah, dan menghapus pengetahuan. (Rika Rosnelly; 2012:20-21)
II.2.5. Struktur Sistem Pakar Adapun struktur sistem pakar dapat dilihat pada Gambar II.1
KNOWLEDGE BASE
INFERENCE ENGINE AGENDA
(RULES)
EXPLANATION FACILITY
WORKING MEMORY (FACTS)
KNOWLEDGE ACQUISITION FACILITY
USER INTERFACE
Gambar II.1. Struktur Sistem Pakar Sumber : (Rika Rosnelly; 2012:13)
Komponen yang terdapat dalam struktur sistem pakar ini adalah knowledge base (rules), inference engine, working memory, explanation facility, knowledge acquisition facility, user interface.
16
1.
Knowledge Base (Basis Pengetahuan) Basis pengetahuan mengandung pengetahuan untuk pemahaman, formulasi,
dan penyelesaian masalah. Komponen sistem pakar disusun atas dua elemen dasar, yaitu fakta dan aturan. (Rika Rosnelly; 2012:14). 2.
Inference Engine (Mesin Inferensi) Mesin inferensi adalah sebuah program yang berfungsi untuk memandukan
proses penalaran terhadap suatu kondisi berdasarkan pada basis pengetahuan yang ada, memanipulasi dan mengarahkan kaidah, model, dan fakta yang simpan dalam basis pengetahuan untuk mencapai solusi atau kesimpulan. Dalam prosesnya, mesin inferensi menggunakan strategi pengendalian, yaitu strategi yang berfungsi sebagai panduan arah dalam melakukan proses penalaran. Ada tiga teknik pengendalian yang digunakan, yaitu forward chaining, backward chaining, dan gabungan dari kedua teknik tersebut (Sutojo, dkk; 2011).
Forward Chaining Forward chaining adalah teknik pencarian yang dimulai dengan fakta yang diketahui, kemudian mencocokkan fakta-fakta tersebut dengan bagian IF dari rules IF-THEN. Bila ada fakta yang cocok dengan bagian IF, maka rule tersebut dieksekusi. Bila suatu rule dieksekusi, maka sebuah fakta baru (bagian THEN) ditambahkan kedalam database. Setiap kali pencocokan, dimulai dari rule teratas. Setiap rule hanya boleh dieksekusi sekali saja. Proses pencocokan berhenti bila tidak ada lagi rule yang bisa dieksekusi. Metode pencarian yang digunakan adalah Depth-First Search (DFS), BreadthFirst Search (BFS) atau Best First Search. (Sutojo, dkk; 2011:171)
17
Backward Chaining Backward chaining adalah metode inferensi yang bekerja mundur kearah kondisi awal. Proses diawali dari Goal (yang berada dibagian THEN dari rule IF-THEN ), kemudian pencarian mulai dijalankan untuk mencocokkan apakah fakta-fakta yang ada cocok dengan premis-premis dibagian IF. Jika cocok, rule dieksekusi, kemudian hipotesis dibagian THEN ditempatkan di basis data sebagai fakta baru. Jika tidak cocok, simpan premis di bagian IF ke dalam stack sebagai subGoal. Proses berakhir jika Goal ditemukan atau tidak adda rule yang bisa membuktikan kebenaran dari subGoal atau Goal.(Sutojo, dkk; 2011:178)
3.
Working Memory Berguna untuk menyimpan fakta yang dihasilkan oleh inference engine
dengan menambahan parameter berupa derajat kepercayaan atau dapat juga dikatakan sebagai global database dari fakta yang digunakan oleh rule-rule yang ada. 4.
Explanation Fasility
Menyediakan kebenaran dari solusi yang dihasilkan kepada user (reasoning chain). 5.
Knowledge acquisition facility (Akusisi Pengetahuan) Meliputi proses pengumpulan, pemindahan dan perubahan dari kemampuan
pemecahan masalah seorang pakar atau sumber pengetahuan terdokumentasi ke program computer, yang bertujuan untuk memperbaiki atau mengembangkan basis pengetahuan.
18
6.
User Interface (Antar Muka Pemakai) Mekanisme untuk memberikan kesempatan kepada user dan sistem pakar
untuk berkomunikasi. Antar muka menerima informais dari pemakai dan mengubahnya kedalam bentuk yang dapat diterima oleh sistem. Selain itu antar muka menerima informasi dari sistem dan menyajikannya dalam bentuk yang dapat dimengerti oleh pemakai. (Rika, Rosnelly; 2012:14-15)
II.3. Penyakit Lambung II.3.1. Gastristis Gastritis merupakan peradangan yang mengenai mukosa lambung. Peradangan ini dapat mengakibatkan pembengkakan mukosa lambung sampai terlepasnya epitel mukosa superfisial yang menjadi penyebab terpenting dalam gangguan saluran pencernaan. Pelepasan epitel akan merangsang timbulnya proses inflamasi pada lambung. II.3.1.1. Penyebab Gastritis Berbagai kasus yang terjadi pada gastritis sering berkaitan dengan hal-hal sebagai berikut : 1. Pemakaian obat antiinflamasi nonsteroid seperti aspirin, asam mafenamat, aspilets dalam jumlah besar. Obat antiinflamasi non steroid dapat memicu kenaikan produksi asam lambung yang berlebihan sehingga mengiritasi mukosa lambung karena terjadinya difusi balik ionhidrogen ke epitel lambung. 2. Konsumsi alkohol berlebihan
19
Bahan etanol merupakan salah salah satu bahan yang dapat merusak sawar pada mukosa lambung. Rusaknya sawar memudahkan terjadinya iritasi pada mukosa lambung. 3. Banyak merokok Asam nikotin pada rokok dapat meningkatkan adhesi thrombus yang berkontribusi pada penyempitan pembuluh darah sehingga suplai darah ke lambung mengalami penurunan. 4. Pemberian obat kemoterapi Obat kemoterapi mempunyai sifat dasar merusak sel yang pertumbuhannya abnormal, perusakan ini ternyata dapat juga mengenai sel inang pada tubuh manusia.pemberian kemoterapi dapat juga mengakibatkan kerusakan langsung pada epitel mukosa lambung. 5. Uremia Uremia pada darah dapat mempengaruhi proses metabolisme di dalam tubuh terutama saluran pencernaan(gastrointestinal uremik). Perubahan ini dapat memicu kerusakan pada epitel mukosa lambung. 6. Infeksi sistemik Pada interaksi sistem toksis yang dihasilkan oleh mikroba akan merangsang peningkatan laju metabolik yang berdampak pada peningkatan aktivitas lambung dalam mencerna makanan. 7. Stres barat Sters psikologi akan meningkatkan aktivitas saraf simpatik yang dapat merangsang peningkatan produksi asam lambung.
20
8. Iskemia dan syok Kondisi iskemia dan syok hipovalemia mengancam mukosa lambung karena penurunan perfusi jaringan lambung yang dapat mengakibatkan nekrosis lapisan lambung. 9. Konsumsi kimia secara oral yang bersifat asam/basa Konsumsi asam maupun basa yang kuat seperti etanol, thinner, obat-obatan serangga dan hama tanaman. Jenis kimia ini dapat merusak lapisan mukosa dengan cepat sehingga sangat beresiko terjadi perdarahan. 10. Trauma mekanik Trauma mekanik yang mengenai daerah abdomen seperti benturan saat kecelakaan yang cukup kuat juga dapat menjadi penyebab gangguan keutuhan jaringan lambung. Kadang kerusakan tidak sebatas mukosa, tetapi juga jaringan otot dan pembuluh darah lambung. 11. Infeksi mikroorganisme Koloni bakteri yang menghasilkan toksik dapat merangsang pelepasan gastrin dan peningkatan sekresi asam lambung seperti bakteri Helicobacter pylori. II.3.1.2. Klasifikasi Gastritis Secara garis besar gastritis dapat di bedakan menjadi 3 tipe berdasarkan perjalanan dan gejala klinisnya : 1. Gastritis akut hemoragik erosif Gastritis tipe ini yang sering menyebabkan ulkus aktif. Dikategorikan hemoragik erosif karena beresiko terjadi perdarahan masif dan perforasi gaster. Gastritis hemoragik erosive disebabkan oleh :
21
Penggunaan obat antiinflamasi nonsteroid
Iskemia
Sters
Penyalagunaan alkohol, zat kimia korosif
Trauma
Trauma radiasi Gastritis akut erosif sangat bervariasi, mulai dari yang sangat ringan
asimtomatik sampai yang berat dan dapat menimbulkan kematian. Gejala yang sangat mencolok adalah :
Hematemetis dan melena yang dapat berlangsung sangat hebat sampai terjadi renjatan karena kehilangan darah.
Pada sebagian kasus gejalanya amat ringan bahkan asimtomatis. Keluhankeluhan itu misalnya nyeri timbul pada ulu hati, biasanya ringan dan tidak dapat ditunjuk dengan tepat lokasinya
Mual-mual dan muntah
Perdarahan saluran cerna
Pada kasus yang amat ringan perdarahan manifestasi sebagai darah samar pada tinja
dan secara fisis akan dijumpai tanda-tanda anemia defisiensi
dengan etiologi yang tidak jelas.
Pada pemerikasaan fisis biasanya tidak ditemukan kelainan kecuali mereka yang mengalami perdarahan yang hebat sehingga menimbulkan tanda dan gejala gangguan hemodinamik yang nyata seperti hipotensi, pucat, keringat dingin, takikardia sampai gangguan kesadaran.
22
2. Gastritis aktif kronik non erosif Jenis peradangan lambung ini banyak terjadi pada daerah antrum. Penyebab utama terjadi gastritis aktif kronik non erosive adalah infeksi bakteri Helicobakteri pylori. Bakteri helicobakteri pylori merupakan bakteri yang berbentuk seperti sosis. Bakteri ini mempunyai beberapa keistimewaan sehingga dapat hidup justru di daerah yang kaya asam. Gastritis jenis ini dapat mengakibatkan tukak lambung yang dysoplasia sel lambung dan dapat memicu timbulnya kanker lambung. Bakteri helicobakteri pylori dapat memicu timbulnya tukak lambung karena selain beberapa sifat di atas bakteri ini juga merangsang peningkatan sekresi gastrin pada bagian antrum dan peningkatan HCI pada bagian fundus. Gajala yang sangat mencolok adalah :
Perasaan penuh, anoreksia. Perasaan cepat penuh yang diakibatkan sekresi yang berberlebihan pada lambung ketika ada makanan yang masuk.
Distres epigastrik yang tidak nyata, Distres epigastrik yang tidak nyata sering berkaitan dengan perasaan gaster seperti penuh padahal kalau dilakukan pengecekkan
secara
detail
lambung
tidak
mengalami
peningkatan
intralumennya.
Cepat kenyang.
3. Gastritis atropi Penyebab tersering tipe ini adalah autoantibodi. Immunoglobulin G dan limfosit-B kehilangan daya kenal terhadap sel lambung sehingga justru malah merusaknya. Sel parietal lambung mengalami atropi dan mengalami gangguan terhadap reseptor gastrin, karbonhidrase, H+/K+ ATPase dan faktor intrinsik.
23
Atropi sel parietal dapat mengakibatkan penurunan sekresi getah lambung dan faktor intrinsik menurun tetapi justru terjadi peningkatan sekresi gastrin. Gejala yang sangat mencolok adalah :
Nyeri epigastrik, timbulnya nyeri pada gastritis atropi akibat peningkatan sekresi gastrin, tetapi justru mengalami penurunan getah lambung akibat atropi parietal.
Anemia
pernisiosa,
penurunan
ikatan
terhadap
kobalamin
pada
intestinumdapat mengakibatkan anemia pernisiosa sebagai dampak penurunan faktor intrinsik dari lambung.
Mual dan muntah.
4. Gastritis reaktif Gastritits reaktif tersering di sebabkan pasca operasi daerah antrum atau daerah pylorus yang mengakibatkan refluks enterogastrik yang menyebabkan enzim pankreas dan garam empedu menyerang mukosa lambung sehingga mengalami pengikisan. Selain itu getah usus yang alkalis dapat menetralkan gastrin sehingga menadi sangat cocok untuk perkembangan Helicobakteri pylori.(Sukarmin; 2011:147-159). Gejala yang sangat mencolok adalah :
Muntah yang berlebihan
Nyeri epigastri
Lemah.
24
II.3.2. Dipepsia Penyakit maag (maksudnya nyeri pada maag/lambung) yang merupakan 40% gangguan perut adalah dispepsia. Dispepsia adalah gangguan perut sebelah atas, tengah (bukan sisi kiri atau kanan), ditandai dengan rasa penuh, kembung, nyeri, beberapa dengan mual-mual, perut keras, bahkan sampai muntah. Ada dua macam dyspepsia: 1. Ulcus like dyspepsia (nyeri timbul bila terlambat makan/tak ada makanan) 2. Dismotily like dyspepsia (rasa cepat penuh/kenyang, nyeri setelah makan walau tidak makan banyak). Walaupun
mempunyai
tanda
yang berbeda,
kedua
dyspepsia
ini
penyebabnya sama, yakni adanya ketidak seimbangan antara factor defensive (factor pertahanan) dengan factor agresif (factor penyerang). Dalam keadaan fisiologi normal, di dalam lambung kita terdpat asam lambung (HCL) yang diperlukan oleh tubuh salah satunya sebagai disinfektan terhadap kuman yang masuk bersama makanan atau minuman. Kadar HCL lambung dijaga oleh penetralnya yang sifatnya basa/alkali yakni adanya mucus (cairan kental yang disekresi/dikeluarkan oleh sel dalam lambung) bikarbonat. Bikarbonat bersifat basa. Selain itu, adanya senyawa pelindung sel-sel mukosa dan epitel lambung yang disebut Prostaglandin (PG). prostaglandin juga diproduksi oleh salah satu reseptor dalam lambung (sel parietal). Masih ditambah adanya gastrin (mucus juga) yang sama dengan PG bersifat citoprotektif (pelindung sel). Dengan demikian yang disebut dengan:
25
Factor agresif: HCL lambung (yang bila kadarnya tinggi mampu merusak selsel dalam lambung)
Factor defensive: mucus bikarbonat, PG, dan gastrin. Sepanjang kedua faktor terjaga seimbang, lambung akan bekerja dengan
optimal mencerna makanan, tanpa gangguan. Namun ada banyak hal yang menjadi pemicu naiknya produksi HCL lambung, seperti makanan yang terlalu asam, pedas, dingin (termasuk suhu udara lingkungan, minuman dingin, ruangan ber-AC), sters (emosi, pekerjaan dan lain-lain), obat bersifat asam (ibuprofen, aspirin, asam mafenamat, diklofenak). Beberapa individu bahkan dipicu oleh makanan seperti kubis dan sawi, bahkan semangka, sehingga ditemukan banyaknya HCL dalam lambung maupun di sel-sel histaminic tipe 2 lambung yang siap di keluarkan dalam lambung. Sementara itu, mucus bikarbonat, PG, dan gastrin yang diproduksi lambung tidak mampu menjaga kadar HCL normal sehingga timbulah gangguan ketidaknyamanan di lambung yang disebut dispepsia. Dispepsia yang tidak segera diobati akan berlanjut menjadi gastritis(peradangan di lambung) yang diperparah dengan hadirnya bakteri yang hidup di pylori (bagian ujung bawah lambung) disebut Helicobacter Pylori (H.Pylori)
tidak
menutup
kemungkinan
makin
parahnya
peradangan
mengakibatkan ulkus baik di lambung maupun usus (borok, berdarah) dan memicu munculnya kanker lambung.
26
II.3.2.1. Strategi Pengobatan Prinsip sederhana yang dipakai adalah menyeimbangkan faktor agresif dengan defensive, utamanya dengan menghindari pencetus disepsia, yakni menghindari makanan, obat, stres, hawa dingin. Namun, perlu ditambah pemberian obat jika dispepsia mengganggu, caranya: 1. Diberikan antacid (contoh Promag, Mylanta, Renie dan lain-lain) untuk menetralkan HCL yang telah memenuhi lambung. 2. Diberikan senyawa yang mampu menghambat produksi HCL, yakni penghambat reseptor histaminic tipe (H2 blocking agent/antagonis H2), contohnya: cimetidin, ranitidine, famotidin. (Ika Puspitasari:57-59). II.3.3. GERD (Gastro-Esophageal Reflux Disease) Kondisi penyakit refluks gastroesofagus (GERD: gastroesophageal reflux disease) disebabkan oleh refluks isi lambung ke dalam esophagus. GERD sering disebut heartburn atau nteri ulu hati yang terjadi jika asam, yang secara normal hanya ada di dalam lambung, masuk dan membakar atau mengiris esophagus. GERD biasanya terjadi setelah makan, terjadi akibat kondisi yang melemahkan tonus sfingter esophagus atau meningkatkan takanan di dalam lambung di bandingkan dengan esophagus. Dengan kedua mekanisme tersebut, isi lambung yang asam masuk ke dalam esophagus(Elizabet J. Cowin; 2009).
Gambar II.2. Meknisme GERD (gastroesophageal reflux disease) Sumber : (Elizabet J. Cowin; 2009)
27
II.3.3.1. Pengobatan GERD 1. Tindakan Khusus Sebagian besar pasien GERD dengan keluhan rasa panas di ulu hati dan regurgitasi asam tanpa adanya kerusakan mukosa biasanya membaik dengan mengubah gaya hidup. Yang dapat dilakukan adalah:
Jangan berbaring setelah makan
Hindari mengangkat barang berat
Daerah Hindari pakaian yang ketat, terutama di daerah pinggang.
Tempat tidur bagian kepala ditinggikan
Turunkan berat badan pada pasien yang gemuk
Membiasakan tidur dengan lambung tidak terisi penuh
Jangan makan terlalu kenyang
Hindari makanan berlemak
Kurangi atau hentikan pemakaian kopi, alkohol, coklat dan makanan yang dibubuhi rempah-rempah.
Jangan merokok
Jangan menggunakan obat-obatan yang menurunkan sfingter esophagus bawah.
Untuk sebagian pasien dengan derajat penyakit yang lebih berat dan menunjukkan kerusakan mukosa berupa peradangan dan ulserasi. Dibutuhkan obat-obatan untuk menyembuhkannya.
28
2. Tindakan medis terapi stadium akut Tujuan pengobatan medis adalah mempercepat pengosongan lambung, melindungi permukaan mukosa dan menetralisasi atau menekan pembentukan asam lambung. Terapi obat dengan obat prokinetik, obat golongan ini secara teoritis paling sesuai untuk pengobatan GERD oleh karena penyakit ini dianggap lebih condong kea rah gangguan motilitas gastro-esofageal dari pada hipersekresi asam. Yang termasuk golongan ini adalah betanecol, metoklopramid, domperidon dan cisapride, yang semuanya memiliki sifat mempercepat peristaltic saluran pencernaan di samping meninggikan tekanan sfingter esofagus bawah.
II.4. Teori Dempster-Shafer Metode Dempster-Shafer pertama kali diperkenalkan oleh Dempster, yang melakukan percoban model ketidakpastian dengan range probabilitas sebagai probabilitas tunggal. Kemudian pada tahun 1976 Shafer mempublikasikan teori Dempster tersebut pada sebuah buku yang berjudul Mathematical Theory of Evident. (Aprilia Sulistyohati, Taufiq Hidayat; 2008) Secara umum teori Dempster-Shafer ditulis dalam suatu interval :
[Belief,Plausibility] Belief (Bel) adalah ukuran kekuatan evidence dalam mendukung suatu
himpunan proposisi. Jika bernilai 0 maka mengindikasikan bahwa tidak ada evidence, dan jika bernilai 1 menunjukkan adanya kepastian.
Plausibility (Pl) dinotasikan sebagai :
Pl(s) = 1 – Bel (¬s)
29
Plausibility juga bernilai 0 sampai 1. Jika yakin akan ¬s, maka dapat dikatakan bahwa Bel(¬s)=1, dan Pl(¬s)=0. Pada teori Dempster-Shafer dikenal adanya frame of discrement yang dinotasikan dengan Ѳ. Frame ini merupakan semesta pembicaraan dari sekumpulan hipotesis. Tujuannya adalah mengaitkan ukuran kepercayaan elemen-elemen Ѳ. Tidak semua evidence secara langsung mendukung tiap-tiap elemen, Untuk itu perlu adanya probabilitas fungsi densitas (m). Nilai m tidak hanya mendefinisikan elemen-elemen Ѳ. saja, namun juga semua subsetnya. Sehingga jika Ѳ berisi n elemen, maka subset Ѳ adalah 2n. Jumlah semua m dalam subset Ѳ sama dengan 1. Apabila tidak ada informasi apapun untuk memilih hipotesis, maka nilai : m{ Ѳ } = 1,0 Apabila diketahui X adalah subset dari Ѳ dengan m1 sebagai fungsi densitasnya, dan Y juga merupakan subset dari Ѳ dengan m2 sebagai fungsidensitasnya, maka dapat dibentuk fungsi kombinasi m1 dan m2 sebagai m3, yaitu :
m3(Z) =
ƩXnY=Z m1 (X). m2(Y) 1 – ƩXnY= Ѳ m1 (X). m2(Y)
II.5. Unified Modelling Language (UML) II.5.1. Definisi Unified Modelling Language (UML) Unified Modelling Language (UML) adalah “bahasa” yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.
30
Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti 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
mendefinisikan
notasi
dan
syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari 3 notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Software Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering)(Yuni Sugiarti; 2013:34). Unified Modeling Language (UML) biasa digunakan untuk: 1. Menggambarkan batasan sistem dan fungsi-fungsi secara umum, dibuat dengan use case. 2. Menggambarkan kegiatan atau proses bisnis yang dilaksanakan secara umum, dibuat dengan interaction diagrams. 3. Menggambarkan representasi struktur static sebuah sistem dalam bentuk class diagrams .
31
4. Membuat model behavior “yang menggambarkan kebiasaan atau sifat sebuah sistem” dengan state transition diagrams. 5. Menyatakan arsitektur implementasi fisik menggunakan component and development diagrams. 6. Menyampaikan atau memperluas fungsionality dengan stereotype. 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 berkomunikasikan 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.(Yuni Sugiarti; 2013:36-37). II.5.2. Use Case Diagram Dalam membuat sebuah sistem, langkah awal yang perlu dilakukan adalah menentukan kebutuhan. Terdapat dua jenis kebutuhan, 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 stakeholder. Sedangkan kebutuhan nonfungsional adalah kebutuhan yang memperhatikan hal-hal berikut yaitu performansi, kemudahan dalam menggunakan sisten, kehandalan sistem, keamanan sistem, keuangan, legalitas, dan operasional.
32
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 antar satu atau lebih actor dengan sistem yang akan dibuat. Dengan pengertian yang cepat, diagram use case digunakan untuk mengetahui fungsi apa saja yang ada didalam sebuah sistem dan siapa saja yang berhak menggunakan fungsi-fungsi tersebut. Terdapat beberapa simbol dalam menggambarkan diagram use case, yaitu use case, actor dan relasi. Hal perlu diingat mengenai digram use case adalah diagram use case bukan menggambarkan tampilan antarmuka (user interface), arsitektur dari sistem, kebutuhan nonfungsional, dan tujuan performansi. Sedangkan untuk penamaan use case adalah nama didefinsikan sesimpel mungkin, dapat dipahami dan menggunakan kata kerja(Yuni Sugiarti; 2013:41). Berikut adalah simbol-simbol yang ada pada diagram use case : Tabel II.1. Simbol-simbol Use Case Simbol Use Case
Deskripsi Fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor; biasanya dinyatakan dengan menggunakan kata kerja di awalfrase nama use case.
nama usecase
Aktor
Orang, proses atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat diuar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi actor belum tentu merupakan orang; biasanya dinyatakan menggunakan kata benda diawal frase nama aktor.
Asosiasi / Assocition
Komunikasi antara actor dan use case yang berpartisipasi pada usecase atau use case memiliki interaksi dengan aktor.
33
Extend
<< extend >>
Relasi use case tambahan kesebuah use case dimana use case yang ditambahkan dapat berdiri sendiri walau tanpa use case tambahan inti; mirip dengan prinsip inheritance pada pemprograman berorientasi objek; biasanya use case tambahan memiliki nama depan yang sama dengan use case yang di tambahkan, arah panah menunjuk pada use case yang dituju . contoh: Update data Input data
Include << include>>
dosen
dosen
<<extend>> Relasi use case tambahan kesebuah use case dimana use cae yang ditambahkan memerlukan use case ini untuk menjalankan fungsinya atau sebagai syarat dijalankan use case ini. Ada dua sudut pandang yang cukup besar mengenai include di use case, include berarti use case yang ditambahkan akan selalu di panggil saat use case tambahan di jalankan. Contoh: <
> Pendaftaran
Kartu anggota
Sumber : (Yuni Sugiarti; 2013:42) Contoh diagram use case : login
Input pendidikan & pengajaran
Input penelitian Dosen Input pengunjung
Input pengapdian masyarakat
Gambar II.3. Contoh Use case Sumber : (Yuni Sugiarti; 2013:45) II.5.3. Class Diagram (Diagram Kelas) Diagram kelas atau class diagram menggambarkan stuktur sistem dari segi pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas memilikiapa yang disebut atribut dan metode atau operasi.
34
Atribut merupakan variabel-variabel yang dimiliki oleh suatu kelas
Atribut mendeskripsikan property dengan sebaris teks didalam kotak kelas tersebut.
Operasi atau metode adalah fungsi-fungsi yang dimiliki oleh suatu kelas Diagram kelas mendeskripsikan jenis-jenis objek dalam sistem dan berbagai
hubungan statis yang terdapat di antara mereka. Diagram kelas juga menunjukkan properti dan operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubungan-hubungan objek. Diagram kelas menggambarkan stuktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment, pewarisan, asosiasi, dan lain-lain( Yuni Sugiarti; 2013:57). Kelas memiliki tiga area pokok : 1. Nama 2. Atribut 3. Operasi Berikut adalah simbl-simbol yang ada pada diagram kelas : Tabel II.2. Simbol-simbol Class Diagram Simbol Package
Deskripsi Package merupakan sebuah bungkusan dari satu atau lebih kelas
Package Antarmuka / interface Interface
Sama dengan konsep interface dalam pemrograman berorientasi objek.
35
Asosiasi
1
Relasi antar kelas dengan makna umum, asosiasi biasanya juga disertai dengan multiplicity 1..*
Asosiasi bararah / directed asosiasi
Relasi antar kelas dengan makna kelas yang satu digunkan oleh kelas yang lain, asosiasi biasanya juga diseertai dengan multiplicity.
Generalisasi
Relasi antar kelas dengan makna generalisasi-spesialisasi (umumkhusus)
Kebergantungan/defedency
Relasi antar kelas dengan makna kebergantungan antar kelas
Agregasi
relasi antar kelas dengan makna semua-bagian (whole-part)
Sumber : (Yuni Sugiarti; 2013:59) Contoh Diagram Kelas : Supplier
Surat Pesanan
+IdSupp +NamaSupp +Telp +Persh +..
+IdSP +tgl +..
+input() +save() +update() +del() +print()
TTO terdapat +1
terima 1..*
+..()
+1
1..*
+IdTTO +jmlObt +tgl +harga +.. +..()
Gambar II.4. Contoh class diagram Sumber : (Yuni Sugiarti; 2013:60) II.5.4. Activity Diagram (Aktivitas) Diagram aktivitas atau activity diagram menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis, yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor jadi aktivitas yang dapat dilakukan oleh sistem. Diagram aktivitas mendukung perilaku paralel.
36
Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, 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 kerena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum(Yuni Sugiarti; 2013:75). II.5.5. Squence Diagram Sequence diagram memperlihatkan interaksi sebagai diagram dua matra (dimensi). Matra vertical adalah sumbu waktu; waktu bertambah dari atas ke bawah.
Matra
horizontal
memperlihatkan
peran
pengklasifikasi
yang
merepresentasikan objek-objek mandiri yang terlibat dalam kolaborasi. Masingmasing peran pengklasifikasi direpresentasikan sebagai kolom-kolom vertical dalam sequence diagram sering disebut sebagai garis waktu (lifeline). Selama objek ada, peran digambarkan menggunakan garis tegas. Selama akvasi prosedur pada objek aktif, garis waktu digambarkan sebagai garis ganda. Pesan-pesan digambarkan sebagai suatu tanda panah dari garis waktu suatu objek ke garis waktu objek lainnya. Panah-panah yang menggambarkan aliran pesan antarperan pengklasifikasi digambarkan dalam urutan waktu kejadiannya dari atas ke bawah.(Adi Nugroho; 2010:42-43).
37
II.6. Sekilas Tentang Visual Basic 2010 Visual Basic 2010 merupakan salah satu bagian dari produk pemrograman terbaru yang dikeluarkan oleh Microsoft, yaitu Microsoft Visual Studio. Visual Studio merupakan produk pemrograman andalan dari Microsoft Corporation, di mana di dalamnya berisi beberapa jenis IDE pemrograman seperti Visual Basic, Visual C ++, Visual Web Developer, Visual C#, dan Visual F#. Semua IDE pemrograman tersebut sudah mendukung penuh implementasi .Net Framework terbaru, yaitu .Net Framework 4.0 yang merupakan pengembangan dari .Net Framework 3.5. Adapun database standar yang disertakan adalah Microsoft SQL Server 2008 express. Visual Basic 2010 merupakan versi perbaikan dan pengembangan dari versi pendahuluannya, yaitu Visual Basic 2008. Beberapa pengembangan yang terdapat didalamnya antara lain dukungan terhadap library terbaru dari Microsof, yaitu .Net Framework 4.0, dukungan terhadap aplikasi berbasis Cloud Computing, serta perluasan dukungan terhadap database-database, baik standalone maupun database server.
Gambar II.5. Microsoft Visual Basic 2010 Sumber : (Wahana Komputer; 2011:3)
38
Bahasa Visual Basic 2010 sendiri awalnya barasal dari bahasa pemrograman yang sangat populer di kalangan programmer komputer, yaitu bahasa BASIC, yang oleh Microsoft diadaptasi dalam program Microsoft Quick BASIC. Seiring berkembangnya teknologi komputasi dan desain, Microsoft mengeluarkan produk yang dinamakan Microsoft Visual Studio dengan Visual Basic didalamnya. Saat ini versi Microsoft Visual Studio yang beredar adalah versi 10 yang populer dengan nama Microsoft Visual Studio 2010, yang di dalamnya termasuk Microsoft Basic 2010.(Wahana Komputer; 2011: 2-3).
II.7. Sekilas Tentang SQL Server 2008 SQL Server 2008 adalah sebuah teroboson baru dari Microsoft dalam bidang database. SQL Server adalah DBMS (Database Management System) yang dibuat oleh Microsoft untuk ikut berkecimpung dalam persaingan dunia pengolahan data menyusul pendahunya seperti IBM dan Oracle. SQL Server 2008 dibuat pada saat kemajuan dalam bidang hardware sedemikian pesat. Oleh karena itu sudah dapat dipastikan bahwa SQL Server 2008 membawa beberapa terobosan dalam bidang pengolahan dan penyimpanan data(Wahana Komputer; 2010). II.7.1. Versi-Versi SQL Server Microsoft merilis SQL Server 2008 dalam beberapa versi yang disesuaikan dengan segment-segment pasar yang dituju. Versi-versi tersebut sebagai berikut. Menurut cara pemprosesan data pada prosesor maka Microsoft mengelompokkan produk ini berdasarkan 2 jenis yaitu :
39
Versi 32-bit(x86), yang biasanya digunakan untuk computer dengan single processor (Pentium 4) atau lebih tepatnya processor 32 bit dan sistem operasi Windows XP.
Versi 64-bit(x64), yang biasanya digunakan untuk computer dengan lebih dari satu processor (Misalnya: Core 2 Duo) dan system operasi 64 bit seperti Windows XP 64, Vista dan Windows 7.
Sedangkan secara keseluruhan terdapat versi-versi seperti berikut ini :
Versi Compac, ini adalah versi “Tipis” dari semua versi yang ada, versi ini seperti versi desktop pada SQL Server 2000. Versi ini juga digunakan pada handheld device seperti Pocket PC, PDA, Smart Phone, Tablet PC.
Versi Express, ini adalah versi “Ringan” dari semua versi yang ada (tetapi versi ini berbeda dengan versi compact) dan paling cocok untuk latihan para pengembang aplikasi. Versi ini memuat Express Manager standar, integrasi dengan CLR dan XML(Wahana Komputer; 2010).
Gambar II.6. Jendela Connect to Server SQL Server 2008 Sumber : (Wahana Komputer; 2010)
40
II.8. Pengenalan Basis Data (Database) Database atau basis data adalah sekumpulan data yang memiliki hubungan secara logika dan diatur dengan susunan tertentu serta disimpan dalam media penyimpanan komputer. Data itu sendiri adalah representasi dari semua fakta yang ada pada dunia nyata. Database sering digunakan untuk melakukan proses terhadap data-data tersebut untuk menghasilkan informasi tertentu(Wahana Komputer; 2010: 24). Pada era kemajuan teknologi seperti sekarang ini, nilai informasi sangatlah penting, terlebih bagi kemajuan perusahaan. Oleh karena itu, penggunaan dan penguasaan database sangat penting. Dalam database ada sebutan-sebutan untuk untuk satuan data yaitu:
Karakter, ini adalah satuan data terkecil. Data terdiri atas susunan karakter yang pada akhirnya mewakili data data yang memiliki arti dari sebuah fakta.
Field, adalah kumpulan dari karakter yang mewakili fakta tertentu, misalnya seperti nama siswa, tanggal lahir,dan lain-lain.
Record, adalah kumpulan dari fiel. Pada record anda dapat menemukan banyak sekali informasi penting dengan cara mengombinasikan fiedl-field yang ada.
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 yang didalamnya terdapat berbagai tingkatan data yang telah disebutkan diatas.
41
File, adalah bentuk fisik dari penyimpanan data. File database berisi semua data yang telah disusun dan diorganisasikan sedemikian rupa sehingga memudahkan pemberian informasi.(Wahana Komputer; 2010).
II.8.1. Sistem Database Relasional SQL Server 2008 termasuk salah satu mesin database relasional. Ide tentang sistem database relasional pertama kali dicetus 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 pada tahun 1970. Sistem database relational berdasarkan pada metode matematika. Sistem ini menggantikan metode lama yang berdasarkan network dan hierarki. Metode relasional ini bekerja berdasarkan keterkaitan antartabel(Wahana Komputer; 2010). II.8.2. Query Language Seperti telah disinggung di atas bahwa untuk mendapatkan informasi tertentu dari sebuah server database user harus mengirimkan permintaan data lewat bahasa SQL yang dipahami server database. Demikian juga dengan SQL Server 2008 juga memiliki bahasa permintaan (SQL) sendiri yang disebut Transact-SQL. Dengan bahasa permintaan ini user dapat melakukan permintaan terhadap lebih dari satu / sekumpulan record pada database. Bukan itu saja, user dimungkinkan untuk melakukan permintaan data pada sekumpulan record-record baik yang ada pada satu tabel atau bahkan tabel yang lainnya dan itu dapat dilakukan hanya dengan menggunakan sebuah statement SQL(Wahana Komputer; 2010).
42
SQL dibedakan menjadi dua jenis subbahasa, yaitu : 1. Data Definition Language (DDL), bahasa ini digunakan untuk “membangun” struktur database. Contoh dari bahasa ini adalah CREATE, DROP, ALTER. Bahasa ini dikenal pada database, tabel, kolom (field), dan index. 2. Data Manipulation Langauge (DML), jenis SQL ini berfungsi untuk melakukan manipulasi terhadap data yang ada seperti record, field. Contoh perintahnya adalah DELETE, UPDATE, INSERT, dan yang paling terkenal adalah SELECT.
II.9. Normalisasi Data Normalisasi data adalah proses dimana tabel-tabel pada database dites dalam hal kesaling tergantungan diantara 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 ketergantunganya. 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 memilki hubungan yang unik dengan sebuah kolom kunci. Ada beberapa langkah dalam normalisasi tabel, yaitu:
Decomposition, decomposition adalah proses mengubah bentuk tabel supaya memenuhi syarat tertentu sebagai tabel yang baik. Dekomposisi dapat
43
dikatakan berhasil jika tabel yang dikenai dekomposisi bila digabungkan kembali dapat menjadi tabel awal sebelum di-dekomposisi.
Bentuk tidak normal, pada bentuk ini semua data yang ada pada tiap entity (diambil atributnya) masih ditampung dalam satu tabel besar. Data yang ada pada tabel ini masih ada yang redundansi dan ada juga yang kosong. Semuanya masih tidak tertata rapi.
Normal form pertama (1st Normal Form), pada tahap ini tabel didekomposisi dari tabel bentuk tidak normal yang kemudian dipisahkan menjadi tabel-tabel kecil yang memiliki kriteria tidak memilki atribut yang bernilai ganda dan komposit. Semua atribut harus bersifat atomik.
Normal form kedua (2
nd
Normal Form), pada tahap ini tabel dianggap
memenuhi normal kedua jika pada tabel tersebut semua atribut yang bukan kunci primer tabel tersebut. Dalam hal ini semua tabel diatas telah memenuhi bentuk normal form yang kedua. Adapun kunci primer masing-masing tabel adalah sebagai berikut:
-
Untuk tabel anggota kunci primernya kode_agt.
-
Untuk tabel buku kunci primernya kd_bk.
-
Untuk tabel transaksi kunci primernya no_trans.
Normal form ketiga (3rd Normal Form), setiap atribut pada tabel selain kunci primer atau kunci utama harus bergantung penuh pada kunci pertama. Bentuk normal ketiga biasanya digunakan bila masih ada tabel yang belum efisien. Biasanya penggunaan bentuk normal (normalisasi) hanya sampai pada bentuk ketiga, dan tabel yang dihasilkan telah memiliki kualitas untuk
44
membentuk sebuah database yang dapat diandalkan(Wahana Komputer; 2010).
II.10. ERD (Entity Relationship Diagram) Pada dasarnya ERD (Entity Relationship Diagram) adalah sebuah diagram yang secara konseptual memetakan hubungan antar penyimpanan pada diagram DFD diatas. ERD ini digunakan untuk melakukan pemodelan terhadap struktur data dan hubungannya. Penggunaan ERD ini dilakukan untuk mengurangi tingkat kerumitan penyusunan sebuah database yang baik. Entity dapat berarti sebuah objek yang dapat dibedakan dengan objek lainnya. Objek tersebut dapat memiliki komponen-komponen data (atribut atau field) yang membuatnya dapat dibedakan dari objek 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 berarti setiap entity memilki himpunan yang diperlukan sebuah primary key untuk membedakan anggota-anggota dalam himpuan tersebut(Wahana Komputer; 2010). Struktur logis (skema database) dapat ditunjukkan secara grafis dengan diagram ER yang dibentuk dari komponen – komponen berikut: II.10.1. Simbol-simbol ERD ( Entity Relationship Diagram ) Adapun simbol-simbol ERD ( Entity Relationship Diagram ) ditunjukkan pada tabel II.3
45
Tabel II.3. Simbol-simbol ERD ( Entity Relationship Diagram ) Simbol Entitas/ entity
Deskripsi Entitas merupakan data inti yang akan disimpan; bakal
Nama_entitas Atribut
tabel pada basis data
Field atau kolom data yang perlu disimpan dalam Nama_atribut
Atribut kunci primer
suatu entitas
Field atau kolom data yang butuh disimpan dalam
Nama_kunci Primer
suatu entitas dan digunakan sebagai kunci akses record yang diinginkan; biasanya berupa id
Atribut multinal/ multivalue
Field atau kolom data yang butuh disimpan dalam suatu entitas yang dapat memiliki nilai lebih dari satu
Nama_atribut Relasi
Relasi yang menghungkan antarentitas; relasi biasanya Nama_relasi
Asosiasi/ Association 1
diawali dengan kata kerja
Penghubung antar relasi dan entitas dimana di kedua 0..*
ujungnya memiliki multiplicity kemungkinan jumlah pemakaian
Sumber: (Rossa A.S-M. Shalahuddin;2011:49-50)
Atribut dapat memiliki sifat-sifat sebagai berikut:
Atomik, atomik adalah sifat dari atribut yang menggambarkan bahwa atribut tersebut berisi nilai yang spesifik dan tidak dapat dipecah lagi. Contoh dari sifat atomic adalah field status dari tabel karyawan yyang hanya berisi menikah atau single.
Multivalued, sifat ini menandakan atribut ini bisa memiliki lebih dari satu nilai untuk tiap entity tertentu. Misalnya adalah field hobi, hobi dari tiap karyawan mungkin dan hampir pasti lebih lebih dari satu.
46
Composite, atribut yang bersifat komposit adalah atribut yang nilainya adalah gabungan dari beberapa atribut yang bersifat atomik.
Ada beberapa derajat relasi yang dapat terjadi, yaitu:
One to one, menggambarkan bahwa antar 1 anggota entity A hanya dapat berhubungan dengan 1 anggota entity B. Biasanya derajat relasi ini digambarkan dengan simbol 1-1.
One to many, menggambarkan bahwa satu anggota entity A dapat memilki hubungan dengan lebih dari 1 anggota entity B. Biasanya derajat relasi ini digambarkan dengan simbol 1-N.
Many to many, menggambarkan bahwa lebih dari satu anggota A dapat memilki hubungan dengan lebih dari satu anggota entity B. Simbol yang digunakan adalah N-N.
II.11. Kamus Data Seperti halnya dengan kamus bahasa yang berfungsi menjelaskan lebih detail suatu kata maupun kalimat, kamus data yang digunakan dalam anilisis struktur dan desain sistem informasi juga merupakan suatu katalog yang menjelaskan lebih detail tentang data flow diagram yang mencakup proses, data flow dan data store. Kamus data dapat digunakan pada metodologi berorientasi data dengan menjelaskan lebih detail lagi hubungan entitas, seperti atribut-atribut entitas. Pada metodologi objek, kamus data dapat menjelaskan lebih detail atribut maupun metode atau service suatu objek. Apabila didefinisikan, kamus data adalah katalog data tentang fakta dan kebutuhan-kebutuhan informasi dari suatu
47
sistem informasi. Dengan kamus data sistem analis dapat mendefinisikan data yang mengalir pada sistem dengan lengkap. Kamus data dibuat dan digunakan baik pada tahap analisis maupun pada tahap perancangan sistem. Pada tahap analisis kamus data digunakan sebagai alat komunikasi antara sistem analis dengan user tentang data yang mengalir pada sistem yang mengalir tersebut serta informasi yang dibutuhkan oleh pemakai sistem (user). Sedangkan pada tahap perancangan sistem kamus data digunakan untuk merancang input, output/laporan
dan database. Kamus data dan
komponen-komponen lainnya yang dikumpulkan pada saat analisis sistem sangat dibutuhkan dalam suatu perancangan sistem. Selain dapat digunakan untuk menjelaskan suatu model sistem, kamus data juga berfungsi untuk menghindari penggunaan kata-kata yang sama, karena kamus data disusun menurut abjad. Kamus data dibuat berdasarkan arus data yang ada pada data flow diagram. Arus data yang ada di DFD bersifat global dan hanya menunjukkan nama arus datanya saja. Keterangan lebih lanjut tentang struktur dari suatu arus data di DFD dapat dilihat pada kamus data. Kamus data atau data dictionary harus dapat mencerminkan keterangan yang jelas tentang data yang dicatatnya. Untuk keperluan ini maka kamus data harus memuat hal-hal sebagai berikut : a.
Arus Data Arus data menunjukkan dari nama data mengalir dan kemana data akan menuju. Keterangan arus data ini perlu dicatat di kamus data untuk memudahkan mencari arus data di dalam data flow diagram (DFD).
48
b.
Nama Arus Data Karena kamus data dibuat berdasarkan arus data yang mengalir di data flow diagram, maka dari arus data juga harus dicatat dikamus data, sehingga mereka yang membaca DFD dan memerlukan penjelasan lebih lanjut tentang suatu arus data tertentu di data flow diagram dapat langsung mencarinya dengan mudah di kamus data.
c.
Tipe Data Telah diketahui bahwa arus data dapat mengalir dari hasil suatu proses ke proses yang lainnya. Data yang mengalir ini biasanya dalam bentuk laporan serta dokumen hasil cetakan komputer. Dengan demikina bentuk data yang mengalir dapat berupa dokumen dasar atau formulir, dokumen hasil cetakan komputer, laporan tercetak, tampilan layar di monitor, variabel, parameter dan field-field. Bentuk data seperti ini perlu dicatat di kamus data.
d.
Struktur Data Struktur data menunjukkan arus data yang dicatat pada kamus data yang terdiri dari item-item atau elemen-elemen data.
e.
Alias Alias atau nama lain dari data juga harus dituliskan. Alias perlu ditulis karena data yang sama mempunyai nama yang berbeda untuk orang atau departemen lainnya.
49
f.
Volume Volume yang perlu dicatat di dalam kamus data adalah volume rata-rata dan volume puncak dari arus data. Volume rata-rata menunjukkan banyaknya arus data yang mengalir dalam satu periode tertentu sementara volume puncak menunjukkan volume yang terbanyak.
g.
Periode Periode ini menunjukkan kapan terjadinya arus data. Periode perlu dicatat di kamus data karena dapat digunakan untuk mengidentifikasikan kapan input data harus dimasukkan kedalam sistem, kapan proses program harus dilakukan dan kapan laporan-laporan harus dihasilkan.
h.
Penjelasan Untuk lebih memperjelas makna dari arus data yang dicatat di kamus data, maka bagian penjelasan dapat diisi dengan keterangan-keterangan tertentu tentang arus data tersebut. Selain hal-hal tersebut diatas, kamus data juga mempunyai suatu bentuk
untuk memperasingkat arti/makna dari simbol yang dijelaskan, yang disebut notasi. Notasi ini lebih mudah dimengerti dari pada narasi. Notasi atau simbol yang digunakan dibagi menjadi dua macam, yaitu sebagai berikut : 1. Notasi Tipe Data Notasi ini digunakan untuk membuat spesifikasi format input maupun output suatu data. Notasi yang umum digunakan antar lain adalah : Notasi
Keterangan
X
Setiap karakter
50
9
Angka numerik
A
Karakter alphabet
Z
Angka dari nol ditampilakan sebagai spasi kosong
.
Titik, sebagai pemisah ribuan
,
Koma, sebagai pemisah pecahan
-
Hypen, sebagai tanda penghubung (contoh : 021-7500282)
/
Slash sebagai tanda pembagi (contoh : 24/10/1969)
2. Notasi Struktur Data Notasi ini digunakan untuk membuat spesifikasi elemen data di mana notasi yang umum digunakan adalah sebagai berikut : Notasi
Keterangan
=
Terdiri dari
+
And (dan)
0
Pilihan (boleh ya atau tidak)
{}
Iterasi / pengulangan proses
[]
Pilih salah satu pilihan
I
Pemisah pilihan didalam tanda []
*
Keterangan atau catatan
@
Petunjuk (key field)