BAB II LANDASAN TEORI
2.1
Android
Menurut Wari Bayu Sabagus (2016,p10) Android merupakan sistem operasi berbasis Linux yang bersifat terbuka (Open Source) dan dirancang untuk perangkat seluler layar sentuh seperti smartphone dan komputer tablet. Android dikembangkan oleh Android,Inc. Dengan dukungan finansial dari Google yang kemudian dibeli pada tahun 2005. Android dirilis secara resmi pada tahun 2007, bersamaan dengan didirikannya Open Handset Alliance. Tampilan Android didasarkan pada manipulasi langsung, menggunakan masukan sentuh yang serupa dengan tindakan didunia nyata, seperti menggesek, mengetuk mencubit, dan membalikkan cubitan untuk memanipulasi objek dilayar. Pada bulan Oktober 2012, terdapat 700.000 aplikasi yang tersedia untuk android, dan sekitar 25 juta aplikasi yang telah diunduh dari GooglePlay, toko aplikasi utama Android. Sebuah survey pada bulan April-Mei 2013 menemukan bahwa Android adalah platform paling popular bagi para pengembang, digunakan oleh 71% pengembang aplikasi seluler. Dan pada tanggal 3 September 2013, 1 miliar perangkat Android telah diaktifkan. Sifat android yang terbuka telah membuat bermunculannya sejumlah besar komunitas pengembang aplikasi untuk menggunakan android sebagai dasar proyek pembuatan aplikasi, dengan menambahkan fitur-fitur baru bagi Android pada perangkat secara resmi dirilis dengan menggunakan sistem operasi lain.
Menurut Finda Anisa Putri dan Anastasia (2015,p31) Android adalah sebuah platform kelas dunia untuk membuat aplikasi dan game bagi penggunanya. Android berkontribusi dari komunitas open source Linux dan lebih dari 300 perangkat keras, perangkat lunak dan mitra yang tumbuh paling cepat. Android diibaratkan sebagai sebuah tumpukan software. Setiap lapisan dari tumpukan ini menghimpun beberapa program yang mendukung fungsi-fungsi spesifik dari sistem operasi. Tumpukan paling bawah adalah kernel. Google menggunakan kernel Linux versi 2.6 untuk membangun android, yang mencakup memory management, security setting, power management, dan beberapa driver hardware. Bertempat di level yang sama dengan library adalah lapisan runtime yang mencakup serangkaian inti library Java dengan itu para programmer dapat mengembangkan aplikasi untuk Android menggunakan bahasa pemrograman Java.
6
http://digilib.mercubuana.ac.id/
7
Lapisan selanjutnya adalah application framework, yang mencakup program untuk mengatur fungsi-fungsi dasar smartphone.
2.2
Eclipse
Menurut Michael Halim Widjaja dan Steven Suryajaya (2011,p12) Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Sifat-sifat dari Eclipse: •
Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
•
Multi-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.
•
Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat
lunak,
seperti
dokumentasi,
test
perangkat
lunak,
pengembangan web, dan lain sebagainya.
Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk d a p a t dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.
Menurut Sheetal Bandekar dan Avril D'silva (2016,p148) Eclipse adalah Integrated Development Environment (IDE) hadir untuk melayani para programmer dengan semua platform untuk mengembangkan aplikasi android. Eclipse terdiri dari berbagai proyek didalam aspek yang berbeda dari pengembangan perangkat lunak. Eclipse telah ada dengan banyak tipe dari Sun Micro System, dan merupakan hasil pengembangan dari bahasa Java. Eclipse dapat berjalan di berbagai mesin seperti Intel, Mac dan sebagainya. Eclipse disediakan untuk pengembangan dalam membangun kerangka kerja aplikasi, pengembangan perangkat, dan platform yang lain untuk klien.
http://digilib.mercubuana.ac.id/
8
2.3
Java
Menurut Finda Anisa Putri dan Anastasia (2015,p35) Java merupakan bahasa pemrograman yang dikembangkan oleh James Gosling, Patrick Naughton, Chris Warth, Ed Frank dan Mike Sheridan di Sun Microsystems pada tahun 1991. Pada awalnya, bahasa pemrograman ini disebut “Oak”, namun berubah nama menjadi Java pada tahun 1995. Tujuan utama dari Java adalah untuk dapat menulis program yang akan dijalankan pada berbagai macam komputer, selain itu Java dapat ditulis sekali namun dapat digunakan dan dijalankan di mana saja.
Java menggunakan pemrograman berorientasi objek atau Object Orientied Programming (OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Untuk menjalankan Java pada aplikasi membutuhkan Java Runtime Environment. Bahasa pemrograman Java menggunakan sintaks yang mirip dengan C++ namun sintaks pada Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan multiple inheritance.
Menurut
Wari
Bayu
Sabagus
(2016,p24)
Java
merupakan
Bahasa
pemrograman yang dikembangkan dari Bahasa pemrograman C++, sehingga Bahasa pemrograman ini seperti Bahasa C++. Java diciptakan oleh James Gosling dan Patrick Naughton dalam
suatu
propject,
dengan
kode
hijau (Green Code)
di
Sun
Microsystem. Pada mulanya ingin diberi nama OAK dari pohon yang terdapat pada kantor James Gosling, tetapi kata OAK telah ada pada Sun Microsystem, maka diberi nama Java (dari inspirasi minum kopi). Browser pertama yang dapat membaca Java adalah Hot Java. Setelah browser Netscape dari perudahaan Netscape Navigator dan Internet Explorer dari perusahaan Microsoft Inc dapat membaca script Java, maka Bahasa Java semakin popular. Vendor-vendor lain seperti IBM, Oracle, Symantec, inspire (dahulu Borland Inc.) dan perusahaan-perusahaan mobile, seperti
Nokia,
Siemens, Sony Ericsson, Motorola dan Samsung juga mengadopsi teknologi Java.
Versi Pertama Java dirilis pada awal tahun 1996, dengan sebutan JDK 1.1 (Java Development kit versi 1.1), kemudian muncuk Java 2 yang dilengkapi dengan Swing, yaitu teknologi GUI (Graphical user Interface) yang dapat menghasilkan aplikasi desktop. Pada tahun 1998-1999 diluncurkan teknologi Java yang berbasis Enterprise yang
disebut
dengan
J2EE
(Java
2
Enterprise
Edition). Teknologi J2EE ini
http://digilib.mercubuana.ac.id/
9
diawali dengan Servlet dan EJBs (Entity Java Beans), kemudian diikuti dengan JSP (Java Server Page).
2.4
PHP
Menurut Wari Bayu Sabagus (2016,p24) PHP adalah akronim dari Hypertext Preprocessor yaitu suatu bahasa pemrograman berbasiskan kode-kode (script) yang digunakan untuk mengolah suatu data dan mengirimkannya kembali ke web browser menjadi kode HTML.
Menurut www.w3schools.com, PHP is a server scripting language, and a powerful tool for making dynamic and interactive Web pages. PHP is a widely-used, free, and efficient alternative to competitors such as Microsoft's ASP. PHP scripts are executed on the server.
File PHP dapat berisi teks, HTML, CSS, JavaScript, dan kode PHP. Kode PHP dieksekusi pada server, dan hasilnya dikembalikan ke browser sebagai HTML biasa. File PHP memiliki ekstensi ".php". Yang bisa dilakukan PHP antara lain:
a.
PHP dapat menghasilkan konten halaman dinamis.
b.
PHP dapat membuat membuka, membaca, menulis, menghapus, dan menutup file pada server.
c.
PHP dapat mengumpulkan data formulir.
d.
PHP dapat mengirim dan menerima cookie.
e.
PHP dapat menambah, menghapus, memodifikasi data dalam database.
f.
PHP dapat digunakan untuk mengontrol akses pengguna.
g.
PHP dapat mengenkripsi data.
Dengan PHP Anda tidak hanya bisa untuk menghasilkan output HTML. Tetapi juga anda dapat output gambar, file PDF, dan bahkan film Flash. Anda juga dapat menghasilkan teks, seperti XHTML dan XML.
Kode PHP mempunyai ciri-ciri khusus yaitu :
a.
Hanya dapat dijalankan menggunakan web server, misal Apache.
b.
Kode PHP diletakkan dan dijalankan di web server.
c.
Kode PHP digunakan untuk mengakses
http://digilib.mercubuana.ac.id/
database seperti : MySQL,
10
PostgreSQl, Oracle dan lain-lain.
d.
Merupakam software yang bersifat open source.
e.
Gratis untuk didownload dan digunakan.
f.
Memiliki sifat multiplatform, yaitu dapat dijalankan menggunakan sistem operasi apapun, seperti Linux, Unix, Windows, dan lain-lain.
Dengan menggunakan PHP, selain memberikan keuntungan seperti beberapa poin di atas, juga didukung oleh banyak komunitas. Hal ini yang membuat PHP terus berkembang.
2.5
Rekayasa perangkat lunak
2.5.1
Waterfall
Menurut Pressman (2015, p42), model waterfall adalah model klasik yang bersifat sistematis, berurutan dalam membangun software. Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut juga dengan “classic life cycle” atau metode waterfall. Model ini termasuk ke dalam model generic pada rekayasa perangkat lunak dan pertama kali diperkenalkan oleh Winston Royce sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai dalam Software Engineering (SE). Model ini melakukan pendekatan secara sistematis dan berurutan. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Tahapan-tahapan dalam model Waterfall menurut Pressman (2010) adalah sebagai berikut:
Gambar 2.1 Model Waterfall (Roger S. Pressman, Ph.D.,2015)
http://digilib.mercubuana.ac.id/
11
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.
Planning Proses planning merupakan lanjutan dari proses communication (analysis requirement). Tahapan ini akan menghasilkan dokumen user requirement atau bisa dikatakan sebagai data yang berhubungan dengan keinginan user dalam pembuatan software, termasuk rencana yang akan dilakukan.
3.
Modeling Proses modeling ini akan menerjemahkan syarat kebutuhan ke sebuah perancangan software yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada rancangan struktur data, arsitektur software, representasi interface, dan detail (algoritma) prosedural. Tahapan ini akan menghasilkan dokumen yang disebut software requirement.
4.
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.
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.
http://digilib.mercubuana.ac.id/
12
2.6
UML (Inified Modeling Language)
Inified modeling language atau UML merupakan salah satu standar bahasa yang banyak digunakan didunia industri untuk mendefinisikan requirment, membuat analisis & desain, serta menggambarkan arsitektur dalam pemrograman berorientasi objek. UML muncul karena adanya kebutuhan pemodelan visual menspesifikasikan, menggambarkan, membangun, dan dokumentasi dari sistem perangkat lunak. UML merupakan bahasa visual untuk pemodelan dan komunikasi mengenai sebuah sistem dengan menggunakan diagram dan teks - teks pendukung. UML hanya berfungsi untuk melakukan pemodelan. Jadi penggunaan UML tidak terbatas pada metodologi tertentu, meskipun pada kenyataannya UML paling banyak digunakan pada metodologi berorientasi objek (Rosa A.S dan M.Shalahuddin, 2013:137).
2.6.1
Use case diagram
Use case Diagram merupakan pemodelan untuk melakukan (behavior) sistem informasi yang akan dibuat. Use Case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada didalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi – fungsi tersebut (Rosa A.S dan M.Shalahuddin, 2013:155).
Syarat penamaan pada use case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa yang disebut aktor dan use case. •
Aktor merupakan orang, proses atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat diluar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang.
•
Use Case merupakan fungsionalitas yang disediakan sistem sebagai unit unit yang saling bertukar pesan antar unit atau aktor.
http://digilib.mercubuana.ac.id/
13
Tabel 2.1 Simbol - Simbol Use Case Diagram dan Fungsinya No
Gambar
1
Nama Actor
Keterangan Menspesifikasikan
himpunan
peran
yang
pengguna mainkan ketika berinteraksi dengan use case. Use Case
2
Deskripsi dari urutan aksi – aksi yang di tampilkan sistem yang menghasilkan suatu hasil yang terukur bagi suatu aktor.
3
Association
Apa yang menghubungkan antara objek satu dengan objek lainnya.
4
System
Menspesifikasikan paket yang menampilkan sistem secara terbatas.
5
<
>
Include
Penggabungan dari use case satu ke use case lainnya.
6
<<extend>>
Extend
Menspesifikasikan
bahwa
use
case
target
memperluas perilaku dari use case sumber pada suatu titik yang diberikan.
Gambar 2.2 Contoh Use Case Diagram (Rosa A.S dan M.Shalahuddin,2013)
http://digilib.mercubuana.ac.id/
14
2.6.2
Activity diagram
Activity diagram ialah menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis atau menu yang ada pada perangkat lunak. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sistem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem (Rosa A.S dan M.Shalahuddin, 2013:161).
Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal- hal berikut: •
Rancangan
proses
bisnis
dimana
setiap
urutan
aktivitas
yang
digambarkan merupakan proses bisnis sistem yang didefinisikan. •
Urutan atau pengelompokan tampilan dari sistem / user interface dimana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan.
Tabel 2.2 Simbol - Simbol Activity Diagram dan Fungsinya No 1
Gambar
Nama
Keterangan
Activity
Memperlihatkan bagaimana masing – masing kelas antar muka saling berinteraksi satu sama lain.
2
Action
State
dari
sistem
yang
mencerminkan
eksekusi dari suatu aksi. 3
Initial Node
Bagaimana objek dibentuk atau diawali.
4
Activity Final
Bagaimana objek dibentuk dan diakhiri.
Node 5
Decision
Digunakan untuk menggambarkan
suatu
keputusan / tindakan yang harus diambil pada kondisi tertentu.
http://digilib.mercubuana.ac.id/
15
6
Line Connector
Digunakan
untuk
menghubungkan
satu
simbol dengan simbol lain.
7
Parallelization
Pemisahan satu jalur eksekusi ke dua atau lebih jalur eksekusi bersamaan.
Node 8
Synchronization
Penggabungan dari dua atau lebih bersamaan
Node
jalur eksekusi menuju ke satu jalur eksekusi.
Gambar 2.3 Contoh Activity Diagram (Rosa A.S dan M.Shalahuddin,2013
http://digilib.mercubuana.ac.id/
16
2.6.3
Sequence diagram
Sequence diagram menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan pesan yang dikirimkan dan diterima antar objek. Oleh karena itu untuk menggambar sequence diagram maka harus diketahui objek – objek yang terlibat dalam sebuah use case beserta metode – metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Membuat sequence diagram juga dibutuhkan untuk melihat skenario yang ada pada use case (Rosa A.S dan M.Shalahuddin, 2013:165).
Banyaknya sequence diagram yang harus digambar adalah minimal sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada sequence diagram sehingga semakin banyak use case yang didefinisikan maka sequence diagram yang harus dibuat juga semakin banyak.
Tabel 2.3 Simbol - Simbol Sequence Diagram dan Fungsinya No 1
Gambar
Nama Aktor
Keterangan Digunakan untuk menggambarkan user
/
pengguna.
2
Waktu Aktif
Waktu objek dalam berinteraksi,
semua
keadaan aktif dan yang
berhubungan
dengan waktu aktif ini adalah sebuah tahapan yang dilakukan didalamnya. 3
Garis hidup /
Menyatakan kehidupan suatu objek.
lifeline
4
Objek
Menyatakan objek yang berinteraksi pesan.
http://digilib.mercubuana.ac.id/
17
5
Message Call
Menyatakan
suatu
objek
memanggil
operasi/metode yang ada pada objek lain atau dirinya sendiri. Pesan
6
Masukan
Menyatakan
bahwa
suatu
objek
mengirimkan data / masukan / informasi ke objek lainnya.
7
1: Message Return
Pesan
Menyatakan bahwa suatu objek yang sudah
Keluaran
menjalankan suatu operasi atau metode menghasilkan kembalian ke objek tertentu.
Gambar 2.4 Contoh Sequence Diagram (Rosa A.S dan M.Shalahuddin,2013)
2.6.4
Class diagram
Class Diagram menggambarkan struktur sistem dari segi pendefinisian kelas – kelas yang akan dibuat untuk menbangun sistem. Kelas memiliki apa yang disebut atribut dan metode atau operasi. •
Atribut merupakan variabel - variabel yang dimiliki oleh suatu kelas.
•
Operasi atau metode adalah fungsi – fungsi yang dimiliki oleh suatu kelas.
http://digilib.mercubuana.ac.id/
18
Diagram kelas dibuat agar programmer membuat kelas – kelas sesuai rancangan didalam diagram kelas agar antara dokumentasi perancangan dan perangkat lunak sinkron. Banyak berbagai kasus, perancangan kelas yang dibuat tidak sesuai dengan kelas – kelas yang dibuat pada perangkat lunak, sehingga tidaklah ada gunanya lagi sebuah perancangan karena apa yang dirancang dan hasil jadinya tidak sesuai (Rosa A.S dan M.Shalahuddin, 2013:141). . Kelas – kelas yang ada pada struktur sistem harus dapat melakukan fungsi – fungsi sesuai dengan kebutuhan sistem sehingga programmer dapat membuat kelas – kelas didalam program perangkat lunak sesuai dengan perancangan diagram kelas. Susunan struktur kelas yang baik pada diagram kelas sebaiknya memiliki jenis – jenis kelas berikut: •
Kelas main Kelas yang memiliki fungsi awal dieksekusi ketika sistem dijalankan.
•
Kelas yang menangani tampilan sistem (view) Kelas yang mendefinisikan dan mengatur tampilan ke pemakai.
•
Kelas yang diambil dari pendefinisian use case (controller) Kelas yang menangani fungsi – fungsi yang harus ada diambil dari pendefinisian use case, kelas ini biasanya disebut dengan kelas proses yang menangani proses bisnis pada perangkat lunak.
•
Kelas yang diambil dari pendefinisian data (model) Kelas yang digunakan untuk memegang atau membungkus data menjadi sebuah kesatuan yang diambil maupun akan disimpan ke basis data. Semua tabel yang dibuat di basis data dapat dijadikan kelas, namun untuk tabel dari hasil relasi atau atribut multivalue pada ERD dapat dijadikan kelas tersendiri dapat juga tidak asalkan pengaksesannya dapat dipertanggung jawabkan atau tetap ada didalam perancangan kelas.
Tabel 2.4 Simbol - Simbol Class Diagram dan Fungsinya No 1
Gambar
Nama
Keterangan
Class
Himpunan dari objek – objek yang berbagi atribut serta operasi yang sama.
http://digilib.mercubuana.ac.id/
19
2
3
Asosiasi / Association
umum.
Agregasi /
Relasi antar kelas dengan makna
Aggregation
4
Relasi antar kelas dengan makna
Generalization / Generalisasi
semua bagian.
Relasi antar kelas dengan makna generalisasi-spesialisasi
(umum-
khusus). 5
Directed
Relasi antar kelas dengan makna
Association /
kelas yang satu digunakan oleh
Asosiasi berarah 6
Dependency / Kebergantungan
kelas yang lain. Relasi antar kelas dengan makna kebergantungan antar kelas.
Gambar 2.5 Contoh Class Diagram (Rosa A.S dan M.Shalahuddin,2013)
http://digilib.mercubuana.ac.id/
20
2.7
Basis data
Sistem basis data adalah sistem terkomputerisasi yang tujuan utamanya adalah memelihara data yang sudah diolah atau informasi dan membuat informasi tersedia saat dibutuhkan. Pada intinya basis data adalah media untuk menyimpan data agar dapat diakses dengan mudah dan cepat (Rosa A.S dan M.Shalahuddin, 2013:43).
Menurut Wari Bayu Sabagus (2016,p27) Basis data adalah sebuah struktur yang umunya terbagi dalam 2 hal, yaitu sebuah basis data flat dan sebuah
basis data
relasional. Prinsip basis data relasional adalah informasi dibagi menjadi beberapa data yang terpisah secara logis. Data-data yang terpisah tersebut diletakkan dalam bentuk tabel. Basis data relasional lebih mudah dipahami daripada basis data flat karena mempunyai bentuk yang sederhana serta mudah dilakukan operasi data. Dan MySQL adalah sebuah basis data relasional. Basis data yang memiliki struktur relasional terdapat tabel - tabel untuk menyimpan data. Pada setiap tabel terdiri dari kolom dan baris serta sebuah kolom untuk mendefinisikan jenis informasi apa yang harus disimpan.
MySQL pertama kali dirintis oleh seorang programmer database bernama Michael Widenius. MySQL database server adalah RDBMS (Relational Database Management System) yang dapat menangani data yang bervolume besar. Meski begitu tidak menuntut resource yang besar. MySQL adalah database yang mampu mengirim dan menerima data dengan sangat cepat dan multiuser. MySQL sudah cukup lama dikembangkan, beberapa fase penting dalam pengembangan MySQl adalah sebagai berikut :
a.
MySQL dirilis pertama kali secara internal pada 23 Mei 1995.
b.
Versi Windows dirilis pertama kali pada 1998 untuk Windows 95 dan Windows NT.
c.
Versi 3.23 : Beta dari Juni 2000, dan dirilis pada Januari 2001.
d.
Versi 4.0 : Beta dari Agustus 2002, dan dirilis pada Maret 2003 (unions).
e.
Versi 4.1 : Beta dari Juni 2004, dan diriis pada Oktober 2004 (R- Trees dan B-Trees, subqueries, prepare statements).
f.
Versi 5.0 : Beta dari Maret 2005, dan dirilis pada Oktober 2005 (cursor, stored procedure, trigger, view XA transaction).
g.
Sun
Microsystems
membeli
MySQL
http://digilib.mercubuana.ac.id/
AB
pada
tanggal
26
21
Februari 2008.
h.
Versi 5.1 dirilis 27 November 2008 (event scheduler, partitioning, plugin API, row-based replication, sever log table).
MySQL
memiliki
beberapa
kelebihan
dan
keuntungan
dibanding
database lain, diantaranya adalah :
a.
Banyak ahli berpendapat MySQL merupakan server tercepat.
b.
MySQL merupakan manajemen database yang Open Source (kode sumbernya terbuka), yaitu software ini bersifat free atau bebas digunakan oleh perseorangan atau instansi tanpa harus membeli atau membayar kepada pembuatnya.
c.
MySQL mempunyai performa yang tinggi tapi simple.
d.
Database
MySQL
mengerti
bahasa
SQL
(Structured
Query
Language).
e.
MySQl dapat diakses melalui protokol ODBC (Open Dabatabse Connectivity) buatan Microsoft. Ini menyebabkan
MySQL dapat
diakses oleh banyak software.
f.
Semua klien dapat mengakses server dalam satu waktu, tanpa harus menunggu yang lai untuk mengakses database.
g.
Database MySQL dapat diakses dari semua tempat di internet dengan hak akses tertentu.
h.
MySQl
merupakan
database
yang
mampu
menyimpan
data
berkapasitas besar, sampai berukuran Gigabyte. MySQL dapat berjalan di berbagai operating system seperti Linux, Windows, Solaris, dan lain-lain.
2.7.1
Sistem manajemen basis data
Sistem manajemen basis data atau database management system (DBMS) adalah sistem aplikasi yang digunakan untuk menyimpan, mengelola, dan menampilkan data. Suatu sistem aplikasi disebut DBMS jika memenuhi persyaratan minimal sebagai berikut: • Menyediakan fasilitas untuk mengelola akses data. • Mampu menangani integritas data. • Mampu menangani akses data yang dilakukan banyak.
http://digilib.mercubuana.ac.id/
22
• Mampu menangani backup data. Karena pentingnya data bagi suatu organisasi / perusahaan, maka hampir sebagian besar perusahaan memanfaatkan DBMS dalam mengelola data yang mereka miliki. Pengelolaan DBMS sendiri biasanya ditangani ahli yang spesialis menangani DBMS yang disebut sebagai Database Administrator (Rosa A.S dan M.Shalahuddin, 2013:44).
2.8
Pengujian sistem
2.8.1
Black-Box Testing
Menurut Edward Ivan Fadli dan Sudiarto Winata, (2011:47) “Black-box testing atau disebut juga sebagai behavioral testing, berfokus terhadap kebutuhan fungsional dari suatu software. Teknik black-box testing memungkinkan untuk memperoleh kumpulan dari kondisi input-an yang akan menjalankan semua kebutuhan fungsional untuk sebuah program”. Black Box testing berupaya untuk menemukan kesalahan di kategori berikut: (1) fungsi yang salah atau hilang, (2) kesalahan antarmuka, (3) kesalahan di dalam struktur data atau akses eksternal database, dan (4) kesalahan inisialisasi dan terminasi.
Black-Box Testing yaitu 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. Pengujian black-box dilakukan dengan membuat kasus uji yang bersifat mencoba semua fungsi dengan memakai perangkat lunak apakah sesuai dengan spesifikasi yang dibutuhkan. Kasus uji coba yang dibuat untuk melakukan pengujian kotak hitam harus dibuat dengan kasus benar dan kasus salah (Rosa A.S dan M.Shalahuddin, 2013:275).
http://digilib.mercubuana.ac.id/