Anda di halaman 1dari 4

BAB II

DASAR TEORI

2.1 Internet of Things


Internet of Things ( IoT ) dapat diartikan sebagai segala benda yang dapat
berkomunikasi dengan benda lainnya, seperti komunikasi machine to machine dan
komunikasi orang dengan komputer serta akan meluas sampai komunikasi ke segala benda
[13]. IoT juga dapat digambarkan sebagai hubungan benda seperti ponsel pintar, internet
TV, sensor ke internet dimana perangkat yang cerdas memungkinkan untuk dihubungka n
bersama – sama membentuk komunikasi antara sesuatu dengan orang dan antara sesuatu
dengan dirinya sendiri[12]. Yang diperlukan dalam terbentuknya IoT adalah database yang
besar, jaringan yang menghubungkan antar benda, kemampuan untuk mendeteksi perubahan
yang terjadi, dan kepintaran yang tertanam sehingga meningkatkan performansi dari
kemampuan memproses data.

2.1.1 Arsitektur Internet of Things


Arsitektur yang paling dasar adalah arsitektur empat lapisan seperti yang ditunjukka n
pada Gambar 2.1. Arsitektur ini memiliki empat lapisan, yaitu lapisan Physical, lapisan
Transport, lapisan Processing dan lapisan Application[11].

Application layer

Processing layer

Transport layer

Physical layer

Gambar 2.1 Arsitektur Internet of Things

a. Lapisan Physical adalah lapisan fisik, yang memiliki sensor untuk merasakan dan
mengumpulkan informasi tentang lingkungan sekitar. Lapisan ini merasakan beberapa
parameter fisik atau mengidentifikasi objek cerdas lainnya di lingkungan sekitar.

4
b. Lapisan transport mengirim data sensor dari lapisan perception ke lapisan processing
dan sebaliknya, melalui jaringan seperti nirkabel, 3G, LAN, Bluetooth, RFID, dan NFC
dan sebagainya.
c. Lapisan processing juga dikenal sebagai lapisan middleware. Lapisan ini menyimpa n,
menganalisa, dan memproses sejumlah besar data yang berasal dari lapisan transport.
Lapisan ini menggunakan banyak teknologi seperti database, cloud computing, dan
modul pengolahan data yang besar.
d. Lapisan application bertanggung jawab memberikan layanan spesifik aplikasi kepada
pengguna. Lapisan ini yang menentukan berbagai macam aplikasi di mana Internet of
Things dapat digunakan, misalnya, smart home, smart cities, dan smart health.

2.2 Android
Android merupakan sebuah sistem operasi yang berbasis Linux untuk telepon seluler
seperti telepon pintar dan komputer tablet. Android menyediakan platform terbuka bagi para
pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam
peranti bergerak[8]. Android adalah sistem operasi yang bersifat open source (sumber
terbuka). Disebut open source karena source code (kode sumber) dari system operasi
Android dapat dilihat, di-download, dan dimodifikasi secara bebas. Paradigma open source
ini memudahkan pengembangan teknologi Android karena semua pihak yang tertarik dapat
memberikan kontribusi, baik pada pengembangan system operasi maupun aplikasi[10].

2.3 Android Studio


Android Studio adalah IDE resmi untuk membangun aplikasi Android berdasarkan
IntelleJ IDEA. IntelleJ IDEA sendiri adalah Java Integrated Development Environment
(JIDE) yang dikembangkan oleh JetBrains, untuk mengembangkan perangkat lunak
komputer. IntelliJ IDE berfungsi untuk membantu pengguna dalam dunia pemrograman baik
dari segi navigasi, penyokong produktivitas, hingga code editor yang cerdas.[10].

2.4 Java
Java adalah bahasa pemrograman yang dapat dijalankan diberbagai platform,
diberagam lingkungan internet, consumer electronic products, dan aplikasi komputer.
Bahasa Java merupakan karya Sun Micorosystem Inc[4]. Pada pengembangan enterprise
applications, kita menggunakan sejumlah besar paket. Pada consumer electronic product,
hanya sejumlah kecil bagian bahasa yang digunakan. Masing-masing edisi berisi Java 2

5
SDK untuk mengembangkan aplikasi dan Java 2 Runtime Envirotment (JRE) untuk
menjalankan aplikasi[5].

2.5 Google Firebase


Firebase adalah penyedia layanan real time database dan backend yang saat ini dimilik i
oleh Google. Firebase ini merupakan solusi yang ditawarkan oleh Google untuk
mempermudah pekerjaan Mobile Apps Developer. Dengan adanya Firebase, pengembang
aplikasi bisa fokus mengembangkan aplikasi tanpa harus memberikan effort yang besar
untuk urusan backend[2]. Fitur yang dimiliki oleh Firebase adalah sebagai berikut:

2.5.1 Firebase Real Time Database

Firebase Real Time Database adalah fitur Firebase database yang dapat diakses
secara Real Time oleh pengguna aplikasi. Kelebihan dari Firebase Real Time Database
adalah aplikasi dapat menyimpan data secara lokal ketika tidak ada akses internet, kemudian
melakukan sync data segera setelah mendapatkan akses internet[7].

2.6 Web Server

Server atau Web server adalah sebuah software yang memberikan layanan berbasis data
dan berfungsi menerima permintaan dari HTTP atau HTTPS pada klien yang dikenal dan
biasanya kita kenal dengan nama web browser (Mozilla Firefox, Google Chrome) dan untuk
mengirimkan kembali yang hasilnya dalam bentuk beberapa halaman web dan pada
umumnya akan berbentuk dokumen HTML[4]. Fungsi utama Server atau Web server adalah
untuk melakukan atau akan mentransfer berkas permintaan pengguna melalui protokol
komunikasi yang telah ditentukan sedemikian rupa. halaman web yang diminta terdiri dari
berkas teks, video, gambar, file dan banyak lagi. pemanfaatan web server berfungsi untuk
mentransfer seluruh aspek pemberkasan dalam sebuah halaman web termasuk yang di dalam
berupa teks, video, gambar dan banyak lagi.

2.7 Black Box Testing

Black box testing melibatkan sistem / komponen pengujian yang mempertimbangka n


input, output dan fungsi umum sebagaimana didefinisikan dalam spesifikasi kebutuhan.
Black box testing tidak mempertimbangkan proses internal apapun dan tidak bergantung
pada platform, database dan sistem untuk memastikan sistem bekerja sesuai persyaratan

6
yang didefinisikan. Pengujian fungsional kotak hitam umumnya dilakukan untuk pengujia n
integrasi, pengujian sistem, dan pengujian penerimaan[6].
Keuntungan black box testing adalah:
a. Satu-satunya metode untuk membuktikan bahwa perangkat lunak melakukan apa yang
seharusnya dilakukan dan tidak melakukan sesuatu yang dapat menyebabkan masalah
bagi pengguna.
b. Metode untuk menunjukkan bahwa perangkat lunak berjalan dan benar-benar bekerja.
c. Beberapa jenis pengujian hanya bisa dilakukan dengan metodologi pengujian kotak hitam,
misalnya performa dan keamanan.

Anda mungkin juga menyukai