BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL)...

33
7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa perangkat lunak, proses rekayasa perangkat lunak, OOAD dan UML. 2.1.1. Pengertian Perangkat Lunak Menurut Pressman (2001,p6), yang dimaksud dengan perangkat lunak adalah: a. Kumpulan instruksi (program komputer) yang jika dieksekusi akan menyediakan fungsi dan dayaguna yang diinginkan (instructions of computer programs that when excuted provide desired function and perfomance). b. Kumpulan struktur data yang memungkinkan program untuk memanipulasi informasi secukupnya (data stuctures that enable the programs to adequately manipulate information). c. Kumpulan dokumen yang menggambarkan operasi dan penggunaan program (documents that describe the operation and use of the programs). Sommerville (2001,p5) mendefinisikan perangkat lunak tidak hanya berupa program tetapi juga semua dokumen yang berhubungan dan data konfigurasi yang

Transcript of BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL)...

Page 1: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

7

BAB 2

LANDASAN TEORI

2.1. Rekayasa Perangkat Lunak (RPL)

Pada bagian ini, akan dijelaskan definisi perangkat lunak (software),

definisi rekayasa perangkat lunak, proses rekayasa perangkat lunak, OOAD dan

UML.

2.1.1. Pengertian Perangkat Lunak

Menurut Pressman (2001,p6), yang dimaksud dengan perangkat lunak

adalah:

a. Kumpulan instruksi (program komputer) yang jika dieksekusi akan menyediakan

fungsi dan dayaguna yang diinginkan (instructions of computer programs that

when excuted provide desired function and perfomance).

b. Kumpulan struktur data yang memungkinkan program untuk memanipulasi

informasi secukupnya (data stuctures that enable the programs to adequately

manipulate information).

c. Kumpulan dokumen yang menggambarkan operasi dan penggunaan program

(documents that describe the operation and use of the programs).

Sommerville (2001,p5) mendefinisikan perangkat lunak tidak hanya berupa

program tetapi juga semua dokumen yang berhubungan dan data konfigurasi yang

Page 2: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

8

just the program but also all associated document and configuration data which is

needed to make these programs operate correctly).

2.1.2. Pengertian Rekayasa Perangkat Lunak

Definisi rekayasa perangkat lunak menurut Pressman (2001,p20) adalah

pembuatan dan penggunaan prinsip-prinsip keahlian teknik untuk mendapatkan

perangkat lunak yang ekonomis, handal dan bekerja secara efisien pada mesin yang

sesungguhnya (software engineering is the establishment and the use of sound

engineering principles in order to obtain economically software that is reliable and

works efficiently on real machines).

Menurut Sommerville (2001,p6), rekayasa perangkat lunak adalah sebuah

prinsip tentang perekayasaan yang berhubungan dengan semua aspek dari

pembuatan perangkat lunak dari tahap awal spesifikasi sistem sampai perawatan

sistem setelah memasuki tahap penggunaan (an engineering discipline which is

concerned with all aspect of software productions from the early stage of system

specification to maintaning the system after it has gone into use ).

Page 3: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

9

2.1.3. Lapisan dalam RPL

Menurut Pressman (2001, p23-24), secara umum Rekayasa Perangkat

Lunak dapat dibagi menjadi tiga layer dan seperti terlihat pada Gambar 2.1, antara

lain :

a. Process Model adalah fondasi dari RPL yang mendefinisikan sebuah framework

untuk sekumpulan key process area yang harus dibangun demi keefektifan

penyampaian teknologi pengembangan RPL.

b. Methods menyediakan secara teknis bagaimana untuk membangun suatu

perangkat lunak.

c. Tools menyediakan dukungan otomatis dan semi otomatis untuk process model

dan methods.

d. Quality focus merupakan batu landasan yang menopang tools, methods dan

process dalam RPL.

Gambar 2.1 Lapisan Rekayasa Perangkat Lunak

Page 4: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

10

2.1.4. Model Proses Software

Menurut Pressman (2001, p29-47), ada beberapa model proses software

yang umum digunakan, salah satunya adalah Model Sekuensial Linear Model.

Sekuensial Linear ini juga dikenal dengan nama “Classic Life Cycle” atau

“Waterfall Model”. Model ini melingkupi aktivitas-aktivitas seperti ditunjukkan

pada Gambar 2.2.

Gambar 2.2 Waterfall Model

a. Rekayasa dan Pemodelan Sistem Informasi

Rekayasa dan pemodelan sistem informasi diperlukan karena perangkat lunak

selalu merupakan bagian dari sebuah sistem yang lebih besar, kerja dimulai

dengan membangun syarat dari semua elemen sistem dan mengalokasikan

beberapa subset dari kebutuhan ke perangkat lunak tersebut. Perangkat lunak

System Engineering

Analysis

Design

Coding

Testing

Maintenance / Operation

Page 5: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

11

harus berhubungan dengan elemen-elemen yang lain seperti perangkat lunak,

manusia, dan database.

b. Analisis kebutuhan perangkat lunak

Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khususnya pada

perangkat lunak. Untuk memahami sifat program yang dibangun, seorang

perancang perangkat lunak harus memahami kebutuhan informasi, fungsi-fungsi,

unjuk kerja, dan interface yang diperlukan.

c. Perancangan

Design perangkat lunak sebenarnya adalah proses multi langkah yang berfokus

pada empat attribute sebuah program yang berbeda : struktur data, arsitektur

perangkat lunak, representasi interface dan detail (algoritma).

d. Pengkodean

Design harus diterjemahkan menjadi bentuk yang dapat dibaca atau dimengerti

oleh komputer, biasanya dalam bentuk bahasa pemrograman.

e. Pengujian

Sekali kode dibuat, pengujian program juga dimulai. Proses pengujian berfokus

pada logika internal perangkat lunak, memastikan bahwa semua pernyataan

sudah diuji, dan pada eksternal fungsional yaitu mengarahkan pengujian untuk

menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi

akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan.

Page 6: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

12

f. Pemeliharaan

Perangkat lunak akan mengalami perubahan setelah disampaikan kepada

pelanggan. Perubahan akan terjadi karena kesalahan-kesalahan ditentukan,

karena perangkat lunak harus disesuaikan untuk mengakomodasikan perubahan-

perubahan di dalam lingkungan eksternalnya, atau pelanggan membutuhkan

perkembangan fungsional atau unjuk kerja. Pemeliharaan perangkat lunak

mengaplikasi lagi setiap fase sebelumnya, lalu memperbaiki program

sebelumnya dan tidak membuat yang baru lagi.

2.1.5. Analisis dan Perancangan Berorientasi Objek (Object-Oriented Analysis

and Design / OOAD)

Paradigma berorientasi objek (object-oriented) (Lethbridge dan Laganiere,

2002, p29) adalah sebuah pendekatan pada solusi dari masalah-masalah yang

pekerjaannya dilakukan dalam konteks objek (the object-oriented paradigm is an

approach to the solution of problems in which all computations are performed in the

context of object).

Analisis dan perancangan berorientasi objek mengaplikasikan teknik

pemodelan objek untuk menganalisis kebutuhan pada sebuah konteks, seperti sebuah

sistem, kumpulan modul pada sistem, sebuah organisasi atau unit bisnis, dan

mendesain solusinya (Anonim, 2006).

Page 7: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

13

a. Analisis Berorientasi Objek (Object-Oriented Analysis / OOA)

Analisis berorientasi objek (Whitten et. al., 2004, p190) adalah teknik model-

driven yang mengintegrasikan data dan proses menjadi sebuah konsep yang disebut

objek (a model-driven technique that integrates data and process concerns into

construct called objects). OOA adalah gambaran yang mengilustrasikan objek

sistem dari berbagai perspektif, seperti struktur, fungsi, dan interaksi antar objek.

Analisis berorientasi objek (Booch et. al., 2005, p39) adalah sebuah metode

analisis yang memeriksa persyaratan dari sudut pandang kelas dan objek yang

ditemukan pada kosakata dari masalah yang utama (object-oriented analysis is a

method of analysis that examines requirements from the perspective of the classes

and objects found in the vocabulary of the problem domain).

Proses OOA terdiri dari (Bahrami, 1999, p80) :

1. Mengidentifikasi aktor

2. Membuat sebuah model proses bisnis yang sederhana menggunakan UML

Activity Diagram

3. Membuat Use case

4. Membuat interaction diagram

5. Mengidentifikasi kelas

Page 8: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

14

b. Perancangan Berorientasi Objek (Object-Oriented Design / OOD)

Perancangan berorientasi objek (Whitten et. al., 2004, p686) adalah sebuah

pendekatan yang digunakan untuk menentukan perangkat lunak solusi dalam

kaitannya dengan pemakaian objek, atribut (attribute) dan fungsinya secara

bersamaan (an approach used to specify the software solution in terms of

collaborating objects, their attributes and their methods).

Perancangan berorientasi objek (Bootch et. al., 2005, p39) adalah sebuah

metode desain yang meliputi proses pemecahan berbasis objek dan sebuah notasi

untuk menggambarkan model logikal dan fisikal maupun statis dan dinamis dari

sistem yang didesain (object-oriented design is a method of design encompassing

the process of objects oriented decomposition and a notation for depicting both

logical and physical as well as static and dynamic models of the system under

design).

Proses OOD terdiri dari (Bahrami, 1999, p80):

1. Mendesain kelas, atributnya, fungsinya, hubungan asosiasi, struktur dan

protokol, mengaplikasikan istilah desain.

2. Mendesain access layer.

3. Mendesain dan membuat prototipe dari rancangan antarmuka untuk pengguna.

4. Menguji tingkat kepuasan dan kegunaan bagi pengguna berdasarkan use case.

5. Mengulang dan memperbaiki desain.

Page 9: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

15

2.1.6. Unified Modelling Language (UML)

UML (Whitten et. al., 2004, p430) adalah sekumpulan pemodelan konvensi

yang digunakan untuk menentukan atau menggambarkan sebuah sistem perangkat

lunak dalam kaitannya dengan objek (a set of modeling conventions that is used to

specify or describe a software system in terms of objects).

UML (Lethbridge and Laganiere, 2002, p151) dapat juga diartikan sebuah

bahasa grafik standar yang digunakan untuk memodelkan perangkat lunak berbasis

objek (a standard graphical languange for modeling object-oriented software).

UML pertama kali dikembangkan pada pertengahan 1990-an dengan kerjasama

antara James Rumbaugh, Grady Booch dan Ivar Jacobson, yang masing-masingnya

telah mengembangkan notasi mereka sendiri diawal 1990-an.

UML terdiri dari berbagai tipe diagram, antara lain :

a. Class Diagram

Kelas (Schmuller, 1999, p8), adalah sebuah kategori atau pengelompokan

dari hal-hal yang mempunyai atribut dan fungsi yang sama (a class is a category or

group of things that have similar attributes and common behaviors).

Class diagram (Rumbaugh et. al., 1999, p190) adalah sebuah grafik

presentasi dari gambaran statis yang menunjukan sekumpulan model elemen yang

terdeklarasi (statis), seperti kelas, tipe dan isinya serta hubungannya (a class

diagram is a graphic presentation of the static view that shows a collection of

Page 10: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

16

declarative (static)model elements, such as classes, types and their contents and

relationships).

Sebuah kelas diagram terdiri dari sejumlah kelas yang dihubungkan dengan

garis yang menunjukkan hubungan antarkelas, seperti ditunjukkan pada Gambar 2.3.

<Nama Class>

<attributes1>

<attributes2>

<Operation>()

Gambar 2.3 Class Diagram

b. Object Diagram

Sebuah objek adalah instance dari sebuah kelas, sesuatu yang mempunyai

nilai atribut dan fungsi yang spesifik (Schmuller, 1999, p9). Sebuah object diagram

menunjukkan objek-objek dan hubungannya satu sama lain (Schmuller, 1999,

p120), seperti ditunjukkan pada Gambar 2.4.

<Nama Object> : <Nama Class>

<Attributes1>

<Attributes2>

Gambar 2.4 Object Diagram

Page 11: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

17

c. Use Case Diagram

Use case (Schmuller, 1999, p10), adalah sebuah gambaran dari fungsi sistem

yang dipandang dari sudut pandang pemakai (a use case is a description of a

system’s behavior from a user’s standpoint). Contoh use case diagram dapat dilihat

pada Gambar 2.5.

Gambar 2.5 Use Case Diagram

d. Statechart Diagram

Sebuah state diagram (Lethbridge and Laganiere, 2002, p276), merupakan

cara lain untuk mengekspresikan informasi dinamis tentang sebuah sistem, diagram

ini digunakan untuk menggambarkan fungsi eksternal yang terlihat dari sebuah

sistem atau dari sebuah objek secara individu (a state diagram is another way of

expressing dynamic information about a system; it is used to describe the externally

visible behavior of a system or of an individual object). Contoh statechart diagram

dapat dilihat pada Gambar 2.6.

Page 12: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

18

Gambar 2.6 Statechart Diagram

e. Activity Diagram

Sebuah Activity Diagram (Lethbridge and Laganiere, 2002, p284), digunakan

untuk mengetahui aliran kerja yang dilakukan oleh sebuah objek atau komponen (an

activity diagram is used to understand the flow of work that an object or component

perform). Contoh activity diagram dapat dilihat pada Gambar 2.7.

Soaking

Washing

Rinsing

Spinning

Page 13: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

19

Gambar 2.7 Activity Diagram

f. Sequence Diagram

Sebuah sequence diagram (Lethbrige and Laganiere, 2002, p270),

menunjukkan urutan pertukaran pesan yang dilakukan oleh sekumpulan objek atau

aktor yang mengerjakan perkerjaan tertentu (a sequence diagram shows the

sequence of messages exchanged by the set of objects (and optionally an actor)

Page 14: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

20

performing a certain task). Contoh sequence diagram dapat dilihat pada Gambar

2.8.

Gambar 2.8 Sequence Diagram

g. Collaboration Diagram

Sebuah Collaboration Diagram (Lethbridge and Laganiere, 2002, p273),

menunjukkan beberapa objek yang bekerja bersama. Diagram ini merupakan grafik

dengan sekumpulan objek dan aktor sebagai pusatnya (a collaboratiobn diagram

shows several objects working together. It appears as a graph with a set of objects

and actors as the vertices). Contoh collaboration diagram dapat dilihat pada

Gambar 2.9.

Page 15: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

21

  1.Stop

2.rotate back and forth

Gambar 2.9 Collaboration Diagram

h. Component Diagram

Component diagram menggambarkan kumpulan komponen–komponen dan

hubungan antar komponen tersebut (Booch et al, 2005, p107). Component diagram

digunakan untuk mengambarkan implementasi statis dari suatu sistem. Pada Gambar

2.10 terlihat contoh dari component diagram. Notasi yang digunakan dalam

component diagram dapat dilihat Tabel 2.1 (Booch, 2005).

Gambar 2.10 Component Diagram

Internal Timer

Drum Water Pipe

Page 16: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

22

Notasi yang digunakan dalam component diagram:

Notasi Keterangan

Component1

Component

Sebuah bagian fisik dan yang dapat tergantikan dari

sebuah sistem yang sesuai dengan dan menyediakan

realisasi dari seperangkat interface.

Dependency

Sebuah hubungan semantic antara 2 hal dimana

perubahan pada salah satu (the independent thing)

akan mempengaruhi semantic dari lainnya (the

dependent thing). Tabel 2.1 Notasi Component Diagram (Booch, 2005)

i. Deployment Diagram

Sebuah deployment diagram (Schmuller, 1999, p14) menunjukkan

arsitektur fisik dari sistem berbasis komputer (The UML deployment diagrams

shows the physical architecture of a computer-based system). Contoh deployment

diagram dapat dilihat pada Gambar 2.11. Notasi yang digunakan dalam

deployment diagram dapat dilihat Tabel 2.2 (Booch, 2005).

Page 17: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

23

Gambar 2.11 Deployment Diagram

Notasi yang digunakan dalam deployment diagram:

Notasi Keterangan

Node1

Node

Sebuah elemen fisik yang ada saat run time dan yang

merepresentasikan hasil perhitungan sumber daya.

Association

Merupakan hubungan struktural antar class yang

saling berelasi. Tabel 2.2 Notasi Deployment Diagram (Booch, 2005)

2.2. Interaksi Manusia dengan Komputer

Interaksi manusia dan komputer adalah disiplin ilmu yang berhubungan

dengan perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk

digunakan oleh manusia, serta studi fenomena-fenomena besar yang berhubungan

Cobalt Networks

Qube

Microserver

2700WG

Vectra VL Series Dell Dimension

XPS R450

Page 18: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

24

dengannya. Ilmu ini secara khusus menitikberatkan pada perancangan dan evaluasi

antarmuka pemakai (user inteface).

2.2.1. Pengertian Interaksi Manusia dan Komputer

Menurut Dastbaz (2003, p108), interaksi manusia dan komputer tidak dapat

terlepas dari istilah antarmuka pemakai (user interface). Dastbaz juga menjelaskan

bahwa antarmuka pemakai ialah semua saluran informasi yang memungkinkan

pemakai dan komputer dapat saling berkomunikasi.

Menurut Schneiderman (2005, p4) interaksi manusia dan komputer

merupakan disiplin ilmu yang berhubungan dengan, perancangan, evaluasi, dan

implementasi sistem computer interaktif untuk digunakan oleh manusia, serta studi

fenomena-fenomena besar yang berhubungan dengannya.

2.2.2. Delapan Aturan Emas pada Perancangan Antarmuka

Menurut Schneiderman (1998, p74-75), ada delapan aturan emas

perancangan antarmuka yang harus diperhatikan dalam perancangan dialog.

Delapan aturan emas (Eight Golden Rules) tersebut adalah:

a. Berusaha untuk konsisten

Urutan aksi yang konsisten diperlukan pada situasi yang sama.Konsistensi juga

harus digunakan pada prompt, menu, layar bantu, warna, tampilan layar,

kapitalisasi, huruf dan sebagainya juga harus konsisten.

Page 19: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

25

b. Memungkinkan frequent users menggunakan shortcuts

Pengguna yang sudah sering menggunakan aplikasi lebih menginginkan

kecepatan dalam mengakses fungsi-fungsi yang diinginkan. Sehingga

disediakan tombol-tombol spesial penyingkat untuk memudahkan user langsung

berinteraksi dengan fungsi yang diinginkannya.

c. Memberikan umpan balik yang informatif

Umpan balik harus diberikan untuk memberikan informasi kepada user sesuai

dengan aksi (action) yang dilakukan, sehingga user mengetahui aksi apa yang

telah dan akan dilakukan dengan adanya umpan balik ini. Umpan balik dapat

berupa konfirmasi atau informasi atas suatu aksi.

d. Merancang dialog yang memberikan penutupan (keadaan akhir)

Umpan balik atas akhir dari suatu proses-proses dan aksi sangat membantu dan

juga penguna mendapat signal untuk melanjutkan aksi lainnya.

e. Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana

Sistem dirancang sedemikian rupa sehingga dapat mencegah pengguna dalam

membuat kesalahan. Bila terjadi kesalahan, sistem harus dapat memberikan

instruksi sederhana, konstruktif, dan spesifik untuk perbaikan.

f. Memungkinkan pembalikan aksi yang mudah

User kadang tidak sengaja melakukan aksi yang tidak diinginkan, untuk itu user

ingin melakukan pembatalan. Sistem harus dapat memberikan fungsi pembatalan

Page 20: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

26

ini sehingga user akan merasa lebih aman dan tidak takut dalam mencoba dan

memakai sistem tersebut.

g. Mendukung internal locus of control

User yang berpengalaman sangat menginginkan kontrol yang kuat pada sistem

sehingga user merasa menguasai sistem tersebut. Sistem yang tidak terduga dan

sulit dalam melakukan aksi, akan menyulitkan user.

h. Mengurangi beban ingatan jangka pendek

Keterbatasan memori pada manusia harus mampu diatasi oleh sistem sehingga

tidak banyak membuat user melakukan proses penyimpanan memori.

2.3. Tools

Pada bagian ini akan dijelaskan program-program yang digunakan dalam

merancang sistem.

2.3.1. Database

Di masa sekarang ini, database telah menjadi bagian penting dari kehidupan

sehari-hari tanpa disadari. Berikut akan dijelaskan beberapa hal yang berkaitan

dengan database.

Page 21: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

27

a. Pengertian Database

Menurut O’Brien (2003, p145), database adalah koleksi yang terintegrasi

dari elemen-elemen data yang berelasi secara logika. Sebuah database menyatukan

banyak record yang telah disimpan sebelumnya, agar supaya sekumpulan data yang

umum dapat digunakan untuk banyak aplikasi..

Menurut Connolly dan Begg (2002,p14), database adalah suatu kumpulan

data logika yang berhubungan satu sama lain, dan didesain dari sebuah informasi

untuk memenuhi yang dibutuhkan dari satu perusahaan.

Tujuan utama pengunaan konsep database (McLeod, 2001, p.182):

1. Mengurangi data redundancy

Data redundancy adalah duplikasi dari data, maksudnya adalah data yang sama

disimpan berulang-ulang pada banyak file.

2. Meningkatkan data independence

Data independence adalah kemampuan untuk mengubah struktur data tanpa harus

mengubah aplikasi yang memroses data tersebut.

Database terdiri dari beberapa objek antara lain yaitu :

1. Field

Field adalah kumpulan dari beberapa karakteristik dari objek–objek yang ada.

2. Record

Record adalah kumpulan dari field yang berhubungan satu sama lain. Contohnya:

nama, alamat, nomor karyawan, nomor telepon, dan sebagainya.

Page 22: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

28

3. File

File atau berkas adalah kumpulan dari beberapa record yang berhubungan

membentuk saling ketergantungan satu dengan yang lain. Contohnya: transaksi

pada perusahaan yang recordnya tercatat tanggal, kode, barang dan harga.

4. Entity

Entity adalah satu kesatuan yang terdiri dari informasi yang disimpan.

Contohnya: pelanggan, karyawan, barang, dan sebagainya.

5. Attribute

Atribut adalah nama dari suatu kolom relasi yang menjelaskan suatu entity.

Contohnya nama, nomor karyawan, nomor telepon, dan sebagainya.

6. Primary Key

Primary Key adalah sebuah field yang mempunyai nilai unik yang tidak memiliki

kesamaan antara record yang satu dengan record yang lain. Contohnya nomor

karyawan, kode barang, dan lain-lain.

7. Foreign Key

Foreign Key adalah satu atribut atau kumpulan atribut dalam satu relasi yang

berguna untuk menghubungkan primary key lain yang berada dalam tabel lain.

Ditunjukkan pada Gambar 2.12.

Page 23: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

29

Gambar 2.12 Sistem Data Modeling

b. Structured Query Language (SQL)

Menurut Connolly dan Begg (2002, p11), SQL merupakan bahasa yang

dirancang untuk menggunakan relasi dan mengubah masukan menjadi keluaran

yang diharapkan (a language designed to used relations to tranforms inputs into

required outputs).

Menurut O’Brien (2003, p148), SQL adalah bahasa query yang ditemukan di

berbagai paket manajemen database (a query language found in many database

management packages).

SQL dimaksudkan untuk memenuhi keperluan berikut:

• Membuat database dan struktur relasi;

• Melakukan tugas dasar manajemen data, seperti pemasukan, modifikasi dan

penghapusan data dari relasi;

• Melakukan query sederhana dan kompleks.

Page 24: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

30

Standar SQL memiliki dua buah komponen:

• Data definition language (DDL) untuk menetapkan struktur database dan

mengontrol akses ke data;

• Data manipulation language (DML) untuk mendapatkan kembali (retrieve) dan

mempebaharui data.

c. Normalisasi

Normalisasi adalah sebuah teknik formal untuk menganalisis relasi

berdasarkan primary key (candidate key) dan ketergantungan fungsional (Connolly,

2002, p386). Teknik tersebut mencakup serangkaian aturan yang dapat digunakan

untuk menguji relasi individual, sehingga sebuah basis data dapat dinormalisasi pada

derajat tertentu. Ketika syarat tidak terpenuhi, relasi yang tidak sesuai syarat harus

diuraikan ke dalam relasi yang secara individu memenuhi syarat-syarat normalisasi.

Tujuan dari proses normalisasi adalah untuk menghilangkan redudansi data

(misalnya menyimpan data yang sama di beberapa tabel) dan memastikan

ketergantungan data yang ada sudah benar (hanya menyimpan data yang

berhubungan ke dalam sebuah tabel).

2.3.2. Bahasa Pemrograman

Bahasa pemrograman yang akan dipakai yaitu HTML, PHP, MySQL, Java

Script, AJAX.

Page 25: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

31

a. HTML (HyperText Markup Language)

Menurut Laudon (2003, p205), HTML merupakan bahasa yang

mendeskripsikan halaman untuk menciptakan dokumen hypertext atau hypermedia,

contohnya halaman-halaman web (a page description language for creating

hypertext or hypermedia documents such as web pages). HTML menggunakan

instruksi-instruksi yang dibuat tag untuk menentukan bagaimana teks, grafik, video,

dan suara diletakkan pada suatu dokumen dan menciptakan link dinamis ke

dokumen dan objek lain yang tersimpan dalam komputer yang sama dan komputer

yang jauh (remote). Dengan menggunakan link ini pengguna hanya perlu

menekannya secara langsung akan ditujukan pada dokumen lainnya.

HTML memiliki dua fitur yang penting (Castro, 2000, p12) yaitu hypertext

dan universality. Hypertext berarti dapat dibuat sebuah link pada sebuah halaman

web yang menuntun pengunjung untuk membuka halaman web lain atau halaman

lain yang serupa pada internet. Universality berarti, karena dokumen HTML

disimpan dalam bentuk ASCII atau teks, semua komputer dapat membaca sebuah

halaman web secara virtual.

b. PHP (Personal Home Page)

Menurut Chaudhury (2002, p296-297), PHP diciptakan oleh Rasmus Lerdrof.

Selama lima tahun terakhir, PHP telah menarik minat dari kelompok tertentu dan

kontributor baru. Keuntungan dari bahasa pemrograman ini adalah kestabilannya,

Page 26: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

32

kemudahan penggunaan, dam fakta bahwa PHP dapat melakukan tugas yang lebih

sulit dari program CGI (Common Gateway Interface). Kelebihan lainnya adalah

kemampuan untuk diintegrasikan dengan beberapa jenis database. PHP merupakan

salah satu bahasa pemrograman web yang paling disukai dan tercepat dalam

perkembangan server.

Menurut Castagnetto et. al. (2000, p8), PHP adalah bahasa scripting yang

diletakkan pada server (PHP is a server-side embedded sricpting language).

Selain itu, PHP dapat dipergunakan secara gratis dan merupakan open source

project (pengguna dapat men-download baik source code maupun eksekusi untuk

PHP serta di-install untuk dapat digunakan).

c. MySQL

Merupakan bahasa pemrograman RDBMS (Relational Database

Management System) open source yang paling populer dan banyak digunakan pada

sistem operasi Linux(juga tersedia pada sistem operasi Windows). MySQL (Welling

dan Thompson, 2001, p2) adalah Relational Database Management System yang

sangat kuat dan cepat. Kepopuleran ini karena ditunjang oleh performansi query dari

database-nya yang jarang bermasalah (Allen, 2002, p220).

MySQL adalah perangkat lunak pengolah database yang sangat populer,

terutama di kalangan pengguna sistem operasi berbasis Unix. Badan yang membuat

Page 27: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

33

MySQL adalah MySQL AB. Sebagai informasi, MySQL dieja dengan mai-es-kiu-el

(Kurniawan, 2002, p143).

MySQL merupakan perangkat lunak yang bersifat open source. Sesuai

dengan namanya, bahasa standar yang digunakan oleh MySQL adalah SQL. SQL

adalah singkatan dari Structured Query Language dan sering disebut sequel saja.

SQL merupakan bahasa standar untuk pengolahan database. SQL mulai

dikembangkan pada akhir tahun 70-an di laboratorium IBM, San Jose, California.

d. JavaScript

Javascript yang dikerjakan oleh Sun Microsystem kerjasama dengan

Netscape adalah bahasa script yang banyak digunakan bersama-sama dengan HTML

dalam perancangan aplikasi pada halaman web. Dengan javascript dapat dibangun

halaman web yang interaktif, yang memberikan respon terhadap apa yang dilakukan

pengguna seperti mengklik sebuah tombol atau mengetik sesuatu pada textbox

(Bustami, 1999, p287).

e. AJAX ( Asynchronous Javascript And XML )

Pengembangan web secara tradisional bekerja secara synchronously, antara

aplikasi dan server, setiap kali melakukan link atau melakukan operasi “submit”

pada form. Caranya browser mengirimkan data ke server, server merespons dan

seluruh halaman akan di refresh.

Page 28: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

34

AJAX diperkenalkan oleh Jese James Garret dari Adaptive Path pada tahun

2005. Ia mendeskripsikan bagaimana mengembangkan web yang berbeda dengan

metode tradisional. Aplikasi web yang bekerja dengan AJAX bekerja secara

asynchronously, yang berarti mengirim dan menerima data dari user ke server tanpa

perlu me-load kembali seluruh halaman, melainkan hanya melakukan penggantian

pada bagian web yang hendak diubah. Penggunaan AJAX mulai popular ketika

digunakan Google pada tahun 2005. Dengan AJAX kita dapat menjadi lebih baik,

cepat, menambah user-friendly, interaktif pada aplikasi web kita dan update data

tidak me-reload keseluruhan halaman melainkan hanya yang relevan. AJAX

berbasiskan JavaScript dan request HTTP.

AJAX adalah teknologi browser (client-side) yang tidak tergantung pada

software web server tertentu (Andy Sunyoto, 2007, p160).

2.4. Internet

Bagian ini berisi mengenai sejarah internet, dan layanan-layanan yang

disediakan oleh internet.

2.4.1. Sejarah Internet

Internet adalah singkatan dari Interconnection Networking, atau sering

disebut juga sebagai cyberspace. Menurut Ellsworth dan Ellsworth (1997, p3),

bahwa internet adalah jaringan komputer terbesar saat ini, yang menghubungkan

Page 29: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

35

jutaan komputer di seluruh dunia. Seorang pengguna internet dapat mengakses

informasi dan berhubungan secara langsung dengan pengguna internet di seluruh

dunia.

Internet adalah nama untuk sebuah sistem yang luas dan mendunia yang

terdiri dari manusia, informasi dan komputer (Hahn, 1996, p2).

Menurut McLeod (2001, p73), Internet memungkinkan suatu jaringan

komunikasi global yang tidak hanya menghubungkan para mitra dagang tetapi juga

mencakup para pelanggan. Sebagian besar kebangkitan perdagangan melalui

jaringan elektronik diharapkan berasal dari perusahaan-perusahaan yang akan

mempromosikan, dan dalam beberapa kasus mengirimkan produk mereka melalui

internet. Internet dapat digunakan untuk aplikasi bisnis apapun yang melibatkan

komunikasi data, termasuk komunikasi baik di dalam perusahaan maupun dengan

lingkungan.

Pada awalnya Internet merupakan jaringan komputer yang dibentuk oleh

Departemen Pertahanan Amerika Serikat di tahun 1969, melalui proyek ARPA yang

disebut ARPANET (Advanced Research Project Agency Network), di mana mereka

mendemonstrasikan bagaimana dengan hardware dan software komputer yang

berbasis UNIX, kita bisa melakukan komunikasi dalam jarak yang tidak terhingga

melalui saluran telepon. Proyek ARPANET merancang bentuk jaringan, kehandalan,

seberapa besar informasi dapat dipindahkan, dan akhirnya semua standar yang

Page 30: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

36

mereka tentukan menjadi cikal bakal pembangunan protokol baru yang sekarang

dikenal sebagai TCP/IP (Transmission Control Protocol atau Internet Protocol).

2.4.2. Layanan yang Disediakan oleh Internet

Pada bagian ini akan diuraikan berbagai layanan yang tersedia di internet.

1. Layanan Komunikasi

Layanan komunikasi yang tersedia di internet berubah dengan cepat, baik

komunikasi perseorangan maupun komunikasi bisnis (Turban et.al., 2003, p208).

a) Electronic mail (e-mail)

E-mail (Turban et. al., 2003, p208) adalah sebuah aplikasi yang dapat

mengirimkan sebuah pesan elektronik antar individu melalui telepon kabel atau

jaringan wireless (e-mail is an application that allows an electronic message to

be send between individuals through telephone wires or wireless networks).

b) USENET newsgroups (forums)

USENET (Turban et. al., 2003, p209) adalah sebuah protokol yang

menggambarkan bagaimana kumpulan pesan dapat disimpan dan dikirim

antarkomputer (USENET is a protocol that delineates how groups of messages

can be stored on and sent between computers ). USENET menyediakan forum

untuk pengguna yang tertarik pada internet. Forum ini dibagi menjadi beberapa

newsgroup. USENET newsgroup adalah kelompok diskusi internasional yang

Page 31: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

37

merupakan tempat orang-orang berbagi informasi dan ide-ide dalam topik-topik

yang spesifik.

c) Chatting

Chatting (Turban et. al., 2003, p210) memungkinkan dua orang atau lebih yang

secara bersamaan terkoneksi ke internet untuk membuat percakapan secara life

(real-time), interaktif atau tertulis. Internet Relay Chat (IRC) adalah program

chat yang banyak dipakai di internet.

d) Instant Messaging

Instant messaging (Turban et, al., 2003, p210) adalah percakapan online dan

real-time antara dua orang atau lebih yang terhubung dengan internet.

2. Layanan Untuk Mendapatkan Informasi

Layanan ini memungkin pengguna untuk mengakses ribuan katalog online

melalui internet, begitu juga dengan ribuan database yang telah dibuka untuk umum

oleh perusahaan, pemerintah dan agen pemerintah, dan perusahaan nonkomersial.

a) File Transfer Protocol (FTP)

FTP digunakan utnuk mengakses komputer lain dan menerima file dari

komputer tersebut (Turban et. al., 2003, p212).

b) Archie

Archie (Turban et. al., 2003, p212) adalah sebuah alat yang digunakan untuk

mencari file disitus FTP.

Page 32: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

38

c) Gophers

Gopher (Turban et. al., 2003, p212) adalah alat komputer client yang digunakan

untuk mencari informasi yang tersimpan di Internet Gopher Servers melalui

serangkaian menu hirarkis.

d) Layanan Web

Layanan Web adalah bagian code atau komponen komputer yang unik yang

diakses melalui situs yang mengirimkan tipe spesifik dari sebuah fungsi dalam

(Turban et. al., 2003, p213).

2.5. Manajemen Pengawasan

Bagian ini berisi mengenai definisi manajemen, pengawasan, dan

manajemen pengawasan.

2.5.1 Definisi Manajemen Pengawasan

Manajemen adalah suatu organisasi yang terdiri dari sekelompok orang yang

bekerja bersama – bersama untuk mencapai suatu tujuan.

Pengawasan dalam suatu organisasi harus ada pengawasan, yang berguna

untuk memastikan bahwa tujuan dari strategi telah tercapai (Anthony dan

Govindarajan, 2007, p2).

Manajemen Pengawasan adalah suatu proses dimana setiap manajer

mempengaruhi anggota lainnya di dalam suatu organisasi untuk mencapai tujuan

Page 33: BAB 2 landasan Teori - · PDF file7 BAB 2 LANDASAN TEORI 2.1. Rekayasa Perangkat Lunak (RPL) Pada bagian ini, akan dijelaskan definisi perangkat lunak (software), definisi rekayasa

39

dari strategi organisasi (Anthony dan Govindarajan, 2007, p6). Aktifitas dari

manajemen pengawasan di antaranya :

a. Rencana apa saja yang organisasi akan lakukan.

b. Mengkoordinasikan semua aktifitas dari beberapa bagian di dalam organisasi.

c. Mengkomunikasikan informasi.

d. Evaluasi informasi.

e. Memutuskan setiap aksi- aksi yang harus dilakukan.

Manajemen pengawasan dapat menggambarkan sistematik manajemen bisnis

untuk membandingkan performa standar, rencana, atau objektifitas di order untuk

di perjelas meskipun performa dengan standard dan membutuhkan sumberdaya

manusia diperusahaan agar dapat lebih efektif dan efisien dimungkinkan untuk

mencapai objektifitas perusahaan untuk meningkatkan objektifitas perusahaan.

Karakteristik dari pengawasan, yaitu :

1. Pengawasan merupakan proses yang berlanjut.

2. Pengawasan merupakan proses manajemen.

3. Pengawasan merupakan dasar dari level hirarki dari perusahaan.

4. Pengawasan dapat dilihat lanjut.

5. Pengawasan berhubungan dengan rencana.

6. Pengawasan merupakan alat untuk mencapai aktifitas organisasi.