• Tidak ada hasil yang ditemukan

Aplikasi Place Manager Menggunakan Framework Behavior Driven Development.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Aplikasi Place Manager Menggunakan Framework Behavior Driven Development."

Copied!
18
0
0

Teks penuh

(1)

ABSTRAK

Penelitian ini mencoba untuk membangun suatu sistem penyimpanan tempat berbasis web memanfaatkan metode Behavior Driven Development.

Setiap pengguna dapat menambahkan tempat, memungkinkan pengguna untuk menyimpan tempat-tempat yang telah dikunjungi, bisa menjadi tempat favorit dan tempat-tempat tersebut bisa dibuka kembali untuk kemudian dibagikan kepada orang lain yang dikehendaki. Metode yang digunakan adalah menggunakan metode behavior driven development, yang berfokus pada memperoleh pemahaman yang jelas tentang perilaku perangkat lunak yang diinginkan melalui diskusi dengan para pemangku kepentingan. Hasil implementasi menunjukkan, lokasi tempat berhasil di simpan dan bisa dibuka kembali untuk kemudian bisa dibagi ke sesama pengguna aplikasi yang diinginkan. Setelah dilakukan revisi, modul hasil pengembangan layak digunakan oleh pengguna.

(2)

ABSTRACT

This research attempts to build a web-based place manager system utilizing Behavior Driven Development method.

Each user can add places, allowing the user to save the places you have visited, can be your favorite places and these places can be re-opened and distributed to other people desired. The method used is a behavior driven development method, which focuses on gaining a clear understanding of desired software behavior through discussion with stakeholders. Implementation results show, the location of places and can be successfully stored for later reopened fellow users can be divided into the desired application. After the revision, the results of the development of the module fit for use by the user.

(3)

DAFTAR ISI

BAB I PENDAHULUAN ... 15

1.1. Latar Belakang ... 15

1.2. Rumusan Masalah... 16

1.3. Tujuan ... 16

1.4. Batasan Masalah ... 17

1.5. Sumber Data ... 18

1.6. Sistematika Pembahasan... 18

BAB II LANDASAN TEORI ... 20

2.1. Benchmark Aplikasi ... 20

2.2. Behavior-Driven Development ... 21

2.2.2. Story ... 25

2.2.3. Scenarios ... 26

2.3. Test-Driven Development (TDD) ... 27

2.4. HTML5 ... 28

2.5. Cascading Style Sheets (CSS) ... 29

2.6. Javascript ... 31

2.7. jQuery ... 33

2.8. JSON ... 33

(4)

2.10. Open Authorization (OAuth) ... 36

BAB III ANALISIS DAN DESAIN ... 38

3.1. Analisis ... 38

3.2. Analisis Pembanding ... 38

3.3. Gambaran Keseluruhan ... 39

3.3.1. Persyaratan Antarmuka Eksternal ... 39

3.3.2. Antarmuka Dengan Pengguna ... 39

3.3.3. Antarmuka Perangkat Keras ... 40

3.3.4. Antarmuka Perangkat Lunak ... 40

3.3.5. Antarmuka Komunikasi ... 41

3.3.6. Fitur-fitur Perangkat Lunak ... 41

3.4. Desain Perangkat Lunak ... 49

3.4.1. Pemodelan Perangkat Lunak ... 49

3.4.2. Desain Penyimpanan Data ... 61

3.4.3. Desain Antarmuka ... 62

BAB IV PENGEMBANGAN PERANGKAT LUNAK ... 72

4.1. Implementasi Antarmuka ... 72

4.1.1. Login ... 72

4.1.2. Melihat halaman daftar tempat ... 73

4.1.3. Melihat halaman detil tempat ... 73

4.1.4. Menghapus tempat ... 74

4.1.5. Merubah tempat ... 75

4.1.6. Berbagi lokasi tempat ... 76

4.1.7. Tambah tempat ... 77

4.1.8. Menampilkan semua daftar tempat ... 78

4.1.9. Menampilkan tempat berdasarkan tempat yang dibuat sendiri ... 79

4.1.10.Menampilkan tempat berdasarkan tempat dari member lain ... 79

4.1.11.Menampilkan peta ... 80

(5)

4.2. Implementasi Top Down ... 81

BAB V TESTING DAN EVALUASI SISTEM ... 84

5.1. Rencana Pengujian ... 84

5.1.1. Pengujian Terhadap Perangkat Lunak ... 84

5.2. Pelaksanaan Pengujian ... 84

5.2.1. Pengujian Terhadap Perangkat Lunak ... 84

5.3. Ulasan Hasil Evaluasi ... 98

BAB VI KESIMPULAN DAN SARAN... 100

6.1. Kesimpulan ... 100

6.2. Saran ... 100

DAFTAR PUSTAKA ... 102

(6)

DAFTAR GAMBAR

Gambar II.1 Aplikasi My Place (Polyvisual) ... 20

Gambar II.2 Aplikasi My Place (Nicolas Maynard) ... 21

Gambar II.3 Siklus BDD (Chelimsky, Astels, Dennis, Helmkamp, & North, 2010) ... 24

Gambar II.4 Diagram Spesifikasi Perangkat Lunak dalam BDD ... 26

Gambar III.1 Halaman view place list ... 62

Gambar III.2 Halaman login ... 63

Gambar III.3 Halaman edit place ... 64

Gambar III.4 Halaman delete place ... 65

Gambar III.5 Halaman konfirmasi delete... 65

Gambar III.6 Halaman logout ... 66

Gambar III.7 Halaman konfirmasi logout ... 66

Gambar III.8 Halaman add place ... 67

Gambar III.9 Halaman view place detail ... 67

Gambar III.10 Halaman view map ... 68

Gambar III.11 Halaman google map ... 68

Gambar III.12 Halaman share place... 69

Gambar III.13 Halaman konfirmasi share place ... 69

Gambar III.14 Halaman unshared ... 70

Gambar III.15 Halaman konfirmasi unshared ... 70

Gambar III.16 Halaman search ... 71

Gambar IV.1 Login ... 73

Gambar IV.2 View Place list ... 73

Gambar IV.3 View details place ... 74

Gambar IV.4 Delete place ... 75

Gambar IV.5 Edit place... 76

Gambar IV.6 Share place ... 77

Gambar IV.7 Add place ... 78

Gambar IV.8 View all place... 78

(7)
(8)

DAFTAR TABEL

(9)

DAFTAR PROGRAM

Program II.1 Contoh kode CSS ... 30

Program II.2 Koneksi pindah halaman... 33

Program II.3 Contoh objek JSON ... 35

Program II.4 Contoh objek kompleks JSON... 35

Program IV.1 Koneksi API read place ... 82

Program IV.2 Koneksi API create place ... 82

Program IV.3 Koneksi API update place ... 82

Program IV.4 Koneksi API delete place ... 82

Program IV.5 Koneksi API share place ... 83

Program IV.6 Koneksi API unshare place ... 83

Program V.1 create place ... 85

Program V.2 create place with invalid apiKey ... 85

Program V.3 create place with empty apiKey ... 86

Program V.4 create place with empty name ... 86

Program V.5 create place with empty latitude ... 87

Program V.6 create place with empty longitude ... 87

Program V.7 find place ... 88

Program V.8 find place with invalid api key ... 89

Program V.9 find place with empty api key ... 89

Program V.10 find place with invalid id ... 90

Program V.11 update place ... 91

Program V.12 update place with invalid api key ... 91

Program V.13 update place with empty api key ... 92

Program V.14 update place with empty name ... 93

Program V.15 read place ... 93

Program V.16 read place with invalid api key ... 94

Program V.17 read place with empty api key ... 95

Program V.18 delete place ... 96

Program V.19 delete place with invalid api key ... 97

Program V.20 delete place with empty api key ... 97

(10)

DAFTAR ISTILAH

API : Application Programming Interface BDD : Behavior-Driven Development

Deliverable : Sesuatu yang dapat diberikan sebagai produk dari pengembangan

JSON : Javascript Object Notation TDD : Test-Driven Development Massif : besar-besaran, massal OAuth : Open Authorization

Protocol : Aturan yang menentukan format dan transmisi data

Refactor : Meningkatkan desain dari kode tanpa merubah sifat kode tersebut

(behavior)

Stakeholders : pihak yang peduli terhadap proyek perangkat lunak yang sedang

(11)

BAB I

PENDAHULUAN

1.1. Latar Belakang

Dengan perkembangan yang massif dari internet beberapa dekade ini banyak memberikan kontribusi yang besar untuk kemudahan dalam bekerja, baik untuk individu maupun sebuah tim. Layanan berbasis lokasi atau location-based

service dapat dideskripsikan sebagai aplikasi yang memanfaatkan pengetahuan

mengenai informasi posisi mobile device (pengguna). Contohnya informasi lokasi dapat digunakan untuk menyediakan rute optimal menuju tempat tujuan, menghindari kemacetan dengan melihat informasi kemacetan di peta atau digunakan untuk people tracking yaitu mengetahui posisi seseorang disuatu tempat yang asing (Schiller, 2004).

Agar dapat mengetahui lokasi dari orang lain, pengguna dapat menggunakan beberapa aplikasi jejaring sosial berbasis lokasi yang telah tersedia. Namun ada kalanya seseorang juga ingin menjaga privasinya tetapi tetap ingin membagi lokasinya pada orang-orang tertentu untuk membantunya. Contohnya saat seseorang tersesat, tidak tahu berada dimana dan ingin orang yang dikenal menjemputnya, tetapi untuk keamanannya, lokasi hanya bisa diketahui oleh orang yang dikenal bukan ke semua orang. Selain itu, beberapa aplikasi jejaring sosial berbasis lokasi yang ada, tidak menjamin keakuratan informasi tentang lokasi tempat check-in. Belum ada yang menawarkan fitur save lokasi tempat yang berhasil di add getting location dalam bentuk list, untuk kemudian dibuka lagi dan bisa di share ke member lain mengenai lokasi keberadaan tempat tersebut dan penjelasan mengenai tempat tersebut.

(12)

tempat dan berkolaborasi untuk member yang tidak harus bertemu dalam satu tempat atau ruangan.

Ada beberapa aplikasi yang bisa dimanfaatkan, namun pada umumnya aplikasi-aplikasi tersebut menyediakan informasi yang terbuka secara umum, sedangkan terkadang pengguna tidak ingin diketahui lokasinya oleh sembarang orang, tetapi tetap ingin membagi informasi tentang lokasinya karena sesuatu hal. Pada aplikasi Google Latitude, jika fokusnya adalah pencarian lokasi seseorang, aplikasi ini tidak dapat membantu menemukan lokasi seseorang pada saat itu juga. Yang bisa dicari adalah lokasi-lokasi umum yang terdapat di database saja. Selain itu kelemahan Google Latitude berada pada privasi lokasinya, dimana jika pengguna aplikasi merahasiakan lokasinya melalui pengaturan dalam aplikasinya, maka siapapun tidak akan bisa melihat lokasinya, termasuk temannya.

1.2. Rumusan Masalah

Dengan latar belakang di atas dapat dirumuskan beberapa masalah, yaitu: 1) Bagaimana mengembangkan aplikasi Place Manager, dimana hasil

dari add getting location bisa disimpan dan bisa di share ke orang lain yang dikehendaki yang sudah teregistrasi di google account? 2) Bagaimana menerapkan Behavior Driven Development Framework

ke dalam proses pembuatan aplikasi?

3) Bagaimana menerapkan protokol google account authorization pada proses login?

1.3. Tujuan

Tujuan dari Tugas Akhir ini adalah:

1) Mengembangkan aplikasi Place Manager, dimana hasil dari add

getting location bisa disimpan dan bisa di share ke orang lain yang

dikehendaki yang sudah teregistrasi di google account

2) Menerapkan Behavior Driven Development Framework ke dalam proses pembuatan aplikasi

3) Menerapkan protokol google account authorization pada proses

(13)

1.4. Batasan Masalah

Adapun batasan-batasan masalah dalam penyelesaian Tugas Akhir ini adalah:

 Perangkat keras o Smartphone

o Tablet

o Processor intel dual core i5

 Perangkat lunak

o Aplikasi Place Manager dibangun menggunakan Web Server Java,

http POST, Web Client Side HTML5, CSS dan Javascript

o Komunikasi data untuk request dan response dari web service ke

client menggunakan format JSON

o Database engine yang digunakan sebagai media penyimpanan data

(local data storage) adalah HTML5 Web Storage

 Batasan Aplikasi

o Proses pemodelan perangkat lunak menggunakan Story dan

Scenario BDD

o Aplikasi Place Manager membantu menyampaikan informasi dengan menggunakan aplikasi client web berbasis HTML5,

Javascript dan JSON

o Pengambilan data lokasi tempat, menggunakan perangkat mobile

android.

o Penambahan lokasi baru hanya bisa dilakukan pada saat berada di lokasi

(14)

1.5. Sumber Data

Sumber data dalam pengerjaan proyek ini diambil berdasarkan referensi-referensi dari buku dan sumber lain yang berhubungan dengan sistem informasi dan pengembangan perangkat lunak, yaitu :

- Analisa Konsep Dasar Sistem

- Pengembangan Perangkat Lunak Menggunakan Behavior-Driven

Development (BDD) Framework

- Pemrograman Web Dengan HTML5 Dan JavaScript

Selain daripada sumber-sumber data yang telah disampaikan, juga dilakukan wawancara dengan pihak yang berwenang untuk mendapatkan data dan informasi yang berhubungan dengan permasalahan yang diteliti.

1.6. Sistematika Pembahasan

Dokumen ini menggambarkan persyaratan untuk aplikasi yang dibuat. Terangkum dalam enam bab, tiap bab akan memberikan penjelasan yang menyeluruh. Berikut adalah struktur dari laporan penelitan ini:

BAB I PENDAHULUAN

Bagian ini akan membahas permasalahan yang ada dalam penerapan metode pengembangan perangkat lunak secara tradisional. Permasalahan tersebut akan dipecahkan menggunaka metode Behavior-Driven Development. Bagian ini juga akan membahas mengenai batasan-batasan

dari penelitian.

BAB II LANDASAN TEORI

Bagian ini akan membahas teori-teori yang akan digunakan dalam penelitian, yaitu: metode Behavior-Driven Development, Netbeans,

HTML5, Jquery, JSON dan OAuth.

BAB III ANALISIS DAN DESAIN

(15)

Behavior-Driven Development sebagai metode pengembangan perangkat lunak.

Pada bagian ini juga akan dijelaskan mengenai perancangan perangkat lunak dengan menggunakan pemodelan menggunakan Stories dan

Scenarios BDD.

BAB IV PENGEMBANGAN PERANGKAT LUNAK

Bagian ini digunakan untuk menjelaskan perencanaan tahap implementasi, proses perkembangan implementasi proyek, penjelasan mengenai realisasi fungsionalitas dan User Interface Design yang sudah dibuat.

BAB V TESTING DAN EVALUASI SISTEM

Bab ini akan membahas rencana dan rancangan test pada sistem dengan menggunakan skenario-skenario yang dibuat. Pengujian akan dilakukan dengan teknik code by example metode BDD.

BAB VI KESIMPULAN DAN SARAN

(16)

BAB VI

KESIMPULAN DAN SARAN

Berdasarkan penelitian yang dilakukan, maka pada bagian ini akan disajikan saran dan simpulan tentang “Aplikasi Place Manager menggunakan framework behavior driven development”.

6.1. Kesimpulan

Simpulan yang didapat setelah melakukan perancangan dan implementasi pada perangkat lunak yang dibangun adalah sebagai berikut:

1) Dengan menggunakan metode Behavior-Driven Development tujuan untuk mengembangkan perangkat lunak yang sesuai dengan spesifikasi dan tujuan stakeholder bisa tercapai, hal ini disebabkan oleh pembuatan spesifikasi perangkat lunak (User Story dan Scenario) yang dapat dimengerti dengan jelas oleh pihak stakeholder.

2) Keuntungan lain dari metode Behavior-Driven Development ini adalah skenario-skenario yang dihasilkan dari spesifikasi perangkat lunak digunakan sebagai acuan untuk melakukan testing perangkat lunak tersebut.

3) Penggunaan sistem otentifikasi oAuth sangat berguna untuk meminta otorisasi user google untuk login

4) Tercapainya tujuan awal dari pengembangan untuk dapat berbagi lokasi ke sesame pengguna yang sudah teregistrasi google account

5) Aplikasi dapat menangani proses Create Place, Update Place dan Delete Place.

6) Tercapainya tujuan awal dari pengembangan modul pihak ketiga google Map yaitu menampilkan hasil penambahan tempat di peta google beserta navigasi ke tujuan.

6.2. Saran

(17)

1) Penambahan fitur kategori, diartikan tempat-tempat yang berhasil ditambahkan dapat dikelompokkan berdasarkan kategori tempatnya. 2) Kategori tempat disarankan dinamis dan bisa menyesuaikan dengan

kebutuhan pengguna.

3) Pemanfaatan keyword dalam pencarian lokasi yang lebih efektif dan efisien.

4) Desain aplikasi masih terlihat sederhana dan masih harus mendapatkan desain yang lebih baik.

(18)

DAFTAR PUSTAKA

(n.d.). Retrieved from http://www.json.org/json-id.html

Beck, K. (2003). Test-Driven Development by Example (12th ed.). Addison Wesley.

Chelimsky, D., Astels, D., Dennis, Z., Helmkamp, B., & North, D. (2010).

The RSpec Book: Behaviour-Driven Development with RSpec, Cucumber, and

Friends. Raleigh, North Carolina: The Pragmatic Programmers, LLC.

Edy Winarno, A. Z. (2011). Easy Web Programming With PHP Plus

HTML5. Jakarta: PT Elex Media Komputindo.

Foundation, T. j. (2014). Retrieved from http://jquery.com/

Gabriel, S. (2010). Beginning Google Maps API 3. United States of America: Apress.

Herman, D. (2013). Effective Javascript. Addison-Wesley.

Loa, R. (2011, May 30). Retrieved from

http://wwdq.blogspot.com/2011/05/apasih-pengertian-oauth-open.html

Meyer, E. A. (2006). Cascading Style Sheets: The Definitive Guide. CA: O'Reilly Media.

North, D. (t.thn.). Diambil kembali dari http://dannorth.net/introducing-bdd/

North, D. (2007, February 11). Retrieved from Dan North & Associates: http://dannorth.net/whats-in-a-story/

North, D. (2012). Introducing BDD. Retrieved from http://dannorth.net/introducing-bdd/

Referensi

Dokumen terkait

Sedangkan menurut Suryani, dkk (2015:2), Surat adalah secarik kertas atau lebih yang berisi percakapan (bahan komunikasi) yang disampaikan oleh seseorang kepada orang

Dari yield yang didapat maka dapat dihitung potensi selulosa TKKS dari total produksi kelapa sawit di Indonesia sebagai bahan baku bioplastik yang ramah lingkungan

Bergejolaknya kehidupan pada usia dewasa madya inilah yang menjadikan penulis ingin mengetahui lebih dalam bagaimana mereka memaknai kehidupan yang mereka miliki saat ini

Oleh karena itu cara pencampuran bahan yang benar sangat diperlukan dalam pembuatan ransum ternak baik pencampuran dengan cara tradisional yang menggunakan sekop maupun

Ungkapan dari de…nisi di atas bisa diganti dengan: “banyaknya cara men- empatkan n obyek yang berbeda ke dalam r posisi yang berbeda pula dengan pengulangan dibolehkan adalah n

An Urban Optioneering Platform is proposed that will enable stakeholders to fluidly build and explore computable multi-perspective models, consisting of loosely coupled legacy

Rasio Likuiditas merupakan ikhtisar analisis keuangan yang digunakan untuk menjelaskan kinerja perusahaan dalam mengelola aset lancar dan utang lancar Rasio Lancar

“ Seleksi Ketahanan Aksesi Jagung Terhadap Serangan Hama Penggerek Batang Jagung ( Ostrinia furnacalis Guenee) (Lepidoptera: Crambidae) ” yang diajukan untuk