Langsung ke konten utama

TUGAS 14 - PPL A

NAMA   : Ananda Hadi Saputra

KELAS  : PPL A

NRP       : 5025201148

Desain Database

     Tugas yang diberikan pada mata kuliah Perancangan Perangkat Lunak (A), yaitu terkait Desain Database. Berikut merupakan dokumentasinya :

Pengertian Database 

    Basis data (database) adalah kumpulan data yang terorganisir secara sistematis sehingga mudah diakses, dikelola, dan diperbarui. Ini mencakup data yang disimpan dalam tabel yang terdiri dari baris dan kolom, serta dikelola oleh Sistem Manajemen Basis Data (DBMS) seperti MySQL, PostgreSQL, Oracle, dan Microsoft SQL Server. DBMS memungkinkan pengguna untuk melakukan operasi seperti membuat, membaca, memperbarui, dan menghapus data dalam database.

    Desain basis data melibatkan pengklasifikasian data dan identifikasi hubungan timbal balik antar elemen data, yang diatur dalam model data. Representasi teoretis dari struktur dan hubungan data ini disebut ontologi. Basis data yang dirancang dengan baik memfasilitasi pemeliharaan, meningkatkan konsistensi data, dan hemat biaya dalam hal ruang penyimpanan disk, serta mendukung operasi, analisis, dan pengambilan keputusan dalam organisasi.

Kode SQL

1. Tabel Users


Penjelasan : 

  • user_id: ID unik untuk setiap pengguna.
  • username: Nama pengguna yang unik.
  • email: Email pengguna yang unik.
  • password: Kata sandi pengguna (di-hash).
  • profile_picture: URL gambar profil pengguna.
  • bio: Biografi pengguna.
  • created_at: Waktu ketika akun dibuat.


  • 2. Tabel Posts 


    Penjelasan : 

  • post_id: ID unik untuk setiap kiriman.
  • user_id: ID pengguna yang membuat kiriman.
  • image_url: URL gambar kiriman.
  • caption: Teks keterangan kiriman.
  • created_at: Waktu ketika kiriman dibuat.

  • 3. Tabel Comments

    Menyimpan informasi tentang komentar pada kiriman


    Penjelasan : 

  • comment_id: ID unik untuk setiap komentar.
  • post_id: ID kiriman yang dikomentari.
  • user_id: ID pengguna yang membuat komentar.
  • comment_text: Teks komentar.
  • created_at: Waktu ketika komentar dibuat.

  • 4. Tabel Likes

    Menyimpan informasi tentang suka pada kiriman


    Penjelasan : 

  • like_id: ID unik untuk setiap suka.
  • post_id: ID kiriman yang disukai.
  • user_id: ID pengguna yang menyukai kiriman.
  • created_at: Waktu ketika suka dibuat.

  • 5. Tabel Followers

    Menyimpan informasi tentang hubungan pengikut antara pengguna



    Penjelasan : 

  • follower_id: ID unik untuk setiap hubungan pengikut.
  • user_id: ID pengguna yang diikuti.
  • follower_user_id: ID pengguna yang mengikuti.
  • created_at: Waktu ketika hubungan pengikut dibuat.

  • 6. Tabel DirectMessage

    Menyimpan  informasi tentang pesan langsung antara pengguna. 


    Penjelasan : 

  • message_id: ID unik untuk setiap pesan.
  • sender_user_id: ID pengguna yang mengirim pesan.
  • receiver_user_id: ID pengguna yang menerima pesan.
  • message_text: Teks pesan.
  • created_at: Waktu ketika pesan dibuat.



  • Relasi : 

  • Users -> Posts: Relasi one to many, satu pengguna dapat membuat banyak kiriman.
  • Posts -> Comments: Relasi one to many, satu kiriman dapat memiliki banyak komentar.
  • Posts -> Likes: Relasi one to many, satu kiriman dapat memiliki banyak suka.
  • Users -> Followers: Relasi many to many, pengguna dapat mengikuti banyak pengguna lain, dan diikuti oleh banyak pengguna lain. Ini diimplementasikan melalui tabel Followers.
  • Users -> DirectMessages: Relasi one to many, satu pengguna dapat mengirim banyak pesan langsung ke pengguna lain.

  • Komentar

    Postingan populer dari blog ini

    ETS PWEB

    Nama    : Ananda Hadi Saputra NRP      : 5025201148 Kelas    : Pemograman Web - A Tahun   : 2023 ETS PWEB 1. Jelaskan fungsi html, css, javascript, bootstrap, dalam pembangunan aplikasi web HTML (Hypertext Markup Language): Fungsi : HTML adalah bahasa markup yang digunakan untuk membuat struktur dasar dari halaman web. Ini mendefinisikan elemen-elemen seperti teks, gambar, tautan, paragraf, dan bagian lainnya dalam dokumen web. Peran : HTML digunakan untuk mengatur konten dasar di halaman web dan memberikan struktur yang akan dihiasi dengan gaya CSS. CSS (Cascading Style Sheets): Fungsi : CSS digunakan untuk mengatur tampilan dan tata letak elemen-elemen HTML. Ini mendefinisikan warna, jenis huruf, ukuran, jarak antara elemen, dan gaya visual lainnya. Peran : CSS memungkinkan pengembang untuk merancang tampilan yang menarik dan konsisten untuk halaman web. JavaScript: Fungsi : JavaScript adalah bahasa pemrograman yang digunakan untuk memberik...

    EAS - PPL A

    NAMA     : Ananda Hadi S NRP      : 5025201148 KELAS : PPL A EAS Perancangan Perangkat Lunak A, dengan pilihan desain Starbuck Deskripsikan model bisnis yang dipilih? Touchpoints (Titik Kontak) Google Map Smart Phone Google Map Smart Phone Car Store’s Architecture and Signage Printed Materials Starbucks Application and Credit Card Machine Starbucks Application Pick-up Window, Employee Employee, Pick-up Box, and Drinks User Journey Pengaturan tujuan:  Pelanggan mengatur tujuan ke Starbucks terdekat menggunakan Google Maps di smartphone. (Catatan:  Menyediakan informasi tentang bagaimana Starbucks beroperasi saat ini: hanya untuk dibawa pulang). Perjalanan ke starbucks:  Pelanggan berjalan atau mengemudi ke lokasi Starbucks. Melihat tanda dan logo:  Pelanggan melihat logo Starbucks dan tanda pada pintu masuk. Instruksi di pintu:  Pelanggan melihat instruksi di pintu mengenai proses pemesanan. Memilih pesan online:  Pelanggan...

    APSI - TUGAS 5 - Requirement Definition

    Requirement Definition Definisi Requirements Dalam pengembangan perangkat lunak, definisi requirements mengacu pada proses mengidentifikasi, mendefinisikan, dan mendokumentasikan kebutuhan atau persyaratan yang harus dipenuhi oleh suatu sistem atau aplikasi. Requirements atau kebutuhan ini berfungsi sebagai panduan bagi tim pengembang perangkat lunak dalam merancang, mengembangkan, dan menguji sistem yang diinginkan. Fungsi Requirements Berikut adalah beberapa fungsi utama dari requirements: Menjelaskan kebutuhan pengguna: Requirements membantu menggambarkan dan menjelaskan kebutuhan pengguna atau pemangku kepentingan terkait sistem atau aplikasi yang akan dikembangkan. Menyediakan panduan untuk perancangan sistem: Requirements menjadi dasar dalam merancang arsitektur, fungsionalitas, dan fitur-fitur yang akan ada dalam sistem. Membantu dalam perencanaan dan estimasi proyek: Requirements yang terdefinisi dengan baik memungkinkan tim pengembang untuk melakukan perencanaan proyek yang le...