FavMovie
DISUSUN OLEH :
Laporan disusun untuk memenuhi tugas mata kuliah Proyek Perangkat Lunak. Selain
itu, laporan ini bertujuan menambah wawasan tentang pembahasan Perangkat Lunak yang
lebih mendalam bagi para pembaca dan juga bagi penulis.
Dengan segala keterbatasan yang dimiliki, saran dan kritik dari semua pihak sangat di
harapkan demi kesempurnaan makalah ini kedepannya. Atas saran dan kritik pembaca,
penulis mengucapkan terima kasih. Akhir kata, semoga laporan ini dapat memberikan
manfaat bagi kita semua.
Penulis
BAB I
PENDAHULUAN
Dalam era digital, website movie telah menjadi sumber utama bagi pengguna
untuk menemukan dan menonton film favorit mereka. Website seperti JustWatch,
IMDb, Plex, Tubi, Letterboxd dan lainnya menawarkan layanan streaming film
secara online, memungkinkan pengguna untuk menemukan film yang mereka sukai
dan menontonnya kapan saja dan di mana saja. Fitur pencarian yang disediakan
oleh website movie memungkinkan pengguna untuk dengan mudah menemukan
film yang mereka inginkan, sementara fitur daftar favorit memungkinkan pengguna
untuk menyimpan film yang mereka sukai agar dapat diakses dengan mudah di
kemudian hari. Dengan demikian, website movie memberikan pengalaman yang
lebih terorganisir dan menyenangkan bagi para pecinta film.
Website movie merupakan suatu hal yang dibutuhkan oleh para penikmat film,
hal ini membantu para penikmat film untuk dapat melihat film apa saja yang
sedang berlangsung dan film yang dapat ditonton. Penikmat film mengharapkan
website movie ini dapat membantu untuk menyimpan film mereka untuk dapat
dilihat kembali apa yang akan ditonton dan disukainya.
Time schedule :
Kegiatan 1 2 3 4 5 6 7 8 9 10 11 1 13 14
2
Membahas ide projek
Menentukan manfaat PL
Analisis penggunaan model PL
Analisis kebutuhan system
Desain system dan software
Implementasi dan unit testing
Integrasi dan system testing
Deploy system
Maintenance
Dokumentasi makalah
Presentasi
BAB II
LANDASAN TEORI
2.1. Firebase
Firebase adalah platform pengembangan mobile dan web yang dikelola oleh
Google. Ini menyediakan berbagai layanan dan alat yang dapat membantu
pengembang membuat dan memelihara aplikasi secara efisien. Berikut adalah
beberapa fitur utama dari Firebase:
- Authentication
- Realtime Database
- Cloud Firestore
- Cloud Functions
- Cloud Storage
- Hosting
- Cloud Messaging
- Machine Learning
- Test Lab
2.2. React.js
React.js adalah pustaka JavaScript yang sangat populer yang dikembangkan
oleh Facebook. Didesain untuk membangun antarmuka pengguna (UI) dalam aplikasi
web yang bersifat satu halaman (single-page), React memberikan pendekatan yang
efisien dan terstruktur dalam mengelola tampilan. Salah satu fitur kunci React adalah
penggunaan komponen, di mana antarmuka dibagi menjadi potongan-potongan kecil
yang dapat diatur dan dikelola secara independen. Setiap komponen dapat memiliki
state dan properti sendiri, memungkinkan pembangunan antarmuka yang dinamis dan
responsif. Penggunaan JSX, ekstensi sintaksis yang memungkinkan penulisan kode
antarmuka lebih dekat dengan HTML, juga memberikan kejelasan dalam pembacaan
dan pemeliharaan kode. React menggunakan konsep Virtual DOM untuk
meningkatkan efisiensi pembaharuan tampilan. Dengan membandingkan Virtual
DOM dengan DOM aktual, React dapat mengidentifikasi perubahan dan melakukan
pembaruan hanya pada elemen yang memerlukan, mengurangi beban pada browser
dan meningkatkan kinerja aplikasi secara keseluruhan.
Unidirectional data flow adalah prinsip utama dalam React, di mana data
mengalir dari komponen induk ke komponen anak. Ini mempermudah pemahaman
alur data dalam aplikasi dan menghindari perubahan tak terduga. React juga memiliki
ekosistem yang kuat dengan banyak perpustakaan dan alat pendukung, termasuk
Redux untuk manajemen state yang lebih kompleks, React Router untuk penanganan
rute, dan banyak lagi. Perkenalan React Hooks membawa fleksibilitas baru dalam
pengembangan komponen fungsional dengan memungkinkan penggunaan state dan
fitur React lainnya tanpa harus menggunakan komponen berbasis kelas.
Kesederhanaan, performa tinggi, dan kemampuan untuk diintegrasikan dengan
teknologi lain menjadikan React sebagai pilihan utama untuk pengembangan aplikasi
web modern. React terus berkembang dan menjadi salah satu alat utama dalam
komunitas pengembang web, memperkuat posisinya sebagai pustaka yang
memudahkan pengembangan UI yang dinamis dan responsif.
BAB III
ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisis Sistem
Analisis sistem merupakan bagian dalam penelitian yang bertujuan untuk
menguraikan hal-hal yang diperlukan dalam sebuah penelitian untuk dapat berjalan di
dalam sistem. Analisis sistem dibagi menjadi dua yakni analisis masalah dan analisis
kebutuhan. Analisis masalah dilakukan untuk mengidentifikasi penyebab serta
dampak dari masalah, sedangkan analisis kebutuhan dibutuhkan untuk menguraikan
data dan tahap yang diperlukan dalam menciptakan suatu sistem.
Diagram Use Case salah satu jenis diagram dalam Unified Modeling
Language (UML) yang digunakan untuk menggambarkan interaksi antara
aktor (pengguna atau sistem eksternal) dengan sistem atau aplikasi yang
sedang dibangun. Diagram ini membantu dalam mendefinisikan, memahami,
dan merancang fungsionalitas sistem dari sudut pandang pengguna.
BAB IV
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1 Implementasi
Dalam penelitian ini, sistem dibangun dengan menggunakan beberapa
komponen seperti Firebase, React.js, Firebase Google Authentications, TMDB API
dan Framer Motion yang digunakan sebagai komponen untuk pengembangan aplikasi
hingga terbentuknya aplikasi dan di hosting di internet dan dapat diakses oleh para
pengguna.
Pada gambar 4.1.1.1 Dapat dilihat bahwa pada halaman tersebut terdapat pilihan
genre film yang disajikan dan juga fitur search untuk mencari film yang kita inginkan.
Dengan adanya pengujian black box testing ini diharapkan bisa membantu
peneliti untuk mengetahui website ini berjalan dengan lancar dan apabila ada
kesalahan maka bisa segera diperbaiki. Untuk hasil black box testing yang telah kami
uji terhadap 10 user hasilnya seperti ini :
5.1. Kesimpulan
Berikut merupakan kesimpulan terhadap project MovieFav.
1. Dengan adanya aplikasi website rekomendasi film, dapat membantu para
penggemar film agar lebih mudah dalam mencari referensi film serta dapat
memfavoritkan film-film yang ingin ditonton.
2. React.js dapat digunakan dalam bagian pengembangan untuk bagian front-end
dari halaman website.
3. TMDB API memungkinkan integrasi mudah untuk memasukkan informasi
film-film ke dalam situs web atau aplikasi, termasuk detail film, pencarian
film, gambar poster, filterisasi data, dan lain-lain. Ini dapat meningkatkan
kualitas konten dan menyediakan pengguna dengan sumber daya yang lebih
lengkap.
4. Framer Motion memberikan pengalaman pengguna yang lebih dinamis dan
menarik dengan menyediakan animasi halus saat berpindah antar halaman,
menampilkan daftar film, atau merespons interaksi pengguna.
5. Firebase Hosting memungkinkan pengembang dengan mudah mendeploy dan
mengelola situs web. Proses ini cepat dan terintegrasi dengan fitur lain dari
Firebase.
6. Firebase Google Authentication adalah bagian dari layanan otentikasi Firebase
yang memungkinkan pengguna untuk login ke situs web menggunakan akun
Google, sehingga dapat menyediakan pengalaman login yang ramah
pengguna, meningkatkan keamanan, dan mengurangi kompleksitas
pengelolaan otentikasi di situs web.
5.2. Saran
Berikut merupakan rekomendasi untuk dipertimbangkan demi penelitian
lanjutan:
Golbeck, J. & Hendler, James. (2006). FilmTrust: Movie recommendations using trust
in Web-based social networks. 2006 3rd IEEE Consumer Communications
and Networking Conference, CCNC 2006. 1. 282- 286.
10.1109/CCNC.2006.1593032.
Mak, H. & Koprinska, Irena & Poon, Josiah. (2003). INTIMATE: a Web-based movie
recommender using text categorization. 602- 605. 10.1109/WI.2003.1241277.
Wakil, Karzan & Bakhtyar, Rebwar & Alaadin, Kozhin. (2015). Improving Web
Movie Recommender System Based on Emotions. International Journal of
Advanced Computer Science and Applications. 6.
10.14569/IJACSA.2015.060232.