BAB II TINJAUAN PUSTAKA
II.1. Sistem Pakar Sistem pakar adalah sistem sistem komputer yang ditujukan untuk meniru semua aspek (emulates) kemampuan pengambilan keputusan (Decision Making) seorang pakar (Sistem Pakar; Rika Rosnelly; 2012 : 2). Sistem pakar memanfaatkan secara maksimal pengetahuan khusus selayaknya seorang pakar untuk memecahkan masalah. Penyelesaian masalah dapat diuji dan hasilnya akan sesuai dengan hasil yang dikerjakan oleh seorang pakar. Menurut Rika Rosnelly (Sistem Pakar; Rika Rosnelly; 2012 : 2) adapun struktur sistem pakar dapat dilihat dari gambar II.1 : INTERFACE ENGINE WORKING MEMORY
KNOWLEDGE BASE AGENDA
(RULES)
EXPLANATION FACILITY
(FACTS)
KNOWLEDGE ACQUISITION FACILITY
USER INTERFACE
Gambar II.1 : Struktur Sistem Pakar Sumber : Rika Rosnelly (2012 : 13) 13
14
Komponen yang terdapat dalam struktur sistem pakar ini adalah knowledge base (rules), interference engine, working memory, explanation facility, knowledge acquisition facility, user interface. 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. Fakta merupakan informasi tentang objek dalam area permasalahan tertentu, sedangkan aturan merupakan informasi tentang cara bagaimana memperoleh fakta baru dari fakta yang telah diketahui. Pada struktur sistem pakar diatas, knowledge base disini untuk menyimpan pengetahuan dari pakar berupa rule / aturan (if < kondisi > then
atau dapat juga disebut condition-action rules). 2. Interface Engine (Mesin Inferensi) Mesin Inferensi merupakan otak dari sebuah sistem pakar dan dikenal juga dengan sebutan control structure (struktur control) atau rule intepreter (dalam sistem pakar berbasis kaidah). Mesin inferensi disini adalah processor pada sistem pakar yang mencocokkan bagian kondisi rule yang tersimpan di dalam knowledge base dengan fakta yang tersimpan di working memory. 3. Working Memory Berguna untuk menyimpan fakta yang dihasilkan oleh inference engine dengan penambahan parameter berupa derajat kepercayaaan atau dapat
15
juga dikatakan sebagai global database dari fakta yang digunakan oleh rule-rule yang ada. 4. Explanation facility Menyediakan kebenaran dari solusi yang dihasilkan kepada user (reasoning chai ). 5. Knowledge acquisition facility Meliputi
proses
pengumpulan,
pemindahan
dan
perubahan
dari
kemampuan pemecahan masalah seorang pakar atau sumber pengetahuan terdokumentasi ke program komputer, yang bertujuan untuk memperbaiki atau mengembangkan basis pengetahuan. 6. User Interface Mekanisme untuk memberi kesempatan kepada user dan sistem pakar untuk berkomunikasi. Antar muka menerima informasi dari pemakai dan mengubahnya ke dalam bentuk yang dapat diterima oleh sistem. Selain itu antarmuka menerima informasi dari sistem yang menyajikannya ke dalam bentuk yang dapat dimengerti oleh pemakai. Antar Muka Pengguna, sistem pakar menggantikan seorang pakar dalam situasi tertentu, maka sistem harus menyediakan pendukung yang diperlukan oleh pemakai yang tidak memahami masalah teknis. Sistem pakar juga menyediakan komunikasi antar sistem dan pemakaianya (user) yang disebut sebagai antar muka. Antar muka yang efektif dan ramah penggunaan (user-friendly) penting sekali terutama bagi pemakai yang tidak ahli dalam bidang yang diterapkan pada sistem pakar, sedangkan basis pengetahuan, merupakan kumpulan pengetahuan
16
bidang tertentu pada tingkatan pakar dalam format tertentu. Pengetahuan ini diperoleh dari akumulasi pengetahuan pakar dan sumber-sumber pengetahuan lainnya. Pada sistem pakar ini basis pengetahuan terpisah dengan mesin inferensi. Pemisahan ini bermanfaat untuk pengembangan sistem pakar secara leluasa disesuaikan
dengan
perkembangan
pengetahuan,
dan
mesin
inferensi
sesungguhnya adalah program komputer yang menyediakan metodologi untuk melakukan penalaran tentang informasi pada basis pengetahuan dan memeori kerja serta untuk merumuskan kesimpulan-kesimpulan. Komponen
ini
menyajikan
arahan-arahan
tentang
bagaimana
menggunakan pengetahuan dari sistem dengan membangun agenda yang mengelola dan mengontrol langkah-langkah yang diambil untuk menyelesaikan masalah ketika dilakukan konsultasi. Memori kerja, merupakan bagian sistem pakar yang menyimpan fakta- fakta yang diperoleh saat dilakukan proses konsultasi, fakta-fakta inilah yang nantinya akan diolah oleh mesin inferensi berdasarkan pengetahuan untuk menentukan suatu keputusan pemecahan masalah, dan fasilitas penjelasan dapat membrikan informasi kepada pemakai mengenai jalannya penalaran sehingga dihasilkan suatu keputusan. Tujuan adanya fasilitas penjelasan dalam sistem pakar antara lain membuat sistem menjadi lebih cerdas, menunjukkan adanya proses analisa dan yang tidak kalah pentingnya adalah memuaskan psikologis pemakai, sedangkan akuisisi pengetahuan adalah proses pengumpulan, perpindahan, dan transformasi dari keahlian/kepakaran pemecahan masalah yang berasal dari beberapa sumber pengetahuan ke dalam bentuk yang dimengerti oleh komputer.
17
Dengan demikian maka seorang pakar akan dengan mudah menambahkan pengetahuan ataupun kaidah baru pada sistem pakar. Untuk menjamin bahwa pengetahuan pada sistem pakar up to date dan valid, maka fasilitas akuisisi pengetahuan hanya bisa diakses oleh pakar, pengguna awam tidak berhak memakai fasilitas akusisi pengetahuan. (Rika Rosnelly; 2012 : 15). II.2. Certainty Factor Dalam aplikasi sistem pakar terdapat suatu metode untuk menyelesaikan masalah ketidakpastian data, salah satu metode yang dapat digunakan adalah faktor
kepastian
(certainty
factor)
(Kusrini;
2008).
Faktor
keyakinan
diperkenalkan oleh Shortliffe Buchanan dalam pembuatan MYCIN (Wesley). Certainty factor (CF) merupakan nilai parameter klinis yang diberikan MYCIN untuk menunjukan besarnya kepercayaan, ada 2 macam faktor kepastian yang digunakan, yaitu faktor kepastian yang diisikan oleh pakar bersama dengan aturan dan faktor kepastian yang diberikan oleh pengguna, faktor kepastian yang diisikan oleh pakar menggambarkan kepercayaan pakar terhadap hubungan antara antacedent dan konsekuen, sementara itu faktor kepastian dari pengguna menunjukan besarnya kepercayaan terhadap keberadaan masing-masing elemen dalam antacedent. (Jurnal Sistem Diagnosa Penyakit Diabetes Mellitus Menggunakan Metode Certainty Factor; Budi Cahyo Saputro; Universitas Kristen Duta Wacana; 2010). II.2.1. Penerapan Metode Certainty Factor Certainty factor diperkenalkan oleh Shortliffe Buchanan dalam pembuatan MYCIN (Wesley 1984). Certainty factor (CF) merupakan nilai parameter klinis
18
yang diberikan MYCIN untuk menunjukkan besarnya kepercayaan. Certainty factor didefinisikan sebagai berikut (Giarattano dan Riley, 1994): CF(H,E) = MB(H,E) - MD(H,E) CF(H,E) : certainty factor dari hipotesis H yang dipengaruhi oleh gejala (evidence) E. Besarnya CF berkisar antara -1 sampai dengan 1. Nilai -1 menunjukan ketidakpercayaan mutlak sedangkan nilai 1 menunjukan kepercayaan mutlak. MB(H,E) : ukuran kenaikan kepercayaan (measure of increased belief) terhadap hipotesis H yang dipengaruhi oleh gejala E. MD(H,E) : ukuran kenaikan ketidakpercayaan (measure of increased disbelief) terhadap hipotesis H yang dipengaruhi oleh gejala E. (Jurnal Sistem Diagnosa Penyakit Diabetes Mellitus Menggunakan Metode Certainty Factor; Budi Cahyo Saputro; Universitas Kristen Duta Wacana; 2010). II.2.2. Menentukan CF Paralel Menurut Kusrini (2008) pengertian mengenai certainty factor paralel dan contoh penerapannya adalah sebagai berikut. Certainty factor paralel merupakan CF yang diperoleh dari beberapa premis pada sebuah aturan. Besarnya CF paralel dipengaruhi oleh CF user untuk masing-masing premis dan operator dari premis. Rumus untuk masingmasing operator adalah sebagai berikut : CF (x Dan y) = Min(CF(x),CF(y)) CF (x Atau y) = Max(CF(x),CF(y)) CF (Tidak x) = -CF(x)
19
Tabel II.1 Nilai Certainty Tern Paralel MD/MB -0,1 / 01.0
Certain Term 0 - 0.2 Tidak Tahu/Tidak Ada 0.3 - 0.4 Mungkin 0 - 0.6 Kemungkinan Besar 0.7 - 0.8 Hampir Pasti 0.9 - 1.0 Pasti
(Jurnal Sistem Diagnosa Penyakit Diabetes Mellitus Menggunakan Metode Certainty Factor; Budi Cahyo Saputro; Universitas Kristen Duta Wacana; 2010). II.2.3. Menentukan CF Gabungan CF gabungan merupakan CF akhir dari sebuah calon konklusi. CF ini dipengaruhioleh semua CF paralel dari aturan yang menghasilkan konklusi tersebut CF gabungan diperlukan jika suatu konklusi diperoleh dari beberapa aturan sekaligus. CF akhir dari satu aturan dengan aturan yang lain digabungkan untuk mendapatkan nilai CF akhir bagi calon konklusi tersebut. (Jurnal Sistem Diagnosa Penyakit Diabetes Mellitus Menggunakan Metode Certainty Factor; Budi Cahyo Saputro; Universitas Kristen Duta Wacana; 2010). II.3. Penyakit Kulit Sapi Berbagai jenis penyakit kulit sapi yang disebabkan oleh virus secara primer tidak menyebabkan sakit atau hanya memperlihatkan gejala ringan. Sebaliknya, dapat menyebabkan penyakit atau mematikan. Adapun jenis penyakit yang didapatkan dari hasil riset dan buku berupa : (Panduan Lengkap Sapi Potong; Endang Purbowanti dan Edy Rianto; 2008), (Berternak Sapi Perah dan Sapi Perah; Erif Kemal Syarif dan Bagus Harianto; 2011). Berikut ini adalah jenis-jenis penyakit pada sapi seperti :
20
1. Pityriasis (ketombe) Pityriasis sering disebut ketombe, penyakit ini terbentuk karena kesalahan gizi atau nutrisi, penyakit parasit kulit dan jamur. Pityriasis merupakan perubahan patologik epidermis, ditandai dengan pembentukan ketombe pada permukaan kulit yang bentuknya mirip reruntuhan kulit ari beras (bekatul, jawa) atau mirip sisik lembut, berwarna abu abu. 2. Parakeratotosis Parakeratosis merupakan gangguan patologik kulit yang ditandai dengan terjadinya proses keratinasi tidak sempurna dari sel-sel lapisan tanduk (stratum corneum) kulit. 3. Hiperkeratosis Hiperkeratosis merupakan gangguan kulit yang ditandai dengan penebalan lapisan kulit tanduk (stratum corneum) secara berlebihan. Hiperkeratosis sering terjadi karena disebabkan karena keracunan warangan (As) kronik, dan keracunan senyawa benzen-klorida, atau minyak pelumas bekas. 4. Skabies Skabies adalah penyakit yang disebabkan oleh tangau terkecil dari ordo Acarina, yaitu Sarcoptes scabiei var, Canis. Tangau ini biasa hidup pada bagian tubuh sapi yang jarang atau sedikit rambutnya. 5. Oedema Angioneurotik (Angioneurotik edema) Oedema Angioneurotik merupakan gangguan kulit yang ditandai dengan terjdinya oedema secara mendadak yang disebabkan alergi, Alergi akibat dari protein asing bagi tubuh dapat berasal dari pakan, atau bahan lain yang memasuki
21
tubuh akan bereaksi dengan antibodi hingga terjadi kompleks antigen antibodi yang bisa menimbulkan kerusakan jaringan hingga terjasi oedema di satu atau beberapa organ tubuh. Oedema Angioneurotik sering dijumpai di daerah kepala, moncong, palbera, vulva, mata. 6. Sela Karang (saccharomycosis) Sela karang merupakan penyakit menular yang bersifat kronik ditandai dengaan radang bernanah pada saluran maupun simpul-simpul limfe, yang menyebabkan ulserasi pada kulit di atas saluran limfe tempat jamur bersarang. Kadang juga menyebabkan lesi pada selaput lendir hidung, radang mata maupun radang paru (Jungerman dan Schwartzan 1972). Penyebab Sela karang adalah jamur yang bersifat dimorfik Histoplasma (atau Cryptococcus, Blastomyces, zymonema) farciminosum. 7. Dermatitis (radang kulit) Dermatitis (radang kulit) adalah proses radang yang mengenai lapisanlapisan kulit, dermis dan epidermis. Radang kulit dapat berlangsung secara akut atau kronik. Pada yang akut tanda-tanda radang yang berbentuk panas, hiperemi, adanya rasa nyeri adanya busung radang serta eksudasi selalu ditemuka. Bagian kulit yang mengalami radang juga akan mengalami gangguan dalam fungsi normalnya. 8. Luka bakar Luka bakar merupakan bentuk radang yang disebabkan karena panas yang berlebihan yang mengenai kulit dalam waktu singkat. Pada radang yang disebabkan oleh api, atau lintasan petir, luka bakar secara akademik dibagi
22
menjadi dalam 4 derajat, yaitu derajat 1 sampai 4 atau dikenal istilah combustio erythematosa, combustio bollosa, combustio escharotika dan combustio yang disertai karbonisasi. 9. Kudis Kudis adalah penyakit kulit yang disebabkan oleh jamu, tungau. Tungau bersifat parasitik dan mampu menyerang spesies hewan ternak dan manusia. Nonmenklatur sarkoptes didasrakan pada spesies hospes yang diserangnya, akan tetapi ada juga yang menganggap Tungau tersebut hakikatnya hanya satu spesies dan dapat berpindah dari hospes satu ke yang lain. Tungau sarkoptes berupa parasit yang berukuran kecil sekali, berbentuk bulat, pipih dengan ukuran 300-600μ pada yang betina, dan 200-240μ x 150-200 μ pada yang jantan. 10. Kutu Busuk (Food Rot) Penyakit yang disebabkan oleh kuman Fusimormis necrophorus, kuman ini bisa bertahan hidup bertahun-tahun pada celah kuku sapi dan tubuh. (Berternak Sapi Perah dan Sapi Perah; Erif Kemal Syarif dan Bagus Harianto; 2011 : 72). 11. Leptospirosis Penyakit ini sebabkan oleh leptospira panorma, leptospira bratislava, leptospira gripothyposa, leptospira conicola, leptospira icterohaemorrhagine, dan leptospira hardjo. Bakteri ini berbentuk spiral dan menular melalui kulit terbuka/selaput lendir. (Panduan Lengkap Sapi Potong; Endang Purbowanti dan Edy Rianto; 2008 : 201).
23
II.4. Entity-Relationship Diagram (ERD) Menurut (Pressman; 2002), Entity Relationship Diagram (ERD) menggambarkan hubungan antara objek data. ERD adalah notasi yang digunakan untuk melakukan aktivitas pemodelan data. Atribut dari masing-masing objek data yang ditulis pada ERD dapat digambarkan dengan deskripsi objek data. (Jurnal Sistem Pakar Diagnosa Kerusakan Pada Printer Dengan Menggunakan Metode Certainty Factor; Dewi Anggraeni; Universitas Islam Negeri Sunan Gunung Djati Bandung : 2013). ERD memungkinkan perekayasa perangkat lunak mengidentifikasi entitas dan hubungannya dengan menggunakan notasi grafis. Pada konteks analisis terstruktur, ERD menetapkan semua data yang dimasukkan, disimpan, ditransformasikan, dan diproduksi pada suatu aplikasi. Pada dasarnya ada 3 macam simbol yaitu: 1.
Entitas (Entity)
Entitas adalah suatu objek yang dapat diidentifikasikan dalam lingkungan pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang akan dibuat. Entitas digambatkan dengan empat persegi panjang dan didalamnya dicantumkan nama entitasnya. 2.
Atribut
Atribut adalah identitas atau karakteristik yang melekat pada entitas. Isi atribut mempunyai sesuatu yang dapatt diidentifikasi entity satu dengan yang lain, atribut diwakili oleh simbol ellips dan didalamnya ditulis nama atributnya.
24
3.
Hubungan (Relational)
Hubungan (realitional) adalah hubungan antar entitas pada himpunan entitas yang satu dengan yang lain. Hubungan digambarkan dengan intan atau belah ketupat dan nama hubungan dapat ditulis didalam intan. 4.
Derajat Relasi (Cardinality) Derajat relasi atau cardinality adalah hubungan maksimum yang terjadi
antara satu sistem dengan entitas yang lain. Pada derajat relasi ada 3 hubungan yaitu: a.
Satu ke satu (One to one) Yaitu satu entitas hanya memiliki satu hubungan dengan entitas yang lainnya. Pada Gambar II.2 ini merupakan gambar cardinality one to one.
Gambar II.2 : Cardinality One to One Sumber : (Pressman : 2002) b.
Satu ke banyak (One to many) Yaitu entitas memiliki hubungan lebih dari satu dengan entitas yang lain. Pada Gambar II.3 merupakan gambar cardinality one to many
25
Gambar II.3 : Cardinality One to Many Sumber : (Pressman : 2002) c.
Banyak ke banyak (Many to many) Yaitu banyak entitas memiliki banyak hubungan dengan entitas yang lain. Pada Gambar II.4 merupakan gambar cardinality many to many
Gambar II.4 : Cardinality Many to Many Sumber : (Pressman : 2002)
II.5. Database
Database (basis data) adalah kumpulan informasi yang disimpan di dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil kueri (query) basis data disebut sistem manajemen basis data (database management system, DBMS). Sistem basis data dipelajari dalam ilmu informasi. (Jurnal Sistem Pakar Diagnosa Kerusakan Pada Printer Dengan Menggunakan Metode Certainty Factor; Dewi Anggraeni; Universitas Islam Negeri Sunan Gunung Djati Bandung: 2013).
26
II.5.1. Fungsi DBMS
1. Memanipulasi data 2. Keamanan dan integritas data 3. Security dan integritas data 4. Recovery atau perbaikan dan concurency data 5. Data dictionary 6. Unjuk kerja atau performance
Peralatan untuk menentukan pendekatan database disebut DBMS merupakan software dan hardware yang kusus didesain untuk melindungi memanage database. (Jurnal Sistem Pakar Diagnosa Kerusakan Pada Printer Dengan Menggunakan Metode Certainty Factor; Dewi Anggraeni; Universitas Islam Negeri Sunan Gunung Djati Bandung: 2013).
Dengan menggunakan DBMS, maka dapat:
1. Mendefinisikan data dan hubungannya. 2. Mendokumentasikan struktur dan definisi data. 3. Menggambar, mengorganisasikan dan menyimpan data untuk akses yang selektif atau dipilih dan efisien. 4. Hubungan yang sesuai antara user dengan sumber daya data. 5. Perlindungan terhadap sumber daya akan terjamin, dapat diandalkan, konsisten dan benar.
27
6. Memisahkan masalah logical dan phsycal sehingga merubah implementasi database secara fisik tidak menghendaki user untuk merubah maksud data (Logical). 7. Menentukan pembagian data kepada para user untuk mengakses secara concurent pada sumber daya data.
II.6. PHP PHP (Hypertext Preprocessor) adalah bahasa program yang digunakan untuk membuat aplikasi berbasis web (website, blog, atau aplikasi web), dan pemograman (interpreter) proses penerjemahan baris sumber menjadi kode mesin yang dimengerti komputer secara langsung pada saat baris kode dijalankan, PHP juga termasuk bahasa program yang bisa berjalan di sisi server, yang sering disebut side server langguange, jadi program yang dibuat kode PHP tidak bisa berjalan keculi dijalankan pada server web. (Dasar Pemograman Web PHPMySQL dengan Dreamweaver; Bunafit Nugroho; 2013: 153).
II.7. MySQL
MySQL merupakan software atau program database server, database sebuah basis data yang mengandung satu atau beberapa kolom. Tabel terdiri atas sejumlah basis dan setiap baris mengandung satu atau beberapa kolom. Didalam PHP telah menyediakan fungsi untuk koneksi ke basis data dengan sejumlah fungsi untuk pengaturan baik menghubungkan maupun memutuskan koneksi server database MySQL sebagai sarana untuk mengumpulkan informasi. (Dasar
28
Pemograman Web PHP-MySQL dengan Dreamweaver; Bunafit Nugroho; 2013: 26).
MySQL adalah sistem manajemen basis data relasi yang bersifat terbuka atau open source. Sistem manajemen basis data ini adalah hasil pemikiran dari Michael “Monty” Widenius, David Axmark, dan Allan Larson pada tahun 1995. Tujuan awal ditulisnya program MySQL adalah untuk mengembangkan aplikasi web. MySQL menggunakan bahasa standar SQL (Structure Query Language) sebagai bahasa interaktif dalam mengelola data. Perintah SQL sering juga disebut Query. (Dasar Pemograman Web PHP-MySQL dengan Dreamweaver; Bunafit Nugroho; 2013: 26).
II.8. Normalisasi
Menurut Samiaji Sarosa (Sistem Informasi Akuntansi; 2010: 5), Normalisasi adalah teknik yang dirancang untuk merancang tabel basis data relasional untuk meminimalkan duplikasi data dan menghindarkan basis data tersebut anomali. Suatu basis data dikatakan tidak normal jika terjadi 3 (tiga) anomali berikut : 1. Insertion Anomaly Anomali yang terjadi jika ada data yang tidak bisa disisipkan kedalam table. 2. Update/Modification anomaly Anomali yang terjadi jika ada perubahan pada suatu item data maka harus mengubah lebih dari satu baris data.
29
3. Deletion anomaly Anomali yang terjadi apabila jika ada data satu dihapus pada satu tabel akan menghapus data tentang keberadaan suatu anggota entitas. Langkah-langkah normalisasi sampai pada bentuk 3NF adalah sebagai berikut : a. First Nornal Form (1NF) Untuk menjadi 1NF suatu table harus memenuhi dua syarat. Syarat pertama tidak ada kelompok data atau field yang berulang. Syarat kedua harus ada primary key (PK) atau kunci unik, atau kunci yang membedakan satu bari dengan baris yang lain dalam satu table. Pada dasarnya sebuah table selamat tidak ada kolom yang sama merupakan bentuk table dengan 1NF. b. Second Nornal Form (2NF) Untuk menjadi 2NF suatu table harus berada dalam kondisi 1NF dan tidak memilik partial dependencies. Partial dependencies adalah suatu kondisi jika atribut non kunci (Non PK) tergantung sebagian tetapi bukan seluruhnya pada PK. c. Third Nornal Form (3NF) Untuk menjadi 3NF suatu table harus berada dalam kondisi 2NF dan tidak memilik transitive dependencies. Transitive dependencies adalah suatu kondisi dengan adanya ketergantunga fungsional antara 2 atau lebih atribut non kunci (Non PK).
30
II.9. Unified Modeling Language (UML) Unified Modelling Language (UML) adalah
suatu alat untuk mem
visualisasikan dan mendokumentasikan hasil analisa dan desain yang berisi sintak dalam memodelkan sistem secara visual (Braun, et. al. 2001). Juga merupakan satu kumpulan konvensi pemodelan yang digunakan untuk menentukan atau menggambarkan sebuah sistem software yang terkait dengan objek (Whitten, et.al. 2004). (Jurnal Memahami Penggunaan UML (Unified Modelling Language); FMIPA Universitas Mulawarman; Havilludin: 2011). II.9.1. Tujuan Pemanfaatan UML Tujuan dari penggunaan diagram seperti diungkapan oleh Schmuller J. (2004), “The purpose of the diagrams is to present multiple views of a system; this set of multiple views is called a model”. (Jurnal Memahami Penggunaan UML (Unified Modelling Language); FMIPA Universitas Mulawarman; Havilludin: 2011), Berikut tujuan utama dalam desain UML adalah : 1. Menyediakan bagi pengguna (analisis dan desain sistem) suatu bahasa pemodelan visual yang ekspresif sehingga mereka dapat mengembangkan dan melakukan pertukaran model data yang bermakna. 2. Menyediakan mekanisme yang spesialisasi untuk memperluas konsep inti. 3. Karena merupakan bahasa pemodelan visual dalam proses pembangunannya maka UML bersifat independen terhadap bahasa pemrograman tertentu. 4. Memberikan dasar formal untuk pemahaman bahasa pemodelan. 5. Mendorong pertumbuhan pasar terhadap penggunaan alat desain sistem yang
31
berorientasi objek (OO). 6. Mendukung konsep pembangunan tingkat yang lebih tinggi seperti kolaborasi, kerangka, pola dan komponen terhadap suatu sistem. 7. Memiliki integrasi praktik terbaik. II.9.2. Diagram-Diagram UML Struktur Diagram Menggambarkan elemen dari spesifikasi dimulai dengan kelas, obyek, dan hubungan mereka, dan beralih ke dokumen arsitektur logis dari suatu sistem (Sugrue J : 2009), Struktur diagram dalam UML terdiri atas : 1. Class diagram Class diagram menggambarkan struktur statis dari kelas dalam sistem anda dan menggambarkan atribut, operasi dan hubungan antara kelas. Class diagrammembantu dalam memvisualisasikan struktur kelas - kelas dari suatu sistem dan merupakan tipe diagram yang paling banyak dipakai. Selama tahap desain, class diagram berperan dalam menangkap struktur dari semua kelas yang membentuk arsitektur sistem yang dibuat. Class memiliki tiga area pokok : 1. Nama (dan stereotype) 2. Atribut 3. Metoda
32
. Gambar II.5 : Notasi class diagram Sumber : (Sugrue J : 2009) 2. Object diagram Object diagram menggambarkan kejelasan kelas dan warisan dan kadang kadang diambil ketika merencanakan kelas, atau untuk membantu pemangku kepentingan non - program yang mungkin menemukan diagram kelas terlalu abstrak. Berikut notasi object diagram.
Gambar II.6 : Notasi object diagram Sumber : (Sugrue J : 2009)
33
3. Component diagram Component diagram menggambarkan struktur fisik dari kode, pemetaan pandangan logis dari kelas proyek untuk kode aktual di mana logika ini dilaksanakan.
Gambar II.7 : Notasi component diagram Sumber : (Sugrue J : 2009) 4. Deployment diagram (Collaboration diagram in version 1.x) Deployment diagram memberikan gambaran dari arsitektur fisik perangkat lunak, perangkat keras, dan artefak dari sistem. Deployment diagram dapat dianggap sebagai ujung spektrum dari kasus penggunaan, menggambarkan bentuk fisik dari sistem yang bertentangan dengan gambar konseptual dari pengguna dan perangkat berinteraksi dengan sistem.
Gambar II.8 : Notasi deployment diagram Sumber : (Sugrue J : 2009)
34
5. Composite structure diagram Sebuah diagram struktur komposit mirip dengan diagram kelas, tetapi menggambarkan bagian individu, bukan seluruh kelas. Kita dapat menambahkan konektor untuk menghubungkan dua atau lebih bagian dalam atau ketergantungan hubungan asosiasi.
Gambar II.9 : Notasi composite diagram Sumber : (Sugrue J : 2009) 6. Package diagram Paket diagram biasanya digunakan untuk menggambarkan tingkat organisasi yang tinggi dari suatu proyek software. Atau dengan kata lain untuk menghasilkan diagram ketergantungan paket untuk setiap paket dalam Pohon Model.
Gambar II.10 : Notasi package diagram
Sumber : (Sugrue J : 2009)
35
7. Use case diagram Diagram yang menggambarkan actor, use case dan relasinya sebagai suatu urutan tindakan yang memberikan nilai terukur untuk aktor. Sebuah use case digambarkan sebagai elips horizontal dalam suatu diagram UML use case. Use Case memiliki dua istilah 1. System use case; interaksi dengan sistem. 2. Business use case; interaksi bisnis dengan konsumen atau kejadian nyata
Gambar II.11 : Notasi use case diagram Sumber : (Sugrue J : 2009) 8. Activity diagram Menggambarkan aktifitas-aktifitas, objek, state, transisi state dan event. Dengan kata lain kegiatan diagram alur kerja menggambarkan perilaku sistem untuk aktivitas.
36
Gambar II.12 : Notasi activity diagram Sumber : (Sugrue J : 2009)