bab 2 landasan teori - library.binus.ac.idlibrary.binus.ac.id/ecolls/ethesisdoc/bab2/2012-1-00142-if...

46
7 BAB 2 LANDASAN TEORI 2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar yang menjadi dasar dalam penelitian IT. Teori umum ini digunakan dalam pengembangan suatu aplikasi. 2.1.1 e-Learning 2.1.1.1 Pengertian e-Learning Menurut Effendi dan Zhuang (2005, p6), E-Learning adalah semua kegiatan pembelajaran yang menggunakan media elektronik atau teknologi informasi. E-Learning juga dapat diartikan sebagai salah satu bentuk pendidikan yang menggabungkan motivasi, komunikasi, efesiensi dan teknologi (Matt Comerchero, 2006, p1) 2.1.1.2 Kelebihan e-Learning Menurut Kristy DelVecchio dan Megan Loughney (2006,p5), E- learning sangat berguna bagi pendidikan dan perusahaan serta untuk semua tipe pelajar. E-learning sangat terjangkau, menghemat waktu, dan memiliki hasil yang dapat diukur. E-learning mempunyai berbagai keuntungan, yaitu: 1. Mengurangi biaya : E-learning lebih hemat dibanding dengan cara Belajar tradisional karena hemat waktu dan uang yang dihabiskan saat dalam transportasi. E-learning dapat diakses dari berbagai

Upload: lethu

Post on 08-Mar-2019

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

  

7

BAB 2

LANDASAN TEORI

2.1 Teori-teori dasar/umum

Pada bagian ini dikemukakan teori-teori dasar yang menjadi dasar dalam

penelitian IT. Teori umum ini digunakan dalam pengembangan suatu aplikasi.

2.1.1 e-Learning

2.1.1.1 Pengertian e-Learning

Menurut Effendi dan Zhuang (2005, p6), E-Learning adalah semua

kegiatan pembelajaran yang menggunakan media elektronik atau teknologi

informasi. E-Learning juga dapat diartikan sebagai salah satu bentuk

pendidikan yang menggabungkan motivasi, komunikasi, efesiensi dan

teknologi (Matt Comerchero, 2006, p1)

2.1.1.2 Kelebihan e-Learning

Menurut Kristy DelVecchio dan Megan Loughney (2006,p5), E-

learning sangat berguna bagi pendidikan dan perusahaan serta untuk semua

tipe pelajar. E-learning sangat terjangkau, menghemat waktu, dan memiliki

hasil yang dapat diukur. E-learning mempunyai berbagai keuntungan, yaitu:

1. Mengurangi biaya : E-learning lebih hemat dibanding dengan cara

Belajar tradisional karena hemat waktu dan uang yang dihabiskan

saat dalam transportasi. E-learning dapat diakses dari berbagai

Page 2: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

8  

lokasi dan tidak ada biaya transportasi sama sekali, E-learning

lebih hemat dibandingkan dengan cara belajar tradisional.

2. Fleksibilitas: E-learning memiliki kelebihan dalam pengaksesan

dimana saja dan kapan saja. Pendidikan tersedia kapanpun dan

dimanapun dibutuhkan. E-learning dapat digunakan di kantor,

rumah, jalan, 24 jam sehari dan 7 hari dalam satu minggu. E-

learning juga memiliki pengukuran terhadap hasil belajar yang

dapat dibuat agar instruktur dan pelajar dapat mengetahui apa saja

yang telah dipelajari, kapan mereka akan menyelesaikan

pelajarannya dan bagaimana hasil yang telah mereka capai.

3. Pelajar sangat menyukai E-learning karena mengakomodir cara

belajar yang berbeda. Pelajar bisa mengambil keuntungan belajar

sesuai dengan keinginan mereka. Pelajar juga bisa menyesuaikan

E-learning dengan jadwal kesibukan mereka. Apabila pelajar

bekerja maka ia masih dapat bekerja dengan E-learning. Apabila

pelajar menginginkan waktu belajar dimalam hari, maka

pilihannya juga tersedia.

2.1.1.3 Kekurangan e-Learning

Disamping kelebihannya, menurut Kristy DelVecchio dan Megan

Loughney (2006,p5) E-learning juga mempunyai kekurangan , yaitu :

1. Pelajar harus memiliki akses ke komputer dan internet.

2. Pelajar juga harus memiliki keterampilan komputer dengan

programnya, seperti program word processing, internet browser,

dan e-mail.

Page 3: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

9  

3. Koneksi internet yang baik, karena sangat dibutuhkan dalam

pengambilan materi pelajaran.

2.1.2 Klien dan Server

Klien dapat didefinisikan sebagai pihak yang meminta sebuah service,

sedangkan server dapat diartikan sebagai pihak yang menyediakan services bagi

pihak yang membutuhkannya (Chung, 2004).

Sistem klien dan server dapat diukur melalui :

• Secara horizontal, dimana hal ini dapat dilakukan dengan menambahkan

maupun menghilangkan klien workstation yang akan menghasilkan sedikit

perubahan dalam hal performa.

• Secara vertical, dimana dilakukan dengan memindahkannya ke mesin

server yang lebih besar dan cepat maupun multiserver.

Beberapa cara hubungan antara Klien/Server dengan server yaitu :

• Centralized

Gambar 2.1 Skema Sistem Centralized.

Pada struktur centralized, semua data disimpan dalam 1 file server dimana

akan mengakibatkan file server diwajibkan untuk memiliki kemampuan

untuk menampung dan memproses data dalam jumlah yang besar.

Page 4: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

10  

• Distributed

Gambar 2.2 Skema Sistem Distributed.

Pada sistem distributed, data-data disimpan dalam beberapan file server

yang saling berhubungan. Hal ini akan meningkatkan efisiensi dalam hal

pengaksesan data. Namun kerusakan pada satu file server akan berakibat

pada kerusakan pada file server lainnya.

2.1.3 File Transfer Protocol (FTP)

FTP adalah salah satu komponen penting yang digunakan dalam web

untuk melakukan transfer data(RFC 959, 1985).. Proses pada FTP berlangsung

dengan FTP sebagai klien, dan FTPD bertindak sebagai server. Namun proses ini

berbeda dengan telnet dimana terdapat dua koneksi yang terjadi pada FTP.

Tugas dari protokol FTP adalah untuk mentransfer file dari satu komputer

ke komputer yang lainnya. Hal ini tidak dipengaruhi oleh lokasi, cara koneksi,

maupun sistem operasi dari komputer tersebut. Selama sistem komputer tersebut

memiliki protokol TCP/IP dan terhubung dengan internet, maka fasilitas FTP

dapat digunakan.

Page 5: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

11  

Protokol pada FTP menggunakan empat karakter ASCII yang diakhiri

dengan karakter NEWLINE dimana terdapat beberapa kode yang membutuhkan

parameter setelah kode tersebut. Keuntungan menggunakan karakter ASCII

adalah untuk memudahkan user melihat aliran perintah dalam upaya

pemeriksaan transfer file dan juga memudahkan user dalam mengakses FTP

server tanpa menggunakan FTP klien.

Adapun beberapa FTP internal command yang biasa digunakan pada

protokol yaitu :

• USER - Username. Perintah ini merupakan perintah yang pertama kali dikirim ke

server setelah koneksi terjalin, dan digunakan untuk identifikasi user pada server.

• PASS – Password. Perintah ini dikirim setelah perintah USER. Perintah ini

berfungsi untuk membantu server dalam identifikasi user yang mengakses

server.

• CWD – Change Working Directory. Perintah ini mengijinkan user untuk

mengganti direktori penyimpanan data, pengambilan data, dan pemberian hak

akses.

• CDUP – Change To Parent Directory. Perintah ini merupakan fungsi khusus dari

CWD yang berfungsi untuk membantu transfer direktori di antara sistem operasi

yang memiliki sintaks yang berbeda dalam penamaan direktori induknya.

o REIN – Reinitialize. Perintah ini berfungsi untuk memutuskan

koneksi user, dimana jika masih ada transfer yang belum selesai, akan

diselesaikan terlebih dahulu.

Page 6: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

12  

o QUIT – Logout. Perintah ini berfungsi untuk memutuskan koneksi

user dengan server menutup semua transfer data yang sedang

berjalan.

o PORT – Data Port. Perintah ini memberikan akses port untuk

digunakan dalam proses transfer data tertentu.

o RETR – Retrieve. Perintah ini menyebabkan data transfer process

(DTP) pada server untuk melakukan transfer salinan data kepada

pengguna DTP.

o TYPE – Representation Type. Argumen pada perintah ini

menggambarkan tipe representasi data. Contohnya A untuk ASCII

atau I untuk Image.

o STOR – Store. Perintah ini menyebabkan DTP pada server untuk

menerima transfer data dari pengguna DTP dan menyimpan datanya

ke dalam server.

o STOU – Store Unique. Perintah ini hampir sama dengan STOR

dimana data yang disimpan pada server harus menggunakan nama

yang unik dalam direktorinya.

o APPE – Append. Perintah ini menyebabkan server untuk menerima

data dari klien dan menyimpannya ke dalam file tertentu, dan

menambahkan di akhir dari file jika terdapat data yang sama.

o RNFR – Rename From. Perintah ini memberikan spesifikasi nama

kepada file.

Page 7: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

13  

o RNTO – Rename To. Perintah ini mengambil file yang sudah di

spesifikasi dari perintah RNFR dan memberikan spesifikasi nama

yang baru.

o ABOR – Abort. Perintah ini memerintahkan server untuk

membatalkan perintah FTP yang sebelumnya.

o DELE – Delete. Perintah ini menyebabkan file tertentu untuk dihapus

pada server. (Hal ini berlaku bagi user yang memiliki wewenang)

o MKD – Make Directory. Perintah ini untuk membuat direktori baru.

(Hal ini berlaku bagi user yang memiliki wewenang).

o PWD – Print Working Directory. Perintah ini untuk mengembalikan

nama dari direktori yang sedang dikerjakan.

o LIST – List. Perintah ini berguna untuk mengirim list dari semua file

dan direktori yang sedang digunakan kepada klien.

o HELP – Help. Perintah ini memerintahkan server untuk mengirimkan

informasi yang berguna mengenai implementasinya.

o NOOP – No Operation. Perintah ini memerintahkan server untuk

mengirimkan balasan OK. Dalam hal ini berfungsi untuk menjaga

hubungan FTP agar tetap hidup.

2.1.4 Hyper Text Transfer Protocol (HTTP)

Hyper Text Transfer Protocol (HTTP) adalah protokol daripada web (RFC

1945, 2616). Protokol HTTP pertama kali diimplementasikan oleh Tim Berners-Lee

di CERN pada tahun 1990-1. Berdasarkan spesifikasi dari HTTP/1.0, protocol HTTP

adalah protokol dengan fitur yang ringan dan kecepatan yang memadai untuk

mendistribusikan informasi maupun data-data yang dibutuhkan oleh sistem.

Page 8: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

14  

2.1.4.1 HTTP Request

HTTP Request adalah inisiasi awal dari klien untuk melangsungkan

komunikasi. Setiap kali klien mengirimkan request, klien akan menggunakan

TCP untuk melangsungkan koneksi dengan web server dan kemudian

mengirimkan request melalui koneksi tersebut.

Format dari HTTP Request memiliki tiga komponen utama, yaitu:

1. HTTP Request Method, URI, dan versi protokolnya.

Hal ini merupakan baris pertama dari HTTP Request dimana di dalamnya

mengandung jenis metode dari HTTP Request, URI dan juga nama dari

protokol yang akan digunakan.

2. HTTP Request Headers

Bagian ini mengandung bagian kepala dari HTTP Request yang digunakan

untuk bertukar informasi mengenai lingkungan (environment) dari klien.

3. HTTP Request Body

Bagian ini berisi isi dari request yang dikirimkan oleh HTTP Request.

HTTP Request Header dan HTTP Request Body dipisahkan oleh baris

kosong.

2.1.4.2 HTTP Response

HTTP Response merupakan bagian yang akan member tanggapan

HTTP Request di server dan mengirimkan respon yang akan ditampilkan

pada jendela pencari (browser) klien.

Format dari HTTP Response juga terdiri dari 3 komponen utama yaitu:

• Protocol/Version, Kode status, dan deskripsinya.

Page 9: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

15  

Bagian ini merupakan baris pertama dari HTTP Response yang

terdiri dari nama dan versi protokol, kode status dari request, dan

juga deskripsi dari kode status tersebut.

• HTTP Response Headers.

Bagian ini hampir sama dengan HTTP Request Header dimana

HTTP Response Header juga mengandung informasi. Perbedaannya

terletak pada informasi yang dikandungnya dimana pada HTTP

Request Header berisi informasi mengenai environment dari mesin

klien. Sedangkan pada HTTP Response Header berisi informasi

mengenai environment dari mesin server.

• HTTP Response Body

Bagian ini merupakan hal yang ditampilkan pada bagian jendela

pencari (browser) klien. HTTP Response Header dan HTTP

Response Body juga dipisahkan oleh baris kosong.

2.1.4.3 Protocol HTTP

Beberapa metode protokol yang umumnya digunakan dalam

HTTP yaitu :

• OPTIONS

Metode OPTIONS berfungsi untuk meminta informasi mengenai pilihan

komunikasi yang tersedia pada request maupun response yang telah

diidentifikasi oleh Request-URI. Metode ini memberikan akses kepada

klien untuk menentukan pilihan maupun persyaratan yang berhubungan

dengan server, ataupun kapabilitas dari server.

Page 10: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

16  

• GET

Metode GET berarti mengembalikan infomasi apapun yang sesuai dengan

yang diajukan oleh Request-URI. Jika Request-URI mengacu pada proses

pengolahan data, maka hasil data yang telah diproses itulah yang akan

dikembalikan. Pada hasil data tersebut teks yang merupakan sumber

pemrosesan data tidak diikut sertakan, kecuali teks tersebut merupakan

bagian dari output yang dihasilkan.

Metode GET dapat dibagi menjadi dua bagian yaitu :

1. Conditional GET

Hal ini terjadi apabila pada pesan request terdapat If-Modified-Since, If-

Unmodified Since, If-Match, If-None-Match, atau If-Range. Metode

Conditional GET berguna untuk mengantisipasi apabila user ingin agar

data maupun suatu proses dilakukan dalam suatu keadaan tertentu.

Selain itu, metode ini bermaksud untuk mengurangi pemakaian network

yang tidak terpakai dengan memberikan akses kepada data untuk

melakukan refresh tanpa memerlukan proses request ataupun transfer

data dalam data yang sudah dimiliki oleh klien.

2. Partial GET

Hal ini terjadi apabila pada pesan request terdapat jangkauan (Range)

dari header-nya. Partial GET berarti hanya sebagian dari data yang

ditransfer. Proses ini berguna untuk mengurangi pemakaian network

yang tidak terpakai dengan memberikan akses untuk melengkapi

sebagian data yang telah di transfer tanpa mengulangi proses dari awal.

Page 11: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

17  

• POST

Metode POST digunakan untuk meminta server agar menerima data yang

ada dalam request sebagai bagian dari request yang telah diidentifikasi

oleh Request-URI dalam Request-Line.

Metode POST digunakan untuk melakukan beberapa hal berikut :

- Anotasi dari sumber-sumber yang ada.

- Memasukkan pesan ke papan bulletin, mailing list ataupun artikel-

artikel yang tergabung dalam grup yang sama.

- Menyediakan satu blok data seperti hasil dari penyerahan form, ataupun

proses penanganan data.

- Memperbesar database melalui proses append.

Fungsi sebenarnya dari metode POST ditentukan oleh server biasanya

tergantung oleh Request-URI. Data yang dihasilkan merupakan bagian

dari URI dimana maksudnya datra yang dihasilkan merupakan bagian

dari direktori yang memanggilnya. Contohnya sebuah artikel merupakan

bagian dari group berita tempat artikel tersebut dipanggil.

• HEAD

Metode HEAD memiliki kemiripan dengan GET, namun server tidak

harus mengembalikan bagian badan dari message (message-body).

Informasi meta yang terdapat pada HTTP header yang dikembalikan

sesuai dengan perintah HEAD harus sama dengan informasi yang

dikembalikan melalui perintah GET. Metode ini dapat digunakan untuk

mendapatkan informasi meta mengenai data yang didapatkan tanpa

Page 12: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

18  

mengirimkan bagian badan dari data tersebut. Selain itu metode ini juga

banyak digunakan untuk melakukan pengecekan mengenai validitas,

aksebilitas, dan modikasi dari link hypertext.

• PUT

Metode PUT meminta agar data disimpan dalam Request-URI yang telah

ditentukan. Jika Request-URI mengacu pada bagian yang telah ada, maka

data tersebut akan ditandai sebagai versi modifikasi dari data sebelumnya

di server. Namun jika Request-URI tidak mengacu pada bagian yang

telah ada, maka URI akan mendefinisikan suatu bagian yang baru sesuai

dengan request dari user. Perbedaan dari perintah POST dan PUT terletak

pada pengartian yang dilakukan oleh REQUEST-URI. URI pada perintah

POST mengidentifikasi sumber yang akan menangani data. Sumber yang

dimaksud dapat berarti hasil dari pemrosesan data, gerbang hubungan

dengan protocol lain maupun data terpisah yang menerima anotasi.

Sedangkan URI pada perintah PUT mengidentifikasi data sesuai dengan

request.

• DELETE

Metode DELETE meminta agar server menghapus sumber sesuai dengan

REQUEST-URI. Metode ini dapat dilakukan dengan bantuan user juga

pada bagian server. Server akan memberikan status berhasil perintah

tersebut telah selesai dilakukan ataupun data-data yang akan dihapus

telah dipindahkan ke tempat yang tidak bisa dijangkau.

• TRACE

Page 13: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

19  

Metode TRACE memberikan akses kepada klien untuk melihat hal yang

diterima pada bagian terakhir dari request dan menggunakan data tersebut

untuk bagian testing maupun diagnosis informasi.

2.1.5 Rekayasa Perangkat Lunak

Rekayasa Perangkat Lunak adalah pembuatan dan penggunaan prinsip

sound engineering untuk mendapatkan perangkat lunak yang handal dan dapat

bekerja secara efisien pada mesin yang sesungguhnya (Pressman, 2008, p53).

Tujuan dari rekayasa perangkat lunak yaitu :

• Menghasilkan biaya produksi perangkat lunak yang rendah.

• Menghasilkan perangkat lunak dengan kinerja tinggi dan andal serta tepat waktu.

• Menghasilkan perangkat lunak yang dapat berkerja pada berbagai jenis platform.

• Menghasilkan perangkat lunak yang biaya perawatannya rendah

2.1.5.1 Ruang Lingkup Rekayasa Perangkat Lunak

Ruang lingkup Rekayasa Piranti Lunak dapat digambarkan seperti

gambar di bawah ini:

Gambar 2.3 Ruang Lingkup RPL (Abran et.al., 2004).

Page 14: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

20  

Software Requirements :

Mencakup tentang spesifikasi kebutuhan yang dibutuhkan dalam

perancagan perangkat lunak.

Software Desain :

Mencakup desain penampilan arsitektur, komponen, antar muka, dan

karakteristik lain dari perangkat lunak.

Software Construction :

Mencakup detail pengembangan perangkat lunak seperti algoritma,

pengkodean, pengujian dan pencarian kesalahan .

Software Testing :

Meliputi pengujian pada keseluruhan perangkat lunak.

Software Maintenance :

Mencakup tindakan lebih lanjut ketika perangkat lunak telah

dioperasikan seperti perawatan.

Software Configuration Management :

Mencakup usaha perubahan konfigurasi perangkat lunak yang

dilakukan untuk memenuhi kebutuhan tertentu.

Software Engineering Management :

Mencakup manajemen dalam rekayasa perangkat lunak seperti

pengelolaan, pengukuran, dan perencanaan proyek.

Software Engineering Tools and Methods :

Mencakup kajian teoritis tentang alat bantu dan metode RPL.

Software Engineering Process :

Page 15: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

21  

Mencakup proses pembuatan seperti definisi, implementasi

pengukuran, pengelolaan, perubahan, dan perbaikan proses RPL.

Software Quality :

Mencakup pengukuran kualitas dan daur hidup perangkat lunak

2.1.5.2 Proses Rekayasa Perangkat Lunak

Tahapan-tahapan dalam rekayasa piranti lunak, yaitu :

1. Analisis sistem adalah bagian terpenting dari proses rekayasa

perangkat lunak karena semua proses lanjutan akan sangat

bergantung pada baik tidaknya hasil analisis. Salah satu bagian

penting yang biasanya dilakukan dalam tahapan analisis adalah

pemodelan proses bisnis. Pada tahap ini masalah-masalah dipecah

menjadi komponen-komponen dengan tujuan mempelajari seberapa

bagus komponen-komponen tersebut bekerja dan berinteraksi untuk

meraih tujuan mereka.

2. Model proses adalah model yang memfokuskan pada seluruh proses

di dalam sistem yang mentransformasikan data menjadi informasi.

Tahapan ini menunjukkan aliran data yang masuk dan keluar pada

suatu proses yang mana digambarkan dalam bentuk Diagram Arus

Data (Data Flow Diagram/DFD) atau Flow Chart. DFD atau Flow

Chart meyajikan gambaran mengenai transformasi data yang

dilakukan manusia, proses dan prosedur dalam menghasilkan

informasi.

Page 16: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

22  

3. Disain perangkat lunak adalah tugas, tahapan atau aktivitas yang

difokuskan pada spesifikasi detil dari solusi berbasis computer.

Output utama dari tahapan ini adalah spesifikasi disain yang meliputi

spesifikasi disain umum dan spesifikasi disain rinci. Spesifikasi disain

umum berisi gambaran umum agar stakeholder sistem mengerti akan

seperti apa perangkat lunak yang akan dibangun. Spesifikasi disain

rinci digunakan dalam perancangan sistem dengan tujuan agar sistem

yang dibangun memiliki konstruksi yang baik, proses pengolahan

data yang tepat dan akurat, bernilai, memiliki aspek user friendly dan

memiliki dasar-dasar untuk pengembangan selanjutnya. Selain itu

juga terdapat desain arsitektur yang terdiri dari desain database,

desain proses, dan desain user interface.

4. Konstruksi adalah tahapan menerjemahkan hasil desain logis dan fisik

ke dalam kode-kode program komputer.

5. Pengujian dilakukan dengan melibatkan kelompok pengguna yang

telah direncanakan sebelumnya. Tahap ini akan berakhir ketika semua

kelompok pengguna sepakat bahwa perangkat lunak tersebut bisa

diterima berdasarkan kriteria-kriteria yang telah ditetapkan.

6. Perawatan dan Konfigurasi. Ketika sebuah perangkat lunak telah

dianggap layak untuk digunakan, maka akan ada tahapan baru yang

muncul yaitu perawatan perangkat lunak. Ada beberapa tipe

perawatan yang biasa dikenal dalam dunia perangkat lunak seperti

terlihat pada diagram dalam gambar di bawah ini:

Page 17: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

23  

Tipe perawatan corrective dilakukan jika terjadi kesalahan atau

(bugs). Perawatan ini dilakukan dengan memperbaiki kode

program, menambah bagian yang dirasa perlu atau malah

menghilangkan bagian-bagian tertentu.

Tipe perawatan routine (preventive maintenance) dilakukan secara

rutin untuk melihat kinerja perangkat lunak, ada atau tidak ada

kesalahan.

Tipe perawatan sistem upgrade dilakukan jika ada perubahan dari

komponen-komponen yang terlibat dalam perangkat lunak

tersebut. Sebagai contoh perubahan platform sistem operasi dari

versi lama ke versi baru menyebabkan perangkat lunak harus di-

upgrade.

Gambar 2.4 Tipe-Tipe Perawatan.

Page 18: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

24  

2.1.5.3 Model Proses Perangkat Lunak

2.1.5.3.1 Model Spiral

Menurut Pressman (2008, p86), model spiral merupakan

model evolutioner yang menggabungkan sifat iteratif dari model

protyping dan juga aspek sistematis dan terkontrol dari model

waterfall. Adapun setiap loop yang ada pada model Spiral

menandakan sebuah fase yang akan dijalankan.

Beberapa hal yang harus dicermati sebelum membuat

model Spiral, yaitu:

1. Objective settings

User sudah dapat menentukan tujuan dari fase yang ditentukan,

mengetahui batasan-batasan pada proses dan produk,

menyiapkan perencanaan, mengetahui resiko proyek,

menyiapkan alternatif strategi untuk menanggulangi resiko-

resiko yang ada.

2. Risk assessment and reduction

Adapun setiap resiko harus dianalisis secara detil. Hal ini

dilakukan untuk memperkirakan solusi penanganan dan juga

membuat prototype untuk mengetahui ketidakcocokan

kebutuhan.

3. Development and validation

Model pengembangan sistem akan dipilih setelah evaluasi

dilakukan. Adapun dalam model Spiral, pengembangan akan

dilakukan bersamaan dengan validasi ataupun pengujian

Page 19: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

25  

daripada sistem. Hal ini bertujuan untuk mempercepat kinerja

perbaikan dari sistem.

4. Planning

Evaluasi proyek akan dilakukan untuk memutuskan untuk terus

ke fase loop selanjutnya atau tidak. Jika fase dilanjutkan ke

fase selanjutnya, maka perancanaan yang baru akan diterapkan.

2.1.6 Interaksi Manusia dan Komputer

2.1.6.1 Pengertian IMK dan Komponennya

Interaksi Manusia dan Komputer adalah suatu rancangan sistem

komputer yang mendukung dan membantu manusia dalam hubungannya

dengan aktivitas sehari-hari, produktivitas maupun keamanan (Preece,

2007). Secara umum, Interaksi Manusia dan Komputer dapat diartikan

Gambar 2.5 Model Pengembangan Spiral.  

Page 20: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

26  

sebagai ilmu yang mempelajari suatu interaksi yang terjadi antara

manusia dan komputer.

Komponen Interaksi Manusia dan Komputer yaitu :

• USER

Pengguna sistem baik secara individu maupun berkelompok

dimana pihak user berusaha untuk menyelesaikan pekerjaannya

dengan menggunakan bantuan teknologi.

• KOMPUTER

Komputer merupakan suatu teknologi yang digunakan untuk

mengontrol suatu proses maupun sebuah sistem agar dapat

berjalan sebagaimana mestinya. Komputer terdiri dari berbagai

jenis baik dari yang berskala kecil/desktop sampai ke skala

besar seperti super komputer. Selain itu, komputer dapat juga

berupa suatu teknologi yang ditempelkan (embedded system) ke

suatu benda.

• INTERAKSI

Dalam setiap interaksi yang terjadi antara manusia dan

komputer baik secara langsung maupun tidak langsung,

melibatkan suatu dialog dengan suatu umpan balik (feedback)

dan kontrol kinerja dari suatu kerja. Interaksi yang bagus akan

memudahkan aktivitas yang dilakukan sehingga dapat

menghasilkan suatu hasil yang diinginkan tepat waktu.

Page 21: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

27  

2.1.6.2 Delapan Aturan Emas

Menurut Shneiderman (2009, p88), terdapat delapan aturan emas

perancangan antarmuka (Eight Golden Rules) yang harus diperhatikan

yaitu :

1. Berusaha untuk konsisten

Konsistensi dalam tindakan diperlukan dalam situasi yang sama.

Contohnya yaitu proses terminologi yang sama untuk proses prompt,

menu maupun tampilan bantuan. Selain itu juga diperlukan

konsistensi dalam layout yang ditampilkan. Pengecualian dapat

diberikan kepada situasi mengenai konfirmasi proses delete ataupun

pengulangan terhadap password.

2. Memenuhi kegunaan yang universal.

Mengenali kebutuhan dari user yang berbeda, perbedaan dari

pengguna pemula dan pengguna ahli, perbedaan umur, serta

keberagaman teknologi dimana sistem harus dapat memenuhi

kebutuhan tersebut. Menambahkan fitur untuk pengguna awal, seperti

penjelasan, dan fitur-fitur untuk pengguna ahli, seperti penggunaan

shortcut,dsb.

3. Memberikan umpan balik yang informatif.

Umpan balik yang diberikan harus memberikan informasi kepada

user terkait dengan aktivitas yang dilakukan, sehingga user dapat

mengetahui aksi apa yang telah dan akan dilakukan.

4. Merancang dialog yang memberikan penutupan (keadaan akhir).

Page 22: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

28  

Rangkaian aksi sebaiknya disusun menjadi sebuah grup yang

memiliki keadaan awal, bagian tengah, dan bagian akhir. Umpan

balik pada bagian akhir seperti konfirmasi maupun petunjuk

memberikan suatu kepuasaan, kelegaan maupun pesan dan pilihan

kepada user untuk melanjutkan rangkaian aksinya.

5. Memberikan pencegahan kesalahan dan penanganan kesalahan yang

sederhana. Dalam merancang suatu sistem, sebaiknya didesain agar

user tidak dapat membuat kesalahan yang serius. Bila terjadi

kesalahan, sistem harus dapat mendeteksi kesalahan dan menawarkan

langkah termudah untuk menyelesaikan masalah.

6. Memungkinkan pembalikan aksi yang mudah.

Fitur ini akan memberikan rasa aman kepada user dikarenakan user

tahu bahwa aksi yang dilakukan masih dapat dibalikkan. Hal ini akan

mendorong user untuk menjelajah lebih jauh.

7. Mendukung internal locus of control.

User yang berpengalaman sangat menginginkan kontrol yang kuat

pada sistem sehingga user merasa memegang kendali atas sistem

tersebut. Sitem yang tidak terduga dan sulit dalam melakukan aksi

akan menyulitkan user.

8. Mengurangi beban ingatan jangka pendek.

Keterbatasan memori pada manusia mengharuskan agar tampilan

dibuat sedemikian mungkin sehingga mudah dicerna, dan fungsi-

fungsi yang ada juga tidak memerlukan banyak keyword yang harus

diingat.

Page 23: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

29  

2.2 Teori-teori Khusus

Teori-teori khusus adalah teori-teori yang secara spesifik dibutuhkan dalam

penelitian ini. Teori-teori khusus ini merupakan landasan dari fokus penelitian.

2.2.1 Sinkronisasi

2.2.1.1 Pengertian Sinkronisasi

Sinkronisasi adalah proses penyesuaian terhadap skala waktu dari

proses osilasi yang berhubungan dengan interaksi yang terjadi antara

proses osilasi tersebut (Balanov, 2008).

Pada dasarnya sinkronasi dibagi menjadi dua jenis yaitu one-way

file synchronization (sinkronisasi satu arah) dimana file-file yang telah

mengalami perubahan pada bagian source (pusat) akan di buat salinannya

dan dipindahkan ke lokasi targetnya. Pada one-way file synchronization

ini, tidak ada file dari target yang akan menuju ke bagian source.

Sedangkan pada jenis yang kedua, two-way file synchronization

(sinkronisasi 2 arah) proses pembuatan salinan dan pemindahannya dapat

berjalan 2 arah baik dari source ke target maupun sebaliknya.

2.2.1.2 Protokol Sinkronisasi

Adapun beberapa protokol yang umumnya digunakan dalam

teknik sinkronasi, yaitu:

Page 24: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

30  

2.2.1.2.1 HotSync

Hotsync menyediakan dua mode operasi sinkronasi yaitu

fast sync dan slow sync.

.

Gambar 2.6 Perbandingan 2 Mode dari Hotsync

Dari ilustrasi di atas, dapat dilihat bahwa mode slow sync

melakukan sinkronisasi dengan melakukan transfer semua data

yang ada dalam PDA ke dalam PC. Hal ini berbeda dengan mode

fast sync yang hanya melakukan transfer data yang sudah

diperbaharui pada PDA ke dalam PC.

Fast sync dijalankan apabila device yang digunakan dalam

proses sinkronasi tidak berbeda dengan device terakhir yang

digunakan dalam sinkronasi sebelumnya. Untuk mengetahui

perubahan yang terjadi sejak sinkronasi sebelumnya, fast sync

menggunakan status flag sebagai penanda. Status flag ini

disimpan dalam setiap record dalam database, dan akan mencatat

setiap perubahan yang terjadi dalam database. Status flag akan di

reset setiap kali sinkronasi selesai dilakukan.

Page 25: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

31  

Slow sync digunakan ketika kondisi dari fast sync tidak

terpenuhi seperti device yang digunakan dalam proses sinkronasi

berbeda dengan device terakhir yang melakukan proses

sinkronasi.

Gambar 2.7 Perbandingan Kompleksitas Komunikasi dari 2 Mode dalam Hotsync.

Dari gambar di atas, dapat kita lihat bahwa semakin

banyak data yang disinkronisasikan dengan metode slow sync,

akan membuat waktu sinkronisasi semakin lama. Hal ini berbeda

dengan metode fast sync yang memiliki waktu sinkronisasi yang

cukup konstan.

2.2.1.2.2 Intellisync

Intellisync merupakan produk dari Pumatech dimana dalam

penerapannya bertujuan untuk menggunakan fast sync dalam setiap

sinkronasi yang dilakukan. Untuk menerapkan hal tersebut, maka

Page 26: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

32  

device selalu dalam keadaan tersinkronisasi dengan server. Dimana

hal ini akan mengakibatkan masalah apabila device yang terhubung

dengan server memiliki skala yang cukup besar.

Gambar 2.8 Intellisync Anywhere yang Diinstal pada Server.

Intellisync pada gambar di atas, databasenya

menggunakan sistem centralized dimana semua database

disimpan dalam satu pusat. Jika server mengalami gangguan,

maka akan berdampak pada klien-kliennya.

2.2.1.2.3 SyncML

SyncML merupakan protokol yang menggunakan flag dalam

proses sinkronisasinya. Dalam implementasinya, syncML

membutuhkan device tambahan untuk mencatat perubahan-

perubahan yang akan dilakukan dalam proses sinkronasi. Hal ini

menyebabkan jumlah pemakaian memori yang semakin besar.

Tidak hanya itu, syncML rentan terhadap situasi yang dinamis

seperti penambahan maupun pengurangan device dalam jaringan.

Page 27: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

33  

Gambar 2.9 Framework SyncML.

Dari Framework syncML di atas, dapat kita lihat, aplikasi

A memiliki Sync Server Agent dan aplikasi B memiliki Sync

Client Agent. Fungsi dari agent tersebut adalah untuk mencatat

perubahan yang terjadi untuk mempermudah proses sinkronasi.

2.2.1.2.4 CPISync

CPISync atau (Characteristic Polynomial Interpolation

Synchronization) merupakan protokol sinkronisasi yang

menggunakan algoritma maupun komputasi yang rumit dalam

proses sinkronisasinya. Hal ini menyebabkan waktu yang

dibutuhkan untuk setiap sinkronisasi adalah hampir sama baik untuk

data sinkronisasi dalam jumlah besar maupun kecil.

Gambar 2.10 Perbandingan Waktu Antara Slow Sync dan CPI Sync.

Page 28: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

34  

Slow sync memiliki waktu sinkronisasi yang semakin

besar apabila data yang akan disinkronisasikan memiliki jumlah

yang besar. Hal ini berbeda dengan CPISync yang memiliki

waktu sinkronisasi yang lebih konsisten meskipun data

disinkronisasikan dalam jumlah besar.

Gambar 2.11 Skala Perbandingan Fast Sync, Slow Sync, CPI Sync, Intellisync, dan

SyncML.

2.2.2 QT

2.2.2.1 Pengenalan Qt

Qt atau dibaca dengan ‘cute’ awalnya adalah produk dari

QtSoftware yang dibuat oleh Trolltech pada tahun 1994. Teknologi Qt

banyak digunakan di banyak perusahan seperti Google, Skype, dan

sebagainya. Secara umum, Qt merupakan C++ toolkit yang ditujukan

Page 29: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

35  

untuk pengembangan aplikasi Graphic User Interface (GUI) cross-

platform (anonim1).

Aplikasi yang dibuat dengan memanfaatkan Qt dapat dijalankan

di berbagai platform desktop seperti Linux, Windows, dan Mac hingga

sistem operasi embbeded tanpa harus merubah kode program secara

keseluruhan (write once, compile anywhere).

2.2.2.2 Fitur Utama Qt

Ada beberapa fitur utama yang terdapat pada Qt (anonim2):

1. Signal and Slots

Dalam Qt Signal and Slots digunakan untuk komunikasi

antar objek. Signal dibangkitkan jika suatu event terjadi, baik

yang disebabkan oleh interaksi user maupun dari internal

program. Slot merupakan fungsi yang dipanggil sebagai respon

dari signal tertentu. Qt juga menyediakan pre-defined signal and

slot untuk membantu user dalam penggunaanya, namun user juga

dapat membuat signal dan slotnya sendiri.

2. Integrated GUI Designer

Untuk memudahkan desain interface, Qt menyediakan

QtDesigner, sebuah tool untuk mendesain GUI secara visual, yang

akan menghasilkan kode layout. Dengan tool tersebut, user dapat

melakukan kustomisasi widget atau memilih widget standar yang

ada. Selain itu, QtDesigner juga dapat berintegrasi dengan Visual

Studio atau Eclipse.

Page 30: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

36  

3. IDE International Translation

International Translation merupakan proses membuat

aplikasi dapat digunakan oleh orang di berbagai negara melalui

translasi bahasa.

4. Integrated Help.

Help System yang ada di Qt memberikan kemampuan

indexing dan search pada koleksi-koleksi dokumen help secara

simultan. Dokumentasi yang ada dapat disimpan secara offline

maupun dicari secara online.

5. Cross Platrform Compiler

Fitur ini memungkinkan proses build pada QT dapat

dilakukan pada platform yang berbeda seperti LINUX, MAC,

maupun WINDOWS. Fitur ini mengotomatiskan proses Makefile

generation dan juga mempersingkat baris informasi yang

diperlukan untuk menciptakan setiap Makefile.

6. Integrated Debugger

QT mendukung debugger:

- GNU Symbolic Debugger (gdb)

- Microsoft Console Debugger (CDB)

- Internal Java Script Debugger

2.2.2.3 Tools Qt

Adapun tools-tools yang terdapat dalam Qt, diantaranya yaitu (anonim3):

1. Qt Designer

Page 31: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

37  

Merupakan tools untuk mendesain dan membangun GUI dari

komponen Qt. Pembuatan widgets dan dialog pada Qt Designer

digunakan dengan menggunakan on-screen forms.

2. Qt Assistant

Merupakan tools yang berisi baik bantuan maupun dokumentasi

mengenai Qt. Dalam hal ini Qt Assistant menawarkan dokumentasi yang

lengkap mengenai penggunaan fitur-fitur yang ada didalam Qt.

3. Qt Linguist

Tools yang digunakan untuk translasi aplikasi ke dalam bahasa

lokal dimana tools ini berguna untuk mendukung campuran beberapa

bahasa dalam satu dokumen aplikasi. Tools ini juga mendukung unicode.

2.2.2.4 Keuntungan Qt

Beberapa keuntungan menggunakan Qt (Johnson, 2010):

1. Qt merupakan software Open source.

2. Multi cross-platform maksudnya adalah Qt dapat berjalan di

berbagai sistem operasi seperti Unix/ Linux, MAC maupun

Windows.

3. Kemudahan user dalam membangun interface yang diinginkan.

4. Dokumentasi yang tersedia offline maupun melalui online search.

2.2.3 SQLite

SQLite merupakan sebuah library proses yang menerapkan serverless

(mandiri tanpa server), zero configuration, database SQL transaksional

(anonim4). Kode untuk SQLite berada dalam domain publik dan dengan

demikian bebas untuk digunakan untuk tujuan apa pun, komersial atau swasta.

Page 32: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

38  

SQLite saat ini banyak digunakan dalam aplikasi yang banyak kita jumpai,

termasuk dalam beberapa high-profile project.

SQLite juga merupakan mesin database SQL embedded yang berbeda

dengan kebanyakan database SQL lainnya. SQLite tidak memiliki proses server

yang terpisah. SQLite membaca dan menulis secara langsung ke disk. Database

SQL lengkap dengan multiple tabel, indices, triggers, dan views, semua terdapat

dalam sebuah disk file tunggal. Format file database adalah cross-platform yaitu

kita bebas menyalin database antara 32-bit dan sistem 64-bit atau antara

arsitektur big-endian dan little-endian. Fitur-fitur ini membuat SQLite menjadi

pilihan populer sebagai Application File Format. Berbicara tentang SQLite,

SQLite bukan sebagai pengganti untuk Oracle tetapi sebagai pengganti fopen().

Adapun fitur-fitur yang dimiliki oleh SQLite yaitu :

1. Serverless, SQLite tidak memerlukan proses pada server atau

sistem untuk menjalankannya, melainkan hanya sebuah file yang

diakses oleh library SQLite.

2. Zero Configuration, tidak ada server berarti tidak perlu setup,

membuat sebuah database instan adalah semudah anda membuat

file biasa.

3. Cross Platform, semua instan database berada dalam sebuah file

yang cross-platform, tidak memerlukan administrasi.

4. Self-Contained, sebuah library mengandung keseluruhan dari

sistem database, yang langsung terintegrasi pada sebuah aplikasi

program.

Page 33: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

39  

5. Small Runtime Footprint, untuk membangun database SQLite

hanya membutuhkan kurang dari satu MegaByte library (kode

program) dan hanya membutuhkan beberapa MegaByte memory,

bahkan dengan beberapa adjustment baik ukuran library maupun

memory dapat diperkecil.

6. Transactional, SQLite transaction memperbolehkan aksi

penyimpanan melalui beberapa proses thread.

7. Full Featured, SQLite mendukung hampir sebagian besar standar

SQL92 (SQL2).

8. Highly Reliable, Tim pengembang SQLite mengembangkan

melalui kode program yang sangat serius serta telah melewati

proses testing.

Berikut gambaran perbedaan arsitektur SQLite dengan RDBMS lainnya

(Using SQLite, Jay A.K):

Gambar 2.12 Skema Arsitektur RDBMS Klien/Server Tradisional yang Menggunakan Library Klien.

Page 34: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

40  

Gambar 2.13 Skema Arsitektur SQLite.

2.2.4 ASP.NET

ASP.NET adalah teknologi baru dalam pemrograman web yang

merupakan kelanjutan dari teknologi ASP 3.0 (Walther, 2007). Perbedaan utama

dibanding ASP klasik adalah penggunaan .NET Framework sebagai fondasi

pemrograman.

ASP.NET memiliki beberapa kelebihan dibandingkan teknologi

terdahulu, antara lain:

1. Kemudahan mengakses berbagai library .NET Framework secara

konsisten dan powerful, yang mempercepat pengembangan aplikasi.

2. Penggunaan berbagai bahasa pemrograman secara penuh, misalnya

VB.NET, C#, J#, dan C++. Dalam ASP.NET bahasa-bahasa ini dapat

digunakan secara penuh sebagaimana layaknya bekerja di Windows

Application. Hal ini jauh berbeda dibandingkan ASP klasik yang

mengunakan scripting language. Misalnya VBScript agak berbeda

Page 35: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

41  

sintaksnya dengan VB, dalam ASP.NET kita dapat menggunakan

VB.NET dengan sintaks yang 100% sama dengan ketika membangun

Windows Application. Demikian juga dengan C#, tidak ada perbedaan

syntax antara C# untuk membuat kode ASP.NET dengan Windows Form.

Ini sangat memudahkan memprogram aplikasi Windows dan web secara

konsisten.

3. Tersedia berbagai Web Control yang dapat digunakan membangun

aplikasi secara cepat. Programmer dapat dengan mudah mengkaitkan

data ke web control sebagaimana layaknya memprogram Windows

application. Hal ini sangat mempercepat pembuatan aplikasi

dibandingkan harus menyusun kode-kode HTML secara manual.

4. Code Behind, artinya kode-kode pemrograman yang menjadi logic

aplikasi ditempatkan terpisah dengan kode user interface yang berbentuk

HTML. Ini sangat memudahkan dalam debugging, karena kode untuk

presentation layer tidak tercampur dengan kode application logic.

Framework .NET adalah suatu komponen Windows yang terintegrasi

yang dibuat dengan tujuan untuk mendukung pengembangan berbagai macam

jenis aplikasi serta untuk dapat menjalankan berbagai macam aplikasi generasi

mendatang termasuk pengembangan aplikasi Web Services XML.

Framework .NET di design untuk dapat memenuhi beberapa tujuan

berikut ini:

1. Untuk menyediakan environment kerja yang konsisten bagi bahasa

pemrograman yang berorientasi objek baik kode objek itu di simpan dan

Page 36: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

42  

di eksekusi secara lokal, atau dieksekusi secara lokal tapi didistribusikan

melalui internet atau dieksekusi secara remote.

2. Untuk menyediakan environment kerja di dalam mengeksekusi kode yang

dapat meminimaliasi proses software deployment dan menghindari

konflik penggunaan versi software yang di buat.

3. Untuk menyediakan environment kerja yang aman dalam hal

pengeksekusian kode, termasuk kode yang dibuat oleh pihak ketiga.

4. Untuk menyediakan environment kerja yang dapat mengurangi masalah

pada persoalan performa dari kode atau dari lingkungan interpreternya.

5. Membuat para developer lebih mudah mengembangkan berbagai macam

jenis aplikasi yang lebih bervariasi, seperti aplikasi berbasis Windows

dan aplikasi berbasis web.

6. Membangun semua komunikasi yang ada di dalam standar industri untuk

memastikan bahwa semua kode aplikasi yang berbasis Framework .NET

dapat berintegrasi dengan berbagai macam kode aplikasi lain.

2.2.5 UML (Unified Modelling Language)

Menurut Whitten dan Bentley (2007, p371), UML adalah satu kumpulan

konvensi pemodelan yang digunakan untuk menentukan atau menggambarkan

sebuah sistem software yang terkait dengan objek. UML bukanlah sebuah

metode untuk pengembangan sistem melainkan notasi yang telah diterima secara

luas sebagai sebuah standar dalam pemodelan objek.

Page 37: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

43  

2.2.5.1 Flowchart

Menurut Whitten dan Bentley (2007), Flowchart merupakan

representasi yang menunjukkan semua tahapan dalam suatu proses.

Adapun flowchart digunakan untuk :

1. Mendefinisikan dan menganalisa proses.

2. Memberikan sebuah gambaran terkait dengan langkah-langkah

proses dalam menganalisa, diskusi, ataupun komunikasi antar

proses.

3. Mendefinisikan, melakukan standarisasi, ataupun menemukan

tempat untuk pengembangan suatu proses.

2.2.5.2 Use Case Diagram

Menurut Whitten dan Bentley (2007, p382), use case diagram

menggambarkan interaksi antara sistem dan sistem eksternal, serta user.

Dengan kata lain, Use case diagram menggambarkan siapa yang

akanmenggunakan sistem dan dengan jalan apa yang diinginkan user

Gambar 2.14 Contoh Flowchart

Page 38: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

44  

untuk berinteraksi dengan sistem. Selain itu, use case diagram digunakan

untuk secara tekstual menggambarkan urutan langkah dari setiap

interaksi.

Gambar 2.15 Contoh Use Case.

Adapun keuntungan dari menggunakan pemodelan use case yaitu :

1. Sebagai alat untuk menangkap kebutuhan fungsional.

2. Membantu pembagian jangkauan sistem ke dalam bagian-bagian

yang lebih mudah untuk ditangani.

3. Sebagai cara untuk berkomunikasi dengan user dan pemegang

saham lainnya terkait dengan fungsional sistem.

Page 39: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

45  

4. Sebagai cara untuk identifikasi, pemberian, pelacakan, control,

dan juga manajemen aktivitas pengembangan sistem.

5. Menyediakan bantuan dalam memperkirakan jangkauan projek,

tugas, maupun jadwal.

6. Menyediakan suatu tolak ukur untuk percobaan terkait dengan uji

kasus maupun uji rencana.

7. Menyediakan suatu tolak ukur bagi petunjuk bantuan sistem

manual user dan juga dokumentasi pengembangan sistem.

8. Menyediakan suatu alat untuk pelacakan kebutuhan.

9. Menyediakan titik awal untuk identifikasi data objek maupun

entitas.

10. Menyediakan spesifikasi fungsional untuk merancang user dan

sistem antarmuka.

11. Menyediakan cara untuk mendefinisikan kebutuhan akses

database terkait dengan penambahan, perubahan, penghapusan,

maupun pembacaan.

12. Menyedikan suatu framework untuk membantu pengembangan

sistem

2.2.5.3 Activity Diagram

Menurut Whitten dan Bentley (2007, p382), activity diagram

menggambarkan alur sekuensial dari suatu use case ataupun proses

bisnis. Selain itu, activity diagram juga dapat digunakan dalam

pemodelan secara logika terhadap sistem

Page 40: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

46  

 

Beberapa notasi yang digunakan dalam pembuatan activity

diagram yaitu :

1. Solid dot menggambarkan mulainya sebuah proses

2. A rounded-corner rectangle menggambarkan aktivitas atau tugas

yang perlu dilakukan

3. Arrows menggambarkan pemicu yang memulai aktivitas

4. A solid black bar merupakan garis sinkronisasi untuk

menggambarkan aktivitas yang terjadi secara paralel.

                                                    

 

 

 

 

 

 

 

2.2.5.4 Class Diagram

Menurut Whitten dan Bentley (2007, p382), class diagram

menggambarkan struktur dari sistem. Serta menampilkan class object

Gambar 2.16 Contoh Activity Diagram

Page 41: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

47  

yang berada di dalam sistem serta hubungan antara objek tersebut dan

objek lainnya.

 

 

        Gambar 2.17 Contoh Class Diagram 

Adapun notasi-notasi yang digunakan dalam class diagram yaitu :

o Kelas

Kelas menggambarkan sekumpulan objek yang memiliki atribut dan

operasi yang dikerjakan oleh objek tersebut.

o Agregasi

Agregasi menggambarkan hubungan antara dua atau lebih objek,

dimana salah satu objek merupakan bagian dari objek lain.

o Atribut

Page 42: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

48  

Atribut merupakan properti dari kelas yang berisi tipe data yang

dimiliki oleh instance dari suatu kelas.

o Operation

Operation merupakan kegiatan-kegiatan yang dilakukan oleh suatu

kelas.

o Asosiasi

Asosiasi menggambarkan relasi antar objek/instance dari kelas. Pada

umumnya asosiasi digambarkan sebagai garis antara 2 kelas dimana

pada salah satu ujung diletakkan tanda panah yang merupakan

navigasi.

2.2.5.5 Sequence Diagram

Menurut Whitten dan Bentley (2007, p382), sequence diagram

menggambarkan bagaimana objek berinteraksi dengan objek lainnya

melalui pesan dalam suatu eksekusi dari sebuah use case atau sebuah

operasi. Sequence diagram juga mengilustrasikan bagaimana suatu pesan

dikirim dan diterima oleh objek dan terjadi di dalam suatu sequence.

Page 43: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

49  

Gambar 2.18 Contoh Sequence Diagram

Beberapa notasi yang terdapat pada sequence diagram pada gambar

2.15 di atas yaitu :

1. Actor

Actor direpresentasikan dengan symbol seperti actor pada use case.

Terkadang actor direpresentasikan dengan sebuah kotak seperti

classes dengan notasi <<actor>

2. Interface Class

Pada gambar di atas, interface class ditandai dengan sebuah kotak

bertandakan <<interface>>. Hal ini untuk menghilangkan keraguan

pada jenis class pada gambar di atas.

3. Controller Class

Setiap use case akan memiliki satu atau lebih controller class yang

digambarkan dengan notasi yang sama dengan class interface dan

ditandai dengan <<controller>>

4. Entitiy Class

Page 44: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

50  

Ditandai dengan penambahan kotak untuk masing-masing entitas

yang akan berkolaborasi dalam sequence diagram

5. Messages

Ditandai dengan bentuk panah secara horizontal untuk menunjukkan

pesan yang ditujukan kepada class

6. Activation bars

Activitation Bar diletakkan di atas lifeline untuk mengindikasikan

jangka waktu keberadaan dari masing-masing instansi objek tersebut

7. Return Messages

Ditandai dengan arah panah dengan garis putus-putus secara

horizontal.

8. Self call

Self call menunjukkan bahwa objek tersebut memanggil method pada

dirinya sendiri.

9. Frame

Frame digunakan untuk mengindikasikan bahwa controller perlu

untuk melakukan pengulangan

2.2.6 Proses Model

Menurut Bentley dan Whitten (2007, p316) Proses modeling adalah pusat

proses teknik yang dipopulerkan oleh analisis struktural dan metodologi desain

yang menggunakan model dari bussines procces requirement untuk memperoleh

software design yang efektif bagi perancangan sistem.

Page 45: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

51  

2.2.6.1 Entity Relationship Diagram

Menurut Bentley dan Whitten (2007, p271), Entity relationship

diagram (ERD) adalah sebuah model data yang memanfaatkan beberapa

notasi untuk menggambarkan data dalam hal entitas dan hubungan yang

digambarkan oleh data.

Komponen-komponen dari ERD yaitu :

o Entitas

Entitas adalah suatu class dari orang, tempat, objek, kejadian,

maupun konsep yang kita butuhkan untuk menangkap dan

menyimpan data (Whitten, 2007, p271).

o Attribute

Attribute adalah sebuah properti deskriptif atau karakteristik dari

sebuah properti (Whitten, 2007, p272).

o Relationship

Relationship adalah sebuah hubungan atau asosiasi bisnis yang

berlangsung secara alami antara satu entitas dengan entitas

lainnya (Whitten, 2007, p275).

o Identification atau Key

Key adalah suatu atribut, atau kumpulan dari suatu atribut dimana

masing-masing entitas memiliki nilai yang unik (Whitten, 2007,

p273).

Page 46: BAB 2 LANDASAN TEORI - library.binus.ac.idlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2012-1-00142-IF Bab 2.pdf2.1 Teori-teori dasar/umum Pada bagian ini dikemukakan teori-teori dasar

52  

o Kardinalitas

Kardinalitas adalah jumlah minimum maupun maksimum

banyaknya kejadian dari suatu entitas dapat berhubungan dengan

entitas lainnya (Whitten, 2007, p275).

Gambar 2.19 Contoh Erd