Anda di halaman 1dari 12

MODUL PERKULIAHAN

Rekayasa Sistem
Informasi
Data Modelling

Fakultas Program Studi Tatap Muka Kode MK Disusun Oleh

09
Ilmu Komputer Sistem Informasi MKWP-06 Lydia Vintari ST MT

Abstract Kompetensi
Data model (juga disebut skema Mahasiswa dapat menjelaskan konsep
database) adalah abstraksi yang data modeling dan penggunaan data
menyajikan struktur database dalam modelling dalam rekayasa sistem
istilah yang lebih mudah dimengerti informasi
daripada bit mentah dan byte
Daftar Isi

Levels of data models ............................................................................................................................. 3


Integrating application and database modeling ..................................................................................... 3
Relational database model ..................................................................................................................... 5
Columns, domains & rules .............................................................................................................. 5
Table................................................................................................................................................ 6
Referential integrity ........................................................................................................................ 7
Trigger ............................................................................................................................................. 8
Stored procedures .......................................................................................................................... 9
Views ............................................................................................................................................. 10
Normal forms ................................................................................................................................ 11
Daftar Pustaka....................................................................................................................................... 12

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


2 Lydia Vintari ST MT http://www.mercubuana.ac.id
Levels of data models
Komunitas database telah mengembangkan pandangannya sendiri di dunia modeling.
Database menyimpan data. Secara historis, komunitas database terkonsentrasi pada data
model (model statis dalam bahasa UML). Kemampuan database saat ini untuk menyimpan
dan menjalankan program telah memperluas perspektif ini untuk memasukkan model perilaku
(berpusat pada pemicu dan prosedur tersimpan).
Data model (juga disebut skema database) adalah abstraksi yang menyajikan struktur
database dalam istilah yang lebih mudah dimengerti daripada bit mentah dan byte. Klasifikasi
populer dari lapisan data model mengakui tiga abstraksi:
 data model eksternal (konseptual)
Skema eksternal mewakili data model konseptual tingkat tinggi yang dibutuhkan oleh
satu aplikasi. Karena database biasanya mendukung banyak aplikasi, beberapa skema
eksternal dibangun. Mereka kemudian diintegrasikan ke dalam satu data model konseptual.
Teknik modeling data konseptual yang paling populer menggunakan diagram entity-
relationship (ER). Meskipun modeling ER tetap populer di kalangan perancang database, itu
memberikan cara untuk modeling kelas UML sebagai teknik pilihan untuk semua modeling
konseptual - yaitu, modeling konseptual aplikasi dan database
 data model logis
Skema logis (juga kadang-kadang disebut skema konseptual global) menyediakan
model yang mencerminkan struktur penyimpanan logis (tabel dan sebagainya) dari data
modelbase yang akan digunakan untuk implementasi sistem (biasanya, model relasional).
Skema logis adalah model terintegrasi global untuk mendukung setiap aplikasi saat ini dan
yang diharapkan yang perlu mengakses informasi yang disimpan dalam database.
 data model fisik
Skema fisik khusus untuk DBMS tertentu (seperti Oracle atau SQL Server). Ini
mendefinisikan bagaimana data sebenarnya disimpan pada perangkat penyimpanan
persisten, biasanya disk. Skema fisik mendefinisikan isu-isu seperti penggunaan indeks dan
pengelompokan data untuk pemrosesan yang efisien.

Integrating application and database modeling


Modeling program aplikasi dan modeling database adalah kegiatan yang terpisah.
Yang pertama dilakukan oleh mengembangkan aplikasi, yang terakhir oleh administrator
database atau desainer. Alasan perpecahan ini adalah bahwa database harus dikembangkan
secara terpisah dari aplikasi. Satu database harus melayani beberapa program aplikasi yang

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


3 Lydia Vintari ST MT http://www.mercubuana.ac.id
berbeda. Ini harus menjadi solusi kompromi yang menyelesaikan segala konflik dan tumpang
tindih dalam tuntutan akses data oleh aplikasi.
Pengembang aplikasi biasanya diberikan model untuk database yang perlu diakses
oleh aplikasi. Setelah ini, pengembang aplikasi perlu merancang mapping yang diperlukan
antara model program dan data modelbase. Gambar dibawah ini menunjukkan bagaimana
model UML untuk aplikasi berhubungan dengan data modelbase persisten. Panah
menunjukkan ketergantungan antara elemen modeling. Prinsip downward dependency principle
(DDP) dari kerangka arsitektur PCBMER meluas pada komunikasi antara aplikasi dan
database persisten.
Subsistem sumber daya bertanggung jawab untuk komunikasi dengan database.
Semua kueri SQL dan panggilan ke prosedur yang tersimpan dari aplikasi dibuat oleh kelas
sumber daya dan diteruskan ke server database. Data apa pun dan hasil lain yang
dikembalikan oleh server database pertama-tama dikirimkan ke kelas sumber daya sebelum
mereka dapat mencapai subsistem entitas. Kelas dari subsistem entitas mewakili obyek bisnis
yang ditempatkan dalam memori program aplikasi. Rules mapping antara objek bisnis dan
catatan terkait dalam tabel database harus didefinisikan dengan cermat.
Rules mapping yang digunakan oleh subsistem mediator, yang bertanggung jawab
untuk mengelola memori cache aplikasi dan setiap gerakan dari benda antara memori dan
database. Ini berarti bahwa subsistem mediator adalah port pertama panggilan ketika kelas
kontrol perlu mengakses objek bisnis dan tidak memiliki pegangan sebelumnya (referensi)
pada objek itu. Ini juga berarti bahwa subsistem mediator harus mengelola transaksi bisnis di
mana setiap urutan akses database dan modifikasi dilakukan.

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


4 Lydia Vintari ST MT http://www.mercubuana.ac.id
Gambar. Integrating application & database modeling

Relational database model


Columns, domains & rules
Database relasional mendefinisikan data dalam tabel kolom dan baris. Nilai data yang
disimpan di persimpangan setiap kolom dan baris harus berupa nilai sederhana (tidak dapat
dibagi) dan satu (tidak berulang). Kami mengatakan bahwa kolom memiliki domain atom (tipe
data).
Domain menentukan kumpulan nilai hukum yang dapat dilakukan oleh kolom. Domain
dapat bersifat anonim atau dinamai. Dalam kasus terakhir, domain Jenis Kelamin telah
didefinisikan sebelumnya dan digunakan dalam definisi kolom. Sintaks yang mungkin untuk
definisi domain dapat berupa:

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


5 Lydia Vintari ST MT http://www.mercubuana.ac.id
Gambar. Dependency antara tipe database primitive

Sebuah domain bernama dapat digunakan dalam definisi banyak kolom dalam tabel
yang berbeda. Ini menegakkan konsistensi antara definisi-definisi ini. Perubahan pada definisi
domain secara otomatis tercermin dalam definisi kolom. Meskipun opsi yang menarik pada
pandangan pertama, penggunaan domain terhambat setelah database diisi - yaitu, penuh
dengan data.
Kolom dan domain dapat memiliki rules bisnis yang membatasi mereka. Rules
semacam itu dapat menentukan:
 nilai default - jika tidak ada nilai yang disediakan untuk kota, anggap "Sydney"
misalnya
 kisaran nilai - usia yang diizinkan adalah dalam kisaran 18 hingga 80, misalnya
 daftar nilai - warna yang diizinkan adalah "hijau", "kuning" atau "merah", misalnya
 kasus nilai - nilai harus dalam huruf besar atau kecil, misalnya
 format nilai - nilai harus dimulai dengan huruf "K", misalnya

Table
Tabel relasional ditentukan oleh kumpulan kolom tetapnya. Kolom memiliki jenis atau
domain bawaan (yang ditentukan). Tabel dapat memiliki sejumlah baris (catatan). Karena
tabel adalah himpunan matematis, tidak ada baris duplikat dalam tabel. Nilai kolom dalam
baris tertentu dapat dibiarkan kosong. Nilai nol berarti salah satu dari dua hal: "nilainya saat
ini tidak diketahui" (seperti, saya tidak tahu tanggal lahir Anda) atau "nilai tidak berlaku" (Anda

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


6 Lydia Vintari ST MT http://www.mercubuana.ac.id
tidak dapat memiliki nama gadis jika Anda seorang pria , sebagai contoh). Nilai nol tidak nol
atau spasi (kosong) nilai karakter tetapi aliran khusus bit yang menunjukkan nilai nol.
Konsekuensi dari persyaratan model RDB dari "tidak ada baris duplikat" adalah bahwa
setiap tabel memiliki kunci primer. Kunci adalah set minimal kolom (mungkin satu) dan nilai-
nilai dalam kolom ini secara unik mengidentifikasi satu baris dalam tabel. Sebuah meja dapat
memiliki banyak kunci seperti itu. Salah satu kunci ini dipilih secara sewenang-wenang
sebagai yang paling penting bagi pengguna - ini adalah primary key. Kunci lain disebut
kandidat atau alternate key.
Dalam praktiknya, tabel RDBMS tidak harus memiliki kunci. Ini berarti bahwa tabel
(tanpa kunci unik) mungkin memiliki baris duplikat - fitur yang cukup tidak berguna dalam
database relasional karena dua baris dengan nilai yang sama untuk semua kolomnya tidak
dapat dibedakan.
Ini berbeda untuk sistem ODB dan ORDB, di mana OID memberikan perbedaan
seperti itu (dua objek mungkin sama tetapi tidak identik, seperti dengan dua salinan buku ini,
misalnya). Meskipun UML dapat distereotipkan untuk modeling database relasional, akan
lebih mudah untuk menggunakan teknik diagram khusus yang ditargetkan untuk modeling
logis dari database relasional. Gambar di bawah ini menunjukkan satu notasi seperti itu.
Database target adalah DB2.

Gambar. Tabel definisi dalam RDB

Referential integrity
Model RDB mempertahankan hubungan antar tabel dengan menggunakan batasan
integritas referensial. Hubungannya bukan koneksi baris-ke-baris yang tetap (menggunakan
pointer, referensi atau tautan navigasi serupa). Sebaliknya, RDB "menemukan" koneksi baris-
ke-baris setiap kali pengguna meminta sistem untuk menemukan hubungan. Ini "penemuan"
dilakukan dengan membandingkan nilai kunci primer dalam satu tabel dengan nilai kunci asing
dalam tabel yang sama atau yang lain.
Foreign key didefinisikan sebagai satu set kolom dalam satu tabel, nilai-nilainya adalah
NULL atau diperlukan untuk mencocokkan nilai kunci primer dalam tabel yang sama atau
yang lain. Koresponden utama ke luar negeri itu disebut integritas referensial. Kunci utama

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


7 Lydia Vintari ST MT http://www.mercubuana.ac.id
dan asing dalam integritas referensial harus didefinisikan pada domain yang sama, tetapi
mereka tidak harus memiliki nama yang sama.
Gambar di bawah ini menunjukkan representasi grafis dari integritas referensial.
Sebagai hasil dari menggambar hubungan antara tabel Karyawan dan Departemen, dept_id
kunci asing diperkenalkan ke meja Karyawan. Untuk setiap baris Karyawan, nilai kunci asing
harus berupa nol atau sesuai dengan salah satu nilai dept_id di Departemen (jika tidak,
seorang karyawan akan bekerja untuk departemen yang tidak ada.

Gambar. Gambar representasi dari referential integrity

Trigger
trigger adalah program kecil, ditulis dalam SQL yang diperpanjang, yang dieksekusi
secara otomatis (trigger) sebagai hasil dari operasi modifikasi pada tabel di mana trigger telah
ditetapkan. Operasi modifikasi dapat berupa salah satu pernyataan modifikasi SQL -
masukkan, perbarui atau hapus.
trigger dapat digunakan untuk menerapkan rules bisnis yang melampaui kemampuan
pernyataan rules SQL. Misalnya, rules bisnis yang melarang perubahan pada tabel Karyawan
selama akhir pekan dapat diprogram menjadi trigger. Setiap upaya untuk mengeluarkan insert
SQL, memperbarui atau menghapus di atas meja selama akhir pekan akan menghasilkan
trigger dan database menolak untuk mengeksekusi operasi.
trigger juga dapat digunakan untuk menegakkan batasan integritas referensial yang
lebih kompleks. Sebagai contoh, rules bisnis kami dapat menyatakan bahwa, pada
penghapusan baris Departemen, Karyawan yang merupakan manajer departemen itu juga
harus dihapus, tetapi semua karyawan lain harus memiliki nilai dept_id yang ditetapkan ke
nol. Rules bisnis seperti itu tidak dapat diberlakukan secara deklaratif.

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


8 Lydia Vintari ST MT http://www.mercubuana.ac.id
Gambar. SQL trigger

Stored procedures
Sebuah prosedur yang tersimpan ditulis dalam SQL diperpanjang yang
memungkinkan untuk konstruksi pemrograman seperti variabel, loop, cabang dan pernyataan
penugasan. Sebuah prosedur yang tersimpan diberi nama, dapat mengambil parameter input
dan output dan disusun dan disimpan dalam database. Sebuah program klien dapat
memanggil prosedur tersimpan seolah-olah itu setiap subrutin internal.
Gambar di bawah mengilustrasikan keuntungan dari program klien yang memanggil
prosedur tersimpan daripada mengirim permintaan lengkap ke server. Sebuah query
dibangun dalam program klien dikirim ke server database melalui jaringan. Kueri dapat berisi
sintaks dan kesalahan lainnya, tetapi klien tidak dapat menghilangkannya - sistem database
adalah satu-satunya tempat di mana verifikasi tersebut dapat dilakukan. Setelah diverifikasi,
DBMS memeriksa apakah pemanggil berwenang atau tidak untuk menjalankan query. Jika
demikian, query dioptimalkan untuk menentukan rute akses terbaik ke data. Hanya kemudian
dapat itu dikompilasi, dijalankan dan hasilnya dikembalikan ke klien.
Di sisi lain, jika query (atau seluruh rangkaian pertanyaan) ditulis sebagai prosedur
yang tersimpan, maka dioptimalkan dan dikompilasi ke server database. Sebuah program
klien tidak perlu mengirim (mungkin besar) permintaan melalui jaringan. Sebaliknya, ia akan
mengirimkan panggilan singkat dengan nama prosedur dan daftar parameter aktual. Jika
beruntung, prosedur mungkin berada dalam cache memori DBMS. Jika tidak, itu akan dibawa
ke memori dari database.

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


9 Lydia Vintari ST MT http://www.mercubuana.ac.id
Gambar. Perbandingan SQL client dan stored procedure call

Views
View relasional adalah SQL query disimpan dan diberi nama. Karena hasil dari setiap
kueri SQL adalah tabel sementara, tampilan dapat digunakan sebagai pengganti tabel di
operasi SQL lainnya. View bisa berasal dari satu atau lebih tabel dan / atau satu atau lebih
view lain.
Secara teoritis, view adalah mekanisme yang sangat kuat dengan banyak kegunaan.
Ini dapat digunakan untuk mendukung keamanan database dengan membatasi pengguna
dari melihat data tabel. Ini dapat menyajikan data kepada pengguna dalam perspektif yang
berbeda. Ini dapat mengisolasi aplikasi dari perubahan ke definisi tabel, jika definisi yang
diubah bukan bagian dari tampilan. Hal ini memungkinkan untuk ekspresi yang lebih mudah
dari pertanyaan kompleks - permintaan dapat dibangun dalam mode "membagi dan
menaklukkan" dengan menggunakan berbagai tingkat tampilan.

Gambar. relational view dan coding

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


10 Lydia Vintari ST MT http://www.mercubuana.ac.id
Normal forms
Satu konsep yang paling penting tetapi pada saat yang sama paling tidak dipahami
dalam desain RDB adalah normalisasi. Tabel relasional harus dalam normal forms (NF).
Berikut ini adalah enam normal forms:
 NF Pertama
 NF ke-2
 NF ke-3
 BCNF (Boyce – Codd NF)
 NF ke-4
 NF ke-5.
Sebuah tabel yang ada di NF yang lebih tinggi juga ada di semua NF yang lebih
rendah. Sebuah meja harus setidaknya di NF 1. Sebuah tabel tanpa kolom terstruktur atau
multinilai berada di NF 1 (dan itu adalah persyaratan mendasar dari model RDB).

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


11 Lydia Vintari ST MT http://www.mercubuana.ac.id
Daftar Pustaka
Roger S. Pressman. 2010. Software Engineering: A Practitioner's Approach (7th ed)

Leszek A. Maciaszek. 2007. Requirements Analysis and System Design

Jeffrey O. Grady. 2014. System Requirements Analysis

https://id.wikipedia.org/wiki/Sistem_informasi

2018 Rekayasa Sistem Informasi Pusat Bahan Ajar dan eLearning


12 Lydia Vintari ST MT http://www.mercubuana.ac.id

Anda mungkin juga menyukai