40953008-DFD-dan-ERD
September 29, 2017 | Author: Abd Rozaq | Category: N/A
Short Description
Download 40953008-DFD-dan-ERD...
Description
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 seharihari 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 penyusunan makalah ini. ini. Baik berupa moril maupun materil. 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 dengan segala kerendahan kerendahan hati bahwa bahwa Tulisan
ini masih jauh 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
KATA PENGANTAR Segala puji bagi Allah yang telah memberikan rahmat, taufik dan hidayahNya kepada kita semua sehingga mampu melaksanakan ibadah kepadaNya dan menyelesaikan tugas seharihari 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 penyusunan makalah ini. ini. Baik berupa moril maupun materil. 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 dengan segala kerendahan kerendahan hati bahwa bahwa Tulisan
ini masih jauh 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. 2. 3. 4.
External Entity (Entitas/terminator) ..................... ........................................... ........................................ .................. Proses ..................... ............................................ ............................................. ............................................ ............................................ ......................... ... Data Store ..................... ............................................ ............................................. ............................................ ........................................ .................. Data Flow ..................... ............................................ ............................................. ............................................ ........................................ ..................
6 7 9 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.................... ERD........................................... ............................................. ............................................ ........................................ ..................
27
D. Tahapan Pembuatan ERD .................... ........................................... ............................................. ........................................... .....................
27
E. Jenis-Jenis Kunci ..................... ............................................ ............................................. ............................................ .................................... .............. F. Derajat Relationship ................... ......................................... ............................................ ............................................. ................................. ..........
28 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 masingmasing 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 2
http://id.wikipedia.org/wiki/Data_flow_diagram 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 „Tu juan 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 prosesproses 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‟. MA HASISWA
MA HASISWA
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.
Jawaban 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 menye butkan 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
Apa yang digambarkan model tersebut Apa yang diwakili proses tersebut Apa yang diwakili penyimpanan data tersebut
Logika
Bagaimana bisnis tersebut beroperasi
Kegiatan-kegiatan bisinis Pengumpulan data yang berhubungan dengan bagaimana data tersebut disimpan
Jenis penyimpanan data
Menunjukkan penyimpanan data-penyimpanan data yang mewakili pengumpulan data permanen
Kontrol sistem
Menunjukkan kontrol-kontrol bisnis
a.
Fisik
Bagaimana sistem tersebut diimplementasikan atau bagaimana sistem yang ada beroperasi Program, modul-modul program dan prosedurprosedur manual Basis data dan file-file fisik, file-file manual File-file master, file-file transisi. Setiap proses yang beroperasi pada dua waktu yang berbeda harus dihubungkan dengan penyimpanan Menunjukkan kontrol-kontrol untuk memvalidasi data-data masukkan agar memperoleh suatu record (record yang menemukan status) untuk memastikan penyelesaian suatu proses yang berhasil dan untuk keamanan sistem.
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 prosesproses 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 hasilhasil 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 nomornomor 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.
4.
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.
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. 2. 3.
Identifikasi terlebih dahulu semua entitas luar yang terlibat di sistem. Identifikasi semua input dan output yang terlibat dengan entitas luar. 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. Masingmasing 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.
1.
2.
3.
4.
Kelebihan DFD membantu para analis sitem meringkas informasi tentang sistem, mengetahui hubungan antar sub-sub sistem, membantu perkembangan aplikasi secara efektif. DFD berfungsi sebagai alat komunikasi yang baik antara pemakai dan analis sistem. DFD dapat menggambarkan sejumlah batasan otomasi (teknik untuk membuat perangkat, proses, atau sistem agar berjalan secara otomatis) untuk pengembangan alternatif sistem fisik.
Kekurangan DFD tidak menunjukkan proses pengulangan (loop).
DFD tidak menunjukkan proses perhitungan.
DFD tidak memperlihatkan aliran kontrol. Lemah dalam konsep model untuk 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 :
– – 6
Obyek secara fisik : Rumah, Kendaraan, Peralatan Obyek secara konsep : Pekerjaan , Perusahaan, Rencana
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 Depa
Nama Belakang
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
Gelar
NIP
Nama
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. 2. 3.
4. 5.
Mengidentifikasi dan menetapkan seluruh himpunan entitas yang akan terlibat. Menentukan atribut-atribut key (kunci) dari masing-masing himpunan entitas. Mengidentifikasi dan menetapkan seluruh himpunan relasi diantara himpunan entitas-himpunan entitas yang ada beserta foreign-keynya (kunci asing/ kunci tamu). Menentukan derajad /kardinalitas relasi untuk setiap himpunan relasi. Melengkapi himpunan entitas dan himpunan relasi dengan atribut dekriptif (atribut yang bukan kunci)
Tahap kedua mempertimbangkan anomali-anomali dan juga memperhatikan aspekaspek 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
2.
ID_Cus
Name
NoOfPay
Amount
112233
Tim
890
9000
112231
Kate
891
8000
112241
Tyson
895
10000
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
KODE
MK
SKS
KDDosen
TEL 100 TEL 200 TEL 210
Fisika Isyarat T.Kendali
3 2 2
D-101 D-109 D-101
KD-Dosen
Nama_Dosen
D-100 D-101 D-109
Badu,S.T Ir.Thomas 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 lain.
o
entity
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 Dijalankan Di tugaskan ke Oleh
Bagian Pegawai Pengawas Proyek
Milik Menjalankan
Proyek
Bekerja Pada 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 Nama Bagian Nama Proyek Nama pegawai Nama pengawas Nomor Proyek Nomor Pegawai Nomor Pengawas
Entitas Bagian Proyek Pegawai Pengawas Proyek Pegawai 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, SUPERVISOR-ID, NOBAG)
KDPOS,TGLLAH,
BAGIAN
(NOBAG, NABAG, LOKASI, MANAGER)
PROYEK
(NOPRO, NAPRO, NOBAG)
LOKPR
(NOPRO, LOKAPR)
PEKERJAAN
(NOPEG, NOPRO, JAM)
TANGGUNGAN
(NOPEG, NAMA, JNKELT,HUBUNGAN)
UMUR,
41
View more...
Comments