33
7 BAB 2 LANDASAN TEORI 2.1 Manajemen Robbins dan Coulter (2010:9) menjelaskan bahwa manajemen mengacu dalam proses koordinasi dan integrasi kegiatan kerja secara efisien dan efektif melalui dan dengan orang lain. Menurut Robbins dan Coulter terdapat 4 fungsi manajemen: 1. Perencanaan (planning) Di dalamnya mencakup proses merumuskan masalah, menetapkan strategi untuk mencapai sasaran yang ditentukan, dan menyusun rencana untuk mengintegrasikan dan mengkoordinasikan kegiatan-kegiatan tersebut 2. Mengorganisasikan (organizing) Menentukan pembagian tugas apa yang harus dikerjakan, siapa yang mengerjakan, pengelompokannya, dan pertanggungjawaban pengambilan keputusan 3. Kepemimpinan (leading) Di dalamnya terdapat proses memotivasi dan mengarahkan karyawan, dan menyeleksi saluran informasi yang paling efektif agar masalah dapat terselesaikan 4. Pengawasan (controlling) Mencakup kegiatan pemantauan aktivitas, agar dapat dipastikan semua hal yang telah direncanakan sebelumnya dapat terpenuhi dan menjaga agar tidak ada penyimpangan yang signifikan. 2.2 Karyawan Karyawan adalah seseorang yang dipekerjakan untuk sebuah gaji atau pembayaran terhadap sesuatu yang dikerjakan untuk atasannya. (Cornell University Law School: 152). 2.3 Internet Menurut Connolly & Begg (2015:1048), internet dibuat oleh banyak jaringan yang terkoneksi dan saling terpisah satu dengan yang lain yang dimiliki

BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2015-1-00813-IF Bab2001.pdf · menyeleksi saluran informasi yang paling efektif agar masalah dapat

Embed Size (px)

Citation preview

7

BAB 2

LANDASAN TEORI

2.1 Manajemen

Robbins dan Coulter (2010:9) menjelaskan bahwa manajemen mengacu

dalam proses koordinasi dan integrasi kegiatan kerja secara efisien dan efektif

melalui dan dengan orang lain. Menurut Robbins dan Coulter terdapat 4 fungsi

manajemen:

1. Perencanaan (planning)

Di dalamnya mencakup proses merumuskan masalah, menetapkan strategi

untuk mencapai sasaran yang ditentukan, dan menyusun rencana untuk

mengintegrasikan dan mengkoordinasikan kegiatan-kegiatan tersebut

2. Mengorganisasikan (organizing)

Menentukan pembagian tugas apa yang harus dikerjakan, siapa yang

mengerjakan, pengelompokannya, dan pertanggungjawaban pengambilan

keputusan

3. Kepemimpinan (leading)

Di dalamnya terdapat proses memotivasi dan mengarahkan karyawan, dan

menyeleksi saluran informasi yang paling efektif agar masalah dapat

terselesaikan

4. Pengawasan (controlling)

Mencakup kegiatan pemantauan aktivitas, agar dapat dipastikan semua hal

yang telah direncanakan sebelumnya dapat terpenuhi dan menjaga agar tidak

ada penyimpangan yang signifikan.

2.2 Karyawan

Karyawan adalah seseorang yang dipekerjakan untuk sebuah gaji atau

pembayaran terhadap sesuatu yang dikerjakan untuk atasannya. (Cornell

University Law School: 152).

2.3 Internet

Menurut Connolly & Begg (2015:1048), internet dibuat oleh banyak

jaringan yang terkoneksi dan saling terpisah satu dengan yang lain yang

dimiliki

8

8

oleh perusahaan komersial, perusahaan pendidikan, organisasi pemerintahan, dan

Internet Service Provider (ISP).

2.3.1 Intranet vs Ekstranet vs Internet

Intranet adalah sebuah website atau grup dari beberapa situs yang

dimiliki oleh organisasi, dan hanya dapat diakses hanya oleh anggota dari

organisasi tersebut. Secara umum, intranet terkoneksi ke dalam internet publik

yang lebih luas yang melalui firewall dengan batasan-batasan tertentu data apa

saja yang boleh lewat melalui intranet.

Ekstranet merupakan intranet yang dapat diakses sebagian oleh orang

luar yang terotorisasi. Extranet menyediakan beberapa tingkatan aksesbilitas ke

orang luar. Secara umum, extranet hanya dapat diakses oleh user dari luar yang

memiliki username dan password yang valid, dan identitas ini menentukan

bagian mana saja dari extranet yang dapat dilihat

Sedangkan internet merupakan koneksi antar komputer yang

menggunakan standar Internet Protocol Suite (TCP/IP) untuk melayani user di

seluruh dunia tanpa batasan-batasan tertentu seperti yang ada dalam intranet

dan ekstranet

2.4 Website

Menurut Connolly & Begg (2015:1052), Website adalah sistem berbasis

media yang menyediakan informasi browsing yang tidak terurut di dalam

internet dengan menggunakan hyperlinks. Web menyediakan point and click

yang mudah. Informasi yang ada di web berada di web page, dimana berupa

kumpulan teks, grafis, gambar, suara, dan video.

Web terdiri atas 2 jenis, sebagai server/penyedia informasi (web server),

dan sebagai klien / yang meminta informasi. Contoh dari web server adalah

Apache, Microsoft Internet Information Server (IIS), Google Web Server. Dan

contoh dari web client adalah Internet Explorer, Mozilla Firefox, Google

Chrome.

2.4.1 HTTP (HyperText Transfer Protocol)

Menurut Connolly & Begg (2015: 1053), HTTP mendefinisikan

bagaimana klien dan server berkomunikasi. HTTP berorientasi obyek, dan

9

merupakan stateless protocol untuk melakukan pertukaran informasi antara

klien dan server.

HTTP berbasis pada paradigm request-response. Transaksi HTTP terdiri

dari beberapa langkah berikut:

1. Connection : klien menciptakan koneksi ke web server

2. Request : klien mengirimkan permintaan pesan ke web server

3. Response : web server mengirimkan respon

4. Close : koneksi ditutup oleh web server

2.4.2 Website Management

Website Management adalah suatu kerangka kerja untuk mengorganisir

semua kegiatan di dalam website. Menurut Shane Diffly (2006: 3), terdapat 4

elemen model website management:

1. Website maintenance: meliputi semua aktivitas yang dibutuhkan untuk

memastikan semua integritas operasional di dalam situs. Dengan kata

lain, hal ini memastikan bahwa sebuah website dapat berjalan dengan

baik dan sesuai dengan rencana.

2. Website Development: meliputi semua bentuk aktivitas yang diperlukan

untuk membuat dan meninjau kembali sebuah website, termasuk di

dalamnya:

• Planning

• Content

• Design

• Construction

• Testing

• Hosting

• Publicity

• Review

3. Website Governance: berada diatas dari elemen maintenance dan

development. Tujuan dari website governance adalah sebuah manajemen

situs yang terkontrol, dari perencanaan dan desain sampai proses

maintenance dan infrastruktur.

10

4. Website Infrastructure: menyediakan pondasi yang aman untuk operasi

teknis. Website Infrastructure merangkul semua aktivitas dan sumber

daya yang diperlukan untuk memilih dan membuat sebuah solusi hosting

internal, termasuk di dalamnya hardware, software, dan staff skills.

2.4.3 PHP

Menurut Vaswani (2008:4-5), PHP merupakan bahasa pemrograman

yang paling terkenal untuk mengembangkan website. Dalam beberapa tahun

terakhir, PHP secara de facto telah dijadikan pilihan untuk mengembangkan

data-driven web application, yang bergantung pada skalabilitas, kemudahan

penggunaan, dan layanan untuk banyak tipe database dan format data. PHP

memiliki fitur-fitur sebagai berikut:

1. Performance

Skrip yang ditulis di dalam PHP akan lebih cepat dieksekusi daripada

yang ditulis di bahasa pemrograman lain. PHP dibuat dengan optimisasi

memory manager untuk meningkatkan performa.

2. Portability

PHP dapat digunakan di UNIX, Microsoft Windows, MacOS, dan OS/2.

Selain itu, program PHP bersifat portabel di antara berbagai platform.

Hal ini adalah salah satu nilai lebih PHP, khususnya ketika beroperasi di

perusahaan multiplatform atau ketika mengalamatkan ke banyak segmen

pasar

3. Ease of Use

PHP adalah bahasa pemrograman yang sangat canggih. Sintaks yang

digunakan jelas dan konsisten, dan PHP disertai dengan dokumentasi

lebih dari 5000 fungsi yang termasuk di dalamnya distribusi utama

4. Open Source

PHP adalah proyek open source, bahasa pemrograman ini dikembangkan

oleh sukarelawan di seluruh dunia yang membuat source code ini tersedia

secara gratis di web dan tanpa perlu lisensi berbayar

11

5. Community Support

Salah satu nilai tambah dari PHP adalah banyaknya komunitas-komunitas

yang ada di seluruh dunia untuk membantu pengguna PHP jika

mengalami kesulitan

6. Third-Party Application Support

PHP dapat mendukung banyak database, contohnya MySQL,

PostgreSQL, Oracle, dan Microsoft SQL Server. Selain itu PHP juga

memiliki banyak Application Program Interface (API) untuk akses

database nya. Ada juga layanan Extensible Markup Language (XML )

yang dapat memudahkan dalam pembacaan dan penulisan. PHP juga

memperbolehkan penggunanya untuk membuat add-ons sendiri

2.4.4 HTML (HyperText Markup Language)

Menurut Connolly & Begg (2015: 1055), HTML adalah sistem untuk

menandai sebuah dokumen sehingga dapat dipublikasikan ke dalam web.

HTML mendefinisikan apa yang biasa dikirimkan antar jaringan. HTML telah

dikembangkan dengan tujuan agar banyak perangkat dapat menggunakan

informasi di dalam web, antara lain komputer dengan layar grafis, telepon

genggam, dan lainnya.

2.4.5 Javascript

Menurut Crockford (2008:2), Javascript adalah suatu bahasa yang

penting, karena bahasa ini digunakan di dalam web browser. Fungsi javascript

pertama adalah obyek kelas pertama yang dapat mendefinisikan scope,

sehingga dapat dipanggil dari antara blok kode dimana hal tersebut

didefinisikan (lexical scoping). Javascript juga merupakan bahasa yang dapat

melemparkan suatu fungsi ke fungsi lainnya (lambda).

2.4.6 jQuery

Menurut Chaffer & Swedberg (2007:1-6), jQuery adalah sebuah library

Javascript yang dapat meningkatkan website tanpa memandang background.

jQuery merupakan proyek open source yang menyediakan fitur yang luas,

sintaks yang mudah dimengerti, dan kompabilitas antar perangkat.

12

Library jQuery menyediakan lapisan abstraksi secara umum untuk

penulisan skrip website. Fitur-fitur utama dari jQuery adalah:

1. Mengakses bagian dari halaman

Tanpa Javascript library, banyak baris dalam code harus ditulis untuk

melintasi bagan Document Object Model (DOM) dan menentukan lokasi

spesifik dari HTML di dalam struktur dokumen. jQuery menawarkan

mekanisme pemilihan yang efisien dan kuat untuk mengambil secara

tepat bagian dari dokumen yang akan dimanipulasi

2. Melakukan perubahan tampilan halaman

CSS menawarkan metode yang kuat untuk mempengaruhi bagaimana

sebuah dokumen dapat dibuat, tetapi hal ini akan menjadi masalah bila

web browser tidak memiliki standar yang sama. jQuery dapat

menjembatani celah ini dengan menyediakan standar yang sama di semua

browser.

3. Mengubah konten dari halaman

jQuery dapat memodifikasi konten dari dokumen hanya dengan beberapa

tombol. Teks dapat diubah, gambar dapat dimasukkan, daftar dapat diatur

ulang, atau seluruh struktur HTML dapat ditulis ulang dan diperluas

dengan satu API yang mudah digunakan

4. Merespon interaksi user dengan sebuah halaman

Suatu fungsi yang rumit dan kuat sekalipun tidak berguna jika tidak dapat

dikontrol ketika digunakan. jQuery library menawarkan cara untuk

memotong kejadian-kejadian, seperti ketika user menekan tautan, tanpa

membutuhkan perubahan yang menyebabkan kekacuan pada kode

HTML dengan event handlers

5. Menambahkan animasi di halaman

Untuk mengimplementasikan perilaku yang menarik, desainer juga harus

menambahkan timbal balik secara visual kepada user. jQuery library

memfasilitasi hal ini dengan menyediakan array of effects seperti fades

and wipes, dan juga menyediakan peralatan untuk membuat efek baru

6. Menarik informasi dari server tanpa perlu memuat ulang halaman

Bentuk kode ini sering disebut Asynchronus Javascript and XML

(AJAX), dan membantu pengembang web untuk membuat website yang

responsif dan memiliki banyak fitur

13

7. Menyederhanakan tugas javascript umum

Sebagai tambahan untuk fitur spesifik dokumen dalam jQuery, library

menyediakan peningkatan terhadap javascript dasar seperti iterasi dan

manipulasi array

2.4.7 CSS (Cascading Style Sheets)

Menurut David Sawyer (2009:1), CSS adalah sebuah skrip yang

digunakan di dalam HTML yang memberikan kontrol kreatif terhadap layout

dan desain dari halaman web.

CSS dapat terintegrasi dengan HTML, namun CSS bukanlah HTML.

HTML menyediakan struktur dokumen dengan mengorganisir informasi ke

dalam header, paragraf, list, dan lainnya. Sedangkan CSS bekerja dengan web

browser untuk menjadikan HTML terlihat menarik.

2.4.8 Bootstrap

Menurut Jake Spurlock (2013:1), bootstrap adalah sebuah framework

untuk CSS dan berupa produk open source yang dibuat oleh Mark Otto dan

Jacob Thornton. Pada awalnya bootstrap ini dibuat untuk membuat standarisasi

front end untuk semua programmer di perusahaannya.

Bootstrap telah berubah dari yang sebelumnya adalah CSS-Driven

project ke sebuah host dari javascript plugins dan ikon yang dapat dengan

mudah digunakan untuk formulir dan tombol. Dasar dari bootstrap yaitu dapat

digunakan untuk desain web yang responsive dan menampilkan dengan kuat

12-kolom, 940 pixel-wide grid. Bootstrap dapat dimodifikasi sesuai dengan

kebutuhan dengan memilih antara fitur CSS dan javascript yang dapat

dimasukkan ke dalam website yang akan dibuat.

Bootstrap memiliki struktur file nya sendiri:

Gambar 2. 1 Bootstrap download terdiri dari 3 folder: css, js, dan img

14

Perbedaan dari bootstrap.css dan bootstrap.min.css adalah min

merupakan minified, dimana whitespace dan karakter tambahan telah

dihilangkan.

2.4.9 AES (Advanced Encryption System)

Menurut Carlos Cid, dkk (2006: 1), AES adalah sebuah bentuk enkripsi

yang dapat digunakan untuk mengekrip data yang ada di dalam database. AES

sebelumnya digunakan untuk menggantikan Data Encryption Standard (DES).

Fitur dari AES adalah:

1. 128 block chiper dengan 3 pilihan ukuran key: 128, 192, dan 256 bits.

2. Desain yang fleksibel

3. Minimal dapat mengamankan two-key, triple-DES

4. Open source

2.4.10 XAMPP

Menurut John Valade (2011: 87), XAMPP adalah suatu perangkat lunak

serba guna yang digunakan untuk melakukan instalasi apache, MySQL, dan

PHP di dalam satu prosedur. XAMPP juga dapat melakukan instalasi

phpMyAdmin, suatu aplikasi berbasis web yang digunakan untuk melakukan

administrasi ke MySQL database. XAMPP dapat dijalankan di sistem operasi

Windows maupun Linux.

2.4.11 Eight Golden Rules

Menurut Shneiderman (2010:88-89), ada delapan peraturan yang

digunakan dalam merancang suatu user interface. Delapan peraturan tersebut

disebut sebagai Eight Golden Rules of Interface Design. Berikut adalah delapan

aturan emas oleh Shneiderman:

1. Strive for Consistency

Urutan yang konsisten harus ada dalam website. Terminologi yang mirip

harus digunakan di dalam tindakan, menu, dan layar bantuan

2. Cater to universal usability

Mengenali kebutuhan oleh user yang beragam dan desain yang elastis,

memfasilitasi perubahan dari konten. Memberikan fitur-fitur bantuan

15

kepada pengguna baru dan fitur-fitur yang memudahkan pengguna ahli

dapat menaikkan kualitas sistem

3. Offer informative feedback

Setiap aksi dari pengguna, akan harus ada umpan balik dari sistem.

Untuk aksi yang sering digunakan, umpan balik yang diberikan cukup

sederhana, untuk aksi yang bersifat besar dan jarang digunakan, respon

yang diberikan haruslah jelas juga.

4. Design dialogs to yield closure

Tindakan dalam sistem sebaiknya diurutkan dalam tahapan tertentu, yaitu

awal, pertengahan, dan akhir. Umpan balik yang informatif akan

memberikan kepuasan dan rasa nyaman kepada penggunanya.

5. Prevent errors

Usahakan untuk mendesain sistem agar user tidak dapat melakukan

kesalahan secara fatal. Jika terjadi kesalahan, sistem harus dapat

mendeteksi kesalahan tersebut dan menawarkan penanganan yang mudah

untuk menanganinya

6. Permit easy reversal of actions

Fitur ini dapat melegakan rasa cemas ketika user melakukan kesalahan,

karena pengguna mengetahui bahwa kesalahan yang dilakukan tersebut

dapat dibatalkan

7. Support internal locus control

Dalam menggunakan suatu sistem, user ingin menjadi pemegang kendali

dalam sistem tersebut, dan sistem merespon kembali terhadap apa yang

user lakukan. Desain sistem untuk membuat user menjadi initiator

daripada responder

8. Reduce short term memory load

Limitasi proses informasi manusia di dalam ingatan jangka pendek

membutuhkan sistem untuk tetap sederhana dan informatif, serta waktu

pembelajaran untuk sistem baru harus dapat berlangsung secara cepat.

2.4.12 Lima Faktor Manusia Terukur

Menurut Shneiderman (2010:32), faktor-faktor yang harus diperhatikan

dalam merancang user interface antara lain:

1. Time to learn

16

Lamanya waktu yang diperlukan oleh user untuk mempelajari cara

menggunakan aksi-aksi yang relevan dalam mengerjakan suatu tugas

2. Speed of performance

Lamanya waktu yang dibutuhkan dalam mengerjakan suatu tugas

3. Rate of errors by users

Seberapa banyak dan tipe kesalahan apa saja yang dibuat oleh user ketika

mengerjakan suatu tugas

4. Retention over time

Seberapa baik pengguna mempertahankan pengetahuan dalam jangka

waktu tertentu

5. Subjective satisfaction

Menyatakan besaran kepuasan user terhadap aspek-aspek yang ada di

dalam interface pada saat penggunaan aplikasi

2.4. Database

Menurut Connolly & Begg (2015:15), database adalah suatu kumpulan

dari data yang memiliki hubungan secara logis, pengertian data tersebut dan

dirancang untuk memenuhi kebutuhan dari suatu organisasi.

2.4.1 DBMS (Database Management System)

Menurut Connolly and Begg (2015: 64), Database Management System

(DBMS) adalah sebuah kumpulan program perangkat lunak yang rumit yang

mengontrol organisasi, tempat penyimpanan, manajemen, dan sistem

pengambilan data dari database. Sistem database adalah salah satu dari kunci

di belakang setiap perubahan bisnis.

Database Management System perlu efisiensi di permasalahan

penyimpanan dan kecepatan. Database system perlu untuk mencapai

kemampuan maksimal melalui penyimpanan yang efisien dan teknik

pengambilan data.

Menurut Kaladi & Ponnusamy (2012: 67) terdapat 4 faktor yang

mempengaruhi performa DBMS:

1. Response time

Didefinisikan sebagai interval waktu dari perintah input sampai balasan

sistem muncul

17

2. Throughput

Keseluruhan kapabilitas komputer untuk memproses data

3. Resources

Termasuk di dalamnya memory, kecepatan disk, cache controller, dsb

4. Memory

Total space yang diperlukan oleh query untuk menyelesaikan

eksekusinya

2.4.2 Keuntungan DBMS

Menurut Connoly & Begg (2015: 75-78), keuntungan menggunakan

DBMS adalah:

1. Control of data redundancy

DBMS dapat menghilangkan redundansi dengan cara mengintegrasikan

data tersebut sehingga beberapa salinan dari data yang sama tidak akan

tersimpan.

2. Data Consistency

Tingkat kemunculan inkonsistensi dapat diturunkan dengan mengeliminasi

atau mengontrol redundansi. Jika suatu data disimpan hanya sekali dalam

database, semua update ke dalam nilai tersebut harus dilakukan sekali dan

jika nilai tersebut tersedia secara langsung ke semua pengguna.

3. More information from the same amount of data

Dengan integrasi ke data operasional, maka memungkinkan untuk suatu

organisasi untuk memperoleh informasi tambahan dari data yang sama.

4. Sharing of data

Ada kemungkinan bahwa suatu data dapat digunakan di banyak aplikasi

oleh banyak pengguna sekaligus. Dengan adanya DBMS maka data

tersebut dapat digunakan oleh berbagai macam aplikasi dan pengguna

yang berbeda.

5. Improved data integrity

Integritas database merujuk kepada validitas dan konsistensi dari data

yang tersimpan. Integritas biasanya diekspresikan di dalam istilah

constraints, yaitu aturan konsistensi tidak dapat dilanggar. Constraints

dapat diterapkan untuk data di dalam single record maupun ke dalam relasi

dari beberapa records.

18

6. Improved Security

Keamanan database adalah suatu perlindungan untuk database dari

pengguna yang tidak memiliki otoritas untuk mengaksesnya.

7. Enforcement of standard

Pengintegrasian dapat mengizinkan Database Administrators (DBA) untuk

menetapkan dan DBMS untuk melaksanakan standar tersebut.

8. Economy of scale

Mengkombinasikan berbagai macam data operasional organisasi ke dalam

satu database dan membuat suatu set aplikasi yang bekerja di dalam suatu

sumber data dapat menghasilkan penghematan biaya.

9. Balance of conflicting requirements

Setiap pengguna atau departemen memiliki kebutuhan yang dapat

menyebabkan konflik dengan kebutuhan pengguna lainnya.

10. Improved data accessibility and responsiveness

Sebagai hasil dalam pengintegrasian data, data yang melewati batasan

departemen dapat diakses secara langsung.

11. Increased Productivity

DBMS menyediakan banyak fungsi-fungsi standar yang para programmer

biasanya harus menulis dalam bentuk aplikasi file based. Banyak DBMS

juga menyediakan lingkungan generasi ke-4, dimana terdapat berbagai

macam peralatan untuk mempermudah pengembangan aplikasi database.

12. Improved maintenance through data independence

DBMS memisahkan deskripsi data dari aplikasi, sehingga menjadikan

aplikasi tersebut kebal terhadap perubahan dari deskripsi data. Hal tersebut

juga disebut Data Independence.

13. Increased concurrency

DBMS mengatur akses concurrent database dan memastikan bahwa

permasalahan seperti interferensi akses tidak dapat terjadi.

14. Improved backup and recovery services

DBMS menyediakan fasilitas untuk meminimalisir jumlah proses yang

hilang ketika terjadi kegagalan.

19 2.4.3 Entity Relationship Diagram

Menurut Connolly dan Begg (2015:405) entity relationship modeling

adalah model yang dapat digunakan untuk memberikan pengertian mengenai

data yang akan digunakan oleh suatu perusahaan. Dalam perancangan basis

data, entity relationship modeling adalah pendekatan top-down dimana

perancangan dimulai dengan mengidentifikasi data penting yang disebut entitas

dan hubungan antara data yang harus direperesentasilcan ke dalam model.

2.4.3.1 Tipe Entitas

Menurut Connolly dan Begg (2015:406) tipe entitas adalah sekelompok

objek dengan sifat yang sama, yang diidentifikasikan oleh suatu perusahaan.

Terdapat dua entitas, yakni:

1. Strong Entity

Tipe strong entity adalah entitas yang keberadaannya tidak bergantung

pada tipe entitas lain (Connolly dan Begg, 2015:p417).

2. Weak Entity

Tipe weak entity adalah tipe entitas yang keberadaannya bergantung pada

tipe entitas lain (Connolly dan Begg, 2015:p417).

2.4.3.2 Tipe Relasi

Menurut Connolly dan Begg (2015:p408) tipe relasi adalah hubungan

antara satu atau lebih entitas. Sedangkan relationship occurrence adalah

hubungan unik yang meliputi suatu kejadian antara entitas yang ada.

2.4.3.3 Atribut

Menurut Connolly dan Begg (2015:p413) atribut adalah properti dari

suatu entitas atau tipe relasi. Atribut dapat dibagi meniadi simple atau

composite, single value atau multi-valued, atau derived.

2.4.3.4 Keys

Menurut Connolly dan Begg (2015:p415) candidate key adalah satu set

minimal atribut yang hanya mengidentifikasikan secara unik untuk setiap

kejadian pada suatu entitas. Primary key adalah candidate key yang dipilih

untuk mengidentifikasikan kejadian unik. Composite key adalah candidate key

20

yang terdiri dari dua atau lebih atribut. Alternate key adalah candidate key yang

tidak dipilih menjadi primary key.

2.4.3.5 Structural Constraint

Constraint harus menggambarkan pembatasan di dalam hubungan

seperti dunia nyata. Tipe utama constraint dinamakan multiplicity. (Connolly

dan Begg, 2015:p419).

2.4.3.5.1 Multiplicity

Menurut Connolly dan Begg (2015:p419) multiplicity adalah

kemungkinan kejadian dari suatu entitas yang berhubungan dengan kejadian

tunggal dari tipe entitas melalui hubungan tertentu. Derajat yang paling umum

pada suatu hubungan adalah biner. Hubungan biner terdiri dari:

1. One-to-One (1:1) Relationships

Gambar 2. 2 One-to-One Relationships

Pada gambar 2.2 dilihat bahwa SG5 hanya terhubung one-to-one dengan

B003, dan SL21 hanva terhubung, one-to-one dengan B005. (Connolly dan

Begg, 2015:p420) Berdasarkan gambar di atas dapat dibuat multiplicity seperti

pada gambar 2.3

21

Gambar 2. 3 Multiplicity Relationships One-to-One

2. One-to-Many (1:*) Relationships

Gambar 2. 4 One-to-Many Relationships

Pada gambar 2.4 dapat dilihat bahwa SG37 terhubung. one-to-many

(1:*) dengan PG21 dan PG36. Berdasarkan dari gambar tersebut dapat di

tulis multiplicity seperti pada gambar 2.5. (Connolly dan Begg, 2015:p421) .

22

Gambar 2. 5 Multiplicity Relationships One-to-Many

3. Many-to-Many (*:*) Relationships

Gambar 2. 6 Many-to-Many Relationships

Pada gambar 2.6 dapat dilihat bahwa Glasglow Daily terhubung many-to-

many (*:*) dengan PG21 dan PG36, begitu juga dengan PG36 yang terhubung

many-to-many (*:*) dengan Glasglow Daily dan The West News. Berdasarkan

dari gambar tesebut dapat ditulis multiplicity seperti pada gambar 2.7.

(Connolly dan Begg, 2015:p422)

23

Gambar 2. 7 Multiplicity Relationships Many-to-Many

2.4.4 MySQL

Menurut Angela Carson (2009:36), MySQL adalah sebuah sistem

manajemen basis data yang memiliki relasi satu sama lain dan dikembangkan

dan didistribusikan oleh perusahaan pembuatnya, MySQL AB. MySQL juga

digunakan sebagai basis data yang terintegrasi untuk berbagai macam aplikasi

yang berjalan di hampir semua arsitektur platform.

2.5. UML (Unified Modelling Diagram)

Menurut Whitten dan Bentley (2007: 371), Unified Modelling Language

(UML) adalah sekumpulan kesepakatan yang digunakan untuk

mendeskripsikan sistem perangkat lunak yang berkaitan dengan obyek.

2.5.1. Use Case Diagram

Menurut Whitten & Bentley (2007: 246-250, 382), use case diagram

adalah sebuah diagram yang menggambarkan interaksi antara sistem, eksternal

sistem, dan user. Komponen-komponen yang ada dalam use case diagram

adalah:

1. Use Cases

Mengidentifikasi dan mendeskripsikan fungsi dari sistem. Use case

direpresentasikan secara grafis dengan bentuk elips horizontal dengan

nama use case tersebut terletak di atas, bawah, atau di dalam elips

tersebut. Sebuah use case menggambarkan sebuah goal dari sistem dan

mendeskripsikan urutan dari aktivitas.

24

Gambar 2. 8 Contoh Penggunaan Use Case dalam Use-Case Diagram

2. Actors

Sebuah use case dapat berjalan karena adanya aksi dari external users

yang disebut actors. Actor merepresentasikan sebuah peran yang diisi

oleh seorang user yang berinteraksi dengan sistem. Actor tidak harus

manusia, namun dapat berupa organisasi, sistem informasi lain, dan

external device.

Gambar 2. 9 Simbol actor dalam use case diagram

Aktor dibagi ke dalam 4 tipe:

• Primary Business Actor

Seorang stakeholder yang mendapatkan keuntungan ketika use case

berjalan dengan menerima sesuatu yang dapat diukur atau memiliki

value. Actor ini dapat tidak memulai business event.

• Primary System Actor

25

Stakeholder yang secara langsung berinteraksi dengan sistem untuk

memulai bisnis atau sistem event

• External Server Actor

Stakeholder yang merespon terhadap permintaan dari use case

• External Receiver Actor

Stakeholder yang bukan merupakan primary actor, namun dapat

menerima sesuatu sebagai tolak ukur dari use case

3. Relationships

Relationship digambarkan sebagai garis antara 2 simbol dalam use

case diagram. Penggambaran dari relationship sendiri berbeda-beda

sesuai dengan bagaimana garis tersebut digambar dan tipe simbol apa

saja terkoneksi.

Berikut ini adalah perbedaan relasi yang terdapat di dalam use case

diagram:

• Association

Hubungan antara seorang actor dengan sebuah use case yang

muncul ketika ada interaksi di antara keduanya disebut association.

Hubungan ini digambarkan dengan sebuah garis lurus yang solid.

Gambar 2. 10 Association

• Extends

Untuk mempermudah pembuatan use case yang dikarenakan

adanya tahapan yang rumit, maka tahapan yang rumit tersebut

dapat dipisahkan menjadi suatu use case. Use case ini disebut

extention use case. Hubungan antara extension use case dan use

case yang diekstensi tersebut disebut extends relationship. Setiap

garis penghubung extended relationship menggunakan panah yang

26

menunjuk ke use case yang diekstensi dan diberikan label

<<extends>>.

Gambar 2. 11 Extension Use Case

• Uses or Includes

Beberapa use case dapat melakukan beberapa langkah dalam fungsi

yang identik. Maka dari itu, tahapan ini dapat dipisahkan ke dalam

use case tersendiri yang disebut abstract use case untuk

mengurangi redundansi antara use cases. Abstract use case dapat

digunakan oleh use case lain yang membutuhkan fungsi tersebut.

Hubungan antara abstract use case dan use case yang

menggunakan abstract use case disebut uses atau includes

relationship. Garis penghubung antara kedua use case tersebut

menggunakan panah di salah satu ujung yang menunjuk ke abstract

use case dan diberi label <<uses>> atau <<includes>>.

Gambar 2. 12 Contoh Uses

27

• Depends on

Beberapa use case memiliki dependensi terhadap use case lainnya,

dengan kata lain suatu use case hanya dapat berjalan jika ada use

case lain yang sudah dijalankan. Depends on relationship

digambarkan dengan panah dari use case ke use case

dependensinya, dan dilabeli dengan <<depends on>>

Gambar 2. 13 Contoh Depends on

• Inheritance

Ketika terdapat dua atau lebih actor melakukan hal yang sama,

dapat dilakukan pembagian actor ke dalam sebuah abstract actor

yang baru sehingga mengurangi komunikasi yang bersifat redundan

dalam sistem. Kedua atau lebih actor tersebut kemudian menjadi

turunan dari abstract actor, dengan actor turunannya disebut

inheritance relationship. Relasi ini digambarkan dengan garis

berpanah yang menunjuk ke abstract actor.

28

Gambar 2. 14 Contoh penerapan inheritance

Use case narrative adalah deskripsi yang berbentuk teks tentang

event business dan bagaimana user dapat berinteraksi dengan sistem

untuk menyelesaikan tugas-tugasnya.

Terdapat 2 jenis tingkatan use case narrative:

• High Level Use Case Narrative

High Level Use Case Narrative digunakan untuk menjelaskan use-

case dengan menggunakan elemen-elemen berikut:

o Pengarang : Nama dari seseorang yang berkontribusi

terhadap penulisan use case

o Tanggal : tanggal ketika use case terakhir dimodifikasi

o Versi : versi terakhir dari use case

o Nama use case : merepresentasikan tujuan yang ingin dicapai

dari use case

o Tipe use case : lebih mengarah ke arah business oriented dan

merefleksikan high-level view dari hal yang

diinginkan dari sistem

o Use case ID : identitas unik yang digunakan untuk

mengidentifikasi use case

o Prioritas : mengkomunikasikan kepentingan use case

dalam tingkatan high, medium, atau low

o Sumber : entitas yang memicu terbentuknya use case

29

o Primary Business Actor : stakeholder yang paling banyak

mendapatkan keuntungan dari use

case tersebut

o Other Participating Actors : actor lain yang ikut berpartisipasi

di dalam use case untuk mencapai

tujuan, termasuk didalamnya

initiating actors, facilitating actors,

dan secondary actors

o Interested Stakeholder : orang-orang yang memiliki

ketertarikan di dalam

pengembangan dan pengoperasian

sistem perangkat lunak

o Description : deskripsi rangkuman singkat yang

berisi beberapa kalimat yang

menjelaskan tujuan dari use case

dan aktivitasnya

Gambar 2. 15 Contoh high-level use case narrative

30

• Expanded Use-case Narrative

Merupakan pengembangan dari High-Level Use Case Narrative

dengan penambahan elemen sebagai berikut:

o Precondition : suatu batasan dari sistem sebelum use case

dapat dijalankan

o Trigger : suatu keadaan yang dapat memicu adanya

eksekusi dari use case

o Typical Course of Events : urutan aktivitas yang dilakukan oleh

actor(s) dan aktivitas yang dilakukan oleh

sistem dalam merespon interaksi tersebut

o Alternate Courses : menjelaskan hal yang dapat terjadi jika suatu

pengecualian atau variasi dari kejadian tertentu

terjadi

o Conclusion : menjelaskan ketika use case telah selesai

o Postcondition : suatu keadaan setelah use case berhasil

dilakukan

o Business rules : menjelaskan aturan dan prosedur dari bisnis

yang harus diikuti oleh sistem

o Implementation Constraints and Specifications : menjelaskan

semua kebutuhan non fungsional yang dapat

berdampak pada realisasi dari use case

o Assumptions : semua asumsi yang digunakan oleh pembuat

ketika membuat use case

o Open Issues : semua bentuk pertanyaan yang dibutuhkan

untuk menyelesaikan atau menginsvestigasi

sebelum use case dapat difinalisasi

31

Gambar 2. 16 Contoh Extention Narrative Use Case

2.5.2. Activity Diagram

Menurut Conolly & Begg (2015:p824), activity diagram adalah bentuk

dari alur kontrol dari satu aktivitas ke aktivitas lainnya. Sebuah activity

diagram merepresentasikan detil dari operasi dari sebuah proses bisnis atau

keseluruhan proses bisnis yang terdiri dari activity state dan transisi di

antaranya. Diagram tersebut menunjukkan alur kontrol dan cabang yang dapat

digunakan untuk menspesifikasikan jalan alternatif dari transisi. Alur yang

berjalan secara bersamaan dapat direpresentasikan dengan fork dan join

construct. Swimlanes dapat digunakan untuk membedakan area yang terpisah.

32

Tabel 2. 1 Simbol Activity

Simbol Nama Penjelasan

States Melambangkan proses suatu

aktivitas

Transition Melambangkan alur dari suatu

aktivitas ke aktivitas lainnya

Initial State

Melambangkan awal

mulainya suatu activity

diagram

Final State Melambangkan akhir suatu

activity diagram

Branches Melambangkan alternatif dari

suatu aktivitas

Fork

Melambangkan

penggabungan aktivitas yang

berjalan secara bersamaan

2.6. Data Flow Diagram

Menurut Whitten & Bentley (2007:317-325), data flow diagram adalah

sebuah alat yang digunakan untuk menggambarkan alur data yang melewati

sistem dan proses yang dilakukan oleh sistem.

Hanya ada 3 simbol dan 1 koneksi dalam pembuatan data flow diagram:

33

1. Rounded Rectangle : merepresentasikan proses atau pekerjaan

yang harus dilakukan

2. Squares : external agent atau batasan dari sistem

3. Open Ended Boxes : merepresentasikan datastores atau database

4. Arrow : menggambarkan alur dari data, atau input dan

output, ke mana dan dari mana proses tersebut

berjalan

Tabel 2. 2 Elemen dari data flow diagram

Proses

External agent

datastores

Alur data

Data flow diagram merupakan salah satu bentuk process modelling.

Berikut ini merupakan konsep sistem dari process modelling:

1. External agents

Semua sistem informasi merespon ke dalam suatu event dan kondisi di

lingkungan sistem. Lingkungan tersebut termasuk diantaranya external

agents yang membentuk batasan dari sistem dan mendefinisikan tempat

dari antarmuka sistem dengan lingkungannya. External agents

mendefinisikan orang, organisasi, sistem lain, atau organisasi lain yang

berada di luar scope, namun berinteraksi dengan sistem yang ada

2. Datastores

Sebagian besar sistem informasi akan disimpan untuk digunakan nanti.

Data tersebut akan disimpan di dalam datastores, yang merupakan

symbol terakhir dari data flow diagram. Datastores merupakan wadah

penyimpanan untuk data. Jika data flow disebut data yang bergerak,

maka datastores merupakan data yang sedang beristirahat. Secara ideal,

datastores sebaiknya mendeskripsikan ‘benda’ tersebut yang akan

disimpan

34

3. Process Concepts

Sistem informasi memproses respon ke kondisi bisnis dan perubahan data

ke dalam informasi yang berguna. Modelling process membantu untuk

memahami interaksi dengan lingkungan sistem, sistem lain, dan proses

lainnya

4. Data flows

Proses melakukan respon terhadap input dan menghasilkan output, maka

secara paling tidak semua proses akan menghasilkan 1 input dan 1 output

data flow. Data flow merupakan komunikasi antara proses dan

lingkungan sistem. Data flow merupakan data yang bergerak.

Data flow diagram dibagi menjadi 3 tingkatan:

1. Diagram Level Konteks

Menggambarkan hubungan interaksi antara sistem dengan sistem lainnya

dan bisnis secara keseluruhan. Diagram level konteks terdiri dari satu dan

hanya satu proses.

2. Diagram Level-0 DFD

Menggambarkan diagram yang telah dibagi menjadi sub-sistem yang

saling terhubung dengan satu atau lebih data yang mengalir ke atau dari

sebuah external agent

3. Diagram Level-1 sampai Level-n DFD

Menggambarkan penguraian diagram level-0 secara lebih detil. Jika

diperlukan, maka diagram level-1 dapat diuraikan lagi menjadi diagram

level-2, level-3, dan seterusnya hingga detil yang diinginkan didapat.

2.7 LDAP (Lightweight Directory Access Protocol)

Menurut Steven Tuttle, dkk (2006: 3), LDAP mendefinisikan sebuah

pesan protokol yang digunakan oleh klien direktori dan server direktori.

Protokol LDAP menggunakan pesan yang berbeda. LDAP adalah sebuah

standar industri terbuka yang mendefinisikan metode standar untuk mengakses

dan memperbarui informasi di sebuah direktori. LDAP telah mendapatkan

penerimaan sebagai metode akses direktori internet, dan juga menjadi strategi

dalam intranet perusahaan. LDAP mendefinisikan protokol komunikasi,

sehingga data yang ada di LDAP dapat diambil melalui protokol tersebut.

35 2.7.1 Direktori

Menurut Steven Tuttle (2006: 5), direktori adalah daftar dari informasi

tentang obyek yang disusun di beberapa urutan yang memberikan detil tentang

obyek lain. Di dalam konteks komputer, direktori adalah database yang

terspesialisasi, juga disebut data repository, yang menyimpan informasi yang

bertipe dan berurut mengenai suatu obyek.

Direktori mengizinkan pengguna atau aplikasi untuk mencari sumber

daya yang memiliki karakteristik yang dibutuhkan untuk pekerjaan tertentu.

2.7.2 Direktori vs Database

Menurut Steven Tuttle (2006: 5), direktori sering juga dideskripsikan

sebagai database, namun lebih tepatnya adalah database terspesialisasi yang

memiliki karakteristik yang menjadikannya berbeda dari database yang

memiliki tujuan secara umum.

2.8 Rapid Application Development (RAD)

Menurut Jeremy Reece (2006), Rapid Application Development adalah

metodologi lengkap yang mencakup pengembangan sistem dari kebutuhan

bisnis ke dalam pengembangan yang sedang berjalan. RAD bersifat terbuka

dan dapat diterapkan ke dalam proyek individu, maupun filosofi organisasi.

Pengembangan RAD lebih bersifat prototyping, sehingga hasil akhir aplikasi

tidak berubah terlalu banyak dari perencanaan yang telah dibuat sebelumnya.

Tujuan dari Rapid Application Development adalah:

1. Membuat sistem yang memiliki kualitas baik

2. Pengembangan dan penyampaian sistem yang cepat

3. Menggunakan biaya yang sedikit

Berikut ini adalah fase Rapid Application Development menurut James

Martin:

36

Gambar 2. 17 RAD Phases

1. Requirement/Planning

Menggabungkan elemen dari perencanaan sistem dan analisis

sistem dari System Development Life Cycle. User, manager, dan

member mendiskusikan tentang kebutuhan bisnis, ruang lingkup

proyek, batasan-batasan, dan kebutuhan sistem

2. User Design Phase

User berinteraksi dengan system analist untuk melakukan desain

terhadap proses sistem, input, dan output. User Design terus

dilakukan agar user dapat mengerti, mengubah, dan menyetujui

model kerja dari sistem yang akan dibuat

3. Construction Phase

Fokus ke dalam pengembangan program dan aplikasi. User tetap

dapat berpartisipasi dan menyarankan perubahan atau peningkatan.

Dalam fase ini dilakukan proses pengembangan, coding, unit-

integration, dan system testing

4. Cutover Phase

Menggambarkan tugas akhir dari fase ini, termasuk didalamnya

konversi data, testing, perubahan ke dalam sistem baru, dan

pelatihan user.

Menurut Mone (2015:484), seorang pengembang aplikasi akan lebih

cocok menggunakan RAD dibandingkan metodologi lain jika:

1. Pengembangan software harus cepat

2. Penyelesaian pengembangan diharapkan selesai dalam hanya 60-90 hari

37

3. Fungsi-fungsi utama dapat dialamatkan atau ditangani oleh beberapa tim

yang terpisah

4. Kecepatan pengembangan lebih dipentingkan daripada biaya

5. Kekurangan orang yang ahli di bidang yang dibutuhkan

2.9 Testing

Menurut Burd, Jackson, &Satzinger (2012, p411) testing adalah proses

pengecekan suatu komponen, subsistem, atau sistem untuk menentukan

karakteristik operasional dan apakah sistem tersebut terdapat kesalahan atau

tidak.

Menurut Mills & Watkins (2011, p12) Mengatakan ada 2 pengertian dari

testing secara formal yaitu:

1. Testing adalah semua aktifitas yang ditujukan untuk mengevaluasi sebuah

atribut atau kapabilitas dalam sebuah program atau sistem dan menentukan

apakah sistem tersebut telah memenuhi hasil yang diinginkan.

2. Testing adalah proses menjalankan sebuah program atau sistem dengan

maksud mencari kesalahan.

2.9.1 Granularity Test

Menurut Black (2009, p2), test granularity mengacu pada kehalusan atau

kekasaran fokus tes. Test case yang halus mengijinkan tester untuk memeriksa

detil pada tingkat rendah, biasa pada internal sistem. Test case yang kasar

memberikan informasi tentang perilaku sistem secara umum kepada tester.

2.9.2 Structural

Menurut Black (2009 :p2), Structural test (atau yang biasa disebut white-

box tests dan glass-box tests) adalah test untuk menemukan bug dalam elemen

struktur tingkat rendah seperti yang terjadi di tingkatan kode , database

schema, chips, subassemblies dan interfaces. Pengujian struktural ini

didasarkan pada bagaimana suatu sistem beroperasi. Contohnya, pengujian

struktural akan mengungkapkan tempat penyimpanan database masih memiliki

ruang penyimpanan username sebanyak 80 karakter, tetapi pada kenyataannya

hanya memungkinkan menyimpan 40 karakter. 27 Pengujian struktural

melibatkan pengetahuan teknis terperinci dari sistem. Untuk menguji software,

38

tester membuat pengujian yang paling struktural dengan melihat kode dan

struktur data itu sendiri. Untuk pengujian hardware, tester membuat pengujian

struktural untuk membandingkan spesifikasi chip untuk pembacaan

oscilloscopes atau meter tegangan.

2.9.3 Acceptance Testing

Menurut Black (2009, p601) Acceptance testing adalah sebuah fase

pengujian software dan hardware yang dirancang untuk menjunjukan bahwa

sistem yang diuji telah memenuhi seluruh kebutuhan dan persyaratan yang

telah dibuat. Fase ini bertujuan untuk membangun kepercayaan dalam kualitas

software.

39