PEMODELAN DATA Di Susun Oleh : Linda Liana – 41813120100 Dosen Pengampu : Wahyu Hari Haji M.Kom FAKULTAS ILMU KOMPUTER PROGRAM STUDY SISTEM INFORMASI UNIVERSITAS MERCU BUANA JAKARTA 2015 A. PEMODELAN DATA (OBJECT DATA AND ENTITY RELATIONSHIP DIAGRAM) Pemodelan Data dalam rekayasa perangkat lunak adalah proses menciptakan sebuah model data dengan menerapkan model deskripsi formal data menggunakan teknik pemodelan data. Pemodelan data adalah metode yang digunakan untuk menentukan dan menganalisis persyaratan data yang diperlukan untuk mendukung proses bisnis suatu organisasi. Data yang dibutuhkan adalah dicatat sebagai data model konseptual dengan definisi data yang terkait. Realisasi penerapan model konseptual yang disebut model data logis. Untuk menerapkan satu model konseptual data mungkin membutuhkan beberapa model data logis. pemodelan data mendefinisikan elemen tidak hanya data, tapi struktur dan hubungan antara mereka teknik pemodelan data dan metodologi yang digunakan untuk model data dengan cara yang standar yang konsisten, dapat diprediksi untuk mengelolanya sebagai sumber daya. Pemodelan data merupakan sebuah tahapan dalam merancang sebuah sistem informasi. Pemodelan data berfokus pada data apa yang akan disimpan yang menggambarkan hubungan entara entiti set yang dibutuhkan oleh sebuah organisasi dalam pengelolaan data. Untuk dapat menjawab tentang pemodelan data sebagai berikut : 1. Bagaimana komposisi dari masing-masing obyek data dan atribut apa yang menggambarkab obyek tersebut? 2. Dimana obyek saat ini berada? 3. Bagaimana hubungan antara masing-masing obyek data dan obyek lainnya? 4. Bagaimana hubungan antara obyek dengan proses yang mentransformasikannya? Digunakan Entity Relational Diagram (ERD) 1) Obyek Data (Object Data) Obyek Data Adalah representasi dari hamper semua informasi gabungan yang harus dipahami oleh perangkat lunak. Atribut Menentukan property suatu obyek data dan mengambil salah satu dari tiga karakteristik yang berbeda. Menamai sebuah contoh dari obyek data Menggambarkan contoh Membujat referensi ke contoh yang lain pada tabel yang lain. Hubungan Obyek data disambungkan satu dengan lainnya dengan berbagai macam cara. 2) Entity Relational Diagram Dalam rekayasa perangkat lunak, sebuah Entity-Relationship Model (ERM) merupakan abstrak dan konseptual representasi data. Entity-Relationship adalah salah satu metode pemodelan basis data yang digunakan untuk menghasilkan skema konseptual untuk jenis/model data semantik sistem. Dimana sistem seringkali memiliki basis data relasional, dan ketentuannya bersifat top-down. Diagram untuk menggambarkan model EntitiyRelationship ini disebut Entitiy-Relationship diagram, ER diagram, atau ERD. B. DFD ( Data Flow Diagram) Pengertian Data Flow Diagram (DFD) menurut Jogiyanto Hartono adalah : “Diagram yang menggunakan notasi simbol untuk menggambarkan arus data system”. (Jogiyanto Hartono, 2005, 701). Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual maupun komputerisasi. DFD ini adalah 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 sering digunakan untuk menggambarkan suatu sistem yang telah ada atau sistem yang baru yang akan dikembangkan secara logika dan menjelaskan arus data dari mulai pemasukan sampai dengan keluaran data tingkatan diagram arus data mulai dari diagram konteks yang menjelaskan secara umum suatu system atau batasan system dari level 0 dikembangkan menjadi level 1 sampai system tergambarkan secara rinci. Gambaran ini tidak tergantung pada perangkat keras, perangkat lunak, struktur data atau organisasi file. 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. Komponen DFD 1. Komponen Terminator / Entitas Luar Terminator mewakili entitas eksternal yang berkomunikasi dengan sistem yang sedang dikembangkan. Biasanya terminator dikenal dengan nama entitas luar (external entity). Terdapat dua jenis terminator : Terminator Sumber (source) : merupakan terminator yang menjadi sumber. Terminator Tujuan (sink) : merupakan terminator yang menjadi tujuan data / informasi system. Terminator dapat berupa orang, sekelompok orang, organisasi, departemen di dalam organisasi, atau perusahaan yang sama tetapi diluar kendali sistem yang sedang dibuat modelnya. Terminator dapat juga berupa departemen, divisi atau sistem di luar sistem yang berkomunikasi dengan sistem yang sedang dikembangkan. Komponen terminator ini perlu diberi nama sesuai dengan dunia luar yang berkomunikasi dengan sistem yang sedang dibuat modelnya, dan biasanya menggunakan kata benda, misalnya Bagian Penjualan, Dosen, Mahasiswa. Ada tiga hal penting yang harus diingat tentang terminator : Terminator merupakan bagian/lingkungan luar sistem. Alur data yang menghubungkan terminator dengan berbagai proses sistem, menunjukkan hubungan sistem dengan dunia luar. Profesional Sistem Tidak berhak mengubah isi atau cara kerja organisasi atau prosedur yang berkaitan dengan terminator Hubungan yang ada antar terminator yang satu dengan yang lain tidak digambarkan pada DFD. 2. Komponen Proses Komponen proses menggambarkan bagian dari sistem yang mentransformasikan input menjadi output. Proses diberi nama untuk 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. 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 : - Proses mempunyai input tetapi tidak menghasilkan output. Kesalahan ini disebut dengan black hole (lubang hitam), karena data masuk kedalam proses dan lenyap tidak berbekas seperti dimasukkan kedalam 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). 3. Komponen 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. Suatu data store dihubungkan dengan alur data hanya pada komponen proses, tidak dengan komponen DFD lainnya. Alur data yang menghubungkan data store dengan suatu proses mempunyai pengertian sebagai berikut : Alur 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 (lihat gambar 2 (a)). Alur 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 (lihat gambar 2 (b)). Pada pengertian pertama jelaslah bahwa data store tidak berubah, jika suatu paket data/informasi berpindah dari data store ke suatu proses. Sebaliknya pada pengertian kedua data store berubah sebagai hasil alur yang memasuki data store. Dengan kata lain, proses alur data bertanggung jawab terhadap perubahan yang terjadi pada data store. 4. Komponen Data Flow / Alur Data Suatu data flow / alur data digambarkan dengan anak panah, yang menunjukkan arah menuju ke dan keluar dari suatu proses. Alur data ini digunakan untuk menerangkan perpindahan data atau paket data/informasi dari satu bagian sistem ke bagian lainnya. Selain menunjukkan arah, alur data pada model yang dibuat oleh profesional sistem dapat merepresentasikan bit, karakter, pesan, formulir, bilangan real, dan macam-macam informasi yang berkaitan dengan komputer. Alur data juga dapat merepresentasikan data/informasi yang tidak berkaitan dengan komputer. Alur data perlu diberi nama sesuai dengan data/informasi yang dimaksud, biasanya pemberian nama pada alur data dilakukan dengan menggunakan kata benda, contohnya Laporan Penjualan. Ada empat konsep yang perlu diperhatikan dalam penggambaran alur data, yaitu : 1) 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. 2) 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. 3) Konsep Alur Data Mengumpul (Converging Data Flow) Beberapa alur data yang berbeda sumber bergabung bersama-sama menuju ke tujuan yang sama. 4) 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 6 (a)). - Suatu alur data dihasilkan dari suatu data store dan/atau terminator dan menuju ke suatu proses (lihat gambar 6 (b)). - Suatu alur data dihasilkan dari suatu proses dan menuju ke suatu proses (lihat gambar 6 (c)). Syarat-Syarat Pembuatan DFD 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. Pemberian nama untuk tiap komponen DFD Pembrian nomor pada komponen proses Penggambaran DFD sesering mungkin agar enak dilihat Penghindaran penggambaran DFD yang rumit Pemastian DFD dibentuk konsisten secara logika Fungsi DFD Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual maupun komputerisasi. DFD ini adalah 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. Tujuan DFD 1) Memberikan indikasi mengenai bagaimana data ditransformasi pada saat data bergerak melalui system 2) Menggambarkan fungsi-fungsi(dan sub fungsi) yang mentransformasi aliran data Aturan-Aturan Dalam DFD Dalam pembuatan DFD, ada beberapa aturan yang harus diperhatikan agar dalam proses penggambarannya tidak terjadi kesalahan. Dalam hal ini saya hanya dapat menyebutkan delapan point saja, diantaranya yaitu : 1) Antar entity yang satu dengan yang lain tidak boleh berhubungan dengan anak panah secara langsung atau tidak boleh berhubungan atau berelasi. 2) Entity tidak boleh langsung berhubungan dengan penyimpanan data (data store). 3) Satu alir data boleh merepresentasikan beberapa struktur data/mengalirkan beberapa paket data 4) Untuk alasan kerapian (menghindari aliran data yang bersilangan), entitas eksternal atau data store boleh digambar beberapa kali dengan tanda khusus, misalnya diberi nomor. 5) Semua objek harus mempunyai nama. 6) Bentuk anak panah aliran data boleh bervariasi. 7) Aliran data harus selalu diawali dan diakhiri dengan proses atau entity. 8) Jumlah proses tidak lebih dari sembilan proses dalam sistem, jika melebihi maka sebaiknya dikelompokkan beberapa proses yang bekerja bersama-sama didalam suatu subsistem. C. ENTITY RELATIONSHIP DIAGRAM (ERD) ERD merupakan suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar relasi.ERD untuk memodelkan struktur data dan hubungan antar data, untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga komponen yang digunakan, yaitu : Entitas, Atribut dan Relasi a. Entitas Entiti merupakan objek yang mewakili sesuatu yang nyata dan dapat dibedakan dari sesuatu yang lain. Simbol dari entiti ini biasanya digambarkan dengan persegi panjang. b. Atribut Setiap entitas pasti mempunyai elemen yang disebut atribut yang berfungsi untuk mendes-kripsikan karakteristik dari entitas tersebut. Isi dari atribut mempunyai sesuatu yang dapat mengidentifikasikan isi elemen satu dengan yang lain. Gambar atribut diwakili oleh simbol elips. Atribut Key Atribut Key adalah satu atau gabungan dari beberapa atribut yang dapat membedakan semua baris data ( Row/Record ) dalam tabel secara unik. Dikatakan unik jika pada atribut yang dijadikan key tidak boleh ada baris data dengan nilai yang sama Contoh : Nomor pokok mahasiswa (NPM), NIM dan nomor pokok lainnya Atribut simple atribut yang bernilai atomic, tidak dapat dipecah/ dipilah lagi Contoh : Alamat, penerbit, tahun terbit, judul buku. Atribut Multivalue nilai dari suatu attribute yang mempunyai lebih dari satu (multivalue) nilai dari atrribute yang bersangkutan Contoh : dari sebuah buku, yaitu terdapat beberapa pengarang. Atribut Composite Atribut composite adalah suatu atribut yang terdiri dari beberapa atribut yang lebih kecil yang mempunyai arti tertentu yang masih bisah dipecah lagi atau mempunyai sub attribute. Contoh : dari entitas nama yaitu nama depan, nama tengah, dan nama belakang Atribut Derivatif Atribut yang tidak harus disimpan dalam database Ex. Total. atau atribut yang dihasilkan dari atribut lain atau dari suatu relationship. Atribut ini dilambangkan dengan bentuk oval yang bergaris putus-putus c. Hubungan (Relasi/Relationship) Hubungan antara sejumlah entitas yang berasal dari himpunan entitas yang berbeda dan direpresentasikan sebagai garis lurus yang menghubungkan dua entitas. Contoh : Mahasiswa mendaftar sebagai anggota perpustakaan (KAP), relasinya adalah mendaftar. Derajat relasi atau kardinalitas rasio Menjelaskan jumlah maksimum hubungan antara satu entitas dengan entitas lainnya One to One (1:1) Setiap anggota entitas A hanya boleh berhubungan dengan satu anggota entitas B, begitu pula sebaliknya. One to many (1:M / Many) Setiap anggota entitas A dapat berhubungan dengan lebih dari satu anggota entitas B tetapi tidak sebaliknya. Many to Many (M:M) Setiap entitas A dapat berhubungan dengan banyak entitas himpunan entitas B dan demikian pula sebaliknya Langkah-langkah pembuatan ERD: 1) Menentukan Entity Disini kita dituntut untuk menentukan dengan cermat sebuah entity yang ada dalam suatu proyek atau masalah. Entity berguna untuk menentukan peran, kejadian, lokasi, hal nyata dan konsep penggunaan untuk database 2) Menentukan Relasi Setelah kita berhasil membuat Entity, langkah selanjutnya adalah menentukan relasi antar entity. Relasi apa yang terdapat antara Entity A dan B, apakah entity A dan B memiliki relasi “one to one”, “one to many”, atau “many to many”. 3) Gambar ERD sementara Jika sudah mengetahui Entity beserta Relasinya, sekarang kita buat dulu gambar ERD sementara. Entity digambarkan dengan persegi, relasi digambarkan dengan garis. 4) Isi kardinalitas Kardinalitas menentukan jumlah kejadian satu entitas untuk sebuah kejadian pada entitas yang berhubungan. Contohnya antara Entitas Buku, Distributor dan Pengarang, kardinalitas yang ada berupa: Satu pengarang dapat menulis banyak buku Satu buku ditulis satu pengarang Banyak buku di distribusikan oleh satu distributor. Dari sini kita bisa mengetahui harus memberi relasi apa. One to one kah?, dsb. 5) Tentukan Primary Key (Kunci Utama) Menentukan Primary Key pada masing-masing entity. Primary Key adalah atribut pada entity yang bersifat unik. Jadi setiap entity hanya memiliki satu Primary Key saja. Contoh: Entity Buku memiliki Primary Key bernama kode buku. Kode Buku ini bersifat unik, karena masing-masing buku memiliki kode yang berbeda-beda. Tentukan pula Foreign Key (Kunci Tamu) pada masing-masing Entity. Foreign Key adalah Primary Key yang ada dalam Entity yang lain. Contoh pada Entity Pengarang misalnya terdapat atribut kode buku, yang mana, kode buku merupakan Primary Key dari Entity buku. 6) Gambar ERD berdasarkan Primary Key Menghilangkan relasi “many to many” dan memasukkan Primary dan Foreign Key pada masing-masing entitas. Relasi many to many antar entity perlu dihilangkan dengan cara menambah atribut baru antara 2 entity yang memiliki relasi many to many. 7) Menentukan Atribut Jika sudah melakukan step diatas, sekarang saatnya menentukan atribut pada masingmasing Entitas. Telitilah dalam menentukan atribut. 8) Pemetaan Atribut Apabila atribut telah ditentukan, sekarang pasang atribut dengan entitas yang sesuai. 9) Gambar ERD dengan Atribut Mengatur ERD seperti langkah 6 dengan menambahkan atribut dan relasi yang ditemukan. 10) Periksa Hasil Periksa lagi ERD. Apakah ERD sudah menggambarkan system yang akan dibangun? Jika belum, check kembali dari awal D. DATA DICTIONARY (KAMUS DATA) Kamus data atau systems data dictionary adalah katalog fakta tentang data dan kebutuhan kebutuhan informasi dari suatu sistem informasi. Dengan DD analis sistem dapat mendefinisikan data yang mengalir di sistem dengan lengkap. Pada tahap analisis sistem, DD digunakan sebagai alat komunikasi antara analis sitem dengan pemakai sistem tentang data yang mengalir ke sistem, yaitu tentang data yang masuk ke sistem dan tentang informasi yang dibutuhkan oleh pemakai sistem. Pada tahap perancangan sistem, DD digunakan untuk merancang input, merancang laporan-laporan dan database. DD dibuat berdasarkan arus data yang ada di DFD (Data Flow Diagram). Arus data di DFD sifatnya adalah global, hanya ditunjukkan nama arus datanya saja. Keterangan lebih lanjut tentang struktur dari suatu arus data di DFD secara lebih terinci dapat dilihat di DD. DD tidak menggunakan notasi grafik sebagaimana halnya DFD. DD berfungsi membantu pelaku sistem untuk mengerti aplikasi secara detil, dan mereorganisasi semua elemen data yang digunakan dalam sistem secara presisi sehingga pemakai dan penganalisa sistem punya dasar pengertian yang sama tentang masukan, keluaran, penyimpanan dan proses. DD mendefinisikan elemen data dengan fungsi sebagai berikut: a) Menjelaskan arti aliran data dan penyimpanan dalam DFD. b) Mendeskripsikan komposisi paket data yang bergerak melalui aliran, misalnya alamat diuraikan menjadi kota, kodepos, propinsi, dan negara. c) Mendeskripsikan komposisi penyimpanan data. d) Menspesifikasikan nilai dan satuan yang relevan bagi penyimpanan dan aliran. e) Mendeskripsikan hubungan detil antara penyimpanan yang akan menjadi titik perhatian dalam entity relationship diagram. Kamus data harus memuat hal-hal berikut, diantaraya: 1) Nama Arus Data Karena kamus data dibuat berdasarkan arus data yang mengalir di DAD, maka nama arus data juga harus dicatat di kamus data. 2) Alias Alias atau nama lain dari data dapt dituliskan bila nama lain ini ada. Alias perlu ditulis karena data yang sama mempuyai nama berbeda untuk orang atau departemen satu dengan lainnya. 3) Bentuk Data Bentuk dari data yang mengalir dapat berupa : dokumen dasar atau formulir, dokumen hasil cetakan computer, laporan tercetak, tampilan layar monitor, variable, parameter atau field 4) Arus Data Arus data menunjukkan darimana data mengalir dan kemana data akan menuju. Keterangan arus data ini perlu dicatat di kamus data supaya memudahkan mencari arus data ini di DAD. 5) Penjelasan Bagian penjelasan dapat diisi dengan keterangan tentang arus data tersebut. 6) Periode Periode ini menunjukkan kapan terjadinya arus data ini. Periode perlu dicatat di kamus data karena dapat digunakan untuk mengidentifikasikan kapan input data harus dimasukkan ke sistem, kapan di proses dan kapan laporan harus dihasilkan. 7) Volume Volume yang perlu dicatat dalam kamus data adalah tentang volume rata-rata dan volume puncak dari arus data. Volume ini digunakan untuk mengidentifikasikan besarnya simpanan luar yang akan digunakan, kapasitas dan jumlah dari alat input, alat pemroses, dan alat output. 8) Struktur Data Stuktur data menunjukkan arus data yang dicatat di kamus data terdiri dari item-item data apa saja. Selain hal tersebut diatas, kamus data juga mempunyai suatu bentuk untuk mempersingkat arti atau makna dari simbol yang dijelaskan, yang disebut dengan notasi tipe data dan Notasi atau Simbol yang digunakan dibagi menjadi dua macam yaitu : a) Notasi tipe data Notasi ini digunakan untuk membuat spesifikasi format input maupun output suatu data. Adapun bentuk notasi sebagai berikut: b) Notasi Struktur Data Notasi ini digunakan untuk membuat spesifikasi elemen data. Struktur dari data terdiri dari elemen - elemen data yang disebut dengan item data, sehingga secara prinsip struktur dari data ini dapat digambarkan dengan menyebutkan nama dari item itemya datanya. Juga masih diperlukan informasi lainnya misalnya informasi tentang aapakanitem data tersebut pasti ada atau hanya bersifat dapat ada dan dapat tidak ada. Contoh Kamus Data :