Database merupakan bagian penting dari sebuah sistem aplikasi. Oleh karena itu, merancang struktur database yang bagus adalah sebuah keharusan. Struktur database yang bagus akan membantu tim pengembang software untuk mengurangi redundansi dan inkonsistensi data, serta meningkatkan skalabilitas dalam perawatan dan pengembangan. Salah satu cara untuk merancang database adalah dengan menggambar ERD, Entity Relationship Diagram.
Pada artikel kali ini, Teknovidia akan membahas mengenai ERD. Kami akan menjelaskan mengenai definisi ERD, notasi yang digunakan, jenis model data, cara membuat, tools yang sering digunakan, dan contoh dari ERD. Mari kita simak.
ERD merupakan singkatan dari Entity Relationship Diagram. ERD adalah diagram yang menggambarkan desain basis data sebuah sistem. ERD menjelaskan apa saja entitas (entity) yang disimpan pada database, dan bagaimana hubungan(relationship) antar entitas tersebut. Oleh karena itu, diagram ini disebut Entity Relationship Diagram, diagram yang menggambarkan hubungan antar entitas.
Apa yang dimaksud dengan ENTITAS?
Entitas pada ERD, dapat menggambarkan orang, organisasi, objek, atau transaksi bisnis. Sedangkan hubungan (relationship) menggambarkan relasi antar entitas dalam sistem.
Sejarah ERD
Peter Chen, seorang anggota fakultas dari Universitas Carnegie-Mellon di Pittsburgh, diberi kredit pada pengembangan model ERD untuk perancangan database pada tahun 1970. Ketika menjadi asisten profesor di MIT Sloan School of Management tahun 1976, dia mempublikasikan paper dengan judul “The Entity-Relationship Model: Toward a Unified View of Data”.
Namun, pada rentang 1960-1970, Charles Bachman dan A.P.G. Brown mengerjakan model data yang mirip dengan milik Chen. Bachman menyebutnya sebagai jenis Data Structure Diagram, yang dinamai dengan Bachman Diagram.
Brown mempublikasikan implementasi Bachman Diagram dalam sebuah pemodelan sistem yang sesungguhnya. Kemudian James Martin menyempurnakan model ERD tersebut. Hasil karya dari Chen, Bachman, Brown, Martin, dan kontributor lainnya ini digunakan dalam UML (Unified Modeling Language). UML saat ini banyak digunakan dalam perancangan software.
Kapan harus Membuat ERD?
ERD memang kebanyakan dibuat untuk merancang database sebuah aplikasi yang akan dibangun. Namun, ada kasus-kasus tertentu dimana ERD juga perlu dibuat. Berikut di antaranya:
Modifikasi Database – tergantung dari besar kecilnya perubahan, selalu ada risiko jika struktur database diubah. Untuk mengurangi risiko ini, ada baiknya Anda membuat ERD-nya. Beberapa tools SQL client memiliki fungsi untuk membuat otomatis ERD dari database yang ada. Anda dapat memanfaatkan fungsi tersebut untuk membuat ERD-nya. Dengan membuat ERD, Anda dapat mengetahui perubahan yang dilakukan akan berdampak pada bagian apa saja.
Debug SQL – mencari kesalahan pada sebuah query SQL merupakan tantangan tersendiri. Apalagi jika melibatkan banyak tabel. Anda dapat membuat ERD dari database agar lebih mudah membaca query yang dibuat. Sehingga kesalahan pada query SQL dapat lebih cepat ditemukan.
Pembuatan Database – beberapa tools desain ERD maupun SQL client, menyediakan fungsi untuk membuat database otomatis dari ERD yang dibuat. Kebalikan dari fungsi sebelumnya, yang membuat ERD dari database, fungsi ini membuat database dari ERD. Dengan membuat database otomatis dari ERD, akan mempercepat pekerjaan Anda.
Membantu Identifikasi Kebutuhan Pengguna – dengan membuat ERD, Anda dapat lebih mudah untuk mempresentasikan kebutuhan pengguna yang sudah diperoleh. Visualisasi dalam bentuk ERD, akan membantu Anda berkomunikasi lebih baik dengan pengguna.
Keterbatasan ERD
Beberapa keterbatasan merancang database menggunakan ERD antara lain:
Hanya untuk data relasional
Tidak dapat digunakan untuk data tidak terstruktur
Sulit untuk diintegrasikan dengan database yang sudah ada
Notasi ERD
Notasi pada ERD dapat dibagi ke dalam entitas, atribut, relasi, dan kardinalitas. Kita akan membahas setiap notasi tersebut satu-persatu.
1. Entitas
Entitas dalam ERD dapat menggambarkan orang, organisasi, objek, atau transaksi dalam sistem. Dalam penamaan entitas, sebaiknya gunakan kata benda. Pada ERD, entitas digambarkan dengan sebuah persegi panjang, seperti di bawah ini.
Notasi Entitas pada ERD
2. Atribut
Atribut adalah properti atau karakteristik yang melekat pada entitas. Contohnya entitas Siswa, memiliki atribut NIS, Nama, Tempat Lahir, Tanggal Lahir, Alamat, dsb. Atribut digambarkan dengan oval memanjang horizontal pada ERD, seperti di bawah ini.
Atribut yang menjadi pembeda (unik) antara satu entitas yang sama, disebut dengan Primary Key. Primary Key digambarkan dengan memberikan garis bawah pada atribut yang unik.
Notasi Atribut dari entitas Siswa pada ERD
3. Relasi
Relasi menggambarkan hubungan antar dua entitas. Contohnya adalah Siswa yang dapat mengambil beberapa Ekskul. Relasi ini digambarkan dengan simbol belah ketupat seperti di bawah ini.
Notasi Relasi yang menghubungkan entitas Siswa dengan Ekskul
4. Kardinalitas
Kardinalitas menggambarkan jumlah entitas yang terlibat dalam sebuah relasi. Contohnya, seorang Siswa dapat mengambil banyak (N) Ekskul. Dan satu Ekskul dapat diambil banyak (N) Siswa. Untuk menggambarkan kardinalitas, dapat dilihat seperti di bawah ini.
Notasi Kardinalitas menunjukkan jumlah entitas yang terlibat dalam relasi
Jenis Model Data
ERD biasanya digambarkan dalam 3 level abstraksi:
Conceptual Data Model
Logical Data Model
Physical Data Model
1. Conceptual Data Model
Conceptual Data Model menggambarkan rancangan database secara garis besar dalam sistem. Pada level ini belum terlihat tabel-tabel apa yang akan dibuat pada database. Hanya menggambarkan entitas dan relasi apa saja yang ada di dalam sistem.
2. Logical Data Model
Logical Data Model menggambarkan level rancangan yang lebih tinggi dari conceptual data model. Pada data model ini, tabel-tabel sudah terbentuk. Baik entitas maupun relasi akan diubah ke dalam tabel. Atribut juga dipetakan menjadi kolom atau field pada tabel database.
3. Physical Data Model
Tingkatan yang terakhir adalah Physical Data Model. Pada data model ini, sedekat mungkin digambarkan sesuai dengan spesifikasi DBMS (Database Management System) yang digunakan. Penggunaan Primary Key, Foreign Key, dan Index sudah digambarkan pada model ini. Tipe data juga dituliskan sesuai yang didukung oleh DBMS aplikasi.
Cara Membuat ERD
Jika Anda masih belum terbiasa membuat ERD, jangan khawatir. Berikut ini beberapa tips dari kami bagaimana membuat ERD ini:
1. Pahami lingkup sistem yang akan dibuat aplikasinya. Coba tuliskan entitas, atribut, relasi, dan kardinalitas dalam sebuah narasi. Komunikasikan narasi ini kepada pengguna untuk meminta koreksi dan persetujuan.
2. Gambarkan semua entitas pada lembar kerja.
3. Tuliskan atribut dari semua entitas.
4. Lakukan analisis relasi apa yang terjadi antar entitas.
5. Tambahkan kardinalitas pada setiap relasi.
6. Buat Logical dan Physical Data Model.
7. Realisasikan pada sistem database sesungguhnya.
Bagi Anda yang ingin mempelajari lebih lanjut bagaimana merancang database dengan ERD, dapat menonton video dari Ibu Kusrini dari Universitas Amikom Yogyakarta berikut ini:
Penjelasan mengenai ERD dari Ibu Kusrini dari Universitas Amikom Yogyakarta
Contoh ERD – Sistem Informasi Perpustakaan
Agar Anda lebih memahami ERD secara keseluruhan, berikut kami lampirkan contoh ERD dari Sistem Informasi Perpustakaan. Silakan pahami dulu narasi sistem sebagai berikut:
Perpustakaan Vidyaneka menyewakan berbagai macam buku, mulai dari komik, novel, hingga buku motivasi. Setiap buku memiliki harga sewa masing-masing. Bagi yang ingin meminjam bukunya, harus mendaftarkan diri sebagai anggota. Sistem mencatat nama, nomor telepon, dan alamat anggota. Setelah terdaftar sebagai anggota, baru dapat menyewa buku. Sistem akan mencatat tanggal peminjaman, tanggal harus dikembalikan, dan buku apa saja yang dipinjam.
Setelah mempelajari deskripsi sistem yang akan dibuat, kita tuliskan entitas dan atributnya sebagai berikut:
1. Buku, atribut: Kode Buku, Jenis Buku, Nama Buku, Harga Sewa
2. Anggota, atribut: Kode Anggota, Nama Anggota, No. Telp, Alamat
Relasi antar entitasnya antara lain:
1. Meminjam, atribut: Kode Peminjaman, Tgl. Pinjam, Tgl. Pengembalian
Full Stack Developer: Iron Man di Tim Software Development Anda mungkin pernah mendengar istilah full stack developer atau full stack programmer di info lowongan kerja, komunitas, atau lingkungan studi Anda. Namun, apakah Anda memahami apa itu full stack developer?…
Aplikasi Edit Foto Terbaik 2023 Selain Photoshop Teknovidia.com-Aplikasi Edit Foto Selain Photoshop-Aplikasi edit photo di PC sebagai kebutuhan yang tidak dapat dihindari. Tidaklah aneh bila banyak pengguna pc yang memasangkan aplikasi seperti ini di pc dan netbook…
Penerapan CRM pada Perusahaan Indofood Mengelola hubungan dengan pelanggan, atau CRM, menjadi aspek yang cukup penting dalam sebuah perusahaan. Pada artikel kali ini, kita akan mempelajari bagaimana perusahaan sebesar Indofood menerapkan CRM. Dengan mempelajari penerapan…
Rekomendasi Drawing Tablet Terbaik, Cocok untuk Desain… Teknovidia.com-Drawing Tablet Terbaik-Bersamaan dengan perubahan jaman, tentu saja makin bertambah kemudahan yang diberi oleh perubahan tehnologi. Sekarang ini, tablet bukan hanya untuk melihat film, bermain games, atau alat berkomunikasi. Banyak…
Bagaimana Software CRM Custom dapat Meningkatkan Penjualan… Riset dari Salesforce mengatakan bahwa software CRM dapat meningkatkan penjualan hingga 29%, meningkatkan akurasi perkiraan penjualan hingga 32%, dan meningkatkan produktivitas tim penjualan hingga 39%. Ini menunjukkan bahwa software CRM…
20 Software House Terbaik di Bandung Sebagai salah satu kota terbesar di Indonesia, Bandung menawarkan peluang bisnis IT yang menarik. Kedekatan jarak dengan ibukota Jakarta, membuat industri software house di kota ini berkembang baik. Ditambah dengan…
Software Project Management untuk Efisiensi Kinerja Tim Dalam menjalankan sebuah bisnis, sudah tentu Anda telah meramu strategi untuk melaksanakannya terlebih dahulu. Namun, secemerlang apapun perencanaan telah disusun, ada kalanya pelaksanaan proyek tidak berjalan seperti yang diharapkan. Beberapa…
10 Strategi Implementasi CRM Sebelum Anda memilih produk CRM untuk perusahaan, ada baiknya untuk merancang sebuah strategi implementasinya. Dengan membuat strategi implementasi CRM, perusahaan memiliki tujuan yang jelas dan bagaimana tim Anda melangkah ke…
Fintech: Definisi, Jenis, dan Aturan Hukumnya Fintech adalah layanan finansial berbasis teknologi yang membantu masyarakat untuk bertransaksi secara digital. Sebagai bagian dari transformasi digital, fintech berhasil merevolusi industri finansial lewat adopsi teknologi terbaru yang kaya fitur.…
Menganalisis ERD dari Layanan Video on Demand Netflix Netflix adalah sebuah perusahaan penyedia layanan media dan produksi yang berbasis di Amerika Serikat. Saat ini, bisnis utama dari Netflix adalah layanan streaming video berbasis langganan (subscription). Melalui Netflix, Anda…
Perbedaan Software Dan Hardware Teknovidia.com - Perbedaan software dan hardware , Diperkirakan ada 2 miliar komputer di dunia dan jumlah itu terus bertambah. Meskipun ada perbedaan yang jelas antara semua jenis sistem komputer, semuanya…
Performance Management System untuk Produktivitas Bisnis Kemajuan perusahaan sangat ditunjang oleh performance management system yang baik dalam mengatur sumber daya manusia. Istilah performance management ini memang masih kurang familiar di telinga masyarakat. Padahal, keberadaan performance management…
Software Melukis dan Menggambar Terbaik di Windows Teknovidia.com-Software menggambar di windows-Aplikasi menggambar ialah tools software yang tingkatkan kapabilitas Anda untuk menggambar apa yang sebetulnya Anda saksikan atau pikirkan. Aplikasi menggambar yang efisien diperlengkapi dengan tools menggambar, effect…
Apa itu Software House? Definisi, Layanan, dan Info Lainnya Di masa modern ini, kehadiran software atau aplikasi dalam sebuah bisnis merupakan keniscayaan. Aplikasi web, aplikasi mobile, dan digital marketing menghiasi pertumbuhan bisnis di era digital. Jika Anda membutuhkan software…
Profil dan Sejarah Oracle, dari DBMS ke Enterprise Software Oracle adalah salah satu perusahaan database raksasa dunia. Sepak terjangnya di bidang manajemen data sejak 1977 telah mengantarkan Oracle ke panggung papan atas jagat teknologi. Selain gelarnya sebagai perusahaan software…
Software Email Marketing untuk Loyalitas Pelanggan Menjalin hubungan baik dengan pelanggan merupakan salah satu bagian terpenting dalam pemasaran suatu produk. Sebab, mempertahankan konsumen tetap produk akan menjaga stabilitas pemasukan bisnis. Tak heran, setiap perusahaan selalu mengusahakan…
Software Call Center: Definisi, Manfaat, dan Jenisnya Penilaian pelanggan terhadap suatu layanan salah satunya bergantung pada pengalaman saat memakainya. Saluran komunikasi yang efektif dan efisien antara pelanggan dan bisnis menjadi hal yang penting untuk dihadirkan. Tujuannya adalah…
Pentingnya Quality Management System bagi Perusahaan Quality Management System (QMS) atau sering dikenal sebagai Sistem Manajemen Mutu (SMM) merupakan kemampuan perusahaan dalam menjaga mutu produk atau jasa yang ditawarkan. Seberapa jauh pentingnya QMS bagi perusahaan dan…
15 Software House Terbaik di Semarang Sebagai ibukota dari provinsi Jawa Tengah, Semarang merupakan kota sentra bisnis yang menarik. Potensi bisnis software house di kota ini juga cukup menarik. Ada banyak perusahaan software house yang berkontribusi…
15 Software Akuntansi Online Produk Indonesia Terbaik Software akuntansi dibutuhkan oleh semua perusahaan dari berbagai industri. Dengan menggunakan software ini kita dapat melakukan pencatatan hampir di semua lini bisnis. Ada banyak software akuntansi yang tersedia di pasar,…
7 Document Management System Indonesia Terbaik Pada era digital ini, document management system merupakan bagian penting dari sebuah perusahaan. Dibandingkan menyimpan dokumen dalam kabinet, document management system membantu Anda dalam mengelola dokumen elektronik. Pengguna dapat diberi…
Software Akuntansi, Membantu Mengatur Keuangan Bisnis Anda Software Akuntansi untuk Bisnis Anda - Akuntansi menjadi salah satu aktivitas dalam bisnis yang didorong oleh perusahaan sebagai penjaga, penyaring, dan penyedia informasi keuangan bagi perusahaan. Informasi keuangan yang teratur,…
Talent Management System: Definisi dan Manfaatnya Dalam proses rekrutmen di perusahaan, talent management system menjadi salah satu proses yang cukup penting dilakukan. Hal ini disebabkan karena kebutuhan perusahaan akan peningkatan kinerja karyawan cenderung meningkat sehingga diperlukan…
10 Software CRM Gratis Terbaik untuk Meningkatkan Penjualan Setelah memahami tujuan dan manfaat software CRM, maka sudah saatnya Anda mulai melakukan evaluasi produknya. Tanpa ikatan dan investasi, Anda dapat mencoba berbagai software CRM gratis yang tersedia di pasaran.…
Tips Memilih Software House, Mana yang Sesuai untuk Bisnis… Perusahaan Anda semakin bertumbuh, penjualan meningkat, karyawan semakin banyak, pekerjaan juga menumpuk. Untuk meningkatkan produktivitas dan memangkas biaya karena pekerjaan yang berulang, menggunakan software adalah salah satu solusinya. Lalu bagaimana…
Teknologi Bidang Kesehatan : Perkembangan Dan Manfaat Teknovidia.com - Teknologi Bidang Kesehatan , Banyak orang memuji gelombang kemajuan dan perkembangan teknologi sebagai anugerah terbesar umat manusia bagi mereka. Memang, kecanggihan teknologi telah merasuk ke semua lapisan masyarakat…
Membedah Kebutuhan Software untuk Perusahaan Menjalankan sebuah perusahaan, bukanlah pekerjaan mudah. Anda membutuhkan software yang tepat untuk setiap departemen. Secara umum, ada beberapa departemen dalam perusahaan. Mulai dari Departemen Pengadaan, Produksi, Pemasaran dan Penjualan, Customer…
Backend Developer: Membangun Tulang Punggung Aplikasi Sebuah software secara garis besar dibagi ke dalam 2 lingkungan, server dan klien. Sisi server berhubungan dengan database, logika bisnis, fungsional software, dan lainnya. Sedangkan sisi klien, adalah bagian aplikasi…
Data Catalog, Apa itu dan Manfaatnya untuk Perusahaan Data Catalog telah menjadi komponen penting dalam manajemen data. Organisasi yang berhasil menerapkan data catalog, memperoleh hasil yang signifikan pada kecepatan dan kualitas analisis data. Sedangkan organisasi yang belum mengimplementasikan…
Vendor Management System (VMS), Kelola Vendor dengan Lebih… Seiring dengan pertumbuhan permintaan barang dan jasa di sektor perdagangan, membuat banyak perusahaan terus membenahi sistem manajemen bisnis mereka. Pembenahan sistem tersebut tentunya diupayakan secara konsisten untuk meningkatkan kualitas barang…