22
5 BAB II LANDASAN TEORI 2.1. Konsep Dasar Program Pengertian program menurut Suarga (2009:14), “Program komputer adalah serangkaian instruksi yang ditulis dengan menggunakan suatu bahasa program yang dipilih untuk memberi perintah kepada komputer tentang yang apa harus dikerjakannya”. Suatu program dibuat dengan menggunakan bahasa pemrograman, seperti Java, C ++ dan Visual Basic.Net. Orang yang membuat program disebut sebagai pemrogram atau programmer, aktivitas membuat program disebut sebagai pemrograman. Jadi pemrograman merupakan suatu kumpulan urutan perintah ke komputer untuk mengerjakan sesuatu. Perintah-perintah ini membutuhkan suatu bahasa tersendiri, sebagaimana bahasa manusia, bahasa pemrograman memiliki kaidah tertentu yang dapat dimengerti oleh komputer. Meskipun sama-sama dalam konteks program komputer, ada juga pendapat lain mengenai pengertian program. Menurut Kadir (2014:2), “Program adalah kumpulan instruksi yang ditujukan untuk komputer agar komputer dapat melakukan tujuan tertentu yang diharapkan oleh pemakai”. Sehingga ketika kita mengerti mengenai pengertian program, kita juga perlu mengetahui bahwa sebelum program diterapkan secara umum, program harus bebas terlebih dahulu dari kesalahan- kesalahan yang bisa mengakibatkan error. Dalam hal ini, program harus diuji untuk menemukan kesalahan-kesalahan yang mungkin dapat terjadi. Kesalahan dari

BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

5

BAB II

LANDASAN TEORI

2.1. Konsep Dasar Program

Pengertian program menurut Suarga (2009:14), “Program komputer adalah

serangkaian instruksi yang ditulis dengan menggunakan suatu bahasa program yang

dipilih untuk memberi perintah kepada komputer tentang yang apa harus

dikerjakannya”. Suatu program dibuat dengan menggunakan bahasa pemrograman,

seperti Java, C ++ dan Visual Basic.Net.

Orang yang membuat program disebut sebagai pemrogram atau

programmer, aktivitas membuat program disebut sebagai pemrograman. Jadi

pemrograman merupakan suatu kumpulan urutan perintah ke komputer untuk

mengerjakan sesuatu. Perintah-perintah ini membutuhkan suatu bahasa tersendiri,

sebagaimana bahasa manusia, bahasa pemrograman memiliki kaidah tertentu yang

dapat dimengerti oleh komputer.

Meskipun sama-sama dalam konteks program komputer, ada juga pendapat

lain mengenai pengertian program. Menurut Kadir (2014:2), “Program adalah

kumpulan instruksi yang ditujukan untuk komputer agar komputer dapat melakukan

tujuan tertentu yang diharapkan oleh pemakai”. Sehingga ketika kita mengerti

mengenai pengertian program, kita juga perlu mengetahui bahwa sebelum program

diterapkan secara umum, program harus bebas terlebih dahulu dari kesalahan-

kesalahan yang bisa mengakibatkan error. Dalam hal ini, program harus diuji untuk

menemukan kesalahan-kesalahan yang mungkin dapat terjadi. Kesalahan dari

Page 2: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

6

program yang mungkin terjadi dapat diklasifikasikan dalam beberapa hal. Jadi

secara ringkas ada beberapa macam error yang dapat kita hindari yaitu:

1. Kesalahan logika (Logic Error), adalah kesalahan yang dilakukan oleh seorang

progammer dikarenakan algoritma dan logika yang dibuat salah.

2. Kesalahan sintaks (Syntax Error), adalah kesalahan yang dikarenakan seorang

pemrogram tidak mematuhi tata bahasa program yang digunakan.

3. Kesalahan dalam proses (Run Time Errors). adalah kesalahan yang terjadi pada

saat program dijalankan (running).

Pembuatan program tentunya tidak terlepas dari tahapan-tahapan yang

harus dikerjakan, untuk lebih jelasnya tahapan perancangan program menurut

Suarga (2009:15), yaitu:

1. Analisis

Melakukan analisis terhadap masalah yang akan diselesaikan dengan program.

2. Desain

Melakukan desain penyelesaian, biasanya melalui alat bantu seperti flowchart

atau algoritma yang tidak lain merupakan susunan langkah strategi dan logika

penyelesaian.

3. Pengodean

Hasil desain diterjemahkan ke dalam bahasa program yang dipilih dan diketik

ke dalam file komputer yang disebut file source.

4. Kompilasi

Proses penerjemahan program (source) ke dalam objek yang sesuai, biasanya

disertai pemeriksaan sintaksis dari program. Bila ditemukan kesalahan ketik

atau kesalahan perintah maka kompiler akan melaporkan kesalahan tersebut.

Page 3: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

7

5. Pengujian

Apabila proses kompilasi sukses maka program bisa diuji coba dengan

memberikan data sesuai keperluan dan kemudian hasilnya diamati. Apabila

output yang diharapkan tidak sesuai berarti ada kesalahan logika atau strategi

dalam desain sehingga perlu ditinjau kembali, bahkan kadang kala harus

kembali ke langkah analisis.

6. Implementasi

Setelah lolos uji coba maka program dapat digunakan sesuai tujuan

pembuatannya.

2.1.1. Pemrograman Terstruktur

Pengertian pemrograman terstruktur menurut Rossa dan Shalahuddin

(2013:67), “Pemrograman terstruktur adalah konsep atau paradigma atau sudut

pandang pemrograman yang membagi-bagi program berdasarkan fungsi-fungsi

atau prosedur-prosedur yang dibutuhkan program komputer”. Dari definisi tersebut

dapat disimpulkan bahwa suatu program aplikasi yang dibuat dengan konsep

pemgoraman terstruktur, program aplikasi tersebut dibagi berdasrakan fungsi-

fungsi yang ada di dalam aplikasi misalnya aplikasi penggajian didalam aplikasi

tersebut ada prosedur mengelola data gaji dan di dalam prosedur tersebut ada

fungsi-fungsi seperti fungsi simpan, hapus, hitung, edit, delet dan lain-lain.

2.1.2. Bahasa Pemrograman Java

Menurut definisi dari Sun MicroSystem, Java adalah bahasa pemrograman

yang simple, object-oriented, distributed, interpreted, robust, secure, architecture

neutral, portable, high-performance. Berikut ini penjelasan dari definisi diatas

menurut Suarga (2009:3) diantaranya:

Page 4: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

8

1. Java bahasa yang simple: Rancangan bahasa Java dibuat sedemikian rupa

sehingga cepat dapat dikenali dan dipahami oleh pemrogram pemula sekalipun

karena mirip dengan bahas C/C++ dan yang kedua lebih sederhana dari C/C++

dalam beberapa hal mengingat berbagai hal yang sulit pada C/C++ sudah tidak

ada pada Java, misalnya pemakaian pointer.

2. Java adalah bahasa yang object-oriented: Konsep objek diterapkan pada

pembuatan program Java, bahkan Java menggunakan konsep objek secara

murni sehingga tidak mungkin seseorang membuat program Java tanpa

mendefinisikan kelas dan menggunakan objek.

3. Java adalah bahasa yang distributed: Bahasa Java dirancang sedemikian rupa

sehingga mendukung pembuatan aplikasi dalam jaringan komputer. Java

menyediakan beberapa kelas objek untuk mendukung aplikasi jaringan yang

dihimpun dalam paket java.net.

4. Java adalah bahasa yang robust: Rancangan Java dibuat sedemikian rupa hingga

mengurangi kemungkinan menjadi beku (freeze) ketika dijalankan.

Kemungkinan untuk error pun diminimalkan, misalnya dengan menerapkan

strong-typed sehingga program bisa terhinadar dari kesalahan karena tipe data

yang keliru. Java juga menerapkan model memori yang dapat mencega memori

corrupt dan overwrited, misalnya dengan membuang pemakaian pointer.

5. Java adalah bahasa yang secure: Secara otomatis Java menerapkan pengamanan

terhadap aplikasi sehingga mengurangi kemungkinan serangan dari pengguna

jaringan.

Page 5: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

9

6. Java adalah bahasa architectural neutral: Program Java yang telah dikompilasi

dapat dijalankan pada berbagai mesin dan tidak hanya bergantung pada satu

arsitektur komputer saja.

7. Java adalah bahasa yang portable: Program Java sangat mudah dipindahkan dari

suatu mesin ke mesin lain tanpa harus dikompilasi ulang. Pada haikatnya, ketika

dikompilasi program java diubah kedalam format bytecode yang dapat diterma

oleh semua mesin, sementara pada setiap mesin tersedia Java-run-time atau

Java-Virtual-Machine (JVM) yang dapat menjalankan bytecode.

8. Java adalah bahasa high-performance: Pada hakikatnya program C yang telah

dikompilasi berjalan lebih dari cepat dari Java, karena hasil kompilasi C adalah

bahasa mesin komputer yang yang dipakai untuk mengompilasi, namn hasil

kompilasi ini belum tentu bisa jalan pada komputer yang berbeda arsitektur.

Program Java dikompilasi menjadi bytecode yang bisa berjalan diberbagai

mesin, namun ketika dijalankan bytecode ini harus diterjemahkan oleh JVM

kedalam bahasa mesin yang sesuai, sehingga lebih lambat dari C, namun karena

Java dapat digunakan pada jaringan komputer yang kenyataanya tidak terlalu

cepat karena hambatan saluran komunikasi maka program Java masih terasa

cukup cepat.

9. Java adalah bahasa yang multithreaded: Java dirancang untuk menangani

berbagai aplikasi yang berjalan secara bersamaan, misalnya memainkan lagu,

sambil melakukan download, dan pengguna sedang melakukan scrolling pada

window yang diamatinya. Kejadian ini yang disebut multithreaded.

10. Java adalah bahasa dynamic: Bahasa Java dirancang untuk beradaptasi dengan

lingkungan yang dapat berubah cepat. Java dapat memanggil berbagai kelas

Page 6: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

10

objek pada saat dibutuhkan, walaupun harus melalui jaringan. Di samping itu

Java memiliki representasi run-time sehingga objek yang sedang digunakan

oleh suatu aplikasi dapat diperiksa berasal dari kelas yang mana melalui

informasi run-time.

Salah satu keunggulan dari bahasa Java adalah platform independence

artinya program Java, baik source code program maupun hasil kompilasinya tidak

tergantung pada sistem operasi dan platform yang di gunakan. Java pertama kali

dikembangkan untuk memenuhi kebutuhan akan sebuah bahasa komputer yang

ditulis satu kali dan dapat dijalankan dibanyak system komputer berbeda tanpa

perubahan kode. Pada umumnya, para pakar pemrograman berpendapat bahwa

bahasa Java memiliki konsep yang konsisten dengan teori pemrograman objek dan

aman untuk digunakan. Java sampai saat ini masih merupakan bahasa pemrograman

yang masih sangat diminati dan banyak digunakan oleh para programmer dan

software developer untuk mengembangkan berbagai tipe aplikasi, mulai dari

aplikasi console, aplikasi desktop, game, dan applet (aplikasi yang berjalan di

lingkungan web browser), sampai ke aplikasi-aplikasi yang berskala enterprise.

Java dikategorikan menjadi tiga edisi, yaitu: J2SE (Java 2 Platform Standart

Edition) untuk membuat aplikasi-aplikasi desktop dan apllet, J2EE (Java 2

Platform Enterprise Edition) untuk membuat aplikasi-aplikasi berskala enterprise,

dan J2ME (Java 2 Platform Micro Edition) untuk membuat aplikasi-aplikasi yang

dapat dijalankan dilingkungan perangkat-perangkat mikro seperti handphone, PDA

dan Smartphone.

Page 7: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

11

2.1.3. Basis Data (Database)

Pengertian basis data menurut Kadir (2014:218), “basis data adalah suatu

pengorganisasian sekumpulan data yang saling terkait sehingga memudahkan

aktivitas untuk memperoleh informasi”. Sebagain besar basis data berisi banyak

tabel, setiap tabel terdiri dari kolom dan baris. Misalnya basis data perusahaan

mempuanyai bebarapa tabel seperti tabel karyawan, produk, penjualan, pembelian

dan lainnya. Masing-masing tabel ini mempunyai data yang berbeda-beda karena

setiap tabel menyimpan informasi yang relevan bagi penggunanya.

Untuk mengelola basis data dibutuhkan sebuah perangkat lunak yang

dinamakan DBMS (Database Management System), menurut Ramakrishnan dan

Gherke dalam Simarmala dan Paryudi (2010:8), “Sistem Basis Data (DBMS)

adalah perangkat lunak yang didesain untuk membantu memelihara dan

memanfaatkan kumpulan data yang besar”. Sedangkan menurut Kadir (2014:218),

“DBMS adalah perangkat sistem yang memungkinkan para pemakai membuat,

memelihara, mengontrol, dan mengakses basis data dengan cara praktis dan

efisien”.

Hampir semua aplikasi yang digunakan untuk mengolah data pasti

menggunakan DBMS. Seperti halnya web ecommerce yang menggunakan basis

data untuk mengelola datanya seperti data persedian barang, pelanggan, penjualan

dan lain-lain, dengan menggunakan DBMS data dapat begitu mudah dikelola.

Contoh perangkat lunak DBMS yang sering digunakan seperti Microsotf Access,

MySQL, Maria db, dan Oracle.

Page 8: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

12

2.1.4. SQL (Structured Query Language)

Menurut Kadir (2014:242), “SQL (Structured Query Language) adalah

bahasa yang digunakan untuk mengakses basis data yang tergolong relasional”.

Pernyataan SQL digunakan untuk melakukan tugas seperti update data pada basis

data, atau mengambil data dari basis data. Beberapa sistem manajemen basis data

relasional yang menggunakan SQL diantaranya: Oracle, Sybase, Microsoft SQL

Server, Access, MySQL dan lain-lain. Perintah standar SQL seperti select, insert,

update, delete, create, dan drop dapat digunakan untuk menyelesaikan hampir

semua hal yang perlu dilakukan dengan basis data. Berikut ini adalah tabel daftar

sejumlah pernyataan SQL:

Tabel II.1

Daftar Sejumlah Pernyataan SQL

Pernyataan Keterangan

SELECT Untuk mengambil data

INSERT Untuk menambahkan data

UPDATE Untuk mengganti data

DELETE Untuk menghapus data

CREATE TABLE Untuk menciptakan data

DROP TABLE Untuk mengapus tabel

GRANT Untuk mengatur wewenang pemakai

REVOKE Untuk mencabut hak pemakai

Sumber: Kadir (2014:242)

Adapun menurut Indrajani (2014:66) tujuan SQL, antara lain:

1. Bahasa basis data yang dapat memungkinkan user melakukan aktivitas

sebagai berikut:

a) Membuat struktur relasi dan basis data.

Page 9: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

13

b) Melakukan operasi penyisipan, perubahan dan penghapusan data dari

tabel.

c) Melakukan query sederhana dan kompleks.

2. Bahasa basis data yang harus dapat melaksanakan operasi-operasi tersebut

dengan usaha minimal yang dilakukan user, dimana sintaks atau struktur

intruksi harus mudah dipahami atau dipelajari.

3. Harus dapat dipindahkan sehingga memungkinkan untuk pindah dari satu

DBMS ke DBMS lainnya.

4. SQL merupakan transformasi-oriented language dengan 2 komponen

utama sebagai berikut:

a) DDL untuk definisi struktur basis data.

b) DML untuk pengambilan dan perubahan data.

5. Sampai dengan SQL3, SQL tidak mengandung perintah alih kontrol. Hal ini

dapat diimplementasikan dengan bahasa pemrograman atau perintah

kontrol atau secara interaktif, sesuai dengan keputusan user.

6. SQL mudah dipelajari, karena:

a) Merupakan bahasa non-procedural, cukup mensepesifikasikan

informasi apa yang dibutuhkan daripada bagaimana

mendapatkannya.

b) Pada dasarnya memiliki sintaks yang bebas.

7. Terdiri atas bahasa Inggris standar, seperti:

a) CREATE

b) INSERT

c) SELECT

Page 10: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

14

d) FROM

8. Dapat digunakan oleh bermacam-macam user, termasuk DBA, manajemen,

pembuat aplikasi, dan user lainnya.

9. Terdapat ISO standard untuk SQL, membuat bahasa formal dan de facto

untuk relational database.

2.1.5. Konsep Dasar Waterfall

Menurut Rosa dan Shalahuddin (2013:28), “Model SDLC air terjun

(waterfall) sering juga disebut model sekuensial linier (sequential linear) atau alur

hidup klasik (classic life cycle). Model air terjun menyediakan pendekatan alur

hidup perangkat lunak secara sekuensial atau terurut dimulai dari analisi, desain,

pengodean, pengujian, dan tahap pendukung (support)”. Menurut Rosa dan

Shalahuddin (2013:29), ada lima tahapan dalam metode waterfall, yaitu:

1. Analisis kebutuhan perangkat lunak

Proses pengumpulan kebutuhan dilakukan secara intensif untuk

mensefisikasikan kebutuhan perangkat lunak agar dapat dipahami perangkat

lunak seperti apa yang dibutuhkan oleh user. Sepesifikasi kebutuhan perangkat

lunak pada tahap ini perlu didokumentasikan.

2. Desain

Desain perangkat lunak adalah proses multi langkah yang fokus pada desain

pembuatan program perangkat lunak termasuk struktur data, arsitektur

perangkat lunak, representasi antarmuka dan prosedur pengkodean. Tahap ini

mentranlasi kebutuhan perangkat lunak dari tahap analisis kebutuhuan ke

representasi desain agar dapat diimplementasikan menjadi program pada tahap

Page 11: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

15

selanjutnya. Desain perangkat lunak pada tahap ini juga perlu

didokumentasikan.

3. Pembuatan kode program

Desain harus ditranslasikan ke dalam program perangkat lunak. Hasil dari tahap

ini adalah program komputer sesuai dengan desain yang telah dibuat pada tahap

desain.

4. Pengujian

Pengujian fokus pada perangkat lunak secara dari segi lojik dan fungsional dan

memastikan bahwa semua bagian sudah diuji. Hal ini dilakukan untuk

meminimalisir kesalahan (eror) dan memastikan keluaran yang dihasilkan

sesuai dengan yang diinginkan.

5. Pendukung (support) atau pemeliharaan (maintenance)

Tidak menutup kemungkinan sebuah perangkat lunak mengalami perubahan

ketika sudah dikirimkan ke user. Perubahan bisa terjadi karena adanya

kesalahan yang muncul dan tidak terdektesi saat pengujian atau perangkat lunak

harus beradaptasi dengan lingkungan baru. Tahap pendukung atau pemeliharaan

dapat mengulangi proses pengembangan mulai dari analisis spesifikasi untuk

perubahan perangkat lunak yang sudah ada, tetapi tidak untuk membuat

perangkat lunak baru.

2.1.6. NetBeans IDE

Menurut (WK, 2015:20), “NetBeans adalah salah satu IDE yang digunakan

oleh developer software komputer untuk menulis, meng-compile, mencari

kesalahan, dan untuk menyebarkan program”. NetBeans merupakan aplikasi yang

free artinya aplikasi yang tidak berbayar. Selain bahasa pemrogaman Java yang

Page 12: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

16

didukung oleh NetBeans. NetBeans juga mendukung beberapa bahasa

pemrograman seperti PHP, C/C++, JavaScript dan lain-lain.

2.1.7. XAMPP

Menurut (WK, 2015:55), “XAMPP merupakan singkatan dari X (empat

sistem operasi), Aphace, MySQL, PHP, Perl. XAMPP adalah tool yang

menyediakan paket perangkat lunak dalam satu buah paket”. Berikut ini penjelasan

mengenai paket perangkat lunak yang ada di XAMPP, diantaranya:

1. Aphace

Aphace adalah perangkat lunak web server yang berfungsi untuk menghasilkan

halaman website berbasis PHP.

2. MySQL

MySQL adalah perangkat lunak sistem basis data yang diguankan untuk

mengelola basis data server. MySQL juga menyediakan source programnya

secara terbuka (open source) sehingga orang lain dapat mengubah atau

menambah kemampuan dari MySQL untuk keperluan khusus secara pribadi.

3. PHP (PHP: Hypertext Preprocessor)

PHP adalah bahasa pemrograman script server-side untuk membuat sebuah

website.

4. Perl

Perl adalah bahasa pemrograman untuk tujuan umum. Dan sekarang

dikembangkan untuk berbagai tugas pengembangan web, pemrograman

jaringan, pengembangan GUI, dan lainnya.

Page 13: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

17

2.2. Peralatan Pendukung ( Tool Program )

Peralatan pendukung adalah peralatan yang dibutuhkan oleh setiap

programmer untuk membantu mempermudah dalam pembuatan dan pembacaan

logika dan algoritma program serta membantu setiap programmer untuk

mengetahui alur program yang dibuat mulai dari input, proses, dan output yang

dihasilkan . Peralatan pendukung yang digunakan adalah :

2.2.1. Konsep Dasar UML

Menurut Rossa dan Shalahuddin (2013:133), “UML (Unified Modeling

Language) adalah salah satu standar bahasa yang banyak digunakan di dunia

industri untuk mendefinisikan requierement, membuat analisis dan desain, serta

menggambarkan arsitektur dalam pemograman berorientasi objek”.Berdasarkan

pendapat yang dikemukakan diatas, maka dapat disimpulkan bahwa, UML adalah

bahasa yang digunakan untuk memvisualisasikan, mendefinisikan, membangun

dan membuat dokumen dari arsitektur perangkat lunak. UML dapat digunakan pada

semua proses melalui metodologi pengembang perangkat lunak dan melakukan

implementasinya pada teknologi yang berbeda.

UML yang digunakan kali ini adalah UML 2.3. Pada UML 2.3 terdiri dari

13 macam diagram yang dikelompokan kedalam 3 kategori. Pembagian kategori

dan macam-macam diagram tersebut dapat dilihat pada gambar II.1 di bawah ini.

Page 14: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

18

Sumber: Rossa dan Shalahuddin (2013:140)

Gambar II.1. Diagram UML

Berikut ini penjelasan diagram UML 2.3 menurut Rossa dan Shalahuddin

(2013:141), diantaranya:

1. Use Case Diagram

Diagram use case merupakan pemodelan untuk kelakuan (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 di dalam sebuah

sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu.

Ada dua hal utama pada use case yaitu:

a. Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan

sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat

itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor

belum tentu merupakan orang.

Page 15: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

19

b. Use case merupakan fungsionalitas yang disediakan sistem sebagai unit-unit

yang saling bertukar pesan antar unit atau aktor.

Setiap use case dilengkapi dengan skenario. Skenario use case adalah alur

jalannya proses use case dari sisi aktor dan sistem. Berikut adalah format

tabel skenario use case:

Tabel II.2

Skenario Use case

Aksi Aktor Reaksi Sistem

Skenario Normal

Skenario Alternatif

Sumber: Rossa dan Shalahuddin (2013:161)

Skenario normal adalah skenario bila sistem berjalan normal tanpa terjadi

keasalahan atau error. Sedangkan skenario alternatif adalah skenario bila

sistem tidak berjalan normal, atau mengalami error. Skenario normal dan

skenario alternatif dapat lebih dari satu.

2. Activity Diagram

Diagram aktivitas atau activity diagram menggambarkan workflow (aliran

kerja) atau aktivitas dari sebuah sistem atau proses bisinis atau menu yang ada

diperangkat lunak. Yang perlu diperhatikan disini adalah bahwa diagram

aktivitas menggambarakan aktivitias sistem bukan apa yang dilakukan aktor,

jadi aktivitas yang dapat dilakukan oleh sitem. Diagram aktivitas juga banyak

digunakan utnuk mendefinisiakan hal-hal berikut:

a. Rancangan proses bisinis dimana setiap urutan aktivitas yang digambarkan

berupa proses bisnis sistem yang didefinisikan.

Page 16: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

20

b. Urutan atau pengelompokan tampilan dari sistem / user interface dimana

setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan.

c. Rancangan pengujian dimana setiap aktivitas dianggap memerlukan sebuah

pengujian yang perlu didefinisikan kasus ujinya.

d. Rancangan menu yang ditampilkan pada perangkat lunak.

3. Class Diagram

Diagram kelas atau class diagram menggambarkan struktur sistem dari segi

pendefinisian kelas-kelas yang akan dibuat untuk membangun sistem. Kelas

memiliki apa yang disebut atribut dan metode atau operasi.

4. Object Diagram

Diagram objek menggambarkan struktur sistem dari segi penamaan objek dan

jalannya objek dalam sisem. Pada diagram objek harus dipastikan semua kelas

yang sudah didefinisikan pada diagram kelas harus dipakai objeknya, karena

jika tidak, pendefinisian kelas itu tidak dapat dipertanggung jawabkan. Diagram

objek juga berfungsi untuk mendefinisikan contoh nilai atau isi dari atribut tiap

kelas.

5. Component Diagram

Diagram komponen atau component diagram dibuat untuk menunjukan

organisasi dan ketergantungan diantara kumpulan komponen dalam sebuah

sistem. Diagram komponen fokus pada komponen sistem yang dibutuhkan dan

ada didalam sistem.

Page 17: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

21

6. Composite Structure Diagram

Diagram ini dapat digunakan untuk menggambarkan struktur dari bagian-

bagian yang saling terhubung maupun mendeskripsikan struktur pada saat

berjalan (runtime) dari instance yang saling terhubung.

7. Package Diagram

Package diagram menyediakan cara mengumpulkan elemen-elemen yang

saling terkait dalam digram UML. Hampir semua diagram dalam UML dapat

dikelompokan menggunakan package diagram.

8. Deployment Diagram

Diagram deployment atau deployment diagram menunjukan konfigurasi

komponen dalam proses eksekusi aplikasi. Diagram deployment juga dapat

digunakan untuk memodelkan hal-hal berikut:

a. Sistem tambahan (embedded system) yang menggambarkan rancangan

device, node, dan hardware.

b. Sistem client/server.

c. Sistem terdistibusi murni.

d. Rekayasa ulang aplikasi.

9. State Machine Diagram

State machine diagram atau statechart diagram atau dalam bahasa Indondesia

disebut diagram mesin status atau sering juga disebut diagram status digunakan

untuk menggambarkan perubahan status atau transisi status dari sebuah mesin

atau sistem atau objek.

Page 18: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

22

10. Sequence Diagram

Diagram sekuen menggambarkan kelakuan objek pada use case dengan

mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima

antar objek. Oleh karena itu itu untuk menggambarkan diagram sekuen maka

harus diketahui objek-objek yang terlibat dalam sebuah use case beserta

metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu.

Membuat diagram sekuen juga dibutuhkan untuk melihat skenario yang ada

pada use case.

11. Timing Diagram

Timing diagram merupakan diagram yang fokus pada penggambaran terkait

batasan waktu. Timing diagram digunakan untuk menggambarkan tingkah laku

sistem dalam periode waktu tertentu. Timing diagram biasanya digunakan

untuk mendeskripsikan operasi dari alat digital karena penggambaran secara

visual akan lebih mudah dipahami daripada dengan kata-kata.

12. Interaction Overview Diagram

Interaction overview diagram mirip dengan diagram aktivitas yang berfungsi

untuk menggambarkan sekumpulan urutan aktivitas. Interaction overview

diagram adalah bentuk aktivitas digaram yang setiap titik merepresentasikan

diagram interaksi. Interaksi diagram dapat meliputi diagram sekuen, diagram

komunikasi, interaction overview diagram, dan timing diagram.

Page 19: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

23

2.2.2. Konsep Entity Relationship Diagram (ERD)

Menurut Rossa dan Shalahuddin (2013:289), “ERD merupakan pemodelan

awal basis data yang dikembangkan berdasarkan teori himpunan dalam bidang

matematika untuk pemodelan basis data relasional”. Sedangkan menurut

Simarmata dan Paryudi (2010:67), “ERD adalah alat pemodelan data utama dan

akan membantu mengorganisasi data dalam suatu proyek ke dalam entitas-entitas

dan menentukan hubungan antar entitas”. Dari kedua definisi tersebut dapat

dismpulkan bahwa ERD merupakan alat pemodelan yang menggambarkan

hubungan antar entitas, serta dapat digunakan untuk merancang basis data

relasional yang direpersentasikan dengan diagram-diagram ERD tersebut. Berikut

ini penjelasan mengenai komponen ERD, pemetaan kardinaliatas dan Logical

Record Structure (LRS), yaitu:

1. Komponen ERD (Entity Relationship Daigram)

a. Entitas

Entitas adalah sesuatu yang nyata atau abstrak di mana kita akan

menyimpan data”. Contoh entitas misalnya: karyawan perusahaan,

mahasiswa, kampus, buku, dan sebagainya. Pada ERD entitas mempunyai

simbol persegi panjang.

b. Relasi

Relasi adalah hubungan yang terjadi antara satu atau lebih entitas. Relasi

biasanya diawali dengan kata kerja. Kardinalitas menentukan kejadian

suatu entitas untuk satu kejadian pada entitas yang berhubungan. Misalnya

mahasiswa bisa mengambil banyak kuliah. Simbol relasi digambarakan

dengan bentuk diamond.

Page 20: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

24

c. Atribut

Atribut adalah properti, elemen data dan field. Misalnya nama, alamat,

gelar, no telepon dan gaji merupakan atribut entitas pegawai. Simbol atribut

digambarkan dengan bentuk oval. Jenis-jenit atribut diantaranya:

1) Atribut key adalah atribut yang digunakan untuk menentukan suatu

entity secara unik.

2) Atribut simple adalah atribut yang bernilai tunggal.

3) Atribut mulit value adalah atribut yang memiliki nilai lebih dari satu.

4) Atribut derivatif adalah suatu atribut yang dihasilkan dari atribut lain.

2. Pemetaan Kardinalitas

Menurut Simarmata dan Paryudi (2010:63), “Pemetaan kardinalitas merupakan

pemetaan yang menyatakan jumlah entitas lain dapat dihubungkan entitas

tersebut melalui sebuah himpunan relasi”. Jenis-jenis pemetaan kardinalitas

diantaranya:

a. One-to-One, sebuah entitas pada A berhubungan dengan paling banyak satu

entitas pada B dan sebuah entitas pada B berhubungan paling banyak satu

entitas pada A. Contoh: seorang guru mengajar seorang siswa.

b. One-to-Many, sebuah entitas pada A berhubungan dengan nol atau lebih

entitas pada B. Sebuah entitas pada B dapat dihubungkan paling banyak satu

entitas pada A. Contoh: dalam suatu perusahaan, satu bagian

memperkerjakan banyak pegawai.

c. Many-to-One, sebuah entitas pada A berhubungan dengan paling banyak

satu entitas pada B. Sebuah entitas pada B dapat dihubungkan nol atau lebih

Page 21: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

25

entitas pada A. Contoh: dalam suatu perusahaan, banyak pegawai

dipekerjakan pada satu bagian.

d. Many-to-Many, sebuah entitas pada A berhubungan dengan nol atau lebih

entitas pada Bdan sebuah entitas pada Bdapat dihubungkan nol atau lebih

entitas pada A. Contoh: satu mahasiswa mengambil banyak mata kuliah dan

satu mata kuliah diambil banyak mahasiswa.

3. Logical Record Structure (LRS)

Pengertian LRS (Logical Record Structure) adalah representasi dari struktur

record-record pada tabel-tabel yang terbentuk dari hasil antar himpunan entitas,

menentukan kardinalitas, jumlah tabel dan Foreign Key (FK).Konversi ERD ke

LRS adalah konversi dari pemodelan ERD ke pemodelan LRS, maka konversi

yang akan terjadi ketika perubahan dari ERD ke LRS mengikuti aturan-aturan

sebagai berikut:

a. Setiap entitas akan diubah kedalam bentuk tabel.

b. Sebuah relasi yang memiliki kardinalitas One-to-One atau One-to-Many

maka akan membentuk dua tabel, sedangkan relasi yang memiliki

kardinalitas Many-to-Many akan membentuk tiga tabel.

2.2.3. Pengujian Kotak Hitam (Black Box Testing)

Menurut Rossa dan Shalahuddin (2013:275), “Pengujian kotak hitam adalah

menguji perangkat lunak dari segi sefesifikasi fungsional tanpa menguji desain dan

kode program. Pengujian ini dimaksudkan untuk mengetahui apakah fungsi-fungsi,

masukan, dan keluaran dari perangkat lunak sesuai dengan spesifikasi yang

dibutuhkan”. Metode pengujian software ini dinamakan black box dikarenakan

software program yang sedang diuji dimata penguji atau testernya adalah seperti

Page 22: BAB II LANDASAN TEORI - repository.bsi.ac.id · dapat diimplementasikan dengan bahasa pemrograman atau perintah kontrol atau secara interaktif, sesuai dengan keputusan user. 6. SQL

26

kotak hitam, apa apa didalamnya tidak diketahui. Berikut ini ilustrasi black box

testing dapat dilihat pada gambar II.2 di bawah ini.

Sumber: www.guru99.com

Gambar II.2. Ilustrasi Black box testing