bab 2 landasan teori - library.binus.ac.idlibrary.binus.ac.id/ecolls/ethesisdoc/bab2/2012-1-00142-if...
TRANSCRIPT
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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
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).
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 :
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.
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:
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.
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
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.
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.
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).
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.
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:
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.
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
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.
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.
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
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.
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
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.
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.
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.
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
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
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.
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
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.
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
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
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
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.
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
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.
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).
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