Anda di halaman 1dari 38

BAB 2

LANDASAN TEORI

2.1

Teori Umum
Berikut ini adalah teori-teori yang dipakai pada penulisan :

2.1.1

Internet
Menurut Yuhefizhar (2011: 1) Internet adalah rangkaian hubungan jaringan

komputer yang dapat diakses secara umum diseluruh dunia, yang mengirimkan data
dalam bentuk paket data berdasarkan standar internet protocol (IP). Lebih dalam lagi,
Internet adalah kumpulan jaringan dari jaringan-jaringan komputer dunia yang terdiri
dari jutaan unit-unit kecil, seperti jaringan pendidikan, jaringan bisnis, jaringan
pemerintah dan lain-lain yang secara bersama menyediakan layanan informasi seperti
email, online chat, transfer file dan saling keterhubungan (linked) antara satu halaman
web dengan sumber halaman web yang lainnya.
Dari definisi diatas dapat disimpulkan bahwa layanan utama dari Internet adalah
sebagai media untuk:
1.

Menyebarkan dan memperoleh informasi


Umumnya disajikan dalam bentuk website, informasi tersebut dapat
berupa teks, grafik, suara, video atau dalam bentuk file yang dapat

didownload.
2.

Berkomunikasi
Baik melalui media chatting berbasis teks (IRC), grafik (yahoo
messenger),

maupun

berkomunikasi

suara

(skype),

layaknya

3.
4.

menggunakan telepon kabel.


Berkirim surat (email)
Bertukar data
Salah satunya dengan menggunakan aplikasi FTP, website, maupun

5.

koneksi peer to peer.


Remote login
Mampu mengeksekusi dengan komputer dari jauh (telnet).

Semua fasilitas diatas dapat dilakukan dimana saja dan kapan saja serta tidak mengenal
batas geografis, asalkan anda terhubung dengan internet.

2.1.2

Web server
Menurut Rulianto Kurniawan (2010: 8) Web Server adalah software yang

menjadi rumah dari world wide web (www). Web server menunggu permintaan dari
client yang menggunakan browser. Jika ada permintaan dari browser, maka web server
akan memproses permintaan tersebut dan kemudian memberikan hasil prosesnya berupa
data yang di inginkan kembali kebrowser.
Data ini mempunyai format yang standar, disebut dengan format SGML (standar
general markup language). Data yang berupa format ini kemudian akan ditampilkan
oleh browser sesuai dengan kemampuan browser tersebut.

10

2.1.3

Hypertext Preprocessor (PHP)


Menurut kasiman peranginangin (2009) PHP adalah singkatan dari Personal

Home Page yang merupakan bahasa standar yang digunakan dalam dunia website. PHP
adalah bahasa pemrograman yang berbentuk script yang diletakan dalam web server.
Ada pengertian tentang PHP, akan tetapi PHP dapat diartikan sebagai Hypertaxet
preprocessor. Ini merupakan bahasa yang hanya dapat berjalan pada server yang
hasilnya dapat ditampilkan pada klien. Interpreter PHP dalam mengeksekusi kode PHP
pada server disebut serverside, berbeda dengan mesin maya java yang mengeksekusi
program pada sisi klien (client-server).
PHP pertama kali diciptakan oleh Rasmus Lerdrorf pada tahun 1994. Awalnya,
PHP digunakan untuk mencatat jumlah serta untuk mengetahui siapa saja pengunjung
homepage-nya. Ramus Lerdorf adalah seorang pendukung open source. Oleh karna itu,
ia mengeluarkan Personal Home Page Tools versi 1.0 secara gratis, kemudian
menambahkan kemampuan PHP 1.0 dan meluncurkan PHP 2.0.
Pada tahun 1996, PHP telah banyak digunakan dalam website didunia. Sebuah
kelompok pengembang software yang terdiri dari Ramus, Zeew Zuraski, Andi Gutman,
Stig Bakken, Shane Caraveo dan Jim Winstead bekerja sama untuk menyempurnakan
PHP 2.0. Akhirnya, pada tahun 1998, PHP 3.0 diluncurkan.
Penyempurnaan terus dilakukan sehingga pada tahun 2000 diluncurkan PHP 4.0.
Tidak berhenti sampai disitu, kemampuan PHP terus bertambah dan versi terbaru yang
dikeluarkan adalah PHP 5.0.x.

11

Kelebihan

utama

dari

Hypertext

Prepocessor

(PHP)

adalah

dapat

diintegrasikannya PHP dengan basis data. Sistem basis data yang didukung oleh PHP
yaitu:
1.
2.
3.
4.

2.1.4

Oracle
MySQL
PostgreSQL
SQL Server

Javascript
Menurut Betha Sidik (2011: 1) JavaScript adalah bahasa yang digunakan untuk

membuat program yang digunakan agar dokumen HTML, yang ditampilkan dalam
browser menjadi lebih interaktif, tidak sekedar indah saja. JavaScript memberikan
beberapa fungsionalitas ke dalam halaman web, sehingga dapat menjadi sebuah
program yang disajikan dengan menggunakan antar muka web.
JavaScript merupakan bahasa script, bahasa yang tidak memerlukan Kompiler
untuk menjalankannya, cukup dengan interpreter. Tidak perlu ada proses kompilasi
terlebih dahulu agar program dapat dijalankan. Browser web Netscape Navigator dan
Internet Exploler adalah salah satu contoh Interpreter, karena kedua browser ini telah
dilengkapi dengan interprector JavaScript. Tetapi tidak semua browser web dapat
menjadi interpreter JavaScript karena belum tentu browser tersebut dilengkapi dengan
interpreter JavaScript.

12

JavaSript adalah bahasa script yang ringan dan mudah digunakan. Dengan
adanya Javascript ini, maka kini halaman web tidak sekedar menjadi halaman data dan
informasi saja, tetapi juga dapat menjadi suatu program aplikasi dengan antar muka web.
JavaScript merupakan bahasa pemrograman yang tidak membutuhkan lisensi
untuk dapat menggunakanya. Jika browser web yang kita gunakan mendukung
(memiliki) JavaScript akan kita dapat langsung membuat aplikasi berbasis web dengan
menggunakan JavaScript. Umumnya JavaScript adalah program yang ditanamkan
(disisipkan) ke dalam halaman web, sehingga halaman (dokumen) web menjadi sebuah
aplikasi yang berjalan didalam browser web.

2.1.5

AJAX (Asynchoronous JavaScrip and XML)


Menurut Desrizal (2010) AJAX (Asynchoronous JavaScrip and XML). AJAX,

terdiri dari HTML, Javascript, DHTML dan DOM yang kemudian digabungkan dengan
bahasa pemrograman web disisi server seperti PHP dan ASP, sehingga membentuk
aplikasi berbasis web yang interaktif.
AJAX bukanlah bahasa pemrograman baru, tetapi adalah teknik baru untuk
membuat aplikasi web lebih baik, lebih cepat dan interaktif. Dengan AJAX, Javascript
dapat

langsung

berkomunikasi

dengan

server

dengan

menggunakan

objek

XMLHttpRequest. Dengan objek ini, Javascript dapat melakukan transaksi data dengan
webserver, tanpa harus me-reolading halaman web tersebut secara keseluruhan.
Berikut ini adalah teknologi yang termasuk dalam aplikasi AJAX :

13

a. HTML yang digunakan untuk membuat web forms dan mengidentifikasikan


field-field yang akan anda gunakan dalam aplikasi.
b. JavaScript adalah kode inti untuk menjalankan aplikasi AJAX dan untuk
membantu memfasilitasi komunikasi dengan aplikasi.
c. DHTML, atau Dynamic HTML, membantu anda untuk membuat forms atau web
anda dinamis. Anda akan menggunakan <div>, <span> dan elemen HTML
dinamis lainnya.
d. DOM, Document Objek model, akan digunakan (melalui kode JavaScript) untuk
bekerja dengan kedua struktur dari HTML dan XML anda yang dalam ada
beberapa kasus berasal dari server.

2.1.6

JQuery
Menurut Desrizal (2010) JQuery adalah JavaScript Library (kumpulan kode atau

fungsi javascript siap pakai), sehingga mempermudah dan mempercepat kita dalam
membuat kode Javascript. Secara standar, jika kita membuat kode Javascript, maka
diperlukan kode yang cukup panjang. Nah disinilah fungsi JQuery sebagai Javascript
Library, dimana kita bisa langsung memanggil fungsi yang terdapat didalam Library
tersebut. Kesimpulannya, JQuery menyerderhanakan kode Javascript. Ini sesuai dengan
slogannya Write less, do more.
Seorang tokoh bernama John Resig yang telah merilis sebuah Javascript Library
dan kini kita kenal dengan nama JQuery. Semenjak dirilis pertama kali pada tahu 2006,
JQuery telah mencuri perhatian para web developer. Buktinya, pada tahun-tahun
berikutnya JQuery telah banyak digunakan oleh website-website terkemuka didunia
seperti Google, Intel, Microsoft dan masih banyak lagi.

14

2.1.7

CSS
Menurut Agus Saputra (2011: 7) CSS atau yang memiliki kepanjangan

Cascading Style Sheet merupakan suatu bahasa pemrograman web yang digunakan
untuk mengendalikan dan membangun barbagai komponen dalam web sehingga
tampilan web akan lebih rapi, terstruktur, dan ragam.
CSS merupakan pemrograman wajib yang harus dikuasai oleh setiap pembuat
program (web progremmer), terlebih lagi itu adalah pendesain web (web designer).

2.1.8 Database
Menurut Sudarman.s (2011: 2) Database adalah sebuah struktur yang umumnya
terbagi dalam 2 hal, yaitu sebuah database flat dan sebuah database relasional. Database
relasional lebih mudah dipahami dari pada database flat karena database relasional
mempunyai bentuk yang sederhana serta mudah dilakukan operasi data. MYSQL sendiri
adalah sebuah database relasional. Database yang memiliki struktur relasional terdapat
tabel-tabel untuk menyimpan data. Pada setiap table terdiri dari kolom dan baris serta
sebuah kolom untuk mendefinsikan jenis informasi apa yang harus disimpan.

2.1.9 MySQL

15

MySQL pertama kali dirintis oleh seorang programmer database bernama


Michael Wildenius.
Menurut Sudarman.S (2011: 5) MySQL database server adalah RDBMS
(Relasional Database Management System) yang dapat menangani data yang bervolume
besar. Meskipun begitu, tidak menuntut resource yang besar. MySQL adalah database
yang paling polpular diantara database-database yang lain.
MySQL adalah program database yang mampu mengirim dan menerima data
dengan sangat cepat dan multi user. MySQL memiliki dua bentuk lisensi, yaitu free
software dan sharewere. Penulis sendiri dalam menjelaskan buku ini menggunakan
MySQL yang free sofware karena bebas menggunakan database ini untuk keperluan
pribadi atau usaha tanpa harus membeli atau membayar lisensi, yang berada dibawah
lisensi GNU/GPK (general public lisensi), yang dapat anda download pada alamat
resminya http://www.mysql.com. MySQL sudah cukup lama dikembangkan, beberapa
fase penting dalam pengembangan MySQL adalah sebagai berikut :
1. MYSQL dirilis pertama kali secara internal pada 23 mei 1995.
2. Versi Windows dirilis pada 8 januari 1998 untuk Windows 95 dan Windows
NT.
3. Versi 3.2.3 : beta dari juni 2000, dan dirilis pada januari 2001.
4. Versi 4.0 : beta dari agustus 2002, dan dirilis pada maret 2003 (un-ions).
5. Versi 4.1 : beta dari bulan juni 2004, dirilis pada bulan oktober. 2004 (R-trees
dan B-trees, subqueris, prepared statments).
6. Versi 5.0 : beta dari bulan maret 2005, dirilis pada oktober 2005. (cursor,
stored procedure, trigger, views XA transaction).
7. Sun Microsystems membeli MySQL AB pada tanggal 26 februari 2008.
8. Versi 5.1 : dirilis 27 november 2008 (event scheduler, partitioning, plug-in
API, row-based replication, server log table).

16

2.1.10 Delapan Aturan Emas


Secara garis besar, interaksi manusia dan komputer merupakan suatu disiplin
ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem
komputer yang interaktif yang digunakan oleh manusia, serta merupakan suatu study
terhadap fenomena-fenomena yang berhubungan dengannya. Ilmu menitik beratkan
pada perancangan dan evaluasi antar pemakai (user interface) dengan tujuan seseorang
dapat membuat sistem interaksi dengan memperhatikan kaedah interaksi dan
komunikasi.
Menurut shneiderman (2010) Delapan aturan emas perancangan user interface
yaitu :
1. Berusaha untuk konsisten.
Konsisten dilakukan pada urutan tindakan, perintah, dan istilah yang
digunakan pada prompt, menu, serta layar bantuan.
2. Memungkinkan frekuensi user menggunakan shortcut.
Pada saat frekuensi dari user meningkat. User juga berkeinginan untuk
mengurangi jumlah dari interaksi dan untuk meningkatkan langkah dari
interaksi, singkatan, function keys, perintah tersembunyi, dan fasilitas makro
sangat membantu untuk pengguna ahli.
3. Memberikan umpan balik yang informatif
Untuk setiap tindakan operator, sebaiknyan disertakan suatu sistem umpan
balik. Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat
diberikan umpan balik yang sederhana. Tetapi ketika tindakan merupakn hal
yang penting, maka umpan balik sebaliknya lebih substansial. Misalnya

17

muncul suatu suara ketika salah menekan tombol pada waktu input data atau
muncul pesan kesalahannya.
4. Merancang dialog yang memberikan keadaan akhir / penutup
Rangkaian dari tindakan harus disusun ke dalam grup dengan permulaan,
pertengahan dan akhiran. Feddback yang informatif pada pnyelesaiannya dari
kumpulan tindakan memberikan operator kepuasan dari prestasi, perasaan
lega, sinyal untuk meletakkan kemungkinan rencana dan pilihan dari pilihan
mereka, dan indikasi yang caranya adalah bersih untuk mempersiapkan
tindakan dari grup berikutnya.
5. Memberikan pencegahan kesalahan dan penanganan kesalahan sederhana
Sedapat mungkin sistem dirancang sehingga pengguna tidak dapat
melakukan kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi
kesalahan dengan cepat dan memberikan mekanisme yang sederhana dan
mudah dipahami untuk penanganan kesalahan.
6. Memungkinkan pembalikan aksi yang mudah
Hal ini dapat mengurangi kekhawatiran pengguna karena pengguna
mengetahui kesalahan yang dilakukan dapat dibatalkan, sehingga pengguna
tidak takut untuk mengekplorasi pilihan-pilihan lain yang belum bisa
digunakan.
7. Mendukung pusat kendali internal
Pengguna ingin menjadi pengontrol sistem akan merespon tindakan yang
dilakukan pengguna dari pada merasa bahwa sistem mengontrol pengguna.
Sebaiknya sistem dirancang sedemikian rupa sehingga pengguna menjadi
inisiator dari pada responden.
8. Keep It Simple
Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana atau
banyak tampilan halaman yang sebaiknya disatukan, serta diberikan cukup
waktu pelatihan untuk kode, mnemonic, dan urutan tindakan.

18

2.1.11

Unified Modeling Language (UML)


Menurut Bennett, Skelton, & Lunn (2005 : 5) Unified Modeling Language adalah

UML adalah bahasa visual yang menyediakan cara bagi orang yang ingin menganalisa
dan merancang

sistem yang berorientasi object agar dapat mengvisualisasi,

mengkonstruksi dan mendokumentasikan sistem software dan model bisnis dari suatu
sistem organisasi.
2.1.12 Use Case Diagram
Menurut Bennett, Skelton, & Lunn (2005 : 20) Use Case Diagram merupakan
urutan tindakan yang dilakukan oleh sistem dan aktor yang menggambarkan user atau
sistem lain yang berinteraksi dengan sistem yang dimodelkan.
Use Case juga dapat digunakan untuk memodelkan apa yang terjadi didalam
sistem yang ada, atau use case dapat juga digunakan untuk memodelkan sistem baru
yang akan dikembangkan. Tujuan utama membuat Use Case adalah :
1. Digunakan untuk memodelkan urutan tindakan yang dilakukan oleh sistem dan
memberikan hasil yang dapat diamati seseorang atau sesuatu di luar sistem.
2. Use Case memberikan pandangan tingkat tinggi dari apa yang dilakukan sistem
dan siapa yang menggunakannya
3. Use Case menyediakan dasar untuk menentukan antar muka (interface) manusiakomputer dan komputer-komputer ke sistem
4. Use Case dapat digunakan untuk memodelkan skenario alternatif untuk kasus
tertentu yangdapat mengakibatkan urutan yang berbeda dari suatu proses
(actions).

19

5. Use Case menggunakan notasi diagram sederhana yang mudah dipahami oleh
pengguna akhir (end user) dan dapat digunakan untuk berkomunikasi dengan
mereka (pengguna akhir) tentang pandangan tingkat tinggi dari sistem.
6. Use Case dapat digunakan sebagai dasar untuk menyusun spesifikasi tes.

ATM
Menarik Uang
Costomer

Tunai
Memeriksa Saldo
Buku
Struk
Gambar
2.1Cetak
Contoh
Use case

Use Case Diagram memiliki komponen sebagai berikut :


Tabel 2.1 Komponen Use Case Diagram
Simbol

Deskripsi

Fungsionalitas yang disediakan sistem


nama use
case

sebagai unit-unit yang saling bertukar


pesan antar unit atau aktor; biasanya
dinyatakan dengan menggunakan kata

Aktor / actor

kerja di awal frase nama use case.


Orang, proses, atau sistem lain yang
berinteraksi dengan sistem informasi
yang akan dibuat di luar sistem
informasi yang akan dibuat itu sendiri,

20
Simbol

Deskripsi

jadi walaupun simbol dari aktor adalah


gambar orang, tapi aktor belum tentu
merupakan orang.
Biasanya dinyatakan

menggunakan

kata benda di awal frase nama aktor.


Nama aktor
Asosiasi / association

Komunikasi antara aktor dan use case


yang berpartisipasi pada use case atau
use case memiliki interaksi dengan

Ekstensi / extend

aktor.
Relasi use case tambahan ke sebuah

<<extend>>

use case dimana use case yang


ditambahkan dapat berdiri sendiri
walau tanpa use case tambahan itu;
mirip dengan prinsip inheritance pada
pemrograman

berorientasi

objek;

biasanya use case tambahan memiliki


nama depan yang sama dengan use
case yang ditambahkan, misal

21
Simbol

Deskripsi

arah panah mengarah pada use case


Generalisasi / generalization

yang ditambahkan
Hubungan generalisasi dan spesialisasi
(umum - khusus) antara dua buah use
case dimana fungsi yang satu adalah
fungsi yang lebih umum dari lainnya,
misalnya:

mengelola data hapus data ubah data


arah panah mengarah pada use case
yang menjadi generalisasinya (umum)

22
Simbol
Menggunakan / include /
uses

Deskripsi

relasi use case tambahan ke sebuah


use case dimana use case yang
ditambahkan memerlukan use case ini
untuk menjalankan fungsinya atau
sebagai syarat dijalankan use case ini
ada dua sudut pandang yang cukup
besar mengenai include di use case:
include berarti use case yang
ditambahkan akan selalu dipanggil
saat use case tambahan dijalankan,
misal pada kasus berikut:

include berarti use case yang


tambahan akan selalu melakukan
pengecekan apakah use case yang
ditambahkan
sebelum
dijalankan,
berikut:

telah

use

dijalankan

case

misal

tambahan

pada

kasus

23
Simbol

Deskripsi

Kedua interpretasi di atas dapat dianut


salah satu atau keduanya tergantung
pada pertimbangan dan interpretasi
yang dibutuhkan.
arah panah include mengarah pada use
case

yang

dipakai

keduanya

tergantung pada pertimbangan dan


interpretasi yang dibutuhkan.
arah panah include mengarah pada use
case yang dipakai.

2.1.13 Class Diagram


Menurut Bennett, Skelton, & Lunn (2005 : 42) Class Diagram adalah diagram
yang menunjukkan pandangan statis dari kelas dalam suatu model. Atribut dan operasi
dari kelas dapat ditampilkan bersama dengan berbagai relationship yang mengikat kelas.
Kelas memiliki tiga area pokok :
1. Nama
2. Atribut
3. Operasi

24

Contoh kelas : Mahasiswa


Atribut: Nama, NIM, Alamat
Method/Operasi: Belajar, Ujian

Gambar 2.2 Contoh Class Diagram


Multiplisitas / Multiplicity
Multiplisitas menunjukkan jumlah suatu objek yang bisa berhubungan
dengan objek yang lain. Umumnya ditunjukkan dengan berapa banyak objek
yang bisa mengisi properti satu atau banyak, tetapi secara khusus dapat
ditunjukkan pula dengan bilangan integer lebih besar atau sama dengan nol.
Misalnya :
- pasti 1

- 0..1 0 atau 1
- 0..* bisa 0 sampai banyak
- 1..* bisa 1 sampai banyak
- * lebih dari 1
Relasi antar Kelas

25

Asosiasi
Asosiasi, yaitu hubungan statis antar kelas. Umumnya menggambarkan
class yang memiliki atribut berupa kelas lain, atau class yang harus mengetahui
eksistensi class lain. Panah navigability menunjukkan arah query antar class.
Asosiasi menggambarkan hubungan antar class dengan ditandai dengan anak
panah lalu ditambahkan label dan multiplicity untuk memperjelas hubungan.
Agregasi
Agregasi adalah hubungan bagian dari atau bagian ke keseluruhan.
Suatu kelas / objek mungkin memiliki atau bisa dibagi menjadi kelas/objek
tertentu dimana objek/kelas yang disebut kemudian merupakan bagian dari
kelas/objek yang terdahulu.
Generalisasi
Generalisasi adalah relasi ke atas beberapa subkelas kepada super kelas
diatasnya (ditunjukkan dengan notasi segitiga). Sub kelas mewarisi fitur dari
super kelasnya. Sub kelas mampu overridingmetode super kelasnya.
Dependency
Dependency adalah hubungan dimana perubahan pada suatu kelas akan
mempengaruhi kelas yang lain dimana kelas yang terakhir ini bergantung pada
kelas yang sebelumnya. Dalam dependency antar 2 elemen jika terjadi perubahan
pada salah satu elemen maka akan mengakibatkan perubahan pada elemen yang
lain.
Semakin kompleks sistem, maka dependency menjadi sesuatu yang harus
dipertimbangkan. Dependency hanya berlaku satu arah. Bisa diperjelas dengan

26

penggunaan keyword, seperti <<parameter>>, <<use>>, <<call>>, notasi anak


panah dan garis putus-putus.
2.1.14 Sequence Diagram
Menurut Bennett, Skelton, & Lunn (2005 : p158) Sequence Diagram
menunjukkan lifelines yang mewakili objek atau sistem yang berpartisipasi dalam
interaksi, dimana tidak menunjukkan hubungan struktural antara lifelines tetapi mereka
menunjukkan urutan interaksi visual dengan menggunakan sumbu vertikal dari diagram
untuk menunjukan waktu.
Sequence Diagram digunakan untuk memodelkan interaksi tingkat tinggi
diantara object yang aktif di dalam sistem, subsistem, daninteraksi yang dapat
dikombinasikan dalam SequenceDiagram lain atau dalam InteractionDiagram.
SequenceDiagram memiliki komponen sebagai berikut :
Tabel 2.2 Komponen Sequence Diagram
Simbol

Deskripsi
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; biasanya
dinyatakan menggunakan kata benda di awal frase

Garis hidup / lifeline

nama aktor.
Menyatakan kehidupan suatu objek

27

Menyatakan objek yang berinteraksi pesan

Waktu aktif

Menyatakan objek dalam keadaan aktif dan

Pesan tipe create

berinteraksi pesan.
Menyatakan suatu objek membuat objek yang
lain, arah panah mengarah pada objek yang dibuat.

Pesan tipe call

Menyatakan

suatu

objek

memanggil

operasi/metode yang ada pada objek lain atau


dirinya sendiri,

arah panah mengarah pada objek yang memiliki


operasi/metode,
operasi/metode

karena
maka

ini

memanggil

operasi/metode

yang

dipanggil harus ada pada diagram kelas sesuai


Pesan tipe send

dengan kelas objek yang berinteraksi.


Menyatakan bahwa suatu objek mengirimkan
data/masukan/ informasi ke objek lainnya, arah

Pesan tipe return

panah mengarah pada objek yang dikirimi.


Menyatakan bahwa suatu objek yang telah
menjalankan

suatu

operasi

atau

metode

menghasilkan suatu kembalian ke objek tertentu,


arah panah mengarah pada objek yang menerima

28

Pesan tipe destroy

kembalian.
Menyatakan suatu objek mengakhiri hidup objek
yang lain, arah panah mengarah pada objek yang
diakhiri, sebaiknya jika ada create maka ada
destroy.

Gambar 2.3 Contoh Sequence Diagram

29

2.1.15 Case Tool


Shelly Cashman (2010 : 632) memberikan definisi tentang case tool seperti alat
untuk memecahkan permasalahan dalam pengembangan sistem, jadi diibaratkan pada
seorang koki apabila koki ingin memasak apa saja alat yang dibutuhkan untuk
memasak? jawabanya yaitu pisau, kompor dan bahan - bahan lain yang akan dimasak,
sama halnya dengan seseorang progremmer yang akan membuat sistem baru alat yang
dibutuhkan untuk mempermudah seseorang progremmer itu untuk merancang dan
mengembangkan sistem yaitu case tool, karna dengan menggunakan case tool dalam
mengembangkan sistem dapat mengurangi biaya dan mempercepat dalam pembangunan
sistem serta menyediakan dokumentasi ya komprehensif.

2.1.16 Yslow
Menurut Armando Padilla dan Tim Hawkins (2010 : 33) yslow adalah alat untuk
menganalisa kinerja halaman web yang diciptakan oleh kelompok yahoo. Tool tersebut
dapat digunakan pada browser, firefox, chrome, opera maupun safari bahkan dapat
digunakan pula untuk device mobile dengan mode java. Yslow memiliki 2 versi yakni v2
rules dan classic v1 rules, masing masing versi tersebut mempunyai aturan yang
berbeda beda. YSlow menghitung nilai-huruf untuk setiap aturan serta nilai-huruf
keseluruhan pada web seberapa baik seluruh halaman web dioptimalkan. grade "A"

30

menunjukan bahwa halaman web itu sangat baik, dan di sisi lain, grade "F"
menunjukkan bahwa halaman web tidak sangat baik. YSlow juga menyediakan referensi
untuk alat-alat online yang dapat digunakan untuk mengoptimalkan css, javascript, dan
html.

2.1.17 Page Speed


Menurut Armando Padilla dan Tim Hawkins (2010 : 39) google page speed
adalah merupakan plug-in untuk firefox/firebug, dan sama seperti Yslow, page speed
memberikan nilai skor pada halaman web seberapa baik web tersebut yang menerapkan
teknik optimasi. tidak seperti Yslow, page speed memberikan informasi tentang file yang
dianalisis, bagaimana mengoptimalkan file, dimana untuk mengoptimalkan halaman
web dan metrik seberapa banyak pengguna dapat meningkatkan kecepatan web dengan
optimal.

2.1.18 SDLC (SYSTEM DEVELOPMENT LIFE CYCLE)


Menurut Adi Nugroho (2010) pengembangan / rekayasa sistem informasi (system
development) dan / atau perangkat lunak (software engineering)dapat berarti menyusun
sistem / perangkat lunak yang benar benar baru atau yang lebih sering terjadi
menyempurnakan yang telah ada sebelumnya. Juga sering terjadi pengembangan sistem
informasi berbasis komputer (CBIS Computer based information system) dilakukan
dengan motivasi untuk memanfaatkan komputer sebagai alat bantu yang dikenalkan

31

sebagai alat yang cepat, akurat, tidak cepat lelah, serta tidak mengenal arti kata bosan,
untuk melaksanakan intruksi intruksi pengguna untuk mendaptkan hasil hasil
tertentu. Secara umum, suatu sistem / perangkat lunak perlu dikembangkan adalah
karena alasan alasan sebagai berikut :
1.
2.
3.
4.

Adanya permasalahan yang dijumpai pada sistem / perangkat unak yang lama.
Pertumbuhan organisasi.
Untuk meraih kesempatan kesempatan.
Menyesuaikan diri dengan visi, misi, strategi organisasi yang baru.

Segala sesuatu yang akan kita kembangkan seharusnya memiliki kerangka kerja,
demikian pula dengan langkah langkah pengembangan sistem / perangkat lunak.
Banyak sekali rincian kerangka kerja yang diperkenalkan oleh penulis penulis buku
tentang pengembangan sistem informasi, namun pada dasarnya hampir semuanya
mengikuti kerangka yang diperlihatkan pada gambar dibawah.
Analisis
Perancangan
Implementasi
Pengujian
Pemeliharaan

Gambar 2.4 Kerangka Kerja Pengembangan Sistem Informasi (SDLC)


Tahap awal, yaitu tahap perencanaan, adalah menyangkut studi tentang
kebutuhan pengguna, studi studi kelayakan baik secara teknis maupun secara teknologi
serta penjadwalan pengembangan suatu proyek sistem informasi dan perangkat lunak.

32

Pada tahap ini pula, sesuai dengan kakas (tool) yang digunakan yaitu UML, kita bisa
menggunakan use case diagram untuk menangkap kebutuhan dan harapan pengguna.
Tahap berikutnya, yaitu tahap kedua, adalah tahap analisis, yaitu tahap dimana kita
berusaha mengenali segenap permasalahan yang muncul pada pengguna dengan
mendekomposisi dan merelisasikan use case diagram lebih lanjut, mengenali komponen
komponen sistem / perangkat lunak, objek objek, hubungan antar objek, dan
sebagainya.
Tahap ketiga adalah tahap perancangan, dimana kita mencoba mencari solusi
permasalahan yang didapat dari tahap analisis. Tahap ini dibagi menjadi 2, yaitu : 1 )
tahap perancangan yang lebih menekankan pada platform apa hasil dari tahapan analisis
kelak akan diimplementasikan, serta 2 ) tahap perancangan dimana kita melakukan
penghalusan kelas kelas yang didapat pada tahap analisis serta jika perlu
menambahkan dan memodifikasi kelas kelas yang akan lebih mengefisienkan serta
mengefektifkan sistem / perangkat lunak yang akan kita kembangkan. Tahap keempat
adalah tahap implementasi dimana kita mengimplementasikan perancangan sistem ke
situasi nyata. Disini kita mulai berurusan dengan pemilihan perangkat keras dan
penyusunan perangkat lunak aplikasi (coding).
Selanjutnyan tahap kelima adalah pengujian, yang dapat digunakan untuk menentukan
apakah sistem / perangkat lunak yang kita buat sudah sesuai dengan kebutuhan
pengguna atau belum. Jika belum, proses selanjutnya adalah bersifat iteratif, yaitu
kembali ke tahap tahap sebelumnya. Disinilah keuntungan metodologi berorientasi
objek mulai kentara, dimana mulai dari tahap analisi hingga implemntasi kita bisa
menggunakan kakas (tool) yaitu diagram diagram UML yang sama sehingga proses

33

iteratif itu bisa berjalan dengan lebih efektif serta efisien ditinjau dari segi biaya dan
waktu. Disamping itu , tujuan lain dari pengujian adalah untuk menghilangkan /
meminimalisasi cacat program sehingga sistem yang dikembangkan benar benar akan
membantu para pengguna saat mereka melakukan aktivitas aktivitasnya. Kemudian,
tahap yang terakhir (tahapan keenam) adalah tahap pemeliharaan / perawatan dimana
kita mulai melakuka pengoperasian sistem dan jika diperlukan, melakukan perbaikan
perbaikan kecil. Kemudian, jika waktu pengguna sistem habis, maka kita akan masuk
lagi pada tahap perancangan.

2.1.19 Entity Relationship Diagram (ERD)


Menurut Hoffer dan McFadden (2009: 93) ERD adalah representasi grafis dari
entity relationship model. Entity relationship model adalah sebuah perincian,
representasi logis dari sebuah data untuk sebuah perusahaan atau area bisnis. contoh dari
ERD dapat dilihat pada gambar dibawah ini.

Gambar 2.5 Entity Relationship Diagram

34

2.2 Teori Khusus


Berikut ini adalah teori-teori khusus yang digunakan pada penulisan :
2.2.1 Rekrutmen (Prekrutan)
Menurut Dr.Dewi Hanggraeni,Se.,mba (2012: 53) Rekrutmen adalah proses
menemukan dan menarik pelamar-pelamar yang memiliki keahlian untuk menduduki
posisi tertentu didalam organisasi. Proses rekrutmen bertujuan untuk mengumpulkan
kandidat-kadidat terbaik sebanyak-banyaknya (pool of talents) untuk dipilih yang paling
baik dari yang terbaik.
Kandidat-kandidat yang dikumpulkan biasa berasal dari dalam organisasi
(internal) atau dari luar organisasi (external).

REKRUTMEN

REKRUTM
EN
INTERNAL

REKRUTME
N
EKSTERNAL

REHIRING

IKLAN

SELEKSI

AGEN
TENAGA
KERJA
REKRUTME
N
KAMPUS
REFERRAL

35

Gambar 2.6 Struktur Rekrutmen

2.2.2 Rekrutmen Internal


Rekrutmen internal artinya kandidat-kandidat untuk mengisi posisi didalam
organisasi berasal dari internal organisasi itu sendiri. Biasanya proses rekrutmen
internal ini diawali dengan job posting yaitu proses publikasi jabatan kosong didalam
organisasi beserta syarat dan kriteria yang harus dipenuhi untuk mengisi posisi tersebut.
Publikasi ini bisa dilakukan lewat papan informasi perusahaan, internal e-mail, internet,
dan buletin perusahaan.
1. Rehiring
Rehiring berarti memperkerjakan kembali mantan pegawai yang pernah
bekerja di perusahaan. Rehiring memiliki keuntungan yaitu pekerja telah
mengetahui kondisi dan budaya perusahaan tetapi kerugian rehiring adalah
pekerja yang dipekerjakan kembali mungkin saja memiliki perasaan tidak
senang karena diperlakukan tidak adil. Pekerja dipekerjakan apabila
dibutuhkan dan diberhentikan apabila sudah tidak dibutuhkan. Selain itu,
mungkin saja pekerja yang dipekerjakan kembali tersebut sebelumnya telah
memiliki masalah dengan perusahaan sehingga berhenti dari perusahaan.
2. Suksesi
Suksesi berarti proses mengidentifikasi, menilai, dan mengembangkan
kepemimpinan organisasi untuk meningkatkan kinerja. Suksesi bertujuan
sebagai proses regrenerasi dari dalam organisasi. Proses ini berguna untuk
mengisi posisi-posisi kunci di dalam organisasi dengan mempersiapkan
kandidat-kandidat yang memiliki keahlian dan kemampuan yang mumpuni

36

dan telah dipersiapkan sebelumnya sehingga ketika kandidat menduduki


jabatan tersebut ia telah memenuhi kriteria yang dibutuhkan.

2.2.3 Rekrutmen Eksternal


Rekrutmen eksternal berarti mengumpulkan kandidat dan kuat organisasi. Ada
beberapa cara yang bisa digunakan untuk mengumpulkan kandidat-kandidat yang
kemudian akan dipilih untuk menduduki posisi tertentu didalam perusahaan.
1. Iklan
lowongan kerja yang disebarkan dengan cara memasang ikland imedia
cetak (koran dan majalah), media elektronik (radio dan televisi), dan
internet. Iklan lowongan kerja harus dibuat semenarik mungkin sehingga
mampu mengumpulkan banyak kandidat terbaik.
2. Agensi tenaga kerja
Perusahaan tinggal menyebutkan posisi dan persyaratan yang diinginkan
kepada agensi tenaga kerja. Agensi akan mengumpulkan kandidatkandidat yang akan ditawarkan kepada perusahaan. Perusahaan tinggal
memilih kandidat-kandidat yang ditwarkan tersebut sesuai dengan kriteria
yang diinginkan.
3. Rekrutmen kampus
Rekrutmen kampus berarti perusahaan mendatangi kampus-kampus untuk
menjaring kandidat-kandidat. Rekrutmen kampus dianggap salah satu
cara efektif guna mengumpulkana kandidat-kandidat terbaik karena
umumnya kampus yang dipilih adalah kampus-kampus yang memiliki
reputasi yang baik dan unggulan.
4. Referral

37

Referral adalah proses rekrutmen yang dilakukan perusahaan dengan cara


mengumpulkan kandidat yang merupakan rekomendasi dari pekerjaan.

2.2.4 Seleksi Kandidat-kandidat Pelamar


Setelah proses rekrutmen selesai dilakukan, maka tahap berikutnya adalah proses
seleksi. Proses seleksi adalah proses pemilihan kandidat-kandidat yang telah terkumpul
untuk mengisi suatu posisi / pekerjaan didalam organisasi yang dianggap memenuhi
kualifikasi dan kompetensi yang dibutuhkan.
Proses seleksi ini dilakukan ketika kandidat-kandidat terbaik telah dikumpulkan
(pool of talent) dan kemudian dipilih yang terbaik diantara yang paling baik. Keputusan
untuk memilih kandidat didasarkan pada beberapa kriteria yang telah ditetapkan
sebelumnya.
Sebelum diputuskan untuk memilih seorang kandidat, maka hal yang dilakukan
adalah melaksanakan beberapa tes atau biasa disebut sebagai employment test.

2.2.5 Tes Kerja (emploment test)


Tes kerja adalah sebuah cara bagi perusahaan untuk menilai sejarah mana
kecocokan antara kandidat dengan kriteria yang telah ditetapkan untuk mengisi suatu
jabatan tertentu. Beberapa tes berbentuk tes diatas kertas dan tes yang lainnya bisa
berbentuk simulasi.

38

Dalam melaksanakan tes kerja, ada dua hal yang harus diperhatikan oleh
perusahaan. Hal pertama adalah sejauh mana tes yang digunakan itu valid serta hal yang
kedua apakah tes yang digunakan itu reliabel ataukah tidak.

HAL YANG
HARUS

VALIDITAS

RELIABILITA
S

VALIDITAS

VALIDITAS

Gambar 2.7 Tes Kerja


validitas tes berarti bahwa tes yang diberikan ketika seorang kandidat dalam
proses seleksi harus secara signifikan terkait dengan kinerjannya dikemudian hari. Ini
berarti bahwa tes yang diberikan kurang lebih harus mampu menggambarkan skill dan
kemampuan si kandidat.
Tes yang tidak valid adalah tes yang nilainnya tidak berkaitan dengan kinerjanya
kelak. Misalkan ketika dites, si kandidat memiliki nilai yang tinggi tetapi pada
kenyataanya hasil tes yang tinggi tersebut tidak tergambarkan dalam kinerjanya
dikemudian hari.
Validitas tes terdiri dari dua macam yaitu : validitas kriteria (criterion validity)
dan validitas konten (content validity). Validitas kriteria artinya tes yang diberikan harus
bisa menggambarkan kinerja kandidat apabila ia telah terpilih menjadi pekerja

39

diperusahaan. Sedangkan validitas konten berarti tes yang diberikan harus bisa
menggambarkan pekerjaan yang akan dilakukan oleh kandidat kelak apabila terpilih.
Realiabilitas tes berarti bahwa seberapa sering tes itu dilakukan, maka kandidat
akan memiliki nilai yang kurang lebih sama atau konsisten, sehingga tes tersebut bisa
benar-benar memprediksi kemampuan dan keahlian sesungguhnya yang dimiliki oleh
kandidat.
Secara umum, tes kerja atau employment text terbagi menjadi empat jenis yaitu :
cognitive, motoric and physical, personality and interst and achievenment.
1. Tes kognitif (cognitive test), bertujuan untuk mengetahui tingkat kemampuan
kognitif. Tes ini umumnya berkaitan dengan pengukuran tingkat intelejensi.
2. Tes motorik dan fisik (motoric and physical test), bertujuan untuk
mengetahui sejauh mana kandidat memiliki kekuatan fisik.
3. Tes kepribadian dan bakat (personality and interest test), adalah tes yang
bertujuan untuk mengetahui karakteristik individu dari si kandidat.
4. Tes capaian (achievement test), bertujuan untuk mengetahui sejauh mana
individu telah mempelajari sesuatu. Contoh yang paling sederhana dari tes ini
adalah ujian yang diberikan kepada mahasiswa atau pelajar.
5. Tes kesehatan, ini merupakan tes tambahan yang berguna untuk mengetahui
kondisi kesehatan kandidat.

2.2.6 Wawancara (interview)


Setelah kandidat lulus melewati tes kerja, maka tahap selanjutnya untuk
memutuskan apakah kita akan memilihnya ataukah tidak adalah melalui wawancara.

40

Wawancara bertujuan untuk memperoleh gambaran dan informasi mengenai kandidat


secara langsung lewat pembicaraan tetap muka (face to face). Melalui wawancara kita
bisa mengetahui kandidat secara lebih dekat dan lebih dalam.
Secara umum wawancara menjadi terbagi dua jenis yaitu wawancara terstruktur
(structured interview) dan wawancara tidak terstruktur (unstructured interview).
Wawancara yang terstruktur adalah wawancara yang mana sang pewawancara memiliki
panduan yang jelas mengenai tahapan tahapan wawancara dan hal-hal yang akan
ditanyakan ketika wawancara. Wawancara terstruktur memungkinkan proses wawancara
berjalan secara sistematis dan runtun. Akan tetapi, wawancara jenis ini memiliki
kelemahan yaitu pewawancara tidak bisa menggali informasi dari kandidat terlalu dalam
karena ia harus mengikuti panduan (guideline) yang telah dibuat. Sebaliknya wawancara
yang tidak terstruktur adalah jenis wawancara yang memungkinkan sang pewawancara
menanyakan semua informasi yang dianggap perlu.
Sementara itu, apabila dilihat dari jenis pertanyaan yang diajukan maka
wawancara bisa dibedakan menjadi tiga jenis, yaitu :
1. Situational interview adalah wawancara yang pertanyaan berkaitan dengan
pekerjaan yang akan diperolehnya bila diterima.
2. Behavioral interview adalah wawancara yang pertanyaannya berkaitan
dengan respon dan sikapnya terhadap suatu situasi kerja yang telah
dialaminya dimasa lalu.
3. Job-related interview adalah wawancara yang pertanyaannya berkenaan
dengan pencapaian atau kinerja yang telah ditunjukan oleh kandidat dimasa
lalu.

41

2.2.7 Suplemen : psikotest


Salah satu cara lembaga atau perusahaan untuk menguji calon karyawan adalah
dengan mengajukan sejumlah tes psikolog dikenal dengan psikotest. Tes ini sangat
menentukan masa depan calon karyawan dan secara teoritis untuk mengetahui potensi
calon pegawai.
Jenis-jenis persikotes yaitu :
1. Tes IQ. Tes ini melibatkan serangkaian soal matematika dalam istilah tesnya tes
verbal dan non verbal.
2. Tes kepribadian. Didalam tes ini kandidat akan dihadapkan kepada serangkaian
pertanyaan mengenai berbagai dilema dalam pekerjaan seperti bagaimana
menghadapi konflik, bagaimana bekerja sama dan bagaimana solusi jika
menghadapi suatu dilema.
3. Tes kemampuan, yaitu tes uji untuk mengerjakan serangkaian tugas dibawah
tekanan tinggi, apakah kandidat bisa melakukannya. Biasanya tes kemampuan ini
mengkondisikan kandidat dalam suasana penuh tekanan.
4. Tes kreativitas, biasanya kandidat akan diminta menulis atau menggambarkan
sesuatu. Pada salah satu tes kandidat diminta melanjutkan gambar dari enam
kotak yang sudah ada.

2.2.8 Kinerja (performance)


Penilaian kinerja atau performance appraisal adalah sebuah proses dimana
perusahaan melakukan evaluasi dan penilaian kinerja individu setiap pekerjaanya.

42

Penilaian kinerja memiliki beberapa tujuan sebagai berikut :


1. Membuat keputusan dalam manajemen SDM seperti promosi, transfer dan
2.
3.
4.
5.

pemecatan.
Mengidentifikasi kebutuhan akan pelatihan dan pengembangan.
Memvalidasi program seleksi dan pengembangan.
Memberikan umpan balik kepada pekerja atas kinerjanya.
Dasar untuk penentuan keputusan alokasi remunerasi.

Perusahaan, khususnya departemen HR, akan menggunakan hasil dari penilaiaan kinerja
ini sebagai informasi dasar yang akan digunakan untuk mengevaluasi keefektifan dan
kesuksesan berbagai kebijakan sumber daya manusia mulai dari proses rekrutmen,
seleksi, orientasi, penempatan, pelatihan, dan berbagai proses lainnya.

2.2.9 Penggajian
Kompensasi (compensation) adalah segala sesuatu yang diterima oleh karyawan
sebagai balas jasa yang diberikan oleh organisasi atas pekerjaan yang telah dilakukan.
Sistem kompensasi ini harus dikelola secara serius dan tepat oleh perusahaan. Apabila
tidak dikelola dengan baik bisa mengakibatkan pay dissaticfaction yaitu perasaan
ketidakpuasan karyawan atas balas jasa yang diterimanya.
Pay dissatisfaction ini bisa berdampak pada :
1.
2.
3.
4.
5.

Penurunan kinerja
Pemogokan
Tingkat ketidak hadiran yang tinggi
Turnover yang tinggi
Rendahnya komitmen terhadap perusahaan

43

Sebaliknya, apabila dikelola dengan baik maka sistem kompensasi akan


membantu

perusahaan

untuk

mempertahankan

pekerjaan,

mempertahankan

produktivitas, dan membantu perusahaan mewujudkan tujuan-tujuan dan visi yang ingin
diraihnya.
Di indonesia, balas jasa atau kompenasi identik dengan gaji dan upah, padahal
gaji dan upah hanya salah satu jenis kompensasi selain itu masih ada insentif, benefit,
tunjangan, dan lain sebagainya.

2.2.10 Tujuan yang ingin dicapai dalam kebijakan gaji dan upah
Secara umum, ada dua hal yang harus dipenuhi ketika perusahaan menyusun
sistem penggajian untuk para pekerjanya. Hal yang pertama adalah internal equity.
Internal equity menjamin bahwa pekerjaan dengan beban kerja dan tanggung jawab
yang lebih besar dibayar lebih besar dibandingkan dengan pekerjaan dengan bebas kerja
dan tanggung jawab yang lebih rendah. Internal equity ini akan menjamin proses
keadilan dan fairness didalam perusahaan.
Objectives of
Compensation
System

Internal Equity

External Equity

Job Evaluation

Salary Survey

44

Gambar 2.8 Sistem Penggajian

Hal kedua yang harus diperhatikan adalah external equity, yaitu besaran gaji
atau upah yang kita berikan untuk satu posisi / pekerjaan cukup kompetitif dibandingkan
dengan posisi / pekerjaan yang serupa dipasar kerja / diperusahaan lain. Tujuannya agar
kita bisa menarik kandidat-kandidat terbaik untuk bekerja diperusahaan kita.
Kebijakan dalam sistem penggajian dan upah memiliki beberapa tujuan yang
ingin dicapai oleh perusahaan, yaitu :
1. Menarik kandidat-kandidat terbaik untuk bekerja diperusahaan tersebut.
2. Mempertahankan pekerja. Seistem gaji dan upah yang baik akan membuat para
pekerja puas sehingga mereka ingin untuk terus bekerja diperusahaan kita.
3. Menjamin kesetaraan. Sistem gaji dan upah yang baik adalah sistem yang
menjamin kesetaraan, keadilan, dan fairness didalam perusahaan.
4. Sebagai sistem reward. Gaji dan upah juga bisa berperan sebagai reward bagi
pekerja yang memiliki kinerja yang baik.
5. Memenuhi kewajiban hukum. Dibeberapa negara, termasuk indonesia,
pemerintah turut campur tangan dalam penentuan gaji dan upah pekerja terutama
untuk pekerja blue collar.

2.2.11 Survey Gaji (salary survey)


Apabila evaluasi jabatan berguna untuk memastikan bahwa dalam
penggajian perusahaan memenuhi syarat internal equity, maka survey gaji atau
salary survey adalah cara yang bisa digunakan perusahaan untuk memastikan bahwa

45

sistem penggajian telah memenuhi syarat internal equity sehingga perusahaan


menjadi kompetitif untuk mampu menarik kandidat-kandidat terbaik guna bekerja
diperusahaan tersebut.
Tujuan utama survey gaji adalah untuk mengetahui seberapa besar
perusahaan lain yang bergerak dibidang yang sejenis memberikan kepada jabatanjabatan yang sama. Apabila perusahaan membayar lebih tinggi gaji untuk jabatan
yang sejenis dibandingkan dengan umumnya perusahaan lain dipasar maka
perusahaan tersebut berada diposisi higher market level. Sebaliknya, apabila lebih
rendah dari perusahaan tersebut berada diposisi below market level.

Anda mungkin juga menyukai