FP PBKK

 Nama: Arkana Bilal Imani

NRP : 5025211034

Kelas : PBKK A

Source Code: Link


Cari paper yang berhubungan dengan aktivitas pembuatan perangkat lunak/ aplikasi menggunakan framework.

Berdasarkan referensi yang sudah didapatkan,

Paper yang digunakan sebagai referensi adalah paper berikut: https://e-journal.upr.ac.id/index.php/jcoms/article/view/8864

Topik yang digunakan adalah website aplikasi portal berita


  • Buatlah deskribsi studi kasus aplikasi ditinjau dari MVC nya(individu)

    Deskripsi Umum: Studi kasus ini mendokumentasikan implementasi arsitektur Model-View-Controller (MVC) pada sebuah aplikasi portal berita berbasis website. MVC adalah paradigma desain perangkat lunak yang memisahkan logika aplikasi menjadi tiga komponen utama: Model, View, dan Controller. Aplikasi portal berita menjadi contoh yang sangat baik untuk menerapkan konsep ini karena kompleksitasnya yang melibatkan pengelolaan konten, interaksi pengguna, dan presentasi visual yang dinamis.

    Model: Model pada aplikasi ini bertanggung jawab untuk mengelola dan memanipulasi data. Model ini mencakup struktur data yang digunakan untuk menyimpan informasi seperti berita, kategori, penulis, dan komentar. Pada level implementasinya, Model berinteraksi dengan database untuk menyimpan dan mengambil data. Dalam konteks portal berita, model juga dapat mencakup fungsi-fungsi untuk pengelolaan berita, validasi data, dan penanganan event.

    View: View merupakan komponen yang menangani presentasi data kepada pengguna. Pada aplikasi portal berita, View mencakup semua elemen tampilan yang diperlukan, seperti halaman berita, daftar kategori, form komentar, dan halaman utama. Implementasi View harus memastikan bahwa presentasi informasi dilakukan dengan baik dan responsif terhadap perubahan data. Desain responsif dan estetika yang baik menjadi fokus dalam pengembangan View.

    Controller: Controller adalah komponen yang mengelola input pengguna dan mengontrol alur aplikasi. Dalam konteks portal berita, Controller mengatur interaksi pengguna, seperti penambahan berita baru, pencarian, dan pengelolaan komentar. Controller juga bertanggung jawab untuk memproses data dari Model dan mengupdate View saat ada perubahan data. Penerapan logika bisnis, validasi input, dan koordinasi antara Model dan View merupakan tanggung jawab Controller.

  • Buatlah rancangan umum arsitektur atau fitur yang ada dalam aplikasi  (individu)
  • Frontend (View):

    • Berita Utama (Homepage): Menampilkan berita utama dalam tata letak yang menarik dan mudah dinavigasi.
    • Kategori Berita: Memungkinkan pengguna untuk menjelajahi berita berdasarkan kategori tertentu (politik, ekonomi, hiburan, dll.).
    • Halaman Berita Detail: Menampilkan konten lengkap, termasuk gambar, teks, dan komentar pengguna.
    • Pencarian: Fasilitas pencarian untuk memudahkan pengguna menemukan berita tertentu.
  • Backend (Controller):

    • Manajemen Berita: Memungkinkan admin untuk menambah, mengedit, atau menghapus berita. Terdapat validasi input dan manajemen gambar.
    • Manajemen Kategori: Pengelolaan kategori berita untuk organisasi dan pencarian yang lebih baik.
    • Manajemen Penulis: Pendaftaran dan pengelolaan penulis berita.
    • Manajemen Komentar: Moderasi dan pengelolaan komentar pengguna.
  • Database (Model):

    • Tabel Berita: Menyimpan informasi berita, seperti judul, isi, gambar, tanggal, dan kategori.
    • Tabel Kategori: Menyimpan daftar kategori berita.
    • Tabel Penulis: Informasi tentang penulis berita.
    • Tabel Komentar: Menyimpan komentar pengguna dengan kaitannya ke berita tertentu.
  • Server dan Logika Bisnis:

    • API (Application Programming Interface): Memungkinkan komunikasi antara frontend dan backend.
    • Logika Bisnis: Menangani pemrosesan data, validasi, dan koordinasi antara komponen lainnya.
    • Keamanan: Implementasi keamanan untuk melindungi data pengguna dan mencegah serangan keamanan.
  • Pengelolaan Pengguna dan Otorisasi:

    • Sistem Pendaftaran dan Otentikasi: Memungkinkan pengguna untuk membuat akun dan login.
    • Otorisasi Pengguna: Menentukan tingkat akses untuk pengguna terdaftar, misalnya, pengguna biasa, penulis, dan admin.
  • Responsif dan Desain Adaptif:

    • Desain Responsif: Memastikan aplikasi dapat diakses dengan baik di berbagai perangkat (desktop, tablet, dan ponsel).
    • Optimisasi Kinerja: Mengoptimalkan performa aplikasi untuk memastikan waktu muat yang cepat.
  • Analitika dan Pelacakan:

    • Analitika Pengguna: Melacak perilaku pengguna untuk memahami preferensi dan meningkatkan pengalaman pengguna.
    • Pelacakan Kinerja: Memantau kinerja aplikasi untuk perbaikan dan peningkatan.
  • Integrasi Media Sosial:

    • Berbagi Berita: Integrasi dengan platform media sosial untuk berbagi berita dengan mudah.
    • Komentar Sosial: Komentar dan diskusi melibatkan media sosial.
  • Pemeliharaan dan Pembaruan:

    • Manajemen Versi: Pemeliharaan kode dan pembaruan sistem.
    • Pemantauan Aplikasi: Pemantauan secara terus-menerus untuk mendeteksi masalah dan perbaikan cepat.
  • Dokumentasi dan Pelatihan:

    • Dokumentasi: Dokumentasi lengkap untuk memudahkan pengembang baru dan pemeliharaan aplikasi.
    • Pelatihan Pengguna dan Admin: Sesi pelatihan untuk pengguna dan administrator aplikasi.

  • Rancang desain databasenya  (individu)
  • Tabel Berita:

    • id_berita (Primary Key): Identifier unik untuk setiap berita.
    • judul: Judul berita.
    • isi: Isi berita.
    • gambar: URL atau path ke gambar berita.
    • tanggal_publikasi: Tanggal publikasi berita.
    • id_kategori (Foreign Key): Kunci asing yang terhubung ke Tabel Kategori.
    • id_penulis (Foreign Key): Kunci asing yang terhubung ke Tabel Penulis.
  • Tabel Kategori:

    • id_kategori (Primary Key): Identifier unik untuk setiap kategori.
    • nama_kategori: Nama kategori berita.
  • Tabel Penulis:

    • id_penulis (Primary Key): Identifier unik untuk setiap penulis.
    • nama_penulis: Nama lengkap penulis.
    • email_penulis: Alamat email penulis.
  • Tabel Komentar:

    • id_komentar (Primary Key): Identifier unik untuk setiap komentar.
    • id_berita (Foreign Key): Kunci asing yang terhubung ke Tabel Berita.
    • nama_pengguna: Nama pengguna pengirim komentar.
    • isi_komentar: Isi komentar.
    • tanggal_komentar: Tanggal komentar.

      Logical Data Model:


      Physical Data Model:


  • Buat desain front end  (individu)




  • Tentukan Control yang akan mengandle logika back end.  (individu)

    Dalam arsitektur MVC (Model-View-Controller), logika backend dikelola oleh komponen Controller. Controller bertanggung jawab untuk menerima input dari pengguna, memproses data melalui model, dan mengatur tampilan (view) yang akan ditampilkan kepada pengguna. Berikut adalah beberapa kontrol yang akan menghandle logika backend dalam aplikasi portal berita:

  • BeritaController:
    • Menangani operasi terkait berita, seperti menambah, mengedit, atau menghapus berita.
    • Mengambil data dari model Berita untuk ditampilkan di halaman berita.
    • Mengelola kategori berita dan menangani permintaan pengguna terkait dengan kategori.

  • KategoriController:
    • Mengelola operasi terkait kategori berita, seperti menambah, mengedit, atau menghapus kategori.
    • Menangani permintaan pengguna terkait dengan kategori.

  •  PenulisController:
    • Mengelola operasi terkait penulis berita, seperti menambah, mengedit, atau menghapus penulis.
    • Menangani permintaan pengguna terkait dengan penulis.

  • KomentarController:
    • Mengelola operasi terkait komentar, seperti menambah, mengedit, atau menghapus komentar.
    • Menampilkan komentar untuk berita tertentu.

  • Implementasikan rancangan yang sudah dibuat  menggunakan Framework NET, CI ataupun Framework Google (pilih salah satu - bisa kelompok maks 3)
  • Buat video presentasinya, upload di youtube, dan didokumentasikan di blog.



Comments

Popular Posts