💻
Doyatama Code
  • Welcome to Doyatama Code
  • Terms and Conditions
  • Learning Site
  • Editor Online
  • Group Telegram Recommended
  • Project
    • Cek Kata
      • Pengenalan
      • Membuat Backend
      • Membuat Frontend
  • Training
    • Java Programming Language
      • Step 1 - Basic
        • Dasar Algoritma
        • Flowchart
        • Studi Kasus
        • Variabel, Tipe Data dan Operator
        • Pemilihan
        • Pemilihan Bersarang
        • Perulangan
        • Perulangan Bersarang
        • Array 1 Dimensi
        • Array 2 Dimensi
        • Fungsi
        • Fungsi Rekursif
      • Step 1 Assignment
      • Step 2 - Data Structure Algorithm
      • Step 2 - Assignment
    • React Web Frontend Development
      • Step 1 - Basic Javascript
        • JavaScript Dasar untuk React – Variable, Object & Scope
        • JavaScript Dasar untuk React – “this” keyword
        • JavaScript Dasar untuk React – Array methods
        • JavaScript Dasar untuk React – Class & Module
        • HTML Dasar untuk React
      • Step 1 - Assignment
        • Assignment - JavaScript Dasar untuk React - Variable, Object & Scope
        • Assignment - JavaScript Dasar untuk React - "this" keyword
        • Assignment - JavaScript Dasar untuk React - Array methods
        • Assignment - JavaScript Dasar untuk React - Class & Module
        • Assignment - HTML Dasar untuk React
      • Step 2 - Going to React JS
        • Introduction to React JS
        • Components & Props
        • State & LifeCycle
        • Lists & Forms
        • Konsep “Lifting State Up”
      • Step 2 - Assignment
        • Assignment - Introduction to React JS
        • Assignment - Components & Props
        • Assignment - State & LifeCycle
      • Step 3 - Going to Redux
        • Bagaimana Berpikir di React
        • Hooks & Context
        • React Router
        • Redux & React-Redux
        • Redux Middleware menggunakan Redux-Thunk
      • Step 3 - Assignment
      • Step 4 - Deploy and Make Final Project
        • Testing menggunakan Jest & RTL
        • Deployment
        • Final Project – Mocking
        • Final Project – Static Version
        • Final Project – Interactive Version & Deploy
      • Step 4 - Assignment
      • Big Project -
    • Laravel Web Development
      • Step 1 - Basic Web Programming
        • Berkenalan dengan HTML
        • CSS Basic to Ninja
        • CSS Bootstrap
        • Introduction Javascript
        • Dom JavaScript
      • Step 1 - Assignment
      • Step 2 - Materials
      • Step 2 - Assignment
      • Step 3 - Materials
      • Step 3 - Assignment
      • Step 4 - Materials
      • Step 4 - Assignment
      • Big Project
    • React Native Mobile Apps Development
      • Step 1 - Basic
        • Command Line
        • Git
        • Javascript – Intro
        • Javascript – String Properties & Method
        • Javascript – Conditional
        • Javascript – Loop
        • Javascript – Function
        • Javascript – Array
      • Step 1 - Assignment
        • Assignment - JavaScript String Properties & Method
        • Assignment - Javascript Looping
        • Assignment - Javascript Function
        • Assignment - JavaScript Array
      • Step 2 - Materials
        • Javascript – Object
        • Javascript – Class
        • Javascript – Asynchronous
        • Javascript – ES6
        • React Native Intro
      • Step 2 - Assignment
      • Step 3 - Materials
        • Mockup Figma
        • React Native – Components
        • React Native – Styling & Flexbox
        • React Native – Components API & Lifecycle
        • React Native – Navigation
      • Step 3 - Assignment
      • Step 4 - Materials
        • React Native – State Management (Redux)
        • React Native – Build & Release APK/IPA
        • React Native – Codepush
        • React Native – Publish Google Play Store/App Store
        • React Native – Firebase Data Storage
        • React Native – Function Component & Hooks
      • Step 4 - Assignment
    • Learning Database
      • Step 1 - Entity Relationship Diagram
        • Contoh Penerapan Basis Data
        • Introduction to Entity Relationship Diagram (ERD)
        • Introduction to Entity Relationship Diagram (ERD) Part 2
        • ERD to Relational Model
        • ERD to Relational Model Part 2
      • Step 1 - Assignment
      • Step 2 - Normalization
        • What is Normalization ?
        • Normalization 1NF, 2NF And 3NF
        • Normalization 4NF, 5NF
      • Step 2 - Assignment
      • Step 3 - MySQL
        • MySQL - Data Definition Language (DDL)
        • MySQL - Data Manipulation Language (DML)
        • MySQL - Data Retrieval Language (DRL)
        • MySQL - Select JOIN
      • Step 3 - Assignment
    • Boilerplate
Powered by GitBook
On this page
  • Pendahuluan
  • Pemodelan Data
  • Data Model
  • Praktikum

Was this helpful?

Export as PDF
  1. Training
  2. Learning Database
  3. Step 1 - Entity Relationship Diagram

Introduction to Entity Relationship Diagram (ERD) Part 2

PreviousIntroduction to Entity Relationship Diagram (ERD)NextERD to Relational Model

Last updated 4 years ago

Was this helpful?

Pendahuluan

Pemodelan Data

Definisi singkat (dalam lingkup software engineering) untuk pemodelan data adalah proses pembuatan model data (data model) untuk sebuah sistem informasi yang melibatkan teknik-teknik formal tertentu. Dalam definisi yang lebih lengkap, data modelling berarti sebuah proses penganalisisan persyaratan- persyaratan data (data requirements) yang dibutuhkan untuk mendukung terlaksananya proses-proses bisnis (business processes) dalam lingkup sistem informasi pada suatu organisasi.

Tujuan utama dari data modelling adalah mengubah persyaratan-persyaratan data pengguna menjadi basisdata yang sesungguhnya (actual database) yang memenuhi persyaratan-persyaratan tersebut. Shingga data modelling perlu dilakukan untuk memastikan sistem informasi yang dihasilkan nantinya dapat berfungsi secara benar dan tepat, sesuai dengan persyaratan organisasi yang menggunakannya.

Data Model

Hasil dari pemodelan data adalah model data (data model). Data model adalah sebuah model (yang berarti perumpamaan atau analogi) abstrak yang mewakili dan menjelaskan hubungan antara elemen-elemen data pada suatu entitas (objek) di dunia nyata.

Contohnya, apabila kita menjumpai data dunia nyata seperti berikut: "sebuah mobil berwarna putih buatan tahun 2017, dimiliki oleh seorang dosen bernama Muhammad Ali." Maka kita dapat membuat sebuah model yang merepresentasikan sifat-sifat mobil dan pemilik berikut hubungan atara keduanya:

Contoh

Tampilan/bentuk model yang dihasilkan dapat berupa apa saja, namun dalam membuat suatu model kita harus meyakinkan bahwa karakteristik utama dari model semuanya telah ada. Karakteristik utamanya adalah, sebuah model harus dapat menggambarkan dan mewakili jumlah/nilai data yang dimiliki oleh entitasnya berikut hubungan antara masing-masing entitas yang terlibat

Berdasarkan urut-urutan/fase pengembangan dari requirements menuju actual database, data model terbagi menjadi 3 garis besar:

  1. Conseptual Data Model (CDM)

    Berisi gambaran umum data-data yang harus disimpan berikut signifikansinya pada proses bisnis suatu organisasi. Sifat dari model ini relatif sederhana, idak melibatkan istilah teknis, dan bisa dimengerti oleh semua level manajemen dari lingkungan IT maupun non-IT. Salah satu diagram yang dapat digunakan untuk merepresentasikan model ini adalah Data Structure Diagram (DSD).

  2. Logical Data Model (LDM)

    Berisi gambaran lebih detail mengenai entitas-entitas yang terlibat, atribut, dan hubungan antara satu dengan yang lainnya. Model ini melibatkan entitas, atribut, dan relationship, serta mulai menggunakan istilah-istilah teknis yang berhubungan denga proses bisnis organisasinya. 1 CDM dapat membutuhkan 1 atau lebih LDM. Untuk menggambarkan model ini kita dapat menggunakan Entity Relationship Diagram (ERD)

  3. Physical Data Model (PDM)

    Model ini menjelaskan bagaimana data disimpan secara fisik pada database. Model ini bersigat sangat spesifik dan bergantung (dependent) pada jenis/merk DBMS yang digunakan. Model ini melibatkan tabel, kolom, primary key, panjang data. Contoh diagram yang digunakan pada model ini adalah EER Diagram pada MySQL

  1. Top-Down

    Adalah pendekatan yang bergerak dari umum ke spesifik. Pendekatan ini baik digunakan untuk membuat model data pada sistem yang sama sekali baru. Pada pendekatan ini, pengguna memberikan gambaran umum sistem dan data apa saja yang perlu disimpan. Analis kemudian mendetailkan (dengan cara mewawancarai dan mengira-ngira) lebih lanjut tabel-tabel dalam database berikut kolom-kolomnya.

  2. Bottom-Up

    Kebalikan dari metode sebelumnya, pada metode ini dilakukan penalaran yang bergerak dari spesifik ke umum. Pendekatan ini memiliki kelebihan jika digunakan untuk membuat model data berdasarkan sistem yang sudah ada sebelumnya. Dalam pendekatan ini pengguna menunjukkan sistem (dapat berupa sistem manual maupun yang sudah terkomputerisasi) yang saat ini berjalan. Analis kemudian memeriksa semua dokumen, formulir, struk, laporan, buku kas, dll. yang terlibat dalam sistem tersebut kemudian menyimpulkan database-nya.

ERD Versi Martin

Selain ERD versi Chen, terdapat juga ERD versi martin yang tidak kalah populer. Pada ERD ini terdapat 5 macam relationship yaitu:

CASE tools untuk membuat ERD

Untuk membuat ERD kita dapat memanfaatkan berbagai macam tools. Ada banyak tools yang dapat digunakan untuk membuat ERD dan tidak ada alasan mutlak untuk memilih tools tertentu diatas tools yang lain. Kita bebas menggunakan tools mana saja yang cocok untuk kebutuhan kita. Bahkan sebenarnya tidak ada keharusan untuk menggunakan tools, apabila mencukupi kita dapat membuat ERD pada kertas atau papan tulis.

Pada praktikum kali ini kita akan mencoba menggunakan salah satu tools untuk membuat ERD versi Chen. Tools tersebut bernama TerraEr. Tools tersebut dipilih karena lisensinya open source, ringan, dan mudah digunakan dimana saja selama ada JRE yang telah diinstal.

Praktikum

  1. double klik file tersebut atau jalankan perintah java -jar TerraER3.13.jar sehingga dapat dilihat seperti pada tampilan di bawah ini

  1. Untuk membuat ERD pada TerraEr, kita gunakan toolbar yang berada dibagian atas jendela aplikasi. Buat 1 entitas dengan cara Klik 1x pada ikon persegi berwarna hijau lalu klik 1x juga pada canvas(jendela utama aplikasi).

  1. Untuk mengubah nama entitas, klik 2 kali pada simbol entitas. Beri nama entitas baru tersebut dengan nama karyawan.

  2. Tambahkan entitas lemah (weak entity) dengan cara yang sama seperti cara yang dilakukan untuk menambahkan entitas sebelumnya. Klik 2x dan berinama entitas tersebut dengan nama tanggungan

  3. Tambahkan identifying relationship dengan cara menambahkan simbol berbentuk belah ketupat dengan garis tepi ganda.

  4. Beri nama relationship tersebut dengan nama memiliki.

  5. Untuk menambahkan properties/attributes, kita gunakan simbol-simbol elips pada bagian tengah panel atas.

  6. Untuk menghubungkan attribute dengan entitas atau relationship, kita gunakan Attribute Connection dengan mengklik 1x ikon bergambar berikut:

  7. Lalu mengklik 1x pada atribut yang diinginkan kemudian di-drag ke entity atau relationship yang menjadi pemilik dari atribut tadi. Tambahkan 1 atribut kunci dan 1 atribut simple. Lalu hubungkan keduanya dengan entitas kuat karyawan yang telah kita buat sebelumnya.

  8. Tambahkan 1 partial key atribut dan 1 attribut simple pada weak entity tanggungan dengan cara yang sama seperti sebelumnya.

  9. Untuk menghubungkan entity dengan relationship kita gunakan button-button yang ada di sebelah kanan panel atas. Ada 4 macam garis penghubung:

    • 1, untuk relationship 1 to....

    • N, untuk relationship many to....

    • 1=, total participation untuk entitas lemah dengan relationship 1 to....

    • N=, total participation untuk entitas lemah dengan relationship Many to....

  10. Hubungkan entitas lemah ‘tanggungan’ dengan relationship ‘memiliki’ menggunakan ‘total participation N’. Klik ikon di atas 1x, lalu klik entity ‘tanggungan’ dan drag ke arah relationship ‘memiliki’.

  11. Dengan cara yang sama, klik penghubung biasa relationship ‘1 to...’ dan hubungkan entity ‘karyawan’ dengan relationship ‘memiliki’.

  12. Beri nama semua atribut pada entitas-entitas yang ada sehingga menjadi seperti berikut:

Pada data modelling saat ini terdapat 2 pendekatan yang paling populer yaitu

Martin

Copy file ke komputer Anda, untuk menjalankannya dalam komputer Anda harus sudah terinstall Java Runtime Environment (JRE)

TeraER
Entity

TerraER3.13.jar
Karyawan
Data Modeling
Tanggungan
Relasi
properties
Memiliki
entity
attribut