Data Administrator Relasi Derajat Relasi

2.6 DBMS Sistem Manajemen Basis Data

2.6.1 Definisi

Database Management System DBMS adalah perangkat lunak untuk mendefinisikan, menciptakan, mengelola dan mengendalikan pengaksesan basis data. Bambang, 2004. Mempunyai fasilitas membuat, mengakses, memanipulasi dan memelihara database. Bertujuan untuk efisiensi dan kenyamanan dalam memperoleh menyimpan informasi dalam database. Berikut ini disajikan tabel beberapa contoh DBMS yang terkenal: Tabel 2.2 Tabel Contoh DBMS DBMS Perusahaan Access Microsoft Corporation DB2 IBM Informix IBM Ingress Computer Associate mySQL The MySQL Company Oracle Oracle Corporation Postgres SQL Postgres Sybase Sybase Inc. Visual dBase Borland Visual FoxPro FoxPro Corporation

2.6.2 Fungsi

• Data Definiton Harus mampu mengolah pendefinisian data. • Data Manipulation Harus dapat menangani permintaan user untuk pengaksesan data. • Data Security and Integrity Harus menjaga keamanan dan integritas yang telah didefinisikan oleh DBA Database Administrator. • Data Recovery and Concurrency Haruslah memiliki kemampuan untuk mengatasi kerusakan- kerusakan yang disebabkan oleh sistem, kerusakan disk dan lain sebagainya. • Data Dictionary Haruslah menyediakan data dictionary. • Performance Harus mampu menangani semua kerja dari setiap fungsi yang ada.

2.6.3 Komponen

Komponen utama DBMS dapat dibagi menjadi 4 macam: Abdul, 1999 1. Perangkat Keras Hardware 2. Perangkat Lunak Software 3. Data 4. Pengguna User

2.6.4 Model Data

Model data adalah kumpulan konsep yang terpadu untuk mendeskripsikan data, keterhubungan relationship antar data, semantik, dan batasan konsistensi data yang berguna untuk menyembunyikan rincian penyimpanan level rendah. Bambang, 2004 DBMS terutama diklasifikasikan berdasarkan model data yang digunakan, yaitu model data hirarki, jaringan, dan, relasional. Waljiyanto, 2003 • Model Hirarki hierarchical model Model Hirarki biasa disebut model pohon, karena menyerupai pohon yang dibalik. Pada model data hirarki ini hubungan antar entiti dinyatakan dalam: satu – banyak ”one to many” atau satu – satu ”one to one”. Contoh model hirarki dalam hal ini memperlihatkan hubungan dosen dan kelas yang diajar, serta mahasiswa yang mengikuti kelas masing-masing. Gambar 2.6 Contoh Model Hirarki Abdul, 1999 Matematika I Dosen Siti Nurbaya Pengantar Basis Data Pemrograman COBOL Rudi Asti Dina Dina Edi Dosen Ashadi Ita Edi • Model Jaringan network model Model ini menyerupai model hirarki, dengan perbedaan model ini bisa menyatakan hubungan antar entiti dalam: satu – satu ”one to one”, satu – banyak ”one to many”, maupun banyak – banyak ”many to many”. Contoh model jaringan yang didasarkan oleh model hirarki pada Gambar 2.6. • Gambar 2.7 Contoh Model Jaringan Abdul, 1999 • Model Relasional relational model Model Relasional merupakan model yang paling sederhana sehingga mudah digunakan dan dipahami oleh pengguna. Model ini menggunakan sekumpulan tabel berdimensi dua yang disebut relasi atau tabel, dengan masing-masing relasi tersusun atas baris dan atribut. Relasi dirancang sedemikian rupa sehingga dapat menghilangkan kemubaziran data dan menggunakan kunci tamu untuk berhubungan dengan relasi lain. DBMS yang bermodelkan relasional biasa disebut RDBMS Relational Database Management System. Berikut merupakan Dosen Siti Nurbaya Pengantar Basis Data Pemrograman COBOL Rudi Asti Dina Edi Dosen Ashadi Matematika I Ita bentuk relasional berdasarkan contoh model hirarki dan jaringan sebelumnya. Tabel 2.3 Contoh Model Relasional Abdul, 1999

2.6.5 RDBMS Relational Database Management System

Relational Database sebenarnya adalah salah satu konsep penyimpanan data, sebelum konsep database relasional muncul sebenarnya sudah ada dua model database yaitu Network Database dan Hierarchie Database. Dalam database relasional, data disimpan dalam bentuk relasi atau tabel dua dimensi, dan antar tabel satu dengan tabel lainnya terdapat hubungan atau relationship. Untuk membuat struktur tabel, mengisi data ke tabel, mengubah data jika diperlukan dan menghapus data dari tabel Nama_Dosen Kelas Mahasiswa Siti Nurbaya Pengantar Basis Data Rudi Siti Nurbaya Pengantar Basis Data Asti Siti Nurbaya Pengantar Basis Data Dina Siti Nurbaya Pemrograman COBOL Dina Siti Nurbaya Pemrograman COBOL Edi Ashadi Matematika I Ita Ashadi Matematika I Edi diperlukan software. Software yang digunakan membuat tabel, isi data, ubah data dan hapus data disebut Relational Database Management System RDBMS. Saat ini, Sistem Manajemen Basis Data Relasional RDBMS- Relational Database Management System yang berdasarkan model data relasional merupakan pendekatan yang paling dominan, yang pertama kali diperkenalkan E.F. Codd 1970 dalam makalah berjudul ”A relational model of data for large shared data banks”. Bambang, 2004. Beberapa istilah penting dalam model relasional adalah: Bambang, 2004 • Relasi Relation Relasi merupakan sebuah tabel dengan kolom-kolom dan baris-baris. Pada model relasional, relasi digunakan untuk menyimpan informasi mengenai objek-objek yang direpresentasikan dalam sebuah basis data. Contohnya mengenai informasi pegawai-pegawai yang bekerja di perusahaan X direpresentasikan pada relasi PEGAWAI yang mengandung informasi: nomor induk pegawai, nama, alamat, gaji dan kode divisi tempat pegawai bekerja. • Atribut Attribute Atribut merupakan kolom dari suatu relasi yang mempunyai nama. Atribut-atribut pada suatu relasi tidak harus tersusun secara khusus. Contohnya, pada relasi PEGAWAI mempunyai lima kolom untuk atribut-atribut NIP, Nama, Alamat, Gaji dan KodeDiv. • Tupel Tuple Tupel merupakan suatu baris dari suatu relasi. Pada relasi PEGAWAI, setiap tupel mempunyai 5 nilai, masing- masing untuk setiap atribut NIP, Nama, Alamat, Gaji dan KodeDiv. • Domain Domain Domain merupakan kumpulan nilai-nilai data yang mungkin untuk suatu atribut dan bersifat atomik. Contoh: domain dari atribut KodeDiv adalah {Div01, Div02, Div03, Div04}. • Derajat Degree of relation Derajat dari suatu relasi adalah banyaknya atribut pada suatu relasi. Relasi PEGAWAI yang mempunyai 5 atribut berarti mempunyai derajat lima, dimana setiap tupelnya mempunyai 5 nilai. • Kardinalitas Cardinality of relation Kardinalitas dari suatu relasi adalah banyaknya tupel pada suatu relasi. Kardinalitas dari relasi ini dapat berubah-ubah sesuai dengan perubahan yang terjadi pada relasi. Gambar 2.8 Istilah penting dalam model relasional

2.6.6 Arsitektur DBMS

DBMS memiliki arsitektur untuk melakukan abstraksi dari data sehingga dapat diperoleh independensi data-program. Pada tahun 1975, Badan Standarisasi Nasional Amerika ANSI- SPARC American National Standards Institute – Standards Planning and Requirements Committee menetapkan tiga level abstraksi dalam database, yaitu: 1. Level Eksternal external level Level Eksternal adalah level yang berhubungan langsung dengan pengguna database. Pada level ini pengguna user hanya bisa melihat struktur data sesuai dengan keperluannya sehingga setiap user bisa memiliki pandangan view yang berbeda dari user lainnya. 2. Level Konseptual conceptual level Level Konseptual adalah level dari para administrator database, pada level ini didefinisikan hubungan antar data secara logik, sehingga diperlukan struktur data secara lengkap. 3. Level Internal internal level atau Level Fisik physical level Level Internal adalah level dimana data disimpan secara fisik dalam bentuk kode, teks, angka, bit. Pada level ini didefinisikan alokasi ruang penyimpanan data, deskripsi data dalam penyimpanan, kompresi data agar lebih hemat, dan enkripsi data agar lebih aman. Gambar 2.9 Arsitektur Sistem Manajemen Basis Data

2.6.7 Bahasa DBMS

Bahasa Basis Data database language adalah bahasa pada sistem basis data untuk melakukan pendefinisian dan manipulasi basis data. Bambang, 2004 Implementasi bahasa DBMS bervariasi sesuai dengan variasi perusahaan yang merancangnya, namun pada prinsipnya bahasa ini bisa dikategorikan ke dalam tiga komponen bahasa, yaitu:

1. DDL

Data Definition Language DDL adalah komponen bahasa DBMS yang digunakan untuk mendefinisikan struktur data. Komponen bahasa ini banyak digunakan oleh para administrator basis data pada saat merencanakan atau membangun file-file basis data. Contoh: Membuat table bernama ms_karyawan dengan perintah : CREATE TABLE `ms_karyawan` `kode_cabang` varchar10 default NULL, `kode_karyawan` varchar10 NOT NULL, `nama_depan` varchar8 default NULL, `nama_belakang` varchar9 default NULL, `jenis_kelamin` varchar1 default NULL, PRIMARY KEY `kode_karyawan`

2. DML

Data Manipulation Language DML adalah komponen bahasa DBMS yang digunakan untuk memanipulasi data. Komponen ini diperlukan oleh para pengguna untuk memanipulasi data. Contoh: Memasukkan data ke dalam tabel ms_karyawan : INSERT INTO `ms_karyawan` `kode_cabang`, `kode_karyawan`, `nama_depan`, `nama_belakang`, `jenis_kelamin` VALUES cab-001,kar-001,Feris,Thia,Laki-laki;

3. DCML

Device Control Media Language DCML adalah komponen bahasa DBMS yang digunakan untuk mengatur perekaman atau penyimpanan data secara fisik. Komponen bahasa DCML digunakan oleh operator-operator sistem basis data didalam mengatur file-file data secara fisik. Perintah-perintah yang termuat dalam komponen ini, antara lain perintah perintah: merekam Write Record, Create Table, menghapus Drop, Delete Table.

2.6.8 Keunggulan dan Kelemahan

Sistem Manajemen Basis Data DBMS memiliki berbagai keunggulan dibandingkan dengan pengelolaan data tanpa DBMS, walaupun tidak terlepas dari beberapa kelemahan. Keunggulan DBMS antara lain: Bambang, 2004 - Pengendalian terhadap redundansi data - Konsistensi data - Peningkatan integritas data - Peningkatan produktivitas - Peningkatan konkurensi - Peningkatan layanan backup dan pemulihan data Kelemahan DBMS antara lain: Bambang, 2004 - Kompleksitas yang tinggi - Ukuran perangkat lunak yang besar - Ongkos konversi dari sistem lama ke sistem baru - Kinerja yang rendah bila tidak mampu menggunakan dengan bagus - Dampak yang tinggi bila terdapat kegagalan

2.7 Flowchart

2.7.1 Pengertian

Bagan alir flowchart adalah bagan chart yang menunjukkan alir flow di dalam program atau prosedur sistem secara logika. Digunakan terutama untuk alat bantu komunikasi dan untuk dokumentasi Jogiyanto, 2005

2.7.2 Jenis-Jenis Flowchart

Ada lima macam bagan alir flowchart, yaitu sebagai berikut: Jogiyanto, 2005 1 Bagan alir sistem system flowchart Bagan alir sistem dapat didefinisikan sebagai bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem. Bagan ini menjelaskan urut-urutan dari prosedur-prosedur yang ada di dalam sistem. Bagan alir sistem menunjukkan apa yang dikerjakan di sistem. 2 Bagan alir dokumen document flowchart Bagan alir dokumen atau disebut juga bagan alir formulir form flowchart atau paperwork flowchart merupakan bagan alir yang menunjukkan arus dari laporan dan formulir termasuk tembusan-tembusannya. Bagan alir dokumen ini menggunakan simbol-simbol yang sama dengan bagan alir sistem. 3 Bagan alir skematik schematic flowchart Bagan alir skematik merupakan bagan alir yang mirip dengan bagan alir sistem, yaitu menggambarkan prosedur di dalam sistem. Perbedaannya adalah bagan alir skematik selain menggunakan simbol-simbol bagan alir sistem juga menggunakan gambar-gambar komputer dan peralatan lainnya yang digunakan. Fungsi penggunaan gambar tersebut adalah untuk memudahkan komunikasi kepada orang yang kurang mengerti dengan simbol-simbol bagan alir. 4 Bagan alir program program flowchart Bagan alir program merupakan bagan yang menjelaskan secara rinci langkah-langkah dari proses program. Bagan alir program dapat terdiri dari dua macam, yaitu: a Bagan alir logika program program logic flowchart yang digunakan untuk menggambarkan setiap langkah di dalam program komputer secara logika. Bagan alir ini disiapkan oleh analis sistem. b Bagan alir komputer terinci detailed computer program flowchart yang digunakan untuk menggambarkan intruksi- intruksi program komputer secara terinci. Bagan alir ini disiapkan oleh pemrogram. 5 Bagan alir proses process flowchart Bagan alir proses merupakan bagan alir yang banyak digunakan di teknik industri. Bagan alir ini juga berguna bagi analis sistem untuk menggambarkan proses dalam suatu prosedur. Gambar simbol-simbol bagan alir proses dapat dilihat pada halaman daftar simbol.

2.8 DFD

Data Flow Diagram 2.8.1 Pengertian DFD Data Flow Diagram atau diagram aliran data adalah model proses yang digunakan untuk menggambarkan aliran data melalui sebuah sistem dan tugas atau pengolahan yang dilakukan oleh sistem Whitten, 2004. DFD sering disebut process modelling tools. DFD merupakan alat bantu dalam menggambarkan atau menjelaskan sistem yang sedang berjalan logis.

2.8.2 Levelisasi DFD

Model ini menggambarkan sistem sebagai jaringan kerja antar fungsi yang berhubungan satu dengan yang lain dengan aliran dan penyimpanan data. Bisa terjadi penurunan level dimana dalam penurunan level yang lebih rendah harus bisa merepresentasikan proses tersebut ke dalam spesifikasi proses yang jelas. Pembagian level dalam DFD: • Diagram Konteks Context Diagram Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level tertinggi DFD yang menggambarkan seluruh input ke sistem atau output dari sistem. Ia akan memberi gambaran tentang keseluruhan sistem. Sistem dibatasi oleh boundary dapat digambarkan dengan garis putus. Dalam diagram konteks hanya ada satu proses. Tidak ada store dalam diagram konteks. Ladjamudin, 2005. • Diagram Nol Diagram Zero Diagram Nol Diagram Zero adalah diagram yang menggambarkan proses dari DFD. Diagram zero memberikan pandangan secara menyeluruh mengenai sistem yang ditangani, menunjukkan tentang fungsi-fungsi utama atau proses yang ada, aliran data, dan eksternal entitiy. Pada level ini sudah dimungkinkan adanyadigambarkannya data store yang digunakan. Untuk proses yang tidak rinci lagi pada level selanjutnya, simbol ’’ atau ’P’ functional primitive dapat ditambahkan pada akhir nomor proses. Keseimbangan input dan output balancing antara diagram zero dengan diagram konteks harus terpelihara. Ladjamudin, 2005. • Diagram Rinci Diagram rinci adalah diagram yang menguraikan proses apa yang ada dalam diagram zero atau diagram level di atasnya. Ladjamudin, 2005. Berikut gambar Tabel Penomoran Level pada DFD: Ladjamudin, 2005 Tabel 2.3 Tabel Penomoran Level pada DFD Nama Level Nama Diagram Nomor Proses Diagram Konteks 1 Diagram 0 Zero 1.0, 2.0, 3.0, ….. 2 Diagram 1.0 1.1, 1.2, 1.3, ….. 2 Diagram 2.0 2.1, 2.2, 2.3, ….. 2 Diagram 3.0 3.1, 3.2, 3.3, ….. 3 Diagram 1.1 1.1.1, 1.1.2, 1.1.3, ….. 3 Diagram 1.2 1.2.1, 1.2.2, 1.2.3, ….. 3 Diagram 1.3 1.3.1, 1.3.2, 1.3.3, ….. Dst 2.8.3 Elemen Dasar DFD Elemen dasar dari DFD dapat terdiri dari sebagai berikut: Ladjamudin, 2005 a. Kesatuan luar External Entity Sesuatu yang berada di luar sistem, tetapi ia memberikan data ke dalam sistem atau memberikan data dari sistem, disimbolkan dengan suatu kotak notasi. External entity tidak termasuk bagian dari sistem. Bila sistem informasi dirancang untuk satu bagian departemen maka bagian lain yang masih terkait menjadi external entity. b. Arus data Data Flow Arus data merupakan tempat mengalirnya informasi dan digambarkan dengan garis yang menghubungkan komponen dari sistem. Arus data ditunjukkan dengan arah panah dan garis diberi nama atas arus data yang mengalir. Arus data ini mengalir di antara proses, data store, dan menunjukkan arus data dari data yang berupa masukan untuk sistem atau hasil proses sistem. c. Proses Process Proses merupakan apa yang dikerjakan oleh sistem. Proses dapat mengolah data atau aliran data masuk menjadi aliran data keluar. Proses berfungsi mentransformasikan satu atau beberapa data masukan menjadi satu atau beberapa data keluaran sesuai dengan spesifikasi yang diinginkan. Setiap proses memiliki satu atau beberapa masukan serta menghasilkan satu atau beberapa data keluaran. d. Simpanan data Data Store Simpanan data merupakan tempat penyimpanan data pengikat data yang ada dalam sistem. Data store dapat disimbolkan dengan sepasang dua garis sejajar atau dua garis dengan salah satu sisi samping terbuka. Proses dapat mengambil data dari atau memberikan data ke database. Gambar simbol-simbol elemen DFD dapat dilihat pada halaman daftar simbol.

2.9 ERM

Entity Relationship Model 2.9.1 Pengertian Model Entity-Relationship ER mula-mula disulkan oleh Peter pada tahun 1976 sebagai cara untuk mempersatukan pandangan basis data jaringan dan relasional. Janner, 2007 Menurut Bambang, Model ER Entity Relationship Model adalah model data konseptual tingkat tinggi untuk perancangan basis data. Bambang, 2004 Secara umum dapat diartikan sebagai suatu penyajian data dengan menggunakan Entity dan Relationship. Biasanya digambarkan dengan diagram yang disebut ERD Entity Relationship Diagram.

2.9.2 ERD Entity Relationship Diagram

Diagram Hubungan Entitas atau Entity Relationship Diagram adalah sebuah model data yang menggunakan beberapa notasi untuk menggambarkan data dalam konteks entitas dan hubungan yang dideskripsikan oleh data tersebut. Whitten, 2004 Entity Relationship Diagram ERD mengilustrasikan struktur logis dari basis data. Janner, 2007 ERD digunakan untuk mengkonstruksikan model data konseptual, memodelkan struktur data dan hubungan antar data dan mengimplementasikan basis data secara logika maupun secara fisik dengan DBMS Database Management System. Dengan ERD ini kita dapat menguji model dengan mengabaikan proses yang harus dilakukan. ERD dapat membantu dalam menjawab persoalan tentang data yang diperlukan dan bagaimana data tersebut saling berhubungan.

2.9.3 Komponen Penyusun ERD a.

Entitas Entity Entitas adalah objek data prinsip tentang informasi yang dikumpulkan. Janner, 2007. Bisa diartikan sebagai suatu objek yang dapat didefinisikan dalam lingkungan pemakai, sesuatu yang penting bagi pemakai dalam konteks sistem yang akan dibuat. Pada ERD, Entitas digambarkan dengan sebuah bentuk persegi panjang. Contoh: - Individu: pegawai, pelanggan, mahasiswa, distributor - Tempat: ruang, bangunan, kantor, lapangan, kampus - Obyek: buku, motor, paket software, produk

b. Relasi

Relationship Relasi adalah asosiasi diantara dua entitas atau lebih. Bambang, 2004. Pada penggambaran ERD, relasi adalah perekat yang menghubungkan suatu entitas dengan entitas lainnya. Relasi merupakan hubungan yang berarti antara suatu entitas dengan entitas lainnya. Relasi diberi nama dengan kata kerja dasar, sehingga memudahkan untuk melakukan pembacaan relasinya bisa dengan kalimat aktif atau kalimat pasif. Pada ERD, Relasi digambarkan dengan sebuah bentuk belah ketupat. Contoh: - Mahasiswa mengambil Mata Kuliah - Orang mengendarai Mobil

c. Derajat Relasi

Relationship Degree Relationship degree atau derajat relasi adalah jumlah entitas yang berpartisipasi dalam satu relasi. Derajat relasi yang sering dipakai di dalam ERD: 1 Unary Relationship Unary relationship adalah model relasi yang terjadi di antara entity yang berasal dari entity set yang sama. Sering juga disebut sebagai recursive relationship atau reflective relationship. 2 Binary Relationship Binary relationship adalah model relasi antara instansi- instansi istances dari suatu tipe entitas dua entity yang berasal dari entity yang sama. Relationship ini paling umum digunakan dalam pembuatan model data. 3 Ternary Relationship Ternary relationship merupakan relationship antara instansi- instansi dari tiga tipe entitas secara sepihak. Masing-masing entitas mungkin berpartisipasi satu atau banyak dalam suatu relationship ternary. Perlu dicatat bahwa relationship ternary tidak sama dengan tiga relationship binary.

d. Atribut

Attribute Atribut adalah ciri atau karakteristik dari tipe entitas maupun tipe relasi yang dipentingkan dalam satu sistemorganisasi. Bambang, 2004 Ada dua jenis atribut: 1 Identifier key, digunakan untuk menentukan suatu entitas secara unik primary key. 2 Descriptor nonkey attribute digunakan untuk men- spesifikasikan karakteristik dari suatu entitas yang tidak unik. Pada umumnya atribut merupakan karakteristik dari entitas atau relasi, yang menyediakan penjelasan detail tentang entitas atau relasi tersebut. Contoh: - Atribut Pelanggan - No KTPSIM - Nama - Alamat

e. Kardinalitas

Cardinality Kardinalitas suatu hubungan menyatakan sejumlah kejadian terkait untuk masing-masing dua entitas. Janner, 2007 Menurut Jeffrey L. Whitten, Kardinalitas mendefinisikan jumlah kemunculan baik minimum maupun maksimum satu entitas yang dapat dihubungkan dengan kemunculan tunggal entitas lain. Jenis Derajat Kardinalitas: - One to One 1 : 1 Hubungan satu-ke-satu 1:1 terjadi jika sebanyak satu kejadian dari suatu entitas A dihubungkan dengan satu kejadian entitas B. 1 1 Gambar 2.10 Hubungan One to One Contoh: masing-masing karyawan memiliki kendaraannya masing-masing. PEGAWAI MILIK KENDARAAN - One to Many Many to One 1 : N N : 1 Tingkat hubungan satu-ke-banyak 1:N adalah sama dengan banyak-ke-satu N:1. Tergantung dari arah mana hubungan tersebut dilihat. Untuk satu kejadian pada entitas A dapat mempunyai banyak hubungan dengan kejadian pada entitas B. Sebaliknya satu kejadian pada entitas B hanya dapat mempunyai satu hubungan dengan satu kejadian pada entitas A. Contoh One to Many: 1 N Gambar 2.11 Hubungan One to Many 1 Departemen mungkin mempekerjakan 1 atau lebih pegawai 1 Pegawai hanya bekerja pada sebuah Departemen Contoh Many to One: N 1 Gambar 2.12 Hubungan Many to One Banyak Produk yang mungkin dimiliki oleh 1 Vendor - Many to Many M : N Hubungan banyak-ke-banyak M:N mempunyai arti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, dan demikian juga sebaliknya, dimana setiap entitas pada himpunan entitas B berhubungan banyak entitas pada himpunan entitas A. Departemen Memiliki Pegawai Produk Dimiliki Vendor