Anda di halaman 1dari 42

DFD dan ERD

Makalah

Diajukan Sebagai Tugas Pengganti Kehadiran


Mata Kuliah Sistem Basis Data

Disusun oleh :
M Rangga Permana
108091000015

KELAS TI 4 A

PROGRAM STUDI TEKNIK INFORMATIKA


FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI
SYARIF HIDAYATULLAH
JAKARTA
2010

1
KATA PENGANTAR

Segala puji bagi Allah yang telah memberikan rahmat, taufik dan hidayahNya kepada kita

semua sehingga mampu melaksanakan ibadah kepadaNya dan menyelesaikan tugas sehari-

hari dengan baik, sehingga penyusun dapat menyelesaikan Tugas ini tepat pada waktunya

dengan judul “DFD dan ERD”

Sholawat bermahkotakan salam semoga senantiasa mengalir kepada panutan serta suri

tauladan ummat, nabi muhammad saw yang telah memberikan petunjuk kepada kita semua

kejalan yang lurus dan diridhoi Allah SWT.

Dalam kesempatan ini, penyusun mengucapkan banyak terimakasih kepada semua pihak

yang telah membantu dalam penyusunan makalah ini. Baik berupa moril maupun materil.

Terutama kepada :

1. Kepada Khodijah Hulliyah,M.Si, selaku dosen mata kuliah Sistem Basis Data

2. Kepada orang tua yang telah memberikan dukungan moril dan materil

3. Kepada semua pihak yang telah membantu penyusunan makalah ini yang tidak dapat

disebutkan satu persatu

penyusun menyadari dengan segala kerendahan hati bahwa Tulisan ini masih jauh dari

kesempurnaan. Oleh karena itu, penyusun mengharapkan kritik dan saran yang sifatnya

membangun dari para pembaca sekalian.

Akhirnya penyusun ucapkan selamat membaca semoga makalah ini bermanfaat sebagai bahan

pembelajaran untuk kita semua di masa mendatang.

Jakarta, Juni 2010


Penyusun

Rangga Permana
2
DAFTAR ISI

Halaman

Kata Pengantar .................................................................................................................... 2

Daftar Isi ............................................................................................................................... 3

Data Flow Diagram ............................................................................................................. 5

A. Pengertian DFD ....................................................................................................... 5

B. Sekilas Tentang DFD .............................................................................................. 5

C. DFD Symbol ............................................................................................................. 6

1. External Entity (Entitas/terminator) ............................................................. 6


2. Proses ................................................................................................................. 7
3. Data Store .......................................................................................................... 9
4. Data Flow .......................................................................................................... 10

D. Bentuk data Flow diagram .................................................................................... 13

E. Syarat-syarat pembuatan data flow diagram ..................................................... 15

F. Penggambaran DFD ............................................................................................... 19

G. Levelisasi DFD ......................................................................................................... 20

H. Memeriksa Kesalahan Diagram ............................................................................ 21

I. Kelebihan dan kelemahan DFD ............................................................................ 24

Entity Relationship Diagram ............................................................................................. 25

A. Pengertian ERD ....................................................................................................... 25

B. Struktur ERD Secara Umum .................................................................................. 25

C. Kegunaan ERD......................................................................................................... 27

D. Tahapan Pembuatan ERD ...................................................................................... 27

E. Jenis-Jenis Kunci ...................................................................................................... 28

F. Derajat Relationship ................................................................................................ 29

3
G. Cardinality ratio Constraint ................................................................................... 30

H. Participation Constraint ......................................................................................... 31

I. Weak Entity .............................................................................................................. 32

J. Simbol-Simbol ER .................................................................................................... 32

K. Contoh Kasus ........................................................................................................... 33

L. Penggambaran ERD ................................................................................................ 36

M. Transformasi ERD ke Database Relasional ......................................................... 37

Daftar Pustaka ..................................................................................................................... 42

4
DATA FLOW DIAGRAM

A. PENGERTIAN DFD
Data Flow Diagram (DFD) adalah suatu diagram yang menggunakan notasi-notasi
untuk menggambarkan arus dari data sistem, yang penggunaannya sangat membantu
untuk memahami sistem secara logika, tersruktur dan jelas.1

DFD merupakan alat bantu dalam menggambarkan atau menjelaskan sistem yang
sedang berjalan logis. Dalam sumber lain dikatakan bahwa DFD ini merupakan salah
satu alat pembuatan model yang sering digunakan, khususnya bila fungsi-fungsi
sistem merupakan bagian yang lebih penting dan kompleks dari pada data yang
dimanipulasi oleh sistem. Dengan kata lain, DFD adalah alat pembuatan model yang
memberikan penekanan hanya pada fungsi sistem. DFD ini merupakan alat
perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi
dapat digunakan untuk penggambaran analisa maupun rancangan sistem yang
mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun pembuat
program.

Suatu yang lazim bahwa ketika menggambarkan sebuah sistem kontekstual data flow
diagram yang akan pertama kali muncul adalah interaksi antara sistem dan entitas
luar. DFD didisain untuk menunjukkan sebuah sistem yang terbagi-bagi menjadi
suatu bagian sub-sistem yang lebih kecil adan untuk menggarisbawahi arus data
antara kedua hal yang tersebut diatas. Diagram ini lalu "dikembangkan" untuk
melihat lebih rinci sehingga dapat terlihat model-model yang terdapat di dalamnya.2

B. SEKILAS TENTANG DFD


DFD Merupakan penerapan umum untuk menggambar konteks diagram aliran data
tingkat pertama, yang menunjukkan interaksi antara sistem dan agen eksternal yang
bertindak sebagai sumber data dan data tenggelam. Pada diagram konteks (juga
dikenal sebagai Level 0 DFD) sistem interaksi dengan dunia luar yang model murni
dalam hal data mengalir melintasi batas sistem. Konteks Diagram menunjukkan
seluruh sistem sebagai sebuah proses tunggal, dan tidak memberikan petunjuk
mengenai organisasi internal.

Konteks ini adalah DFD tingkat berikutnya "meledak", untuk menghasilkan Level 1
DFD yang menunjukkan beberapa detail dari sistem yang dimodelkan. Tingkat 1 DFD
menunjukkan bagaimana sistem ini dibagi menjadi sub-sistem (proses), yang masing-
masing berhubungan dengan satu atau lebih data mengalir ke atau dari agen
eksternal, dan yang bersama-sama memberikan semua fungsionalitas dari sistem
sebagai seluruh. Hal ini juga mengidentifikasi data internal toko yang harus ada agar
sistem untuk melakukan pekerjaan, dan menunjukkan aliran data antara berbagai
bagian dari sistem.

Data-flow diagram diciptakan oleh Larry Konstantinus, pengembang asli desain


terstruktur, yang didasarkan pada Martin dan Estrin's "data-grafik aliran" model
komputasi.
1
http://id.wikipedia.org/wiki/Data_flow_diagram
2
http://id.wikipedia.org/wiki/Data_flow_diagram
5
Data-flow diagram (DFDs) adalah salah satu dari tiga perspektif penting dari sistem
terstruktur-metode analisis dan desain SSADM. Sponsor proyek dan pengguna akhir
perlu diberikan pengarahan dan konsultasi di seluruh semua tahap dari evolusi
sistem. Dengan data-flow diagram, pengguna dapat membayangkan bagaimana
sistem akan beroperasi, apa sistem akan dicapai, dan bagaimana sistem akan
dilaksanakan. Sistem lama data flow diagram dapat dibuat dan dibandingkan dengan
sistem baru-aliran data untuk menggambar diagram perbandingan untuk
menerapkan sistem yang lebih efisien. Data flow diagram dapat digunakan untuk
menyediakan pengguna akhir dengan ide fisik di mana data input pada akhirnya
mereka mempunyai pengaruh terhadap struktur dari seluruh sistem untuk dispatch
untuk melaporkan. Bagaimana sistem apapun dikembangkan dapat ditentukan
melalui data-flow diagram.

Dalam rangka mengembangkan seperangkat diratakan diagram aliran data analis /


perancang adalah dipaksa untuk mengatasi bagaimana sistem dapat didekomposisi
menjadi sub-komponen sistem, dan untuk mengidentifikasi data transaksi dalam
model data.

Ada notasi yang berbeda untuk menggambar diagram aliran data, mendefinisikan
representasi visual yang berbeda untuk proses, menyimpan data, aliran data, dan
entitas eksternal.

Data flow diagram ("bubble diagram") diarahkan grafik di mana simpul menentukan
kegiatan pengolahan dan busur menentukan item data ditransmisikan antara
pemrosesan node. 3

C. DFD SYMBOL

3
http://translate.googleusercontent.com/translate_c?hl=id&langpair=en|id&u=http://en.wikipedia.org/wiki/Da
ta_Flow_Diagram&rurl=translate.google.co.id&usg=ALkJrhh9qK_XiWGk1bMlQqjrNQ9nm-oUDA
6
1. External Entity (Entitas)/Terminator
Setiap sistem pasti mempunyai batas sistem (boundary) yang memisahkan suatu
sistem dengan lingkungan luarnya. Kesatuan luar (external entity) merupakan
kesatuan (entity) di lingkungan luar sistem yang berupa orang, organisasi atau
sistem lainnya yang berada di lingkungan luarnya yang akan membeikan input
atau menerima output dari sistem (Jogiyanto, 1989). Terminator dapat juga
berupa departemen di dalam organisasi, atau perusahaan yang sama tetapi di
luar kendali sistem yang sedang dibuat modelnya. Terminator dapat juga berupa
departemen, divisi atau sistem di luar sistem yang berkomunikasi dengan sistem
yang sedang dikembangkan.Terminator dapat pula disebut dengan „Sumber
Pemberi Data (input),‟ maupun „Tujuan Pemberian Data (output).

Pemberi data dan penerima data yang dimaksud adalah pihak yang sangat dekat
dan memiliki hubungan langsung dengan sistem. Adapun pihak luar yang
berhubungan dengan pihak luar lainnya tidak boleh digambarkan. Misalkan,
dalam pengisian KRS, mahasiswa berhubungan dengan sistem. Orang tua
berhubungan dengan mahasiswa, tetapi tidak berhubungan dengan sistem,
karenanya, kesatuan luar „orang tua‟, tidak boleh digambarkan.

SISTEM
ORANG TUA MAHASISWA PENGISIAN
KRS

Contoh Hubungan Terminator yang Salah

Terdapat dua jenis terminator :


 Terminator Sumber (source) merupakan terminator yang menjadi sumber.
 Terminator Tujuan (sink) merupakan terminator yang menjadi tujuan data /
informasi system

Ada tiga hal penting yang harus diingat tentang terminator :


a) Terminator merupakan bagian/lingkungan luar sistem. Alur data yang
menghubungkan terminator dengan berbagai proses sistem, menunjukkan
hubungan sistem dengan dunia luar.
b) Profesional sistem tidak dapat mengubah isi atau cara kerja organisasi, atau
prosedur yang berkaitan dengan terminator.
c) Hubungan yang ada antar terminator yang satu dengan yang lain tidak
digambarkan pada DFD.

2. Proses
Komponen proses menggambarkan bagian dari sistem yang
mentransformasikan input menjadi output. Proses diberi nama untuk

7
menjelaskan proses/kegiatan apa yang sedang/akan dilaksanakan. Pemberian
nama proses dilakukan dengan menggunakan kata kerja transitif (kata kerja
yang membutuhkan obyek), seperti Menghitung Gaji, Mencetak KRS,
Menghitung Jumlah SKS. Proses juga diberikan identifikasi (nomor) agar
mempermudah sekuen untuk diagram detilnya. Proses-proses yang
menunjukkan hal itu di dalam sistem dan harus diberi nama menggunakan salah
satu format berikut ini. Sebuah nama yang jelas memudahkan untuk memahami
proses apa yang sedang dilakukan.

Ada empat kemungkinan yang dapat terjadi dalam proses sehubungan dengan
input dan output:

Ada beberapa hal yang perlu diperhatikan tentang proses :


 Proses harus memiliki input dan output.
 Proses dapat dihubungkan dengan komponen terminator, data store atau
proses melalui alur data.
 Sistem/bagian/divisi/departemen yang sedang dianalisis oleh profesional
sistem digambarkan dengan komponen proses.
Berikut ini merupakan suatu contoh proses yang salah :

Umumnya kesalahan proses di DFD adalah :


8
 Proses mempunyai input tetapi tidak menghasilkan output. Kesalahan ini
disebut dengan black hole (lubang hitam), karena data masuk ke dalam
proses dan lenyap tidak berbekas seperti dimasukkan ke dalam lubang
hitam (lihat proses 1).
 Proses menghasilkan output tetapi tidak pernah menerima input. Kesalahan
ini disebut dengan miracle (ajaib), karena ajaib dihasilkan output tanpa
pernah menerima input (lihat proses 2).

Pemberian nama pada proses:


 Menetapkan nama sistem secara keseluruhan saat menamai proses pada
level yang lebih tinggi. Contoh: sistem kontrol inventaris.
 Menamai suatu subsistem utama, menggunakna nama-nama seperti : Sistem
pelaporan inventaris atau Sistem pelayanan konsumen internet.
 Menggunakan format kata kerja – kata sifat – kata benda untuk proses-
proses yang mendetail. Kata kerja yang menggambarkan jenis kegiatn yang
seperti ini, misalnya menghitung, memverifikasi, menyiapkan, mencetak atau
menambahkan. Contoh-contoh nama proses yang lengkap adalah: menghitung
pajak penjualan, memverifikasi status rekening konsumen, menyiapkan invoice
pengapalan, mencetak laporan yang diurutkan ke belakang, mengirim konfirmasi
email ke konsumen, memverifikasi neraca kartu kredit dan menambah record
inventaris.

3. Data Store
Komponen ini digunakan untuk membuat model sekumpulan paket
data dan diberi nama dengan kata benda jamak, misalnya Mahasiswa. Data store
ini biasanya berkaitan dengan penyimpanan-penyimpanan, seperti file atau
database yang berkaitan dengan penyimpanan secara komputerisasi, misalnya
file disket, file harddisk, file pita magnetik. Data store juga berkaitan dengan
penyimpanan secara manual seperti buku alamat, file folder, dan agenda. Alur
data yang anak panahnya menuju penyimpan data, kegiatannya adalah
„menulis/merekam‟ data, sehingga isi file data akan berubah karenanya.
Sedangkan alur data yang anak panahnya menuju ke proses dari penyimpan
data, kegiatannya adalah „membaca‟ data, sehingga isi file data tidak akan
berubah karenanya.
Penyimpan data harus diberi nama, misalkan data yang berisi biodata
mahasiswa diberi nama „MAHASISWA‟.
MAHASISWA MAHASISWA

Menulis dan Membaca data di Penyimpan Data

Suatu data store dihubungkan dengan arus data hanya pada komponen proses,
tidak dengan komponen DFD lainnya. Maksudnya:
 Arus data dari data store yang berarti sebagai pembacaan atau pengaksesan
satu paket tunggal data, lebih dari satu paket data, sebagian dari satu paket
tunggal data, atau sebagian dari lebih dari satu paket data untuk suatu
proses.
9
 Arus data ke data store yang berarti sebagai pengupdatean data, seperti
menambah satu paket data baru atau lebih, menghapus satu paket atau
lebih, atau mengubah/memodifikasi satu paket data atau lebih.

Dalam penggambaran penyimpanan data perlu diperhatikan beberapa hal,


antara lain:
a. Hanya proses saja yang berhubungan dengan simpanan data, karena yang
mengggunakan/merubah data di simpanan data adalah suatu proses.
b. Arus data yang menuju ke simpanan data dari suatu proses menunjukkan
proses update terhadap data yang tersimpan di simpanan data. Update
dapat berupa proses:
 Menambah/menyimpankan record baru atau dokumen baru ke dalam
simpanan data.
 Menghapus record atau mengambil dokumen dari simpanan data
 Merubah nilai data di suatu record atau di suatu dokumen yang ada di
simpanan data
c. Arus data yang berasal dari simpanan data ke suatu proses menunjukkan
bahwa proses tersebut menggunakan data yang ada di simpanan data.
d. Untuk suatu proses yang melakukan kedua-duanya yaitu menggunakan dan
update simpanan data dapat dipilih salah satu penggambaran.
 Menggambarkan sebuah garis dengan panah mengarah kedua arah yang
berlawanan dari simpanan data sebagai berikut:

 Menggunakan arus data yang terpisah sebagai berikut:

Untuk menghindari garis arus data yang saling berpotongan sehingga membuat
gambar di DFD menjadi ruwet, maka simpanan data/kesatuan luar dapat
digambar lebih dari sebuah.

4. Data Flow
Arus data disimbolkan dengan garis beserta anak panah, yang
merepresentasikan bagaimana data dialirkan dari entitas luar ke proses, proses

10
ke entitas luar, proses ke proses, penyimpanan data ke proses, atau proses ke
penyimpanan data. Arus data diberi nama sesuai dengan data/informasi yang
dimaksud, biasanya pemberian nama pada arus data dilakukan dengan
menggunakan kata benda, contohnya NIM,Nama.

Jaw aban Ujian


Formulir Isian
Nilai Ujian
Contoh Alur Data Searah dan Dua Arah
Data yang menempati alur data dapat berupa elemen data tunggal, maupun
kumpulan elemen data. Misalkan, pada kumpulan elemen data : „Jawaban
Ujian‟, dapat ditulis secara lengkap dengan menyebutkan setiap elemen data
yang ada di sana, yaitu : „Lembar Jawaban‟, dan „Naskah Soal‟.

Ada empat konsep yang perlu diperhatikan dalam penggambaran alur data,
yaitu :
a. Konsep Paket Data (Packets of Data)
Apabila dua data atau lebih mengalir dari suatu sumber yang sama menuju ke
tujuan yang sama dan mempunyai hubungan, dan harus dianggap sebagai
satu alur data tunggal, karena data itu mengalir bersama-sama sebagai satu
paket.

b. Konsep Alur Data Menyebar (Diverging Data Flow)


Alur data menyebar menunjukkan sejumlah tembusan paket data yang yang
berasal dari sumber yang sama menuju ke tujuan yang berbeda, atau paket data
yang kompleks dibagi menjadi beberapa elemen data yang dikirim ke tujuan
yang berbeda, atau alur data ini membawa paket data yang memiliki nilai
yang berbeda yang akan dikirim ke tujuan yang berbeda.

11
c. Konsep Alur Data Mengumpul (Converging Data Flow)
Beberapa alur data yang berbeda sumber bergabung bersama-sama menuju ke
tujuan yang sama.

d. Konsep Sumber atau Tujuan Alur Data


Semua alur data harus minimal mengandung satu proses. Maksud kalimat
ini adalah :
 Suatu alur data dihasilkan dari suatu proses dan menuju ke suatu data
store dan/atau terminator (lihat gambar (a)).
 Sutu alur data dihasilkan dari suatu data store dan/atau terminator dan
menuju ke suatu proses (lihat gambar (b)).
 Suatu alur data dihasilkan dari suatu proses dan menuju ke suatu proses
(lihat gambar (c)).4

4
http://www.snapdrive.net/files/517548/SI_03_DFD.pdf
12
D. BENTUK DATA FLOW DIAGRAM
Terdapat dua bentuk DFD, yaitu Diagram Alur Data Fisik, dan Diagram Alur data
Logika. Diagram alur data fisik lebih menekankan pada bagaimana proses dari sistem
diterapkan, sedangkan diagram alur data logika lebih menekankan proses-proses apa
yang terdapat di sistem.

Fitur Desain Logika Fisik

Bagaimana sistem tersebut


Apa yang
Bagaimana bisnis tersebut diimplementasikan atau
digambarkan
beroperasi bagaimana sistem yang ada
model tersebut
beroperasi
Apa yang Program, modul-modul
diwakili proses Kegiatan-kegiatan bisinis program dan prosedur-
tersebut prosedur manual
Apa yang Pengumpulan data yang
diwakili berhubungan dengan Basis data dan file-file fisik,
penyimpanan bagaimana data tersebut file-file manual
data tersebut disimpan
File-file master, file-file
Menunjukkan penyimpanan transisi. Setiap proses yang
Jenis
data-penyimpanan data yang beroperasi pada dua waktu
penyimpanan
mewakili pengumpulan data yang berbeda harus
data
permanen dihubungkan dengan
penyimpanan
Menunjukkan kontrol-kontrol
untuk memvalidasi data-data
masukkan agar memperoleh
Menunjukkan kontrol-kontrol suatu record (record yang
Kontrol sistem
bisnis menemukan status) untuk
memastikan penyelesaian
suatu proses yang berhasil dan
untuk keamanan sistem.

a. Diagram Alur Data Fisik (DADF)


DADF lebih tepat digunakan untuk menggambarkan sistem yang ada (sistem
yang lama). Penekanan dari DADF adalah bagaimana proses-proses dari sistem
diterapkan (dengan cara apa, oleh siapa dan dimana), termasuk proses-proses
manual.

Untuk memperoleh gambaran bagaimana sistem yang ada diterapkan, DADF


harus memuat :
1. Proses-proses manual juga digambarkan.
2. Nama dari alur data harus memuat keterangan yang cukup terinci untuk
menunjukkan bagaimana pemakai sistem memahami kerja sistem.
3. Simpanan data dapat menunjukkan simpanan non komputer.
4. Nama dari simpanan data harus menunjukkan tipe penerapannya apakah
secara manual atau komputerisasi. Secara manual misalnya dapat

13
menunjukkan buku catatat, meja pekerja. Sedang cara komputerisasi
misalnya menunjukkan file urut, file database.
5. Proses harus menunjukkan nama dari pemroses, yaitu orang, departemen,
sistem komputer, atau nama program komputer yang mengakses proses
tersebut.
Kelebihan-kelebihan dari diagram aliran data fisik:
 Mengklarifikasikan proses-proses mana yang manual dan mana yang
otomatis
 Menggambarkan proses-proses secara lebih mendetail dibanding DAD
Logika
 Mengurutkan proses-proses yang harus dilakukan menurut urutan tertentu
 Mengidentifikasi penyimpanan data sementara
 Menetapkan nama-nama aktual dari file-file dan printoutnya
 Menambahkan kontrol-kontrol untuk memastikan bahwa proses-proses
tersebut sudah dilakukan secara tepat.

b. Diagram Alur Data Logika (DADL)


DADL lebih tepat digunakan untuk menggambarkan sistem yang akan
diusulkan (sistem yang baru). Untuk sistem komputerisasi, penggambaran
DADL hanya menunjukkan kebutuhan proses dari system yang diusulkan secara
logika, biasanya proses-proses yang digambarkan hanya merupakan proses-
proses secara komputer saja.
Keuntungan-keuntungan dengan menggunakan diagram aliran data logika:
 Komunikasi yang lebih baik dengan pengguna
Suatu model logika lebih mudah digunakan saat berkomunikasi dengan
pengguna sistem karena dipusatkan pada kegiatan bisnis. Pengguna akan
semakin mengenal kegiatan kegiatan intinya serta beberapa syarat-syarat
informasi dari setiap kegiatan.
 Sistem yang lebih stabil
Sistem yang dibentuk oleh diagram aliran data logika biasanya lebih stabil,
hal ini dikarenakan diagram aliran data logika merepresentasikan fitur-fitur
sistem yang harus ada tidak peduli apa yang dilakukan di dalam biisnis
secara fisik.
 Pemahaman yang lebiih baik mengenai bisnis bagi penganalisis sistem
Diagram aliran data logika memiliki suatu penekanan bisnis dan membantu
penganalisa dalam memahami bisnis yang sedang dipelajari, memahami
mengapa prosedur-prosedur tertentu ditampilkan serta menentukan hasil-
hasil yang diharapkan dari suatu tugas yang dilakukan.
 Fleksibilitas dan pemeliharaan
Sistem baru akan lebih fleksibel dan mudah mempertahankannya bila
desainnya didasarkan atas suatu model logika. Fungsi-fungsi bisnis tidak
terlalu sering mengalami perubahan. Aspek-aspek fisik dari sistem lebih
sering berubah dibanding fungsi-fungsi bisnis.
 Pengurangan redundansi dan kreasi yang lebih mudah mengenai model fisik
Mengamati suatu model lgika akan membantu anda menciptkan sistem yang
lebih baik dengan mengurangi redundansi dan metode yang tidak efisien di
dalam sistem lama. Selain itu, model logika memudahkan untuk

14
menciptakan dan menyederhanakan penggunaan karena tidak terlalu sering
memuat penyimpanan data dibandingkan dengan file master/basis data.

E. SYARAT-SYARAT PEMBUATAN DATA FLOW DIAGRAM


Syarat pembuatan DFD ini akan menolong profesional sistem untuk menghindari
pembentukkan DFD yang salah atau DFD yang tidak lengkap atau tidak konsisten
secara logika. Beberapa syarat pembutan DFD dapat menolong profesional sistem
untuk membentuk DFD yang benar, menyenangkan untuk dilihat dan mudah dibaca
oleh pemakai.
Syarat-syarat pembuatan DFD ini adalah :
1. Pemberian Nama untuk Tiap komponen DFD
Seperti yang telah dijelaskan sebelumnya, komponen terminator mewakili
lingkungan luar dari sistem, tetapi mempunyai pengaruh terhadap sistem yang
sedang dikembangkan ini. Maka agar pemakai mengetahui dengan lingkungan
mana saja sistem mereka berhubungan, komponen terminator ini harus diberi
nama sesuai dengan lingkungan luar yang mempengaruhi sistem ini. Biasanya
komponen terminator diberi nama dengan kata benda.
Selanjutnya adalah komponen proses. Komponen proses ini mewakili fungsi
sistem yang akan dilaksanakan atau menunjukkan bagaimana fungsi sistem
dilaksanakan oleh seseorang, sekelompok orang atau mesin. Maka sangatlah
jelas bahwa komponen ini perlu diberi nama yang tepat, agar siapa yang
membaca DFD khususnya pemakai akan merasa yakin bahwa DFD yang
dibentuk ini adalah model yang akurat.
Pemberian nama pada komponen proses lebih baik menunjukkan aturan-aturan
yang akan dilaksanakan oleh seseorang dibandingkan dengan memberikan
15
nama atau identitas orang yang akan melaksanakannya. Ada dua alasan
mengapa bukan nama atau identitas orang (yang melaksanakan fungsi sistem)
yang digunakan sebagai nama proses, yaitu :
 Orang tersebut mungkin diganti oleh orang lain saat mendatang, sehingga
bila tiap kali ada pergantian orang yang melaksanakan fungsi tersebut, maka
sistem yang dibentuk harus diubah lagi.
 Orang tersebut mungkin tidak melaksanakan satu fungsi sistem saja,
melainkan beberapa fungsi sistem yang berbeda. Daripada menggambarkan
beberapa proses dengan nama yang sama tetapi artinya berbeda, lebih baik
tunjukkan dengan tugas/fungsi system yang sebenarnya akan dilaksanakan.
Karena nama untuk komponen proses lebih baik menunjukkan tugas/fungsi
sistem yang akan dilaksanakan, maka lebih baik pemberian nama ini
menggunakan kata kerja transitif.

Pemberian nama untuk komponen data store menggunakan kata benda, karena
data store menunjukkan data apa yang disimpan untuk kebutuhan sistem dalam
melaksanakan tugasnya. Jika sistem sewaktu-waktu membutuhkan data tersebut
untuk melaksanakan tugasnya, maka data tersebut tetap ada, karena sistem
menyimpannya.

Begitu pula untuk komponen alur data, namanya lebih baik diberikan dengan
menggunakan kata benda. Karena alur data ini menunjukkan data dan
infiormasi yang dibutuhkan dan yang dikeluarkan oleh system dalam
pelaksanaan tugasnya.

2. Pemberian Nomor pada Komponen Proses


Biasanya profesional sistem memberikan nomor dengan bilangan terurut pada
komponen proses sebagai referensi. Tidak jadi masalah bagaimana nomor-
nomor proses ini diberikan. Nomor proses dapat diberikan dari kiri ke kanan,
atau dari atas ke bawah, atau dapat pula dilakukan dengan pola-pola tertentu
selama pemberian nomor ini tetap konsisten pada nomor yang dipergunakan.

Nomor-nomor proses yang diberikan terhadap komponen proses ini tidak


dimaksudkan bahwa proses tersebut dilaksanakan secara berurutan. Pemberian
nomor ini dimaksudkan agar pembacaan suatu proses dalam suatu diskusi akan
lebih mudah dengan hanya menyebutkan prosesnya saja jika dibandingkan
dengan menyebutkan nama prosesnya, khususnya jika nama prosesnya panjang
dan sulit.
16
Maksud pemberian nomor pada proses yang lebih penting lagi adalah untuk
menunjukkan referensi terhadap skema penomoran secara hirarki pada levelisasi
DFD. Dengan kata lain, nomor proses ini merupakan dasar pemberian nomor
pada levelilasi DFD (lihat gambar di atas).

3. Penggambaran DFD sesering mungkin


Penggambaran DFD dapat dilakukan berkali-kali sampai secara teknik DFD itu
benar, dapat diterima oleh pemakai, dan sudah cukup rapih sehingga
profesional sistem tidak merasa malu untuk menunjukkan DFD itu kepada
atasannya dan pemakai.

Dengan kata lain, penggambaran DFD ini dilakukan sampai terbentuk DFD yang
enak dilihat, dan mudah dibaca oleh pemakai dan professional sistem lainnya.
Keindahan penggambaran DFD tergantung pada standar-standar yang diminta
oleh organisasi tempat profesional system itu bekerja dan perangkat lunak yang
dipakai oleh profesional system dalam membuat DFD.

Penggambaran yang enak untuk dilihat dapat dilakukan dengan memperhatikan


hal-hal berikut ini :
 Ukuran dan bentuk proses.
Beberapa pemakai kadang-kadang merasa bingung bila ukuran proses satu
berbeda dengan proses yang lain. Mereka akan mengira bahwa proses
dengan ukuran yang lebih besar akan diduga lebih penting dari proses yang
lebih kecil. Hal ini sebenarnya hanya karena nama proses itu lebih panjang
dibandingkan dengan proses yang lain. Jadi, sebaiknya proses yang
digambarkan memiliki ukuran dan bentuk yang sama.

 Alur data melingkar dan alur data lurus.


Alur data dapat digambarkan dengan melingkar atau hanya garis lurus.
Mana yang lebih enak dipandang tergantung siapa yang akan melihat DFD
tersebut.

 DFD dengan gambar tangan dan gambar menggunakan mesin.


DFD dapat digambarkan secara manual atau dengan menggunakan bantuan
mesin, tergantung pilihan pemakai atau profesional sistem.

4. Penghindaran Penggambaran DFD yang rumit


Tujuan DFD adalah untuk membuat model fungsi yang harus dilaksanakan oleh
suatu sistem dan interaksi antar fungsi. Tujuan lainnya adalah agar model yang
dibuat itu mudah dibaca dan dimengerti tidak hanya oleh profesional sistem
yang membuat DFD, tetapi juga oleh pemakai yang berpengalaman dengan

17
subyek yang terjadi. Hal ini berarti DFD harus mudah dimengerti, dibaca, dan
menyenangkan untuk dilihat.

Pada banyak masalah, DFD yang dibuat tidak memiliki terlalu banyak proses
(maksimal enam proses) dengan data store, alur data, dan terminator yang
berkaitan dengan proses tersebut dalam satu diagram.

Bila terlalu banyak proses, terminator, data store, dan alur data digambarkan
dalam satu DFD, maka ada kemungkinan terjadi banyak persilangan alur data
dalam DFD tersebut. Persilangan alur data ini menyebabkan pemakai akan sulit
membaca dan mengerti DFD yang terbentuk. Jadi semakin sedikit adanya
persilangan data pada DFD, maka makin baik DFD yang dibentuk oleh
profesional sistem.

Persilangan alur data ini dapat dihindari dengan menggambarkan DFD secara
bertingkat-tingkat (levelisasi DFD), atau dengan menggunakan pemakaian
duplikat terhadap komponen DFD.

Komponen DFD yang dapat menggunakan duplikat hanya komponen store dan
terminator. Pemberian duplikat ini juga tidak dapat diberikan sesuka profesional
sistem yang membuat DFD, tetapi makin sedikit pemakaian duplikat, makin
baik DFD yang terbentuk.

Pemberian duplikat terhadap data store dilakukan dengan memberikan simbol


garis lurus (x) atau asterik (*), sedangkan untuk terminator menggunakan simbol
garis miring (/) atau asterik (*). Banyaknya pemberian simbol duplikat pada
duplikat yang digunakan tergantung banyaknya duplikat yang digunakan.

Contoh pemakaian simbol duplikat pada terminator


(a) Satu duplikat yang digunakan (b) Dua duplikat yang digunakan

5. Penggambaran DFD yang Konsisten


Penggambaran DFD harus konsisten terhadap kelompok DFD lainnya.
Profesional sistem menggambarkan DFD berdasarkan tingkatan DFD dengan
tujuan agar DFD yang dibuatnya itu mudah dibaca dan dimengerti oleh pemakai
sistem. Hal ini sesuai dengan salah satu tujuan atau syarat membuat DFD.

18
F. PENGGAMBARAN DFD
Tidak ada aturan baku untuk menggambarkan DFD. Tapi dari berbagai referensi yang
ada, secara garis besar langkah untuk membuat DFD adalah :

1. Identifikasi terlebih dahulu semua entitas luar yang terlibat di sistem.


2. Identifikasi semua input dan output yang terlibat dengan entitas luar.
3. Buat Diagram Konteks (diagram context)
Diagram ini adalah diagram level tertinggi dari DFD yang menggambarkan
hubungan sistem dengan lingkungan luarnya. Caranya :
 Tentukan nama sistemnya.
 Tentukan batasan sistemnya.
 Tentukan terminator apa saja yang ada dalam sistem.
 Tentukan apa yang diterima/diberikan terminator dari/ke sistem.
 Gambarkan diagram konteks.
4. Buat Diagram Level Zero
Diagram ini adalah dekomposisi dari diagram konteks. Caranya :
 Tentukan proses utama yang ada pada sistem.
 Tentukan apa yang diberikan/diterima masing-masing proses ke/dari
sistem sambil memperhatikan konsep keseimbangan (alur data yang
keluar/masuk dari suatu level harus sama dengan alur data yang
masuk/keluar pada level berikutnya).
 Apabila diperlukan, munculkan data store (master) sebagai sumber maupun
tujuan alur data.
 Gambarkan diagram level zero.
- Hindari perpotongan arus data
- Beri nomor pada proses utama (nomor tidak menunjukkan urutan
proses).
5. Buat Diagram Level Satu
Diagram ini merupakan dekomposisi dari diagram level zero. Caranya :
 Tentukan proses yang lebih kecil (sub-proses) dari proses utama yang ada di
level zero.
 Tentukan apa yang diberikan/diterima masing-masing sub-proses ke/dari
sistem dan perhatikan konsep keseimbangan.
 Apabila diperlukan, munculkan data store (transaksi) sebagai sumber
maupun tujuan alur data.
 Gambarkan DFD level Satu
- Hindari perpotongan arus data.
- Beri nomor pada masing-masing sub-proses yang menunjukkan
dekomposisi dari proses sebelumnya. Contoh : 1.1, 1.2, 2.1
6. DFD Level Dua, Tiga, …
Diagram ini merupakan dekomposisi dari level sebelumnya. Proses dekomposisi
dilakukan sampai dengan proses siap dituangkan ke dalam program. Aturan
yang digunakan sama dengan level satu.

19
G. LEVELISASI DFD
Pada gambar di atas terlihat bahwa Proses 0 diuraikan lagi ke dalam empat proses,
penguraian ini digambarkan pada diagram Figure 0, sedangkan Proses 2 diuraikan
kembali menjadi tiga proses yang digambarkan pada diagram Figure 2. Penguraian ini
juga diikuti oleh alur data yang berkaitan dengan tiap proses yang diuraikan. Alur
data yang berkaitan dengan tiap proses yang diuraikan dikenal dengan Alur data
20
global. Jadi pada balancing DFD yang perlu diperhatikan adalah jumlah alur data
global pada suatu level harus sama pada level berikutnya.

Ada beberapa hal yang perlu diperhatikan dalam penggambaran levelisasi DFD, yaitu
:
 Dalam diagram konteks, ada beberapa hal yang perlu diperhatikan seperti
hubungan sistem dengan dunia luar yang mempengaruhinya, penggambaran
sistem dalam satu proses, dan penggambaran data store (optional) yang dikenal
dengan data store eksternal atau data store master. Data store eksternal ini
maksudnya adalah data store itu dihasilkan oleh sistem yang sedang dianalisis,
tetapi digunakan oleh sistem lain, atau data store itu dihasilkan oleh sistem lain
tetapi digunakan oleh sistem yang sedang dianalisis.

Contoh penggambaran diagram konteks


 Balancing (kesimbangan) dalam penggambaran levilisasi DFD perlu diperhatikan.
Balancing DFD ini maksudnya keseimbangan antara alur data yang masuk/keluar
dari suatu level harus sama dengan alur data yang masuk/keluar pada level
berikutnya (lihat gambar Levelisasi DFD).5

H. MEMERIKSA KESALAHAN DIAGRAM


Sejumlah kesalahan bisa terjadi saat menggambar diagram aliran data. Beberapa
kesalahan yang umumnya terjadi adalah:
1. Lupa memasukkan suatu aliran data/mengarahkan kepala anak panah pada arah
yang salah.
Contohnya adalah sebuah proses gambaran yang menunjukkan semua alira ndata
sebagai masukkan atau sebagai keluaran saja.setiap prose mentransformasikan data
dan harus menerima dan menghsilka nkeluaran.
2. Menghubungkan penyimpanan data dan entitas-entitas eksternal secara langsung
satu sama lain. Penyimpanandata-penyimpanan data serta entitas juga tidak perlu
dikonesikan satu sama lain; penyimpanan data ddan entitas eksternal hanya
terhubungadengan suatu pross. Suatu file tidak ditampilkan dengan file yang lain
tanpa bantuan suatu program atau seseorang untuk memindahkan data.
Dua entitas eksternal yang terkoneksi secara langsung menunjukkan bahwa
mereka ingin berkomunikasi satu sama lain. Koneksi ini tidak termasuk dalam
diagram aliran data kecuali bila sistem memfasilitasi komunikasi tersebut.

5
http://www.snapdrive.net/files/517548/SI_03_DFD.pdf
21
Menghasilkan sebuah laporan adalah contoh dari jenis komunikasi ini.sebuah
proses masih harus ditempatkan di antara entitas sehingga menghasilkan laporan.

3. Aliran data-aliran data atau proses-proses pemberian label yang tidak tepat.
Periksalah diagram aliran data tersebut untuk memastikan bahwa setiap objek atau
aliran data diberi label yagn sesuai. Sebuah proses harus menunjukkan nama
sistematau menggunakan format kata kerja – kata sifat – kata benda. Masing-
masing aliran data harus bisa digambarkan dengan sebuah kata benda.

4. Memasukkan lebih dari sembilan proses pada diagram aliran data. Memiliki terlalu
banyak proses yang menciptakan suatu diagram yang kacau akan memusingkan
untuk dibaca dan malah menghalangi komunikasi. Bila melibatkan lebih dari
sembilan proses dalam suatu sistem kelompokkan beberapa proses yang bekerja
22
bersama-sama di dalam suatu subsistem dan letakkan mereka pada suatu diagram
anak.
5. Mengabaikan aliran data. Aliran data pada anak sangat mendetal, sehingga aliran
data linier sangat jarang ditemukan. Contohnya dari gambar di bawah ini, pada
proses menghitung Jumlah Pemotongan Pajak memerlukan Jumlah Tanggungan
yang dimiliki pegawai dan Suku Bunga Pemotongan Pajak sebagai masukan Sama
halnya dengan proses Gaji Bersih.
6. Menciptakan analisis yang tidak seimbang. Masing-masing diagram anak harus
memiliki masukan dan aliran data keluaran yang sama seperti proses
induk.Pengecualiannya adalah keluaran minor, seperti jalur-jalur kesalahan yang
hanya dimasukkan pada diagram anak
Contoh DFD yang benar dari suatu sistem perpustakan:

DFD Level 0

23
I. KELEBIHAN DAN KELEMAHAN DFD

No. Kelebihan Kekurangan


DFD membantu para analis sitem
meringkas informasi tentang sistem,
DFD tidak menunjukkan proses
1. mengetahui hubungan antar sub-sub
pengulangan (loop).
sistem, membantu perkembangan
aplikasi secara efektif.
DFD berfungsi sebagai alat komunikasi
DFD tidak menunjukkan proses
2. yang baik antara pemakai dan analis
perhitungan.
sistem.
DFD dapat menggambarkan sejumlah
batasan otomasi (teknik untuk membuat
DFD tidak memperlihatkan aliran
3. perangkat, proses, atau sistem agar
kontrol.
berjalan secara otomatis) untuk
pengembangan alternatif sistem fisik.
Lemah dalam konsep model untuk
4. pendeskripsian data dan basis
data.

24
ENTITY RELATIONSHIP DIAGRAM

A. Pengertian Entity Relationship Diagram


Sebelum memodelkan data, terlebih dahulu akan dibahas arti kata model data.
Model data adalah representasi sederhana, biasanya dalam bentuk grafik yang
menggambarkan struktur data dalam sebuah sistem nyata, serta karakteristik, relasi,
batasan-batasan, dan transformasi data. Model data diperlukan karena desainer
database menggunakan model data sebagai tools komunikasi untuk memfasilitasi
interaksi antar-designer, programer aplikasi, dan end user.

Model konseptual merupakan cara melihat view-global dari data. Oleh karena
namanya konseptual, maka yang digambarkan adalah keadaan mental (non fisik)
yang ada di benak sistem analis. Metode yang paling banyak digunakan untuk
membuat model konseptual adalah dengan menggunakan Entity Relationship
Diagram. Model konseptual identik dengan algoritma dalam pemrograman.
Pembuatan sebuah model konseptual tidak tergantung kepada sebuah software atau
hardware tertentu.6

Entity Relationship diagram adalah pemodelan data utama dan akan membantu
membantu mengorganisasikan data dalam suatu proyek ke dalam entitas-entitas dan
menentukan hubungan antar entitas. Relasi adalah hubungan alamiah yang terjadi
antara satu atau lebih entitas, missal proses pembayaran pegawai. Kardinalitas
menentukan kejadian suatu entitas untuk satu kejadian pada entitas yang
berhubungan. Misal, mahasiswa bisa mengambil banyak matakuliah.

Atribut adalah ciri umum semua atau sebagian besar instansi pada entitas tertentu.
Sebutan lain atribut adalah property, elemen data dan field. Missal, nama, alamat,
nomor, pegawai, gaji. Dsb Model Entity Relationship merupakan suatu penyajian
data dengan menggunakan Entity dan Relationship. Ada beberapa istilah yang harus
dikuasai dan berkaitan dengan Model Entity Relationship, yaitu:
 Kotak sebagai lambang entitas
 Nama entitas dalam kata benda dan dengan huruf kapital
 Diamond untuk relationship(s) antara entitas
 Elips sebagai atribut entitas
 Garis untuk menandakan hubungan
 1 is untuk menyatakan sisi ”1”/satu dalam suatu relasi
 M is untuk menyatakan sisi “many”/ banyak dalam suatu relasi

B. Struktur ERD secara umum


1. Entity
 Entity adalah obyek yang dapat dibedakan dalam dunia nyata
 Entity set adalah kumpulan dari entity yang sejenis
 Entity set dapat berupa :
– Obyek secara fisik : Rumah, Kendaraan, Peralatan
– Obyek secara konsep : Pekerjaan , Perusahaan, Rencana

6
Wahana Komputer. Menjadi Seorang Programmer Komputer, Penerbit ANDI.
25
2. Relationship
 Relationship adalah hubungan yang terjadi antara satu atau lebih entity.
 Relationship set adalah kumpulan relationship yang sejenis.

Proyek Kerja Proyek

Gambar 1. Entity dan Relationship


3. Atribut
 Atribut adalah karakteristik dari entity atau relationship, yang menyediakan
penjelasan detail tentang entity atau relationship tersebut.
 Nilai Atribut merupakan suatu data aktual atau informasi yang disimpan
pada suatu atribut di dalam suatu entity atau relationship.
 Jenis-jenis atribut:
1. Simple Attribute, yaitu atribut yang terdiri dari satu kompunen tunggal
dengan keberadaan yang independen dan tidak dapat dibagi menjadi
bagian yang lebih kecil lagi. Simple attribute dikenal juga dengan nama
Atomic Attribute.
2. Composite Attribute, yaitu atribut yan terdiri dari beberapa kompone,
dimana masing-masing komponen memiliki keberadaan yang
independen.

Nam
Nama Nama
Depa a Belakang
n Teng
ah
NAMA

PEGAWAI

Gambar 2. Atribut Composite

3. Single-valued Attribute, yaitu atribut yang mepunyai nilai tunggal untuk


setiap kejadian.
4. Multi-valued Attribute, yaitu atribut yang memiliki sekelompok nilai
untuk setiap kejadian .

TglLahir Ge NIP Nama


Gelar

PEGAWAI

Gambar 3. Atribut Multivalue


26
5. Derived Attribute, yaitu atribut yang memiliki nilai yang dihasilkan dari
satu atau beberapa atribut lainnya, dan tidak harus berasal dari satu
entitas.
TglLahir Umur

PEGAWAI

Gambar 4. Atribut Derivatif

C. Kegunaan ERD
E-R Diagram merupakan suatu bahasa pemodelan yang dimana posisinya dapat
dianalogikan dengan stroy board dalam industri film, blu print arsitektur suatu
bangunan, miniatur, dan lain-lain. Dalam praktiknya, membangun suatu sistem
terlebih dahulu dilakukannya suatu perencaan. Pemodelan merupakan suatu sub
bagian dari perencanaan secara keseluruhan sebagai salah satu upaya feedback
evaluasi perampungan suatu perencanaan.

E-R Diagram sebagai suatu pemodelan setidaknya memiliki beberapa karakteristik


dan manfaat sebagai berikut:
 Memudahkan untuk dilakukannya analisis dan perubahan sistem sejak dini,
bersifat murah dan cepat.
 Memberikan gambaran umum akan sistem yang akan di buat sehingga
memudahkan developer.
 Menghasilkan dokumentasi yang baik untuk client sebagai bahan diskusi
dengan bentuk E-R Diagram itu sendiri, dan
 Kamus data bagi bagi para pengembang database.7
 Menampilkan gambaran bagaimana hubungan suatu entity dengan yang lain
dan menggambarkan suatu database.

D. Tahapan Pembuatan ERD


Diagram ER dibuat secara bertahap, ada dua kelompok pentahapan yang biasa
ditempuh didalam pembuatan diagram ER, yaitu :
1. Tahap pembuatan diagram ER awal (preliminary design)
2. Tahap optimasi diagram ER (final design)
Tujuan dari tahap pertama adalah untuk mendapatkan sebuah rancangan basis data
minimal yang dapat mengakomodasi kebutuhan penyimpanan data terhadap sistem
yang sedang ditinjau. Tahap awal ini umumnya mengabaikan anomali-anomali
(proses pada basis data yang memberikan efek sampaing yang tidak diharapkan)
yang menang ada sebagai suatu fakta. Anomali-anomali tersebut biasanya baru
dipertimbangkan pada tahap kedua.

Langkah-langkah teknis yang dapat dilakukan untuk mendapatkan ER Diagram


awal adalah :

7
http://developdottxt.wordpress.com/2008/04/03/erd-entitas-relationship-diagram/
27
1. Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat.
2. Menentukan atribut-atribut key (kunci) dari masing-masing himpunan entitas.
3. Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan
entitas-himpunan entitas yang ada beserta foreign-keynya (kunci asing/ kunci
tamu).
4. Menentukan derajad /kardinalitas relasi untuk setiap himpunan relasi.
5. Melengkapi himpunan entitas dan himpunan relasi dengan atribut dekriptif
(atribut yang bukan kunci)

Tahap kedua mempertimbangkan anomali-anomali dan juga memperhatikan aspek-


aspek efisiensi, performasi dan fleksibilitas. Tiga hal tersebut seringkali dapat saling
bertolak belakang. Karena itu, tahap kedua ini ditempuh dengan melakukan koreksi
terhadap tahap pertama. Bentuk koreksi yang terjadi dapat berupa
pendekomposisian himpunan entitas, penggabungan himpunan entitas, pengubahan
derajad relasi, penambahan relasi baru atau perubahan (penambahan dan
pengurangan) atribut-atribut untuk masing-masing entitas dan relasi.

E. Jenis-Jenis Kunci
1. Candidate Key
Sebuah attribute atau lebih yang secara unit mengidentifikasi sebuat record,
disebut candidate key. Attribute ini mempunyai nilai yang unik pada hampir
setiap recordnya. Fungsi dari candidate key ini adalah sebagai calon primary
key.

Contoh candidate-key :
Candidate Key

ID_Cus Name NoOfPay Amount

112233 Tim 890 9000

112231 Kate 891 8000

112241 Tyson 895 10000

2. Primary Key
Salah satu atrribut dari candidat key dapat dipilih menjadi primary key dengan 3
kriteria sbb :

 Key tersebut lebih natural untuk dijadikan acuan


 Key tersebut lebih sederhana
 Key tersebut cukup uniqe

28
3. Foreign Key
Jika sebuah primary key terhubungan ke table/entity lain, maka keberadaan
primary key pada entity tersebut di sebut sebagai foreign key. Misal : Primary
Key KodeDosen dari entity Dosen digunakan juga pada field entity KRS, maka
keberadaan field KodeDosen pada entity KRS disebut sebagai foreign key.

4. Alternate Key
Setiap atribut dari candidate key yang tidak terpilih sebagai primary key akan dinamakan
alternate key. Pada contoh sebelumnya bila untuk primary key dipilih ID_Cus maka alternate key
nya adalah No.of Pay

. Foreign Key
Primary Key

KD-
KODE MK SKS
Dosen
TEL 100 Fisika 3 D-101
TEL 200 Isyarat 2 D-109
TEL 210 T.Kendali 2 D-101

KD-Dosen Nama_Dosen

D-100 Badu,S.T
D-101 Ir.Thomas
D-109 Harry,S.T,M.T

Primary Key

F. Derajat Relationship
Derajat relationship yaitu jumlah entitas yang berpartisipasi dalam suatu
relationship. Derajat relationship terdisri dari:
1. Unary Degree (Derajat Satu), yaitu keterhubungan antar satu type entitas
dimana type entitas tersebut berpartisipasi lebih dari satu kali dengan peran
yang berbeda.

PEGAWAI LAPOR

Gambar 5. Unary Degree

29
2. Binary Degree (Derajat Dua), yaitu keterhubungan antar dua type entitas.

PEGAWAI KERJA DEPARTEMEN

Gambar 6. Binary Degree

3. Ternary Degree (Derajat Tiga), yaitu keterhubungan antar tiga type entitas

PEGAWAI KERJA PROYEK

KOTA

Gambar 7. Ternary Degree

G. Cardinality Ratio Constraint


Menjelaskan batasan jumlah keterhubungan satu entity dengan entity lainnya.
 Jenis Cardinality Ratio
a) Relasi one to one (1 : 1)
Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A
berhubungan paling banyak dengan satu entitas pada himpunan entitas B.

b) Relasi one to many (1 : N / N : 1)


Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak
entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat
berhubungan dengan satu entitas pada himpunan entitas A.

30
c) Relasi many to many (M : N)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak
entitas pada himpunan entitas B.

H. Participation Constraint
 Menjelaskan apakah keberadaan suatu entity tergantung pada hubungannya
dengan entity lain
 Terdapat 2 macam Participation Constraint :
o Total Participation
Keberadaan suatu entity tergantung pada hubungannya dengan entity
lain.

o Partial Participation
Keberadaan suatu entity tidak tergantung pada hubungannya dengan
entity lain.

31
I. Weak entity
 Weak Entity adalah suatu Entity dimana keberadaan dari entity tersebut
tergantung dari keberadaan entity lain.
 Entity yang merupakan induknya disebut Identifying Owner dan
relationshipnya disebut Identifying Relationship.
 Weak Entity selalu mempunyai Total Participation constraint dengan
Identifying Owner.

J. Simbol-simbol ERD

Notasi Arti

Entity

Weak Entity

Relationship

Identifying Relationship

Atribut

Atribut Primary Key

32
Atribut Multivalue

Atribut Composite

Atribut Derivatif

K. Contoh Kasus
Sebuah perusahaan mempunyai beberapa bagian. Masing-masing bagian mempunyai
pengawas dan setidaknya satu pegawai. Pegawai ditugaskan pasling tidak di satu
bagian (dapat pula dibeberapa bagian). Paling tidak satu pegawai mendapat tugas di
satu proyek. Tetapi seorang pegawai dapat libur dan tidak dapat tugas di proyek

1. Menentukan Entitas
Entitasnya : Pengawas, Bagian, Pegawai dan Proyek

2. Menentukan Relasi dengan Matrik Relasi


Bagian Pegawai Pengawas Proyek
Dijalankan
Bagian Di tugaskan ke
Oleh
Pegawai Milik Bekerja Pada
Pengawas Menjalankan
Proyek Menggunakan

3. Gambar ERD Sementara

4. Mengisi Kardinalitas
Dari gambaran permasalahan dapat diketahui bahwa:
 Masing-masing bagian hanya punya satu pengawas

33
 Seorang pengawas bertugas di satu bagian
 Masing-masing bagian ada minimal satu pegawai
 Masing-masing proyek dikerjakan paling tidak oleh satu pegawai

5. Menentukan Kunci Utama


Kunci Utamanya: Nomor Pengawas, nama Bagian, Nomor Pegawai, Nomor
Proyek

6. Menggambar ERD berdasarkan Kunci


Ada dua relasi many to many pada ERD sementara,yaitu antara bagian dengan
pegawai, pegawai dengan proyek, oleh sebab itu kita buat entitas baru yaitu
bagian pegawai dan pegawai. Kunci utama dari entitas baru adalah kunci utama
dari entitas lain yang akan menjadi kunci tamu di entitas baru

34
7. Menentukan atribut
Atribut yang diperlukan adalah: nama bagian, nama proyek, nama pegawai, nama
pengawas, nomor proyek, nomor pegawai, nomor pengawas

8. Memetakan atribut
Atribut Entitas
Nama Bagian Bagian
Nama Proyek Proyek
Nama pegawai Pegawai
Nama pengawas Pengawas
Nomor Proyek Proyek
Nomor Pegawai Pegawai
Nomor Pengawas Pengawas

9. Menggambar ERD dengan Atribut

35
10. Memeriksa hasil
Periksa apakah terdapat redudansi. ERD akhir :untuk pemodelan data pada
sistem

L. Penggambaran Diagram ER

36
M. Transformasi dari ERD ke Database Relasional
Tahapan-tahapannya adalah :
1. Setiap tipe Entity dibuat suatu relasi yang memuat semua atribut simple,
sedangkan untuk atribut composite hanya dimuat komponen-komponennya
saja.

PEGAWAI (NOPEG, ALM1, KDPOS, …….)

37
2. Setiap relasi yang mempunyai atribut multivalue, buatlah relasi baru dimana
Primary Keynya merupakan gabungan dari Primary Key dari relasi tersebut
dengan atribut multivalue.

LOKPR(NOPRO, LOKASI)

3. Setiap Unary Relationship 1:N, pada relasi perlu ditambahkan suatu foreign key
yang menunjuk ke nilai primary keynya.

4. Setiap Unary Relationship M:N, buatlah relasi baru dimana primary


keynya merupakan gabungan dari dua atribut dimana keduanya menunjuk ke
primary key relasi awal dengan penamaan yang berbeda.

KOMBAR (NOBAR, NOKOMP , JUMLAH)

38
5. Setiap Binary Relationship 1:1, dimana Participation Constraint keduanya total,
buatlah suatu relasi gabungan dimana Primary Keynya dapat dipilih salah satu.

PEGAWAI (NOPEG, ... , NOPRO, ...).

6. Setiap Binary Relationship 1:1 dan salah satu Participation Constraintnya Total,
maka Primary Key pada relasi yang Participation Constraintnya Partial menjadi
Foreign Key pada relasi yang lainnya.

BAGIAN (NOBAG, ... , MANAGER)

7. Setiap Binary Relationship 1:1, dimana kedua Participation Constraintnya


partial, maka selain kedua relasi perlu dibuat relasi baru yang berisi Primary
Key gabungan dari Primary Key kedua tipe Entity yang berelasi.

PEKERJAAN ( NOPEG, NOPRO, …)

8. Setiap Binary Relationship 1 : N, dimana tipe Entity yang bersisi N mempunyai


Participation Constraint Total, maka Primary Key pada relasi yang bersisi 1
dijadikan Foreign Key pada relasi yang bersisi N.

39
PROYEK (NOPRO, ... , NOBAG)

9. Setiap Binary Relationship 1 : N, dimana tipe Entity yang bersisi N mempunyai


Participation Constraint partial, buatlah relasi baru dimana Primary Keynya
merupakan gabungan dari Primary Key kedua tipe Entity yang berelasi.

PEKERJAAN (NOPEG, NOPRO, ……)

10. Setiap Binary Relationship M:N, buatlah relasi baru dimana Primary Keynya
merupakan gabungan dari Primary Key kedua tipe Entity yang berelasi.

PEKERJAAN (NOPEG, NOPRO, …..)

11. Setiap Ternary Relationship, buatlah relasi baru dimana Primary Keynya
merupakan gabungan dari Primary Key ketiga tipe Entity yang berelasi.

40
PEKERJAAN ( NOPEG, NOPRO , NOKOT)

12. Setiap tipe Weak Entity, dibuat suatu relasi yang memuat semua atributnya
dimana Primary Keynya adalah gabungan dari Partial Key dan Primary Key dari
relasi induknya (identifying owner).

TANGGUNGAN (NOPEG, NAMA, ….)

Hasil Transformasi dari Diagram ER ke database relasional :


Skema Database

PEGAWAI (NOPEG, NAPEG, ALM1, KDPOS,TGLLAH, UMUR,


SUPERVISOR-ID, NOBAG)

BAGIAN (NOBAG, NABAG, LOKASI, MANAGER)

PROYEK (NOPRO, NAPRO, NOBAG)

LOKPR (NOPRO, LOKAPR)

PEKERJAAN (NOPEG, NOPRO, JAM)

TANGGUNGAN (NOPEG, NAMA, JNKELT,HUBUNGAN)


41
DAFTAR PUSTAKA

Abdul Kadir, Dasar Perancangan Dan Implementasi Database Relasional. Yogyakarta:


Penerbit Andi. 2008

Hariyanto, Bambang Ir, MT, System Manajemen Basis Data, Pemodelan, Perancangan
Dan Terapannya. Bandung: Penerbit informatika. 2004

Kadir, Abdul. Konsep & tuntunan Praktis Basis Data. Yogyakarta: Penerbit Andi. 1998

Primashanti, Ida Ayu Y. Catatan Kuliah Analisis dan Perancangan Sistem

Wahana Komputer. Menjadi Seorang Programmer Komputer, Penerbit ANDI.

http://kuliah.dinus.ac.id/ika/prc4.html

http://developdottxt.wordpress.com/2008/04/03/erd-entitas-relationship-diagram/

http://id.wikipedia.org/wiki/Data_flow_diagram

http://translate.googleusercontent.com/translate_c?hl=id&langpair=en|id&u=http://en.wikipedia.org/wiki/Dat
a_Flow_Diagram&rurl=translate.google.co.id&usg=ALkJrhh9qK_XiWGk1bMlQqjrNQ9nm-oUDA

http://www.snapdrive.net/files/517548/SI_03_DFD.pdf

42