bab ii tinjauan pustaka - potensi utama repository

advertisement
BAB II
TINJAUAN PUSTAKA
II.1. Aplikasi
Aplikasi menurut Jogiyanto adalah penggunaan dalam suatu komputer, instruksi
(instructiom) atau pernyataan (statement) yang disusun sedemikian rupa sehingga komputer
dapat memproses input menjadi output.(Ihsanudinet al;2014:2)
II.2. Informasi
Informasi adalah data yang telah diolah menjadi bentuk yang lebih berarti bagi
penerimanya. Data adalah kenyataan yang menggambarkan kejadian-kejadian dan kesatuan
nyata. Kejadian adalah sesuatu yang terjadi pada saat tertentu.(Fahrudinet al;2011:2)
II.3.Akademik
Kata akademik berasal dari bahasa Yunani yakni Academos yang berarti sebuah taman
umum (plasa) di sebalah barat laut kota Athena. Nama Academos adalah nama seorang pahlawan
yang terbunuh pada saat perang legendaris Troya. Pada plasa inilah filosof Socrates berpidato
dan membuka arena perdebatan tentang berbagai hal. Tempat ini juga menjadi tempat plato
melakukan dialog dan mengajarkan pikiran-pikiran filosofisnya kepada orang-orang yang
datang.
Sesudah itu, kata Acadomos berubah menjadi akademik, yaitu semacam tempat
perguruan. Para pengikut perguruan disebut Academist, sedangkan perguruan semacam itu
disebut Academia. Berdasarkan hal ini, inti dari pengertian akademik adalah menyampaikan dan
menerima gagasan, pemikiran, ilmu pengetahuan, dan sekaligus dapat mengujinya secara jujur,
terbuka, dan leluasa.
II.4. Android
Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang
mencakup sistem operasi, middleware dan aplikasi. Android menyediakan platform terbuka bagi
para pengembang untuk menciptakan aplikasi mereka. Awalnya Google inc membeli android inc
yang merupakan pendatang baru yang membuat piranti lunak untuk ponsel/smartphone.
Kemudian untuk mengembangkan android, dibentuklah Open Handesti Alliance, konsorium 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 Handest Alliance menyatakan mendukung pengembangan open
source pada perangkat mobile. Di lain pihak, Google merilis kode – kode android dibawah
lisensi Apache, sebuah lisensi perangkat lunak dan open platform perangkat seluler. (Safaat H&
Nazruddin;2012)
Gambar II.1. Android 6.0 Marshmallow Versi Android Terbaru
(http://collegemag.net)
Aplikasi Android ditulis dalam bahasa pemrograman java, yaitu kode java yang
terkompilasi bersama-sama dengan data dan file-file sumber yang dibutuhkan oleh aplikasi yang
digabungkan oleh app tools menjadi paket aplikasi Android, sebuah file yang ditandai dengan
akhiran .apk file inilah yang didistribusikan sebagai aplikasi dan diinstal pada handset Android.
(Ahmad;2015:191)
II.4.1.Arsitektur Android
Gambar II.2. Arsitektur Android
(Hartono;2013:23)
Arsitektur Android seperti yang ditunjukkan pada Gambar terdiri dari 5 bagian utama,
yaitu Application dan Widgets, Application Framework, Libraries, Android Runtime, dan Linux
Kernel.(Hartono;2013:23)
II.4.2.Versi Android
Versi Android diawali dengan dirilisnya Android beta pada bulan November 2007. Versi
komersial pertama, Android 1.0, dirilis pada September 2008. Android dikembangkan secara
berkelanjutan oleh Google dan Open Handset Alliance (OHA), yang telah merilis sejumlah
pembaruan sistem operasi ini sejak dirilisnya versi awal.
Sejak April 2009, versi Android dikembangkan dengan nama kode yang dinamai berdasarkan
makanan pencuci mulut dan penganan manis. Masing – masing versi dirilis sesuai urutan alfabet,
yakni Cupcake (1.5), Donut (1.6), Eclair (2.0–2.1), Froyo (2.2–2.2.3), Gingerbread (2.3–2.3.7),
Honeycomb (3.0–3.2.6), Ice Cream Sandwich (4.0–4.0.4), Jelly Bean (4.1–4.3), KitKat (4.4+),
Lollipop (5.0+), Marshmallow (6.0) Pada tanggal 3 September 2013, Google mengumumkan
bahwa sekitar 1 miliar perangkat seluler aktif di seluruh dunia menggunakan OS Android.
Android pun di gosipkan akan Membuat pembaruan untuk versi 7.0 Dengan nama Nuttela.
1. Android 1.0 (API level 1)
Android 1.0, versi komersial pertama Android, dirilis pada 23 September 2008.Perangkat
Android pertama yang tersedia secara komersial adalah HTC Dream.
2. Android 1.1 (API level 2)
Pada 9 Februari 2009, pemutakhiran Android 1.1 dirilis, awalnya hanya untuk HTC
Dream. Android 1.1 juga dikenal dengan "Petit Four", meskipun nama ini tidak
digunakan secara resmi.
3. Android 1.5 Cupcake (API level 3)
Pada 27 April 2009, Android 1.5 dirilis, menggunakan kernel Linux 2.6.27.Versi ini
adalah rilis pertama yang secara resmi menggunakan nama kode berdasarkan nama –
nama makanan pencuci mulut ("Cupcake"), nama yang kemudian digunakan untuk semua
versi rilis selanjutnya.
4. Android 1.6 Donut (API level 4)
Pada 15 September 2009, SDK Android 1.6 – dinamai Donut – dirilis, berdasarkan kernel
Linux 2.6.29.
5. Android 2.0 Eclair(API level 5)
Pada 26 Oktober 2009, SDK Android 2.0 – dinamai Eclair – dirilis, berbasis kernel Linux
2.6.29.
6. Android 2.0.1 Eclair (API level 6)
Perbaikan versi Eclair sebelumnya.
7. Android 2.0.2 Eclair (API level 7)
Perbaikan versi Eclair sebelumnya.
8. Android 2.2–2.2.3 Froyo (API level 8)
Pada 20 Mei 2010, SDK Android 2.2 (Froyo, singkatan untuk frozen yogurt) dirilis, yang
berbasis kernel Linux 2.6.32.
9. Android 2.3–2.3.2 Gingerbread (API level 9)
Pada tanggal 6 Desember 2010, SDK Android 2.3 (Gingerbread) dirilis, berbasis kernel
Linux 2.6.35.
10. Android 2.3.3–2.3.7 Gingerbread (API level 10)
Perbaikan versi Gingerbread sebelumnya.
11. Android 3.0 Honeycomb (API level 11)
Pada 22 Februari 2011, SDK Android 3.0 (Honeycomb) – pembaruan pertama Android
yang ditujukan hanya untuk komputer tablet – dirilis, berdasarkan kernel Linux
2.6.36.Perangkat pertama yang menggunakan versi ini adalah tablet Motorola Xoom,
yang dirilis pada 24 Februari 2011.
12. Android 3.1 Honeycomb (API level 12)
Perbaikan versi Honeycomb sebelumnya.
13. Android 3.2 Honeycomb (API level 13)
Perbaikan versi Honeycomb sebelumnya Google TV generasi pertama dan kedua
menggunakan Honeycomb 3.2.
14. Android 4.0–4.0.2 Ice Cream Sandwich (API level 14)
SDK Android 4.0.1 (Ice Cream Sandwich), berdasarkan kernel Linux 3.0.1,dirilis pada
19 Oktober 2011.Petinggi Google, Gabe Cohen, menyatakan bahwa Android 4.0 "secara
teoritis kompatibel" dengan perangkat Android 2.3x yang diproduksi pada saat itu. Kode
sumber untuk Android 4.0 tersedia pada tanggal 14 November 2011.
15. Android 4.0.3–4.0.4 Ice Cream Sandwich (API level 15)
Ice Cream Sandwich adalah versi terakhir yang mendukung Flash player Adobe Systems.
16. Android 4.1 Jelly Bean (API level 16)
Google mengumumkan Android 4.1 (Jelly Bean) dalam konferensi Google I/O pada
tanggal 27 Juni 2012. Berdasarkan kernel Linux 3.0.31, Jelly Bean adalah pembaruan
penting yang bertujuan untuk meningkatkan fungsi dan kinerja antarmuka pengguna (UI).
Pembaruan ini diwujudkan dalam "Proyek Butter", perbaikan ini termasuk antisipasi
sentuh, triple buffering, perpanjangan waktu vsync, dan peningkatan frame rate hingga 60
fps untuk menciptakan UI yang lebih halus.Android 4.1 Jelly Bean dirilis untuk Android
Open Source Project pada tanggal 9 Juli 2012.Perangkat pertama yang menggunakan
sistem operasi ini adalah tablet Nexus 7, yang dirilis pada 13 Juli 2012.
17. Android 4.2 Jelly Bean (API level 17)
Google berencana merilis Jelly Bean 4.2 pada sebuah acara di New York City pada 29
Oktober 2012, tapi dibatalkan karena Badai Sandy. Jelly Bean 4.2 didasarkan pada kernel
Linux 3.4.0, dan pertama kali digunakan pada Nexus 4 LG dan Nexus 10 Samsung, yang
dirilis pada 13 November 2012.
18. Android 4.3 Jelly Bean (API level 18)
Google merilis Jelly Bean 4.3 pada 24 Juli 2013 di San Francisco.
Kebanyakan
perangkat Nexus menerima pembaruan dengan segera. Nexus 7 generasi kedua adalah
perangkat pertama yang menggunakan sistem operasi ini. Sebuah pembaruan minor
dirilis pada tanggal 22 Agustus 2013.
19. Android 4.4 KitKat (API level 19)
Google mengumumkan Android 4.4 KitKat (dinamai dengan izin dari Nestlé dan
Hershey) pada 3 September 2013, dengan tanggal rilis 31 Oktober 2013.Sebelumnya, rilis
berikutnya setelah Jelly Bean diperkirakan akan diberi nomor 5.0 dan dinamai 'Key Lime
Pie'.
20. Android 5.0 Lollipop (API level 21)
21. Android 6.0 Marshmallow (API level 23)
II.5. PHP (PHP Hypertext Preprocessor)
PHP adalah bahasa pemrograman yang digunakan dalam pengembangan web untuk
memproses data dinamis dengan cepat. PHP adalah server-side embedded script language, yaitu
script berisi syntax perintah yang sepenuhnya dijalankan oleh server tetapi disertakan pada
halaman HTML. PHP merupakan script yang terbilang baru dan tersedia secara bebas, dan masih
memungkinkan untuk dikembangkan lebih lanjut. PHP dapat diintegrasikan (embedded) ke
dalam web server, atau dapat berperan sebagai program CGI yang terpisah (Andiloloet
al;2014:2).
II.6. Laravel
Laravel merupakan web development framework dengan Model View Controller (MVC)
yang ditulis dalam PHP. Laravel telah didesain untuk meningkatkan kualitas software dengan
mengurangi biaya development awal dan biaya maintenance serta untuk meningkatkan
pengalaman bekerja dengan menyediakan syntax yang ekspresif yang akan menghemat waktu di
dalam proses implementasinya (Awaludin;2014:10).
II.7. MySQL
MySQL merupakan suatu software sistem manajemen database yang open source.
MySQL adalah database server yang dibuat dan distribusikan oleh perusahaan komersial yaitu
MySQL AB. MySQL didistribusikan secara gratis di bawah lisensi General Public License
(GPL). MySQL adalah sistem yang mendukung relational database. Artinya, dalam sebuah
database memiliki beberapa table untuk menyimpan data – data dimana masing – masing tabel
memiliki hubungan atau relasi satu sama lain sehingga dapat dilakukan kombinasi data dari
beberapa tabel dalam satu saat. Sistem semacam ini sering disebut pula dengan RDBMS
(Relational DataBase Management System). Sistem manajemen database seperti MySQL
diperlukan untuk menambahkan, mengakses, memproses data yang disimpan di server (Andilolo
et al;2014:2).
II.8. Software
Software merupakan program – program komputer yang berguna untuk menjalankan
atau mengoperasikan suatu pekerjaan sesuai dengan yang dikehendaki. Program tersebut ditulis
dengan bahasa khusus yang dimengerti oleh komputer. Program dapat dianalogikan sebagai
instruksi atau perintah – perintah untuk mengoperasikan atau menjalankan hardware. Software
terdiri dari berbagai jenis, yaitu sistem operasi, program utility (bantuan), program aplikasi, dan
program paket (Sariadin;2009:3).
Gambar II.3. Tampilan Salah Satu Software IDE
(http://google.com)
II.9. Eclipse
Eclipseadalah sebuah IDE(Integrated Development Environment) untuk mengembangkan
perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Eclipse
dikembangkan
dengan
bahasa
pemrograman
Java,
akan
tetapi
Eclipse
mendukung
pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python,
Perl, PHP, dan lain sebagainya. Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun
bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti
dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya. Eclipse pada saat
ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap
orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse
yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna
dengan komponen yang dinamakan plug-in. Eclipse+AVR plugin, dengan tambahan plugin
tersebut kita dapat memprogram mikrokontroler AVR menggunakan IDE ini, selain itu
keuntungan menggunakan Eclipse ialah dapat bekerja di berbagai sistem operasi seperti
Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
II.10. Android Studio
Android Studio adalah sebuah IDE (Integrated Development Environment) untuk
mengembangkan aplikasi Android. Android Studio ini adalah lingkungan pengembangan baru
dan terintegrasi penuh, yang baru saja dirilis oleh Google untuk sistem operasi Android. Android
Studio dirancang untuk menjadi peralatan baru dalam pengembangan aplikasi dan juga memberi
alternatif lain selain Eclipse yang saat ini menjadi IDE yang paling banyak dipakai.
Saat Anda memulai proyek baru dengan Android Studio, struktur proyek akan muncul
bersama dengan hampir semua berkas yang ada di dalam direktori SDK, peralihan ke sistem
manajemen berbasis Gradle ini memberikan fleksibilitas yang lebih besar pada proses
pembangunanya.
Android Studio mengijinkan Anda untuk melihat perubahan visual apapun yang Anda
lakukan pada aplikasi secara langsung. Anda juga bisa melihat perbedaannya jika dipasang pada
beberapa perangkat Android berbeda, termasuk konfigurasi dan resolusinya secara bersamaan.
Fitur lain di Android Studio adalah alat-alat baru untuk mengepak dan memberi label
kode. Dengan begitu mengijinkan Anda tatap menjadi yang teratas ketika berurusan dengan
banyak kode. Program ini juga memakai sistem seret dan jatuhkan untuk memindahkan
komponen melalui antar muka pengguna.
Selain itu, lingkungan baru ini juga mendukung Google Cloud Messaging. Sebuah fitur
yang mengijinkan Anda untuk mengirim data dari server ke perangkat Android Anda melalui
cloud, cara terbaik untuk mengirim Pengingat pada apps anda.
Program ini juga membantu Anda untuk melokalisasi aplikasi anda, memberi anda
gambaran visual untuk tetap memprogram sambil mengontrol alur dari aplikasi.
Android Studio merupakan sebuah IDE (Integrated Development Environment), aplikasi
untuk pengembangan software, dikhususkan untuk pembuatan aplikasi Android yang dikenalkan
pada Google I/O Mei 2013 (Gerber, A. & Craig, C; 2015 ).
Gambar II.4. TampilanSoftware Android Studio
(http://google.com)
II.11. Unified Modeling Language (UML)
UML yang merupakan singkatan dari Unified Modelling Language adalah sekumpulan
pemodelan konvensi yang digunakan untuk menentukan atau menggambarkan sebuah sistem
perangkat lunak dalam kaitannya dengan objek. UML dapat juga diartikan sebuah bahasa grafik
standar yang digunakan untuk memodelkan perangkat lunak berbasis objek. UML pertama kali
dikembangkan pada pertengahaan tahun 1990an dengan kerjasama antara James Rumbaugh,
Grady Booch dan Ivar Jacobson, yang masing-masing telah mengembangkan notasi mereka
sendiri di awal tahun 1990an (Lethbride dan Leganiere, 2009:11).
II.11.1. Use Case Diagram
Use case diagram, adalah sebuah gambaran dari fungsi sistem yang dipandang dari sudut
pandang pemakai. Actor adalah segala sesuatu yang perlu berinteraksi dengan sistem untuk
pertukaran informasi. Systemboundary menunjukkan cakupan dari sistem yang dibuat dan fungsi
dari sistem tersebut (Lethbride dan Leganiere;2009:11).
Tabel II.1. Simbol Use Case Diagram
NO
NAMA
KETERANGAN
Actor
Menspesifikasikan himpuan peran
yang pengguna mainkan ketika
berinteraksi dengan use case.
2
Dependency
Hubungan dimana perubahan yang
terjadi pada suatu elemen mandiri
(independent) akan mempengaruhi
elemen yang bergantung padanya
elemen
yang
tidak
mandiri
(independent).
3
Hubungan dimana objek anak
(descendent) berbagi perilaku dan
Generalization
struktur data dari objek yang ada di
atasnya objek induk (ancestor).
4
Include
1
GAMBAR
Menspesifikasikan bahwa use case
sumber secara eksplisit.
5
Extend
Menspesifikasikan bahwa use case
target memperluas perilaku dari use
case sumber pada suatu titik yang
diberikan.
6
Association
Apa yang menghubungkan antara
objek satu dengan objek lainnya.
7
System
Menspesifikasikan
paket
yang
menampilkan sistem secara terbatas.
Use Case
Deskripsi dari urutan aksi-aksi yang
ditampilkan
sistem
yang
menghasilkan suatu hasil yang
terukur bagi suatu aktor
9
Collaboration
Interaksi aturan-aturan dan elemen
lain yang bekerja sama untuk
menyediakan prilaku yang lebih
besar dari jumlah dan elemenelemennya (sinergi).
10
Note
Elemen fisik yang eksis saat aplikasi
dijalankan dan mencerminkan suatu
sumber daya komputasi
8
(Lethbride dan Leganiere;2009:11)
II.11.2. Activity Diagram
Activity Diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang
dirancang, bagaimana masing – masing alir berawal, decision yang mungkin terjadi, dan
bagaimana mereka berakhir. Activity Diagram juga dapat menggambarkan proses paralel yang
mungkin terjadi pada beberapa eksekusi. Activity Diagram merupakan state diagram khusus, di
mana sebagian besar state adalah action dan sebagian besar transisi di-trigger oleh selesainya
state sebelumnya (internal processing). Oleh karena itu Activity Diagram tidak menggambarkan
behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih
menggambarkan proses – proses
dan jalur – jalur aktivitas dari level atas secara umum.
Menggambarkan proses bisnis dan urutan aktivitas dalam sebuah proses. Dipakai pada business
modeling untuk memperlihatkan urutan aktifitas proses bisnis. Struktur diagram ini mirip
flowchart atau Data Flow Diagram pada perancangan terstruktur. Activity Diagram dibuat
berdasarkan sebuah atau beberapa use case pada use case diagram (Lethbride dan
Leganiere;2009:13).
Tabel II.2. Simbol Activity Diagram
NO
GAMBAR
NAMA
KETERANGAN
Memperlihatkan bagaimana masingmasing
kelas
antarmuka
saling
berinteraksi satu sama lain
1
Actifity
2
Action
State dari sistem yang mencerminkan
eksekusi dari suatu aksi
3
Initial Node
Bagaimana objek dibentuk atau diawali.
4
Actifity Final Bagaimana
Node
dihancurkan
5
Fork Node
objek
dibentuk
dan
Satu aliran yang pada tahap tertentu
berubah menjadi beberapa aliran
(Lethbride dan Leganiere;2009:15)
II.11.3. Sequence diagram
Sequence diagram menambahkan dimensi waktu pada interaksi diantara obyek. Pada
diagram ini participant diletakkan di atas dan waktu ditunjukkan dari atas ke bawah. Life line
participant diurutkan dari setiap paricipant. Kotak kecil pada life line menyatakan activation :
yaitu menjalankan salah satu operation dari participant. Satate bisa ditambahkan dengan
menempatkannya sepanjang life line. Message (sederhana, synchronous atau asynchroneous)
adalah tanda panah yang menghubungkan suatu life line ke life line yang lain. Lokasi life line
dalam dimensi vertikal mewakili urutan waktu dalam sequence diagram. Message yang pertama
terjadi adalah yang paling dekat dengan bagian atas diagram dan yang terjadi belakangan adalah
yang dekat dengan bagian bawah. Pada beberapa sistem, operasi bisa dilakukan kepada dirinya
sendiri. Hal ini disebut dengan rekursif. Untuk melukiskannya digunakan anak panah dar
activation kembali ke dirinya sendiri, dan sebuah kotak kecil diletakkan pada bagian atas dari
activation.
Tabel II.3 Simbol Sequence Diagram
Gambar
Keterangan
Actor dapat berupa manusia, sistem atau
device yang memliki peranan dalam
keberhasilan operasi dari sistem.
Entity Class merupakan bagian dari
sistem yang berisi kumpulan kelas
berupa entitas-entitas yang membentuk
gambaran awal sistem dan menjadi
landasan untuk menyusun basis data
Boundary Class berisi kumpulan kelas
yang menjadi interface atau interaksi
antara satu atau lebih actor dengan
sistem.
Control Class suatu objek yang berisi
logika aplikasi yang tidak memiliki
tanggung jawab kepada entitas.
Message simbol mengirim pesan antar
class.
Recursive menggambarkan pengiriman
pesan yang dikirim untuk dirinya sendiri.
Activation mewakili sebuah eksekusi
operasi dari objek, panjang kotak ini
berbanding lurus dengan durasi aktivitas
sebuah operasi .
Lifeline yaitu garis titik
titik yang
terhubung
sepanjang
dengan
objek,
lifeline terdapat activation.
(Gellysa Urva dkk; 2015 : 95)
Actor
Name 1
Name 2
Message
Gambar II.5. Simbol-simbol yang ada pada sequence diagram
(Agus Putranto;2009:14)
II.11.4. Deployment diagram
Deployment diagram menggambarkan sumber fisik dalam sistem, termasuk node,
komponen dan koneksi (model implementasi sistem yang statistik). Dalam hal ini meliputi
topologi hardware yang dipakai sistem.
Deployment/physical diagram menggambarkan detail bagaimana komponen di-deploy
dalam infrastruktur sistem, di mana komponen akan terletak (pada mesin, server atau piranti
keras apa), bagaimana kemampuan jaringan pada lokasi tersebut, spesifikasi server, dan hal – hal
lain yang bersifat fisikal. Sebuah node adalah server, workstation, atau piranti keras lain yang
digunakan untuk men-deploy komponen dalam lingkungan sebenarnya. Hubungan antar node
(misalnya TCP/IP) dan requirement dapat juga didefinisikan dalam diagram ini.
Gambar II.6. Simbol-simbol yang ada pada Deployment Diagram
(Agus Putranto;2009:9)
Download