BAB II LANDASAN TEORI
Pada bab ini berisi teori-teori yang mendukung penyusunan tugas akhir dan berbagai macam literatur yang dipergunakan sebagai dasar pelaksanaan penelitian maupun
metode-metode
yang
digunakan
pada
saat
perancangan
dan
pengembangan sistem. 2.1
Metode Parsing Data Kata Parsing (parse) berasal dari Bahasa inggris yang memiliki arti
mengurai. Maka, parsing data adalah suatu kegiatan untuk mengurai suatu data. Dalam pemrograman misal di PHP, kegiatan parsing data dapat dikaitkan sebagai suatu kegiatan untuk mengolah suatu paket data masukkan dengan cara memisahkan paket data tersebut ke dalam uraian-uraian data yang akan diolah ke tahap berikutnya. Pemilihan dan pengambilan data pada suatu paket data masukan. Menurut Dick Grune (nama,tahun) dengan bukunya yang berjudul Parsing Technic : Parsing tidak lagi seni misterius; sejak awal 70-an ketika Aho, Ullman, Knuth dan banyak lainnya menempatkan berbagai teknik parsing di teoretis mereka. Tidak perlu disiplin matematika baik inner parser dapat divisualisasikan, dipahami dan dimodifikasi agar sesuai dengan aplikasi, dengan tidak lebih dari memotong dan menyisipkan string. Ada perbedaan besar antara pandangan matematikawan dunia dan komputer ilmuwan. Untuk matematika semua struktur yang statis mereka memiliki selalu dan akan selalu menjadi; satu-satunya waktu ketergantungan adalah bahwa kita hanya belum menemukan mereka. Ilmuwan komputer berkaitan dengan (dan terpesona
oleh)
penciptaan
terus-menerus,
kombinasi,
penghancuran struktur: waktu
6 http://digilib.mercubuana.ac.id/
pemisahan
dan
Di tangan seorang ahli matematika, aksioma Peano menciptakan bilangan bulat tanpa mengacu ke waktu, tetapi jika seorang ilmuwan komputer menggunakan mereka untuk menerapkan bilangan bulat Ini adalah vena ditulis: parsing untuk siapa saja yang memiliki parsing untuk melakukan: penulis compiler, ahli bahasa, penulis antarmuka data-base, ahli geologi atau musikolog yang ingin menguji deskripsi gramatikal benda masing-masing bunga, dan sebagainya. Kami memerlukan kemampuan yang baik untuk memvisualisasikan, beberapa pengalaman pemrograman dan kemauan serta kesabaran 2.2
Pengertian Algoritma Pada dasarnya adalah susunan logis dan sistematis yang digunakan untuk
memecahkan atau pun menyelesaikan suatu permasalahan tertentu. Jadi, setiap susunan logis yang diurutkan berdasarkan sistematika tertentu yang dipakai untuk menyelesaikan permasalahan dapat digolongkan sebagai sebuah algoritma. Susunan atau pun langkah – langkah memasak mie intan misalnya, langkah – langkah sistematis yang digunakan untuk memasak mie instan dapat digolongkan ke dalam logaritma, karena menyelesaikan sebuah permasalahan yaitu permasalahan lapar yang dirasakan oleh manusia. Dalam dunia komputer sendiri, algoritma merupakan sistem kerja komputer yang terdiri atas sekumpulan perintah terintegrasi pada brainware, software, dan hardware. Tanpa salah satu dari tiga bagian sistem di atas, sebuah komputer tidak akan dapat dioperasikan sama sekali. Dalam dunia pemrograman, algoritma digunakan untuk membangun berbagai macam software yang digunakan pada perangkat komputer. Penerapan sistem algoritma dalam pembuatan software biasanya dilakukan melalui beberapa jenis bahasa pemrograman seperti bahasa pemrograman C, bahasa pemrograman C#, dan bahasa pemrograman Visual Basic. Tanpa algoritma yang tepat, susunan sintax atau pun baris – baris kode bahasa pemrograman yang telah dibuat tidak akan ada artinya sama sekali. Hal ini dikarenakan seluruh baris – baris kode yang dibuat dengan menggunakan tiga macam bahasa pemrograman di atas diatur sepenuhnya oleh algoritma yang
7 http://digilib.mercubuana.ac.id/
dibuat. Dari mulai aktivitas pembukaan software aplikasi hingga ke berbagai macam aktivitas kerja yang digunakan oleh penggunanya, semuanya diatur oleh algoritma pemrograman yang dibuat oleh pengembang software tersebut. Menurut Granville Barnett di dalam bukunya yang berjudul Data Structures And Algorithms, Pengertian algoritma pencarian menggunakan Binary Search Tree Adalah Binary Search Tree (BSTs) mulai dengan akar simpul dengan nilai x, di mana subtree kiri x berisi node dengan nilai-nilai <x dan subtree kanan berisi node yang nilainya ° x. Setiap node berikut aturan yang sama terhadap node di sub pohon kiri dan kanan mereka. BSTs yang menarik karena mereka memiliki operasi yang performancenya cepat: penyisipan, mencari, dan penghapusan semua dapat dilakukan. 2.3
Pengertian Pemrograman Yang dimaksud dengan pemrograman adalah suatu proses menulis, menguji
dan memperbaiki (debug), dan memelihara kode yang membangun sebuah program komputer. Kode ini juga di tulis dalam berbagai bahasa pemrograman. Tujuan dari pemrograan yaitu membuat suatu program yang dapat membuat suatu perhitungan atau pekerjaan sesuai dengan si pemrogram (programmer). Untuk dapat melakukan pemrograman, di perlukan keterampilan dalam algoritma, logika, bahasa pemrograman, dan banyak kasus, pengetahuan pengetahuan lain seperti matematika. Namun pemrograman banyak di artikan dalam sebuah seni menggunakan satu atau lebih algoritma yang saling berhubungan menggunakan sebuah bahasa pemrograman tertentu sehinggga dapat menjadi sebuah program komputer. Bahasa pemrograman yang berbeda mendukung gaya pemrograman yang berbeda pula, gaya pemrograman ini bisa di sebut paradigma pemrograman. Kemudian apakah memprogram perangkat lunak lebih merupakan seni, ilmu, atau teknik telah lama di perdebatkan. Dan pemrogram yang baik biasanya mengkobisanikan tiga hal tersebut, agar dapat menciptakan program yang efisien, baik dari sisi waktu berjalan (run time), atau memori.
8 http://digilib.mercubuana.ac.id/
2.4
Macam-macam Pemrograman Ada beberapa bahasa pemrograman berbasis web yang di gunakan dalam
pembuatan suatu website, yang harus di pahami dasar – dasarnya, berikut ini merupakan beberapa bahasa pemrograman yang berbasis web : 2.4.1
Bahasa pemrograman HTML Hyper Text Markup Language (HTML) adalah sebuah bahasa markup
yang di gunakan untuk membuat sebuah halaman web dan menampilkan berbagai informasi di dalam sebuah browser internet, HTML saat ini merukapak standart internet yang di definisaikan dan di kendalikan penggunanya oleh World Wide Web Consortium (W3C). HTML berupa kode – kode tag yang menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang di inginkan. Sebuah file yang merupakan file HTML dapat di buke menggunakan web seperti Mozilla Firefox atau Microsoft Internet Eplorer. 2.4.2
Bahasa Pemrograman PHP PHP adalah bahasa pemrograman script yang paling banyak di gunakan
saat ini, PHP pertama kali di buat oleh Rasmus Lerdorf pada tahun 1995, pada waktu itu PHP masih bernama FI (Form Interpreted), yang wujudnya berupa sekumpulan script yang di gunakan untuk mengolah data form dari web. PHP banyak di pakai untuk membuat situs web yang dinamis, walaupun tidak tertutup keugkinan tidak di gunakan untuk pemakaian lain. PHP biasanya berjalan pada sistem operasi linux (PHP juga bisa di jalankan dengan hosting windows). 2.4.3
Bahasa Pemograman java script Javascript adalah bahasa scripting yang handal yang berjalan pada sisi
client, Javascript merupakan sebuah bahasa scripting yang di kembangkan oleh Netscape. Untuk menjalankan script yang di tulis dengan Javascript kita membutuhkan
Javascript-enabled
browser
yaitu
menjalankan Javascript.
9 http://digilib.mercubuana.ac.id/
browser
yang
mampu
2.4.4
Bahasa Pemrograman CSS Cascading Style Sheets (CSS) adalah suatu bahasa stylesheet yang di
gunakan untuk mengatur tampilan suatu dokumen yang di tlis dalam bahas markup. Pengguna yang paling umum dari CSS adalah untuk memformat halam web yang di tulis dengan HTML dan XHTML. Walaupun demikian, bahasanya sendiri dapat di pergunakan untuk semua jenis dokumen XML termasuk SVG dan XUL. Spesifikasi CSS di atur oleh World Wide Web Consortium (W3C). 2.5 Pengertian Program berbasis OOP dalam PHP Object Oriented Programming atau dalam bahasa indonesia di artikan pemrograman berbasis object, adalah salah satu cara membuat program (programming paradigm) dengan memecah alur program menjadi modul – modul sederhana yang di sebut dengan object. Setiap objek akan memiliki fungsi dan tugas sendiri. OOP berbeda dengan prosedural programming yang memecah program menjadi fungsi – fungsi / prosedural. Saat ini Object Oriented Programming (OOP) telah menjadi standart dalam dunia pemograman, termasuk PHP. Walaupun kita bisa mambuat program PHP tanpa menggunakan OOP sama sekali, namun untuk membuat aplikasi ‘real world’ yang flexibel, programer PHP akan beralih menggunakan OOP. 2.6 Rekayasa Perangkat Lunak Rekayasa perangkat luak merupakansuatu disiplin ilmu yang membahas semua aspek produksi dari perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari kebutuhan pengguna, disain, pengkodean atau coding, pengujian atau testing sampai maintenence sistem setelah digunakan. 2.6.1
Pengertian Rekayasa Perangkat Lunak Menurut IEEE Computer Society : Rekayasa perangkat lunak sebagai
penerapan suatu pendekatan yang sistematis, disiplin dan terkuantifikasi atas pengembangan, pengguna dan pemeliharaan perangkat lunak itu sendiri.
10 http://digilib.mercubuana.ac.id/
Rekayasa Perangkat Lunak adalah suatu disiplin ilmu yang membahas semua aspek produksi dari perangkat lunak, mulai dari tahap awal yaitu analisa kebutuhan pengguna, menentukan spesifikasi dari kebutuhan pengguna, disain, pengkodean atau coding, pengujian atau testing sampai maintenence sistem setelah digunakan. 2.6.2
Tujuan Rekayasa Perangkat Lunak Tujuan dari Rekayasa Perangkat Lunak ini adalah :
Memproleh biaya produksi perangkat lunak yang rendah.
Menghasilkan perangkat lunak yang kinerjanya tinggi.
Menghasilkan perangkat lunak yang dapat bekerja di berbagai jenis platform.
2.7
Metode Waterfall Berdasarkan Gambar 1.1 adalah model klasik yang bersifat sistematis.
Berurutan dalam membangun software. Berikut ini gambaran dari waterfall model pressman 2.7.1 Communication Langkah ini merupakan analisis terhadap kebutuhan software, dan tahap untuk mengadakan pengumpulan data dengan melakukan pertemuan dengan customer, maupun mengumpulkan data-data tambahan baik yang ada dijurnal, artikel, maupun dari internet 2.7.2 Planning Proses planning merupakan lanjutan dari proses communication (analysis requirement). Tahapan ini akan menghasilkan dokument user requierement atau bisa dikatakan sebagai data yang berhubungan dengan keinginan user dalam pembuatan software, termasuk rencana yang akan dilakukan. 2.7.3 Modeling Proses modeling ini akan menerjemahkan syarat kebutuhan ke sebuah perancangan software yang dapat diperkirakan sebelum dibuat coding. Proses ini
11 http://digilib.mercubuana.ac.id/
berfokus pada rancangan struktur data, arsitektur software, representasi interface pada rancangan struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Tahapan ini akan menghasilkan dokument yang disebut software requirement. 2.7.4 Construction Construction merupakan proses membuat kode. Coding atau pengkodean merupakan penerjemahan desain dalam bahasa yang bisa dikenali oleh komputer. Programmer akan menerjemahkan transaksi yang diminta oleh user. Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu software, artinya penggunaan komputer akan dimaksimalkan dalam tahapan ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap sistem yang telah dibuat tadi. Tujuan testing adalah
menemukan kesalahan-kesalahan terhadap sistem
tersebut untuk kemudian bisa diperbaiki. 2.7.5 Deployment Tahapan ini bisa dikatakan final dalam pembuatan sebuah software atau sistem. Setelah melakukan analisis, desain dan pengkodean maka sistem yang sudah jadi akan digunakan oleh user. Kemudian software yang telah dibuat harus dilakukan pemeliharaan secara berkala. 2.8 Multimedia Panduan untuk multimedia harus dimulai dengan definisi atau pengertian multimedia. Dalam Industry Elektronika, multimedia adalah kombinasi dari computer dan video (Rosch,1996) atau bisa juga disebut multimedia secara umum merupakan kombinasi tiga elemen yaitu suara, gambar, dan teks (Mc Cormick,1996) atau multimedia adalah kombinasi dari paling sedikit dua media input dan output dari data, media ini dapat berupa audio (suara, music), animasi, video, teks, grafik dan gambar (Turban dkk, 2002) atau multimedia merupakan alat
yang
menciptakan
presentasi
yang
dinamis
dan
interaktif
mengkombibnasikan teks, grafik, animasi, audio dan gambar video.
12 http://digilib.mercubuana.ac.id/
yang
Definisi lain dari multimedia yaitu dengan menempatkannya dalam konteks, seperti yang dilakukan oleh (Hoftsteter, 2001). Multimedia adalah pemanfaatan komputer untuk membuat dan menggabungkan teks, grafik, audio, video dan animasi dengan menggabungkan link dan tool yang memungkinkan pemakai untuk melakukan
navigasi, berinteraksi, berkreasi dan berkomunikasi
(Munir.2012). 2.9 UML (Unified Modeling Language) UML (Unified Modelling Language) adalah salah satu alat bantu yang sangat handal didunia pengembangan sistem yang berorientasi obyek. Hal ini disebabkan karena UML menyediakan bahasa pemodelan visual
yang
memungkinkan bagi pengembangan sistem untuk membuat cetak biru atas visi mereka dalam bentuk yang baku, mudah dimengerti serta dilengkapi dengan mekanisme yang efektif untuk berbagi dan mengkomunikasikan rancangan mereka dengan yang lain. UML adalah hasil kerja dari konsorsium sebagai organisasi yang berhasil dijadikan sebagai standar buku dalam OOAD (Object Oriented Analysis & Design) (Munawar, 2005). UML (Unified Modelling Language) juga mempunyai banyak definisi seperti : 1. Unified Modeling Language merupakan metode pengembangan perangkat lunak (sistem informasi) dengan menggunakan metode grafis serta merupakan bahasa untuk visualisasi, spesifikasi, konstruksi serta dokumentasi. 2. Unified Modeling Language (UML) adalah bahasa yang telah menjadi standard
untuk
visualisasi,
menetapkan,
membangun
dan
mendokumentasikan arti suatu sistem perangkat lunak. 3. Unified Modeling Language (UML) dapat didefinisikan sebagai sebuah bahasa yang telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem perangkat lunak . 4. Unified Modeling Language (UML) merupakan standard modeling language yang terdiri dari kumpulan-kumpulan diagram, dikembangkan
13 http://digilib.mercubuana.ac.id/
untuk membantu para pengembang sistem dan software agar bisa menyelesaikan tugas-tugas seperti :
Spesifikasi
Visualisasi
Desain arsitektur
Konstruksi
Simulasi dan testing
Dokumentasi
Berdasarkan
beberapa
pendapat
yang dikemukakan
diatas
dapat
disimpulkan bahwa “Unified Modeling Language (UML) adalah sebuah bahasa yang berdasarkan grafik atau gambar untuk menvisualisasikan, menspesifikasikan, membangun dan pendokumentasian dari sebuah sistem pengembangan perangkat lunak berbasis Objek, ada beberapa langkah-langkah dalam penggunaan UML (Unifed Modeling Language) Menurut (Afif Amrullah:2002). Sebagai berikut: 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 dengan requirement, 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 utuk tiap alir pekerjaan, jika sebuah use case memiliki kemungkinan alir normal dan error, buat lagi satu diagram untuk masing-masing alir. 7. Buatlah rancangan user interface model yang menyediakan antamuka bagi pengguna untuk menjalankan skenario use case.
14 http://digilib.mercubuana.ac.id/
8. Berdasarkan model-model yang sudah ada, buatlah class diagram. Setiap package atau domian 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, definisikan test integrasi 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. - Pendekatan komponen yaitu mengassign setiap komponen kepada tim pengembang tertentu. 12. Lakukan uji modul dan uji integrasi serta perbaiki model beserta codenya. Model harus selalu sesuai dengan code yang aktual. 2.9.1
Use Case Diagram Diagram ini memperlihatkan himpunan use case dan aktor-aktor. Menurut
Munawar (2005 : 64) bahwa use case adalah deskripsi fungsi dari sebuah sistem dari perspektif pungguna. Use case bekerja dengan cara mendeskripsikan tipikal interaksi pada antar user (pengguna) sebuah sistem dengan sistemnya sendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Dalam pembicaraan tentang use case, pengguna biasanya disebut dengan aktor. Aktor adalah sebuah peran yang bisa dimainkan oleh pengguna dalam setiap interaksinya dengan sistem.
15 http://digilib.mercubuana.ac.id/
Tabel 2.1Simbol-Simbol Use Case Diagram No
Gambar
Nama
Keterangan Menspesifikasikan himpuan peran
1
yang pengguna mainkan ketika Actor
berinteraksi dengan use case. Hubungan dimana perubahan yang terjadi pada suatu elemen mandiri
2
Dependency
akan mempengaruhi elemen yang bergantung padanya elemen yang tidak mandiri. Hubungan
3
Generalization
dimana
objek
anak
(descendent) berbagi perilaku dan struktur data dari objek yang ada di atasnya objek induk (ancestor).
4
Menspesifikasikan bahwa use case
Include
sumber secara eksplisit. Menspesifikasikan bahwa use case
5
target memperluas perilaku dari use
Extend
case sumber pada suatu titik yang diberikan.
6
Association
Apa yang menghubungkan antara objek satu dengan objek lainnya. Menspesifikasikan paket yang
7
System
menampilkan sistem secara terbatas. Deskripsi dari urutan aksi-aksi yang
8
ditampilkan sebuah sistem yang
Use Case
menghasilkan
suatu
hasil
yang
terukur bagi suatu actor. 9
Collaboration
Interaksi aturan-aturan dan elemen lain yang bekerja sama untuk
16 http://digilib.mercubuana.ac.id/
menyediakan prilaku yang lebih besar dari jumlah dan elemenelemennya. Elemen aplikasi
None
10
fisik
yang
eksis
dijalankan
saat dan
mencerminkan suatu sumber daya komputasi
2.9.2
Activity Diagram Diagram ini memperlihatkan aliaran dari suatu aktifitas ke aktifitas lainnya
dalam suatu system dan Activity diagram adalah teknik untuk mendeskripsikan logika prosedural, proses bisnis dan aliran kerja dalam banyak kasus. Activity diagram mempunyai peran seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah activity diagram bisa mendukung perilaku paralel sedangkan flowchart tidak bisa. Tabel 2.2 Simbol-Simbol Activity Diagram No 1
2
Gambar
Nama
Keterangan
Rounded
aktivitas, atau penggerak yang
rectangle
terjadi dalam activity diagram.
Continuous Line
menggambarkan urutan perpindahan kegiatan dari satu aktivitas ke aktivitas yang lain. menggambarkan proses dimulai
3
Solid Circle
pertama kali di dalam activity diagram.
4
Diamond
5
Diamond
Bagaimana akhiri dari aktivitas. Menggambarkan adanya percabangan.
17 http://digilib.mercubuana.ac.id/
2.9.3
Class Diagram Diagram ini memperlihatkan himpunan kelas-kelas, antarmuka-antarmuka,
kolaborasi-kolaborasi dan relasi-relasi antar objek dan Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi objek. Class menggambarkan keadaan (atribut atau properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut (metode atau fungsi). Class diagram menggambarkan struktur dan deskripsi class, package dan objek beserta hubungan satu sama lain seperti containment , pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok, yaitu :
Nama dan stereotype
Atribut
Metoda
Class dapat merupakan implementasi dari sebuah interface, yaitu class abstrak yang hanya memiliki metode. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah class. Dengan demikian interface mendukung resolusi metode pada saat run-time. Sesuai dengan perkembangan class model, class dapat dikelompokkan menjadi package. Hubungan Antar Class: 1. Asosiasi, hubungan statis antar class. Umumnya menggambarkan class yang memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain. Panah navigability menunjukkan arah query antar class. 2. Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan mewarisi semua atribut dan metode class asalnya dan menambahkan fungsionalitas baru, sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi.
18 http://digilib.mercubuana.ac.id/
3. Hubungan dinamis, yaitu rangkaian pesan ( message ) yang dipassing dari satu class kepada class lain. 2.9.4
Sequence Diagram Sequence Diagram memperlihatkan interaksi yang menekankan pada
pengiriman pesan (message) dalam suatu waktu tertentu. Diagram ini juga diatur berdasarkan waktu dan obyek-obyek yang berkaitan dengan proses berjalannya operasi diurutkan dari kiri ke kanan berdasarkan waktu terjadinya dalam pesan yang terurut. Diagram sequence menampilkan interaksi antar objek dalam dua dimensi. Dimensi vertikal adalah poros waktu, dimana waktu berjalan ke arah bawah. Sedangkan dimensi horizontal merepresentasikan objek-objek individual. Tiap objek (termasuk actor) tersebut mempunyai waktu aktif yang direpresentasikan dengan kolom vertikal yang disebut dengan lifeline. Pesan (message) direpresentasikan sebagai panah dari satu lifeline ke lifeline yang lain. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda dari class. Tabel 2.3Simbol-Simbol Sequence Diagram No
Gambar
Nama
Keterangan Sebuah entitas manusia atau
1.
Actor
mesin yang berinteraksi dengan system.
2.
3.
4.
Entity Class A focus of control and a life line A message
Menggambarkan hubungan kegiatan yang dilakukan. Menggambarkan tempat mulai dan berkhirnya pesan (message). Menggambarkan pengiriman pesan (Message).
19 http://digilib.mercubuana.ac.id/
2.9.5
Black-Box Testing Pengujian pada Black-Box merupakan metode yang menguji perangkat
lunak dari segi spesifikasi fungsional tanpa menguji desain dan kode program. Pengujian dimaksudkan untuk mengetahui apakah fungsi-fungsi, masukan, dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang dibutuhkan (Rosa dan Shalahuddin, 2011, p.213). Pengujian pada Black-Box dapat menjelaskan kegunaan dari sebuah perangkat lunak dan menentukan apakah sebuah perangkat lunak melakukan apa yang seharusnya dikerjakan berdasarkan persayaratan fungsionalitasnya, tanpa melihat mekanisme internal atau komponen dari keseluruhan sistem. Black Box Testing disebut juga dengan behavioral testing, pengujian ini berfokus pada persyaratan fungsional perangkat lunak. Artinya, Pengujian blackbox memungkinkan perekayasa perangkat lunak untuk mendapatkan set kondisi input (masukan) yang akan melaksanakan semua persyaratan fungsional untuk suatu program, kemudian berfokus pada output yang dihasilkan sebagai respon terhadap input atau masukan yang diberikan kepada sistem. Menurut Al fatta (2007), Black box testing terfokus pada apakah unit program memenuhi kebutuhan (requirement) yang disebutkan dalam spesifikasi. Pada Black boxtesting, cara pengujian hanya dilakukan dengan menjalankan atau mengeksekusi unit atau modul, kemudian diamati apakah hasil dari unit itu sesuai dengan proses yang diinginkan. Metode pengujian black-box bertujuan untuk menemukan kesalahan dalam hal sebagai berikut: 1. Fungsi yang tidak benar atau hilang. 2. Kesalahan pada antarmuka (Interface). 3. Kesalahan pada struktur data atau akses terhadap basis data. 4. Kesalahan pada perilaku dan performa. 5. Inisialisasi dan penghentian kesalahan. Pengujian black-box cenderung diterapkan pada tahap akhir suatu proses uji coba perangkat lunak. Melalui pengujian ini, kita dapat menentukan apakah suatu fungsi bekerja sesuai dengan spesifikasinya atau tidak.
20 http://digilib.mercubuana.ac.id/
2.10
Pengertian DataBase Beberapa pegertian database menurut para ahli :
1. Menurut
Kustiyaningsih
(2011:146),
“Database
adalah
struktur
penyimpanan data. Untuk menambah, mengakses dan memproses data yang di simpan di dalam sebuah databasekomputer, di perlukan sistem manajemen database seperti MYSQL Server” 2. Menurut Anhar (2010:45), “Database adalah sekumpulan tabel – tabel yang berisi data dan merupakan kumpulan dari field atau kolom. Struktur file yang menyusun sebuah database adalah data record dan field”. 3. Menurut martono, (2009:32), “Database adalah sebagai kupulan data dari penempatan tenaga kerja yang saling terkait dan mempengaruhi sesuai dengan tingkat kepentingannya sehingga data tersebut terintegrasi dan independence”. Berdasarkan beberapa pendapat para ahli yang dikemukakan di atas dapat di tarik kesimpulan bahwa database adalah sekelompok data yang mempunyai ciri – ciri khusus dan dapat di kelola sedemikian rupa sehingga bisa menghasilkan sebuah format data yang baru. 2.11
Pengertian MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL
(database management system) atau DBMS yang multithread, multiuser, dengan sekitar 6 juta instalasi di seluruh dunia. MySQL merupakan Perangkat lunak gratis dibawah lisensi GPL (GNU General Public License). MySQL dikembangkan oleh pengembang dan konsultan dibidang database bernama MySQL AB pada sekitar tahun 1994 di Swedia dengan tujuan awalnya mengembangkan aplikasi berbasis web pada client. Pengembangan MySQL dilanjutkan oleh Michael Monty Widenius dengan mengembangkan aplikasi antar muka dari aplikasi UNIREG dan ISAM. Monty pada saat itu menggunakan user interface buatan David Hughes dengan nama miniSQL, namun karena dalam proses query sangat lambat maka Monty meminta ijin David untuk
21 http://digilib.mercubuana.ac.id/
mengembangkan miniSQL sehingga terciptalah MySQL yang mempunyai performa lebih baik dari miniSQL (Murya, 2014). 2.11.1 Syntaks – syntaks MySQL Perintah-perintah yang umum digunakan dalam MySQL diantaranya adalah: 1) INSERT Digunakan untuk mengisi data atau menambah record pada suatu tabel. INSERT INTO nama_tabel (kolom1, kolom2..) VALUES (nilai1,nilai2..); 2) SELECT Digunakan untuk melihat data dari satu atau beberapa tabel. SELECT kolom-kolom; FROM nama-tabel; Untuk melihat seluruh isi kolom dari suatu tabel digunakan query SELECT *. SELECT * FROM nama-tabel; 3) WHERE Digunakan untuk menyaring hasil query sehingga record yang dikeluarkan hanyalah record yang sesuai dengan yang diinginkan. SELECT kolom1, kolom2; FROM kolom1 WHERE kolom2 < kriteria; 4) DISTINCT Dapat digunakan untuk menghilangkan record-record yang sama. SELECT DISTINCT kolom2 FROM kolom1; 5) BETWEEN Digunakan untuk membatasi suatu batas nilai tertentu. SELECT kolom1,kolom2,kolom3 FROM kolom1 WHERE kolom2 BETWEEN..AND..; 6) LIKE
22 http://digilib.mercubuana.ac.id/
Digunakan untuk pencarian data yang memiliki pola tertentu. SELECT kolom1,kolom2 FROM kolom1 WHERE kolom1 LIKE „A%‟; 7) ORDER BY Digunakan untuk mensortir data hasil query sesuai dengan kebutuhan. SELECT kolom1,kolom2 FROM kolom1 ORDER BY kolom1; Untuk mensortir dengan urutan terbalik, digunakan keyword tambahan DESC. Sedangkan untuk ututan yang teratur digunakan keyword ASC. SELECT kolom1.kolom2 FROM kolom1 ORDER BY kolom 1 DESC; 8) DELETE Digunakan untuk menghapus suatu record dengan kriteria tertentu. DELETE FROM nama-tabel WHERE kriteria: Untuk menghapus record pada suatu tabel, digunakan perintah DELETEtanpa menentukan kriterianya. DELETE FROMnama-tabel; 9) UPDATE Digunakan untuk memodifikasi nilai kolom dari suatu record. UPDATE nama-tabel SET nama-kolom1=nilai-baru1,nilai-kolom2=nilai-baru2,.. WHERE kriteria;
23 http://digilib.mercubuana.ac.id/