BAB 2 LANDASAN TEORI 2.1.Teori-Teori Dasar/Umum 2.1.1. Teknologi Smartphone Smartphone (ponsel pintar) merupakan sebuah high-endmobile phone di mana memiliki beberapa fungsi seperti personal digital assistant, alat telepon, multimedia, dan aplikasi komputer mobile yang telah dikombinasikan menjadi satu. Smartphone bisa menjalakan aplikasi yang memiliki kompleksitas yang lebih tinggi daripada phone biasa.Smartphone menyediakan sebuah host di mana akan memudahkan para user ketika ingin melakukan update software dan data plan yang sudah disediakan untuk beberapa pengguna tertentu. Secara lebih luas ini disebut sebagai ekosistem dari sistem development sebuah smartphone (M. Wargo, John, 2010). 2.1.2. System Development Life Cycle (SDLC) 2.1.2.1. Manajemen Proses Model (Waterfall) Model Waterfall adalah model yang muncul pertama kali yaitu sekitar tahun 1970, merupakan model yang paling banyak dipakai didalam Software Engineering. Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing/verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Sebagai contoh tahap desain harus
menunggu selesainya tahap sebelumnya yaitu tahap requirement. Secara umum tahapan pada model waterfall dapat dilihat pada gambar berikut:
Gambar 2.1. Tahapan Umum Proses Model Waterfall
Berikut adalah penjelasan dari tahap-tahap yang dilakukan di dalam model ini menurut Pressman: •
System/Information Engineering and Modeling. Permodelan ini diawali dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan ProjectDefinition.
•
Design. Proses ini digunakan untuk mengubah kebutuhan-kebutuhan diatas
menjadi
representasi
ke
dalam
softwaresebelum
pengkodean
dimulai.
bentuk Desain
“blueprint” harus
dapat
mengimplementasikan kebutuhan yang telah disebutkan pada tahap
sebelumnya. Seperti 2 aktivitas sebelumnya, maka proses ini juga harus didokumentasikan sebagai konfigurasi dari software. •
Code. Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui proses pengkodean. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya dikerjakan oleh programmer.
•
Test. Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan sebelumnya.
2.1.3. Unified Modelling Language (UML) Unified Modeling Language (UML) adalah sebuah perkakas untuk membantu pengembang sistem mengetahui sudut pandang untuk sebuah sistem, dan mengkomunikasikan ke pada orang-orang yang berhubungan dengan sistem dengan sekumpulan simbol dan diagram(Schmuller, 1999). UML adalah hasil temuan dari Grady Booch, James Rumbaugh, dan Ivar Jacobson pada tahun 1990-an.Pada tahun 1997, konsortium memproduksi UML versi 1.0. Dan setelah di setujui oleh OMG (Object Managemeng Group) UML menjadi standart dalam industri perangkat lunak dan terus berkembang. UML terdiri dari beberapa elemen grafis yang bergabung kedalam bentuk diagram.Tujuan dari diagram diagram adalah untuk mempresentasikan banyak sudut pandang dari suatu sistem. Sebuah model UML mendeskripsikan apa yang
seharusnya suatu sistem lakukan, bukan bagaimana cara mengimplementasikan sistem tersebut. Diagram-diagram pada UML: • Class Diagram • Object Diagram • Use Case Diagram • State Diagram • Sequence Diagram • Activity Diagram • Collaboration Diagram • Component Diagram • Deployment Diagram UML memiliki jumlah diagram yang banyak untuk memberi sudut pandang yang berbeda-beda pada orang-orang yang terlibat dengan sistem, namun tidak semua harus dibuat. Penelitian ini pun hanya melibatkan beberapa diagram, antara lain use case diagram, sequence diagram, dan class diagram.
2.1.3.1. Use Case Use case adalah sebuah koleksi dari beberapa skenario mengenai penggunaan sistem. Setiap skenario mendeskripsikan sebuah rentetan dari beberapa kejadian. Setiap rentetan kejadian diinisiasi oleh beberapa entitas. Entitas tersebut berupa orang, sistem, hardware, atau oleh waktu. Entitas yang menginisiasi rentetan kejadian ini dinamakan aktor. Sebuah use case harus menghasilkan sesuatu yang bernilai terhadap aktor yang menginisiasi atau aktor lainnya di dalam sistem.
Gambar 2.2. Notasi Aktor Pada Use Case Diagram
Inclusion Inclusion membuat hubungan antar use case dengan cara menggunakan kembali suatu use case dan masuk ke dalam use case lainnya.
Extension Extension membuat hubungan antar use case dengan cara mengizinkan dibuatnya sebuah use case baru dengan menambahkan beberapa langkah terhadap use case yang ada.
Gambar 2.3. Notasi Inclusion Dan Extension Pada Use Case Diagram
Generalization Generalization membuat hubungan inheritance. Inheritance di dalam use case, child use case mewarisi perilaku dan arti dari parent, dan menambahkan perilakunya sendiri.
Gambar 2.4. Hubungan GeneralizationClass Pada Use Case Diagram
Gambar 2.5. Hubungan Generalization Aktor Pada Use Case Diagram
2.1.3.2. Class Diagram Class adalah sebuah kategori atau grup dari sesuatu yang memiliki atribut yang sama dan perilaku yang sama. Di dalam bentuk diagram maka class diagram akan memperlihatkan hubungan-hubungan antar class yang ada di dalam sistem terkait. Class Diagram biasanya dijelaskan dengan gambar berbentuk kotak, dan di tiap kotak akan dibagi menjadi tiga area. Area paling atas berisi nama, area di tengah berisi atribut, dan area paling bawah berisi operasi. Dan masing-masing class diagram
akan
dihubungkan
dengan
garis
untuk
hubungan/relasi antar kelas yang berkaitan.
Gambar 2.6.Contoh Class Diagram Untuk Bagian Catur
menunjukkan
Nama Nama
kelas
adalah
hal
yang
wajib
dituliskan
untuk
merepresentasikan diagram kelas, karena dari nama tersebut akan terlihat kelas-kelas mana saja yang telah terdeklarasi dan masuk ke dalam sistem untuk kemudian akan saling berinteraksi sesuai dengan ketentuan yang ada.
Gambar 2.7. Bagian Nama Pada Class Diagram
Atribut Atribut adalah sebuah properti dari sebuah kelas. Atribut mendeskripsikan sebuah jarak atau tingkatan dari nilai yang dimiliki oleh objek di dalam kelas tersebut. Di dalam setiap kelas bisa memiliki nol atau atribut lebih dari satu. Setiap objek dari kelas memiliki sebuah nilai yang spesifik untuk setiap atribut. Di dalam menulis atribut maka akan ada nama atribut (attribute name) dan tipe atribut (attribute type).
Gambar 2.8.Bagian Atribut Pada Class Diagram
Operasi Operasi adalah sesuatu yang bisa lakukan oleh sebuah kelas terhadap sebuah kelas atau beberapa kelas lainnya.
Gambar 2.9. Bagian Method Pada Class Diagram
Asosiasi Secara konsep ketika sebuah kelas terhubung dengan kelas lainnya, hubungan itu disebut dengan asosiasi. Asosiasi divisualisasikan dengan garis yang menghubungkan sebuah kelas dengan kelas lainnya dan nama asosiasi di atas garis tersebut beserta arah asosiasi yang ditandai dengan arah panah.
Gambar 2.10. Contoh Asosiasi Pada Class Diagram
Inheritance Konsep inheritance merupakan konsep yang sangat penting di dalam sistem desain orientasi objek. Inheritance merupakan kemampuan dari sebuah kelas untuk mewarisi fungsi-fungsi yang identik dari kelas lainnya dan kemudian menambahkan fungsionalitas dari kelasnya sendiri.
Gambar 2.11. Contoh Inheritance Pada Class Diagram
2.1.3.3. Sequence Diagram Sequence diagram digunakan untuk memperlihatkan interaksi antara objek di dalam rangkaian perintah tempat dimana interaksi itu terjadi. Sequence diagram merupakan diagram yang memperlihatkan interaksi dinamis dari object di dalam sistem yang berdasarkan waktu (time-based) tempat dimana interaksi tersebut terjadi. Sequence diagram terdiri dari object yang direpresentasikan dengan bentuk kotak yang berisi nama yang di garis bawahi, message, dan time.
Object Object merupakan sebuah instance dari sebuah kelas. Object juga disebut sebagai sesuatu yang memiliki nilai spesifik terhadap atribut dan kelakuan (behavior) dari kelas tersebut. Object di dalam sequence diagram direpresentasikan dengan sebuah nama diagram di atasnya dan diikuti dengan garis putus-putus yang disebut dengan lifeline. Lifeline merupakan elemen notasi untuk mengetahui instance dan peran object yang berpartisipasi di dalam sequencediagram yang kemudian akan dimodelkan untuk menjadi kesatuan object yang utuh. Di dalam lifeline inilah yang akan menentukan sebuah object akan di aktivasi operasinya atau tidak yang dilambangkan dengan bentuk persegi panjang kecil. Dan panjang dari persegi panjang tersebut menandakan durasi dari aktivasi operasi yang akan dilakukan.
Gambar 2.12. Representasi Sebuah Object Pada Sequence Diagram
Message Message merupakan sebuah pesan yang disampaikan dari suatu object ke object lainnya melalui lifeline masing-masing object tersebut. Sebuah object juga bisa mengirimkan pesan (message) terhadap dirinya sendiri juga. Message di dalam sequence diagram dibagi menjadi empat jenis. Simple message, synchronous message, asynchronous message, dan return value.Simple message adalah transfer kontrol dari satu object ke object yang lain. Simple message dilambangkan dengan panah yang memiliki dua garis di kepala panahnya. Synchronous message merupakan transfer kontrol yang dikirim oleh suatu object ke object lainnya dan akan menunggu jawaban dari object target untuk bisa melanjutkan ke proses berikutnya. Synchronous message dilambangkan dengan panah yang memiliki bentuk penuh di kepala panahnya. Asynchronous message merupakan transfer kontrol yang dikirim oleh suatu object ke object lainnya dan tidak butuh untuk menunggu agar bisa melanjutkan ke proses berikutnya. Asynchronous message dilambangkan dengan panah yang memiliki bentuk setengah di kepala panahnya. Return value adalah pesan pengembalian nilai dari suatu object di dalam sequence diagram.
Gambar 2.13. Simbol Message Pada Sequence Diagram
Time Time di dalam sequence diagram mewakili acuan waktu terhadap message mana yang akan duluan memulai operasinya di object yang bersangkutan. Dan message yang posisinya paling atas dari object tersebut akan memulai operasinya paling awal dari yang lain di bawahnya. Sequence diagram memiliki dua dimensi, dimensi kiri ke kanan adalah layout dari object dan dimensi atas ke bawah adalah layout dari panjang lintasan waktu.
Gambar 2.14.Object Yang Terhubung Dengan Message Pada Sequence Diagram
2.1.4. ERD (Entity Relationship Diagram) Entity
Relationship
Diagram
(ERD)
adalah
model
data
yang
memanfaatkan beberapa notasi untuk menggambarkan data dalam hal entitas dan hubungan yang dideskripsikan oleh data tersebut. (Bentley, Whitten., 2007). Entitas Entitas adalah segala hal yang ingin kita simpan datanya. Entitas di gunakan untuk merepresentasikan hal-hal ini, yang bisa berarti orang, tempat, objek, kejadian, konsep atau hal apapun yang ingin diolah datanya. Di dalam sistem model ini akan sangat berguna untuk menetapkan setiap konsep abstrak ke dalam sebuah bentuk.
Atribut Atribut adalah sebuah sifat deskriptif atau karakteristik dari suatu entitas. Beberapa atribut secara logika bisa di masukkan ke dalam grup compound attribute. Key Attribute Untuk memastikan suatu entitas bisa dikenali secara unik dan didiferensiasikan dari semua kemungkinan, perlu di tentukan tipe atribut yang khas yang disebut key. Candidate key adalah satu dari sebuah angka dari key yang bisa digunakan sebagai primary key. Bila ada lebih dari satu candidate key maka harus di pilih satu sebagai primary key. Relationship Relationship adalah asosiasi antara satu atau lebih entitas yang menjadi kepentingan dari suatu organisasi atau lingkungan bisnis.
2.2.Teori Khusus 2.2.1. BlackBerry Perangkat mobile pintar yang menggabungkan sejumlah fungsi termasuk email, web browsing, text messaging, schedule management, dan mobile phone dalam satu handset portable. BlackBerry dikembangkan oleh Research in Motion dan dianggap sebagai salah satu pemimpin dalam industri perangkat pintar (smart device). Sejumlah perusahaan telah di ambil alih oleh BlackBerry
untuk mempertahankan komunikasi yang stabil dengan para pekerja dan kliennya. 2.2.1.1. Sejarah BlackBerry Perangkat
BlackBerry
yang
pertama
adalah
tipe
850,
diperkenalkan pada tahun 1999 sebagai pager dua arah di Jerman. Nama BlackBerry di berikan oleh perusahaan LexiconBranding. Pada tahun 2003, BlackBerry yang lebih umum diluncurkan dengan fasilitas-fasilitas yang lebih lengkap. BlackBerry memasuki pasar pertama kali dengan berfokus pada teknologi email. Dengan teknologi monochrome, tapi model-model yang ada sekarang memiliki tampilan warna. Semua model BlackBerry menggunakan keyboard QWERTY,kecuali tipe torch 9850.
BlackBerry pertama kali diperkenalkan di Indonesia pada pertengahan Desember 2004 oleh operator Indosat dan perusahaan Starhub (The Jakarta Post, 2008). Perusahaan Starhub merupakan perwakilan dari RIM yang merupakan rekan utama BlackBerry. Pasar BlackBerry kemudian diramaikan oleh dua operator besar lainnya di tanah air yakni Excelcom dan Telkomsel. Blackberry membuka kantor perwakilan di Indonesia pada November 2010.
2.2.1.2. Sistem Operasi BlackBerry Sistem Operasi yang digunakan oleh perangkat BlackBerry adalah lingkungan multitasking yang dikembangkan oleh RIM. Sistem Operasi ini dirancang untuk keperluan input seperti track-wheel, track-ball
dan track-pad. Sistem Operasi ini mendukung Java MIDP 1.0 dan WAP 1.2. OS 5.0 mendukung MIDP 2.0, dan memungkinkan koneksi wireless dan sinkronisasi data dengan email, calendar, tasks, notes, dan contacts. Sistem operasi yang terakhir sudah diluncurkan adalah OS 7, dan ada sistem operasi yang masih dalam pengembangan RIM yaitu BBX OS. 2.2.1.3. Teknologi Push BlackBerry Teknologi push adalah metode komunikasi di internet yang berbeda dengan teknologi pull yang biasanya digunakan, di mana pada teknologi ini, yang melakukan permintaan komunikasi adalah server, bukan klien. Pada konteks pengembangan aplikasi BlackBerry, teknologi ini merujuk pada kemampuan infrastruktur BlackBerry untuk mengirim data berdasarkan pada sebuah pemicu ke perangkat BlackBerry (Research in Motion, 2008). Teknologi push merupakan teknologi yang diunggulkan oleh BlackBerry di mana server memiliki kemampuan untuk mengirimkan konten secara proaktif atau "push" ke perangkat BlackBerry. Teknologi push ini sudah digunakan oleh BlackBerry sejak lama untuk melakukan push terhadap email sinkronisasi kalender. Pengembang perangkat lunak untuk solusi BlackBerry bisa membuat aplikasi yang mampu mengirim data ke perangkat BlackBerry mana pun untuk menyediakan informasi yang pengguna butuhkan. Sebuah layanan push data terdiri dari tiga komponen, antara lain (Research in Motion, 2008). 1.
The server side-push service: Penyedia konten mengembangkan sebuah layanan push yang menawarkan pengguna beberapa data
seperti informasi saham, laporan pertandingan olahraga, buletin berita, atau informasi perbankan. Ketika konten baru sudah tersedia, penyedia konten bisa mengirimkan sebuah permintaan push menggunakan standar WAP (Wireless Application Protocol) PAP (Push
Application
Protocol)
2.2
untuk
membuat
datanya
tersampaikan ke pengguna. 2.
A Client-side application: Penyedia konten mengembangkan sebuah aplikasi Java client-side yang bisa melakukan pengolahan data yang disampaikan melalui teknologi push BlackBerry. Aplikasi Java client-side ini memiliki sebuah listener yang menunggu data masuk dari server.
3.
The
BlackBerry
infrastructure:
Infrastruktur
BlackBerry
menyediakan middleware yang menerima permintaan untuk melakukan push data dari penyedia konten dan kemudian menyampaikan data yang diberikan keaplikasi tertentu pada perangkat BlackBerry yang dituju. Teknologi push BlackBerry memiliki kelebihan dan memberikan beberapa keuntungan, antara lain (Research in 1.
Motion, 2008).
Menyediakan informasi dengan segera (instan). Teknologi push BlackBerry merupakan metode yang paling efisien untuk melakukan penyampaian data ke pengguna perangkat BlackBerry. Dengan teknologi push BlackBerry, penyedia konten bisa menyampaikan atau mengirimkan data ke aplikasi Java clientside kapanpun tersedia.
Sebagai tambahan, penggunaan teknologi push BlackBerry mampu mengurangi efek buruk dari lambatnya jaringan. Karena jaringan nirkabel pada umumnya mempunyai lebar jalur data kecil daripada jaringan kabel, data transfer menjadi lebih lambat ketika dilakukan melalui koneksi nirkabel. Karena teknologi push BlackBerry melakukan pengiriman data melalui sistem background tanpa campur tangan pengguna, maka pengguna perangkat BlackBerry hanya memerlukan waktu sebentar untuk menerima data yang terkirimkan dari server. 2.
Mengoptimasi efisiesnsi jaringan Aplikasi BlackBerry yang telah menggunakan teknologi pushakan memiliki level efisiensi jaringan yang baik. Pertama, karena aplikasi tidak perlu melakukan pengecekan secara berulangulang ke server.Kedua, teknologi push BlackBerry didesain untuk bisa melakukan push data sebesar 8KB ke perangkat BlackBerry yang melakukan permintaan push. Jika data yang akan di push ke perangkat BlackBerry yang melakukan permintaan push lebih besar dari 8KB, maka pengguna bisa memutuskan untuk mendapatkan data tersebut atau tidak. Tentunya ini juga akan menghemat sistem pembayaran ketika menggunakan wireless data plan yang disediakan oleh BlackBerry.
3.
Menghemat energi baterai perangkat BlackBerry Penghematan baterai sudah dianggap sebagai sesuatu yang penting dalam pengembangan perangkat lunak untuk perangkat
nirkabel dengan sistem mobile. Untuk mendapatkan data yang dibutuhkan dari server beberapa aplikasi akan melakukan pull atau poll ke server untuk mengecek apakan data yang baru sudah ada atau belum. Aktivitas ini tentu saja akan menguras energi dari baterai. Penggunaan Teknologi push BlackBerry ini meminimalisasi dampaknya terhadap energi baterai. Walaupun aplikasi aktif melakukan pengecekan ke server untuk data yang baru, namun aplikasi hanya menjalankan proses tersebut di sistem background untuk mendapatkan data tersebut. 4.
Mengurangi kompleksitas untuk pengembang sistem Berdasarkan teknologi push BlackBerry standar WAP (Wireless Application Protocol) PAP (Push Application Protocol) 2.2 yang menggunakan XML untuk menentukan parameter permintaan push di dalam infrastruktur BlackBerry. Karena infrastruktur BlackBerry menangani proses dari pengaturan dan pengiriman permintaan push, kebanyakan kompleksitas dari layanan pengiriman data dengan menggunakan teknologi push BlackBerry disembunyikan dari aplikasi pengembang sistem.
5.
Meningkatkan pendapatan pengembang sistem Teknologi push BlackBerry yang telah dirilis dalam bentuk API (Application Programming Interface) menjadi bahan tambahan dalam sistem pengembangan aplikasi terhadap para pengembang
sistem BlackBerry dan membuatnya menjadi mudah untuk diakses. Pengaksesan terhadap penggunaan teknologi push BlackBerry ini membuat para pengembang sistem bisa mengeksploitasi fasilitas atau kemampuan yang unik dan hanya disediakan oleh infrastruktur BlackBerry. Beberapa aplikasi menarik yang bisa dibangun oleh para pengembang sistem seperti aplikasi-aplikasi yang menyertakan sistem transaksi, subscription, advertising. Bentuk aplikasi-aplikasi tersebut yang nantinya akan mendorong untuk meningkatkan traffic dan pendapatan sehingga tercapainya ROI (Return on Investment) terhadap para pengembang sistem.
Gambar 2.15. Proses PushPada BlackBerry (Research in Motion, 2008)
Deskripsi proses push pada BlackBerry:
1.
Penyedia konten mengirimkan permintaan (request) push ke infrastruktur BlackBerry.
2.
Infrastruktur BlackBerry mengembalikan respon ke penyedia konten dan mendaftarkan permintaan pengiriman data tersebut ke daftar antrian push.
3.
Infrastruktur BlackBerry melakukan push data ke perangkat BlackBerry yang telah ditentukan.
4.
Setiap
perangkat
BlackBerry
yang
menerima
push
data
mengembalikan respon ke infrastruktur BlackBerry. Respon ini merupakan konfirmasi penerimaan data. 5.
Infrastruktur BlackBerry meneruskan konfirmasi penerimaan push data ke penyedia konten.
6.
Notifikasi baca akan dikembalikan ke infrastruktur BlackBerry.
Teknologi ini digunakan untuk mengirimkan data terkait blog ke semua pengguna aplikasi Mobile Blog. Teknologi push BlackBerry yang akan diimplementasikan di dalam aplikasi Mobile Blog ini akan menggunakan fasilitas BIS (BlackBerry Internet Service) untuk bisa digunakan secara luas oleh para pengguna perangkat BlackBerry. 2.2.2. WebService Web Service adalah sebuah komponen aplikasi yang bisa diprogram dan diakses melalui protokol web standar. Web service memiliki beberapa kunci aspek-aspek sebagai berikut (Peiris, et al., 2007). 1.
Protokol standar: fungsionalitas ditunjukkan melalui antarmuka-antarmuka dengan menggunakan satu dari beberapa protokol internet standar seperti
HTTP, SMTP, FTP, dan sebagainya. Di dalam sebagian besar kasus, protokol yang digunakan adalah HTTP. 2.
Deskripsi layanan: web service perlu untuk mendeskripsikan antarmukaantarmukanya secara detail supaya klien tahu bagaimana untuk "mengkonsumsi" fungsionalitas yang telah disediakan oleh layanan. Deskripsi ini biasanya disediakan melalui sebuah dokumen XML yang disebut dokumen WSDL (Web Services Description Language).
3.
Menemukan layanan: pengguna perlu untuk mengetahui web service apa yang ada dan di mana untuk menemukannya agar klien dapat mengikat layanan dan menggunakan fungsionalitasnya. Satu jalan bagi pengguna untuk mengetahui layanan-layanan apa saja yang ada adalah dengan menghubungi daftar rincian "halaman kuning" dari layanan-layanan. Halaman-halaman
kuning
tersebut
diimplementasikan
melalui
penyimpanan penemuan universal (universal discovery), deskripsi, dan integrasi. Atau dengan kata lain serangkaian penyimpanan penemuan universal (universal discovery) tersebut disebut dengan (UDDI) yang bisa berupa node UDDI publik atau pribadi. Gambar 2.16. menunjukkan tumpukkan protokol dasar untuk web service. Interaksi dengan layanan akan mengikuti bentuk top-down, yaitu dari service discovery ke messaging, dalam menjalankan metode dari layanan.
Gambar 2.16. Tumpukan protokol pada web service (Peiris, et al., 2007) Sebagai sebuah web service yang dijalankan di komputer lainny, semua informasi relevan yang dibutuhkan oleh web service perlu untuk diteruskan ke mesin hosting layanan. Informasi tersebut kemudian akan diproses dan hasilnya dikirimkan ke klien. Siklus hidup dari web service mempunyai delapan langkah, seperti yang ditunjukkan pada gambar 2.17.
Gambar 2.17. Siklus hidup web service (Peiris, et al., 2007)
1.
Klien terhubung ke internet dan menemukan sebuah layanan direktori untuk digunakan.
2.
Klien terhubung ke layanan direktori untuk menjalankan sebuah query.
3.
Klien menjalankan query yang relevan terhadap layanan direktori untuk menemukan
web
service
yang
menawarkan
fungsionalitas
yang
diinginkan. 4.
Penyedia web service yang relevan dikontak untuk memastikan layanan masih valid dan tersedia.
5.
Bahasa deskripsi dari web service yang relevan diterima dan diteruskan kepada klien.
6.
Klien membuat sebuah instansi baru dari sebuah web service XML melalui kelas proxy.
7.
Pada waktu berjalannya aplikasi klien, terjadi serialisasi argumen-argumen dari metode layanan kedalam sebuah pesan SOAP (Simple Object Access Protocol) dan mengirimkannya ke web service melalui jaringan.
8.
Metode yang diminta dieksekusi, yang kemudian mengembalikan nilai termasuk semua parameter keluar.
2.2.3. PHP PHP, Hypertext Preprocessor adalah sebuah bahasa pemrograman (scripting language) untuk mengembangkan aplikasi berbasiskan web dan bisa disisipkan kedalam HTML (Hyper Text Markup Language). Bahasa pemrograman ini bersifat open-source sehingga bisa digunakan oleh banyak orang ataupun developer yang ingin mengembangkan aplikasi yang ada hubungannya dengan web dengan dinamis dan cepat.
Syntax yang digunakan di dalam PHP diambil berdasarkan bahasa pemrograman C, Java, dan Perl. Di syntax tersebut juga sudah mendukung bentuk sistem OOP (Object Oriented Programming). Penggunaan pemrograman PHP di dalam pembuatan aplikasi skripsi ini adalah untuk membuat sistem web service yang menghubungkan konten yang ada di aplikasi klien ke database yang ada di server. 2.2.4. SQLite SQLite adalah sebuah software library yang mengimplementasikan self contained, tanpa server, tanpa konfigurasi, dan transactional SQL database engine. SQLite adalah database engine terbesar yang ada di dunia. Tidak seperti kebanyakan database SQL lainnya, SQLite tidak memiliki proses server yang terpisah, SQLite menulis dan membaca langsung dari penyimpanan data lokal. Format database SQLite dapat dijalankan pada platform manapun. 2.2.5. MySQL MySQL atau biasa di sebut My Sequel adalah suatu relational database management system yang berjalan pada server yang melayani banyak user. Singkatan dari SQL adalah Structured Query Language. MySQL telah menjadi pilihan yang populer digunakan pada aplikasi web dan telah terintegrasi dengan Linux, Apache, Perl, PHP, Phyton. MySQL telah digunakan oleh website yang sering dikunjungi oleh banyak orang seperti Flickr, Nokia, Youtube, Google, Facebook, Twitter. 2.2.6. JSON
JSON (JavaScript Object Notation) adalah sebuah format data berbasis teks yang ringan dan dirancang agar mudah dibaca dan ditulis oleh manusia, ataupun oleh mesin. Format datanya yang ringan sangatlah cocok digunakan untuk pertukaran data antara aplikasi mobile dan web server. JSON memiliki 4 tipe data primitif (string, number, boolean, null) dan 2 tipe data struktur (object dan array). Meskipun format penulisan JSON menyerupai format object literal pada JavaScript, JSON bukanlah JavaScript. JSON dapat digunakan pada bahasa dan platform apapun. 2.2.7. Blog Blog adalah catatan harian atau jurnal pribadi di internet yang dapat diakses oleh siapa saja. (2008, KBBI). Aktivitas di dalam blog disebut me.nge.blog. Blo.ger adalah sebutan untuk orang yang mengeblog atau bisa juga disebut pengeblog. 2.2.7.1. Sejarah Blog
Pada tahun 1997, Jorn Barger, seorang programmer yang juga pengelola websiteonlinediary“robot wisdom” menciptakan istilah weblog yang diambil dari kata “logging the web”. Korelasinya adalah bloger pada saat itu merupakan orang yang masuk ke dalam website dan menyortir link menarik berdasarkan opininya.
Hingga
1998,
baru
ada
beberapa
website
yang
dapat
diidentifikasikan sebagai blog, pada saat itu menjelajahi semua weblog masih memungkingkan untuk di lakukan.
Pada tahun 1999, Peter Merholz menyebutkan istilah weblog sebagai wee-blog, hingga akhirnya dibuat pendek menjadi blog saja. Orang yang mengelola blog kemudian di sebut sebagai “bloger”.
Dari titik itulah semuanya berubah. Semakin hari, semakin banyak orang yang membuat blog. Pertumbuhan blog menjadi semakin signifikan ketika Pitas merilis Blogger.com pada Juli 1999. Blogger.com merupakan web service yang memungkinkan orang yang bahkan tidak memiliki kemampuan html sekalipun mampu menciptakan dan mengelola blog.
Di titik ini, blog benar-benar berubah. Bahkan definisi blog mulai bergeser. Blog yang awalnya merupakan kumpulan link yang dikomentari oleh pemilik blog, mulai bergeser menjadi media ekspresi bebas sesuai keinginan pemilik blog yang ditampilkan secara kronologis terbalik.
2.2.7.2. Tipe Blog
Ada banyak tipe blog, dan dapat dibagi bukan hanya berdasarkan tipe konten, tapi juga dari cara konten itu di sampaikan atau di tulis
Personal blogs
Personal blogs, berbentuk seperti diary atau komentar-komentar yang berasal dari perorangan, tipe ini merupakan bentuk paling umum dan konvensional. Blog sering kali bukan hanya menjadi cara berkomunikasi, tapi menjadi gambaran dari hidup mereka sendiri.
Corporate and organizational blogs
Blog yang digunakan secara internal untuk mengkomunikasian budaya dalam suatu perusahaan, atau secara eksternal untuk tujuan marketing, branding atau publicrelations. Serupa dengan blog untuk klub atau perkumpulan yang bisa di sebut clubblogs, groupblogs, atau disamakan dengan nama klub.
By Genre
Beberapa blog fokus pada beberapa topik tertentu, seperti politik, travel (biasa di sebut travelogs), fashion, education, musik. Dan ada blog yang bertujuan untuk spamming (Splog).
By device
Blog bisa juga dijabarkan berdasarkan tipe device yang digunakan. Sebuah blog yang ditulis dalam perangkat mobile seperti mobilephone atau PDA biasa disebut moblog. Ada pula blog dengan perangkat wearablewirelesswebcam, yang menyebarkan online diary dari kehidupan seseorang.