BAB 2 LANDASAN TEORI
2.1.
Teori Umum 2.1.1. Pengertian Basis data Berdasarkan pendapat Connoly & Begg (2010: 65) basis data dapat diartikan menjadi satu tempat besar untuk penyimpanan data yang dapat digunakan secara bersamaan oleh banyak departemen dan pengguna. Bukan sebagai file yang tidak berhubungan dan redundan, melainkan seluruh data terintegrasi dengan jumlah minimum duplikasi. Basis data tidak lagi dimiliki oleh satu departemen, melainkan menjadi sumber daya perusahaan yang terbagi. Pendekatan basis data memisahkan struktur data dari program aplikasi serta menyimpan datanya pada basis data. 2.1.2. Database Management System (DBMS) 2.1.2.1.
Pengertian DBMS Berdasarkan pendapat Connoly & Begg (2010: 66) Database Management System (DBMS) adalah sistem perangkat lunak
yang
memungkinkan
pengguna
untuk
mendefinisi,
menciptakan, memelihara, dan mengendalikan akses ke basis data. Dapat disimpulkan bahwa DBMS merupakan sebuah software yang digunakan untuk menciptakan, memelihara, memasukan,
memanipulasi,
mengubah,
menghapus
serta
memudahkan pengguna untuk memperoleh data yang dibutuhkan. 7
8 2.1.2.2.
Sejarah DBMS Menurut Connolly & Begg (2010: 74-75) pada pertengahan tahun 1960, salah satu pengembangan penting adalah munculnya IDS (Integrated Data Store) dari General Electric. Pekerjaan ini dikepalai oleh satu pionir pengembangan sistem basis data yaitu Charles Bachmann. Pengembangan ini menuju kepada tipe sistem basis data yang baru dikenal sebagai network DBMS dimana memiliki efek mendalam terhadap sistem informasi pada generasi saat itu.
Saat ini terdapat ratusan DBMS relational untuk
mainframe maupun PC, meskipun banyak definisi dari model relasi. Contoh lain DBMS relational adalah MySQL dari MySQL AB, Ingres dari korporasi Ingres, SQL Server dari Microsoft, dan Informix dari IBM. 2.1.2.3.
Fungsi DBMS Menurut Connolly & Begg (2010: 100-104) fungsi-fungsi DBMS adalah: 1. Data Storage, Retrieval and Update Suatu DBMS harus memiliki kemampuan untuk melakukan penyimpanan, penelusuran dan juga mengubah data-data yang ada. 2. A User-accessible catalog Sebuah DBMS harus dapat memiliki sebuah katalog untuk mendeskripsikan data yang disimpan dan juga dapat diakses oleh pengguna.
9 3. Transaction Support DBMS harus menyediakan suatu mekanisme yang akan menjamin bahwa semua kegiatan pengubahan data sesuai dengan transaksi yang dilakukan. 4. Concurrency control services DBMS harus menyediakan mekanisme yang menjamin bahwa basis data diubah dengan benar ketika lebih dari satu pemakai mengubah basis data secara bersamaan. 5. Recovery services DBMS harus menyediakan mekanisme untuk memperbaiki basis data yang dalam suatu kesempatan rusak karena suatu hal. 6. Authorization services DBMS harus menyediakan mekanisme untuk menjamin bahwa hanya pengguna yang mempunyai hak akses yang dapat mengakses basis data. 7. Support for data communication DBMS harus mampu berintegrasi dengan aplikasi lain untuk saling memiliki komunikasi antar data. 8. Integrity services DBMS harus menyediakan cara untuk menjamin bahwa data dalam basis data dan perubahan pada data mengikuti aturan yang telah ditetapkan sebelumnya. 9. Services to promote data independence
10 DBMS harus mencakup fasilitas yang mendukung independensi program dari struktur aktual basis data. 10. Utility services DBMS harus menyediakan satu set fasilitas pelayanan seperti organisasi index, monitoring, atau garbage collection. 2.1.3. Data Definition Language (DDL) Menurut Connolly & Begg (2010: 92) Data Definition Language (DDL) dapat diartikan sebuah bahasa yang memperbolehkan admin basis data atau pengguna untuk menggambarkan dan menamakan entitasentitas, atribut-atribut, dan hubungan yang dibutuhkan oleh aplikasi, bersamaan dengan setiap integritas terkait dan batasan keamanan. DDL juga dipakai untuk mendefinisikan sub-skema. Sub-skema adalah pandangan (view) bagi pengguna terhadap basis data. Sub-skema merupakan himpunan bagian dari skema. Dengan kata lain, sub-skema bisa mencangkup sebagian atau seluruh bagian skema. DDL juga digunakan untuk menciptakan, mengubah, dan menghapus basis data. 2.1.4. Data Manipulation Language (DML) Menurut Connolly & Begg (2010: 93) Data Manipulation Languange (DML) dapat diartikan sebuah bahasa yang memperbolehkan pengguna untuk memberi tahu sistem tentang data yang dibutuhkan dan bagaimana cara untuk mengambil data secara tepat. Pada dasarnya DML dibagi menjadi dua: 1. Prosedural, yang menuntut pengguna menentukan data apa saja yang dibutuhkan dan bagaimana cara mendapatkannya.
11 2. Nonprosedural, yang menuntut pengguna menentukan data apa saja yang diperlukan, tetapi tidak menyebutkan cara mendapatkannya. DML nonprosedural ini menawarkan kemudahan bagi pengguna dalam mempelajari dan juga dalam menggunakannya daripada DML prosedural. Ada dua cara untuk mengakses data pada basis data. Pertama, dengan mengetik perintah-perintah yang ditujukan kepada DBMS untuk memanipulasi suatu rekaman atau suatu data. Kedua, melalui program aplikasi yang menerbitkan instruksi-instruksi internal ke DBMS untuk mengambil data dan memberikan hasil ke program.
12
2.1.5. Siklus Hidup Sistem Basis Data
Gambar 2.1 Siklus Hidup Sistem Basis Data Sumber (Connoly & Begg, 2010: 314)
13 2.1.5.1.
Database Planning Menurut Connolly & Begg (2010: 315) database planning mencakup aktivitas-aktivitas pengaturan yang mengizinkan setiap tahap dari pengembangan sistem basis data untuk bisa direalisasikan seefisien dan seefektif mungkin. Hal yang dilakukan pada tahap ini adalah: 1. Identifikasi
rencana
dan
tujuan
perusahaan
dengan
menentukan sistem informasi yang diperlukan. 2. Evaluasi sistem informasi yang sekarang digunakan untuk menentukan kelemahan dan kekuatannya. 3. Penilaian tetang peluang IT yang mungkin menghasilkan keuntungan yang kompetitif. Metodologi untuk mengatasi tiga hal tersebut di atas, yaitu: 1. Database Planning – Mission Statement Mission statement untuk proyek basis data mendefinisikan tujuan utama dari aplikasi basis data. Ketika mission statement telah didefinisikan, maka mission objectives didefinisikan. 2. Database Planning - Mission Objectives Setiap objective (tujuan) harus mengidentifikasikan tugas khusus yang didukung oleh basis data. Mission objectives dapat juga disertai dengan beberapa informasi tambahan yang menspesifikasikan pekerjaan yang harus diselesaikan baik sumber daya yang digunakan atau biaya untuk membayar
14 kesemuanya itu. Perencanaan basis data juga harus meliputi pengembangan standar pengumpulan
data, bagaimana penetapan
dokumentasi
diperlukan,
yang
bagaimana
format,
desain
dan
implementasi diproses. 2.1.5.2.
System Definition Menurut Connolly & Begg (2010: 316) System definition menjelaskan ruang lingkup dan batasan dari sistem basis data termasuk tampilan pengguna, pengguna, dan area aplikasi. Pengguna aplikasi basis data didefinisikan satu atau lebih user view. Identifikasi user view membantu memastikan bahwa tidak ada pengguna utama dari suatu basis data yang terlupa ketika pembuatan aplikasi baru yang dibutuhkan. User views juga membantu dalam pengembangan aplikasi basis data yang rumit atau kompleks memungkinkan permintaan-permintaan dipecah ke dalam bagian-bagian yang lebih sederhana.
2.1.5.3.
Requirement Collection and Analysis Menurut Connolly & Begg (2010: 316-318) requirement collection and analysis mencakup pengumpulan dan analisis dari kebutuhan-kebutuhan untuk sistem basis data yang baru. Pada bagian ini dilakukan pengumpulan dan analisa informasi. Untuk pengambilan informasi, dapat digunakan teknik yang disebut Fact Finding Technique. Terdapat lima teknik fact finding yang umum digunakan, yaitu:
15 1. Mengevaluasi dokumen 2. Wawancara 3. Mengobservasi jalannya kegiatan kerja pada perusahaan 4. Penelitian 5. Kuisioner 2.1.5.4.
Database Design Menurut Connolly & Begg (2010: 320) Database design merupakan proses membuat desain untuk sebuah sistem basis data yang mendukung kegiatan operasional suatu perusahaan. Database design terdiri dari 3 yaitu desain konseptual, desain logikal, dan desain fisikal dari basis data.
2.1.5.4.1.
Perancangan Konseptual Basis data Menurut Connolly & Begg (2010: 322) perancangan konseptual merupakan proses konstruksi suatu informasi yang digunakan dalam sebuah organisasi. Fase
perancangan
konseptual
bermula
dari
pembuatan data model konseptual dari organisasi, yang sepenuhnya bebas mengimplementasikan rincian-rincian seperti mengenal sasaran dari manajemen sistem basis data
(DBMS),
program-program
aplikasi,
bahasa
pemograman, platform perangkat keras, persoalan kinerja, atau pertimbangan fisik lainnya. 2.1.5.4.2.
Perancangan Logikal Basis data Menurut Connolly & Begg (2010: 323) perancangan
16 basis data logikal adalah proses konstruksi suatu informasi yang digunakan dalam sebuah perusahaan berdasarkan pada sebuah model data yang spesifik, tetapi bebas dari fakta-fakta DBMS dan pertimbangan fisik lainnya. Pada proses pemodelan basis data logikal, model diperiksa
berdasarkan
kebutuhan
pengguna.
Proses
normalisasi menjadi dasar dari model basis data logikal. Normalisasi
menjadi
jaminan
bahwa
model
tidak
menampilkan redudansi data yang dapat mengakibatkan update-anomaly. 2.1.5.4.3.
Perancangan Fisikal Basis data Menurut Connolly & Begg (2010: 324) perancangan basis data secara fisik yang merupakan proses pembuatan deskripsi dari implementasi basis data pada media penyimpanan sekunder dan fase ini mendeskripsikan dasar relasi, berkas organisasi dan indeks untuk mencapai pengaksesan data yang efisien dan beberapa batasan hubungan yang utuh dan tingkatan keamanan. Fase
perancangan
memperbolehkan
basis
perancangan
data
secara
membuat
fisik
keputusan-
keputusan berdasarkan pada bagaimana basis data diimplementasikan. Ada timbal balik antar perancangan logikal dan fisikal karena keputusan-keputusan yang diambil selama perancangan fisikal mengembangkan
17 kinerja yang bisa mempengaruhi model data logikal. Tujuan utama dari perancangan basis data, yaitu: 1. Merepresentasikan data dan relationship antara data yang dibutuhkan oleh seluruh area aplikasi utama dan user group. 2. Menyediakan model data yang mendukung segala transaksi yang diperlukan pada data. 3. Menspesifikasi perancangan minimal yang secara tepat disusun untuk memenuhi kebutuhan kinerja yang ditetapkan pada sistem (misalnya: waktu respon) 2.1.5.5.
DBMS Selection Menurut Connolly & Begg (2010: 316) DBMS selection merupakan pememilihan DBMS yang sesuai dengan sistem basis data yang dibutuhkan. Langkah-langkah utama dalam pemilihan DBMS antara lain: 1. Menggambarkan tujuan sistem basis data berdasarkan kebutuhan. 2. Membuat perbandingan mengenai dua atau tiga produk DBMS. 3. Mengevaluasi produk-produk DBMS tersebut. 4. Merekomendasikan pemilihan DBMS dan membuat laporan hasil dari evaluasi produk DBMS tersebut.
2.1.5.6.
Application Design Menurut Connolly & Begg (2010: 329-333) application
18 design mencakup desain antarmuka pengguna dan program aplikasi yang digunakan dan diproses basis data. Perancangan basis data dan aplikasi merupakan aktivitas pararel yang meliputi dua aktivitas penting, yaitu: 1. Transaction Design Transaksi adalah satu aksi atau serangkaian aksi yang dilakukan oleh user tunggal atau program aplikasi, yang mengakses atau merubah isi dari basis data. Kegunaan dari desain transaksi adalah untuk menetapkan dan keterangan karakteristik high-level dari suatu transaksi yang dibutuhkan pada basis data, diantaranya: a. Data yang digunakan oleh transaksi. b. Karakteristik fungsional dari suatu transaksi. c. Output transaksi. d. Keuntungannya bagi user. e. Tingkat kegunaan yang diharapkan. Terdapat tiga tipe transaksi, yaitu: a. Retrieval transaction Digunakan untuk pemanggilan (retrieve) data untuk ditampilkan di layar atau menghasilkan suatu laporan. b. Update transaction Digunakan untuk menambah record baru, menghapus record lama, atau memodifikasi record yang telah ada di dalam basis data.
19 c. Mixed transaction Meliputi pemanggilan dan perubahan data secara bersamaan pada satu transaksi. 2. User Interface Design Beberapa panduan dalam pembuatan antar muka pengguna, yaitu: a.
Meaningful title, diusahakan pemberian nama suatu form cukup jelas menerangkan kegunaan dari suatu form atau report.
b.
Comprehensible instructions, penggunaan terminologi yang familiar untuk menyampaikan instruksi ke user dan jika
informasi
tambahan
dibutuhkan,
maka
harus
disediakan helpscreen. c.
Logical grouping and sequencing of fields, field yang saling berhubungan ditempatkan pada form atau report yang sama. Urutan field harus logis dan konsisten.
d.
Visually applealing layout of the form/report, tampilkan form atau report harus menarik dan sesuai dengan hardcopy agar konsisten.
e.
Familiar field labels, penggunaan label yang familiar.
f.
Consistent terminology and abbreviation, terminology dan singkatan yang digunakan harus konsisten.
g.
Consistent use of color
h.
Visiblespace and boundaries for data-entity fields, jumlah tempat yang disediakan untuk data-entry harus diketahui
20 oleh pengguna. i.
Convinient
CursorMovement,
dapat
dengan
mudah
menjalankan operasi yang diinginkan dengan menggerakan cursor pada form atau report. j.
Error correction for individual characters and entire fields, pengguna dapat dengan mudah menjalankan operasi yang diinginkan dan melakukan perubahan terhadap nilai field.
k.
Error messages for unacceptable values.
l.
Optional fields marked clearly.
m.
Explanatory
message
for
fields,
ketika
pengguna
meletakan cursor pada suatu field, maka keterangan mengenai field tersebut harus dapat dilihat. n.
Completion signal, indikator yang menjelaskan bahwa suatu proses telah selesai dilaksanakan
2.1.5.7.
Prototyping Menurut Connolly & Begg (2010: 333) prototyping dapat diartikan membangun sebuah model pekerjaan dari sistem basis data. Ada 2 strategi dalam membuat prototype yaitu: 1. Requirement Prototyping Mengembangkan prototype untuk menentukan kebutuhan suatu aplikasi basis data yang dibutuhkan dan ketika kebutuhan dirasakan sudah lengkap maka prototype tersebut tidak digunakan lagi.
21 2. Evolutionary Prototyping Digunakan untuk tujuan sama, perbedaannya adalah bahwa prototype tidaklah dibuang tetapi dikembangkan lebih lanjut sehingga menjadi aplikasi basis data tersebut. 2.1.5.8.
Implementation Menurut Connolly & Begg (2010:333-334) implementation merupakan realisasi fisikal dari basis data dan desain aplikasi. Implementasi basis data dicapai dengan membangun Data Definition Language (DDL) dari DBMS yang telah dipilih atau dengan menggunakan Graphical User Interface (GUI), masingmasing menyediakan fungsi ketika menyembunyikan pernyataan (statement) DDL yang low-level. Pernyataan (statement) DDL digunakan untuk menciptakan struktur basis data dan mengkosongkan file yang terdapat dalam basis data tersebut. User view juga diterapkan pada langkah implementasi.
2.1.5.9.
Data Conversion and Loading Menurut Connolly & Begg (2010: 334) data convertion and loading dapat diartikan pemindahan data yang telah ada ke dalam basis data baru dan mengubah setiap aplikasi yang telah ada untuk menjalankan basis data yang baru.
2.1.5.10.
Testing Menurut Connolly & Begg (2010: 334-335) testing merupakan proses dari menjalankan sistem basis data dengan
22 tujuan untuk menemukan kesalahan. Testing adalah suatu proses melaksanakan program aplikasi dengan tujuan mencari kesalahan dan divalidasi untuk kebutuhan yang dispesifikasikan oleh pengguna. Jika data riil digunakan, maka penting untuk mempunyai back-up. Setelah pengujian diselesaikan, maka sistem aplikasi dan basis data ini telah siap untuk digunakan. 2.1.5.11.
Operational Maintenance Menurut Connolly & Begg (2010: 335) operational maintenance meliputi proses dari memantau dan memelihara sistem basis data berdasarkan instalasi. Pada tahap pemeliharaan (maintenance) melibatkan aktivitas berikut: 1. Monitoring Performance dari sistem. Jika performance jatuh dibawah suatu tingkatan yang bisa diterima, penyetelan atau reorganisasi basis data mungkin diperlukan. 2. Maintaining dan meningkatkan mutu aplikasi basis data (ketika diperlukan). Kebutuhan baru disatukan dalam aplikasi basis data dengan mengikuti langkah-langkah sebelumnya yang terdapat dalam lifecycle.
2.1.6. Tahap-tahap Perancangan Basis Data 2.1.6.1.
Perancangan Konseptual Basis Data Menurut Connolly dan Begg (2010: 467) perancangan konseptual basis data dimulai dengan perancangan data model yang tidak bergantung pada detil implementasi seperti DBMS, aplikasi program, bahasa pemrograman, hardware platform, isu
23 performa, atau pertimbangan fisikal lainnya. Tahap perancangan konseptual basis data dibagi menjadi sembilan bagian (Connoly & Begg, 2010: 468), yaitu: Langkah 1. Bangun data model konseptual: Langkah 1.1. Tentukan tipe entitas. Langkah 1.2. Tentukan tipe relasi. Langkah 1.3. Tentukan dan hubungkan atribut dengan entitas atau tipe relasi. Langkah 1.4. Tentukan domain atribut. Langkah 1.5. Tentukan atribut kandidat, primary, dan alternate key. Langkah 1.6. Pertimbangkan kegunaan dari konsep modelling yang lebih tinggi (opsional). Langkah 1.7. Periksa redundansi terhadap model. Langkah 1.8. Validasi data model konseptual terhadap transaksi pengguna. Langkah 1.9. Periksa ulang data model dengan pengguna 2.1.6.2.
Perancangan Logikal Basis Data Menurut Connolly dan Begg (2010: 467) perancangan logikal basis data berfungsi memetakan data model konseptual ke model logikal yang dipengaruhi oleh data model untuk basis data target. Tahap-tahap perancangan logikal basis data dibagi menjadi tujuh bagian (Connoly & Begg, 2010: 468), yaitu: Langkah 2. Bangun data model logikal:
24 Langkah 2.1. Turunkan relasi untuk data model logikal. Langkah 2.2. Validasi relasi menggunakan normalisasi. Langkah 2.3. Validasi relasi terhadap transaksi pengguna. Langkah 2.4. Periksa integritas constraint. Langkah 2.5. Periksa
ulang
data
model
logikal
dengan
pengguna. Langkah 2.6. Gabung data model logikal ke model global (opsional). Langkah 2.7. Periksa untuk perkembangan lebih lanjut. 2.1.6.3.
Perancangan Fisikal Basis Data Menurut Connolly dan Begg (2010: 467) perancangan fisikal basis data memperbolehkan perancang membuat keputusan terhadap bagaimana basis data bisa diimplementasikan, sehingga perancangan fisikal basis data disesuaikan dengan DMBS tertentu. Tahap-tahap perancangan fisikal basis data dibagi menjadi sebelas bagian (Connoly & Begg, 2010: 468), yaitu: Langkah 3. Terjemahkan data model logikal untuk DBMS target: Langkah 3.1. Desain relasi dasar. Langkah 3.2. Desain representasi dari data turunan. Langkah 3.3. Desain constraint umum. Langkah 4. Desain organisasi file dan indeks: Langkah 4.1. Analisa transaksi. Langkah 4.2. Pilih organisasi file. Langkah 4.3. Pilih indeks.
25 Langkah 4.4. Perkirakan kebutuhan disc space. Langkah 5. Desain view pengguna. Langkah 6. Desain mekanisme sekuriti. Langkah 7. Pertimbangkan tentang pengenalan redundansi terkontrol. Langkah 8. Pantau dan tune sistem operasional. 2.1.7. Entity Relationship Modelling Menurut Connolly dan Begg (2010: 371) Entity Relationship Modelling adalah pendekatan secara top-down tehadap desain basis data dimulai dengan menemukan data penting yang disebut entitas dan relasi antar data yang ingin ditampilkan menjadi model. 2.1.7.1.
Tipe Entitas Menurut Connolly dan Begg (2010: 372) tipe entitas adalah kumpulan objek dengan sifat yang sama, yang diidentifikasi oleh enterprise mempunyai eksistensi yang independent.
Gambar 2.2 Tipe Entitas Sumber (Connoly & Begg, 2010: 374)
26 2.1.7.2.
Tipe Relasi Menurut Connolly dan Begg (2010: 374) tipe relasi adalah kumpulan keterhubungan antara 1 atau lebih tipe entitas.
Gambar 2.3 Diagram Entity Relationship ‘Branch has Staff’ Sumber (Connoly & Begg, 2010: 376) Menurut Connolly dan Begg (2010: 376) derajat relasi adalah jumlah tipe entitas yang berpartisipasi di dalam relasi. Derajat relasi dibagi menjadi empat bagian yaitu: 1. Binary Relationship Binary Relationship adalah relasi dengan derajat dua tipe entitas.
Contoh
Binary
PrivateOwner dan
Relationship
PropertyForRent
antara
yang dihubungkan
dengan relasi POwns.
Gambar 2.4 Contoh Binary Relationship Sumber (Connoly & Begg, 2010: 376)
adalah
27 2. Ternary Relationship Ternary Relationship adalah relasi derajat tiga tipe entitas. Contoh dari Ternary Relationship adalah Registers dengan tiga tipe entitas yang berpartisipasi: Staff, Branch, Client. Relasi ini menggambarkan registrasi klien oleh anggota staff dari branch.
Gambar 2.5 Contoh Ternary Relationship Sumber (Connoly & Begg, 2010: 377) 3. Quarternary Relationship Quarternary Relationship adalah relasi derajat empat tipe entitas.
Contoh
dari
Quarternary
Relationship
adalah
Arranges memiliki empat tipe entitas yang berpartisipasi: Buyer, Solicitor, Financial Institution, dan Bid. Relasi tersebut menggambarkan situasi Buyer, disarankan oleh Solicitor dan didukung oleh Financial Institution untuk memasang Bid.
Gambar 2.6 Contoh Quarternary Relationship Sumber (Connoly & Begg, 2010: 377)
28 4. Recursive Relationship Recursive
Relationship
adalah
tipe
relasi
yang
menggambarkan tipe entitas yang sama berpartisipasi lebih dari satu tujuan yang berbeda. Recursive Relationship disebut juga
sebagai
Unary
Relationship.
Contoh
Recursive
Relationship yaitu terdapat sebuah relasi rekursif bernama Supervises. Supervises menggambarkan hubungan dari Staff yang adalah Supervisor dimana Supervisor termasuk dalam Staff. Tipe entitas Staff berpartisipasi dua kali di relasi Supervises; partisipasi pertama sebagai Supervisor, dan partisipasi kedua sebagai bagian dari Staff yang diawasi (supervised).
Gambar 2.7 Contoh Recursive Relationship Sumber (Connoly & Begg, 2010: 378) 2.1.7.3.
Tipe Atribut Menurut Connolly dan Begg (2010: 379) tipe atribut adalah sifat-sifat dari tipe entitas atau tipe relasi. Atribut domain adalah kumpulan nilai yang diperbolehkan untuk satu atau lebih atribut.
29 Macam-macam atribut terbagi menjadi lima bagian (Connoly & Begg, 2010: 379-381), yaitu: 1. Simple Attribute Simple Attribute adalah atribut yang terdiri dari satu komponen
dengan
keberadaan
yang
tidak
tergantung
(independent). Simple Attribute disebut juga sebagai Atomic Attribute. 2. Composite Attribute Composite Attribute adalah atribut yang terdiri dari banyak komponen
dengan
keberadaan
yang
tidak
tergantung
(independent) setiap komponennya. 3. Single-valued Attribute Single-valued Attribute adalah atribut yang memiliki satu nilai setiap kejadian dari tipe entitas yang sama. 4. Multi-valued Attribute Multi-valued Attribute adalah atribut yang memiliki banyak nilai setiap kejadian dari tipe entitas yang sama. 5. Derived Attribute Derived Attribute adalah atribut yang menggambarkan sebuah nilai yang didapat dari nilai atribut yang berhubungan atau kumpulan atribut, bukan dari tipe entitas yang sama. 2.1.7.4.
Tipe Key Menurut Connolly dan Begg (Connoly & Begg, 2010: 381), tipe-tipe key dibagi menjadi tiga, yaitu:
30 1. Candidate Key Candidate key adalah kumpulan minimal atribut yang ditentukan secara unique setiap kejadian dari tipe entitas yang sama. 2. Primary Key Primary key adalah candidate key yang dipilih untuk mengidentifikasi secara unique setiap kejadian dari tipe entitas yang sama. Candidate key yang tidak terpilih menjadi primary key disebut alternate key. 3.
Composite Key Composite key adalah candidate key yang memiliki dua atau banyak attribute.
2.1.7.5.
Tipe Struktural Constraint Menurut Connolly dan Begg (2010: 385) multiplicity dapat diartikan jumlah angka untuk menentukan kejadian dari tipe entitas yang berhubungan terhadap satu kejadian dari tipe entitas lain yang terhubung melalui relasi. Tipe relasi yang paling umum digunakan adalah relasi Binary. Macam-macam relasi Binary yang dapat terbentuk, yaitu: 1. One-to-One Relationships (1:1)
Gambar 2.8 Contoh One-to-One Relationship Sumber (Connoly & Begg, 2010: 386)
31 Setiap branch diatur oleh satu staff manager dan setiap member staff dapat mengatur nol atau satu branch.
2. One-to-Many Relationships (1:*)
Gambar 2.9 Contoh One-to-Many Relationship Sumber (Connoly & Begg, 2010: 388) Setiap property rent diawasi oleh nol atau satu member staff dan setiap member staff mengawasi satu atau banyak property rent. 3. Many-to-Many Relationships (*:*)
Gambar 2.10 Contoh Many-to-Many Relationship Sumber (Connoly & Begg, 2010: 389) Menurut Connolly dan Begg (2010: 389) Multiplicity pada Complex Relationship adalah angka kejadian yang mungkin terjadi dari tipe entitas sebuah relasi n dengan nilai dari tipe entitas lain adalah tetap (n-1).
32 Tabel 2.1 Kesimpulan dari Multiplicity Constraint Sumber (Connoly & Begg, 2010: 391)
2.1.8. Normalisasi 2.1.8.1.
Pengertian Normalisasi Menurut Connolly dan Begg (2010: 416) normalisasi adalah teknik untuk menghasilkan kumpulan relasi dengan sifat yang diinginkan dan memberikan data kebutuhan untuk perusahaan. Karakteristik hasil dari kumpulan relasi adalah sebagai berikut: •
Terdapat angka yang minimal pada atribut untuk mendukung data perusahaan.
•
Atribut-atribut dengan relasi logikal yang dekat dapat ditemukan di relasi yang sama.
•
Terdapat
redudansi
minimal
dengan
setiap
atribut
digambarkan hanya satu kali dengan pengecualian atribut yang membentuk bagian dari foreign key.
33 2.1.8.2.
Proses Normalisasi Menurut Connolly & Begg (2010: 428) normalisasi merupakan teknik formal untuk menganalisa relasi berdasarkan dari primary key (atau candidate key) dan ketergantungan fungsional (Codd, 1972b). Teknik tersebut meliputi beberapa peraturan yang digunakan untuk menguji relasi individual sehingga basis data dapat dinormalisasi menjadi derajat apapun. Tiga bentuk normal yang pernah diajukan adalah First Normal Form (1NF), Second Normal Form (2NF), dan Third Normal Form (3NF). E.F. Codd menemukan definisi yang lebih kuat dari 3NF yakni Boyce-Codd Normal Form (BCNF). Bentuk normal yang lebih kuat dari BCNF ditemukan yaitu Fourth Normal Form (4NF) dan Fifth Normal Form (5NF). Tabel yang masih memiliki satu atau lebih grup berulang disebut juga Unnormalized Form (UNF). 1. First Normal Form (1NF) Untuk membentuk UNF ke dalam bentuk 1NF, maka grup berulang dalam tabel yang memiliki nilai banyak untuk satu kejadian harus dihilangkan. Terdapat dua pendekatan untuk menghilangkan grup berulang pada UNF, yaitu: •
Mengisi data yang sesuai pada kolom yang kosong dari baris yang memiliki data berulang.
34 •
Menempatkan data berulang bersamaan dengan key attribute tiruan ke relasi yang berbeda.
2. Second Normal Form (2NF) Second Normal Form adalah relasi pada 1NF dan setiap atribut bukan primary key berfungsi dengan bergantung pada primary
key.
Normalisasi
pada
tahap
2NF
meliputi
penghapusan partial dependencies. 3. Third Normal Form (3NF) Third Normal Form adalah relasi dalam 1NF dan 2NF sudah tidak ada atribut bukan primary key yang transitively dependent pada primary key. 4. Boyce-Codd Normal Form (BCNF) Boyce-Codd Normal Form adalah relasi jika hanya jika setiap determinan adalah candidate key. Determinan dapat berupa atribut
atau
kumpulan
atribut
yang
berfungsi
secara
dependent. 5. Fourth Normal Form (4NF) BCNF
mengilangkan
anomali
terhadap
ketergantungan
fungsional, namun penelitian menemukan ketergantungan lain yang dapat menimbulkan redudansi data bernama MultiValued Dependencies (MVD). Fourth Normal Form mencegah relasi yang memiliki nontrivial MVD tanpa keterhubungan determinan menjadi candidate key untuk relasi.
35 6. Fifth Normal Form (5NF) Fifth Normal Form adalah relasi jika hanya jika setiap join dependency (R1,R2. . . . Rn) pada relasi R, setiap proyeksi meliputi candidate key dari relasi awal. 2.1.9.
Data Flow Diagram (DFD) Menurut Satzinger, Jackson, & Burd (2009: 206-210) Data Flow Diagram (DFD) merupakan model yang menggambarkan seluruh kebutuhan sistem informasi pada satu diagram. Terdapat empat simbol utama yang sering digunakan pada DFD, yakni: 1. External Agent Orang atau organisasi di luar hubungan sistem yang memberikan input data atau menerima output data. 2. Process Simbol pada DFD yang menggambarkan algoritma atau prosedur dari input data diubah menjadi output data. 3. Data Flow Simbol
berupa
bentuk
panah
pada
DFD
yang
menggambarkan pergerakan data antara process, data stores, dan external agent. 4. Data Store Tempat untuk menyimpan data untuk diakses satu atau lebih proses.
36 DFD dapat digambarkan baik dalam bentuk higher-level atau lower-level dari sistem. Proses high-level dapat dipecah menjadi beberapa lower-level DFD yang lebih detail. Context Diagram adalah DFD yang mendeskripsikan tampilan abstrak dari sistem. Seluruh external agent dan seluruh data flow yang ada pada sistem digambarkan pada satu diagram yang disatukan sebagai satu proses. DFD fragment dibuat untuk menggambarkan model tersendiri yang menjelaskan bagaimana sistem merespon satu kejadian. Setiap DFD fragment juga menggambarkan data store yang dibutuhkan untuk merespon kejadian.
Gambar 2.11 Contoh DFD Fragment Sumber (Satzinger & Jackson, 2009: 210)
37 2.1.10.
Flowchart Menurut Ngoen (2009: 5) flowchart atau bagan alur merupakan simbol dan garis yang menggambarkan urutan proses algoritma dan digambarkan dalam bentuk diagram.
Tabel 2.2 Tabel Sebagian Simbol Flowchart Simbol
Nama Terminal
Proses
Fungsi Menandakan awal dan akhir dari flowchart. Merepresentasikan input atau output data atau informasi yang diproses. Merepresentasikan alur. Penghubung bagian lain flowchart pada halaman yang sama. Merepresentasikan sebuah keputusan pada flowchart. Merepresentasikan proses pada flowchart.
Dokumen
Input / output dalam format yang dicetak.
Manual Operation
Merepresentasikan sebuah proses yang dilakukan secara manual.
Input / Output Anak Panah Connector Keputusan
2.1.11. State Transition Diagram (STD) Menurut Whitten & Bentley (2007: 635) State Transition Diagram adalah model yang digunakan untuk menggambarkan urutan dan variasi dari layar yang dapat terjadi pada sesi pengguna. STD dikontrol oleh arrows (panah). Arrows dapat mengaktifkan event yang mengakibatkan layar menjadi aktif atau menerima fokus.
38 2.2. Teori Khusus 2.2.1. Pengertian Absensi Absensi adalah pendataan kehadiran yang disusun dan diatur sedemikian rupa sehingga dapat memberikan informasi yang dapat digunakan
apabila
sewaktu-waktu
diperlukan
oleh
pihak
yang
berkepentingan. 2.2.2. Pengertian Penilaian Penilaian adalah sebuah proses pemberian nilai terhadap hasil-hasil belajar yang dicapai. Melalui penilaian, dapat diperoleh informasi perkembangan siswa. Penilaian siswa akan diproses menjadi sebuah data untuk dikirim ke Kementrian Pendidikan Nasional. 2.2.3. Pengertian Pembayaran Menurut Bank Indonesia, sistem pembayaran merupakan sistem yang berkaitan dengan pemindahan sejumlah nilai uang dari satu pihak ke pihak lain. Media yang digunakan untuk pemindahan nilai uang tersebut sangat beragam, mulai dari penggunaan alat pembayaran yang sederhana sampai pada pengunaan sistem yang kompleks dan melibatkan berbagai lembaga berikut aturan mainnya. 2.2.4. Pengertian Pelanggaran 2.2.4.1.
Pelanggaran Akademik Menurut peraturan di SMA Mahanaim, perbuatan-perbuatan yang dapat dikategorikan sebagai pelanggaran akademik antara lain sebagai berikut :
39 •
Menggunakan atau mencoba menggunakan bahan-bahan, informasi atau alat bantu studi lainnya pada waktu ujian tanpa izin dari guru yang berkepentingan;
•
Mengganti,
mengubah,
memalsukan
nilai,
tugas-tugas,
keterangan, laporan, atau tanda tangan dalam lingkup kegiatan akademik; •
Menyediakan sarana atau prasarana yang dapat menyebabkan terjadinya hal yang tidak diperbolehkan dalam kegiatan akademik;
•
Menggunakan kata-kata atau karya orang lain sebagai katakata atau karya sendiri dalam suatu kegiatan akademik;
•
Mempengaruhi atau mencoba mempengaruhi orang lain dengan cara lain dengan cara membujuk, memberi hadiah atau mengancam
dengan
maksud
mempengaruhi
penilaian
terhadap prestasi akademik; •
Menggantikan kedudukan atau melakukan tugas/kegiatan untuk kepentingan orang lain dalam kegiatan akademik, atas permintaan orang lain atau kehendak sendiri, seperti; ujian, kegiatan atau tugas akademik lainnya.
•
Menyuruh orang lain baik untuk menggantikan kedudukan atau melakukan tugas-tugas atau kegiatan baik untuk kepentingan sendiri maupun kepentingan orang lain dalam
40 kegiatan akademik, seperti ujian, kegiatan atau tugas akademik lainnya; •
Melakukan hal-hal yang bertentangan dengan norma-norma kepatutan dalam kehidupan masyarakat akademik.
2.2.4.2.
Pelanggaran Non Akademik Menurut peraturan di SMA Mahanaim, perbuatan-perbuatan yang dapat dikategorikan sebagai pelanggaran non akademik adalah sebagai berikut : •
Mengucapkan dan/atau menuliskan kata-kata kotor dan keji yang ditujukan kepada lembaga, guru, karyawan, sesama siswa dan tamu;
•
Membawa senjata dalam bentuk apapun di dalam sekolah maupun di dalam kegiatan-kegiatan yang diselenggarakan atau yang menyangkut nama Mahanaim, kecuali mendapat izin dari kepala sekolah;
•
Membawa dan/atau menggunakan segala macam bahan kimia yang berbahaya dalam bentuk apapun terutama napza (Narkotika, Psikotropika & Zat Aditif) di dalam sekolah maupun di dalam kegiatan-kegiatan yang diselenggarakan oleh Mahanaim atau yang menyangkut nama Mahanaim, kecuali bahan kimia yang digunakan untuk keperluan keperluan praktikum;
41 •
Membuat keributan atau kegaduhan, pertengkaran atau perkelahian, perusakan sarana dan prasarana sekolah serta tindakan-tindakan lain yang dapat menimbulkan terganggunya keamanan dan ketertiban kampus;
•
Melakukan segala kegiatan dan/atau mengeluarkan ucapan atau tulisan yang menjurus ke arah pertentangan suku, agama, ras dan antar-golongan;
•
Melakukan perjudian di lingkungan sekolah;
•
Melakukan
tindakan
dan
perbuatan
pelecehan
dan
pelanggaran seksual atau perbuatan yang bertentangan dengan kesusilaan. 2.2.5. Pengertian Sistem Informasi Manajemen Menurut Mcleod & Schell (2008: 12) sistem informasi manajemenSIM (management information system-MIS) didefinisikan sebagai suatu sistem berbasis komputer yang membuat informasi tersedia bagi para pengguna yang memiliki kebutuhan serupa. Output informasi yang dihasilkan akan digunakan oleh pihak-pihak yang akan memecahkan masalah (baik itu manajer maupun kalangan profesional) dalam mengambil keputusan guna memecahkan masalah perusahaan.