Membangun Aplikasi Content Aggregator Pada  Mobile Android 

TUGAS METODE PENELITIAN

Oleh :
FARID RUKMANA      0943108 

JURUSAN TEKNIK INFORMATIKA  SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER  WIDYA CIPTA DHARMA  TAHUN 2011 

BAB I

PENDAHULUAN 1.1. Latar Belakang Masalah Dunia komputer dan perangkat-perangkat lainnya sudah bukan lagi menjadi sesuatu yang asing dewasa ini. Sebut saja misalnya handphone, laptop, notebook, dan mobile device. Hampir semua orang dari berbagai kalangan sudah mengenal istilah-istilah tersebut saat ini. Hingga akhirnya pihak pengembang pun semakin berlomba-lomba untuk mengembangkan teknologi yang sudah ada sehingga memungkinkan masyarakat untuk dapat memanfaatkan teknologi tersebut untuk mempermudah pekerjaannya, ataupun memanfaatkannya untuk memenuhi kebutuhan lifestyle dan lainnya. Kemudahan dan efisiensi menjadi titik tumpu utama dalam pengembangan teknologi-teknologi tersebut. Banyak bagian dari lifestyle yang saat ini sudah tampak sinkron dengan perkembangan teknologi yang ada. Salah satunya bagi mereka penikmat olah raga, penikmat musik, pemerhati bola, pemerhati dunia selebritis, fasion, sampai pada pemerharti perkembangan teknologi. Tidak dapat dipungkiri lagi, dunia persepak-bolaan ,dunia musik, berita artis sudah menjadi satu ladang bisnis yang menggiurkan. Sehingga tidak sedikit pengembang teknologi informasi yang juga merambah dunia tersebut. Ada banyak celah bagi para pengembang teknologi informasi untuk memasuki pangsa pasar dunia tersebut, misalnya dengan menyediakan layanan informasi seputar hasil pertandingan, klasemen liga, informasi lain seputar dunia sepak bola, seputar dunia olah raga, informasi

1

2

perkembangan musik, gosip selebritis yang sedang hot di perbincangkan, informasi mengenai perkembangan teknologi, dan informasi fashion yang sedang trendi. Dan semua informasi tersebut, sudah dapat disediakan dengan sistem realtime yang memastikan setiap data yang ada selalu up-to-date dan terpantau pembaharuannya. Goal.com, Yahoo! OMG!, Detik.com, InfoSelebritis.com, Vivanews.com, Kompas.com, BeritaTeknologi.com, InformasiTeknologi.com,

musik.kapanlagi.com, merupakan salah satu pengembang teknologi informasi yang menyediakan layanan informasi seputar lifestyle semisal olah-raga, gosip selebritis, fashion, event musik, berita teknologi terbaru. Mereka juga menyediakan sebuah layanan yang memungkinkan pengunjungnya untuk mengetahui hal-hal terbaru secara real-time. Tapi, sampai sejauh ini, web-web yang disebutkan diatas belum menyediakan layanan tersebut yang dikhususkan bagi para pengguna perangkat mobile Android, sementara tingkat penggunaan perangkat Android sejauh ini menunjukan angka peningkatan yang signifikan dan diprediksikan masih akan tetap meningkat dalam beberapa waktu ke depan. Oleh karena persoalan tersebut diatas yang didasari latar belakang yang juga sudah dijelaskan, Penelitian ini akan mencoba membangun sebuah aplikasi mobile yang menyediakan berbagai informasi lifestyle menggunakan perangkat Android untuk mempermudah mereka dalam mengakses informasi yang sudah di sediakan oleh suatu web yang menyediakan informasi yang di yang berhubungan di bidangnya.

3

1.2.

Rumusan Masalah Bagaimana membuat atau membangun aplikasi Content Aggregator untuk

mengetahui informasi tentang life style yang sedang upedate baik itu perkembangan musik, gosip tentang artis, perkembangan teknologi, fashion, informasi seputar olah raga, dan hasil dari suatu pertandingan sepak bola yang sedang berlangsung menggunakan prangkat mobile.

1.3.

Maksud dan Tujuan 1.3.1 Maksud Adapun maksud dari pembuatan aplikasi ini adalah utuk embangun aplikasi content aggregator yang menyediakan informasi-informasi tentang life style yang up date, baik itu berita olah raga, gosip selebritis, musik, fashion, dan perkembangan teknologi. 1.3.2 Tujuan Adapun tujuan dari pembuatan aplikasi ini adalah untuk : 1. Membangun aplikasi yang dapat menampilkan informasi atau berita dari suatu website 2. Membantu user dalam mengumpulkan berbagai berita dalam satu halaman/ aplikasi 3. Membantu user dalam penambahan alamat rss baru yang di inginkan oleh user sendiri

4

1.4.

Batasan Masalah/Ruang Lingkup kajian Dalam membuat aplikasi ini, ada beberapa batasan dan permasalahan yang di temukan , diantaranya: 1. 2. 3. Aplikasi dibuat dengan Pemrograman Java Pemodelan menggunakan UML User hanya menerima berita dari Content Provider yang telah di tentukan. 4. 5. Fitur dalam aplikasi hanya fitur mengenai life style saja Aplikasi ini hanya mengambil RSS dari content provider yang menyediakan untuk kemudian menampilkannya didalam mobile

1.5.

Metodologi Penelitian Sesuai dengan masalah yang dibahas dalam penelitian ini dan

berhubungan dengan masalah

yang terjadi sekarang maka dasar-dasar yang

digunakan untuk mencari kebenaran dalam penelitian ini peneliti menggunakan metode. Metode tersebut dapat mengarah penyusunan dalam melakukan penelitian dan pengamatan dengan begitu dalam penelitian ini peneliti menggunakan metode penelitian deskriptif. Metode penelitian deskriptif adalah penelitian yang bertujuan untuk menjelaskan ikwal masalah atau objek tertentu secara rinci.

5

1.5.1 Tahapan Pengumpulan Data Teknik pengumpulan data yang digunakan oleh peneliti dalam penelitian ini adalah teknik penelitian studi pustaka. Teknik studi pustaka adalah teknik yang dipakai untuk mendapatkan informasi tentang android dan cara melakukan parsing ke sebuah web dari media buku, majalah, internet, dan media-media lain yang berhubungan dengan android, bertujuan untuk menyusun dasar teori yang kita gunakan dalam melakukan penelitian. 1.5.2 Tahap Pembangunan Aplikasi Model yang digunakan dalam pembuatan Aplikas ini ialah model sekuensial (waterfall) berikut adalah tahapan-tahapannya : 1. Analisys Langkah ini merupakan analisa terhadap kebutuhan sistem aplikasi. Pengumpulan data dalam tahap ini bisa dilakukan dengan sebuah penelitian, atau study literatur. Seorang sistem analis akan menggali informasi sebanyak-banyaknya dari user sehingga akan tercipta sebuah sistem aplikasi yang bisa melakukan tugas-tugas yang diinginkan oleh user tersebut. Tahapan ini akan menghasilkan dokumen user requirment atau bisa dikatakan sebagai data yang berhubungan dengan keinginan user dalam pembuatan sistem. Dokumen ini lah yang akan menjadi acuan sistem analis untuk menterjemahkan ke dalam bahasa pemprogram. 2. Design

6

Proses ini akan menerjemahkan syarat kebutuhan ke sebuah perancangan perangkat lunak yang dapat diperkirakan sebelum dibuat coding. Proses ini berfokus pada struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algoritma) prosedural. Tahapan ini akan menghasilkan dokumen yang disebut software requirment. Dokumen inilah yang akan digunakan proggrammer untuk melakukan aktivitas pembuatan aplikasi. 3. Coding Coding merupakan penerjemahan design dalam bahasa yang bisa dikenali oleh komputer. Dilakukan oleh programmer yang akan meterjemahkan transaksi yang diminta oleh user. Tahapan inilah yang merupakan tahapan secara nyata dalam mengerjakan suatu sistem. Dalam artian penggunaan komputer akan dimaksimalkan dalam tahapan ini. Setelah pengkodean selesai maka akan dilakukan testing terhadap aplikasi yang telah dibuat tadi. Tujuan testing adalah menemukan kesalahan-kesalahan terhadap system aplikasi tersebut dan kemudian bisa diperbaiki. 4. Testing Pada tahapan ini dilakukan pengujian secara nyata tehadap system aplikasi yang telah dibuat. Tujuan pengujian ini ialah untuk menemukan kesalahan-kesalahan terhadap sistem tersebut dan kemudian diperbaiki supaya dapat digunakan secara maksimal. 5. Maintenance

7

Tahap ini merupakan tahap pemeliharaan terhadap suatu software atau aplikasi, termasuk pengembangan terhadap software atau aplikasi tersebut, karena aplikasi yang dibuat tidak mungkin selamanya akan seperti itu. Adanya penambahan fitur-fitur baru yang mungkin tidak ada sebelumnya menjadikan software harus mengalami perubahan atau pengembangan lebih lanjut guna memenuhi keinginan user yang bersangkutan. 1.6. Sistematika Penulisan Sistematika penulisan dibuat untuk memberikan gambaran umum mengenai penelitian yang dilakukan dan kejelasan mengenai penulisan hasil penelitian. Oleh sebab itu sistematika penulisan yang akan digunakan adalah : BAB I PENDAHULUAN
Berisi bagian yang mengemukakan latar belakang, identifikasi masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI Berisi pembahasan mengenai landasan teori, berisi teori-teori yang berhubungan dengan masalah yang di bahas yaitu keterkaitan dengan android, xml, dan cara parsing yang dilakukan untuk mendapatkan informasi yang dibutuhkan

8

BAB III ANALISIS DAN PERANCANGAN SISTEM
Berisi analisis kebutuhan untuk sistem yang akan dibangun sesuai dengan metode pengembangan perangkat lunak yang digunakan. Selain itu, bab ini juga berisi perancangan struktur antar muka untuk aplikasi yang akan dibangun.

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM
Berisi hasil implementasi analisis dan perancangan sistem yang dilakukan, serta hasil pengujian sistem untuk mengetahui apakah aplikasi yang dibangun sudah memenuhi kebutuhan.

BAB V KESIMPULAN DAN SARAN
Berisi kesimpulan dari uraian proses pembangunan sistem informasi serta saran-saran guna pengembangan aplikasi ini di masa yang akan datang.

BAB II

LANDASAN TEORI 2.1. Sistem Informasi Pada dasarnya sistem informasi bukanlah sistem yang selalu terkait dengan komputer. Adapun beberapa penjelasan terkait dengan sistem informasi adalah pengertian sistem, pengertian data, pengertian informasi, dan pengertian sistem informasi itu sendiri. 2.1.1. Pengertian Sistem Pengertian sistem bisa dilihat dari dua pendekatan, yaitu berdasarkan prosedur dan komponennya. Sistem dilihat dari pendekatan prosedur berarti kumpulan prosedur yang saling bekerja sama untuk mencapai suatu tujuan tertentu sedangkan sistem dilihat dari pendekatan komponennya berarti sistem terdiri dari komponen-komponen yang saling berinteraksi untuk mencapai suatu tujuan tertentu. 2.1.2. Pengertian Data Data adalah kenyataan yang menggambarkan suatu kejadian–kejadian dan kesatuan yang nyata. Atau data adalah : representasi dunia nyata yang mewakili suatu objek seperti manusia (pegawai, mahasiswa, pelanggan), hewan, peristiwa, konsep, keadaan dll, yang direkam dalam bentuk angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya.

9

10

2.1.3. Pengertian Informasi Informasi merupakan data yang memiliki nilai lebih bagi penerimanya karena telah melewati proses pengolahan tertentu sehingga bisa dimanfaatkan untuk mengambil keputusan baik itu untuk saat ini ataupun untuk masa yang akan datang atau informasi didefinisikan sebagai data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya. 2.1.4. Pengertian Sistem Informasi Berdasarkan pemaparan sebelumnya mengenai sistem, data, dan informasi maka dapat diambil kesimpulan bahwa pengertian dari sistem informasi adalah sekumpulan komponen-komponen dan prosedur-prosedur yang saling bekerja sama untuk mencapai suatu tujuan tertentu. Berikut pengertian-pengertian lainnya dari sistem informasi: 1. A set of people, data, procedures, hardware and software that work together to achieve the common goal of information management. 2. Keterkaitan komponen-komponen dalam pengumpulan (atau

menerima), proses, menyimpan dan mendistribusikan informasi untuk mendukung pembuatan keputusan (decision making), mengkoordinasi serta mengkontrol 3. Sistem informasi juga membantu, manajer dan para pegawai (pekerja) menganalisa masalah, menggambarkan „subyek‟ yang kompleks dan membuat (menghasilkan) produk-produk baru 4. Dasar (pondasi) dari bisnis pada umumnya.

11

5. Ada tiga aktifitas pada sistem informasi menghasilkan informasi pada organisasi yang diperlukan untuk membuat suatu keputusan,

pengkontrolan, analisa masalah-masalah dan membuat produk baru atau layanan. Aktifitas itu adalah input, process dan output. 6. Input berarti menangkap atau pengumpulkan data mentah (raw data) didalam organisasi atau dari luar organisasi – environment / lingkungan. Proses diartikan dengan menterjemahkan data input kedalam bentuk yang lebih berarti. Sedangkan output adalah mentransfer informasi yang telah diproses kepada manusia dan aktivitasnya.

2.2.

Android

Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang buat menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia. Pada saat perilisan perdana Android, 5 November 2007, Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi Apache, sebuah lisensi

12

perangkat lunak dan standar terbuka perangkat seluler. Di dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua adalah yang benar– benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD).

Pada Juli 2000, Google bekerjasama dengan Android Inc., perusahaan yang berada di Palo Alto, California Amerika Serikat. Para pendiri Android Inc. bekerja pada Google, di antaranya Andy Rubin, Rich Miner, Nick Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc. hanyalah sebagai perangkat lunak pada telepon seluler. Sejak saat itu muncul rumor bahwa Google hendak memasuki pasar telepon seluler. Di perusahaan Google, tim yang dipimpin Rubin bertugas mengembangkan program perangkat seluler yang didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google sedang bersiap menghadapi persaingan dalam pasar telepon seluler. versi android terbaru yaitu versi 3.0. Pada tahun 2005 Google mengakusisi Android Inc yang pada saat itu dimotori oleh Andy Rubin, Rich Miner, Nick Sears dan Crish White. Yang kemudian pada tahun itu juga memulai membangun platform Android secara lebih intensif. Kemudian pada tanggal 12 November 2007 Google bersama Open Handset Aliance (OHA) yaitu konsorium perangkat lunak mobile terbuka, merilis Google Android SDK, setelah mengumumkannya seminggu sebelumnya. Dan sambutannya sangat luar biasa , hampir semua media berita tentang IT dan Programming memberitakan tentang dirilisnya Android SDK (Software Developtment Kit). Ini dikarenakan ide dari flatform Android sangat menarik

13

untuk developer dan programmer di seluruh penjuru dunia. Di sisi lain, produsen pembuat handset ponsel juga segera berlomba-lomba membuat handset dengan platform Android ini. Google bersama dengan OHA merilis paket software SDK yang lengkap untuk mengembangkan aplikasi pada perangkat mobile, yaitu : Sistem Operasi, Middleware dan Aplikasi utama untuk perangkat mobile. Sebagai Programmer atau Developer kita bisa melakukan segalanya, mulai dari membuat aplikasi pengiriman SMS hanya dengan dua baris kode, hingga mengganti even pada Home Screen perangkat Android. Selain itu, bahkan dengan mudah kita bisa membuatdan mengkostumisasi Sistem Operasinya, atau mengganti semua aplikasi default dari google.

Semua aplikasi yang dibuat untuk android akan memiliki akses setara dalam mengakses seluruh kemampuan handset, tanpa membedakan apakah itu merupakan aplikasi inti atau aplikasi pihak ketiga. Dalam kata lain dengan platform android ini, Programer atau Developer secara penuh akan bisa mengkustomisas perangkat androidnya. Android built in pada Linux kernel (Open Linux Kernel), dengan sebuah mesin virtual yang telah didesain dan untuk mengoptimalkan penggunaan sumberdaya memori dan handware pada lingkungan perangkat mobile (Mobile Environment). Dalvik adalah nama dari Android Virtual Mesin, yang merupak interpreter virtual mesin yang akan mengeksekusi file kedalam format Dalvik Executable (*.dex). Sebuah format yang dirancang untuk ruang penyimpanan yang efisien dan eksekusi memori yang terpetakan (memory-mappable execution).

14

Dlavik Virtual Mesun (Dalvik VM) berbasi register , dan dapat mengeksekusi kelas (class) yang telah terkompilasi pada compier bahasa java, kemudian di transformasikan kedalam native format dengan menggunakan Tool “dx” yang telah terintegrasi. Kita mungkin telah mengenal JavaVM (Java Virtual Mesin), yang saat ini bisa kita temukan pada setiap komputer desktop. Berbeda denga DalvikVM, JavaVM berbasis stack (Stack-based Virtual Machine), DalvikVM memiliki keunggulan dengan menggunakan Registred Based, ini karena pada prosesor perangkat genggam telah dioptimasi untuk eksekusi berbasis register . Android saaat ini tidak hanya berjalan pada handphone, beberapa vendor menanamkan Android pada tablet, Internet Tablet, E-Book Reader, Laptop, dan gadget lainnya.

Pada 9 Desember 2008, diumumkan anggota baru yang bergabung dalam program kerja Android ARM Holdings, Atheros Communications, diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, dan Vodafone Group Plc. Seiring pembentukan Open Handset Alliance, OHA mengumumkan produk perdana mereka, Android, perangkat mobile yang merupakan modifikasi kernel Linux 2.6. Sejak Android dirilis telah dilakukan berbagai pembaruan berupa perbaikan bug dan penambahan fitur baru. Telepon pertama yang memakai sistem operasi Android adalah HTC Dream, yang dirilis pada 22 Oktober 2008. Pada penghujung tahun 2009 diperkirakan di dunia ini paling sedikit terdapat 18 jenis telepon seluler yang menggunakan Android. Beberapa versi dari android yang sudah diluncurkan diantaranya:

15

1. Andorid versi 1.1

Pada 9 Maret 2009, Google merilis Android versi 1.1. Android versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, voice search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan email.

2. Android versi 1.5 (Cupcake)

Pada pertengahan Mei 2009, Google kembali merilis telepon seluler dengan menggunakan Android dan SDK (Software Development Kit) dengan versi 1.5 (Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung dari telepon, dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke headset Bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan sistem.

3. Android versi 1.6 (Donut)

Donut (versi 1.6) dirilis pada September dengan menampilkan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus; kamera, camcorder dan galeri yang dintegrasikan; CDMA / EVDO, 802.1x, VPN,

16

Gestures, dan Text-to-speech engine; kemampuan dial kontak; teknologi text to change speech (tidak tersedia pada semua ponsel; pengadaan resolusi VWGA.

4. Android versi 2.0/2,1 (Eclair)

Pada 3 Desember 2009 kembali diluncurkan ponsel Android dengan versi 2.0/2.1 (Eclair), perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1. Untuk bergerak cepat dalam persaingan perangkat generasi berikut, Google melakukan investasi dengan mengadakan kompetisi aplikasi mobile terbaik (killer apps - aplikasi unggulan). Kompetisi ini berhadiah $25,000 bagi setiap pengembang aplikasi terpilih. Kompetisi diadakan selama dua tahap yang tiap tahapnya dipilih 50 aplikasi terbaik. Dengan semakin berkembangnya dan semakin bertambahnya jumlah handset Android, semakin banyak pihak ketiga yang berminat untuk menyalurkan aplikasi mereka kepada sistem operasi Android. Aplikasi terkenal yang diubah ke dalam sistem operasi Android adalah Shazam, Backgrounds, dan WeatherBug. Sistem operasi Android dalam situs Internet juga dianggap penting untuk menciptakan aplikasi Android asli, contohnya oleh MySpace dan Facebook.

17

5. Android versi 2.2 (Froyo: Frozen Youghurt)

Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan. Perubahanperubahan umumnya terhadap versi-versi sebelumnya antara lain dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih cepat, intergrasi V8 JavaScript engine yang dipakai Google Chrome yang mempercepat kemampuan rendering pada browser, pemasangan aplikasi dalam SD Card, kemampuan WiFi Hotspot portabel, dan kemampuan auto update dalam aplikasi Android Market.

6. Android versi 2.3 (Gingerbread)

Pada 6 Desember 2010, Android versi 2.3 (Gingerbread) diluncurkan. Perubahan-perubahan umum yang didapat dari Android versi ini antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copy paste, layar antar muka (User Interface) didesain ulang, dukungan format video VP8 dan WebM, efek audio baru (reverb, equalization, headphone virtualization, dan bass boost), dukungan kemampuan Near Field Communication (NFC), dan dukungan jumlah kamera yang lebih dari satu.

2.2.1. Features Features yang tersedia pada platform Android saat ini antara lain : A. Framework Aplikasi yang mendukung penggantian komponen dan reusable.

18

B. Mesin Virtual Dalvik berjalan diatas Linux kernel dan dioptimalkan untuk perangkat mobile C. Integrated browser berdasarkan open source engine WebKit D. Grafis yang dioptimalkan dan didukung oleh library grafis 2D yang terkostumisasi, grafis 3D berdasarkan spesifikasi openGL ES 1,0 (Opsional akselarasi hardware) E. SQLite untuk penyimpanan data F. Media support yang mendukung audio, video, dan gambar (MPGE, H.264, MP3, AAC, AMR, JPG, PNG, GIF) G. GSM Telephony (tergantung hardware) H. Bluetooth, EDGE, 3G, dan WIFI (tergantung hardware) I. Multi-touch : kemampuan layaknya handset modern yang dapat menggunakan dua jari atau lebih untuk berinteraksi dengan perangkat J. Lingkungan Development yang lengkap dan kaya termasuk perangkat emulator, tools untuk debugging, profil, dan kinerja memori, dan plugin untuk Eclips IDE K. Market : Seperti kebanyakan Handphone yang memiliki tempat penjualan aplikasi, market pada android merupakan katalog aplikasi yang dapat di download dan di install pada Handphone melalui internet

19

2.2.2. Arsitektur Android

Gambar 2. 1 Arsitektur Andoid

2.2.2.1.

Linux Kernel Android bukan Linux, akan tetapi android dibangun diatas

Linux Kernel yaitu versi 2.6 sehingga kehandalannya dapat di percaya. Untuk inti sistem service linux yang digunakan seperti keamanan, manajemen memori, proses manajemen, network, dan drive model. Seperti yang terlihat digambar, Linux Kernel menyediakan Driver Layer, Kamera, Keypad, Kamera, Wifi, Flash Memory, Audio, dan IPC (Interprocess Communication) untuk mengatur aplikasi dan keamanan. Kernel juga bertindak sebagai lapisan abstrak antara hardware dan software stacknya

20

2.2.2.2.

Libraries Android menyertakan libraries C/C++ yang digunakan oleh

berbagai komponen dari sestem Android. Kemampuan ini disediakan kepada Developer aplikasi melalui framework aplikasi Android. beberapa inti libraries tercantum di bawah ini : A. System C library – Variasi dari implementasi BSDberasal pelaksanaan sistem standar C library (libe), sesuai untuk perangkat embedded berbasis linux. B. Media libraries – PaketVideo berdasarkan OpenCORE; library mendukung pemutaran rekaman dan populer banyak format audio dan video, serta file gambar, termasuk MPEG, H.264, MP3, AAC, AMR, JPG. Dan PNG C. Surface Manager – mengelola akses ke subsistem layar D. LibWebCore – mesin web modern yang powerfull yang baik browser Android embeddable web. E. SGL – mesin grafis 2D F. 3D libraries – sebuah pelaksanaan berdasarkan openGL ES 1,0 API; perpustakaan baik menggunakan perangkat keras akselarasi 3D (apabila tersedia) atau yang disertakan, sangat optimal 3D software rasterizer G. FreeType – bitmap dan vektor font rendering H. SQLite – mesin database yang kuat dan ringan, dan penghubung tersedia untuk semua aplikasi.

21

2.2.2.3.

Android-Runtime Android terdiri satu set core libraries yang menyediakan

sebagian besar fungsi yang sama dengan yang terdapat pada core libraries bahasa pemograman java. Setiap aplikasi menjalankan prosesnya sendiri dalam Android. Setiap alikasi menjalankan prosesnya sendiri dalam Android, dengan masing-masing instan dari mesin virtual Dalvik (Dalvik VM). Dalvik dirancang agar perangkat dapat

menjalankan multiple VMs secara efisien. Mesin Virtual Dalvik mengeksekusi file dalam Dalvik executable (.dex), sebuah format yang dioptimalkan untuk memori yang kecil. Dalvik VM berbasis, berjalan dan dikompilasi oleh compiler bahasa Java yang telah ditransformasikan ke dalam .dex format oleh tool “dx” yang telah di sertakan, Dalvik VM bergantung pada kernel Linux untuk berfungsi seperti threading dan manajemen memori tingkat rendahnya. 2.2.2.4. Framework-Aplikasi Pengembang memiliki akses penuh menuju API framework yang sama, dengan yang digunakan oleh aplikasi inti. Arsitektur aplikasi dirancang agar komponen dapat digunakan kembali (reuse) denga mudah. Setiap aplikasi dapat memanfaatkan kemampuan ini dan aplikasi yang lain mungkin akan memanfaatkan kemampuan ini (sesuai denganbatasan keamanan yang didefinisikan oleh framework).

Mekanisme yang sama memungkinkan komponen untuk diganti oleh pengguna.

22

Semua pengguna merupakan rangkaian set layanan dan sistem, termasuk: A. View yang kaya dan extensible yang dapat digunakan untuk membangun aplikasi, termasuk list, grid, kotak teks, tombol, dan bahkan sebuah embeddable web B. Content provider yang memungkinkan aplikasi untuk mengakses data (seperti dari daftar kontak help) atau membagi data tersebut. C. Resource Manager, yang menyediakan akses ke kode non sumber lokal seperti string, gambar, dan tata letak file D. Notification Manager yang memungkinkan semua aplikasi menampilkan alert yang bisa dokostumisasi didalam status bar. E. Activity Manager yang mengelola siklus hidup aplikasi dan menyediakan navigasi umum backstack. 2.2.2.5. Application Android telah menyertakan aplikasi inti seperti email elient, SMS, kalender, peta, browser, kontak, dan lain-nya. Semua aplikasi tersebut ditulis dengan menggunakan bahasa pemrograman Java. Pada layer inilah developer atau kita menempatkan aplikasi yang dibuat. Yang istimewa adalah pada android semua aplikasi baik aplikasi inti (native) maupun aplikasi pihak ketiga berjalan pada layer aplikasi yang dibuat untuk android akan memiliki akses yang setara dalam mengakses seluruh kemampuan handset, tanpa membedakan apakah itu merupakan aplikasi

23

inti atau aplikasi pihak ketiga. Dalam kata lain dengan platform android ini, Programmer atau developer secara penuh akan bisa mengkostumisasi perangkat androidnya. 2.3. Content Aggregator

Content aggregator (dikenal juga dengan nama feed reader atau news reader atau dengan istilah aggregator saja). Kita ketahui bahwa hampir setiap situs sekarang ini dilengkapi dengan RSS. Aggregator adalah aplikasi (bisa berupa aplikasi desktop atau web-based) yang memanfaatkan RSS sehingga pengguna bisa mengumpulkan (dan meng-customize) berbagai macam berita dari berbagai website di dalam satu lokasi/halaman. Dengan aggregator, pengguna tidak perlu harus membuka berbagai halaman website hanya untuk berburu berita dan updates terbaru. Cukup membuka satu halaman situs maka seluruh berita terbaru yang ingin kita ikuti ada di sana.

Anda bisa meng-install aplikasi aggregator atau memanfaatkan layanan aggregator berbasis web. Ada banyak layanan aggregator berbasis web yang bisa Anda pakai secara cuma-cuma. Netvibes, Bloglines, iGoogle dan MyYahoo adalah beberapa yang populer.

2.4.

Internet Internet merupakan media yang akan digunakan sebagai media interaksi

anatara pihak merchant dan konsumen. Untuk dapat menjalankan bisnis online, maka merchant harus melakukan koneksi terhadap internet. Demikian pula

24

konsumen yang akan membeli produk atau jasa secara elektronik harus menyambungkan komputernya ke internet melaui ISP (Internet Service Provider) tertentu. 2.4.1. Pengertian Internet Internet adalah sistem informasi global berbasis komputer. Internet terbentuk dari jaringan-jaringan komputer-komputer yang terkoneksi satu sama lain. Setia jaringa mungkin menghubungkan puluhan, ratusan, hingga ribuan komputer, yang memungkinkan komputer-komputer itu saling berbagi data dan informasi satu sama lain dan untuk saling berbagi sumber daya komputasi yang mahal dan langka seperti komputer-komputer super (SuperComputer) yang sangat kuat dan sistem-sistem basis data yang berisi informasi-informasi yang bermanfaat. 2.4.2. Perkembangan Internet Penggunaan internet berkembang pesat sejak penemuannya. Alihalih menghubungkan jaringan-jaringan secara terbatas pada tipe komputer tertentu, teknologi internet memungkinkan koneksi terjadi diantara berbagai jenis komputer. Antar berbagai sistem operasi (baca:tidak terikat platform perangkat keras maupun perangkat lunak). Tidak ada jaringan yang terlalu cepat atau lambat, terlalu besar atau terlalu kecil sehingga tidak bisa

dikoneksikan. Internet dapat menghubungkan jaringan-jaringan sederhana yang terdiri dari beberapa komputer di suatu ruangan hingga jaringanjaringan canggih yang merentang antar benua dan menghubungkan ribuan (bahkan jutaan) komputer.

25

2.5.

Java Java adalah bahasa pemrograman yang dapat dijalankan di berbagai

komputer termasuk telepon genggam. Dikembangkan oleh Sun Microsystems dan diterbitkan tahun 1995. Java tidak boleh disalahpahami sebagai JavaScript. JavaScript adalah bahasa scripting yang digunakan oleh web browser. 2.5.1. Sejarah Singkat Pada 1991, sekelompok insinyur Sun dipimpin oleh Patrick Naughton dan James Gosling ingin merancang bahasa komputer untuk perangkat konsumer seperti cable TV Box. Karena perangkat tersebut tidak memiliki banyak memori, bahasa harus berukuran kecil dan mengandung kode yang liat. Juga karena manufaktur – manufaktur berbeda memilih processor yang berbeda pula, maka bahasa harus bebas dari manufaktur manapun. Proyek diberi nama kode ”Green”. Kebutuhan untuk fleksibilitas, kecil, liat dan kode yang netral terhadap platform mengantar tim mempelajari implementasi Pascal yang pernah dicoba. Niklaus Wirth, pencipta bahasa Pascal telah merancang bahasa portabel yang menghasilkan intermediate code untuk mesin hipotesis. Mesin ini sering disebut dengan mesin maya (virtual machine). Kode ini kemudian dapat digunakan di sembarang mesin yang memiliki interpreter. Proyek Green menggunakan mesin maya untuk mengatasi isu utama tentang netral terhadap arsitektur mesin. Karena orang – orang di proyek Green berbasis C++ dan bukan Pascal maka kebanyakan sintaks diambil dari C++, serta mengadopsi orientasi

26

objek dan bukan prosedural. Mulanya bahasa yang diciptakan diberi nama ”Oak” oleh James Gosling yang mendapat inspirasi dari sebuah pohon yang berada pada seberang kantornya, namun dikarenakan nama Oak sendiri merupakan nama bahasa pemrograman yang telah ada sebelumnya, kemudian SUN menggantinya dengan JAVA. Nama JAVA sendiri terinspirasi pada saat mereka sedang menikmati secangkir kopi di sebuah kedai kopi yang kemudian dengan tidak sengaja salah satu dari mereka menyebutkan kata JAVA yang mengandung arti asal bijih kopi. Akhirnya mereka sepakat untuk memberikan nama bahasa pemrograman tersebut dengan nama Java. Produk pertama proyek Green adalah Star 7 (*7), sebuah kendali jarak jauh yang sangat cerdas. Dikarenakan pasar masih belum tertarik dengan produk konsumer cerdas maka proyek Green harus menemukan pasar lain dari teknologi yang diciptakan. Pada saat yang sama, implementasi WWW dan Internet sedang mengalami perkembangan pesat. Di lain pihak, anggota dari proyek Green juga menyadari bahwa Java dapat digunakan pada pemrograman internet, sehingga penerapan selanjutnya mengarah menjadi teknologi yang berperan di web. Sebagai sebuah bahasa pemrograman, Java dapat membuat seluruh bentuk aplikasi, desktop, web dan lainnya, sebagaimana dibuat dengan menggunakan bahasa pemrograman konvensional yang lain. Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus oada satu sistem operasi, tetapi dikembangkan untuk

27

berbagai sistem operasi dan bersifat open source. Sebagai sebuah peralatan pembangun, teknologi Java menyediakan banyak tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan sebagainya. Aplikasi dengan teknologi Java secara umum adalah aplikasi serbt a guna yang dapat dijalankan pada seluruh mesin yang memiliki Java Runtime Environment (JRE). Terdapat dua komponen utama dari Deployment Environment. Yang pertama adalah JRE, yang terdapat pada paket J2SDK, mengandung kelas – kelas untuk semua paket teknologi Java yang meliputi kelas dasar dari Java, komponen GUI dan sebagainya. Komponen yang lain terdapat pada Web Browser. Hampir seluruh Web Browser komersial menyediakan interpreter dan runtime environment dari teknologi Java. 2.5.2. Versi Awal Versi awal Java ditahun 1996 sudah merupakan versi release sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak paket standar awal yang terus dikembangkan pada versi selanjutnya: 1. 2. Java.lang: Peruntukan kelas elemen-elemen dasar. Java.io: Peruntukan kelas input dan output, termasuk

penggunaan berkas. 3. Java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan kelas kelas penanggalan.

28

4.

Java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi dengan komputer lain menggunakan jaringan TCP/IP.

5.

Java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna (GUI)

6.

Java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada penjelajah web.

2.5.3.

Kelebihan 1. Multiplatform. Kelebihan utama dari Java ialah dapat dijalankan di beberapa platform / sistem operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program Java dan

dikompilasi (diubah, dari bahasa yang dimengerti manusia menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan di atas beberapa platform tanpa perubahan. Kelebihan ini memungkinkan sebuah program berbasis java dikerjakan diatas operating system Linux tetapi dijalankan dengan baik di atas Microsoft Windows. Platform yang didukung sampai saat ini adalah Microsoft Solaris. Penyebanya

Windows, Linux, Mrac

OS dan Sun

adalah setiap sistem operasi menggunakan programnya sendirisendiri (yang dapat diunduh dari situs Java) untuk

menginterpretasikan bytecode tersebut.

29

2.

OOP (Object Oriented Programming - Pemrogram Berorientasi Objek) yang artinya semua aspek yang terdapat di Java adalah Objek. Java merupakan salah satu bahasa pemrograman berbasis objek secara murni. Semua tipe data diturunkan dari kelas dasar yang disebut Object. Hal ini sangat memudahkan pemrogram untuk mendesain, membuat, mengembangkan dan mengalokasi kesalahan sebuah program dengan basis Java secara cepat, tepat, mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang advance

seperti komunikasi antara komputer sekalipun. 3. Perpustakaan Kelas yang Lengkap, Java terkenal dengan kelengkapan library/perpustakaan (kumpulan program

program yang disertakan dalam pemrograman java) yang sangat memudahkan dalam penggunaan oleh para pemrogram untuk membangun aplikasinya. Kelengkapan perpustakaan ini

ditambah dengan keberadaan komunitas Java yang besar yang terus menerus membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh kebutuhan pembangunan aplikasi. 4. Bergaya C++, memiliki sintaks seperti bahasa

pemrograman C++ sehingga menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini pengguna Java sangat banyak, sebagian besar adalah pemrogram C++ yang pindah ke Java.

30

Universitas-universitas

di Amerika

Serikat juga

mulai

berpindah dengan mengajarkan Java kepada murid-murid yang baru karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi mereka yang bukan mengambil jurusan komputer. 5. Pengumpulan sampah otomatis, memiliki fasilitas pengaturan penggunaan memori sehingga para pemrogram tidak perlu melakukan pengaturan memori secara langsung (seperti halnya dalam bahasa C++ yang dipakai secara luas).

2.5.4.

Kekurangan 1. Tulis sekali, perbaiki di mana saja - Masih ada beberapa hal yang tidak kompatibel Untuk J2SE, antara platform satu misalnya SWT-AWT

dengan platform lain.

bridge yang sampai sekarang tidak berfungsi pada Mac OS X. 2. Mudah didekompilasi. Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode sumber. Ini dimungkinkan karena kode jadi Java merupakan bytecode yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada Microsoft .NET Platform. Dengan demikian, algoritma yang digunakan program akan lebih sulit disembunyikan dan mudah dibajak/direverse-engineer.

31

3.

Penggunaan memori yang banyak. Penggunaan memori untuk program berbasis Java jauh lebih besar daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini bukan merupakan masalah bagi pihak yang menggunakan teknologi terbaru (karena trend memori terpasang makin murah), tetapi menjadi masalah bagi mereka yang masih harus berkutat dengan mesin komputer berumur lebih dari 4 tahun.

2.5.5.

Tahap Kompilasi Java 1. Tulis / Ubah. Pemrogram menulis program dan menyimpannya di media dalam bentuk berkas '.java'. 2. Kompilasi. Pengkompilasi membentuk bytecodes dari program menjadi bentuk berkas '.class'. 3. 4. Muat. Pemuat kelas memuat bytecodes ke memori. Verifikasi. Peng-verifikasi memastikan bytecodes tidak

mengganggu sistem keamanan Java. 5. Jalankan. Penerjemah menerjemahkan bytecodes ke bahasa

mesin tidak bisa di pakai. 2.6. RSS RSS adalah singkatan dari Really Simple Sindication, yakni satu sistem sindikasi yang memungkinkan untuk mendapatkan update/artikel

terbaru dari situs-situs favorit Anda secara otomatis.

32

Teknologi

yang dibangun dengan RSS mengijinkan kita untuk

berlangganan kepada situs web yang menyediakan umpan web (feed) RSS, biasanya situs web yang isinya selalu diganti secara reguler. Untuk memanfaatkan teknologi ini kita membutuhkan layanan pengumpul. Pengumpul bisa

dibayangkan sebagai kotak surat pribadi. Kita kemudian dapat mendaftar ke situs yang ingin kita tahu perubahannya. Namun, berbeda dengan langganan koran atau majalah, untuk berlangganan RSS tidak diperlukan biaya, gratis. Tapi, kita biasanya hanya mendapatkan satu baris atau sebuah pengantar dari isi situs berikut alamat terkait untuk membaca isi lengkap artikelnya. 2.7. XML

XML (Extensible Markup Language) adalah bahasa markup untuk keperluan umum yang disarankan oleh W3C untuk membuat dokumen markup keperluan pertukaran data antar sistem yang beraneka ragam. XML merupakan kelanjutan dari HTML (HyperText Markup Language) yang merupakan bahasa standar untuk melacak Internet. Teknologi XML adalah teknologi keturunan dari SGML (Standard Generalized Markup Language, ISO 8879) yang dikembangkan pada tahun 1980-an. XML adalah suatu bahasa Markup, yaitu bahasa yang berisikan kode-kode berupa tanda-tanda tertentu dengan aturan tertentu untuk memformat dokumen teks dengan tag sendiri agar dapat dimengerti. XML adalah language untuk mengidentifikasi dan menandai data terstruktur

XML didesain untuk mempu menyimpan data secara ringkas dan mudah diatur. Kata kunci utama XML adalah data (jamak dari datum) yang jika diolah

33

bisa memberikan informasi. XML menyediakan suatu cara terstandarisasi namun bisa dimodifikasi untuk menggambarkan isi dari dokumen. Dengan sendirinya, XML dapat digunakan untuk menggambarkan sembarang view database, tetapi dengan suatu cara yang standar.

XML memiliki tiga tipe file, diantaranya:

1. XML, merupakan standar format dari struktur berkas (file). 2. XSL, merupakan standar untuk memodifikasi data yang diimpor atau diekspor. 3. XSD, merupakan standar yang mendefinisikan struktur database dalam XML.

Keunggulan XML bisa diringkas sebagai berikut :

1. Pintar (Intelligence). XML dapat menangani berbagai tingkat (level) kompleksitas. 2. Dapat beradaptasi. Dapat mengadaptasi untuk membuat bahasa sendiri. Seperti Microsoft membuaat bahasa MSXML atau Macromedia mengembangkan MXML. 3. Mudah pemeliharaannya. 4. Sederhana. XML lebih sederhana. 5. Mudah dipindah-pindahkan (Portability). XML mempunyai kemudahan perpindahan (portabilitas) yang lebih bagus.

34

2.8.

JSON JSON (JavaScript Object Notation) adalah format pertukaran data yang

ringan, mudah dibaca dan ditulis oleh manusia, serta mudah diterjemahkan dan dibuat (generate) oleh komputer. Format ini dibuat berdasarkan bagian dari Bahasa Pemprograman JavaScript, Standar ECMA-262 Edisi ke-3 – Desember 1999. JSON merupakan format teks yang tidak bergantung pada bahasa pemprograman apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C termasuk C, C++, C#, Java, JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data. JSON terbuat dari dua struktur: 1. Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan sebagai objek (object), rekaman (record), struktur (struct), kamus (dictionary), tabel hash (hash table), daftar berkunci (keyed list), atau associative array. 2. Daftar nilai terurutkan (an ordered list of values). Pada kebanyakan bahasa, hal ini dinyatakan sebagai larik (array), vektor (vector), daftar (list), atau urutan (sequence). Struktur-struktur data ini disebut sebagai struktur data universal. Pada dasarnya, semua bahasa pemprograman moderen mendukung struktur data ini dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian karena format data mudah dipertukarkan dengan bahasa-bahasa pemprograman

35

yang juga berdasarkan pada struktur data ini. JSON menggunakan bentuk sebagai berikut: 1. Objek Objek adalah sepasang nama/nilai yang tidak terurutkan. Objek dimulai dengan { (kurung kurawal buka) dan diakhiri dengan } (kurung kurawal tutup). Setiap nama diikuti dengan : (titik dua) dan setiap pasangan nama/nilai dipisahkan oleh , (koma).

Gambar 2. 2 Object JSON

2.

Larik Larik adalah kumpulan nilai yang terurutkan. Larik dimulai dengan [

(kurung kotak buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan oleh , (koma).

Gambar 2. 3 Larik JSON

3.

Nilai Nilai (value) dapat berupa sebuah string dalam tanda kutip ganda,

atau angka, atau true atau false atau null, atau sebuah objek atau sebuah larik. Struktur-struktur tersebut dapat disusun bertingkat.

36

Gambar 2. 4 Nilai JSON

4.

String String adalah kumpulan dari nol atau lebih karakter Unicode, yang

dibungkus dengan tanda kutip ganda. Di dalam string dapat digunakan backslash escapes "\" untuk membentuk karakter khusus. Sebuah karakter mewakili karakter tunggal pada string. String sangat mirip dengan string C atau Java.

Gambar 2. 5 String JSON

37

5.

Angka Angka adalah sangat mirip dengan angka di C atau Java, kecuali format

oktal dan heksadesimal tidak digunakan.

Gambar 2. 6 Angka JSON

2.9.

Tools Implementasi Tools implementasi merupakan peralatan-peralatan yang dibutuhkan

dalam membangun perangkat lunak. Adapun tools implementasi yang digunakan untuk membuat aplikasi mobile jejaring sosial Kampus Online Unikom berbasis Android adalah JDK sebagai perangkat pembangun Java, Eclipse IDE sebagai lingkungan pengembangan perangkat lunak, dan SQL sebagai sistem manajemen basis data. 2.9.1. JDK JDK (Java Development Kit) adalah sebuah perangkat peralatan yang digunakan untuk membangun perangkat lunak dengan menggunakan bahasa pemrograman Java. JDK berjalan diatas sebuah virtual machine yang dinamakan JVM (Java Virtual Machine). Dokumentasi JDK berisi spesifikasi API, deskripsi fitur, panduan pengembang, referensi halaman untuk perkakas JDK dan utilitas, demo, dan

38

link ke informasi terkait. Dokumentasi ini juga tersedia dalam bundel yand dapat diunduh dan diinstal pada komputer. 2.9.2. Eclipse IDE Eclipse adalah sebuat komunitas proyek open source yang difokuskan pada membangun sebuah platform pengembangan yang dapat diperluas, runtime dan kerangka aplikasi untuk membangun, menyebarkan dan mengelola perangkat lunak di seluruh daur hidup perangkat lunak. Komunitas Eclipse memiliki lebih dari 60 proyek open source. Proyek-proyek ini secara konsep terbagi menjadi 7 kategori : 1. 2. 3. 4. 5. 6. 7. Enterprise Development Embedded and Device Development Rich Client Platform Rich Internet Applications Application Frameworks Application Lifecycle Management (ALM) Service Oriented Architecture (SOA)

Komunitas Eclipse juga didukung oleh ekosistem besar dan dinamis dari penyedia solusi teknologi informasi utama, start-up inovatif, universitas dan lembaga penelitian, dan individu yang memperluas, mendukung, dan melengkapi platform Eclipse.

39

2.9.3.

SQLite SQLite merupakan sebuah perpustakaan proses yang menerapkan

kemandirian, tanpa server, tidak adanya konfigurasi mesin, dan basis data SQL transaksional. Kode untuk SQLite berada dalam domain publik dengan demikian bebas untuk digunakan untuk tujuan apapun, komersial atau swasta. SQLite adalah mesin basis data SQL yang tertanam. Tidak seperti kebanyakan basis data SQL lainnya, SQLite tidak memiliki proses server yang terpisah. SQLite membaca dan menulis secara langsung ke file disk biasa. Basis data SQL lengkap dengan berbagai tabel, indeks, triggers, dan views terkandung dalam sebuah file disk tunggal.

2.10. Unified Modelling Language (UML) Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan

mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem. Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET. Walaupun demikian, UML tetap dapat digunakan untuk modeling aplikasi prosedural dalam VB atau C.

40

Seperti

bahasa-bahasa

lainnya,

UML mendefinisikan

notasi

dan

syntax/semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak. Setiap bentuk memiliki makna tertentu, dan UML syntax mendefinisikan bagaimana bentuk-bentuk tersebut dapat dikombinasikan. Notasi UML terutama diturunkan dari tiga notasi yang telah ada sebelumnya: Grady Booch OOD (Object-Oriented Design), Jim Rumbaugh OMT (Object Modeling Technique), dan Ivar Jacobson OOSE (Object-Oriented Software Engineering). A. 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 objek. 4. Collaboration Diagram untuk memodelkan interaksi antar objek. 5. State Diagram untuk memodelkan perilaku objek di dalam sistem. 6. Activity Diagram untuk memodelkan perilaku userdan objek di

dalam sistem. 7. Class Diagram untuk memodelkan struktur kelas. 8. Objek Diagram untuk memodelkan struktur objek. 9. Component Diagram untuk memodelkan komponen objek.

41

10. Deployment Diagram untuk memodelkan distribusi aplikasi. Berikut akan dijelaskan 4 macam diagram yang paling sering digunakan dalam pembangunan aplikasi berorientasi objek, yaitu use case diagram, sequence diagram, collaboration diagram, danclass diagram. B. Use Case Diagram Use case diagram digunakan untuk memodelkan bisnis proses berdasarkan perspektif pengguna sistem. Use case diagram terdiri atas diagram untuk use case dan actor. Actormerepresentasikan orang yang akan mengoperasikan atau orang yang berinteraksi dengan sistem aplikasi. Use case merepresentasikan operasi-operasi yang dilakukan oleh actor.Use case digambarkan berbentuk elips dengan nama operasi dituliskan didalamnya. Actor yang melakukan operasi dihubungkan dengan garis lurus ke use case.

Gambar 2. 3 Diagram Use Case

C.

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.

42

Gambar 2. 7 Sequence Diagram

D.

Collaboration Diagram Collaboration diagram dipakai untuk memodelkan interaksi antar

objek di dalam sistem.Berbeda dengan sequence diagram yang lebih menonjolkan kronologis dari operasi-operasi yang dilakukan, collaboration diagram lebih fokus pada pemahaman atas keseluruhan operasi yang dilakukan oleh objek.

Gambar 2. 4 Collaboration Diagram

43

E.

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.

Gambar 2. 5 Class Diagram

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1. Analisis Sistem Analisis sistem dapat didefinisikan sebagai penguraian dari suatu sistem informasi yang utuh kedalam bagian-bagian komponennya dengan maksud untuk mengidentifikasi dan mengevaluasi permasalahan-permasalahan,

kesempatankesempatan, hambatan-hambatan yang terjadi dan kebutuhankebutuhan yang diharapkan sehingga dapat diusulkan perbaikan-perbaikannya. 3.1.1. Analisis Masalah Dari hasil pengamatan diketahui bahwa jarang sekali sistem alikasi pada suatu perangkat mobile yang menyediakan kumpulan informasi dalam satu aplikasi mobile. Biasanya kebanyakan dari kumpulan informasi tersebut di sajikan dalam bentuk web. Oleh karena itu untuk mengatasi masalah tersebut maka Penelitian ini akan mencoba membangun sebuah aplikasi mobile yang menyediakan berbagai informasi lifestyle menggunakan perangkat Android untuk mempermudah mereka dalam mengakses informasi yang sudah di sediakan oleh suatu web yang menyediakan informasi yang di yang berhubungan di bidangnya.

44

45

3.1.2. Proses Yang Terjadi Dalam Perangkat Lunak Perangkat lunak dalam skripsi ini merupakan aplikasi Content aggregator dengan menggunakan Model parsing untuk mengambil berita atau informasi yang update di situs-situs web yang telah di tentukan. Aplikasi ini akan menerima sebuah berita atau informasi dari sumber berita atau informasi. Berita atau informasi yang di tampilkan dalam aplikasi ini akan sama dan update sesuai dengan web yang telah di parsing oleh aplikasi . 3.1.3. Keluaran Perangkat Lunak Output yang diharapkan dari sistem ini andalah berita atau informasi yang dibutuhkan oleh pengguna setelah pengguna tersebut mencari informasi sesuai dengan kebutuhan yang di inginkanya. 3.1.4. Analisis Kebutuhan Fungsional Perangkat Lunak Analisis kebutuhan fungsional menggambarkan proses kegiatan yang akan diterapkan dalam sebuah sistem dan menjelaskan kebutuhan yang diperlukan sistem agar sistem dapat berjalan dengan baik. Analisis yang dilakukan dimodelkan dengan menggunakan UML (Unified Modeling Language). Tahap-tahap pemodelan dalam analisis tersebut antara lain identifikasi aktor, usecase diagram, skenario, activity diagram, sequence diagram, class diagram.

46

3.1.4.1. Identifikasi Aktor Terdapat aktor yang berhubungan dengan Content Aggregator.

Aktor pada sistem ini adalah user, user hanya mempunyai hak akses di halaman user untuk melakukan pencarian dokumen berita. 3.1.5. Usecase Diagram Usecase Diagram merupakan konstruksi untuk mendeskripsikan

hububungan-hubungan yang terjadi antar aktor dengan aktivitas yang terdapat pada sistem. Sasaran pemodelan use case diantaranya adalah mendefinisikan kebutuhan fungsional dan operasional sistem dengan mendefinisikan skenario penggunaan sistem yang akan dibangun. Dari hasil analisis aplikasi yang ada maka use case diagram untuk aplikasi Content Aggregator dapatt di lihat pada gambar berikut

47

Gambar 3. 1 Usecase Diagram Aplikasi Content Aggregator

3.1.5.1.

Definisi Usecase Use case diagram merupakan konstruksi untuk mendeskripsikan

hubungan-hubungan yang terjadi antar aktor dengan aktivitas yang terdapat pada sistem. Sasaran pemodelan use case diantaranya adalah

mendefinisikan kebutuhan fungsional dan operasional sistem dengan

48

mendefinisikan skenario penggunaan yang disepakati antara pemakai dan pengembang.
Tabel 3. 1 Definisi Usecase

No 1. 2.

Use Case viewKategori viewRSS

3. 4. 5. 6. 7. 8. 9. 10. 11. 12.

MessageList detailkategori detailRSS Tampil berita Add Kategori Edit Kategori Delete Kategori Add RSS Edit RSS Delete RSS

Deskripsi Berisi daftar list dari semua konten yang tersedia, menu pilihan add, edit, delete Berisi daftar dari alamat-alamat rss dari berbagai situs, menu pilihan add, edit, delete Berisi daftar dari judul-judul berita yang telah di ambil dari suatu web Form untuk menambah atau mengedit kategori Form untuk menambah atau mengedit alamat rss Tampilan berita dari sebuah web setelah kita memilih judul berita di MessageList Menu untuk menambah kategori Menu untuk mengedit kategori Menu untuk menghapus kategori Menu untuk menambah alamat RSS Menu untuk mengedit alamat RSS Menu untuk menghapus alamat RSS

3.1.6. Skenario Usecase Skenario Use Case mendeskripsikan urutan langkah-langkah dalam proses bisnis, baik yang dilakukan aktor terhadap sistem maupun yang dilakukan oleh sistem terhadap aktor.

49

3.1.6.1. Usecase Skenario View Kategori Interaksi antara aktor pengguna dengan use case View Kategori dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 2 Usecase Skenario View kategori

Identifikasi Nama Tujuan viewKategori Memastikan user agar bisa mesuk ke form utama untuk memilih konten yang di inginkan, menambah, mengedit dan menghapus kategori Deskripsi Menu ini akan menampilkan yang sudah tersedia kepada user Aktor Skenario Utama Aksi Aktor User aplikasi membuka Reaksi Sistem Sistem akan menampilkan form view kategori yang berisi konten-konten untuk dipilih oleh user Skenario Alternatif – Autentikasi Gagal Aksi Aktor User membuka kembali aplikasi Reaksi Sistem User dapat melihat kembali konten yang terdapat pada form view kategori, kemudian user dapat memilih kategori yang sesuai keinginan yang berisi alamat rss suatu website Kondisi akhir User dapat melihat dan memilih konten yang ada di dalam form view kategori User konten-konten

50

3.1.6.2. Usecase Skenario View RSS Interaksi antara aktor pengguna dengan use case view RSS dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 3 Usecase Skenario View RSS

Identifikasi Nama Tujuan viewRSS Memastikan user agar bisa mesuk ke form utama untuk memilih konten yang di inginkan, menambah, mengedit dan menghapus RSS yang tersedia Deskripsi Menu ini akan menampilkan RSS yang sudah

tersedia dari beberapa situs kepada user Aktor User

Skenario Utama Kondisi awal Aksi Aktor User membuka view rss Kondisi akhir Sistem akan menampilkan alamat RSS yang sudah tersedia dari beberapa situs kepada user dan akan menampilkan judul berita dari alamat rss yang dipilih User dapat melihat dan memilih konten yang ada di dalam view RSS, juga dapat menambah, mengedit, dan menghapus RSS User memilih konten mana yang akan dia buka,kemudian tampil alamat rss dari suatu website Reaksi Sistem

51

3.1.6.3. Usecase Skenario MessageList Interaksi antara aktor pengguna dengan use case MessageList dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 4 Usecase Skenario MessageList

Identifikasi Nama Tujuan MessageList Agar dapat menampilkan judul berita dari suatu RSS yang telah di pilih oleh user Deskripsi Menu ini akan menampilkan judul berita dari suatu RSS yang telah du pilih oleh user Aktor Skenario Utama Kondisi awal User memilih judul berita yang tersedia di dalam form Aksi Aktor User membuka memlih judul berita Reaksi Sistem Sitem akan menampilkan halaman dari suatu website yang berisi berita sesuai dengan judul berita yang telah dipilih oleh user Kondisi akhir Sistem akan menampilkan berita sesuai dengan judul berita yang telah dipilih oleh user User

52

3.1.6.4. Usecase Skenario Detail Kategori Interaksi antara aktor pengguna dengan use case Detail Kategori dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 5 Usecase Skenario Detail Kategori

Identifikasi Nama Tujuan Deskripsi detailKategori Agar dapat menambah dan mengedit kategori Form ini akan manambahkan atau mengedit kategori setelah user mengisikan data pada kolom yang tersedia Aktor Skenario Utama Kondisi awal User mengisikan data yang akan ditambah atau diedit Aksi Aktor User menginput data Reaksi Sistem Sistem akan menyimpan data yang telah User

dimasukan oleh user dan menampilkannya di form view kategori sesuai dengan inputan dari user Kondisi akhir Sistem akan menampilkan data yang telah di isikan oleh user berupa nama kategori

53

3.1.6.5. Usecase Skenario Detail RSS Interaksi antara aktor pengguna dengan use case Tambah RSS dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 6 Usecase Skenario Tambah RSS

Identifikasi Nama Tujuan Deskripsi detailrss Agar dapat menambah dan mengedit feed RSS Form ini akan manambahkan atau mengedit feed RSS setelah user mengisikan data pada kolom yang tersedia Aktor User

Skenario Utama Kondisi awal Aksi Aktor User menginput data Sistem akan menyimpan data yang telah dimasukan oleh user dan menampilkannya di form view rss sesuai dengan inputan dari user Kondisi akhir Sistem akan menampilkan data yang telah di isikan oleh user berupa alamat rss dari suatu website Reaksi Sistem User mengisikan data yang akan ditambah atau diedit

54

3.1.6.6. Usecase Skenario Tampil Berita Interaksi antara aktor pengguna dengan use Tampil Berita Otomotif dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 7 Usecase Skenario Tampil Berita

Identifikasi Nama Tujuan Tampil berita Agar dapat menampilkan berita setelah user memilih judul berita di MessageList Deskripsi Halaman ini akan menampilkan berita dari suatu halaman web site setelah user memilih judul berita di MessageLIst Aktor User

Skenario Utama Kondisi awal Aksi Aktor User Memilih judul berita Sistem akan menampilkan suatu halaman website dan menampilkan berita sesuai dengan judul berita yang telah di pilih oleh user Kondisi akhir Sistem menampilkan suatu halam website dan menampilkan berita sesuai dengan judul yang telah dipilih oleh user Reaksi Sistem User memilih judul berita di MessageLIst

55

3.1.6.7. Usecase Skenario Add Kategori Interaksi antara aktor pengguna dengan use case Add Kategori dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 8 Usecase Add Kategori

Identifikasi Nama Add Kategori

Tujuan

Agar dapat menampilkan form untuk menambah kategori

Deskripsi

Menu ini akan menampilkan

form untuk

menambah kategori sesuai keinginan user Aktor Skenario Utama Kondisi awal User memilih menu option Add untuk menambah kategori yang di inginkan Aksi Aktor Reaksi Sistem User

1. User menu Add

memilih option

Sistem akan menampilkan form untuk menambah kategori Sistem akan menyimpan data yang telah

2. User menginput data

dimasukan oleh user Kondisi akhir Data yang telah di isi oleh user akan di simpan dan di tampilkan di dalam form view kategori

56

3.1.6.8. Usecase Skenario Edit Kategori Interaksi antara aktor pengguna dengan use case Edit Kategori dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 9 Usecase Edit

Identifikasi Nama Edit Kategori

Tujuan

Agar dapat menampilkan form untuk mengedit kategori

Deskripsi

Menu ini akan menampilkan

form untuk

mengedit kategori sesuai keinginan user Aktor Skenario Utama Kondisi awal User memilih menu option Edit untuk mengedit kategori yang di inginkan Aksi Aktor Reaksi Sistem User

1. User memilih menu option Edit

Sistem akan menampilkan form yang berisi list kategori yang tersedia

2. User memilih kategori Kondisi akhir

Sistem akan menampilkan form untuk mengedit kategori agar user dapat mengisikan data Data yang telah di isi oleh user akan di simpan dan di tampilkan di dalam form view rss

57

3.1.6.9. Usecase Skenario Delete Kategori Interaksi antara aktor pengguna dengan use case Delete Kategori dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 10 Usecase Skenario Delete Kategori

Identifikasi Nama Delete Kategori

Tujuan

Agar dapat menampilkan form untuk menghapus kategori

Deskripsi

Menu ini akan menampilkan

form untuk

menghapus kategori sesuai keinginan user Aktor Skenario Utama Kondisi awal User memilih menu option edit untuk menghapus kategori yang di inginkan Aksi Aktor Reaksi Sistem User

1. User menu Edit

memilih option

Sistem akan menampilkan form yang berisi list kategori yang tersedia Sistem akan menampilkan konfirmasi berupa message kepada user Data berhasil di hapus dan sistem akan

2. User memilih kategori Kondisi akhir

menampilkan kembali form view kategori

58

3.1.6.10. Usecase Skenario Add RSS Interaksi antara aktor pengguna dengan use case Add RSS dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 11 use case Skenario Add RSS

Identifikasi Nama Add RSS

Tujuan

Agar dapat menampilkan form untuk menambah alamat RSS

Deskripsi

Menu ini akan menampilkan

form untuk

menambah alamat RSS sesuai keinginan user Aktor Skenario Utama Kondisi awal User memilih menu option Add untuk menambah alamat RSS yang di inginkan Aksi Aktor Reaksi Sistem User

1. User menu Add

memilih option

Sistem akan menampilkan form untuk menambah alamat rss Sistem akan menyimpan data yang telah

2. User menginput data Kondisi akhir

dimasukan oleh user Data berhasi di hapus dan sistem akan

menampilkan kembali form view rss

59

3.1.6.11.

Usecase Skenario Edit RSS Interaksi antara aktor pengguna dengan use case Edit RSS

dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 12 Usecase Skenario Edit RSS

Identifikasi Nama Edit RSS

Tujuan

Agar dapat menampilkan form untuk mengedit alamat RSS

Deskripsi

Menu ini akan menampilkan

form untuk

mengedit alamat RSS sesuai keinginan user Aktor Skenario Utama Kondisi awal User memilih menu option Edit untuk mengedit alamat RSS yang di inginkan Aksi Aktor Reaksi Sistem User

1. User menu Edit

memilih option

Sistem akan menampilkan form untuk mengedit alamat rss sesuai keinginan user Sistem akan menampilkan form untuk mengedit alamat rss agar user dapat mengisikan data Data yang telah diisi oleh user akan di simpan dan di tampilkan di dalam form view rss

2. User memilih alamat rss Kondisi akhir

60

3.1.6.12.

Usecase Skenario Delete RSS Interaksi antara aktor pengguna dengan use case Delete

RSS dijelaskan dalam use case skenario sebagai berikut :
Tabel 3. 13 Usecase Skenario Delete RSS

Identifikasi Nama Delete RSS

Tujuan

Agar dapat menampilkan form untuk menghapus RSS

Deskripsi

Menu ini akan menampilkan menghapus RSS sesuai keinginan user

form untuk

Aktor Skenario Utama Kondisi awal

User

User memilih menu option edit untuk menghapus RSS yang di inginkan

Aksi Aktor

Reaksi Sistem

1. User memilih menu option Edit 2. User memilih alamat rss

Sistem akan menampilkan form untuk menghapus alamat rss Sistem akan menampilkan konfirmasi berupa message kepada user Data berhasil di hapus dan sistem akan

Kondisi akhir

menampilkan kembali form view rss

61

3.1.7. Sequence Diagram Sequence diagram menggambarkan interaksi antar masing-masing objek pada setiap use case dalam urutan waktu. Interaksi ini berupa pengiriman serangkaian data antar objek-objek yang saling berinteraksi. 3.1.7.1. Sequence Diagram View Kategori

Gambar 3. 2 Sequence Diagram View Kategori

62

3.1.7.2. Sequence Diagram View RSS Sequence diagram view RSS menunjukkan rangkaian pesan yang dikirim antara objek pengguna dengan objek lainnya dalam proses melihat alamat RSS yang tersedia dalam aplikasi mobile Content Aggregator. Sequence diagram view RSS dapat dilihat pada Gambar 3.3

Gambar 3. 3 Sequence Diagram View RSS

63

3.1.7.3. Sequence Diagram Tampil Berita Sequence diagram Tampil berita menunjukkan rangkaian pesan yang dikirim antara objek pengguna dengan objek lainnya dalam proses melihat berita dari suatu web site yang tersedia dalam aplikasi mobile Content Aggregator. Sequence diagram tampil berita dapat dilihat pada Gambar 3.4

Gambar 3. 4 Sequence diagram Tampil berita

64

3.1.7.4.

Sequence Diagram Add Kategori Sequence diagram Add Kategori menunjukkan rangkaian

pesan yang dikirim antara objek pengguna dengan objek lainnya dalam proses menambah kategori baru dalam aplikasi mobile Content Aggregator. Sequence diagram Add Kategori dapat dilihat pada Gambar 3.5

Gambar 3. 5 Sequence diagram Add Kategori

65

3.1.7.5.

Sequence Diagram Edit Kategori Sequence diagram Edit Kategori menunjukkan rangkaian

pesan yang dikirim antara objek pengguna dengan objek lainnya dalam proses merubah kategori dalam aplikasi mobile Content Aggregator. Sequence diagram Edit Kategori dapat dilihat pada Gambar 3.6

Gambar 3. 6 Sequence diagram Edit Kategori

66

3.1.7.6.

Sequence Diagram Delete Kategori Sequence diagram Delete Kategori menunjukkan

rangkaian pesan yang dikirim antara objek pengguna dengan objek lainnya dalam proses menghapus kategori dalam aplikasi mobile Content Aggregator. Sequence diagram Delete Kategori dapat dilihat pada Gambar 3.7

Gambar 3. 7 Sequence diagram Delete Kategori

67

3.1.7.7.

Sequence Diagram Add RSS Sequence diagram Add RSS menunjukkan rangkaian pesan

yang dikirim antara objek pengguna dengan objek lainnya dalam proses menambah alamat RSS baru dalam aplikasi mobile Content Aggregator. Sequence diagram Add RSS dapat dilihat pada Gambar 3.8

Gambar 3. 8 Sequence Diagram Add RSS

68

3.1.7.8.

Sequence Diagram Edit RSS Sequence diagram Edit RSS menunjukkan rangkaian pesan

yang dikirim antara objek pengguna dengan objek lainnya dalam proses merubah alamat RSS dalam aplikasi mobile Content Aggregator. Sequence diagram Edit RSS dapat dilihat pada Gambar 3.9

Gambar 3. 9 Sequence Diagram Edit RSS

69

3.1.7.9. Sequence Diagram Delete RSS Sequence diagram Delete RSS menunjukkan rangkaian pesan yang dikirim antara objek pengguna dengan objek lainnya dalam proses menghapus alamat RSS dalam aplikasi mobile Content Aggregator. Sequence diagram Delete RSS dapat dilihat pada Gambar 3.10

Gambar 3. 10 Sequence diagram Delete RSS

70

3.1.8. Activity Diagram Activity diagram merupakan diagram yang memodelkan aliran kerja atau workflow dari urutan aktifitas dalam suatu proses yang mengacu pada use case diagram yang ada. Berikut ini penjelasan dari tiap diagram: 3.1.8.1. Activity Diagram Add Kategori Activity diagram Add Kategori menjelaskan aliran kerja aktor pengguna pada saat menambahkan kategori baru ke dalam aplikasi mobile Conten Aggregator. Activity diagram Add Kategori dapat dilihat pada gambar berikut ini. activity

Gambar 3. 11 Activity diagram Add Kategori

71

3.1.8.2.

Activity Diagram Edit Kategori Activity diagram Edit Kategori menjelaskan aliran kerja

aktor pengguna pada saat merubah kategori ke dalam aplikasi mobile Conten Aggregator. Activity diagram Edit Kategori dapat dilihat pada gambar berikut ini.

Gambar 3. 12 Activity diagram Edit Kategori

72

3.1.8.3.

Activity Diagram Delete Kategori Activity diagram Delete Kategori menjelaskan aliran kerja

aktor pengguna pada saat menghapus kategori

ke dalam aplikasi

mobile Conten Aggregator. Activity diagram Delete Kategori dapat dilihat pada gambar berikut ini.

Gambar 3. 13 Activity diagram Delete Kategori

73

3.1.8.4.

Activity Diagram Add RSS Activity diagram Add RSS menjelaskan aliran kerja aktor

pengguna pada saat menambahkan alamat RSS baru ke dalam aplikasi mobile Conten Aggregator. Activity diagram Add RSS dapat dilihat pada gambar berikut ini.

Gambar 3. 14 Activity diagram Add RSS

74

3.1.8.5.

Activity Diagram Edit RSS Activity diagram Edit RSS menjelaskan aliran kerja aktor

pengguna pada saat merubah alamat RSS ke dalam aplikasi mobile Conten Aggregator. Activity diagram Edit RSS dapat dilihat pada gambar berikut ini.

Gambar 3. 15 Activity diagram Edit RSS

75

3.1.8.6.

Activity Diagram Delete RSS Activity diagram Delete RSS menjelaskan aliran kerja aktor

pengguna pada saat menghapus alamat RSS ke dalam aplikasi mobile Conten Aggregator. Activity diagram Delete RSS dapat dilihat pada gambar berikut ini.

Gambar 3. 16 Activity diagram Delete Kategori

76

3.1.8.7.

Activity Diagram View RSS Activity diagram View RSS menjelaskan aliran kerja aktor

pengguna pada saat melihat alamat RSS ke dalam aplikasi mobile Conten Aggregator. Activity diagram View RSS dapat dilihat pada gambar berikut ini.

Gambar 3. 17 Activity diagram View RSS

77

3.1.8.8.

Activity Diagram Tampil Berita Activity diagram Tampil Berita menjelaskan aliran kerja

aktor pengguna pada saat melihat alamat RSS

ke dalam aplikasi

mobile Conten Aggregator. Activity diagram Tampil Berita dapat dilihat pada gambar berikut ini.

Gambar 3. 18 Activity diagram Tampil Berita

78

3.1.9. Class Diagram Class Diagram menggambarkan struktur dan hubungan antar objekobjek yang ada pada sistem. Struktur itu meliputi atribut-atribut dan metodemetode yang ada pada masing-masing class. Hubungnnya dari masingmasing class yang ada tersebut digambarkan seperti pada gambar berikut

79

Gambar 3. 19 Class Diagram

80

3.1.10. Operasi dan Atribut
Nama Kelas : viewkategori

Nama Operasi onCreate onDestroy onListItemClick onCreateOptionMenu onOptionItemSelected setContenView Nama Atribut ID_EXTRA namaKat requestCode icon2
Nama Kelas : FormAddKategori

Visibility (private, public) public public public public public public Visibility (private, public) public public private private

Keterangan Pembuatan layout Menutup class helper Pemanggilan activity Pembuatan menu Pemanggilan activity dengan memilih menu Pengesetan layout Tipe String String Int ImageView

Nama Operasi onCreate onDestroy load onClick onSave setContenView Nama Atribut

Visibility (private, public) public public public public private public Visibility (private, public)

Keterangan Pembuatan layout Menutup class helper Pengesetan cursor Pemilihan status kategori Menyimpan data Pengesetan layout Tipe

Nama Kelas : FormEditKategori

Nama Operasi onCreate onDestroy onListItemClick onCreateOptionMenu onOptionItemSelected startActivity setContenView

Visibility (private, public) public public public public public public public

Keterangan Pembuatan layout Menutup class helper Pemanggilan activity Pembuatan menu Pemanggilan activity dengan memilih menu Pengesetan layout

81

Nama Atribut ID_EXTRA icon2

Visibility (private, public) public private

Tipe String ImageView

Nama Kelas : FormDeleteKategori

Nama Operasi onCreate onDestroy onListItemClick onCreateOptionMenu onOptionItemSelected setPositiveButton setNegativeButton setContenView Nama Atribut ID_EXTRA icon2

Visibility (private, public) public public public public public public public public Visibility (private, public) public private

Keterangan Pembuatan layout Menutup class helper Pemanggilan alert dialog Pembuatan menu Pemanggilan activity dengan memilih menu Pengesetan Alert Dialog Pengesetan Alert Dialog Pengesetan layout Tipe String ImageView

Nama Kelas : viewrss

Nama Operasi onCreate onDestroy onListItemClick onCreateOptionsMenu onOptionItemSelected onActivityResult setContenView Nama Atribut ID_EXTRA urlrss requestCode kategori icon2

Visibility (private, public) public public public public public protected public Visibility (private, public) public public private public private

Keterangan Pembuatan layout Menutup class helper Pemanggilan activity Pembuatan menu Pemanggilan activity dengan memilih menu Pembuatan ProgressDialog Pengesetan layout Tipe String String Int String ImageView

82

Nama Kelas : FormAddrss

Nama Operasi onCreate onDestroy load onClick onSave setContenView Nama Atribut

Visibility (private, public) public public public public public public Visibility (private, public)

Keterangan Pembuatan layout Menutup class helper Pengesetan cursor Pemilihan status rss Menyimpan data Pengesetan layout Tipe

Nama Kelas : FormEditrss

Nama Operasi onCreate onDestroy onListItemClick onCreateOptionMenu onOptionItemSelected getCheckedRadioButtonId setContenView Nama Atribut ID_EXTRA icon2

Visibility (private, public) public public public public public public public Visibility (private, public) public private

Keterangan Pembuatan layout Menutup class helper Pemanggilan activity Pembuatan menu Pemanggilan activity dengan memilih menu Pemilihan status kategori Pengesetan layout Tipe String ImageView

Nama Kelas : FormDeleterss

Nama Operasi onCreate onDestroy onListItemClick onCreateOptionsMenu onOptionItemSelected setPositiveButton setNegativeButton setContenView Nama Atribut

Visibility (private, public) public public public public public public public public Visibility (private, public)

Keterangan Pembuatan layout Menutup class helper Pemanggilan alert dialog Pembuatan menu Pemanggilan activity dengan memilih menu Pengesetan Alert Dialog Pengesetan Alert Dialog Pengesetan layout Tipe

83

ID_EXTRA icon2
Nama Kelas : BaseFeedParser

public private

String ImageView

Nama Operasi

Visibility (private, public) Visibility (private, public) public public public public public public

Keterangan

Nama Atribut CHANEL PUB_DATE DESCRIPTION LINK TITLE ITEM

Tipe String String String String String String

Nama Kelas : AndroidSaxFeedParser

Nama Operasi getChild Nama Atribut RSS

Visibility (private, public) public Visibility (private, public) private

Keterangan

Tipe String

Nama Kelas : MessageList

Nama Operasi onCreate onKeyDown onListItemClick loadFeed writeXml Nama Atribut url link icon2

Visibility (private, public) public public public public public Visibility (private, public) public public private

Keterangan Pembuatan layout Mengaktifkan tombol pada keyboard Pemanggilan activity Pemanggilan class FeedParserFactory Pengesetan dokumen xml Tipe String String ImageView

84

Nama Kelas : FeedFactorFactory

Nama Operasi getParser Nama Atribut feedUrl
Nama Kelas : AlmagAdapter

Visibility (private, public) public Visibility (private, public) public

Keterangan Mengambil type parser Tipe String

Nama Operasi binView newView Nama Atribut

Visibility (private, public) public public Visibility (private, public)

Keterangan Menampilkan data dari database ke dalam form Menampilkan jumlah baris Tipe

Nama Kelas : AlmagHolder

Nama Operasi populateForm Nama Atribut site url icon viewRss
Nama Kelas : AlmagHelper

Visibility (private, public) public Visibility (private, public) private private private private

Keterangan Mengisikan data ke dalam form Tipe TextView TextView ImageView TextView

Nama Operasi onCreate getAll getAllVisible

Visibility (private, public) public public public

Keterangan Pembuatan database Menampilkan isi field dari tabel kategori Menampilkan isi field dari tabel kategori berdasarkan status kategori Menampilkan isi filed dari tabel kategori berdasarkan id Menambahkan data kedalam tabel kategori Mengupdate data dari tabel

getById insert update

public public public

85

deleteKategori getWritableDatabase getByIdRss getRssByKategori

public public public public

getAllVisibleRss

public

insertRss updatRss deleteRss Nama Atribut DATABSE_NAME SCHEMA_VERSION

public public public Visibility (private, public) private private

kategori Menghapus data dari tabel kategori Menyimpan data masukan Menampilkan isi filed dari tabel rss berdasarkan id Menampilkan isi field dari tabel rss berdasarkan nama kategori Menampilkan isi field dari tabel rss berdasarkan nama kategori Menambahkan data kedalam tabel rss Mengupdate data dari tabel kategori Menghapus data dari tabel kategori Tipe String Int

3.1.11. Analisis Dan Kebutuhan Non Fungsional Analisis dan kebutuhan non fungsional meliputi analisis dan kebutuhan perangkat keras serta analisis dan kebutuhan perangkat lunak. Adapun kebutuhan non-fungsional untuk menjalankan aplikasi content Aggregator meliputi kebutuhan perangkat keras,kebutuhan perangkat lunak dan pengguna sistem yang akan memakai aplikasi. Analisis kebutuhan non-fungsional bertujuan agar aplikasi yang dibangun dapat digunakan sesuai dengan kebutuhan pengguna aplikasi dalam mencari informasi yang dibutuhkan.

86

3.1.11.1. Analisis dan Kebutuhan Perangkat Lunak Spesifikasi perangkat lunak yang digunakan dalam pembuatan aplikasi content aggregator ini adalah : 1. Sistem Operasi Microsoft Windows 7 2. Eclipse Helios 3.1.11.2. Analisis dan Kebutuhan Perangkat Keras Untuk menjalankan suatu aplikasi maka diperlukan perangkat keras yang dapat mendukung proses kerja dari sistem itu sendiri. Spesifikasi perangkat keras yang digunakan dalam pembuatan aplikasi content aggregator ini adalah : 1. Processor 2. RAM 3. VGA 4. HDD 5. Monitor 3.2. Perancangan Sistem Perancangan akan dimulai setelah tahap analisis terhadap sistem selesai dilakukan. Perancangan dapat didefinisikan sebagai proses aplikasi berbagai teknik dan prinsip bagi tujuan pendefinisian suatu perangkat, suatu proses atau sistem dalam detail yang memadai untuk memungkinkan realisasi fisiknya. Perancangan digambarkan sebagai proses multi-langkah dimana representasi struktur data, struktur program, karakteristik interface, dan detail prosedur, disintesis dari persyaratan informasi. : Intel Core i3 M330 2.13GHz : 2 Giga : Onboard : 320 Giga : 14”

87

3.2.1.

Perancangan Data Perancangan data merupakan tahapan untuk memetakan model

konseptual ke model basis data yang akan digunakan. Perancangan data dari aplikasi mobile Content Aggregator merupakan perancangan struktur tabel dari tabel kategori. Struktur tabel kategori menggambarkan detail tabel yang berisi field, tipe data, panjang data, dan keterangan lainnya. Berikut ini gambaran struktur tabel pengaturan yang terlihat pada Tabel berikut:
Tabel 3. 14 Perancangan Data Kategori

Nama Field id namakategori status

Tipe Data int txt txt

Keterangan
Primary key

Tabel 3. 15 perancangan Data Rss

Nama Field id namakategori status url Site

Tipe Data int txt txt txt txt

Keterangan
Primary key

3.2.2.

Skema Relasi
kategori id namakategori statuskategori rss id namakategori url site statusrss

Gambar 3. 20 Skema Relasi

88

3.2.3.

Struktur Menu Perancangan struktur menu merupakan gambaran jalur pemakaian

aplikasi. Perancangan struktur menu dari aplikasi mobile Content Aggregator dapat dilihat pada gambar berikut ini.

View kategori Delete Kategori

Add Kategori View Feed RSS Add Kategori Edit Kategori Delete Kategori List Judul Berita

Edit Kategori

Tampil Berita

Gambar 3. 21 Struktur Menu aplikasi mobile Content Aggregator

3.2.4.

Perancangan Antarmuka Perancangan antarmuka (interface) menggambarkan bagaimana

perangkat lunak berkomunikasi dengan dirinya sendiri, dengan sistem yang berinteroperasi dengannnya, dan dengan manusia yang menggunakannya. 3.2.4.1. Perancangan Tampilan Perancangan form mendeskripsikan rencana tampilan dari setiap form yang akan digunakan pada tampilan aplikasi mobile Content Aggregator. Adapun gambaran dari perancangan antarmuka aplikasi mobile Content Aggregator. adalah sebagai berikut:

89

1.

Perancangan form Utama Gambaran umum dari perancangan antarmuka form utama pada

aplikasi mobile Content Anggregator dapat dilihat pada Gambar berikut ini
FA01 · Jika mengklik salah satu kategori maka akan keluar form yang menyediakan RSS yang sudah di inputkan oleh user Jika mengklik salah satu menu Add, Edit, Delete , maka akan menambah, mengedit, dan menghapus kategori

SPORT SELEBRITIS BOLA

·

Add

Edit

Delete

Ukuran Huruf 25px Font Serif

Gambar 3. 22 Tampilan Utama

90

2.

Perancangan Form View RSS Gambaran umum dari perancangan antarmuka form View RSS pada

aplikasi mobile content Anggregator dapat dilihat pada Gambar berikut ini
FAV01 · ALAMAT RSS ALAMAT RSS ALAMAT RSS · · · Isi dari konten Sport adalah berita-berita olah raga yang di dapat dari suatu web Jika tombol Add di klik maka akan tampil formi tambah alamat RSS Jika tombol Edit di klik maka akan tampil form edit alamat RSS Jika tombol Delete di klik maka akan menghapus alamat RSS

Add

Edit

Delete

· ·

Ukuran huruf 25px Font Serif

Gambar 3. 23 Tampilan Form View RSS

91

3.

Perancangan Form Pilih Judul Berita Gambaran umum dari perancangan antarmuka form Pilih Judul

Berita pada aplikasi mobile content Anggregator dapat dilihat pada Gambar berikut ini
FAP01 · Jika mengklik salah satu judul berita, maka akan tampil halaman suatu web site sesuai dengan judul yang di pilih

List dari judul berita

· ·

Ukuran huruf 25px Font Serif

Gambar 3. 24 Tampilan Form Pilih Judul Berita

92

4.

Perancangan Form Add Kategori Gambaran umum dari perancangan antarmuka form Add Kategori

pada aplikasi mobile content Anggregator dapat dilihat pada Gambar berikut ini
FAM01 · Nama Status Tampilkan Sembunyikan Save · · Jika pada status dipilih tampilkan, maka akan menampilkan kategori baru di menu utama Jika pada status dipilih sembunyikan, maka kategori tidak akan di tampilkan di menu utama Jika tombol save di di klik maka akan menyimpan data yang kita masukan kedalam database

· ·

Ukuran huruf 25px Font Serif

Gambar 3. 25 Tampilan form Add Kategori

93

5.

Perancangan Form Edit Kategori Gambaran umum dari perancangan antarmuka form Edit

Kategori pada aplikasi mobile content Anggregator dapat dilihat pada Gambar berikut ini
FAM02 · Nama Status Tampilkan Sembunyikan Save · · Jika pada status dipilih tampilkan, maka akan menampilkan kategori baru di menu utama Jika pada status dipilih sembunyikan, maka kategori tidak akan di tampilkan di menu utama Jika tombol save di di klik maka akan menyimpan data yang kita masukan kedalam database

· ·

Ukuran huruf 25px Font Serif

Gambar 3. 26 Tampilan Form Edit Kategori

94

6.

Perancangan Form Add RSS Gambaran umum dari perancangan antarmuka form Add RSS

pada aplikasi mobile content Anggregator dapat dilihat pada Gambar berikut ini
FAR01 · Site Feed RSS Status Tampilkan Sembunyikan Save · · Jika pada status dipilih tampilkan, maka akan menampilkan RSS baru di menu utama Jika pada status dipilih sembunyikan, maka RSS tidak akan di tampilkan di menu utama Jika tombol save di di klik maka akan menyimpan data yang kita masukan kedalam database

· ·

Ukuran huruf 25px Font Serif

Gambar 3. 27 Tampilan Form Add RSS

95

7.

Perancangan Form Edit RSS Gambaran umum dari perancangan antarmuka form Edit RSS

pada aplikasi mobile content Anggregator dapat dilihat pada Gambar berikut ini
FAR02 · Site Feed RSS Status Tampilkan Sembunyikan Save · · Jika pada status dipilih tampilkan, maka akan menampilkan RSS baru di menu utama Jika pada status dipilih sembunyikan, maka RSS tidak akan di tampilkan di menu utama Jika tombol save di di klik maka akan menyimpan data yang kita masukan kedalam database

· ·

Ukuran huruf 25px Font Serif

Gambar 3. 28 Tampilan Form Edit RSS