Pembangunan Aplikasi Event Calender Pada Platform Android dengan dukungan Web Service

(1)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika

Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

EGI ADTYA PRATAMA PUTRA

10107385

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

BANDUNG


(2)

iii

KATA PENGANTAR

Assalamualaikum Wr Wb.

Puji syukur penulis panjatkan kepada Allah SWT yang telah memberikan rahmat dan karunianya, shalawat serta salam semoga tercurah kepada Rasulullah SAW, sehingga penulis dapat menyelesaikan Skripsi yang berjudul

PEMBANGUNAN APLIKASI EVENT CALENDARPADA PLATFORM ANDROID DENGAN DUKUNGAN WEB SERVICE”.

Adapun tujuan dari penyusunan skripsi ini adalah untuk memenuhi salah satu syarat dalam menyelesaikan studi jenjang strata satu (S1) di Program Studi Teknik Informatika, Universitas Komputer Indonesia.

Dengan keterbatasan ilmu dan pengetahuan yang dimiliki oleh penulis, maka penulis membutuhkan peran serta dari pihak lain dalam proses penyelesaian skripsi ini. Oleh karena itu ijinkanlah penulis untuk menyampaikan ucapan terima kasih yang sebesar-besarnya kepada :

1. Ayah, Ibu dan adik-adik tercinta yang telah memberikan kasih sayang, doa dan dorongan baik moril maupun materi yang tiada henti. Semoga suatu saat aku dapat membanggakan kalian.

2. Bapak Dr. Ir. Eddy Suryanto Soegoto, M.Sc., Selaku Rektor UNIKOM

3. Bapak Dr. Ir Arry Akhmad Arman, M.Sc., Selaku Dekan Fakultas Teknik dan Ilmu Komputer UNIKOM


(3)

iv

4. Ibu Mira Kania Sabariah, M.T., Selaku Ketua Jurusan Program Studi Teknik Informatika UNIKOM.

5. Bapak Agung Wahana, M.T., Selaku dosen pembimbing. Terima kasih karena telah banyak meluangkan waktu untuk memberikan bimbingan, saran dan nasehatnya selama penyusunan skripsi ini. 6. Bapak Eko Budi Setiawan S.Kom, selaku dosenwali kelas IF-9

Angkatan 2007.

7. Dian Haerani yang telah memberikan doa dan motivasi yang tiada henti semoga dua atau tiga tahun lagi impian kita bisa tercapai. 8. Robbi Sakhi Sawab dan Deris Febian , berkat kalian saya tidak jadi

cuti.

9. Teman-teman di Jurusan Teknik Informatika angkatan 2007 khususnya kelas IF-9 terima kasih atas bantuan dan doronganya. 10.Serta semua pihak yang telah turut membantu dalam penyusunan

skripsi ini, yang tidak bisa di sebutkan semuanya satu persatu. Didalam penulisan skripsi ini, penulis telah berusaha semaksimal mungkin, walaupun demikian penulis menyadari bahwa skripsi ini jauh dari sempurna. Untuk itu penulis akan selalu menerima segala masukkan yang ditujukan untuk menyempurnakan skripsi ini. Akhir kata, penulis berharap semoga skripsi ini dapat bermanfaat bagi penulis pada khususnya dan pembaca pada umumnya.


(4)

i

ABSTRAK

PEMBANGUNAN APLIKASI EVENT CALENDAR PADA

PLATFORM ANDROID DENGAN DUKUNGAN

WEB SERVICE

Oleh

EGI ADTYA PRATAMA PUTRA

10107385

Saat ini alat-alat telekomunikasi yang ada di indonesia sudah memiliki banyak fasilitas yang mempermudah penggunanya, salah satunya yaitu fasilitas untuk mengakses internet secara real time. Salah satu contoh alat telekomunikasi yang sangat pesat perkembangannya saat ini adalah alat telekomunikasi berbasis android.Android itu sendiri adalah suatu sistem operasi untuk perangkat mobile

yang berbasis Linux, dikembangkan oleh Google bersama perusahaan-perusahaan lain yang tergabung ke dalam Open Handset Alliance.Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri yang dapat digunakan oleh bermacam-macam perangkat mobile.Dengan memanfaatkan web service, sebuah aplikasi android pun dapat mengakses

database MySQL yang secara default tidak didukung oleh android.Memang secara default android di dukung oleh database yaitu SQLite, namun SQLite kurang untuk menangani data yang besar dan sulit untuk melakukan pembaharuan data secara real time.Namun dengan memanfaatkan web service pembaharuan data bisa dilakukan secara real time.Aplikasi android yang akan dibuat yaitu aplikasi event calendar. Mengapa event calendar, karena masih banyak event organizer yang masih mengumumkan event secara manual, baik pengumuman yang ditempel di tempat tertentu atau dengan menyewa space iklan yang memakan biaya cukup mahal.

Untuk metodologi penelitian perangkat lunak menggunakan metode waterfall, sedangkan untuk pemodelan datanya menggunakan metode berorientasi objek yaitu Unified Modeling Language (UML) untuk menggambarkan model dari analisis dan design sistem yang dibuat.

Diharapkan dengan adanya aplikasi event calendarini dapat membantu masyarkat untuk mendapatkan informasi tentang event-event yangyang akan diselenggarakan di kota Bandung secara up to date.


(5)

ii

ABSTRACT

DEVELOPMENT APPLICATION EVENTS CALENDAR ON

ANDROID PLATFORM WITH WEB SERVICES SUPPORT

by

EGI ADTYA PRATAMA PUTRA

10107385

Currently telecommunications devices that exist in Indonesia already has many facilities that facilitate users, one of which is the facility to access the Internet in real time. One example of a very rapid telecommunications development today is the android-based telecommunications equipment. Android itself is an operating system for mobile devices based on Linux, developed by Google and other companies are incorporated into the Open Handset Alliance. Android provides an open platform for developers to create their own applications that can be used by a variety of mobile devices. By utilizing the web service, an android application can access the MySQL database by default is not supported by the android. Indeed, by default android is supported by the SQLite database, but SQLite is less to handle large data and difficult to perform data updates in real time. However, by utilizing web service data updates can be done in real time. Android applications to be made that the application event calendar. Why the event calendar, because there are many event organizers are still announcing the event manually, both announcements are posted in a particular place or by renting advertising space that cost is quite expensive.

For the research methodology of software using waterfall method, whereas for data modeling using object-oriented method is the Unified Modeling Language (UML) to describe the model of analysis and system design are made.

Hopefully with this event calendar application can help the community to get information about events that are to be held in the city of Bandung is up to date.


(6)

1

1.1 Latar Belakang

Secara sederhana teknologi informasi dapat dikatakan sebagai ilmu yang diperlukan untuk mengolah informasi, agar informasi tersebut dapat dicari dengan mudah dan akurat.Isi dari ilmu tersebut berupa teknik – teknik atau prosedur untuk menyampaikan informasi secara efisien dan efektif.

Di era informasi ini, kebutuhan masyarakat terhadap komunikasi menjadi semakin besar. Mobilitas masyarakat yang tinggi membutuhkan support dari teknologi informasi. Perkembangan teknologi embedded device memungkinkan kebutuhan akan informasi tadi terpenuhi. Semakin kayanya fitur dan semakin terjangkaunya harga jual produk embedded device, memungkinkan embedded device menjadi sebuah solusi yang tepat bagi kebutuhan komunikasi masyarakat.

Saat ini alat-alat telekomunikasi yang ada di indonesia sudah memiliki banyak fasilitas yang mempermudah penggunanya, salah satunya yaitu fasilitas untuk mengakses internet secara real time, maka kemungkinan seorang pengguna alat telekomunikasi untuk melakukan Surfing di dunia maya semakin besar.Salah satu contoh alat telekomunikasi yang sangat pesat perkembangannya saat ini adalah alat telekomunikasi yang menggunakan android. Android itu sendiri adalah suatu sistem operasi untuk perangkat mobile yang berbasis Linux, dikembangkan


(7)

oleh Google bersama perusahaan-perusahaan lain yang tergabung ke dalam Open Handset Alliance.Android menyediakan platform terbuka bagi para pengembang untuk menciptakan aplikasi mereka sendiri yang dapat digunakan oleh bermacam-macam perangkat mobile.

Pada umumnya sebuah aplikasi memerlukan driver database agar bisa melakukan koneksi ke sebuah database.Web service dapat dijadikan sebagai jembatan penghumbung antara aplikasi dengan database. Jadi, dengan memanfaatkan web service sebuah aplikasi tidak lagi memerlukan driver database

dan tidak perlu mengetahui database apa yang digunakan oleh server serta bagaimana struktur database tersebut. Aplikasi yang ingin mengakses cukup mengetahui method atau fungsi apa saja yang disediakan oleh web service.

Dengan memanfaatkan web service, sebuah aplikasi android pun dapat mengakses database MySQL yang secara default tidak didukung oleh android.Memang secara default android di dukung oleh database yaitu SQLite, namun SQLite kurang untuk menangani data yang besar dan sulit untuk melakukan pembaharuan data secara real time.Namun dengan memanfaatkan web service pembaharuan data bisa dilakukan secara real time.

Berdasarkan penjelasan diatas maka pada skripsi ini akan mengimplementasikan penggunaan web service dengan aplikasi android. Aplikasi android yang akan dibuat yaitu aplikasi event calendar. Mengapa event calendar, karena masih banyak event organizer yang masih mengumumkan event secara manual, baik pengumuman yang ditempel di tempat tertentu atau dengan menyewa space iklan yang memakan biaya cukup mahal. Hal ini belum tentu


(8)

banyak orang mengetahui pengumuman tersebut. Oleh sebab itu aplikasi ini bisa menjadi sebuah solusi untuk permasalahan tersebut. Dinas Pariwisata Kota Bandung adalah pengelola event-event yang akan di laksanakan di kota Bandung, maka dari itu penelitian akan dilakukan pada Dinas Pariwisata Kota Bandung guna mendapatkan informasi event-event apa saja yang ada di Bandung.

1.2 Identifikasi Masalah

Berdasarkan latar belakang yang disebutkan diatas, permasalahan yang dirumuskan adalah bagaimana membangun aplikasi event calendar pada platform android dengan memanfaatkan web service untuk menginformasikan event di Kota Bandung.

1.3 Maksud dan Tujuan

Maksud membangun aplikasi event calendar dengan dukungan web service

ini adalah untuk mempelajari dan mengimplementasikan web service serta membuat aplikasi event calendar pada platform android sebagai media penyebarluasan informasi mengenai event di Kota Bandung. Adapun tujuan yang akan dicapai dari skripsi ini adalah :

1. Membangun web service menggunakan standar SOAP. 2. Membangun aplikasi event calendar pada platform android. 3. Mengimplementasikan penggunaan web service dengan android. 4. Memperluas informasi tentang eventdi Kota Bandung.


(9)

1.4 Batasan Masalah

Agar dalam penulisan ini tidak menyimpang dari permasalahan dan sasaran yang akan dicapai, maka ada batasan pada masalah yang dibahas. Batasan masalah yang ditetapkan dalam skripsi ini adalah:

1. Aspek keamanan aplikasi dan web service tidak ditangani. 2. Web service yang didukung hanya standar SOAP saja.

3. Model analisis sistem adalah pemodelan berorientasi objek dan peralatanyang digunakan adalah UML (Unified Modeling Language) versi 2.

4. Sistem akan dibangun menggunakan bahasa pemrograman Java, Android, dan PHP.

5. Aplikasi pada android akan berjalan jika terkoneksi internet.

1.5 Metodologi Penelitian 1.5.1 Pengumpulan data

Metodologi Penelitian yang digunakan dalam pengumpulan data yang berkaitan dengan penyusunan skripsi dan pembuatan sistem pencarian ini adalah sebagai berikut.

1. Studi kepustakaan.

Tahap ini digunakan untuk mencari informasi yang berhubungan dengan permasalahan yang akan dibahas dengan bersumber pada buku-buku serta bacaan lain yang kiranya dapat mebantu menyelesaikan pembangunan aplikasi.


(10)

2. Studi dokumentasi.

Dengan mengumpulkan informasi mengenai data yang diperlukan agar lebih mudah untuk didefinisikan dan dirumuskan pada permasalahan yang ada.

1.5.2 Pembangunan Perangkat Lunak

Pembangunan sistem pencarian ini menggunakan metodologi Waterfall

dengan gambar 1.1 sebagai berikut

1. Rekayasa Sistem

Tahapan ini merupakan kegianan pengumpulan data sebagai pendukung pembangunan sistem serta menentukan ke arah mana aplikasi ini akan dibangun.


(11)

2. Analisis Sistem

Mengumpulkan kebutuhan secara lengkap kemudian dianalisis dan didefinisikan kebutuhan yang harus dipenuhi oleh aplikasi yang akan dibangun.

3. Perancangan Sistem

Perancangan antarmuka dari hasil analisis kebutuhan yang telah selesai dikumpulkan secara lengkap.

4. Pengkodenan Sistem

Hasil perancangan sisten diterjemahkan ke dalam kode-kode dengan menggunakan bahasa pemrograman yang telah ditentukan,

5. Pengujian Sistem

Penyatuan unit-unit program kemudian diuji secara keseluruhan. 6. Pemeliharaan Sistem

Mengoperasikan sistem dilingkungannya dan melakukan pemeliharaan, seperti penyesuaian atau perubahan karena adaptasi dengan situasi yang sebenarnya.

1.5.3 Sistematika Penulisan

Adapun sistematika yang akan dilakukan dalam penyusunan skripsi ini dibagi menjadi lima bab, yaitu sebagai berikut :

BAB I PENDAHULUAN

Bab ini menguraikan mengenai latar belakang masalah, rumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.


(12)

BAB II LANDASAN TEORI

Bab ini membahas berbagai konsep dan dasar-dasar teori yang menunjang dalam kaitan dengan topik aplikasi event calendar menggunakan web service dan android.

BAB III ANALISIS DAN PERANCANGAN

Bab ini berisi tentang analisis deskripsi sistem, analisis perancangan fungsional, analisis kebutuhan non fungsional dan perancangan antarmuka dari perangkat lunak yang akan dibangun.

BAB IV IMPLEMENTASI DAN PENGUJIAN

Bab ini membahas implementasi antarmuka perangkat lunak, implementasi perangkat keras dan perangkat lunak, pengujian perangkat lunak (secara subjektif dan alpha) beserta kesimpulan dari hasil pengujian perangkat lunak yang dibangun.

BAB V KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dan saran yang merupakan jawaban yang melatar belakangi masalah pada bab 1, dan saran yang nantinya akan berguna bagi pengembang perangkat lunak ini ke depannya.


(13)

8

2.1 Web service

Web service adalah salah satu bentuk sistem perangkat lunak yang didesain untuk mendukung interaksi mesin-ke-mesin melalui jaringan.Web servicememiliki interface yang dideskripsikan dalam format yang dapat dibaca oleh mesin. Sistem-sistem lainnya berinteraksi dengan web servicemenggunakan pesan SOAP yang umumnya dikirim melalui HTTP dalam bentuk XML.[5]

Definisi diatas diberikan oleh World Wide Web Consortium(W3C) yang merupakan badan yang menciptakan dan mengembangkan standar web service.

Tetapi secara umum, web service tidak terbatas hanya pada standar SOAP saja. Salah satu pustaka yang mengulas lengkap tentang web servicemenyebutkan definisi yang lebih umum: web serviceadalah aplikasi yang diakses melalui

internet menggunakan protokol standar internet dan menggunakan XML sebagai format pesannya.


(14)

2.1.1 Arsitektur Web service

Secara umum, arsitektur web service dapat dilihat pada gambar 2.1

Pada gambar diatas, ada tiga komponen yang membuat web serviceberjalan. Ketiga komponen itu adalah:

1. Service provider, merupakan pemilik Web service yang berfungsi menyediakan kumpulan operasi dari Web service.

2. Service requestor, merupakan aplikasi yang bertindak sebagai klien dari

Web service yang mencari dan memulai interaksi terhadap layanan yang disediakan.

3. Service registry, merupakan tempat dimana Service provider mempublikasikan layanannya. Pada arsitektur Web service, Service


(15)

registry bersifat optional. Teknologi web service memungkinkan kita dapat menghubungkan berbagai jenis software yang memiliki platform dan sistem operasi yang berbeda.

2.1.2 Jenis-Jenis Web service

Jenis web service dapat dibagi menjadi dua, yaitu REST dan SOAP.

2.1.2.1 Representational State Transfer (REST)

REST adalah salah satu jenis web service yang menerapkan konsep perpindahan antar state. State disini dapat digambarkan seperti jika browser

meminta suatu halaman web, maka serverakan mengirimkan state halaman web

yang sekarang ke browser. Bernavigasi melalui link-link yang disediakan sama halnya dengan mengganti state dari halaman web. Begitu pula REST bekerja, dengan bernavigasi melalui link-link HTTP untuk melakukan aktivitas tertentu, seakan-akan terjadi perpindahan state satu sama lain. Perintah HTTP yang bisa digunakan adalah fungsi GET, POST, PUT atau DELETE. Balasan yang dikirimkan adalah dalam bentuk XML sederhana tanpa ada protokol pemaketan data, sehingga informasi yang diterima lebih mudah dibaca dan diparsing disisi

client.

Dalam pengaplikasiannya, REST lebih banyak digunakan untuk web serviceyang berorientasi pada resource. Maksud orientasi pada resource adalah orientasi yang menyediakan resource-resource sebagai layanannya dan bukan kumpulan-kumpulan dari aktifitas yang mengolah resource itu.Alasan mengapa REST tidak digunakan dalam skripsi ini karena orientasi pada resourcenya itu,


(16)

sedangkan aplikasi event calendar membutuhkan pemanggilan metode yang bisa dikerjakan terhadap kumpulan resource event. Selain itu, karena standarnya yang kurang sehingga tidak begitu cocok diterapkan dalam aplikasi yang membutuhkan kerjasama antar aplikasi lain, dimana standar yang baik akan sangat berguna karena berbicara dalam satu bahasa yang sama. Beberapa contoh web service yang menggunakan REST adalah: Flickr API(Application ProgramInterface), YouTube API, Amazon API.

2.1.2.2 Simple Object Access Protokol (SOAP)

SOAP adalah protokol untuk saling bertukar pesan dalam format XML antar komputer di dalam jaringan, biasanya menggunakan HTTP/HTTPS [6]. Web servicedalam skripsi ini menggunakan SOAP sebagai protokol pengiriman pesannya. Dalam menjalankan tugasnya, SOAP menggunakan struktur XML tertentu dalam pengirimkan request kepada web service. Penerimaan respon dari

web servicepun memiliki strukturnya sendiri. Agar lebih mudah dalam memahami SOAP, di bawah ini diberikan salah satu contoh struktur dari SOAP request:

\

<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:ExampleAPI"> <SOAP-ENV:Body> <ns1:getPeopleByFirstLastName> <first>j*</first> <last>*</last> </ns1:getPeopleByFirstLastName> </SOAP-ENV:Body></SOAP-ENV:Envelope>


(17)

Struktur ini terdiri dari dua bagian, Envelope dan Body. Envelope berisi keterangan-keterangan tentang namespace yang digunakan dalam dokumen XML ini, dan juga dapat berisi atribut dan header.Sedangkan Body berisi pesan yang akan dikirimkan ke web service. Dalam contoh diatas, Body berisi permintaan akan operasi getPeopleByFirstLastName yang disediakan suatu web servicedengan parameter yang dikirimkan berupa nama depan dengan huruf pertama j dan nama belakang apa saja. Sedangkan contoh SOAP response yang didapat dari serverdiberikan dalam contoh dibawah :

<?xml version="1.0" encoding="UTF-8"?> <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body> <result> <SOAP-ENC:Struct> <id>1</id> <firstName>John</firstName> <lastName>Smith</lastName> </SOAP-ENC:Struct> <SOAP-ENC:Struct> <id>2</id> <firstName>Jane</firstName> <lastName>Doe</lastName> </SOAP-ENC:Struct> </result> </SOAP-ENV:Body> </SOAP-ENV:Envelope>


(18)

Struktur SOAP response di atas juga sama dengan struktur SOAP request

yang diterangkan sebelumnya, tetapi bisa kita lihat disini, isi dari body memiliki

tag result yang berisi balasan atau output dari operasi web service yang dipanggil pada pesan SOAP request. Beda halnya dengan REST, SOAP web service lebih menekankan pada web service yang berorientasi service. Ketimbang mengambil

resource-resource seperti dalam REST, SOAP lebih ke arah pemanggilan metode-metode yang memanipulasi resource-resource yang ada, dalam arti lain, melayani kebutuhan pengguna yang lebih beragam. Beberapa contoh SOAP web serviceadalah Google API, Yahoo! API, dan aplikasi event calendar.

2.1.3 Web service Definition Language (WSDL)

SOAP dapat berjalan sendiri tanpa bantuan WSDL, tetapi hal ini akan menyulitkan pengembang di sisi client karena tidak tahu harus mengharapkan operasi dan bentuk data apa. Karena itu WSDL diciptakan sebagai pendefinisi sebuah web service.WSDL adalah tata bahasa XML yang digunakan untuk mendeskripsikan sebuah web service.WSDL adalah bahasa XML yang digunakan untuk menjabarkan bagaimana web servicediakses, operasi-operasi web service, bagaimana pesan disampaikan, dan struktur dari pesan tersebut [5]. Dalam tugas akhir ini, web service yang dibangun akan dijabarkan menggunakan WSDL. Struktur dari WSDL adalah sebagai berikut:


(19)

Struktur ini terdiri atas lima bagian, yaitu: 1. Types

Bagian types menjabarkan definisi tipe data yang digunakan dalam pertukaran pesan, tipe data disini dapat berupa tipe data sederhana ataupun tipe data yang kompleks.

2. Message

Bagian message berisi abstraksi parameter input dan output yang diharapkan dari pertukaran pesan. Parameter input dan output ini menggunakan tipe data yang dijabarkan di bagian types.

3. PortType

Bagian portType berisi koleksi dari abstraksi operasi-operasi web servicedan abstraksi pesan-pesan yang digunakan oleh tiap-tiap operasi.

</types> <message> </message> <portType> </portType> <binding> </binding> <service> </service> </definitions>


(20)

4. Binding

Bagian binding adalah bagian yang menjabarkan informasi mengenai protokol transpor yang digunakan dan format pesannya.

5. Service

Yang terakhir adalah bagian service, bagian ini yang mendeskripsikan nama dan lokasi dari suatu web service.

2.2 Android

Android merupakan suatu software stack untuk mobile device. Di dalamnya terdapat sistem operasi, middleware, dan key application.Aplikasi pada platform ini dikembangkan dalam bahasa pemrograman java. Android sendiri memiliki banyak fitur diantaranya adalah:

Merupakan sebuah Application Framework sehingga programmer dapat menggunakan beberapa fungsi yang telah disediakan.

Dalvik virtual machine. Tiap aplikasi dalam Android memiliki instance virtual machine yang dapat bekerja secara efisien dalam lingkungan memoriyang terbatas.

Integrated browser. Web browser berbasis WebKit engine terdapat pada browser default Android atau pun dapat diintegrasikan dengan aplikasi lain.

Optimized graphics. Library grafis 2D yang kaya dan 3D berbasis OpenGL ES 1.0 yang mendukung akselerasi hardware.


(21)

Media Support. Mendukung berbagai format audio, video, dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)

GSM Telephony. Mendukung fungsi komunikasi GSM.

Bluetooth,EDGE,3G dan WiFi. Mendukung komunikasi pada jaringan (tergantung hardware).

Kamera, GPS, kompas dan accelerometer. Mendukung berbagai fitur yang disediakan oleh hardware.

Tools Developer yang lengkap. Termasuk device emulator, tools untuk

debugging, profiling memori dan performa, plugin untuk Eclipse IDE.

2.2.1 Arsitektur Android

Android terdiri dari beberapa stack software yang terdiri dari:

Applications, Application Framework, Libraries, Android Runtime dan Kernel Linux. Arsitekturlengkap platform ini dapat dilihat pada Gambar 2.2.


(22)

2.2.1.1 Aplication

Application merupakan program yang langsung berhubungan dengan

user. Baik program yang merupakan bawaan dari Android sendiri maupun program yang dibuat oleh developer menggunakan bahasa pemrograman java. Contoh program bawaan dari platform Android sendiri adalah email client, program SMS, calendar, maps, web browser, contact dan sebagainya.

2.2.1.2 Aplication Framework

Lapisan ini berisi sekumpulan API yang dapat digunakan oleh

programmer maupun core application dari Android.Lapisan ini dirancang untuk memudahkan penggunaan komponen dari Android sendiri. Aplikasi manapun


(23)

dalam Android dapat berbagi fungsi sehingga aplikasi lain dapat memanfaatkannya.

Aplikasi pada Android disusun atas beberapa komponen:

Sekumpulan Views. Digunakan untuk mengatur tampilan pada aplikasi. Contohnya adalah lists, grids, text box, button, bahkan embeddable webbrowser.

Content providers. Komponen yang mengatur agar aplikasi dapat mengakses resources dari aplikasi lain (seperti Contacts), atau berbagi data dengan aplikasi lain.

Resource Manager. Menyediakan akses ke pada resource non-code seperti

localized string, grafik dan file layout.

Notification Manager. Memungkinkan agar suatu aplikasi dapat menampilkanperingatan yang dapat di kostumasi pada status bar.

Activity Manager. Mengatur siklus aplikasi dan navigasi antar aplikasi yang sedang berjalan.

2.2.1.3 Libraries

Android mendukung beberapa library C/C++ yang digunakan pada berbagai komponen Android. Kemampuan ini dapat diakses oleh developer

melalui Android application framework. Beberapa library diantaranya adalah:

System C library. Implementasi library C standar (libc).

Media Libraries. Mendukung berbagai format multimedia (termasuk MPEG4,H.264, MP3, AAC, AMR, JPG, PNG).


(24)

LibWebCore. Engine web browser modern. SGL. Engine grafis 2D.

3D Library. Implementasi OpenGL ES 1.0 yang mendukung akselerasi hardware.

FreeType. Rendering untuk bitmap dan vector font.

SQLite. Basis data relasional yang kecil namun sangat ampuh.

2.2.1.4 Android Runtime

Tiap aplikasi pada Android memiliki proses-nya masing-masing.Tiap aplikasi tersebut memiliki instans dari Dalvik virtual machine (VM). Dalvik

virtual machine dirancang agar suatu devicedapat menjalankan beberapa VM secara efisien. Dalvik VM mengeksekusi file dengan format Dalvik Executable format (.dex) yang dirancang untuk meminimalkan memory footprint . Dalvik VM berbasis register, dan dapat menjalankan kelas-kelas yang dikompilasi dengan bahasa pemrograman java dan ditransformasikan menjadi format .dex. Dalvik VM sendiri bergantung pada Kernel Linux untuk fungsi dasarnya, seperti threading

dan manajemen memori secara low-level.

2.2.1.5 Linux Kernel

Android menggunakan Kernel Linux versi 2.6 sebagai sistem utama. Fungsi kernel yang digunakan antara lain untuk keamanan, manajemen memori, manajemen proses, manajemen jaringan dan driver model. Kernel juga berfungsi sebagai layer abstrak antara hardware dan lapisan lainnya pada software stack.


(25)

2.2.2 Anatomi Aplikasi Android

Terdapat empat building blocks pada aplikasi Android yaitu:

Activity

Intent Receiver Service

Content Provider

Tidak semua aplikasi membutuhkan keempat blok ini, tetapi suatu aplikasi dibuat menggunakan kombinasi beberapa blok ini. Setelah memutuskan blok komponen yang akan digunakan, blok tersebut didaftarkan pada suatu file yang disebut dengan AndroidManifest.xml. File XML ini digunakan untuk menyatakan komponen apa saja yang dibutuhkan oleh sebuah aplikasi dan kemampuan serta kebutuhan aplikasi tersebut.

2.2.2.1 Activity

Activity paling umum diantara keempat building block.Activity biasanya suatu tampilan (screen) dalam suatu aplikasi. Tiap activity diimplementasikan sebagai satu kelas yang meng-extend base class Activity. Kelas yang dibuat akan menampilkan user interface yang terdiri dari beberapa views dan akan merespon suatu event. Kebanyakan, aplikasi terdiri dari beberapa screen. Contohnya aplikasi pengiriman pesan akan memiliki screen untuk mendaftarkan pesan yang masuk, menulis pesan dan screen lainnya untuk melakukan pengaturan. Tiap screen pada contoh ini akan diimplementasi sebagai suatu activity. Aplikasi dapat berpindah ke screen lain dengan cara memulai suatu activity baru. Pada suatu kasus tertentu,


(26)

activity untuk memilih foto akan mengembalikan foto yang dipilih pada activity

yang memanggilnya. Pada saat screen baru terbuka, screen sebelumnya akan dihentikan dan state nya akan disimpan pada history stack. User dapat melakukan navigasi ke activity sebelumnya melalui history tersebut.Screen akan di hapus dari

history stack apabila sistem memutuskan bahwa screen tersebut tidak layak untuk berada pada memori. Android menyimpan history stack untuk setiap aplikasi yang dijalankan dari tampilan awal (home screen).

2.2.2.2 Intent dan Intent Filter

Android menggunakan kelas khusus bernama intent untuk berpindah dari

screen ke screen lainnya. Sebuah intent mendeskripsikan apa yang ingin aplikasi penuhi. Bagian struktur data dari intent yang paling penting adalah action dan

data dari aksi yang dilakukan.Nilai action yang biasanya adalah MAIN, VIEW, PICK, EDIT dan sebagainya.Data diekspresikan sebagai URI.Sebagai contoh, untuk melihat informasi suatu contact seseorang, kita membuat intent dengan action VIEW dan data sebagai URI yang merepresentasikan orang tersebut.

Terdapat suatu kelas yang dinamakan IntentFilter.Apabila intent adalah suatu permintaan untuk melakukan sesuatu, IntentFilter adalah deskripsi yang dapat dilakukan oleh intent activity.Activity yang dapat menampilkan informasi

contact dari seseorang akan mempublikasikan IntentFilter yang menyatakan bahwa ia dapat menangani action VIEW apabila dipakai pada data yang merepresentasikan seseorang. Suatu aplikasi mempublikasikan IntentFilter pada


(27)

Navigasi dari suatu screen ke screen lainnya dipenuhi dengan cara

me-resolve intent. Untuk melakukan navigasi ke depan, activity memanggil startActivity(myIntent). Sistem akan mencari IntentFilter untuk semua aplikasi dan memilih activity yang IntentFilter-nya yang paling mendekati dengan myIntent. activitybaru akan mendapat informasi tentang intent yang menyebabkan

activity tersebut dijalankan. Proses pencarian intent terjadi sewaktu runtime pada saat startActivity dipanggil. Hal tersebut membawa keuntungan sebagai berikut:

Activity dapat melakukan reuse functionality dari komponen lain dengan cara melakukan permintaan dalam bentuk intent.

Activity dapat di replacekapan pun dengan activity yang ekuivalen.

2.2.2.3 Intent Recivier

IntentReceiver dapat digunakan pada saat kita menginginkan kode kita dijalankan akibat reaksi dari external eventtertentu.Contohnya, pada saat telepon berbunyi, atau pada saat ada data pada jaringan, atau pada suatu waktu tertentu. IntentReceiver tidak menampilkan user interface, meskipun ia dapat menggunakan NotificationManager untuk memperingatkan user apabila sesuatu terjadi. IntentReceiver didaftarkan pada file AndroidManifest.xml, tetapi secara manual juga bisa ditambahkan dengan fungsi Context.registerReceiver(). Suatu aplikasi tidak harus berjalan pada IntentReceivernya agar bisa dipanggil, tetapi sistem yang akan menjalankan aplikasi tersebut. Apabila diperlukan, pada saat IntentReceiver mendapat trigger, aplikasi juga dapat mengirimkan intent broadcast kepada aplikasi lainnya dengan fungsi Context.broadcastIntent().


(28)

2.2.2.4 Service

Service adalah sebuah kode yang hidup terus-menerus dan berjalan tanpa memiliki tampilan. Contoh yang sederhana adalah suatu aplikasi media player

yang sedang memainkan lagu dari play list. Pada aplikasi media player, kemungkinan terdapat satu atau lebih activity yang memperbolehkan user

memilih lagu dan memainkannya. Tetapi musik yang sedang diputar tidak boleh ditangani oleh activity karena user akan menginginkan musik tetap diputar meskipun ia berpindah ke screen baru. Pada kasus ini activity media player dapat menjalankan service menggunakan fungsi Context.startService() untuk menjalankan service di background yang memutar musik. Sistem akan tetap memutar musik sampai selesai. Selain itu activity dapat terhubung dengan service

menggunakan fungsi Context.bindService(). Pada saat terhubung, aplikasi dapat berkomunikasi melalui interface yang diberikan oleh service yang bersangkutan. Pada contoh media player, interface service akan memberikan fungsi pause,

rewind dan sebagainya.

2.2.2.5 Content Provider

Content provider digunakan untuk pertukaran data antara aplikasi. Data yang dipertukarkan bersifat shared. Content provider adalah sebuah kelas yang berisi method standar yang memungkinkan aplikasi lain dapat menyimpan dan mengambil suatu data yang ditangani oleh content provider.


(29)

2.2.3 Siklus Hidup Aplikasi Android

Pada banyak kasus, tiap aplikasi pada Android masing-masing memiliki Linux proses. Proses ini diciptakan untuk aplikasi tersebut pada saat kode program tersebut akan dieksekusi, akan terus berjalan sampai tidak dibutuhkan lagi dan sistem memerlukan memori untuk aplikasi lain. Konsep dasar program Android adalah suatu proses pada aplikasi tidak langsung di atur oleh aplikasi tersebut. Proses tersebut ditentukan oleh sistem melalui kombinasi : informasi aplikasi bagi sistem, seberapa pentingnya aplikasi tersebut bagi user dan ketersediaan memori. Contoh kasus life-cycle bug adalah IntentReceiver yang menciptakan thread pada saat menerima intent pada method onReceiveIntent() dan selesai dari fungsi tersebut. Setelah fungsi tersebut selesai, sistem menganggap bahwa IntentReceiver tersebut menjadi tidak aktif sehingga ia memiliki proses yang tidak dibutuhkan (kecuali terdapat komponen aplikasi lain di dalamnya). Oleh karena itu, sistem dapat menghapus proses tersebut kapanpun apabila dibutuhkan. Hal tersebut akan menghapus semua thread yang berjalan pada proses tersebut. Solusi masalah ini adalah memakai Service dari IntentReceiver, sehingga sistem mengetahui bahwa ada suatu yang aktif dalam proses tersebut.

Sebagai programmer, kita harus mengetahui bagaimana cara yang tepat untuk merancang aplikasi. Kesalahan pada perancangan akan membuat suatu aplikasi akan dihentikan oleh sistem pada saat yang tidak diinginkan. Untuk menentukan proses mana yang akan dihapus pada situasi low memory, Android


(30)

memiliki “importancehierarchy” berdasarkan komponen dan state yang sedang berjalan. Urutan berdasarkan kepentingan tersebut adalah:

1. Foreground process. Adalah suatu proses yang dibutuhkan untuk berinteraksi dengan user saat ini. Berbagai komponen suatu aplikasi dapat mengakibatkan proses di dalamnya menjadi foreground proses. Suatu proses dikatakan foreground apabila memenuhi kondisi sebagai berikut:

Menjalankan Activity pada top screen yang sedang berinteraksi dengan user (setelah method onResume() dipanggil).

Mempunyai IntentReceiver yang sedang berjalan (method IntentReceiver.onReceiveIntent() sedang dieksekusi).

Memilik service yang fungsi callback-nya ( Service.onCreate(), Service.onStart() atau Service.onDestroy()) sedang dieksekusi. Hanya akan terdapat beberapa proses seperti itu dalam sistem, proses ini hanya akan dihapus apabila sistem tidak memiliki pilihan lain. Contohnya apabila memori tinggal sedikit sehingga proses foreground tidak bisa lagi berjalan. Halini diperlukan untuk menjaga user interface tetap interaktif dengan user.

2. Visible process. Adalah proses yang memegang Activity yang dapat dilihatuser pada layar tetapi tidak foreground (pada saat method

onPause()dipanggil). Hal ini dapat terjadi, sebagai contoh activity foreground muncul dengan dialog sehingga activity sebelumnya terlihat di belakangnya. Proses ini sangat penting dan tidak akan di hapus kecuali untuk menjaga aplikasi foreground tetap berjalan.


(31)

3. Service process. Adalah proses yang memegang Service yang dimulai dengan method StartService().Meskipun proses ini secara langsung tidak dapat dilihat oleh user, biasanya proses ini menjalankan perintah dari user

(seperti memutar lagu, men-download data dari jaringan dan lain-lain). Sistem akan tetap membiarkan proses ini berjalan selama proses

foreground dan visible masih bisa berjalan.

4. Background process. Adalah proses yang memegang Activity yang saat ini tidak dapat dilihat oleh user (method onStop() sedang dipanggil). Proses ini tidak secara langsung mempengaruhi user. Apabila activity life cycle telah dipenuhi dengan benar, sistem dapat menghapus proses ini sewaktu-waktu untuk memberikan memori tambahan. Biasanya banyak ditemukan proses semacam ini, sehingga proses tersebut disimpan dalam LRU (Least RecentlyUsed) untuk menjaga agar proses yang baru saja dilihat oleh user

akan dihapus paling akhir pada kondisi low memory.

5. Empty Process. Adalah proses yang tidak memegang suatu komponen yangsedang aktif. Alasan mengapa membiarkan proses semacam ini adalah untukmelakukan cache sehingga proses startup menjadi lebih cepat apabila aplikasitersebut akan dijalankan kembali. Sistem seringkali menghapus prosessemacam ini untuk mencapai keseimbangan dari system resource


(32)

2.3 UML

Unified Modeling Language (UML) adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat lunak. Unified Modeling Language (UML) adalah himpunan struktur dan teknik untuk pemodelan desain program berorientasi objek (OOP) serta aplikasinya.[1] UML adalah metodologi untuk mengembangkan sistem OOP dan sekelompok perangkat tool untuk mendukung pengembangan sistem tersebut.[1] UML mulai diperkenalkan oleh Object Management Group, sebuah organisasi yang telah mengembangkan model, teknologi, dan standar OOP sejak tahun 1980-an.[1] Sekarang UML sudah mulai banyak digunakan oleh para praktisi OOP.[1] UML merupakan dasar bagi perangkat (tool) desain berorientasi objek dari IBM.[1]

UML adalah suatu bahasa yang digunakan untuk menentukan, memvisualisasikan, membangun, dan mendokumentasikan suatu sistem informasi.UML dikembangkan sebagai suatu alat untuk analisis dan desain berorientasi objek oleh Grady Booch, Jim Rumbaugh, dan Ivar Jacobson.Namun demikian UML dapat digunakan untuk memahami dan mendokumentasikan setiap sistem informasi.Penggunaan UML dalam industri terus meningkat.Ini merupakan standar terbuka yang menjadikannya sebagai bahasa pemodelan yang umum dalam industri peranti lunak dan pengembangan sistem.

2.3.1 Sejarah UML

Sampai era tahun 1990 puluhan metodologi pemodelan berorientasi objek telah bermunculan di dunia. Diantaranya adalah: metodologi booch, metodologi coad, metodologi OOSE, metodologi OMT, metodologi shlaer-mellor, metodologi


(33)

wirfs-brock, dsb. Masa itu terkenal dengan masa perang metodologi (method war) dalam pendesainan berorientasi objek. Masing-masing metodologi membawa notasi sendiri-sendiri, yang mengakibatkan timbul masalah baru apabila kita bekerjasama dengan kelompok/perusahaan lain yang menggunakan metodologi yang berlainan.

Dimulai pada bulan Oktober 1994 Booch, Rumbaugh dan Jacobson, yang merupakan tiga tokoh yang boleh dikata metodologinya banyak digunakan mempelopori usaha untuk penyatuan metodologi pendesainan berorientasi objek.Pada tahun 1995 direlease draft pertama dari UML (versi 0.8) [1].Sejak tahun 1996 pengembangan tersebut dikoordinasikan oleh Object Management Group (OMG – http://www.omg.org).

2.3.2 Diagram UML

UML menyediakan 10 macam diagram untuk memodelkan aplikasi berorientasi objek, yaitu:

1. Use Case Diagram untuk memodelkan proses bisnis.

2. Conceptual Diagram untuk memodelkan konsep-konsep yang ada di dalam aplikasi.

3. Sequence Diagram untuk memodelkan pengiriman pesan (message) antar objects.

4. Collaboration Diagram untuk memodelkan interaksi antar objects. 5. State Diagram untuk memodelkan perilaku objects di dalam sistem.

6. Activity Diagram untuk memodelkan perilaku Use Cases dan objects di dalam system.


(34)

7. Class Diagram untuk memodelkan struktur kelas. 8. Object Diagram untuk memodelkan struktur object.

9. Component Diagram untuk memodelkan komponen object. 10.Deployment Diagram untuk memodelkan distribusi aplikasi.

2.3.2.1 Use Case Diagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari

sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan “bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login ke sistem, meng-create sebuah daftar belanja, dan sebagainya. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Sebuah use case dapat meng-include

fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat

di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Sebuah use case juga dapat meng-extend use case lain dengan behaviour-nya sendiri. Sementara hubungan generalisasi antar use case menunjukkan bahwa use case

yang satu merupakan spesialisasi dari yang lain. Penggambaran Use case diagram dapat di lihat dalam gambar 2.3 di bawah ini.


(35)

Gambar II.3 Contoh use case diagram

2.3.2.2 Activity Diagram

Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi.

Activity diagram merupakan state diagram khusus, di mana sebagian besar state

adalah action dan sebagian besar transisi di-trigger oleh selesainya state

sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem)


(36)

secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum.

Sebuah aktivitas dapat direalisasikan oleh satu use case atau lebih. Aktivitas menggambarkan proses yang berjalan, sementara use case

menggambarkan bagaimana aktor menggunakan sistem untuk melakukan aktivitas. Decision digunakan untuk menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses paralel (fork dan join) digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal. Activity diagram dapat dibagi menjadi beberapa object swimlane untuk menggambarkan objek mana yang bertanggung jawab untuk aktivitas tertentu. Contoh Activity diagram dapat di lihat pada gambar 2.4 berikut ini.


(37)

2.3.2.3 Sequence Diagram

Sequence diagram menjelaskan secara detil urutan proses yang dilakukan dalam sistem untuk mencapai tujuan dari use case: interaksi yang terjadi antar class, operasi apa saja yang terlibat, urutan antar operasi, dan informasi yang diperlukan oleh masing-masing operasi. Contoh sequence diagram dapat di lihat pada gambar 2.5 berikut ini.


(38)

2.3.2.4 Class Diagram

Class diagram merupakan diagram yang selalu ada di permodelan sistem berorientasi objek.Class diagram menunjukkan hubungan antar class dalam sistem yang sedang dibangun dan bagaimana mereka saling berkolaborasi untuk mencapai suatu tujuan. Penggambaran class diagram dapat di lihat dalam gambar 2.6 dibawah ini.


(39)

34

3.1 Analisis

3.1.1 Analisis Masalah

Permasalahan pada penelitian ini adalah masih banyak event organizer

yang masih mengumumkan event secara manual, baik pengumuman yang ditempel di tempat tertentu atau dengan menyewa space iklan yang memakan biaya cukup mahal yang menyebabkan penyebaran informasi yang kurang luas sehingga orang-orang kesulitan untuk mengakses pengumuman tersebut.

Serta bagaimana mengimplementasikan web service dengan android sebagai solusi permaslahan tersebut.

3.1.2 Analisis Kebutuhan Data

Sistem yang akan dibangun merupakan sistem untuk menginformasikan

event-event yang ada di kota Bandung. Untuk aplikasi web servicepada server

dapatmelakukan proses input,edit,dan delete dan untuk client pada android dapat melakukan proses pemanggilan method atau fungsi yang ada pada web service

untuk mendapatkan data event. Maka web service harus menyediakan data event

-event yang ada di kota Bandung agar aplikasi android dapat mengakses data tersebut. Sehinggauntuk dibangunnya sistem ini, dibutuhkan data berupa informasi event yang ada Bandung yang di kelola oleh dinas pariwisata kota Bandung.


(40)

3.1.3 Analisis Kebutuhan Non Fungsional

Kebutuhan non fungsional yang dibutuhkan untuk membangun sistem ini terdiri dari dua hal, yaitu : kebutuhan perangkat keras dan kebutuhan perangkat lunak.

3.1.3.1 Analisis Kebutuhan Perangkat Keras

Perangkat keras yang dibutuhkan untuk membangun sistem ini adalah : 1. Processor dengan kecepatan minimal 2 GHz+ Motherboard

2. Kapasitas Harddisk minimal 40 GB 3. RAM minimal 256 MB

4. VGA Card minimal 64 MB 5. Monitor

6. Lan Card 10/100Mbps

7. Koneksi internet minimal64kbps 8. Mouse

9. keyboard

3.1.3.2 Analisis Kebutuhan Perangkat Lunak

Perangakat lunak yang diperlukan untuk membangun sistem ini adalah : 1. Java Development Kit versi 5 atau 6 , untuk kompilasi kode – kode program. 2. Java Runtime Edition, sebagai platform untuk menjalankan sistem.

3. Netbeans IDE, sebagai perangkat lunak yang digunakan untuk membangun


(41)

4. Eclipse 3.5, sebagai perangkat lunak yang digunakan untuk membangun aplikasi client pada android.

5. Glassfish, sebagai webserver untuk aplikasi web. 6. Android SDK, untuk pengembang aplikasi android.

7. Android Development Tool, sebagai plugin android pada eclipse.

8. Android Virtual Device, sebagai emulator untuk menjalankan sistem android.

3.1.4 Analisis Sistem 3.1.4.1 Arsitektur Sistem

Aplikasi utama pada event calendar ini merupakan aplikasi web yang dapat digunakan oleh user melalui internet. User yang menggunakan aplikasi utama ini dapat dibedakan menjadi dua jenis, yaitu : administrator dan user android. administrator dapat mengakses fungsi-fungsi lain seperti tambah,edit,hapusevent. Sedangkan user android adalah user yang menggunakan aplikasi pada android.

Selain aplikasi utama, event calendar juga mempunyai dukungan web service dalam bentuk clientserver. Sistem pada android akan menggunakan dukungan web service dengan bantuan WSDL yang telah disediakan. Sistem android selanjutnya dapat mengakses fungsi-fungsi web service yang disediakan oleh server .

3.1.4.2 Analisis Standar Web service

Dalam bab landasan teori telah dijelaskan secara singkat ada dua jenis


(42)

menggunakan web servicedengan standar SOAP karena pertama, SOAP adalah jenis web serviceyang berorientasi pada service yang cocok diterapkan pada aplikasi event calendar yang memang menyediakan layanan untuk memanggil metode yang mengolah resource event, kedua, SOAP memiliki standar yang baik dan jelas. REST tidak memiliki standar, tetapi hanya sebuah arsitektur web service. Untuk aplikasi dimana ia mungkin saja berkomunikasi dengan banyak aplikasi lain yang berbeda bahasa maupun platform, standar sangat diperlukan karena menjamin aplikasi-aplikasi ini berbicara dalam bahasa yang sama dan memudahkan pengembangan. Penjabaran SOAP diperjelas dengan disediakannya WSDL, sehingga pengguna web servicedapat dengan mudah membuat clientuntuk menggunakan SOAP.

3.1.4.3 Analisis WSDL

SOAP sebagai standar pertukaran pesan dalam web service mampu berjalan sendiri tanpa bantuan WSDL untuk mendeskripsikannya. Tetapi, hal ini akan menyulitkan pengembangan, karena tanpa bantuan WSDL, para pengembang harus bertanya-tanya seperti apa bentuk pesan yang seharusnya dikirim kepada atau diterima dari penyedia layanan web service. Dengan bantuan WSDL, para pengembang telah dibantu karena telah mengetahui seperti apa pesan yang seharusnya dikirim atau diterima. WSDL dalam pembuatannya terlihat sangat menyulitkan dan membingungkan, tetapi dengan bantuan library dan tools


(43)

3.1.4.4 Analisis Sistem Pada Aplikasi Android 3.1.4.4.1 Use Case Diagram


(44)

3.1.4.4.1.1 Identifikasi Aktor

Pada tabel 3.1 berisi daftar aktor dan deskripsi peran meraka masing-masing dalam aplikasi ini.

Tabel III.1 Definisi aktor dalam aplikasi android

NO Aktor Deskripsi

A-01 User Merupakan pengguna dari aplikasi event

calendar pada android

3.1.4.4.1.2 Identifikasi Use Case

Berdasarkan use case diagram di atas maka di buatlah skenario dari tiap proses yang ada pada use case diagram tersebut.Pada tabel 3.2 menggambarkan skenario mengambil data event pada use case getEvent..


(45)

Tabel III.2 Skenario Use case getEvent

Identifikasi

Nomor UC-AN-01

Nama Use Case getEvent

Deskripsi Proses untuk mengambil seluruh data event yang ada

Aktor User

Skenario Utama(UC-AN-01-S01)

Kondisi awal Koneksi ke web service berhasil

Aksi aktor User Respon Sistem

1. Menjalankan menu utama 2. Memanggil fungsi getEvent

3. Mengambil return value dari web service

dalam bentuk SOAP 4. Melakukan parsing data

5. Menampilkan data hasil parsing

Skenario Alternatif (UC-AN-01-S02) getEvent namun terdapat pesan error

2a. Menampilkan pesan kesalahan, misalnya karena tidak ada koneksi internet atau tidak dapat terhubung ke server.

Kondisi akhir Data berhasil ditampilkan di android

Pada tabel 3.3 menggambarkan skenario mengambil data event berdasarkan id pada use case getDetailEvent.


(46)

Tabel III.3skenario use case getDetailEvent.

Identifikasi

Nomor UC-AN-02

Nama Use Case getDetailEvent

Deskripsi Proses untuk mengambil data event berdasarkan id event

Aktor User

Skenario Utama (UC-AN-02-S01)

Kondisi awal Koneksi ke web service berhasil

Aksi aktor Respon Sistem

1. Memilih event pada listView

2. Menggambil parameter id event

3. Memanggil fungsi getEventById

4. Mengambil return value dari web service

dalam bentuk SOAP 5. Melakukan parsing data

6. Menampilkan data hasil parsing

Skenario Alternatif (UC-AN-02-S01) getEventByID namun terdapat pesan error

4a. Menampilkan pesan kesalahan, misalnya karena tidak ada koneksi internet atau tidak dapat terhubung ke server.

Kondisi akhir Data berhasil ditampilkan di android

Pada tabel 3.4 menggambarkan skenario filter data event berdasarkan kategori event pada use case byCategory.


(47)

Tabel III.4Skenario use case byCategory

Identifikasi

Nomor UC-AN-03

Nama Use Case byCategory

Deskripsi Proses untuk memfilter data event yang akan di tampilkan berdasarkan kategori event

Aktor User, web service

Skenario Utama(UC-AN-03-S01)

Kondisi awal Koneksi ke web service berhasil

Aksi aktor Respon Sistem

1. Memilih menu filter event berdasarkan kategori.

2. Menampilkan form inputan

3. Memilih kategori event akan di tampilkan

4. Memanggil fungsi byCategory

5. Mengambil return value dari web service

dalam bentuk SOAP

6. Memparsing data dari return value

7. Menampilkan data hasil parsing

Skenario Alternatif (UC-AN-03-S02) byCategory namun terdapat pesan error

9.a Menampilkan pesan kesalahan, misalnya karena data yang di filter tidak ada

Kondisi akhir Data berhasil ditampilkan di android

Pada tabel 3.5 menggambarkan skenario filter data event berdasarkan bulan tertentu pada use case byMonth.


(48)

Tabel III.5 Skenario use case byMonth

Identifikasi

Nomor UC-AN-04

Nama Use Case byMonth

Deskripsi Proses untuk memfilter data event yang akan di tampilkan berdaskan bulan

Aktor User

Skenario Utama (UC-AN-04-S01)

Kondisi awal Koneksi ke web service berhasil

Aksi aktor Respon Sistem

1. Memilih menu filter event berdasarkan bulan.

2. Menampilkan form inputan

3. Memilih nama bulan dan tahun event akan di tampilkan

4. Memanggil fungsi byMonth

5. Mengambil return value dari web service

dalam bentuk SOAP

6. Memparsing data dari return value

7. Menampilkan data hasil parsing

Skenario Alternatif (UC-AN-04-S02) byMonth namun terdapat pesan error

9a. Menampilkan pesan kesalahan, misalnya karena data yang di filter tidak ada.

Kondisi akhir Data berhasil ditampilkan di android

Pada tabel 3.6 menggambarkan skenario filter data event berdasarkan tanggal tertentu pada use case byDate.


(49)

Tabel III.6 Skenario use case byDate

Identifikasi

Nomor UC-AN-05

Nama Use Case byDate

Deskripsi Proses untuk menfilter data event yang akan di tampilkan berdaskan tanggal tertentu.

Aktor User

Skenario Utama(UC-AN-05-S01)

Kondisi awal Koneksi ke web service berhasil

Aksi aktor Respon Sistem

1. Memilih menu filter event berdasarkan range tanggal.

2. Menampilkan form inputan

3. Menginputkan awal tanggal dan akhir tanggal event.

4. Memanggil fungsi byDate

5. Mengambil return value dari web service

dalam bentuk SOAP

6. Memparsing data dari return value

7. Menampilkan data hasil parsing

Skenario Alternatif(UC-AN-05-S02) byDate namun terdapat pesan error

4a. Menampilkan pesan kesalahan, misalnya karena input dari user salah(skenario kembali ke langkah 3)

Skenario Alternatif(UC-AN-05-S03) byDate namun data tidak ditemukan

7.a Menampilkan pesan kesalahan, misalnya karena data yang di filter tidak ada.

Kondisi akhir Data berhasil ditampilkan di android

Pada tabel 3.7 menggambarkan skenario memberi komentar event pada use case addComment.


(50)

Tabel III.7 Skenario use case addComment

Identifikasi

Nomor UC-AN-06

Nama Use Case addComment

Deskripsi Proses untuk memberikan komentar pada event.

Aktor User, web service

Skenario Utama(UC-06-S01)

Kondisi awal Berada pada halaman detail event

Aksi aktor Respon Sistem

1. Memilih menu komentar 2. Menampilkam halaman komentar 3. Memilih menu tambah

komentar

4. Menampilkan form inputan

5. Mengisi form 6. Memanggil fungsi addComment

7. Memparsing data dari return value

8. Menampilkan pesan komentar berhasil di kirim.

Skenario Alternatif (UC- AN-06-S02) addComment namun terdapat pesan error

6a. Menampilkan pesan kesalahan, misalnya karena isi dari form belum lengkap atau salah.(skenario kembali ke langkah 5)

Kondisi akhir Data berhasil disimpan kedalam database

Pada tabel 3.8 menggambarkan skenario memberi komentar event pada use case getComment.


(51)

Tabel III.8 Skenario use case getComment

Identifikasi

Nomor UC-AN-07

Nama Use Case getComment

Deskripsi Proses untuk menampilkan komentar pada event.

Aktor User

Skenario Utama (UC-AN-07-S01)

Kondisi awal Berada pada halaman detail event

Aksi aktor Respon Sistem

1. Memilih menu komentar

2. Memanggil fungsi getComment

3. Mengambil return value dari web service dalam bentuk SOAP

4. Memparsing data dari return value

5. Menampilkan data hasil parsing

Skenario Alternatif(UC-AN-07-S02) addComment namun komentar tidak ada

7a. Menampilkan pesan kesalahan, misalnya karena belum ada komentar yang di inputkan

Kondisi akhir Data berhasil ditampilkan di android

Pada tabel 3.9 menggambarkan skenario mencari event berdasarkan parameter tertentu pada use case searchEvent.


(52)

Tabel III.9 Skenario use case searchEvent

Identifikasi

Nomor UC-AN-08

Nama Use Case searchEvent

Deskripsi Proses untuk memfilter data event yang akan di tampilkan berdaskan bulan

Aktor User

Skenario Utama(UC-08-S01)

Kondisi awal Koneksi ke web service berhasil

Aksi aktor Respon Sistem

1. Memilih menu cari event 2. Menampilkan form inputan 3. Memasukan parameter

pencarian

4. Memanggil fungsi searchEvent

5. Mengambil return value dari web service

dalam bentuk SOAP

6. Memparsing data dari return value

7. Menampilkan data hasil parsing

Skenario Alternatif (UC-AN-08-S02) searchEvent namun terdapat pesan error

4a. Menampilkan pesan kesalahan, inputan pencarian belum diisi atau belum lengkap

Skenario Alternatif (UC-AN-08-S03) searchEvent namun data tidak ditemukan

7a. menampilkan pesan kesalahan, misal karena data yang di cari tidak ditemukan.

Kondisi akhir Data berhasil ditampilkan di android

Pada tabel 3.10 menggambarkan skenario menampilkan peta lokasi event pada use case viewMap.


(53)

Tabel III.10 Skenario use case viewMap

Identifikasi

Nomor UC-AN-09

Nama Use Case viewMap

Deskripsi Proses untuk menampilkan peta dari lokasi event

Aktor User

Skenario Utama(UC-AN-09-S01)

Kondisi awal Berada pada halaman detail event

Aksi aktor Respon Sistem

1. Memilih menu peta 2. Mengambil latitude dan longitude dari lokasi event.

3. Mencari posisi latitude dan longitude pada google map

4. Menampilkan peta

Kondisi akhir Peta berhasil di tampilkan

Pada tabel 3.11 menggambarkan skenario untuk share event melalui facebook


(54)

Tabel III.11 Skenario use case shareEvent

Identifikasi

Nomor UC-AN-10

Nama Use Case shareEvent

Deskripsi Proses untuk membagikan event melalui facebook

Aktor User

Skenario Utama(UC-AN-10-S01)

Kondisi awal Berada pada halaman detail event

Aksi aktor Respon Sistem

1. Memilih menu share 2. Mengambil data event berupa nama,tgl,dan lokasi

3. Login facebook

4. Menampilkan pesan event berhasil di posting


(55)

3.1.4.4.2 Activity Diagram 3.1.4.4.2.1 getEvent

Aktifitas getEvent merupakan aktifitas yang dilakukan oleh user untuk mangambil data event yang ada pada database dengan web service. Dalam aktifitas ini terdapat beberapa aktifitas yaitu :

1. menjalankan menu utama, pada aktifitas ini user menjalankan menu utama yang ada pada sistem.

2. memanggil fungsi getEvent, pada aktifitas ini sistem memanggil fungsi getEvent yang ada pada web service.

3. Mengambil return value dari web service, pada aktifitas ini sistem mengambil nilai yang di kembalikan oleh web service berupa hasil dari eksekusi method pada web service.

4. Melakukan parsing data, pada aktifitas ini sistem memparsing respon dari web service agar data yang diterima dapat dibaca. 5. Menampilkan data event, pada aktifitas ini sistem menampilkan

hasil parsing kedalam bentuk list view.


(56)

Gambar III.2Activity diagram getEvent

3.1.4.4.2.2 getDetailEvent

Aktifitas getDetailEvent merupakan aktifitas yang dilakukan oleh user untuk mangambil detail dari data event yang ada pada web service berdasarkan id


(57)

1. memilih event pada listview, pada aktifitas ini user memilih event untuk menampilkan detail dari event yang dipilih.

2. mengambil parameter id event, pada aktifitas ini sistem mengambil id event, dimana id event didapat ketika user memilih event

sebelumnya pada list view.

3. memanggil fungsi getEventByID, pada aktifitas ini sistem memanggil fungsi getEventByID yang ada pada web service. 4. Mengambil return value dari web service, pada aktifitas ini sistem

mengambil nilai yang di kembalikan oleh web service berupa hasil dari eksekusi method pada web service.

5. Melakukan parsing data, pada aktifitas ini sistem memparsing respon dari web service agar data yang diterima dapat dibaca. 6. Menampilkan data event, pada aktifitas ini sistem menampilkan

hasil parsing.


(58)

Gambar III.3Activity diagram getDetailEvent

3.1.4.4.2.3 getEventByMonth

Aktifitas getEventByMonth merupakan aktifitas yang dilakukan oleh user untuk memfilter data eventberdasarkan bulan dan tahun dari tanggal yang ada pada web service. Dalam aktifitas ini terdapat beberapa aktifitas yaitu :


(59)

1. memilih menu filter event berdasarkan bulan, pada aktifitas ini user memilih menu untuk memfilter data berdasarkan bulan dari tanggal event.

2. Menampilkan form input, pada aktifitas ini sistem menampilkan form input yang harus user isi.

3. Memilih nama bulan dan tahun , pada aktifitas ini user memilih bulan dan tahun untuk memfilter data event.

4. memanggil fungsi byMonth, pada aktifitas ini sistem memanggil fungsi byMonth yang ada pada web service.

5. Mengambil return value dari web service, pada aktifitas ini sistem mengambil nilai yang di kembalikan oleh web service berupa hasil dari eksekusi method pada web service.

6. Melakukan parsing data, pada aktifitas ini sistem memparsing respon dari web service agar data yang diterima dapat dibaca. 7. Menampilkan data event, pada aktifitas ini sistem menampilkan

hasil parsing kedalam bentuk list view jika data hasil parsing tidak kosong.

8. Menampilkan pesan kesalahan, pada aktifitas ini sistem menampilkan pesan kesalahan jika data hasil parsing kosong. Seluruh aktifitas getEventByMonth terlihat pada activity diagram gambar III.4.


(60)

Gambar III.4Activity diagram getEventByMonth

3.1.4.4.2.4 getEventByDate

Aktifitas getEventByDate merupakan aktifitas yang dilakukan oleh user untuk memfilter data eventberdasarkan tanggal tertentu yang ada pada web service. Dalam aktifitas ini terdapat beberapa aktifitas yaitu :

1. memilih menu filter event berdasarkan tanggal, pada aktifitas ini user memilih menu untuk memfilter data berdasarkan tanggal event.


(61)

2. Menampilkan form input, pada aktifitas ini sistem menampilkan form input yang harus user isi.

3. Mengisi tanggal event , pada aktifitas ini user mengisitangal untuk memfilter data event.

4. memanggil fungsi byDate, pada aktifitas ini sistem memanggil fungsi byDate yang ada pada web service.

5. Mengambil return value dari web service, pada aktifitas ini sistem mengambil nilai yang di kembalikan oleh web service berupa hasil dari eksekusi method pada web service.

6. Melakukan parsing data, pada aktifitas ini sistem memparsing respon dari web service agar data yang diterima dapat dibaca. 7. Menampilkan data event, pada aktifitas ini sistem menampilkan

hasil parsing kedalam bentuk list view jika data hasil parsing tidak kosong.

8. Menampilkan pesan kesalahan, pada aktifitas ini sistem menampilkan pesan kesalahan jika data hasil parsing kosong. Seluruh aktifitas getEventByDate terlihat pada activity diagram gambar III.5.


(62)

Gambar III.5Activity diagram getEventByDate

3.1.4.4.2.5 getEventByCategory

Aktifitas getEventByCategory merupakan aktifitas yang dilakukan oleh user untuk memfilter data eventberdasarkan kategori event yang ada pada web service. Dalam aktifitas ini terdapat beberapa aktifitas yaitu :


(63)

1. memilih menu filter event berdasarkan kategori, pada aktifitas ini user memilih menu untuk memfilter data berdasarkan kategori event.

2. Menampilkan form input, pada aktifitas ini sistem menampilkan form input yang harus user isi.

3. Memilih kategori, pada aktifitas ini user kategori event untuk memfilter data event.

4. memanggil fungsi byCategory, pada aktifitas ini sistem memanggil fungsi byCategory yang ada pada web service.

5. Mengambil return value dari web service, pada aktifitas ini sistem mengambil nilai yang di kembalikan oleh web service berupa hasil dari eksekusi method pada web service.

6. Melakukan parsing data, pada aktifitas ini sistem memparsing respon dari web service agar data yang diterima dapat dibaca. 7. Menampilkan data event, pada aktifitas ini sistem menampilkan

hasil parsing kedalam bentuk list view jika data hasil parsing tidak kosong.

8. Menampilkan pesan kesalahan, pada aktifitas ini sistem menampilkan pesan kesalahan jika data hasil parsing kosong.


(64)

(65)

3.1.4.4.2.6 getComment

Aktifitas getComment merupakan aktifitas yang dilakukan oleh user untuk mangambil data komentar yang ada pada database dengan web service. Dalam aktifitas ini terdapat beberapa aktifitas yaitu :

1. memilih menu komentar, pada aktifitas ini user memilih menu komentar yang ada pada sistem.

2. memanggil fungsi getComment, pada aktifitas ini sistem memanggil fungsi getComment yang ada pada web service.

3. Mengambil return value dari web service, pada aktifitas ini sistem mengambil nilai yang di kembalikan oleh web service berupa hasil dari eksekusi method pada web service.

4. Melakukan parsing data, pada aktifitas ini sistem memparsing respon dari web service agar data yang diterima dapat dibaca. 5. Menampilkan data event, pada aktifitas ini sistem menampilkan

hasil parsing kedalam bentuk list view.

6. Menampilkan pesan kesalahan, pada aktifitas ini sistem menampilkan pesan kesalahan jika data hasil parsing kosong. Seluruh aktifitas getComment terlihat pada activity diagram gambar III.7.


(66)

(67)

3.1.4.4.2.7 addComment

Aktifitas addComment merupakan aktifitas yang dilakukan oleh user untuk memberikankomentar pada event. Dalam aktifitas ini terdapat beberapa aktifitas yaitu :

1. memilih menu tambah komentar, pada aktifitas ini user memilih menu tambah komentar yang ada pada sistem.

2. Menampilkan form input, pada aktifitas ini sistem menampilkan form yang harus user isi.

3. Mengisi form, pada aktifitasi ini user mengisi form yang berupa nama,email,dan komentar.

4. Cek inputan, pada aktifitas ini sistem mengecek input dari user. 5. Menampilkan pesan kesalahan, pada aktifitas ini jika inputan dari

salah atau tidak lengkap maka sistem akan menampilkan pesan kesalahan.

6. Memanggil fungsi addComment, pada aktifitas ini jka inputan dari user telah lengkap dan benar maka sistem akan memanggil fungsi addcomment yang ada pada web service.


(68)

Gambar III.8 Activity diagram addComment

3.1.4.4.3 Sequence Diagram

Merupakan bentuk dari interaction diagram, menggambarkan interaksiantar objek di dalam dan di sekitar sistem berupa Message yang di gambarkanterhadap waktu. Masing – masing objek termasuk actor memiliki line vertikal,message digambarkan garis berpanah dari satu objek ke objek lainnya, dan activation bar menunjukan lamanya eksekusi sebuah proses.Sebuah sequence diagram, secara khusus menjabarkan behavior sebuahskenario tunggal. Diagram tersebut menunjukkan sejumlah objek contoh dan pesan – pesan yang melewati objek – objek ini di dalam use case. Berikut ini adalah sequence diagram dari sistem yang akan dibangun.


(69)

3.1.4.4.3.1 getEvent


(70)

3.1.4.4.3.2 getDetailEvent


(71)

3.1.4.4.3.3 getEventByMonth


(72)

3.1.4.4.3.4 getEventByDate


(73)

3.1.4.4.3.5 getEventByCategory


(74)

3.1.4.4.3.6 getComment


(75)

3.1.4.4.3.7 addComment

Gambar III.15sequence diagram untuk menambahkan komentar

3.1.4.4.4 Class Diagram

Class diagram menggambarkan struktur dan deskripsi class beserta hubungan satu sama lain seperti Asosiasi, Generalisasi dan lain sebagainya. Dalam gambar 3.16 di bawah ini di gambarkan hubungan antar class yang terjadi pada sistem yang akan dibangun. Sedangkan detail dari masing-masing class


(76)

(77)

3.1.4.5 Analisis Sistem Pada Web Service 3.1.4.5.1 Use Case Diagram

Gambar III.17 Use case diagram pada web service

3.1.4.5.1.1 Identifikasi Aktor

Pada tabel 3.12 berisi daftar aktor dan deskripsi peran meraka masing-masing dalam aplikasi ini.

III.12Definisi aktor dalam aplikasi web

NO Aktor Deskripsi

B-01 Admin Merupakan pengguna pada aplikasi web yang mempunyai hak akses untuk tambah,edit,hapus data event


(78)

3.1.4.5.1.2 Identifikasi Use Case

Berdasarkan use case diagram di atas maka di buatlah skenario dari tiap proses yang ada pada use case diagram tersebut. Pada tabel 3.13 menggambarkan skenario pada use case login.

Tabel III.13Skenario use case login

Identifikasi

Nomor UC-WS-01

Nama Use Case Login

Deskripsi Proses autentifikasi admin untuk masuk pada sistem

Aktor Admin

Skenario Utama ( UC-WS-01-S01) Kondisi awal Koneksi ke

database berhasil dan tampil halaman login

Aksi aktor Respon Sistem

1. Membuka halaman utama 2. Menampilkan form login

3. Memasukan username dan

password

4. Mencocokan username dan password yang ada pada database

5. Login berhasil.

Skenario Alternatif ( UC-WS-01-S02)Login namun terdapat pesan kesalahan

5a. Login gagal, sistem menampilkan pesan kesalahan. Misal karena username dan

password tidak ada pada database atau username dan password tidak cocok.


(79)

Pada tabel 3.14 menggambarkan skenario tambah event pada use case TambahEvent.

Tabel III.14 skenario use case tambah event

Identifikasi

Nomor UC-WS-02

Nama Use Case TambahEvent

Deskripsi Proses untuk menambah data event

Aktor Admin

Skenario Utama( UC-WS-02-S01)

Kondisi awal Koneksi ke database berhasil

Aksi aktor Respon Sistem

1. Membuka halaman tambah

event 2. Menampilkan form tambah event

3. Memasukan data event baru 4. Melakukan proses validasi

5. Menyimpan data yang valid ke dalam

database.

Skenario Alternatif ( UC-WS-02-S02) Tambah Event namun terdapat pesan kesalahan

4a. Menampilkan pesan kesalahan, karena data yang diinputkan salah.

Kondisi akhir Jumlah data event pada database bertambah

Pada tabel 3.15 menggambarkan skenario hapus event yang dilakukan oleh admin pada use case HapusEvent


(80)

Tabel III.15 skenario use case hapus event

Identifikasi

Nomor UC-WS-03

Nama Use Case HapusEvent

Deskripsi Proses untuk menghapus data event dalam database

Aktor Admin

Skenario Utama( UC-WS-03-S01)

Kondisi awal Koneksi ke database berhasil

Aksi aktor Respon Sistem

1. Membuka halaman hapus event 2. Menampilkan form hapus event

3. Mencari data event yang akan

di hapus 4. Melakukan proses pencarian data

5. Menampilkan data event yang di cari

6. Konfirmasi penghapusan data 7. Merespon konfirmasi dari

sistem 8. Menghapus data event dari database

Skenario Alternatif( UC-WS-03-S02) Hapus Event namun terdapat pesan error

5a. Menampilkan pesan kesalahan, misalnya karena data yang di cari tidak ditemukan.

Kondisi akhir Jumlah data pada database berkurang

Pada tabel 3.16 menggambarkan skenario untuk mengedit event yang dilakukan oleh admin pada use case EditEvent


(81)

Tabel III.16 skenario use case edit event

Identifikasi

Nomor UC-WS-04

Nama Use Case EditEvent

Deskripsi Proses untuk mengedit data event dalam database

Aktor Admin

Skenario Utama( UC-WS-04-S01)

Kondisi awal Koneksi ke database berhasil

Aksi aktor Respon Sistem

1. Membuka halaman edit event 2. Menampilkan form edit event

3. Mencari data event yang akan di edit, dengan memasukan nama event.

4. Melakukan proses pencarian data

5. Menampilkan data event yang di cari 6. Mengedit data pada data event

yang telah dicari sebelumnya

7. Melakukan proses validasi

8. Menyimpan data yang telah diedit dalam database.

Skenario Alternatif( UC-WS-04-S02) Edit Event namun event tidak ditemukan

5a. Menampilkan pesan kesalahan, misalnya karena data yang di cari tidak ditemukan.

Skenario Alternatif( UC-WS-04-S03) Edit Event namun event gagal di simpan

8a. Menampilkan pesan kesalahan, misalnya karena data event yang di inputkan salah atau karena koneksi ke database gagal.


(82)

Pada tabel 3.17 menggambarkan skenario untuk melakukan eksekusi dari service yang android panggil.

Tabel III.17 Skenario proses service request

Identifikasi

Nomor UC-WS-05

Nama Use Case Proses Service Request

Deskripsi Proses untuk melakukan eksekusi dari sebuah service yang diminta

Aktor Android

Skenario Utama(UC-WS-05-S01)

Kondisi awal Koneksi ke sistem berhasil

Aksi aktor Android Respon Sistem

1. Memanggil method 2. Mencari Method 3. Menjalankan Method

4. Menampilkan respon berupa hasil query dalam bentuk SOAP

Kondisi akhir Sistem menampilkan respon dalam bentuk SOAP

3.1.4.5.2 Activity Diagram 3.1.4.5.2.1 Login Admin

Aktifitas login merupakan aktifitas yang dilakukan admin untuk mandapatkan akses untuk mengelola event. Dalam aktifitas ini terdapat beberapa aktifitas yaitu :

1. Membuka halaman admin, pada aktifitas ini admin membuka halaman untuk mengakses halaman kelola event.


(1)

4.2.5.2 Hasil pengujian web service

Tabel IV.4 Hasil pengujian web service

NO. Skenario Hasil

1 UC-WS-01-S01 Berhasil

2 UC-WS-01-S02 Berhasil

3 UC-WS-02-S01 Berhasil

4 UC-WS-02-S02 Berhasil

5 UC-WS-03-S01 Berhasil

6 UC-WS-03-S02 Berhasil

7 UC-WS-04-S01 Berhasil

8 UC-WS-04-S02 Berhasil

9 UC-WS-04-S03 Berhasil


(2)

120

4.2.6 Kesimpulan Hasil Pengujian

Berdasarkan hasil pengujian yang dilakukan memberikan kesimpulan sebagai berikut:

1. Aplikasi pada admin dapat melakukan tambah data ,edit data, dan hapus data.

2. Aplikasi pada android dapat mengakses web service dan mendapatkan informasi berupa data event yang web service sediakan.


(3)

121 5.1 Kesimpulan

Setelah melalui tahap perancangan, realisasi dan pengujian, maka dapat ditarik kesimpulan bahwa:

1. Aplikasi pada admin dapat melakukan input data, mengubah, mencari, menghapus dan menampilkan data sehingga mempermudah admin dalam mengelola data dan pengolahan data tidak perlu dilakukan secara manual. 2. Useryang menggunakan aplikasi pada android dimudahkan dalam

mendapatkan informasi mengenai event yang akan di selenggarakan di Kota Bandung karena bisa di akses dimanapun dan kapanpun.

3. Karena aplikasi ini berbasis web service jika akan mengembangkan aplikasi yang ada dengan menambahkan aplikasi berbasis lain (contoh:aplikasi berbasis dekstop), maka hanya merancang aplikasi dekstopnya saja tanpa harus merancang kembali proses yang sudah ada dalam web service.

5.2 Saran

Untuk selanjutnya disarankan aplikasi ini dapat berjalan pada platform selain android misalnya blackberry atau iPhone dan diharapkan untuk kedepan provider-provider jaringan telekomunikasi memberikan akses internet


(4)

122

menggunakan lebih murah sehingga perkembangan aplikasi mobile berbasis web service semakin pesat.


(5)

123

[1] Adi Nugroho. 2009. Rekayasa Perangkat Lunak Menggunakan UML Dan Java. ANDI, Yogyakarta

[2] Benny Hermawan. 2004. Menguasai Java 2 dan Object Oriented Programming. ANDI, Yogyakarta.

[3] Nazruddin Safaat H. 2011. Pemograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android. INFORMATIKA, Bandung.

[4] Mulyadi, ST. 2010. Membuat Aplikasi untuk Android. Multimedia Center Publishing, Yogyakarta.

[5] http://www.w3.org/TR/2004/NOTE-ws-arch-20040211/ di akses pada 19

Maret 2011


(6)

BIODATA PENULIS

Nama : Egi Adtya Pratama Putra

Nim : 10107385

Tempat / Tgl Lahir : Bandung, 19 Maret1990 Jenis Kelamin : Laki - laki

Alamat : Jl. Purwa Indah II no 7, CCI 10 RT 006 RW016 Desa Mekarrahayu Kec. Margaasih

Kab. Bandung Provinsi Jawa Barat.

Telepon : 081910539358

Email : [email protected]

Pendidikan

1. 1995 – 2001 : SD Negeri Kejaksaan Rangkasbitung 2. 2001 – 2003 : SMP Negeri 4 Rangkasbitung

3. 2003 – 2002 : SMA Negeri 3 Rangkasbitung 4. 2002 – 2007 : SMA Negeri 1 Margahayu Bandung

5. 2007 - 2011 : Program Studi S1 Jurusan Teknik Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia

Bandung, 12 Agustus 2011 Penulis