Final Project PBKK

  

Nama : Tigo S Yoga

Kelas : PBKK A

NRP : 5025211125


Final Project

Pengembangan Website Radio SSFM Semarang dengan CodeIgniter Berbasis Model View Controller




Referensi Paper : Paper

Radio SSFM Semarang merupakan salah satu radio yang pernah populer di Semarang. Radio ini merupakan salah satu anak perusahaan Suara Merdeka grup. Radio SSFM Semarang perlu dikembangkan kembali agar dapat bersaing dengan radio lain. Salah satu yang perlu dikembangkan adalah website radio SSFM. Website ini sebelumnya hanya digunakan untuk melakukan streaming dan dibuat dengan PHP biasa yang belum menggunakan framework sehingga akan sulit dilakukan maintenance.

MVC

Model

  • Model Program Siaran
    • Berfungsi untuk mengelola data program siaran, seperti judul program, waktu tayang, dan deskripsi program.
    • Metode-metode yang dimiliki:
      • ambilProgramSiaranYangSedangTayangkan(): Mengambil data-data program siaran yang sedang tayang.
      • ambilProgramSiaranBerdasarkanJudul(): Mengambil data-data program siaran berdasarkan judul program.
      • simpanProgramSiaran(): Menyimpan data program siaran baru.
      • perbaruiProgramSiaran(): Memperbarui data program siaran yang sudah ada.
      • hapusProgramSiaran(): Menghapus data program siaran.
  • Model Penyiar
    • Berfungsi untuk mengelola data penyiar, seperti nama penyiar, foto penyiar, dan biodata penyiar.
    • Metode-metode yang dimiliki:
      • ambilPenyiar(): Mengambil data-data penyiar.
      • simpanPenyiar(): Menyimpan data penyiar baru.
      • perbaruiPenyiar(): Memperbarui data penyiar yang sudah ada.
      • hapusPenyiar(): Menghapus data penyiar.
  • Model Berita
    • Berfungsi untuk mengelola data berita, seperti judul berita, tanggal berita, dan isi berita.
    • Metode-metode yang dimiliki:
      • ambilBerita(): Mengambil data-data berita.
      • simpanBerita(): Menyimpan data berita baru.
      • perbaruiBerita(): Memperbarui data berita yang sudah ada.
      • hapusBerita(): Menghapus data berita.
  • Model Acara
    • Berfungsi untuk mengelola data acara, seperti judul acara, tanggal acara, dan deskripsi acara.
    • Metode-metode yang dimiliki:
      • ambilAcara(): Mengambil data-data acara.
      • simpanAcara(): Menyimpan data acara baru.
      • perbaruiAcara(): Memperbarui data acara yang sudah ada.
      • hapusAcara(): Menghapus data acara.
  • Model Sponsor
    • Berfungsi untuk mengelola data sponsor, seperti nama sponsor, logo sponsor, dan kontak sponsor.
    • Metode-metode yang dimiliki:
      • ambilSponsor(): Mengambil data-data sponsor.
      • simpanSponsor(): Menyimpan data sponsor baru.
      • perbaruiSponsor(): Memperbarui data sponsor yang sudah ada.
      • hapusSponsor(): Menghapus data sponsor.

View

  • View Beranda
    • Menampilkan data-data program siaran yang sedang tayang.
  • View Program Siaran
    • Menampilkan detail informasi program siaran.
  • View Penyiar
    • Menampilkan detail informasi penyiar.
  • View Berita
    • Menampilkan detail informasi berita.
  • View Acara
    • Menampilkan detail informasi acara.
  • View Sponsor
    • Menampilkan detail informasi sponsor.

Controller

  • BerandaController
    • Menghandle permintaan untuk menampilkan halaman beranda.
  • ProgramSiaranController
    • Menghandle permintaan untuk menampilkan halaman program siaran.
  • PenyiarController
    • Menghandle permintaan untuk menampilkan halaman penyiar.
  • BeritaController
    • Menghandle permintaan untuk menampilkan halaman berita.
  • AcaraController
    • Menghandle permintaan untuk menampilkan halaman acara.
  • SponsorController
    • Menghandle permintaan untuk menampilkan halaman sponsor.

Secara umum, model berfungsi untuk mengakses dan memanipulasi data dari basis data, view berfungsi untuk menampilkan data kepada pengguna, dan controller berfungsi untuk menghubungkan model dan view.

FITUR

Aplikasi website radio SSFM Semarang memiliki fitur-fitur berikut:

  • Streaming radio

Fitur ini memungkinkan pengguna untuk mendengarkan siaran radio SSFM secara langsung.

  • Informasi program siaran

Fitur ini memungkinkan pengguna untuk melihat informasi program siaran yang sedang tayang, termasuk judul program, waktu tayang, dan deskripsi program.

  • Informasi penyiar

Fitur ini memungkinkan pengguna untuk melihat informasi penyiar radio SSFM, termasuk nama penyiar, foto penyiar, dan biodata penyiar.

  • Informasi berita

Fitur ini memungkinkan pengguna untuk melihat informasi berita yang dimuat oleh radio SSFM, termasuk judul berita, tanggal berita, dan isi berita.

  • Informasi acara

Fitur ini memungkinkan pengguna untuk melihat informasi acara yang diselenggarakan oleh radio SSFM, termasuk judul acara, tanggal acara, dan deskripsi acara.

  • Informasi sponsor

Fitur ini memungkinkan pengguna untuk melihat informasi sponsor yang mendukung radio SSFM, termasuk nama sponsor, logo sponsor, dan kontak sponsor.

Selain fitur-fitur tersebut, aplikasi website radio SSFM Semarang juga memiliki fitur-fitur tambahan berikut:

  • Pencarian

Fitur ini memungkinkan pengguna untuk mencari informasi berdasarkan judul program, judul berita, atau nama penyiar.

  • Komentar

Fitur ini memungkinkan pengguna untuk memberikan komentar pada halaman program siaran, halaman penyiar, halaman berita, atau halaman acara.

  • Pesan

Fitur ini memungkinkan pengguna untuk mengirimkan pesan kepada radio SSFM.

Fitur-fitur tersebut dirancang untuk memberikan informasi yang lengkap dan terkini kepada pengguna, serta meningkatkan pengalaman pengguna dalam menggunakan aplikasi website radio SSFM Semarang.

RANCANGAN DATABASE

Implementasi SQL

CREATE TABLE program_siaran (
  id_program_siaran INT NOT NULL AUTO_INCREMENT,
  judul_program VARCHAR(255) NOT NULL,
  waktu_tayang TIME NOT NULL,
  deskripsi_program TEXT NOT NULL,
  PRIMARY KEY (id_program_siaran)
);

CREATE TABLE penyiar (
  id_penyiar INT NOT NULL AUTO_INCREMENT,
  nama_penyiar VARCHAR(255) NOT NULL,
  foto_penyiar VARCHAR(255) NOT NULL,
  biodata_penyiar TEXT NOT NULL,
  PRIMARY KEY (id_penyiar)
);

CREATE TABLE berita (
  id_berita INT NOT NULL AUTO_INCREMENT,
  judul_berita VARCHAR(255) NOT NULL,
  tanggal_berita DATE NOT NULL,
  isi_berita TEXT NOT NULL,
  PRIMARY KEY (id_berita)
);

CREATE TABLE acara (
  id_acara INT NOT NULL AUTO_INCREMENT,
  judul_acara VARCHAR(255) NOT NULL,
  tanggal_acara DATE NOT NULL,
  deskripsi_acara TEXT NOT NULL,
  PRIMARY KEY (id_acara)
);

CREATE TABLE sponsor (
  id_sponsor INT NOT NULL AUTO_INCREMENT,
  nama_sponsor VARCHAR(255) NOT NULL,
  logo_sponsor VARCHAR(255) NOT NULL,
  kontak_sponsor VARCHAR(255) NOT NULL,
  PRIMARY KEY (id_sponsor)
);

CREATE TABLE komentar (
  id_komentar INT NOT NULL AUTO_INCREMENT,
  id_program_siaran INT NOT NULL,
  id_penyiar INT NOT NULL,
  id_berita INT NOT NULL,
  id_acara INT NOT NULL,
  komentar TEXT NOT NULL,
  tanggal_komentar DATETIME NOT NULL,
  PRIMARY KEY (id_komentar)
);

CONTROL LOGIKA BACKEND

  • BerandaController

BerandaController bertanggung jawab untuk menampilkan halaman beranda. Halaman beranda menampilkan data-data program siaran yang sedang tayang

  • ProgramSiaranController

ProgramSiaranController bertanggung jawab untuk menampilkan halaman program siaran. Halaman program siaran menampilkan detail informasi program siaran, seperti judul program, waktu tayang, dan deskripsi program.

  • PenyiarController

PenyiarController bertanggung jawab untuk menampilkan halaman penyiar. Halaman penyiar menampilkan detail informasi penyiar, seperti nama penyiar, foto penyiar, dan biodata penyiar.

  • BeritaController

BeritaController bertanggung jawab untuk menampilkan halaman berita. Halaman berita menampilkan detail informasi berita, seperti judul berita, tanggal berita, dan isi berita.

  • AcaraController

AcaraController bertanggung jawab untuk menampilkan halaman acara. Halaman acara menampilkan detail informasi acara, seperti judul acara, tanggal acara, dan deskripsi acara.

  • SponsorController

SponsorController bertanggung jawab untuk menampilkan halaman sponsor. Halaman sponsor menampilkan detail informasi sponsor, seperti nama sponsor, logo sponsor, dan kontak sponsor.

  • PencarianController

PencarianController bertanggung jawab untuk menampilkan halaman pencarian. Halaman pencarian memungkinkan pengguna untuk mencari informasi berdasarkan judul program, judul berita, atau nama penyiar.

DESAIN





Implementasi : https://thoriqagfi.blogspot.com/2023/12/pertemuan-16-final-project-pemrograman.html

Video Demo


Komentar

Postingan populer dari blog ini

Tugas 2 PBKK

Quiz 1 PBKK

Quiz 2 PBKK