Oleh:
ANAK AGUNG BAGUS PRAMANA (150010275)
Oleh:
ANAK AGUNG BAGUS PRAMANA (150010275)
Denpasar, ..........................
Mengetahui,
Ketua Program Studi Sistem Komputer
i
HALAMAN INI SENGAJA DI KOSONGKAN
ii
PENGESAHAN
SIDANG TUGAS AKHIR
Oleh:
ANAK AGUNG BAGUS PRAMANA (150010275)
Dipertahankan di depan Tim Dosen Penguji Tugas Akhir Program Studi Sistem
Komputer ITB STIKOM Bali
Denpasar, ..........................
Mengetahui,
Ketua Program Studi Sistem Komputer
iii
HALAMAN INI SENGAJA DI KOSONGKAN
iv
PERNYATAAN KEASLIAN
NIM : 150010275
Nama : Anak Agung Bagus Pramana
Jenjang Studi : Strata Satu (S1)
Program Studi : Sistem Komputer
Tempat, Tgl. Lahir : Pohsanten, 11 Maret 1997
Alamat : Banjar Rangdu, Desa Pohsanten, Kec Mendoyo,
Kab Jembrana, Bali
Menyatakan bahwa dalam Tugas Akhir ini tidak terdapat karya yang pernah
diajukan untuk memperoleh Sarjana Komputer (S.Kom) di suatu Perguruan
Tinggi, dan sepanjang pengetahuan saya tidak terdapat karya atau pendapat
yang pernah ditulis atau diterbitkan oleh orang lain, kecuali yang secara tertulis
diacu dalam naskah ini dan disebutkan dalam Daftar Pustaka.
Denpasar, .............................
v
HALAMAN INI SENGAJA DI KOSONGKAN
vi
PENGENALAN SEJARAH PERANG PURI CAGAR BUDAYA
DI DENPASAR MENGGUNAKAN MEDIA PEMBELAJARAN
INTERAKTIF BERBASIS ANDROID
ABSTRAK
vii
HALAMAN INI SENGAJA DI KOSONGKAN
viii
INTRODUCTION TO THE HISTORY OF THE WAR PURI
CULTURAL HERITAGE IN DENPASAR USING ANDROID-
BASED INTERACTIVE LEARNING MEDIA
ABSTRACT
Puri is the name for the residence of Balinese nobles, especially those
who are still close relatives of Balinese kings. Based on the triwangsa or caste
division system, the castle is occupied by nobles of the knight clan. In the capital
city of Denpasar and Badung, there are several castles including Perang Puri
Cagar Budaya, Puri Agung Denpasar and Puri Peguyangan which are several
castles that witnessed history when Dutch soldiers set foot on the island of Bali,
so learning media is needed, where this will be made in an interesting form. It is
hoped that this research can help people know more details about history,
especially Perang Puri Cagar Budaya and it is also hoped that in a fun learning
process, more knowledge can be absorbed. Therefore, the researchers decided
to conduct a study with the title Introduction to the History of the Cultural Heritage
Castle War in Denpasar Using Android-Based Interactive Learning Media.
Making this application using the waterfall method starting from analysis, design,
coding, testing, and maintenance. Then the system design uses the Unified
Modeling Language (UML) and the application is built using the flutter framework
with the API Android SDK 21 to Api 29, and the code editor used is visual studio
code. This application has been tested using blackbox testing where the results
are as expected.
ix
HALAMAN INI SENGAJA DI KOSONGKAN
x
KATA PENGANTAR
Semoga hasil penulisan Tugas Akhir ini bermanfaat bagi pihak yang
berkepentingan.
Denpasar, Juli 2022
Penulis
xi
HALAMAN INI SENGAJA DI KOSONGKAN
xii
DAFTARISI
PERNYATAAN KEASLIAN...............................................................................V
ABSTRAK..........................................................................................................VII
ABSTRACT.........................................................................................................IX
KATA PENGANTAR.........................................................................................XI
DAFTARISI......................................................................................................XIII
DAFTAR TABEL............................................................................................XVII
DAFTAR GAMBAR........................................................................................XIX
BAB I PENDAHULUAN.......................................................................................1
2.6 Informasi.................................................................................................................... 12
2.9 Android...................................................................................................................... 13
2.9.1 Android versi...................................................................................................................13
2.9.2 Android SDK....................................................................................................................17
2.11 Flutter........................................................................................................................ 17
xiv
3.2 Metode Pengembangan Perangkat Lunak...................................................................29
BAB V PENUTUP................................................................................................93
5.1 Kesimpulan................................................................................................................ 93
5.2 Saran.......................................................................................................................... 94
DAFTAR PUSTAKA...........................................................................................95
xv
HALAMAN INI SENGAJA DI KOSONGKAN
xvi
DAFTAR TABEL
Halaman
xvii
HALAMAN INI SENGAJA DI KOSONGKAN
xviii
DAFTAR GAMBAR
Halaman
xix
Gambar 4. 6 Halaman Kuis.................................................................................75
Gambar 4.7Halaman Penelilaian Kuis................................................................77
xx
BAB I
PENDAHULUAN
1
2
Pada bab tinjauan pustaka ini dijelaskan tentang hal-hal yang berhubungan
dengan sumber-sumber yang digunakan dalam pembuatan sistem
tersebut.
BAB III METODE PENELITIAN
Pada bab ini akan membahas tentang metode yang akan digunakan dalam
pengumpulan data dan metode pengembangan sistem.
BAB IV HASIL DAN PEMBAHASAN
Pada bab ini diuraikan tentang implementasi dari aplikasi yang dibuat. Hasil
akan disajikan dalam bentuk gambar yang disertai dengan penjelasan
tentang tata cara pengguaan aplikasi yang telah dihasilkan. Selain itu pada
tahapan ini juga akan dibuat daftar dan rangkuman hasil pengujian yang
dilakukan
BAB V PENUTUP
Pada bab ini berisi tentang hasil kesimpulan beserta rangkuman dari
aplikasi yang telah dihasilkan. Selain itu pada bab ini juga akan diberikan
saran yang dapat digunakan sebagai perbaikan atau tambahan untuk
pengembangan dari penelitian yang telah dilakuka.
BAB II
TINJAUAN PUSTAKA
5
6
Dan dalam hal ini Van Heutsz tidak sepaham dan menganggap tidak
terjadi keseragaman, dengan cara pandang berbeda tersebut Van Heutsz sangat
berambisi untuk mengambil wilayah kerajaan di Bali secara penuh. Dan masalah
inipun dibesar-besarkan, keyakinan raja dan rakyatnya yang tidak mengakui
tuduhan saudagar Cian tersebut dianggap menodai kewibawaan kolonial
Belanda dan dipandang berbahaya akan kedudukan Belanda di Bali. Akhirnya
pihak residen Belanda di Bali menetapkan raja Badung untuk tetap ganti rugi
atau denda sebesar 3000 ringgit. Raja Badung saat itu yakni I Gusti Ngurah
Made Agung, yang merasa yakin akan kejujuran rakyatnya tetap berpegang
teguh dengan pendiriannya, walaupun di ultimatum, jika dalam batas waktu 9
januari 1905 tidak dipenuhi akan dilakukan blokade ekonomi. Akhirnya kolonial
Belanda mengirim kapal angkatan laut untuk memblokade dermaga, sehingga
pihak kerajaan mengalami banyak kerugian dari pemasukan dermaga karena
blokade tersebut, bahkan kolonial Belanda semakin sering melakukan patroli
karena raja Badung tetap kukuh tidak mau ganti rugi atau bayar denda.
Ketegangan popiltikpun semakin meningkat antara raja Badung dengan
kolonial Belanda, bahkan belanda menambah biaya ganti rugi menjadi 5.173
ringgit, ini dikarenakan biaya blokade untuk kapal laut yang dilakukan oleh pihak
kolonial Belanda, dan memberikan ultimatum sampai 1 September 1906 dan
mengancam akan melakukan tindakan militer. Dan ancaman tersebut tidak lantas
mengubah pendirian raja Badung, bahkan raja Badung sudah siap dengan
segala resiko yang mungkin terjadi untuk membela harga diri dan kedaulatan
kerajaan. Akhirnya Gubernur Hindi Belanda di Batavia mengirim ekspedisi militer
dan sampai di selat Badung pada tanggal 12 September 1906, dan pabean
Sanur dikuasai untuk tempat pertahanan. Kemudian utusan dikirim agar raja
Badung dan raja Tabanan yang mendukung Badung agar menyerah. Ultimatum
tersebutpun ditolak tegas. Akhirnya pertempuran hebat terjadi pada tanggal 15
september 1906 di desa Sanur, banyak korban yang terjadi di kedua belah pihak,
dari laskar kerajaan badung sendiri tercatat 33 orang gugur di medan laga dan
beberapa terluka. Puncak dari perang Puputan Badung tersebut adalah pada
tanggal 20 September 2019, pasukan Belanda bergerak ke arah barat dan
menembakkan meriamnya ke arah Perang Puri Cagar Budaya dan Denpasar,
sehingga menimbulkan kerusakan parah. Raja I Gusti Ngurah Made Agung
bersama pengikut setianya, rombongan ke luar puri dan semua membawa
senjata baik itu tombak dan keris, termasuk juga anak-anak. Raja bersama
9
II.6 Informasi
Informasi bersumber dari data. Data merupakan fakta yang
mengambarkan sebuah kejadian dan mempunyai arti sendiri. Informasi
merupakan data yang sudah selesai diproses dan menjadi keluaran berupa
informasi. Secara umum informasi didefinisikan sebagai hasil pengolahan data
dalam suatu bentuk yang lebih berguna dan lebih berarti bagi penerimanya.
Kualitas dari sebuah informasi bisa ditentukan melalui 3 hal yaitu sebagai berikut
[9]:
1. Akurat
Informasi yang bebas dari kesalahan apapun, serta akurat dan tidak
melenceng dari sumber yang diberikan. Informasi yang akurat merupakan
informasi yang mencerminkan maksud dari sumber kepada penerima
informasi.
2. Tepat Waktu
Informasi yang sifatnya tidak boleh terlambat diberikan kepada
penerima informasi tersebut. Informasi sangatlah penting khususnya bagi
organisasi maupun perusahaan. Di dalam organisasi atau perusahaan tidak
boleh adanya keterlambatan dalam pemberian informasi. Informasi yang
terlambat diberikan menjadikan informasi tersebut sudah tidak ada nilainya
lagi, dengan terlambatnya pemberian sebuah informasi akan sangat
merugikan organisasi atau perusahaan tersebut.
13
3. Relevan
Informasi harus memiliki manfaat bagi penerima informasi tersebut.
Manfaat dari informasi berbeda-beda tergantung dari sudut pandang
penerima. Nilai sebuah informasi ditentukan oleh 2 hal yaitu manfaat dan
biaya. Informasi yang dikatakan bernilai yaitu informasi yang memiliki
manfaat dan manfaat tersebut lebih efektif dibandingkan dengan biaya
dalam mendapatkan informasi tersebut.
II.9 Android
Android adalah sistem operasi perangkat mobile berbasis linux yang
mencakup sistem operasi, middleware, dan aplikasi. Android merupakan platform
terbuka bagi para pengembang. Awalnya, Google.Inc membeli Android Inc,
pendatang baru yang membuat Piranti lunak untuk ponsel. Kemudian untuk
mengembangkan Android, dibentuklah Open Handset Alliance, konsorsium dari
34 perusahaan Piranti keras, peranti lunak dan telekomunikasi, termasuk Google,
HTC, Intel, Motorola, Qualcomm, T-Mobile dan Nvidia. Android merupakan
sistem operasi yang berisi middleware serta aplikasi-aplikasi dasar. Basis sistem
operasi android yaitu kernel linux 2.6 yang telah diperbaharui untuk mobile
device. Pengembangkan aplikasi android [11].
14
10.1, kecepatan kinerja dan aplikasi dua sampai lima kali lebih cepat,
integrasi V8 JavaScript engine yang dipakai Google Chrome yang dapat
mempercepat kemampuan rendering 15 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. Adanya peningkatan kemampuan
permainan, 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.
7. Android versi 3.0 (Honeycomb) Android Honeycomb dirancang khusus
untuk tablet. Android versi ini mendukung ukuran layar yang lebih besar.
Honeycomb juga mendukung multi-processor dan akselerasi Hardware
untuk pengolahan grafis yang lebih baik. Tablet pertama yang dibuat
dengan menjalankan Honeycomb adalah Motorola Xoom.
8. Android versi 4.0 (Ice Cream Sandwich) Diumumkan pada tanggal 19
Oktober 2011, membawa fitur Honeycomb untuk smartphone dan
menambahkan fitur baru termasuk membuka kunci dengan pengenalan
wajah, jaringan data pemantauan penggunaan dan kontrol, terpadu
kontak jaringan sosial, perangkat tambahan fotografi, mencari email
secara offline, dan berbagi informasi dengan menggunakan NFC (Near
Field Communication). Ponsel pertama yang menggunakan sistem
operasi ini adalah Samsung Galaxy Nexus.
9. Android versi 4.1 (Jelly Bean) Android Jelly Bean yang diluncurkan pada
acara Google I/O lalu membawa sejumlah keunggulan dan fitur baru.
Penambahan baru diantaranya meningkatkan input keyboard, desain
baru fitur pencarian, UI yang baru dan pencarian melalui Voice Search
yang lebih cepat. Tak ketinggalan Google Now juga menjadi bagian yang
diperbarui. Google Now memberikan informasi yang tepat pada waktu
yang tepat pula. Salah satu kemampuannya adalah dapat mengetahui
informasi cuaca, lalulintas, ataupun hasil pertandingan olahraga. Sistem
operasi Android Jelly Bean 4.1 muncul pertama kali dalam produk tablet
Asus, yakni Google Nexus7.
16
10. Android versi 4.4 (KitKat) Pembaharuan antarmuka dengan bar status
dan navigasi transparan pada layar depan. Optimasi kinerja perangkat
dengan spesifikasi yang lebih rendah. NFC Host Card Emulation sebagai
emulator kartu pintar, perekam aktivitas layar yang terintegrasi.
Penyeimbang audio, pemantauan, dan peningkatan suara audio.
11. Androidversi5.0(Lolipop) Pada tanggal 15 Oktober 2014 hadirlah
versi Android 5.0 atau versi Lolipop. Pembaharuan yang mencolok
pada Lolipop tampak dari sisi desainnya yang diperhalus dan
disesuaikan dengan zaman. Inovasi kurang terasa pada versi ini.
Satu-satunya yang lumayan baru adalah dukungan untuk gambar
berformat RAW
12. Android versi 6.0 (Marsmallow)Pada tanggal 19 Agustus 2015 google
meluncuran versi android lainnya yaitu versi 6.0 atau versi Android
Marsmallow. Menu aplikasi pada Android Marsmallow benar-benar dibuat
baru. Desainnya membuat pengguna merasa naik kelas dari versi
sebelumnya karena lebih dinamis. Selain itu ada juga fitur memory
manager yang memungkinkan pengguna mengecek penggunaan setiap
memori pada tiap aplikasi. Pembaharuan kedua dari pengaturan volume
yang dapat dikontrol berbeda-beda pada panggilan, media, alarm, dan
juga keamanan pada versi ini sudah menyelamatkan sensor pemindai
sidik jari.
13. Android versi 7.0 (Nougat)Setelah melakukan banyak update versi-versi
Android, tanggal 22 Agustus 2016 diluncurkan versi yang paling terbaru
dari Android versi 7.0 dengan nama versi Nougat. Pembaharuan yang
paling mendasar pada versi ini adalah kehadiran Google asisten yang
menggantikan Google Now. Fitur-fitur baru lainnya mencakup layar layer
Split-screen saat dipakai multitasking, serta dukungan terhadap platform
virtual reality terbaru Google.
14. Android versi 8.0 (Oreo)Pada bulan Agustus 2017, google merilis sistem
operasi seluler Android 8.0 Oreo. Hanya sedikit perangkat yang
mendapat pembaruan dan yang lain akan segera menyusul. Android
Oreo adalah versi utama kedelapan dari sistem operasi Android. Ini
pertama kali dirilis pada Maret 2017 dan dirilis secara publik pada 21
Agustus 2017. Tepat sebelum android 8.0 Oreo, Android 7.1.2 Nougat
adalah versi terakhir dan masih sedikit perangkat yang mendukungnya.
17
II.11 Flutter
Flutter adalah teknologi untuk membangun suatu mobile apps yang dibuat
oleh Google. Dengan menggunakan Flutter, Anda dapat membuat aplikasi
Android dan iOS sekaligus. Flutter menggunakan bahasa Dart yang juga dibuat
oleh Google dan merupakan bahasa general purpose. Artinya, Dart mampu
berjalan di banyak platform.
Flutter merupakan cross-platform framework, alias aplikasi yang dapat
digunakan di lebih dari satu platform. Aplikasi yang dibuat dengan menggunakan
Flutter dapat dijalankan baik di platform Android maupun iOS. Tentu hal ini akan
menghemat waktu. Anda pun tidak perlu mempelajari bahasa native yang
digunakan di masing-masing platform.
Flutter memiliki beberapa kelebihan yang cukup menarik bagi para developer.
1. Flutter memungkinkan kita untuk membuat aplikasi yang indah
(beautiful).
2. Flutter berjalan dengan sangat cepat (fast)
3. Flutter sangat produktif (productive)
4. Flutter bersifat terbuka (open)
Jadi jelas mengapa developer perlu belajar Flutter. Ia memberikan
kemudahan bagi kita untuk membangun aplikasi multi platform. Proses
membangun aplikasi dengan Flutter jauh lebih signifikan cepatnya, jika
dibandingkan dengan membangun aplikasi secara native [13].
sebuah sistem. Behavior diagram terdiri dari Use case diagram, Aktivity diagram,
State Machine System.
Interaction diagram yaitu kumpulan diagram yang digunakan untuk
menggambarkan interaksi sistem dengan sistem lain maupun interaksi antar
subsistem pada suatu sistem. Interaction diagram terdiri dari Sequence Diagram,
Communication Diagram, Timing Diagram, Interaction Overview Diagram.
II.14.3 Use Case Diagram
Diagram use case merupakan pemodelan untuk kelakuan (behavior)
sistem informasi yang akan dibuat. Use case mendeskripsikan sebuah interaksi
antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara
kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam
sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi
itu [27].
Berikut adalah simbol-simbol yang ada pada diagram use case:
dalam diagram sekuen sehingga semakin banyak use case yang didefinisikan
maka diagram sekuen yang harus dibuat juga semakin banayak. Berikut adalah
simbol-simbol yang ada pada diagram sekuen [16]:
29
30
pengerjaan yaitu setiap fase dalam waterfall harus diselesaikan terlebih dahulu
sebelum melanjutkan ke fase selanjutnya [18].
1. Halaman Utama
Berikut ini merupakan desain halaman utama pada saat pengguna
membuka aplikasi yang akan langsung menampilkan menu Halaman Utama,
dapat dilihat pada Gambar 3.2.
35
6. Halaman Kuis
Berikut ini merupakan desain Halaman Kuis pada saat pengguna
menekan button Kuis pada Halaman Menu Utama yang akan langsung
menampilkan menu Halaman Kuis, dapat dilihat pada Gambar 3.7.
40
Use case diagram ini memiliki 8 (delapan) buah expanded use case yang
memiliki proses-proses yang berbeda-beda. Proses-proses tersebut perlu
dijelaskan atau diuraikan secara rinci. Berikut penjelasan dari masing-masing
proses yang terdapat pada use case diagram.
1. Expanded Use Case Tampil Menu Utama
Use case tampil pura boleh diakses oleh aktor yaitupenggunause case
tersebut pada aplikasi Perang Puri Cagar Budaya dengan membuka
44
Tampil Video.
Kondisi -
Pengecualian
Kondisi -
Pengecualian
halamanutamapadaaplikasi servicekemudian
android. menampilkan
halaman tampil
tentang aplikasi.
Kondisi -
Pengecualian
Hasil dan Pembahasan Pada bab IV ini akan menjelaskan tentang sistem
yang telah dibuat berupa tampilan antarmuka dan hasil uji coba sistem. Hasil uji
coba akan digunakan sebagai bahan untuk analisis dimana sistem yang telah
dibangun dapat memenuhi tujuan yang ingin dicapai seperti yang direncanakan
sebelumnya. Pada tahap ini juga ditampilkan dan dijelaskan mengenai hasil
analisis dari implementasi sistem yang telah dibangun
57
58
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:get/get.dart';
import 'package:puri_pemecutan/constants.dart';
import
'package:puri_pemecutan/controllers/question_controller.dart';
import 'package:puri_pemecutan/controllers/sejarah_controller.dart';
import 'package:puri_pemecutan/screens/about/about.dart';
59
import 'package:puri_pemecutan/screens/quiz/quiz_screen.dart';
import 'package:puri_pemecutan/screens/sejarah/sejarah_screen.dart';
import 'package:puri_pemecutan/screens/video/video_screen.dart';
borderRadius:
BorderRadius.all(Radius.circular(12))
),
child: Text("Video Dokumenter",
style: Theme.of(context)
.textTheme
.headline6
.copyWith(color: kBlackColor) // warna
tulisan, bisa dirubah atau ditambah sesuai dengan class warna pada
constants.dart
),
),
),
// and menu Sejarah Puri Pemecutan
// Kuis
InkWell(
61
onTap: () {
_controller.reset();
Get.to(() => QuizScreen()); // fungsi
(funcion) untuk menuju ke QuizScreen pada folder Quiz dengan nama
file quiz_screen.dart
},
child: Container(
width: double.infinity,
margin: EdgeInsets.only(top: kDefaultPadding /
2),
padding: EdgeInsets.all(kDefaultPadding *
.75),
decoration: BoxDecoration(
gradient: kPrimaryGradient,
borderRadius:
BorderRadius.all(Radius.circular(12))
),
child: Text("Kuis",
style: Theme.of(context)
.textTheme
.headline6
.copyWith(color: kBlackColor) // warna
tulisan, bisa dirubah atau ditambah sesuai dengan class warna pada
constants.dart
),
),
),
// and Kuis
// Tentang
InkWell(
onTap: () {
_controller.reset();
Get.to(() => About()); // fungsi (funcion)
untuk menuju ke About pada folder About dengan nama file About.dart
},
child: Container(
width: double.infinity,
margin: EdgeInsets.only(top: kDefaultPadding /
2),
padding: EdgeInsets.all(kDefaultPadding *
.75),
decoration: BoxDecoration(
gradient: kPrimaryGradient,
borderRadius:
BorderRadius.all(Radius.circular(12))
62
),
child: Text("Tentang Aplikasi",
style: Theme.of(context)
.textTheme
.headline6
.copyWith(color: kBlackColor) // warna
tulisan, bisa dirubah atau ditambah sesuai dengan class warna pada
constants.dart
),
),
),
// and Tentang
Spacer(flex: 2,)
],
),
)
)
],
),
);
}
}
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:puri_pemecutan/constants.dart';
import 'package:puri_pemecutan/controllers/video_controller.dart';
import 'package:puri_pemecutan/models/Video.dart';
import
'package:puri_pemecutan/screens/video/components/video_option.dart';
import 'package:video_player/video_player.dart';
64
@override
State<QuestionCard> createState() => _QuestionCardState();
}
@override
void initState() {
_controllers = VideoPlayerController.asset(
widget.question.video);
//_controller =
VideoPlayerController.asset("videos/sample_video.mp4");
_initializeVideoPlayerFuture = _controllers.initialize();
_controllers.setLooping(true);
_controllers.setVolume(1.0);
super.initState();
}
@override
void dispose() {
_controllers.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return ListView(
children: [
Container(
margin: EdgeInsets.symmetric(horizontal: kDefaultPadding,
vertical: kDefaultPadding * 2),
padding: EdgeInsets.all(kDefaultPadding),
decoration: BoxDecoration(
color: Colors.white,
65
borderRadius: BorderRadius.circular(15)
),
child: Column(
children: [
FutureBuilder(
future: _initializeVideoPlayerFuture,
builder: (context, snapshot) {
if (snapshot.connectionState == ConnectionState.done) {
return Center(
child: AspectRatio(
aspectRatio: _controllers.value.aspectRatio,
child: VideoPlayer(_controllers),
),
);
} else {
return Center(
child: CircularProgressIndicator(),
);
}
},
),
FlatButton(
onPressed: () {
setState(() {
if (_controllers.value.isPlaying) {
_controllers.pause();
} else {
_controllers.play();
}
});
},
color: Colors.black,
child: Icon(_controllers.value.isPlaying ? Icons.pause :
Icons.play_arrow),
),
Text(
widget.question.deskripsi,
style: Theme.of(context)
.textTheme
.headline6
.copyWith(color: kBlackColor),
),
...List.generate(widget.question.options.length, (index)
=>
Option(
index: index,
66
text: widget.question.options[index],
press: () => _controller.checkAnswer(widget.question,
index),
)
)
],
),
)
],
);
}
}
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
import 'package:puri_pemecutan/constants.dart';
import 'package:puri_pemecutan/controllers/video_controller.dart';
import 'package:puri_pemecutan/screens/quiz/quiz_screen.dart';
import 'package:puri_pemecutan/screens/sejarah/sejarah_screen.dart';
import 'package:puri_pemecutan/screens/welcome/welcome_screen.dart';
@override
68
),
onPressed: () {
_videoController.reset();
Get.to(QuizScreen());
},
child: Text('Kuis', style: Theme.of(context)
.textTheme
.headline5
.copyWith(color: kRedColor),),
),
TextButton(
style: ButtonStyle(
foregroundColor:
MaterialStateProperty.all<Color>(Colors.blue),
),
onPressed: () => Get.to(WelcomeScreen()),
child: Text('Halaman Utama', style:
Theme.of(context)
.textTheme
.headline5
.copyWith(color: kRedColor)),
),
Spacer(flex: 3,),
],
)
],
),
);
}
}
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:puri_pemecutan/constants.dart';
import 'package:puri_pemecutan/controllers/sejarah_controller.dart';
import 'package:puri_pemecutan/models/Sejarah.dart';
import
'package:puri_pemecutan/screens/sejarah/components/sejarah_option.da
rt';
@required this.question,
}) : super(key: key);
@override
Widget build(BuildContext context) {
SejarahController _controller = Get.put(SejarahController());
return ListView(
children: [
Container(
margin: EdgeInsets.symmetric(horizontal: kDefaultPadding,
vertical: kDefaultPadding * 2),
padding: EdgeInsets.all(kDefaultPadding),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(15)
),
child: Column(
children: [
Image.asset(question.gambar, height: 250.0, width: 350.0,
fit: BoxFit.fill,),
Text(
question.deskripsi,
style: Theme.of(context)
.textTheme
.headline6
.copyWith(color: kBlackColor),
),
...List.generate(question.options.length, (index) =>
Option(
index: index,
text: question.options[index],
press: () => _controller.checkAnswer(question, index),
)
)
],
),
)
],
);
}
}
72
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
import 'package:puri_pemecutan/constants.dart';
import 'package:puri_pemecutan/controllers/sejarah_controller.dart';
73
import 'package:puri_pemecutan/screens/quiz/quiz_screen.dart';
import 'package:puri_pemecutan/screens/welcome/welcome_screen.dart';
@override
Widget build(BuildContext context) {
SejarahController _sejarahController =
Get.put(SejarahController());
return Scaffold(
body: Stack(
fit: StackFit.expand,
children: [
SvgPicture.asset("assets/icons/bg.svg", fit:
BoxFit.fill,),
Column(
children: [
Spacer(flex: 3,),
Text(
"Selesai!",
style: Theme.of(context)
.textTheme
.headline3
.copyWith(color: kSecondaryColor),
),
Spacer(),
Text(
"Lanjut ke Kuis?",
style: Theme.of(context)
.textTheme
.headline4
.copyWith(color: kSecondaryColor),
),
Spacer(),
TextButton(
style: ButtonStyle(
foregroundColor:
MaterialStateProperty.all<Color>(Colors.blue),
),
onPressed: () {
_sejarahController.reset();
Get.to(QuizScreen());
},
child: Text('Kuis', style: Theme.of(context)
.textTheme
74
.headline5
.copyWith(color: kRedColor),),
),
TextButton(
style: ButtonStyle(
foregroundColor:
MaterialStateProperty.all<Color>(Colors.blue),
),
onPressed: () => Get.to(WelcomeScreen()),
child: Text('Halaman Utama', style:
Theme.of(context)
.textTheme
.headline5
.copyWith(color: kRedColor)),
),
Spacer(flex: 3,),
],
)
],
),
);
}
}
6. Halaman Kuis
Berikut ini merupakan desain Halaman Kuis pada saat pengguna
menekan button Kuis pada Halaman Menu Utama yang akan langsung
menampilkan menu Halaman Kuis, dapat dilihat pada Gambar 4.6.
75
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:puri_pemecutan/constants.dart';
import
'package:puri_pemecutan/controllers/question_controller.dart';
import 'package:puri_pemecutan/models/Questions.dart';
import
'package:puri_pemecutan/screens/quiz/components/quiz_option.dart';
76
@override
Widget build(BuildContext context) {
QuestionController _controller = Get.put(QuestionController());
return ListView(
children: [
Container(
margin: EdgeInsets.symmetric(horizontal: kDefaultPadding,
vertical: kDefaultPadding * 2),
padding: EdgeInsets.all(kDefaultPadding),
decoration: BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(15)
),
child: Column(
children: [
Text(
question.question,
style: Theme.of(context)
.textTheme
.headline6
.copyWith(color: kBlackColor),
),
...List.generate(question.options.length, (index) =>
Option(
index: index,
text: question.options[index],
press: () => _controller.checkAnswer(question, index),
)
)
],
),
)
],
);
77
}
}
import 'package:flutter/material.dart';
import 'package:flutter_svg/flutter_svg.dart';
import 'package:get/get.dart';
78
import 'package:puri_pemecutan/constants.dart';
import
'package:puri_pemecutan/controllers/question_controller.dart';
import 'package:puri_pemecutan/screens/welcome/welcome_screen.dart';
@override
Widget build(BuildContext context) {
QuestionController _questionController =
Get.put(QuestionController());
return Scaffold(
body: Stack(
fit: StackFit.expand,
children: [
SvgPicture.asset("assets/icons/bg.svg", fit:
BoxFit.fill,),
Column(
children: [
Spacer(flex: 3,),
Text(
"Score",
style: Theme.of(context)
.textTheme
.headline3
.copyWith(color: kSecondaryColor),
),
Spacer(),
Text(
"${_questionController.numOfCorrectAnswer}/$
{_questionController.questions.length}",
style: Theme.of(context)
.textTheme
.headline4
.copyWith(color: kSecondaryColor),
),
Spacer(),
TextButton(
style: ButtonStyle(
foregroundColor:
MaterialStateProperty.all<Color>(Colors.blue),
),
onPressed: () => Get.to(WelcomeScreen()),
child: Text('Kembali ke Halaman utama'),
),
Spacer(flex: 3,),
79
],
)
],
),
);
}
}
import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';
import 'package:get/get.dart';
import 'package:puri_pemecutan/constants.dart';
import 'package:puri_pemecutan/screens/welcome/welcome_screen.dart';
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
fit: StackFit.expand,
children: [
SvgPicture.asset("assets/icons/bg.svg", fit:
BoxFit.fill,),
Column(
children: [
Spacer(flex: 3,),
Text(
"About",
style: Theme.of(context)
.textTheme
.headline3
.copyWith(color: kSecondaryColor),
),
Spacer(),
Padding(padding: EdgeInsets.all(20),
child: Card(
color: Colors.white,
child: Text(
"Aplikasi ini dibuat oleh: \n\nAnak Agung Bagus
Pramana\n(NIM: 150010275)\n\ndalam rangka untuk mendapatkan gelar
Sarjana di STIKOM Bali",
style: Theme.of(context)
.textTheme
.headline5
.copyWith(color: kBlackColor),
textAlign: TextAlign.center,
),
)
),
Spacer(),
TextButton(
style: ButtonStyle(
81
foregroundColor:
MaterialStateProperty.all<Color>(Colors.blue),
),
onPressed: () => Get.to(WelcomeScreen()),
child: Text('Halaman Utama', style:
Theme.of(context)
.textTheme
.headline5
.copyWith(color: kRedColor)),
),
Spacer(flex: 3,),
],
)
],
),
);
}
}
Hasil dan keterangan dari pengujian sistem pada bagian halaman tampil
video dukumenter dapat dilihat pada tabel 4.2.
Table 4. 2 Hasil Pengujian Tampil Video
Kelas Uji Hasil Yang Hasil Pengujian Keterangan
Diharapkan
Tekan tombol lanjut Menampilkan Menampilkan Sesuai
83
Hasil dan keterangan dari pengujian sistem pada bagian halaman tampil
mengenai Perang Puri Cagar Budayadapat dilihat pada tabel 4.4.
Table 4. 4 Tampil Mengenai Perang Puri Cagar Budaya.
Kelas Uji Hasil Yang Hasil Pengujian Keterangan
Diharapkan
Tekan tombol lanjut Menampilkan Menampilkan Sesuai
halaman beberapa halaman beberapa
stage dari 1 stage dari 1
sampai n, dan sampai n, dan
menampilkan menampilkan
halaman selesai halaman selesai
Mengenai Perang Mengenai Perang
Puri Cagar Puri Cagar
Budaya. Budaya.
Hasil dan keterangan dari pengujian sistem pada bagian halaman tampil
kuis dapat dilihat pada tabel 4.6.
Table 4. 6 Tampil Kuis
Kelas Uji Hasil Yang Hasil Pengujian Keterangan
Diharapkan
Memilih salah satu Menampilkan Menampilkan Sesuai
jawaban dari pertanyaan dari 1/n pertanyaan dari 1/n
pertantyaan yang di denagan denagan
sajikan. menampilkan menampilkan
notifikasi, jika notifikasi, jika
notifikasi jawaban notifikasi jawaban
pilihan ganda pilihan ganda
berwarna merah berwarna merah
menunjukan menunjukan
pertanyaan yang di pertanyaan yang di
jawab salah, jika jawab salah, jika
notifikasi berwarna notifikasi berwarna
hijau menandakan hijau menandakan
jawaban benar, jawaban benar,
dan setelah selesai dan setelah selesai
menjawab menjawab
beberapa beberapa
pertanyaan yang di pertanyaan yang di
sajikan akan sajikan akan
mengarahkan ke mengarahkan ke
halaman tampil halaman tampil
penilaian kuis. penilaian kuis.
Hasil dan keterangan dari pengujian sistem pada bagian halaman tampil
Penilaian kuis dapat dilihat pada tabel 4.7.
Table 4.7 Tampil Penilaian Kuis
Kelas Uji Hasil Yang Hasil Pengujian Keterangan
86
Diharapkan
Setelah menjawab Menampilkan Menampilkan Sesuai
beberapa pertanyaan jumlah score yang jumlah score yang
dari halaman kuis di dapatkan dari di dapatkan dari
hasil menjawab hasil menjawab
beberapa beberapa
pertanyaan yang di pertanyaan yang di
sajikan di halaman sajikan di halaman
kuis. kuis.
Tekan link Halman Menampilkan Menampilkan Sesuai
Utama halaman utama halaman utama
yang berisikan yang berisikan
button, video button, video
documenter, documenter,
mengenai Perang mengenai Perang
Puri Cagar Puri Cagar
Budaya, kuis, dan Budaya, kuis, dan
tentang aplikasi. tentang aplikasi
Hasil dan keterangan dari pengujian sistem pada bagian halaman utama
admin dapat dilihat pada tabel 4.8
Table 4. 8 Hasil Pengujian Tampil Tentang Aplikasi
Kelas Uji Hasil Yang Hasil Pengujian Keterangan
Diharapkan
Tekan link Halman Menampilkan Menampilkan Sesuai
Utama halaman utama halaman utama
yang berisikan yang berisikan
button, video button, video
documenter, documenter,
mengenai Perang mengenai Perang
Puri Cagar Budaya, Puri Cagar Budaya,
kuis, dan tentang kuis, dan tentang
aplikasi. aplikasi
87
Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10
1 4 2 4 2 4 1 4 2 4 2
2 5 1 4 2 4 3 4 1 4 1
3 4 2 4 2 4 2 4 2 4 2
4 5 2 4 2 5 2 4 2 4 2
89
5 4 3 5 2 4 2 4 2 5 2
6 3 2 4 2 3 2 3 3 4 2
7 4 2 4 2 4 2 4 2 4 2
8 4 2 4 1 5 2 4 2 4 1
9 5 2 4 2 4 1 4 2 4 2
10 4 2 4 2 4 2 5 2 5 2
(Jumlah
Q1 Q2 Q3 Q4 Q5 Q Q7 Q8 Q9 Q10 x 2,5)
6
1 3 3 3 3 3 4 3 3 3 3 31 77,5
2 4 4 3 3 3 2 3 4 3 3 33 82,5
3 3 3 3 3 3 3 3 3 3 3 30 75
4 4 3 3 3 4 3 3 3 3 3 32 80
5 3 2 4 3 3 3 3 3 4 3 31 77,5
6 2 3 3 3 2 3 2 2 3 3 26 65
7 3 3 3 3 3 3 3 3 3 3 30 75
90
8 3 3 3 4 4 3 3 3 3 4 33 82,5
9 4 3 3 3 3 4 3 3 3 3 32 80
10 3 3 3 3 3 3 4 3 4 3 32 80
Pada bagian akhir dari skripsi ini, peneliti akan mengemukakan beberapa
kesimpulan dan saran yang didasarkan pada temuan hasil penelitian dan uraian
pada bab-bab sebelumnya mengenai masalah yang diteliti, yaitu Pengenalan
Sejarah Perang Puri Cagar Budaya Di Denpasar Menggunakan Media
Pembelajaran Interaktif Berbasis Android.
V.1 Kesimpulan
Dari hasil Tugas Akhir yang berjudul Pengenalan Sejarah Perang Puri
Cagar Budaya Di Denpasar Menggunakan Media Pembelajaran Interaktif
Berbasis Androidyang telah disusun oleh penulis, maka dapat disimpulkan
beberapa hal yaitu sebagai berikut:
1. Pengembangan aplikasi android telah berhasil dibuat dalam bentuk
Sistem Informasi Pengenalan Sejarah Perang Puri Cagar Budaya
berbasis Android. Dengan Menggunakan Framework Flutter dengan
mengunakan metode perancangan Unified Modeling Language (UML).
Sistem aplikasi ini menggunakan bahasa pemograman Dart dengan
menggunakan Framework Fluter unutk aplikasi.
2. Aplikasi Mobile untuk Sistem Informasi Pengenalan Sejarah Perang Puri
Cagar Budaya berbasis android, dengan menggunakan Framework
Flutter telah berhasil dikembangkan dengan fitur kuis yang dapat
memberikan pembelajaran mengenai sejarah Perang Puri Cagar Budaya.
3. Pengujian fungsi-fungsi dari sistem telah dijalankan dengan baik
menggunakan metode blackbox testing dengan hasil yang sesuai dengan
harapan.
4. Pengujian System Usability Scare telah dijalankan dengan cara
membagikan kuesioner SUS ke beberapa responder dan mendapatkan
skor rata-rata 77,3 yang artinya mendapatkan respon yang baik dari
responder.
93
94
V.2 Saran
Menyadari masih banyaknya kekurangan dari perekayasaan yang
dilakukan, demikian masih banyak hal yang perlu dikembangkan. Adapun saran
yang dapat ditujukan untuk mengembangkan Sistem Pengenalan Sejarah
Perang Puri Cagar Budayaberbasis Android. Dengan Menggunakan Framework
Flutter ini sebagai berikut:
1. Mengembangkan aplikasi ini dengan fiturmulti bahasa.
2. Mengembangkan fitur reality gambar bangunan-bangunan yang ada di
Perang Puri Cagar Budaya.
3. Menambahkan fitur maps untuk setiap kawasan yang ada di Perang Puri
Cagar Budaya.
4. Mencari informasi lebih jauh terhadap objek yang dijadikan media
pembelajaran.
5. Membuat halaman admin untuk mempermudah dalam menambah dan
mengurangi pertanyaan.
6. Membuat berbagai jenis tipe pertanyaan seperti tebak gambar dan
sebagainya.
7. Informasi yang tersedia pada aplikasi ini diharapkan dapat ditambah lagi
di masa mendatang sehingga menjadi sistem informasi pengenalan
kerajaan-kerajaan kususnya di Bali dengan fitur yang lebih lengkap dan
menarik.
DAFTAR PUSTAKA
[1] Adinto FS. Millennial FINANCE. Edisi 1. Jakarta: PT. Grasindo. 2017:4.
[2] Ardhana, I Ketut. Pandangan Lokal Versus Barat Tentang Puputan Badung:
Ekspansi Imperialisme Modern Belanda dalam Konteks Bali. Vol.3. Denpasar:
JURNAL KAJIAN BALI. 2013:3.
[3] Satrya, I. Wayan Gede Oksarya Ega, I. Gede Suardika, Ni Kadek Sukerti, and Ni
Putu Nanik Hendayanti. "Multimedia Interaktif Pengenalan Pura Paluang Nusa
Penida Bali Berbasis Android." JURNAL FASILKOM (teknologi inFormASi dan
ILmu KOMputer) 10, no. 3 (2020): 301-306.
[4] Sihite, Elly Veronika, and Rika Rosnelly. "Perancangan aplikasi media
pembelajaran interaktif pengenalan anatomi tubuh manusia berbasis android."
INFOSYS (INFORMATION SYSTEM) JOURNAL 5, no. 2 (2021): 123-133.
[5] Irfansyah, J. (2017). Media Pembelajaran Pengenalan Hewan Untuk Siswa
Sekolah Dasar Menggunakan Augmented Reality Berbasis Android. JIEET
(Journal of Information Engineering and Educational Technology), 1(1), 9-17.
[6] Astuti, I.A.D., Sumarni, R.A. and Saraswati, D.L., 2017. Pengembangan Media
Pembelajaran Fisika Mobile Learning berbasis Android. Jurnal Penelitian &
Pengembangan Pendidikan Fisika, 3(1), pp.57-62
[7] Lubis, I.R. and Ikhsan, J., 2015. Pengembangan media pembelajaran kimia
berbasis android untuk meningkatkan motivasi belajar dan prestasi kognitif
peserta didik SMA. Jurnal Inovasi Pendidikan IPA, 1(2), pp.191-201.
[8] Natalia Steafani Hehakaya. “Aplikasi Pengajuan Perizinan Industri Kayu TPT
Pada Dinas Kehutanan Provinsi Bali”. STMIK Stikom Bali, Denpasar. 2017.
[9] Rice Novita, Novita Sari. Sistem Informasi Penjualan Pupuk Berbasis E-
Commerce. Universitas Islam Negeri Sultan Syarif Kasim, Riau. 2014.
[10] Syamsuddin Syafrir. “Analisa dan Perancangan Sistem Informasi Perpustakaan
MAN Model Kupang”. Sekolah Tinggi Manajemen Informatika dan Komputer
AMIKOM. Yogyakarta. 2011.
[11] Y. Yudhanto adn A. Wijayanto, “Mudah Membuat dan Berbisnis Aplikasi Android
dengan Android Studio”, Jakarta: Elex Media Komputido, 2017.
[12] Rusli Saputra. “Desain Sistem Informasi Order Photo Pada Creative Studio Photo
Dengan Menggunakan Bahasa Pemrograman Visual Basic.Net 2010”. Padang.
2014.
95
96
[13] Crosstechno.com, 2019. “Apa itu Flutter”. Diakses tanggal 17 Agustus 2021 dari
https://crosstechno.com/blog/view/apa-itu-flutter-.
[14] Dart, 2019. Dart Language. [Online] Availanle at: https://www.dartlang.org/
[Diakses pada 18 Oktober 2020].
[15] W.Rian Yulianto, ”Ekstensi Dan Tema Visual Studio Code Yang Saya Gunakan”,
3 Februari 2019 [Online] Tersedia:
https://medium.com/kode-dan-kodean/ekstensi-dan-tema-visual-studio-code-
yang-saya-gunakan-6c3555762816 [Diakses: 2 Oktober 2020].
[16] M. Shalahuddin and A. S. Rosa, “Rekayasa Perangkat Lunak Terstruktur dan
Berorientasi Objek”, Bandung: Informatika, 2014.
[17] Abdul Kadir, “Mudah Mempelajari Database MySQL”. Yogyakarta : Andi : 2010.
[18] Yoki Firmansyah, Udi, “Penerapan Metode SDLC Waterfall Dalam Pembuatan
Sistem Informasi Akademik Berbasis Web Studi Kasus Pondok Pesantren Al-
Habi Sholeh Kabupaten Kubu Raya, Kalimantan Barat”. Jurnal Teknologi &
Manajemen Informatika , vol. 4 no.1 2018.
[19] Pudjoatmodjo, B., & Wijaya, R. (n.d.). Tes Kegunaan (Usability Testing) Pada
Aplikasi Kepegawaian Dengan Menggunakan System Usability Scale (Studi
Kasus : Dinas Pertanian Kabupaten Bandung).
97