BAB II LANDASAN TEORI 2.1
SISTEM PAKAR Sistem pakar merupakan cabang dari Artificial Itellegence (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. Sampai saat ini banyak sistem pakar yang dibuat, seperti MYCIN untuk diagnosis penyakit, DENDRAL untuk mengidentifikasi struktur molekul campuran yang tak dikenal, XCON dan XSEL untuk membantu konfigurasi sistem komputer besar, SOPHIE untuk analisis sirkuit elektronik, Prospector digunakan di bidang geologi untuk membantu mencari dan menemukan deposit, FOLIO digunakan untuk membantu memberikan keputusan bagi seorang manajer dalam stok dan investasi, DELTA dipakai untuk pemeliharaan lokomotif listrik diesel, dan sebagainya (Sutojo et al, 2011 : 159). 2.2
PENGERTIAN SISTEM PAKAR Istilah sistem pakar berasal dari istilah knowledge-based expert system. Istilah
knowledge-based expert system muncul karena untuk memasukkan masalah, sistem pakar menggunakan pengetahuan seorang pakar yang dimasukkan ke dalam komputer. Seseorang yang bukan pakar menggunakan sistem pakar untuk meningkatkan kemampuan pemecahan masalah, sedangkan seorang pakar menggunakan sistem pakar untuk knowledge assistant (Sutojo et al, 2011 : 160). Sistem pakar adalah sebuah sistem yang menggunakan pengetahuan manusia dimana pengetahuan tersebut dimasukkan ke dalam sebuah komputer dan kemudian digunakan untuk menyelesaikan masalah-masalah yang biasanya
membutuhkan kepakaran atau
keahlian manusia (Turban, 2001). Sistem pakar adalah program komputer yang mempresentasikan dan melakukan penalaran dengan pengetahuan beberapa pakar untuk memecahkan masalah atau memberikan saran (Jackson, 1999). Sistem pakar adalah program yang berbasiskan pengetahuan yang menyediakan solusi ‘kualitas pakar’ kepada masalah-masalah dalam bidang (domain) yang spesifik (Luger dan Stubblefield, 1993).
6
http://digilib.mercubuana.ac.id/
7
Gambar 2.1 Konsep Fungsi Sistem Pakar (Arhami, 2011) 2.3
CIRI CIRI SISTEM PAKAR Ciri-ciri sistem pakar adalah sebagai berikut (Sutojo et al, 2011) :
a.
Terbatas pada domain keahlian tertentu.
b.
Mampu memberikan penalaran untuk data-data yang tidak lengkap atau tidak pasti.
c.
Mampu menjelaskan alasan-alasan yang diberikannya dengan cara yang dapat dipahami.
d.
Bekerja berdasarkan kaidah atau rule tertentu.
e.
Mudah dimodifikasi.
f.
Basis pengetahuan dan mekanisme inferensi terpisah.
g.
Keluarannya atau output bersifat anjuran.
h.
Sistem dapat mengaktifkan kaidah secara searah sesuai, dituntunoleh dialog dengan pengguna.
2.4
KONSEP DASAR SISTEM PAKAR Konsep dasar sistem pakar meliputi :
a.
Kepakaran (Expertise) Kepakaran merupakan suatu pengetahuan yang diperoleh dari pelatihan,
membaca dan pengalaman. Kepakaran memungkinkan para ahli
dapat mengambil
keputusan lebih cepat dan lebih baik daripada seorang yang bukan pakar.
http://digilib.mercubuana.ac.id/
8
Kepakaran meliputi pengetahuan tentang (Sutojo et al, 2011) : 1.
Fakta-fakta tentang bidang permasalahan tertentu.
2.
Teori-teori tentang bidang permasalahan tertentu.
3.
Aturan-aturan dan prosedur-prosedur menurut bidang permasalahan umumnya.
4.
Aturan heuristic yang harus dikerjakan dalam suatu situasi tertentu.
5.
Strategi global untuk memecahkan permasalahan.
6.
Pengetahuan tentang pengetahuan (meta knowledge).
b.
Pakar (Expert)
Pakar adalah seseorang yang mempunyai pengetahuan, pengalaman, dan metode khusus serta mampu menerapkannya untuk memecahkan masalah atau memberi nasihat. Seorang pakar harus mampu
menjelaskan dan mempelajari
hal - hal baru yang
berkaitan dengan topik permasalahan, jika perlu harus mampu menyusun kembali pengetahuan-pengetahuan yang didapatkan dan dapat memecahkan aturan-aturan serta menentukan relevansi kepakarannya. Seorang pakar mampu melakukan
kegiatan-
kegiatan berikut (Sutojo et al, 2011) : 1.
Mengenali dan memformulasikan permasalahan.
2.
Memecahkan permasalahan secara cepat dan tepat.
3.
Menerangkan pemecahannya.
4.
Belajar dari pengalaman.
5.
Merestrukturisasi pengetahuan.
6.
Memecahkan aturan-aturan.
7.
Menentukan relevansi.
c.
Pemindahan kepakaran (Transferring Expertise) Tujuan dari sistem pakar adalah memindahkan kepakaran dari seorang pakar ke
dalam komputer, kemudian ditransfer kepada orang lain yang bukan pakar. Proses ini melibatkan empat kegiatan, yaitu (Sutojo et al, 2011) : 1.
Akusisi pengetahuan (dari pakar atau sumber lain).
2.
Representasi pengetahuan (pada komputer).
3.
Inferensi pengetahuan.
4.
Pemindahan pengetahuan ke pengguna.
d.
Inferensi (Inferencing) Inferensi adalah sebuah prosedur (program) yang mempunyai kemampuan dalam
melakukan penalaran. Inferensi ditampilkan pada suatu komponen yang disebut mesin http://digilib.mercubuana.ac.id/
9
inferensi yang mencakup prosedur-prosedur mengenai pemecahan masalah. Semua pengetahuan yang dimiliki oleh seorang pakar disimpan pada basis pengetahuan oleh sistem pakar. Tugas mesin inferensi adalah mengambil kesimpulan berdasarkan basis pengetahuan yang dimilikinya (Sutojo et al, 2011). e.
Aturan – Aturan (Rule) Kebanyakan software sistem pakar komersial adalah sistem yang berbasis rule
(rule based systems), yaitu pengetahuan disimpan terutama dalam bentuk rule, sebagai prosedur-prosedur pemecahan masalah (Sutojo et al, 2011). f.
Kemampuan Menjelaskan (Explanation Capability) Fasilitas lain dari sistem pakar adalah kemampuannya untuk menjelaskan saran
atau rekomendasi yang diberikan oleh sistem pakar.
Penjelasan dilakukan dalam
subsistem yang disebut subsistem penjelasan (explanation). Bagian dari sistem ini memungkinkan sistem untuk memeriksa penalaran yang dibuatnya sendiri dan menjelaskan operasi operasinya (Sutojo et al, 2011).
2.5
STRUKTUR SISTEM PAKAR Ada dua bagian penting dari sistem pakar, yaitu lingkungan pengembangan
(development environment) dan lingkungan konsultasi (consultation environment). Lingkungan pengembangan digunakan oleh pembuat sistem pakar untuk membangun komponen-komponenya dan memasukkan pengetahuan ke dalam knowledge base (basis pengetahuan). Lingkungan konsultasi digunakan oleh pengguna untuk berkonsultasi sehingga pengguna mendapatkan pengetahuan dan nasihat dari sistem pakar layaknya berkonsultasi dengan sistem pakar (Sutojo et al, 2011).
http://digilib.mercubuana.ac.id/
10
Gambar 2.2 Stuktur Sistem Pakar (Arhami : 2011)
Keterangan gambar: : Pemisah antara lingkungan konsultasi dan pengembang. : Langsung. : Komunikasi dua arah. : Tidak langsung. Keterangan : a.
Akusisi Pengetahuan Subsistem ini digunakan untuk memasukkan pengetahuan dari seorang pakar
dengan cara merekayasa pengetahuan agar bisa diproses oleh computer dan menaruhnya ke dalam basis pengetahuan dengan format tertentu (dalam bentuk representasi pengetahuan). Sumber-sumber pengetahuan bisa diperoleh dari pakar, buku, dokumen multimedia, basis data, laporan riset khusus, dan informasi yang terdapat di web (Sutojo http://digilib.mercubuana.ac.id/
11
et al, 2011). b.
Basis Pengetahuan (Knowledge base) Basis pengetahuan mengandung pengetahuan yang diperlukan untuk memahami,
merumuskan dan menyelesaikan malasah. Basis pengetahuan terdiri dari dua elemen dasar, yaitu (Sutojo et al, 2011) : 1.
Fakta, misalnya situasi, kondisi atau permasalahan yang ada.
2.
Aturan (rule), untuk mengarahkan penggunaan pengetahuan dalam memecahkan masalah.
c.
Mesin Inferensi (Inference Engine) Mesin inferensi adalah sebuah program yang berfungsi untuk memandu proses
penalaran terhadap suatu kondisi berdasarkan pada basis pengetahuan yang ada, memanipulasi dan mengarahkan kaidah, model dan fakta yang disimpan 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 teknink tersebut (Sutojo et al, 2011).
d.
Antarmuka Pemakai (User Interface) Digunakan sebagai media komunikasi antara pengguna dan sistem pakar. Komunikasi
ini paling bagus bila disajikan dalam bahasa alami (natural
language) dan dilengkapi dengan
grafik menu dan formulir elektronik. Pada bagian ini akan terjadi dialog antara system pakar dengan pengguna. (Sutojo et al, 2011).
e.
Daerah kerja (Blackboard) Untuk merekam hasil sementara yang akan dijadikan sebagai keputusan dan untuk
menjelaskan sebuah masalah yang sedang terjadi, sistem pakar membutuhkan blackboard, yaitu area pada memori yang berfungsi sebagai basis data. Tiga tipe keputusan yang dapat direkam pada blackboard yaitu (Sutojo et al, 2011) : 1.
Rencana : bagaimana menghadapi masalah
2.
Agenda : aksi-aksi potensial yang sedang menunggu untuk dieksekusi
3.
Solusi : calon aksi yang akan dibangkitkan.
f.
Sistem perbaikan pengetahuan (knowledge refining system) Kemampuan memperbaiki pengetahuan (knowledge refining system)
http://digilib.mercubuana.ac.id/
dari seorang
12 pakar diperlukan untuk menganalisis pengetahuan belajar dari kesalahan masa lalu, kemudian memperbaiki pengetahuannya sehingga dapat digunakan
di masa mendatang. Kemampuan
evaluasi diri seperti itu diperlukan oleh program agar dapat menganalisis alasan-alasan kesuksesan dan kegagalannya dalam mengambil kesimpulan. Cara ini dapat menghasilkan basis pengetahuan yang lebih baik dan penalaran yang
2.6
lebih efektif (Sutojo et al, 2011).
Tim Pengembang Sistem Pakar Project Manager
Knowledge Engineer
Domain Expert
Programmer
SISTEM PAKAR End User
Gambar 2.3 Tim Pengembang Sistem Pakar Sumber : Sutojo dkk : 2011 Tim pengembangan sistem pakar terdiri dari (Sutojo et al, 2011) :
a.
Domain expert adalah pengetahuan dan kemampuan seorang pakar untuk menyelesaikan masalah terbatas pada keahliannya saja.
b.
Knowledge engineer (perekayasa pengetahuan) adalah orang yang mampu mendesain, membangun dan menguji sebuah sistem pakar.
c.
Programmer adalah orang yang membuat program sistem pakar, mengode domain pengetahuan agar dapat dimengerti oleh komputer.
d.
Project manager adalah pemimpin dalam tim pengembangan sistem pakar. End user (biasanya disebut user saja) adalah orang yang mengggunakan sistem pakar.
2.7
Rule sebagai teknik representasi pengetahuan Setiap rule terdiri dari dua bagian, yaitu bagian IF disebut evidence (Fakta-fakta) dan
bagian THEN disebut Hipotesis atau kesimpulan. Syntax Rule adalah : IF E THEN H E : evidence (Fakta-fakta) yang ada H : Hipotesis atau kesimpulan yang dihasilkan
http://digilib.mercubuana.ac.id/
13 Secara umum, rule mempunyai evidence lebih dari satu yang dihubungkan oleh kata penghubung AND atau OR, kombinasi keduanya. Tetapi sebaiknya biasakan menghindari penggunaan AND dan OR secara sekaligus dalam satu rule.
2.8
Teknik Inferensi Forward Chaining Dan Backward Chaining Pada sistem pakar berbasis rule, domain pengetahuan direpresentasi dalam
sebuah kumpulan rule berbentuk IF-THEN, sedangkan data direpresentasi dalam sebuah kumpulan fakta-fakta tentang kejadian saat ini. Mesin inferensi membandingkan masingmasing rule yang tersimpan dalam basis pengetahuan dengan fakta-fakta yang terdapat dalam database. Jika bagian IF (kondisi) dari rule cocok dengan fakta, maka rule dieksekusi dan bagian THEN (aksi) diletakkan dalam database sebagai fakta baru yang ditambahkan (Sutojo et al, 2011). a.
Forward Chaining Forward chaining adalah teknik pencarian yang dimulai dengan fakta yang diketahui,
kemudian mencocokan fakta-fakta tersebut dengan bagian IF dari rules IF- THEN. Jika ada fakta yang cocok dengan bagian IF, maka rule tersebut dieksekusi. Bila sebuah rule dieksekusi maka sebuah fakta baru (bagian THEN) ditambahkan ke dalam 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 (Sutojo et al, 2011). b.
Backward Chaining Backward chaining adalah metode inferensi yang bekerja mundur ke arah kondisi awal.
Proses diawali dari goal (yang berada dibagian THEN dari rule IF-THEN), kemudian pencarian mulai dijalankan untuk mencocokan apakah fakta-fakta yang ada cocok dengan premis- premis di bagian IF. Jika cocok, rule dieksekusi, kemudian hipotesis di bagian 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 ada rule yang bisa membuktikan kebenaran dari subGoal atau Goal (Sutojo et al, 2011). 2.9
Metode Penelusuran Menurut Siswanto (2010), Metode Penelusuran pada sistem pakar sebagai berikut :
a.
Depth-First Search
Teknik penelusuran data pada node-node secara vertikal dan sudah terdefinisikan. Penelusuran dimulai dari simpul awal, kemudian ke simpul paling kiri menjadi simpul yang terdalam, lalu ada proses backtracking ke simpul parent, bila tidak ditemukan goalnya pada simpul yang terdalam, penelusuran dilanjutkan sampai dicapai simpul goalnya. http://digilib.mercubuana.ac.id/
14
Keuntungan pencarian dengan teknik ini adalah bahwa penelusuran dapat digali dengan secara mendalam sampai ditemukannya kepastian suatu solusi yang optimal. Kekurangan teknik penelusuran ini adalah membutuhkan waktu yang sangat lama untuk ruang lingkup masalah yang besar.
Gambar 2.4 Metode Penelusuran Depth-First Search
b.
Breadth-First Search Teknik penelusuran data pada semua node dalam satu level atau satu tingkatan
sebelum ke level atau tingkatan di bawahnya. Penelusuran dimulai dari simpul akar dan kemudian bergerak ke simpul paling kiri, lalu penelusuran dilanjutkan ke simpul-simpul yang sama level, bila tidak ditemukan simpul goalnya, penelusuran dilanjutkan pada simpul paling kiri di level, selanjutnya penelusuran dilanjutkan sampai ditemukan simpul goalnya. Keuntungan dengan pencarian teknik ini adalah sama dengan depthfirst search, hanya saja penelusuran dengan teknik ini mempunyai nilai tambah, dimana semua nilai node akan dicek secara menyeluruh pada setiap tingkatan node. Kekurangan teknik ini adalah terletak pada waktu yang dibutuhkan yang sangat lama apabila solusi berada
dalam
posisi
node
terakhir
sehingga
menjadi
tidak
efisien.
Kekuragan dalam implementasi juga perlu dipertimbangkan misalnya teknik penelusuran menjadi tidak interaktif antara pemakai dan sistem menyebabkan tidak adanya relasi antara suatu topik dengan topic yang lain atau harus melompat dari topik ke topik yang lain sebelum topik tersebut selesai ditelusuri.
http://digilib.mercubuana.ac.id/
15
Gambar 2.5 Metode Penelusuran Breadth-First Search
2.10
Pohon Keputusan Pohon keputusan (Decision Tree) adalah salah satu alat yang digunakan dalam
pengambilan keputusan dari berbagai alternatif yang ada, yang mana dilakukan secara terstruktur, bertahap, dan rasional. Pada saat membuat pohon keputusan, harus dipastikan bahwa semua alternatif dan kodisi alami berada di kondisi yag benar dan logis, serta semua alternatif yang mungkin dan kondisi alami telah disertakan. Tabel 2.1 Simbol Pohon Keputusan Kotak Sebuah titik keputusan dimana terdapat satu alternatif atau lebih yang dapat dipilih Lingkaran Sebuah titik kondisi alami dimana kondisi alami mungkin dapat terjadi.
http://digilib.mercubuana.ac.id/
16
2.11
Pegertian SDLC (System Development Life Cycle) Sebuah sistem informasi bisa dikatakan berjalan dengan baik tentu dengan
pengelolaan pelaksanaan yang baik. Di dalam sistem informasi, dalam pengembangan sistem informasi, ada metode yang paling umum digunakan dikenal dengan istilah SDLC (System Developement Life Cycle). Inilah acuan untuk bisa membangun dan mengelola sebuah sistem informasi yang baik. Pengertian SDLC adalah suatu proses berkelanjutan dari planning, analisis, desain dan implementasi. Yang pada setiap prosesnya dilakukan perbaikan secara bertahap.(Dennis et al, 2012). 2.12
Model SDLC (Prototype) Proses pengembangan system seringkali menggunakan pendekatan prototype
(prototyping). Metode ini sangat baik digunakan untuk menyeselesaikan masalah kesalahpahaman antara user dan analis yang timbul akibat user tidak mampu mendefinisikan secara jelas kebutuhannya. (Mulyanto, 2009). Prototyping adalah pengembangan yang cepat dan pengujian terhadap model kerja (prototype) dari aplikasi baru melalui proses interaksi dan berulang – ulang yang biasa digunakan ahli sistem informasi dan ahli bisnis. Prototyping disebut juga desain aplikasi cepat (rapid application design/RAD) karena menyederhanakan dan mempercepat desain sistem (O’Brien, 2005) Sebagian user kesulitan mengungkapkan keinginannya untuk mendapatkan aplikasi yang sesuai dengan kebutuhannya. Kesulitan ini yang perlu diselesaikan oleh analis dengan memahami kebutuhan user dan menerjemahkannya ke dalam bentuk model prototype. Model ini selanjutnya diperbaiki secara terus menerus sampai sesuai dengan kebutuhan user. 2.13
Kelebihan dan Kekurangan Kelebihan prototyping adalah :
1.
Adanya komunikasi yang baik antara pengembang dan pelanggan.
2.
Pengembang dapat bekerja lebih baik dalam menentukan kebutuhan pelanggan.
3.
Pelanggan berperan aktif dalam pengembangan sistem.
4.
Lebih menghemat waktu dalam pengembangan sistem.
http://digilib.mercubuana.ac.id/
17
5.
Penerapan menjadi lebih mudah karena pemakai mengetahui apa yang diharapkannya. Sedangkan kelemahan prototyping adalah :
1.
Pelanggan tidak melihat bahwa perangkat lunak belum mencerminkan kualitas perangkat lunak secara keseluruhan dan belum memikirkan peneliharaan dalam jangka waktu yang lama. Pengembang biasanya ingin cepat menyelesaikan proyek sehingga menggunakan
2.
algoritma dan bahasa pemrograman sederhana. 3.
Hubungan pelanggan dengan komputer mungkin tidak menggambarkan teknik perancangan yang baik. Bentuk Prototype
2.14
Berdasarkan
karakteristiknya
prototipe
sebuah
sistem
dapat
berupa low
fidelitydan high fidelity. Fidelity mengacu kepada tingkat kerincian sebuah sistem (Walker et al, 2003). Low fidelity prototype tidak terlalu rinci menggambarkan sistem. Karakteristik dari low fidelity
prototype adalah
mempunyai
fungsi
atau
interaksi
yang
terbatas,
lebih
menggambarkan kosep perancangan dan layout dibandingkan dengan model interaksi, tidak memperlihatkan secara rinci operasional sistem, mendemostrasikan secara umum feel and look dari antarmuka pengguna dan hanya menggambarkan konsep pendekatan secara umum (Walker et al, 2003). High fidelity protoype lebih rinci menggambarkan sistem. Prototipe ini mempunyai interaksi penuh dengan pengguna dimana pengguna dapat memasukkan data dan berinteraksi dengan dengan sistem, mewakili fungsi-fungsi inti sehingga dapat mensimulasikan sebagian besar fungsi dari sistem akhir dan mempunyai penampilan yang sangat mirip dengan produk sebenarnya (Walker et al, 2003). Fitur yang akan diimplementasikan pada prototipe sistem dapat dibatasi dengan teknik vertikal atau horizontal. Vertical prototype mengandung fungsi yang detail tetapi hanya untuk beberapa fitur terpilih, tidak pada keseluruhan fitur sistem.Horizontal prototype mencakup seluruh fitur antarmuka pengguna namun tanpa fungsi pokok hanya berupa simulasi dan belum dapat digunakan untuk melakukan pekerjaan yang sebenarnya (Walker et al, 2003).
http://digilib.mercubuana.ac.id/
18
2.15
Proses Pembuatan Prototype Proses pembuatan prototype merupakan proses yang interaktif dan berulang-ulang
yang menggabungkan langkah-langkah siklus pengembangan tradisional. Prototipe dievaluasi beberapa kali sebelum pemakai akhir menyatakan protipe tersebut diterima. Gambar di bawah ini mengilustrasikan proses pembuatan prototipe :
Gambar 2.6 Langkah – langkah prototyping a.
Analisis kebutuhan sistem Pembangunan sistem informasi memerlukan penyelidikan dan analisis mengenai
alasan timbulnya ide atau gagasan untuk membangun dan mengembangkan sistem informasi. Analisis dilakukan untuk melihat berbagai komponen yang dipakai sistem yang sedang berjalan meliputi hardware, software, jaringan dan sumber daya manusia. Analisis juga mendokumentasikan
aktivitas
sistem
informasi
meliputi input,
pemrosesan, output, penyimpanan dan pengendalian (O'Brien, 2005). Selanjutnya melakukan studi kelayakan (feasibility study) untuk merumuskan informasi yang dibutuhkan pemakai akhir, kebutuhan sumber daya, biaya, manfaat dan kelayakan proyek yang diusulkan (Mulyanto, 2009). Analisis kebutuhan sistem sebagai bagian dari studi awal bertujuan mengidentifikasi masalah dan kebutuhan spesifik sistem. Kebutuhan spesifik sistem adalah spesifikasi mengenai hal-hal yang akan dilakukan sistem ketika diimplementasikan (Mulyanto, 2009). Analisis kebutuhan sistem harus mendefinisikan kebutuhan sistem yang spesifik antara lain : 1.
Masukan yang diperlukan sistem (input)
2.
Keluaran yang dihasilkan (output)
http://digilib.mercubuana.ac.id/
19
3.
Operasi-operasi yang dilakukan (proses)
4.
Sumber data yang ditangani
5.
Pengendalian (kontrol)
Gambar 2.7 Spesifikasi kebutuhan sistem Tahap analisis kebutuhan sistem memerlukan evaluasi untuk mengetahui kemampuan sistem dengan mendefinisikan apa yang seharusnya dapat dilakukan oleh sistem tersebut kemudian menentukan kriteria yang harus dipenuhi sistem. Beberapa kriteria yang harus dipenuhi adalah pencapaian tujuan, kecepatan, biaya, kualitas informasi yang dihasilkan, efisiensi
dan
produktivitas,
ketelitian
dan
validitas
dan
kehandalan
atau
reliabilitas (Mulyanto, 2009). b.
Desain sistem Analisis sistem (system analysis) mendeskripsikan apa yang harus dilakukan sistem
untuk memenuhi kebutuhan informasi pemakai. Desain sistem (system design) menentukan bagaimana sistem akan memenuhi tujuan tersebut. Desain sistem terdiri dari aktivitas desain yang menghasilkan spesifikasi fungsional. Desain sistem dapat dipandang sebagai desain interface, data dan proses dengan tujuan menghasilkan spesifikasi yang sesuai dengan produk dan metode interface pemakai, struktur database serta pemrosesan dan prosedur pengendalian (Ioanna et al., 2007). Desain sistem akan menghasilkan paket software prototipe, produk yang baik sebaiknya mencakup tujuh bagian : 1.
Fitur menu yang cepat dan mudah.
2.
Tampilan input dan output.
http://digilib.mercubuana.ac.id/
20
3. 4.
Laporan yang mudah dicetak. Data
dictionary yang
panjang
field,
menyimpan informasi
pengeditan
dalam
setiap
setiap field termasuk
pada
laporan
dan
format field yang
digunakan. 5.
Database dengan format dan kunci record yang optimal.
6.
Menampilkan query online secara tepat ke data yang tersimpan padadatabase.
7.
Struktur
yang
pemakai
melakukan
sederhana
dengan
pemrosesan
bahasa
khusus,
pemrograman waktu
kejadian,
yang
mengizinkan
prosedur
otomatis
dan lain-lain. 2.16
UML (Unified Modelling Language) UML (Unified Modeling Language) merupakan kosakata umum berbasis objek dan
diagram teknik yang cukup efektif untuk memodelkan setiap proyek pengembangan sistem mulai tahap analisis sampai tahap desain dan implementasi (Dennis et al, 2012). UML di aplikasikan untuk maksud tertentu, biasanya antara lain untuk : 1.
Merancang perangkat lunak
2.
Sarana komunikasi antara perangkat lunak dengan proses bisnis
3.
Menjabarkan sistem secara rinci untuk analisa dan mencari apa yang diperlukan sistem.
4.
Medokumentasikan sistem yang ada, proses – proses dan organisasinya. Blok pembangun utama UML adalah diagram.Beberapa diagram, ada yang rinci
(jenis timing diagram) dan lainnya ada yang bersifat umum (misalnya diagram kelas).Para pengembang sistem berorientasi objek menggunakan bahasa model untuk menggambarkan, membangun dan mendokumentasikan sistem yang mereka rancang. UML memungkinkan para anggota team untuk bekerja sama dengan bahasa model yang sama dalam mengaplikasikan beragam sistem. Intinya, UML merupakan alat komunikasi yang konsisten dalam mensupport para pengembang sistem saat ini. Sebagai perancang sekedar membaca diagram UML buatan orang lain. 2.17
Langkah – langkah penggunaan UML (Unfied Modelling Language) Menurut Henderi (2010:6), langkah-langkah penggunaan Unified Modeling
Language (UML) sebagai berikut:
http://digilib.mercubuana.ac.id/
21 1.
Buatlah daftar business process dari level tertinggi untuk mendefinisikan aktivitas dan proses yang mungkin muncul.
2.
Petakan use case untuk setiap business process untuk mendefinisikan dengan tepat fungsional yang harus disediakan oleh sistem, kemudian perhalus use case diagram dan lengkapi denganrequirement, constraints dan catatan-catatan lain.
3.
Buatlah deployment diagram secara kasar untuk mendefinisikan arsitektur fisik sistem.
4.
Definisikan requirement lain non fungsional, security dan sebagainya yang juga harus disediakan oleh sistem.
5.
Berdasarkan use case diagram, mulailah membuat activity diagram.
6.
Definisikan obyek-obyek level atas package atau domain dan buatlah sequence dan / atau collaboration untuk tiap alur pekerjaan, jika sebuah use case memiliki kemungkinan alur normal dan error, buat lagi satu diagram untuk masing-masing alur.
7.
Buatlah rancangan user interface model yang menyediakan antar muka bagi pengguna untuk menjalankan skenario use case.
8.
Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domain dipecah menjadi hirarki class lengkap dengan atribut dan metodenya. Akan lebih baik jika untuk setiap class dibuat unit test untuk menguji fungsionalitas class dan interaksi dengan class lain.
9.
Setelah class diagram dibuat, kita dapat melihat kemungkinan pengelompokkan class menjadi komponen-komponen karena itu buatlah component diagram pada tahap ini. Juga di definisikan test integerasi untuk setiap komponen meyakinkan ia bereaksi dengan baik.
10.
Perhalus deployment diagram yang sudah dibuat. Detilkan kemampuan dan requirement piranti lunak, sistem operasi, jaringan dan sebagainya. Petakan komponen ke dalam node.
11.
Mulailah membangun sistem. Ada dua pendekatan yang tepat digunakan : Pendekatan use case dengan mengassign setiap use case kepada tim pengembang tertentu untuk mengembangkan unit kode yang lengkap dengan test dan pendekatan komponen yaitu mengassign setiap komponen kepada tim pengembang tertentu.
http://digilib.mercubuana.ac.id/
22
2.18
Fokus Unified Modelling Language (UML) Pemetaan (mapping) Unified Modeling Language (UML) bersifat 2 (dua) arah,
yaitu: 1.
Generasi kode bahasa pemrograman tertentu dari Unified Modeling Language (UML) foward engineering (Nugroho, 2010).
2.
Generasi kode belum sesuai dengan kebutuhan dan harapan pengguna, pengembang dapat melakukan langkah baik bersifat iterative dari implementasi ke Unified Modeling Language (UML) hingga didapat sistem atau piranti lunak yang sesuai dengan harapan pengguna dan pengembang (Henderi, 2010).
2.19
Konsepsi
Pemodelan
Menggunakan
Unified
Modelling
Language
(UML) Menurut Henderi (2010), Pemodelan menggunakan Unified Modeling Language (UML) merupakan metode pemodelan berorientasi objek dan berbasis visual. Karenanya pemodelan menggunakan UML merupakan pemodelan objek yang fokus pada pendefinisian struktur statis dan model sistem informasi yang dinamis dari pada mendefinisikan data dan model proses yang tujuannya adalah pengembangan tradisional. UML menawarkan diagram yang dikelompokkan menjadi lima perspektif berbeda untuk memodelkan suatu sistem. Seperti satu set blueprint yang digunakan untuk membangun sebuah rumah. 2.20
Diagram – Diagram UML Beberapa literature menyebutkan bahwa UML menyediakan sembilan jenis
diagram. Namun kesembilan diagram ini tidak mutlak harus digunakan dalam pengmbangan perangkat lunak, semuanya dibuat sesuai dengan kebutuhan. Diagram yang sering digunakan adalah diagram use case, diagram aktivitas (Activity diagram), diagram Sequence, diagram Class.
http://digilib.mercubuana.ac.id/
23
Gambar 2.8 Diagram UML (Alan Dennis, 2012)
a.
Diagram Use Case Use case diagram merupakan suatu diagram yang menangkap kebutuhan bisnis
untuk sistem dan untuk menggambarkan interaksi antara sistem dan lingkungannya. (Dennis et al, 2012). Tabel 2.2 Simbol Use Case Simbol
Nama Simbol Actor/Role
Keterangan “a person or system that derives benefit from and is external to the subject.” Seseorang atau sesuatu yang berinteraksi
User
dengan sistem. Use Case
“Represents a major piece of system functionality.” Menggambarkan bagaimana seseorang akan menggunakan sistem.
http://digilib.mercubuana.ac.id/
24 Lanjutan Tabel 2.2 Simbol Use Case
Subject
“Represents the scope of the subject, e.g., a system or an individual business process”. Merupakan lingkup subjek , misalnya ,
Association Relationship
sistem atau individu proses bisnis “Links an actor with the use case(s) with which it interacts.” Untuk mendokumentasikan aliran-aliran logika dalam setiap Use Case.
Extends
“Represents the extension of the use case to include optional behavior.” Memungkinkan suatu Use Case memiliki kemungkinan memperluas fungsionalitas yang disediakan oleh use case lainnya
Include
“Represents
the
inclusion
of
the
functionality of one use case within another.” Include memungkinkan Use Case untuk menggunakan fungsional yang di sediakan oleh Use Case lainnya
http://digilib.mercubuana.ac.id/
25
Make new patient app
<
> Create new patient
New patient
Make payment arrangement
Make old patient app
<<extends>>
Make apointment
<<extends>> Update information patient
Old patient Produce schedule information
<> Manage schedule
Management
Record avalibility
<>
Doctor
Gambar 2.9 Contoh Use Case (Alan Dennis, 2012)
Tabel 2.3 Perbedaan include dan extend pada Use Case (Dennis et al:2012) Include
Extend
Use case terpanggil (included use case) selalu diperlukan oleh use case dasar Yang memutuskan kapan dipanggilnya use case included adalah use case dasar
Panah hubungan dari use case dasar ke use case include
Use case ekstensi tidak selalu dibutuhkan oleh use case dasar Yang memutuskan kapan dipanggilnya use case extend adalah use case extend itu sendiri Panah hubungan dari use case extend ke use case dasar
http://digilib.mercubuana.ac.id/
26
b.
Activity Diagram Pengertian diagram Activity adalah yang menggambarkan alur kerja bisnis
independen dari class, aliran kegiatan dalam Use case, atau desain rinci sebuah metode (Dennis et al 2012). Tabel 2.4 Simbol Activity Diagram Simbol
Nama Simbol
Keterangan
Initial Node
“Is used to represent a set of actions.” merupakan tanda awal dari sebuah aktivitas.
Final-Activity Node
“Is used to stop all control flows and object flows in an activity (or action).” merupakan
tanda
berakhirnya
sebuah
aktivitas. Activity
“Is used to represent a set of actions.” merupakan sebuah gambaran aktivitas yang terjadi.
Decision Node
“Is used to represent a test condition to ensure that the control flow or object flow only goes down one path.” Pilihan untuk pengambilan keputusan
Merge Node
“Is used to represent a test condition to ensure that the control flow or object flow only goes down one path.” membawa kembali jalur keputusan bersama yang
berbeda
yang
dibuat
menggunakan keputusan simpul
http://digilib.mercubuana.ac.id/
dengan
27
Lanjutan Tabel 2.4 Simbol Activity Diagram Swimlane
“Separate business organization that is responsible for the activity that occurs.”
Swimlane Name
memisahkan
organisasi
bisnis
yang
bertanggung jawab terhadap aktifitas yang terjadi. Control Flow
“Shows the sequence of execution.” Menunjukkan urutan eksekusi
Object Flow
“Shows the flow of an object from one activity (or action) to another activity (or action).” Menunjukkan aliran objek dari satu kegiatan (atau tindakan) untuk kegiatan lain (atau tindakan).
http://digilib.mercubuana.ac.id/
28
Receptionist
Get patient information
Old patient Create new Patients
Make payment arrangements
create Appointment
Change Appointment Cancel Appointment
Gambar 2.10 Contoh Activity Diagram (Alan Dennis, 2012
c.
Sequence diagram Sequence Diagram merupakan urutan model dinamis yang menggambarkan
contoh class yang berpartisipasi dalam use case dan pesan yang lewat di antara mereka dari waktu ke waktu. (Dennis et al 2012) Sequence diagram merupakan diagram interaksi yang disusun berdasarkan urutan waktu. Cara membaca diagram sekuensial dari atas ke bawah. Setiap diagram sekuensial mempresentasikan satu flow dari beberapa flow didalam use case.
http://digilib.mercubuana.ac.id/
29
Tabel 2.5 Simbol Sequence Diagram Simbol
Nama Simbol
Keterangan “Is a person or system that derives benefit from and is external to the system.”
Actor
orang atau sistem yang berasal dari manfaat dan eksternal ke sistem yang berpartisipasi secara berurutan dengan mengirim dan / atau menerima pesan
“Participates in a sequence by sending and/or
anObject : a Class
receiving messages.” Object
Berpartisipasi secara berurutan dengan mengirim dan / atau menerima pesan yang ditempatkan diatas diagram “Is a long narrow rectangle placed atop a
Execcution
lifeline.”
Occurrence
Menyatakan objek dalam keadaan aktif dan berinteraksi pesan. “Conveys information from one object to another
Message
one.” Pesan yang mengambarkan komunikasi yang terjadi antar objek. “Returned the message when an actor send the
Message
message.”
(return)
Pesan yang dikirim untuk diri sendiri secara langsung.
http://digilib.mercubuana.ac.id/
30
Lanjutan Tabel 2.5 Simbol Sequence Diagram Lifeline
Message (return)
“Denotes the life of an object during a sequence.” Menyatakan kehidupan suatu objek.
“a return is labeled with the value being returned and shown as a dashed arrow.” Pesan yang dikirim untuk diri sendiri.
Gambar 2.11 Contoh Gambar Sequnce Diagram (Alan Dennis, 2012)
http://digilib.mercubuana.ac.id/
31
d.
Class diagram Class Diagram adalah ilustrasi hubungan antara class yang dimodelkan didalam
sistem. Class Diagram sangat mirip dengan diagram hubungan entitas (ERD). Diagram class menggambarkan class yang meliputi atribut, perilaku dan states, sementara dalam ERD hanya mencakup atribut. (Dennis et al 2012).
Tabel 2.6 Simbol Class Diagram Simbol
Nama Simbol
Keterangan “Represents a kind of person, place, or thing about which the system will need to capture and
Class
store information” Kelas pada struktur sistem. “Represents properties that describe the state of
attribute name /derived attribute
an object.” Attribute
name
Memiliki daftar atribut dalam kompartemen tengahnya . “Represents the actions or functions that a class can perform.”
operation name ()
Operation
menunjukkan operasi yang tersedia untuk sebuah kelas
http://digilib.mercubuana.ac.id/
32
Lanjutan Tabel 2.6 Simbol Class Diagram Aggregation
“Represents a logical a-part-of relationship between multiple classes or a class and itself. “
menggambarkan suatu class terdiri dari class lain atau suatu class adalah bagian dari class lain. “Represents a-kind-of relationship between Generalization
multiple classes. “ Generalization merupakan sebuah taxonomic relationship antara class yang lebih umum dengan
Association 1…*, 0…1
“Represents a relationship between multiple classes or a class and itself. “ Asosiasi yang menghubungkan classdengan class Multiplycity.
Gambar 2.12 Contoh Gambar Class Diagram (Alan Dennis, 2012)
http://digilib.mercubuana.ac.id/
33
2.21
Hardware Komputer Pengertian dari hardware atau dalam bahasa indonesia-nya disebut juga dengan
nama “perangkat keras” adalah salah satu komponen dari sebuah komputer yang sifat alat nya bisa dilihat dan diraba secara langsung atau yang berbentuk nyata, yang berfungsi untuk mendukung proses komputerisasi.
Hardware dapat bekerja berdasarkan perintah yang telah
ditentukan ada padanya, atau yang juga disebut dengan dengan istilah instruction set. Dengan adanya perintah yang dapat dimengerti oleh hardware tersebut, maka hardware tersebut dapat melakukan berbagai kegiatan yang telah ditentukan oleh pemberi perintah. Secara fisik, Komputer terdiri dari beberapa komponen yang merupakan suatu sistem. Sistem adalah komponen-komponen yang saling bekerja sama membentuk suatu kesatuan. Apabila salah satu komponen tidak berfungsi, akan mengakibatkan tidak berfungsinya proses-proses yang ada komputer dengan baik. 2.22
Macam Macam Kerusakan Pada Hardware Komputer Kerusakan pada komputer sendiri terdiri dari 2 kategori, yaitu kerusakan pada
hardware (perangkat keras) dan kerusakan pada software (perangkat lunak). Kerusakan pada hardware langsung menyentuh pada perangkat elektronik yang ada di dalamnya, sedangkan kerusakan pada software terjadi karena kerusakan sistem operasi atau kerusakan pada program aplikasi lainnya. 1.
Kerusakan Pada Power Supply
Gejala : Setelah dihidupkan PC tidak bereaksi apa-apa, tidak ada tampilan di monitor, tidak ada lampu indikator (led) yang menyala, kipas power supply tidak berputar, lampu indikator pada monitor tidak menyala. Solusi : Periksalah apakah kabel terhubung dengan benar dan steker terpasang dengan baik pada soketnya, periksa juga apakah ada tombol on/off dibelakang tepatnya dibelakang Power Supply sudah dalam posisi On, Jika sudah yakin terpasang dengan benar tapi tetap tidak ada respon untuk meyakinkan silahkan anda ganti kabel power dengan yang anda yakini bagus. Masalah terjadi karena tidak adanya tegangan listrik yang masuk, kerusakan ada pada kabel power.
http://digilib.mercubuana.ac.id/
34
2.
Kerusakan Pada Harddisk
Gejala : Pada saat CPU dinyalakan kemudian melakukan proses Post setelah itu muncul pesan "Operating system not found". Solusi : Periksa kabel tegangan dan kabel data yang masuk ke harddisk apakah longgar, sebaiknya dikencangkan, kemudian nyalakan dan coba anda dengarkan apakah suara yang keluar dari harddisk normal, jika tidak normal berati harddisk rusak di controllernya. Solusi : Ada kemungkinan Operating system rusak, bisa diatasi dengan install ulang atau jika OS anda menggunakan windows 2000/XP ada Fasilitas Repairnya. atau ada kemungkinan juga harddisk anda tidak terdeteksi dan lakukan langkah diatas Gejala : harddisk bad sector? Solusi : Ada beberapa faktor penyebab terjadi bad sector diantaranya, tegangan listrik tidak stabil, sering terjadi putusnya aliran listrik secara mendadak, setelah pemakaina tidak di shot down, pemakaian yang terlalu lama, ada 2 jenis bad sector yaitu fisik dan software. Untuk mengatasinya ada beberapa cara, diantaranya menggunakan software untuk menghilangkan bad sector. pembahan lebih lanjut. 3.
Kerusakan Pada Motherboard
Gejala : Setelah dihidupkan, tidak ada tampilan di monitor, lampu indikator (led) di panel depan menyala, lampu indikator (led) monitor berkedip-kedip, kipas power supply dan kipas procesor berputar, tidak ada suara beep di speaker. Solusi : Langkah pertama lepas semua kabel power yang terhubung ke listrik, kabel data ke monitor, kabel keyboad/mouse, dan semua kabel yang terhubung ke CPU, kemudian lepas semua sekrup penutup cashing. Dalam keadaan casing terbuka silahkan anda lepaskan juga komponen-komponen lainnya, yaitu kabel tegangan dari power supply yang terhubung ke Motherboard, harddisk, floppy, hati-hati dalam pengerjaannya jangan terburu-buru. Begitu juga dengan Card yang menempel pada Mboard (VGA, Sound atau Card lainnya). Sekarang yang menempel pada cashing hanya MotherBoard saja. Silahkan anda periksa Motherboadnya dengan teliti, lihat Chip (IC), Elko, Transistor dan yang lainnya apakah ada yang terbakar.
http://digilib.mercubuana.ac.id/
35
4.
Kerusakan Pada VGA Card
Gejala: Pada waktu menghidupkan komputer, layar monitor gelap dan hitam. Solusi: cek kabel VGA dan pastikan kabel VGA tersebut sudah masuk ke port VGA. Cek indicator pada monitor apakah powernya berjalan dengan normal atau tidak. Lalu coba booting ulang. 5.
Kerusakan Pada CD/DVD ROM
Gejala: Tidak terdeteksi di windows, tidak bisa keluar masuk CD, tidak bisa membaca atau menulis. Solusi: Periksa kabel data dan kabel tegangan yang ke CD/DVD ROM, periksa di setup bios apakah sudah di deteksi? Periksa apakah LED menyala, jika tidak kerusakan di controllernya. Kerusakan ada pada mekanik motor atau karet motor. Kerusakan biasanya pada optik, tetapi ada kemungkinan masih bisa di perbaiki dengan cara men set ulang optik tersebut.
http://digilib.mercubuana.ac.id/