2012-1-00109-IF Bab 2
2012-1-00109-IF Bab 2
LANDASAN TEORI
Wireless merupakan jaringan tanpa kabel yang menggunakan udara sebagai media untuk
sebenarnya telah dimulai sejak lama dan telah dibuktikan secara ilmiah oleh para ilmuan dengan
penemuan radio dan kemudian dilanjutkan dengan penemuan radar. Kemudian dengan
perkembangan kebutuhan informasi bagi manusia, maka penggunaan wireless semakin banyak
dan tidak hanya untuk penggunaan radio dan radar saja. Beberapa model peralatan yang
1. Telepon selular
Layanan yang disediakan untuk aplikasi bergerak dan mudah dibawa, baik untuk
Digunakan untuk memudahkan pengguna lalu lintas, seperti mobil, pesawat kapal laut
dan lainnya
konektornya pada CPU, terkadang mengalami juga kerusakan pada konektornya. Mouse
Teknologi wireless juga dipakai oleh perusahaan telekomunikasi yaitu berupa Telepon
5. Remote Control
Berupa alat tanpa kabel yang digunakan untuk mengendalikan peralatan dari jarak jauh,
6. Satelit televisi
Memberikan layanan siaran sehingga penonton dapat memilih saluran yang berbeda.
7. Wireless LAN
Wireless LAN adalah teknologi LAN dengan udara sebagai media transmisinya sehingga
memberikan layanan fleksibellitas dan relibilitas untuk para pengguna komputer dalam
Menurut Hapnes Toba (Jurnal Informatika UKM, No. 1, 2005: 46) keuntungan teknologi
wireless untuk sebuah perusahaan adalah karena harga peralatan wireless semakin terjangkau
dan adanya dukungan dari fasilitas fasilitas yang tersedia untuk mendukung perkembangan dari
aplikasi wireless, maka perlu untuk diperhitungkan berberapa keuntungan atau nilai tambah yang
1. Aksesibilitas
mengakses email, data data customer, jadwal kerja, dan lain lainnya. Dengan
Pengiriman data dari dan ke perusahaan dapat dilakukan dengan cepat, sehingga
3. Produktivitas meningkat
Meningkatnya kesempatan untuk mengakses informasi dimana saja dan kapan saja, tentu
saja akan meningkatkan produktivitas para karyawan, terutama bagi mereka yang sering
Diharapkan tercapai dengan strategi nirkabel adalah tingkat responsi yang tinggi, yaitu
mendapatkan informasi yang diinginkan secara tepat dan meneruskannya pada yang
memerlukan.
2.2 Android
Android adalah sistem operasi open source yang dikembangkan untuk perangkat mobile
seperti smartphone dan komputer tablet . Android didalamnya sudah mencakup sistem operasi,
1. ApplicationFramework
2. Dalvicvirtualmachine(DVM)
3. Browseryangterintegrasi
4. Grafikyangteroptimasi
5. SQLite
6. Mendukungmediamediasepertisuara,video,dangambar
7. TelefonGSM
8. Bluetooth,3G,WIFI(Tergantungdariperangkatkeras)
9. Kamera,GPS,kompas,accelerometer(Tergantungdariperangkatkeras)
Arsitekturdariandroidituterdiridari4komponenkomponen:
1. Applications
aplikasi yang ada. Pada layer tersebut terdapat sekumpulan aplikasi inti seperti email,
2. ApplicationFramework
kepada para pengembang untuk membangun suatu aplikasi yang bisa berjalan di android.
Tiap pengembang bebas untuk mengakses perangkat keras, akses informasi resources,
3. Libraries
Merupakan layer di mana fitur-fitur yang disediakan oleh android berada, biasanya para
SSL dan WebKit yang terintegrasi dengan web browser dan security
web view
4. Android Runtime
Merupakan layer yang membuat aplikasi android dapat dijalankan, Setiap aplikasi
android berjalan dengan prosesnya sendiri. DVM merupakan mesin yang membentuk
dasar kerangka aplikasi android. DVM bergantung pada kernel dari linux untuk
Core Libraries
Aplikasi android dibangun dengan menggunakan bahasa Java, sementara DVM
Dalvicvirtualmachine(DVM)
merupakan sebuah Virtual mesin yang berbasis register yang dioptimalkan untuk
yang mampu membuat Linux kernel untuk melakukan threading dan manajemen
tingkat rendah.
5. Linux Kernel
Adalah layer dimana inti dari sistem operasi Android itu berada. Berisi file-file sistem
yang mengatur pemrosesan sistem, memory, resource, drivers, dan sistem-sistem operasi
Android. Linux kernel yang digunakan Android adalah Linux kernel rilis 2.6.
Gambar 2.1 Komponen komponen arsitektur android
(source:http://developer.android.com/guide/basics/whatisandroid.html)
Menurut Mike Liu (2010, p8) web service adalah sebuah sistem perangkat lunak yang
dibangun untuk mendukung interaksi antar sistem yang berada di dalam suatu jaringan. Web
service digunakan sebagai suatu fasilitas yang dirancang untuk menyediakan layanan (dalam
bentuk informasi) kepada sistem lain, sehingga sistem lain dapat berinteraksi dengan sistem
tersebut melalui servis yang disediakan oleh system tersebut. Sebuah web servis biasanya berada
di sebuah remote machine dan akan dipanggil oleh aplikasi klien melalui jaringan. Komunikasi
antara web servis dengan apliaksi klien adalah dengan menggunakan pesan ExtensibleMarkup
Language (XML), sehingga web servis dapat berkomunikasi dengan aplikasi klien lain
walaupun berbeda platform. Sebuah web servis itu berada di dalam sebuah web server dan
menggunakanHTTPsebagaiprotocoluntukmelakukantransportasiantaraserverdenganaplikasiklien.
Prinsipprinsipdariwebserviceadalah:
1. Penyedia web service mendefiniskan format untuk setiap permintaan yang dikirimkan oleh
suatusistemkewebserviceuntukmemanggilsuatuservis.
2. Web service akan melakukan suatu aksi dan kemudian mengirimkan respon ke pengirim
permintaan.
Web service bertujuan untuk meningkatkan kerja sama antar program dan yang
memungkinkan sebuah fungsi di dalam Web Service dapat dipinjam oleh aplikasi lain tanpa
Menurut Menurut Mike Liu (2010, p8) agar web servis dapat dipanggil oelh apliaksi
klien, maka setiap web servis harus memberikan sebuah deskripsi tentang dirinya sendiri supaya
aplikasi aplikasi lain dapta mengetahui bagaimana cara memanggil web servis. Diskripsi ini
disediakan oleh bahasa yang disebut sebagai Web service description language (WSDL).
Bahasa WSDL itu dalam format XML yang mendefinisikan dan mendeskripsikan fungsi
fungsi dari web servis, termasuk metode, nama, nama parameter dan tipe, dan tipe data
Menurut Mike Liu (2010,p7) service oriented architecture (SOA) bukan merupakan
suatu teknologi yang spesifik ataupun sebuah bahasa pemograman yang spesifik. SOA hanya
sebuah blueprint atau sebuah pendekatan desain sistem. SOA adalah sebuah model arsitektural
yang bertujuan untuk menambah kecepatan, dan produktifitas dari sistem perusahaan. SOA
pengintegrasian aplikasi tanpa perlu tahu detil dari implementasinya. Untuk mencapai
SOA membiarkan kita untuk focus pada cara kita untuk menyelesaikan masalah
malalah bisnis dengan menggunakan kembali komponen komponen yang sudah ada dan
perubahan bisnis yang begitu cepat dan tidak dapat diprediksi. SOA menyediakan kecepatan
untuk bereaksi terhadap perubahan kondisi bisnis tersebut. Jadi SOA dapat dengan cepat
Tujuan dari SOA adalah melakukan organisasi dan memanfaatkan fungsi fungsi yang
menggunakan teknologi yang berbeda. Jadi kebutuhan orang atau organisasi dapat dipenuhi
dengan menggunakan kemampuan yang ditawarkan oleh orang lain. SOA membuat aplikasi
aplikasi yang terletak ditempat yang berbeda dan dibuat dengan bahasa pemograman yang
memungkinkan aplikasi aplikasi yang beada di dalam suatu lingkungan terdistribusi untuk
berkomunikasi satu sama lain. WCF digunakan untuk membangun suatu aplikasi berorientasi
servus. WCF memungkinkan pengembang aplikasi untuk membagun suatu aplikasi yang aman,
dapat diandalkan.
(Sumber : http://msdn.microsoft.com/en-us/library/ms733128.aspx)
2.6 Unified Modeling Language
Unified Modeling Language (UML) adalah sebuah bahasa yang sudah menjadistandar
dalam merancang sebuah model dari perangkat lunak yang berorientasi pada objek. Menurut
Joseph Schmuler(2004, p5) UML merupakan sebuah alat untuk membangun sebuah jembatan
dimana UML membantu kita untuk membuat sebuah blue print yang digunakan untuk
menangkap visi dari sitem secara standar, mudah di mengerti, dan dapat digunakan untuk
berkomunikasi dengan setiap stakeholder di dalam sistem tentang visi dari sistem tersebut.
aplikasi perangkatlunakpadasaatanalisisdandesain
Hasil yang dihasilkan setelah kita melakukan analisis dan desain sistem dengan menggunakan
UML disebut sebagai sebuah model. Model memberikan pemahaman yang lebih baik tentang sistem
yangsedangdibangundanjugamembantukitauntukmemastikanbahwassistemyangkitabangunitu
sesuai dengan kebutuhan. Model UML memungkinkan desain sebuah aplikasi untuk dievaluasi dan
dikritik sebelum dilakukan implementasi. Perubahan jauh lebih mudah dan lebih murah untuk
Menurut Joseph Schmuler (2004, p53) sebuah use case adalah sebuah deskripsi dari
sistem dari sudut pandang user. Untuk seorang pengembang sistem, use case adalah sebuah alat
yang penting.
Diagramusecaseitubiasadigunakan olehseorangpengembangsistemuntukmengumpulkan
kebutuhankebutuhandarisistemyangingindibuatdarisudutpandanguser.Kemudianpengembang
akanmelakukananalisaterhadapkebutuhandariklientersebutdenganmenentukanaktoraktorapa
sajayangterlibatdidalamsistematauyangakanmenggunakansistemdanjugamenentukanproses
proses apa saja yang ada di dalam sistem. Dan kemudain hasil nya akan ditunjukan ke user untuk
melakukanverifikasiapakahsudahsesuaidengankeinginanuser.Diagramusecaseituterdiridari:
1. Aktor
2. Usecase
Sebuah use case merepresentasikan operasi-operasi yang dilakukan oleh actor. Use
case digambarkan berbentuk elips dengan nama operasi dituliskan di dalamnya. Garis yang
menghubungkanaktordenganusecasemenunjukan bahwaadanyakomunikasiantaraaktordengan
usecase
menggunakanusecaseadalahdiagramusecasemenunjukanbatasanbatasanantarasistemdengan
dunialuar.Aktorsecaratipikalituberadadiluarsistemdanusecaseituadadidalamsistem.
Class diagram merupakan diagram yang selalu ada di permodelan sistem berorientasi
objek. Class diagram menunjukkan hubungan antar kelas dalam sistem yang sedang dibangun
dan bagaimana mereka saling berkolaborasi untuk mencapai suatu tujuan. Dalam class diagram
setiap kelasitu diwakili dengan sebuah kotak yang berisi tiga bagian
3. Bagian bawah berisi metode atau operasi yang kelas tersebut dapat lakukan
Gambar 2.6 notasi kelas di dalam kelas diagram
Pada kelas diagram terdapat simbol simbol yang menunjukan visibility dari atribut atau operasi yang
adadidalamsuatukelas:
1. Simbol+menunjukanpublcyangartinyaatributatauoperasitersebutdapatdiaksesolehkelas
lain
2. Simbol menunjukan private yang artinya atribut atau operasi tersebut hanya dapat diakses
olehkelasitusendiri
kelasitusendiridankelasturunannya
Sequence diagram menggambarkan sekelompok objek dan interaksi antar objek tersebut,
termasuk pesan yang dikirim dari satu objek ke objek lain terhadap waktu.
Sequence diagram adalah suatu diagram yang menggambarkan interaksi antar obyek dan
serangkaian pesan yang dipertukarkan oleh obyek-obyek yang melakukan suatu tugas atau aksi
tertentu. Obyek-obyek tersebut kemudian diurutkan dari kiri ke kanan, aktor yang menginisiasi
Pada diagram ini, dimensi vertikal merepresentasikan waktu. Bagian paling atas dari
diagram menjadi titik awal dan waktu berjalan ke bawah sampai dengan bagian dasar dari
diagram. Garis Vertical, disebut life line, dilekatkan pada setiap obyek atau aktor. Kemudian,life
line tersebut digambarkan menjadi kotak ketika obyek melakukan suatu operasi , kotak tersebut
disebut activation box. Obyek dikatakan mempunyai live activation pada saat tersebut. Pesan
yang dipertukarkan antar obyek digambarkan sebagai sebuah anak panah antara activation box
pengirim dan penerima. Kemudian diatasnya diberikan label pesan. Tujuan penggunaan
1. Mengkomunikasikan requirement kepada tim teknis karena diagram ini dapat lebih
2. Merupakan diagram yang paling cocok untuk mengembangkan model deskripsi use-
1. Pada tahap penemuan : Sequence diagram dari use case yang dipilih dibuat oleh business
analyst.
2. Pada tahap konstruksi : System analyst menggunakan use case dan sequence diagram
yang dibuat oleh Business Analyst sebagai input untuk pembuatan technical sequence
3. Pada tahap verifikasi dan validasi akhir : sequence diagram digunakan untuk merancang
yangterjadididalamsebuahoperasiatausebuahproses.
Diagramdiagramyangadadidalamactivitydiagram:
1. Initialstate
Menyatakan awal dari dimulainya suatu aktifitas. Di dalam aktifitas diagram hanya terdapat 1
initialstate.
2. Finalstate
Menyatakanakhirdarisuatuaktifitas
3. Activity
Mengambarkanaktifitasyangterjadididalamsebuahoperasiatauproses
Gambar 2.9 Activity
4. Percabangan
bentukpermata.Setiappercabanganmemiliki1aluryangmasukdan2ataulebihaluryangkeluar.
Pada tahun 2001, banyak pencipta dari metodologi agile software development
berkumpul bersamasama dengan orang lain yang juga menerapkan metode agile di lapangan untuk
baik untuk memproduksi perangkat lunak. Bahkan sampai sekarang ini agile software development
and helping others do it. Through this work we have come to value:
That is, while there is value in the items on the right, we value the
Dibalik Manifesto itu sendiri ada terdapat sekumpulan prinsip inti yang berfungsi sebagai
kerangkakerja umumuntuksemuametodologiagilesoftwaredevelopment
lunakyangbergunayanglebihcepatdandilakukansecaraterusmenerus.
2. Menrima perubahan dari kebutuhan, bahkan di saat saat terakhir pada proses
pengembangan.
3. Perangkatlunakyangberjalanmerupakanukuranyangutamauntukkemajuan
4. Sering mengirimkan perangkat lunak yang sudah berjalan, dari beberapa minggu sampai
beberapa bulan
5. Stakeholderdanpengembangharusbekerjabersamasamasetiapharinyaselamasiklushidup
proyek.
6. Membangunproyekdisekitarorangorangyangbermotivasi.Berikanmerekalingkungandan
dukunganyangmerekabutuhkan,danpercayabahwamerekaakanmenyelesaikantugasnya
7. Metode yang paling baik untuk menyampaikan informasi ke tim pengembang adalah
percakapantatapmuka
8. Prosesagilemempromosikanpengembanganyangberkelanjutan
9. Perhatian terus menerus untuk keunggulan teknis dan desain yang baik untuk meningkatkan
kecepatan.
10. Simplicity
11. Arsitektur terbaik, kebutuhan kebutuhan , dan rancangan muncul dari tim yang
12. Secara periodik tim evaluasi diri dan mencari cara untuk lebih efektif dan segera
melakukannya
Metode Agile memecah tugas tugas ke dalam iterasi iterasi yang kecil dengan
Iterasi adalah sebuah bingkai waktu yang singkat yang biasanya berlangsung dari satu sampai empat
minggu. Setiap iterasi melibatkan tim untuk bekerja melalui siklus pengembangan perangkat lunak,
termasuk perencanaan, analisis kebutuhan, desain, coding, pengujian, dan pengujian penerimaan
ketika sebuah produk yang sudah berjalan untuk ditunjukan kepada stakeholder. Ini meminimalkan
resiko secara keseluruhan dan memungkinkan proyek tersebut untuk beradaptasi dengan perubahan
kebutuhan yang cepat. Sebuah iterasi mungkin tidak cukup untuk menambahkan fungsi untuk
menjamin sebuah perangkat lunak yang bisa dirilis ke pasar, tetapi tujuannya adalah untuk memiliki
2.7.2 Scrum
Scrum adalah sebuah metode agile project management yang mulai banyak digunakan
secara luas. Menurut DeanLeffingwell (2011, p15) berikut ini adalah kunci dari praktek scrum :
1. Setiap pekerjaan diselesaikan melalui sebuah sprint yang memiliki bingkai waktu yang
2. Pekerjaan untuk setiap sprint itu sudah tetap. Setelah ruang lingkup dari sebuah sprint
sudah ditentukan maka tidak ada fungsi fungsi tambahan yang bisa ditambahkan
3. Semua pekerjaan yang perlu diselesaikan disebut sebagi sebuah produk backlog, yang
4. Seorang scrum master melakukan mentor kepada tim tim pengembang yang
bertanggung jawab untuk menyampaikan sebuah hasil yang sukses untuk setiap sprint
6. Stand-up meeting yang dilakukan setiap harinya merupakan metode komunikasi yang
utama.
7. Fokus berat ditempatkan pada sebuah kotak waktu. Sprint, standup meeting, review dari
8. Biasanya lama waktu dari setiap sprint pada scrum adalah 30 hari dan kira kira akan
Didalam sebuah proyek scrum, ada terdapat 3 peran inti ynag berkomitmen pada proyek
ini :
1. Pemilik produk
Pemilik Produk mewakili suara pelanggan dan bertanggung jawab untuk memastikan bahwa
Tim memberikan nilai bagi bisnis. Bertanggung jawab atas aspek bisnis dari proyek, termasuk
memastikan produk yang sedang dibangun itu sudah sesuai dan dalam urutan yang benar.
Seorang pemilik produk yang baik dapat menyeimbangkan prioritas yang bersaing, tersedia
2. ScrumMaster(managerproyek)
danmasalah.
3. Team
2.8 Database
Pengertian database menurut Connoly dan Begg (2002, p14) adalah sekumpulan data
maupun keterangan tentang data, yang secara logis saling berhubungan untuk digunakan
Menurut James A. O'Brien (2003, p145), database adalah sebuah kumpulan yang
terintegrasi dari elemen data yang terhubung secara logikal. Elemen data mendeskripsikan
Jadi database merupakan kumpulan dari data - data yang saling berhubungan satu dengan
yang lainnya, tersimpan dalam perangkat keras komputer dan menggunakan sebuah perangkat
lunak yang dapat mendefinisikan, membuat, memelihara dan mengontrol akses ke database.
Bahasa yang digunakan dalam mendefinisikan struktur atau kerangka dari basis
data, di dalamnya termasuk record, elemen data, kunci elemen, dan relasinya.
Create Table, digunakan untuk membuat sebuah table di dalam database dengan
Alter Table, digunakan untuk menambah atau membuang kolom dari konstrain.
Drop Table, digunakan untuk membuang atau menghapus table berserta semua
Bahasa yang digunakan untuk menjabarkan pemrosesan dari basis data, fasilitas
Menyediakan sebuah katalog yang berisi deskripsi item data yang disimpan dan
Melayani recovery
Melayani autorisasi
Sebuah DBMS harus menyediakan mekanisme yang menjamin basis data ter-
Melayani integrity
Sebuah DBMS bertujuan untuk menjamin semua data dalam basis data dan setiap
2.9 Java
Java adalah bahasa pemrograman tegas dirancang untuk digunakan dalam lingkungan
terdistribusi. Java dapat digunakan untuk membuat aplikasi lengkap yang dapat berjalan pada satu
Microsystems sejak tahun 1991. Bahasa ini dikembangkan dengan model yang mirip dengan
bahasa C++ dan Smalltalk, namun dirancang agar lebih mudah dipakai. Bahasa ini juga
dirancang untuk pemrograman di Internet sehingga dirancang agar aman dan portabel.
Popularitas java yang cepat naik dan penerimaannya luas dikarenakan Javaadalah teknologiyang
mereka.
JavaScript Object Notation (JSON) adalah format untuk melakukan 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:
Kumpulan pasangan nama/nilai. Pada beberapa bahasa, hal ini dinyatakan sebagai objek
rekaman struktur, kamus, tabel hash (hash table), daftar berkunci (keyed list), atau
associative array.
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 saat ini telah mendukung struktur data ini dalam bentuk yang sama
maupun berlainan. Hal ini pantas disebut demikian karena format data mudah dipertukarkan
dengan bahasa-bahasa pemprograman yang juga berdasarkan pada struktur data ini.
1. Objek adalah sepasang nama/nilai yang tidak terurutkan. Objek dimulai dengan { (kurung
kurawal buka) dan diakhiri dengan } (kurung kurawal tutup). Setiap nama diikuti dengan
2. Array adalah kumpulan nilai yang terurutkan. Larik dimulai dengan [ (kurung kotak
buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan oleh , (koma).
3. 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
4. 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.
(Sumber : http://www.json.org/)