BAB 2 LANDASAN TEORI
2.1
Pengertian Data Menurut Whitten et al. (2004, p23), data adalah fakta mentah mengenai orang, tempat, kejadian, dan hal-hal penting yang ada dalam organisasi. Tiap fakta, tanpa disertai fakta lainnya, secara relative tidak ada artinya. Data adalah fakta-fakta yang telah diketahui dan dapat dikumpulkan serta dapat disimpan dalam media computer. Data terdiri dari fakta-fakta dan simbolsimbol angka yang secara relatif mempunyai arti bagi pengguna. (Hoffer, Prescott, dan McFadden, 2005, p5) Menurut Atzeni et al. (2003, p2) data merupakan suatu bentuk penyimpanan informasi yang harus diterjemahkan terdahulu untuk menghasilkan informasi. Data sendiri tidak mempunyai makna, tetapi setelah diterjemahkan dan
dihubungkan
dengan
benar,
data
menghasilkan
informasi
yang
memungkinkan kita dalam meningkatkan pengetahuan.
2.2
Konsep Basis Data
2.2.1 Pengenalan Basis Data Kata “basis data” bisa digunakan untuk menguraikan segala sesuatu dari sekumpulan data tunggal, seperti daftar pasien. Istilah “basis data” tidak termasuk aplikasi, yang terdiri dari form dan report di mana pengguna akan
8
9 saling berhubungan. Basis data terdiri dari file-file fisik yang ditetapkan berdasarkan computer saat menerapkan perangkat lunak basis data. Di sisi lain, suatu model basis data lebih kepada konsep dibandingkan objek fisik dan digunakan untuk menciptakan tabel di dalam basis data. Basis data adalah suatu aplikasi terpisah yang menyimpan suatu koleksi data. Masing-masing basis data memiliki satu API (Application Program Interface) atau lebih untuk menciptakan, mengakses, mengelola, mencari, dan mereplikasi data. Basis data biasanya memiliki dua bagian utama: a. File yang memegang basis data fisik. b. Perangkat lunak Sistem Manajemen Basis Data (DBMS) menggunakan aplikasi untuk mengakses data. DBMS bertanggung jawab menguatkan struktur basis data, termasuk : a. Memelihara hubungan antardata di dalam basis data. b. Memastikan bahwa data tersimpan secara tepat, dan menetapkan aturan hubungan data agar tidak dilanggar. c. Pemulihan (recovery) semua data dari kegagalan sistem.
2.2.2
Basis Data Menurut Janner Simarmata (2007, p2) Basis data adalah koleksi data yang bisa mencari secara menyeluruh dan secara sistematis memelihara dan me-retrieve informasi.
10 Basis data dapat diartikan sebagai suatu kumpulan data yang secara logika saling terkait, dan terdapat uraian mengenai data tersebut, dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. Connoly (2002, p14) Basis data menurut CJ Date (2000, p1) adalah tempat penyimpanan untuk koleksi-koleksi files data terkomputerisasi. Basis data terdiri dari beberapa koleksi dari data yang persisten yang akan digunakan oleh system aplikasi dari suatu organisasi. Basis data menurut Gordon C. Everest (1985, p11) adalah koleksi dari data yang termekanisme, terbagi, secara formal didefinisikan dan dikontrol secara terpusat yang digunakan oleh suatu organisasi.
2.2.3
Basis Data Terkomputerisasi Menurut Janner Simarmata (2007, p4), Suatu basis data yang terkomputerisasi mempunyai keuntungan seperti:
Terpusat dan Berbagi Data – Memasukkan dan menyimpan semua data di dalam computer, tindakan tersebut mengurangi penggunaan kertas, dll. Juga kemungkinan kehilangan atau kesalahan menempatkan data dapat berkurang. Banyak pengguna dapat mengakses data via jaringan computer.
Current Data – User bisa secara cepat memperbaharui data dan data langsung siap untuk digunakan.
Kecepatan dan Produktivitas – Mencari, mengurutkan, me-retrieve, membuat perubahan, dan mencetak data akan secara cepat dilakukan daripada jika melakukannya secara manual.
11
Akurasi dan Konsistensi – Kita bisa merancang basis data untuk memvalidasi masukan data, serta untuk memastikan bahwa data yang dimasukkan adalah valid dan konsisten.
Analisis – Basis data bisa menyimpan, mengetahui, dan memproses isi data yang besar dari sumber yang berbeda. Kita bisa menggunakan kumpulan data dari sumber yang bervariasi untuk mengetahui performa dari area bisnis untuk menganalisis atau untuk mengungkapkan trend bisnis.
Keamanan – Kita bisa memproteksi basis data dengan penetapan daftar kata sandi (password) dan identifikasi pengguna yang diotorisasi. Keamanan memastikan bahwa pengguna hanya bisa melakukan operasi yang diizinkan saja.
Pemulihan – Kegagalan system tidak dapat diacuhkan. Penggunaan basis data memungkinkan integritas data mengalami kegagalan. Sistem manajemen basis data menggunakan suatu log transaksi untuk memastikan bahwa data akan menjadi pulih saat anda menjalankan kembali setelah terjadi crash.
Transaksi – Konsep transaksi menyediakan suatu mekanisme pemulihan kesalahan yang disamaratakan untuk memberikan konsekuensi atas kesalahan yang tidak terduga. Transaksi memastikan bahwa suatu kelompok perubahan basis data yang terkait selalu terjadi sebagai unit; dimana semua perubahan dilaksanakan atau tidak sama sekali. Hal tersebut mengizinkan kita untuk me-restore status basis data yang sebelumnya terjadi kesalahan setelah ada perubahan.
12 2.2.4
Sifat-sifat Basis Data Istilah basis data pada umumnya juga menyiratkan serangkaian sifat yang terkait:
2.2.4.1 Berbagi Data Data yang disimpan di dalam basis data tidak secara umum dipegang untuk digunakan oleh seseorang. Suatu basis data secara normal diharapkan bisa diakses oleh lebih dari satu orang, dan mungkin pada waktu yang sama.
2.2.4.2 Integrasi Data Data bersama membawa banyak keuntungan untuk organisasi. Salah satu bentuk tanggung jawab pemakaian basis data yang utama adalah memastikan bahwa data terintegrasi. Suatu basis data harus menjadi koleksi data dimana secara ideal, tidak terjadi redundansi data. Suatu nilai data dikatakan redundansi bila suatu atribut memiliki dua atau lebih nilai yang sama. Suatu nilai data dikatakan redundansi jika kita bisa menghapusnya tanpa menghilangkan informasi. 2.2.4.3 Integritas Data Tanggung jawab lain yang timbul sebagai konsekuensi dari data bersama adalah basis data perlu menunjukkan integritas. Basis data perlu secara akurat mencerminkan seluruh bidang yang mencoba pada model. Jika ada perubahan antar objek yang ada di dalam dunia nyata diwakili oleh data di dalam basis data, maka perubahan yang ada maka data lain yang terkait di dalam basis data tersebut akan saling terkait.
13 2.2.4.4 Keamanan Data Salah satu cara untuk memastikan integritas basis data adalah dengan melakukan pembatasan akses atau pengamanan basis data. Cara tersebut telah dilakukan pada sistem basis data dengan penjelasan atas beberapa detail pada pengguna yang diberi hak, atau umumnya lebih kepada bagian basis data.
2.2.4.5 Abstraksi Data Suatu basis data dipandang sebagai model nyata. Informasi yang disampaikan di dalam basis data pada umumnya merupakan usaha untuk menyajikan sifat dari objek sesungguhnya. Sebagai contoh, sebuah basis data akademik dimaksudkan untuk merekam rincian aktivitas universitas yang relevan. Dikatakan relevan karena tidak ada basis data yang bisa menyimpan semua sifat objek sesungguhnya. Oleh karena itu, suatu basis data adalah suatu abstraksi dari dunia nyata.
2.2.4.6 Independensi Data Salah satu konsekuensi dari abstraksi adalah gagasan untuk buffering data dari proses yang menggunakan data. Sebagai contoh, suatu perubahan dibuat dalam beberapa bagian basis data dasar. Tidak ada program aplikasi yang menggunakan data yang perlu diubah. Dengan demikian jika suatu perubahan dibuat ke dalam beberapa bagian dari suatu system aplikasi maka semestinya perubahan itu tidak memengaruhi struktur data dasar yang digunakan oleh aplikasi.
14 2.2.5
Siklus Hidup Aplikasi Basis Data atau Database Application Lifecycle Untuk merancang aplikasi sistem basis data diperlukan tahapan-tahapan terstruktur yang harus diikuti yang dinamakan dengan Siklus Hidup Aplikasi Basis Data (Database Application Lifecycle) atau disingkat dengan DBLC. Perlu diperhatikan bahwa tahap-tahap dari database application lifecycle tidak harus berurutan, namun melibatkan beberapa jenis pengulangan dari tahap sebelumnya melalui putaran balik (back loops).
15 Database Planning System Definition Requirements Collection and Analysis
Conceptual database design DBMS selection (optional)
Application design Logical Database Design Physical Database Design
Implementation
Prototyping (optional)
Data conversion and loading Testing Operational maintenance
Gambar 2.1 Database Application Lifecycle Connoly and Begg (2002, p272)
2.2.6
Perencanaan Basis Data Perencanaan basis data menurut Connolly dan Begg (2002, p273) adalah aktifitas manajemen yang mengizinkan tahap dari aplikasi basis data untuk didesain seefektif dan seefisien mungkin. Ada tiga pertimbangan utama dalam menyusun sebuah strategi sistem informasi, yaitu:
16 1.
Mengidentifikasi rencana dan sasaran (goal) perusahaan dengan mengikuti kebutuhan system informasi.
2. Mengevaluasi sistem informasi saat ini untuk menentukan kelebihan dan kekurangan. 3. Mempertimbangkan peluang IT yang dapat memberikan keuntungan kompetitif.
Tahapan dalam perencanaan basis data juga harus menjelaskan:
Mission statement dari proyek basis data. Mission statement ini menjelaskan tujuan utama aplikasi basis data, juga membantu menjelaskan tujuan proyek basis data, dan menyediakan maksud yang lebih jelas dalam pembuatan aplikasi basis data secara efektif dan efisien (Connolly, 2002, p274).
Mission objectives. Selain merumuskan tujuan dari sebuah proyek basis data, harus diperhatikan juga mengenai tugas apa saja yang harus didukung oleh basis data tersebut. Setiap Mission objective akan menjelaskan tugas tertentu yang harus didukung oleh basis data, dengan asumsi jika basis data mendukung mission objective, maka mission statementnya juga akan sesuai (Connolly, 2002, p274). Di dalam perencanaan basis data juga meliputi perkembangan standar yang menentukan bagaimana suatu data dikumpulkan, bagaimana format yang harus ditetapkan, lalu dokumentasi apa saja yang akan dibutuhkan, serta bagaimana desain dan implementasi harus dikerjakan nantinya.
17 2.2.6.1 Mendefinisikan Sistem Menurut Connolly dan Begg (2002, p274), mendefinisikan sistem adalah mendeskripsikan ruang lingkup dan batasan dari aplikasi sistem basis data dan sudut pandang user yang dominan.
2.2.6.2 Sudut Pandang user atau user view Sudut pandang user menurut Connolly dan Begg (2002, p275) adalah mendefinisikan apa saja kebutuhan dari aplikasi database dari perspektif tokoh yang spesifik (misalnya Manager atau supervisor) atau area aplikasi perusahaan (Seperti marketing, personalia, atau pengadaan barang).
2.2.6.3 Pengumpulan Kebutuhan dan Analisis Dalam tahap ini dilakukan proses pengumpulan dan analisa informasi tentang bagian organisasi yang didukung oleh aplikasi basis data, dan menggunakan informasi ini untuk mengidentifikasi kebutuhan pengguna terhadap sistem yang baru (Connolly, 2002, p276).
Ada 3 pendekatan untuk merancang kebutuhan dari aplikasi basis data dengan banyak sudut pandang user, yaitu:
1. Pendekatan terpusat (Centralized Approach) Pendekatan terpusat menggabungkan setiap sudut pandang user kedalam satu set kebutuhan untuk aplikasi basis data yang baru.
18 2. Pendekatan sudut pandang terintegrasi (View Integration Approach) Pendekatan sudut pandang terintegrasi melibatkan setiap sudut pandang user untuk digunakan untuk membangun model data yang terpisah yang merepresentasikan sudut pandang itu. Hasil dari data model lalu digabungkan pada saat tahap mendesain basis data. 3. Kombinasi dari dua pendekatan. Suatu proses resmi dalam menggunakan teknik-teknik seperti wawancara atau kuesioner untuk mengumpulkan fakta-fakta tentang system dan kebutuhan-kebutuhannya dinamakan dengan teknik factfinding (Connolly and Begg, 2002, p302). Ada lima kegiatan yang dipakai dalam teknik ini, yaitu: 1. Memeriksa dokumentasi. 2. Wawancara. 3. Mengamati operasional perusahaan (observasi). 4. Penelitian. 5. Studi Kepustakaan.
2.2.6.4
Database design Desain basis data adalah proses merancang desain dari basis data yang akan mendukung tujuan dan operasional perusahaan (Connolly dan Begg, 2002, p279). Dalam merancang suatu basis data, digunakan metodologi-metodologi yang membantu dalam tahap perencanaan basis data. Metodologi perancangan (Design Methodology) adalah pendekatan terstruktur dengan menggunakan prosedur, teknik, alat serta bantuan
19 dokumen untuk membantu dan memudahkan dalam proses perancangan. Dengan menggunakan teknik metodologi desain ini dapat membantu dalam merencanakan, mengatur, mengontrol, dan mengevaluasi database development project (Connolly dan Begg, 2002, p418).
Proses dalam metodologi perancangan dibagi menjadi tiga tahap: a.
Perancangan Basis Data Konseptual (Conceptual Database Design)
b.
Perancangan Basis Data Logikal (Logical Database Design)
c.
Perancangan Basis Data Fisik (Physical Database Design)
Menurut Connolly dan Begg, (2002, p279), ada dua pendekatan dalam perancangan basis data, yaitu:
Bottom-up Pendekatan ini dimulai dari tingkat dasar dari atribut (yakni property dari entity dan hubungan relasional) dimana melalui analisis gabungan antara atribut-atribut, dikelompokkan ke dalam relasi-relasi yang merepresentasikan tipe-tipe entity dan hubungan antara entity.
Top-down Pendekatan ini dimulai dari pengembangan model data yang terdiri dari beberapa hubungan relasional dan entity tingkat tinggi. Teori pendekatan perancangan desain basis data yang digunakan pada skripsi ini adalah menggunakan pendekatan TopDown Approach. Pendekatan ini berguna untuk mendesain basis
20 data yang kompleks dengan atribut yang banyak, dimana ditemukan kesulitan untuk membangun semua functional dependencies diantara atribut-atribut yang ada. Top-Down Approach diilustrasikan menggunakan konsep dari model hubungan entity (Entity Relationship ER model), dimulai dengan mengidentifikasikan entity-entiti dan hubungan diantara entity yang merupakan fokus penting dari perusahaan.
2.2.6.5
Pemilihan DBMS Pertimbangan dalam pemilihan DBMS dipengaruhi beberapa faktor:
2.2.6.6
Kemudahan penggunaan (Ease of use)
Kehandalan (Realibility)
Biaya (Cost)
Keamanan (Security)
Kompatibel (Compatibility)
Stabilitas vendor (Vendor Stability)
Pengembangan (Development)
Kebutuhan system (System Requirement)
Desain Aplikasi Desain aplikasi (application design) yaitu rancangan tampilan pengguna dan program aplikasi yang menggunakan dan memproses basis data.
21 Desain aplikasi dibagi menjadi dua aspek penting, yaitu:
Desain transaksi (transaction design) Menurut Connolly and Begg (2002, p551), transaksi dapat juga diartikan sebagai sebuah atau rangkaian aksi, yang dilakukan oleh seorang pengguna atau program aplikasi, yang mengakses atau mengubah isi dari basis data. Terdapat tiga tipe utama transaksi, antara lain: a.
Retrieval Transaction
b.
Update Transaction
c.
Mixed Transaction, gabungan antara Retrieval Transaction dan Update Transaction.
2.2.6.7
Desain Antarmuka (User Interface Design)
Protoyping Prototyping menurut Connolly and Begg (2002, p290) adalah proses pembuatan model pekerjaaan dari aplikasi basis data. Tujuan utama dari mengembangkan prototype aplikasi basis data adalah untuk mengizinkan user untuk mengidentifikasi fitur dari system yang bekerja baik, kurang lengkap atau jika memungkinkan untuk memberikan saran untuk meningkatkan maupun memberikan fitur baru kedalam aplikasi basis data.
22 Ada dua jenis strategi prototype yang umum digunakan menurut Connolly and Begg (2002, p292), yaitu: 1. Prototipe kebutuhan atau requirement prototyping. 2. Prototipe evolusi atau evolutionary prototyping.
2.2.6.8
Implementasi Implementasi menurut Connolly and Begg (2002, p292) adalah proses perealisasian fisik dari desain basis data dan desain aplikasi. Proses implementasi basis data dijalankan menggunakan Data Definition Language (DDL) dari DBMS yang dipilih atau berdasarkan antarmuka pengguna, dimana memberikan fungsionalitas yang sama bersama dengan penyembunyian kalimat-kalimat DDL level rendah. Program
aplikasi
diimplementasikan
menggunakan
bahasa
pemprograman ketiga maupun keempat (3GL atau 4GL) yang dipilih. Bagian dari program aplikasi ini adalah transaksi basis data, yang diimplementasikan menggunakan Data Manipulation Language (DML) dari DBMS yang dipilih.
2.2.6.9
Perubahan Terhadap Pengambilan Data Perubahan dan pengambilan data menurut Connolly dan Begg (2002, p292) adalah proses pemindahan semua data yang ada ke dalam basis data yang baru dan mengubah semua aplikasi yang ada untuk dijalankan ke basis data yang baru.
23 2.2.6.10
Testing Testing menurut Connolly dan Begg (2002, p293) adalah proses pengeksekusian program aplikasi dengan tujuan untuk mencari kesalahan.
2.2.6.11
Perawatan Operasional Perawatan operasional menurut Connolly and Begg (2002, p293) adalah proses monitoring dan perawatan system setelah proses instalasi. Aktifitas-aktifitas yang terlibat dalam tahap ini adalah: 1. Memonitor performa dari system. 2. Merawat dan menigkatkan aplikasi basis data. Proses monitoring berlanjut sepanjang umur dari aplikasi basis data dan dalam suatu waktu akan mengarah ke reorganisasi dari basis data untuk memenuhi kebutuhan yang berubah.
2.2.7
Teori Metodologi Perancangan Basis Data Metodologi
perancangan
adalah
pendekatan
terstruktur
yang
menggunakan prosedur, teknik, alat-alat, dan dokumentasi untuk memproses dan memfasilitasi proses perancangan (Connolly, 2002, p418).
24 Metodologi perancangan basis data terbagi dalam tiga fase utama, yaitu: 2.2.7.1 Perancangan Basis Data Konseptual Perancangan Basis Data Konseptual adalah proses membangun suatu model informasi yang digunakan di dalam perusahaan atau organisasi yang tidak tergantung dari semua pertimbangan fisik (Connolly, 2002, p419). Perancangan basis data konseptual dengan cara membangun model local konseptual data untuk setiap view. Bertujuan untuk memecah rancangan menjadi tugas-tugas yang lebih mudah untuk diatur dengan memeriksa sudut pandang pengguna yang berbeda-beda dari perusahaan atau organisasi (Connolly, 2002, p421). Pada tahap pembuatan model local konseptual data, langkah-langkah yang dilakukan adalah sebagai berikut: 2.2.7.1.1
Mengidentifikasi tipe-tipe entity Bertujuan untuk mengidentifikasi tipe-tipe entity utama yang dibutuhkan. Setelah teridentifikasi, entiti diberi nama-nama yang tepat dan jelas bagi pengguna. Masukkan nama dan penjelasan dari entity ke dalam kamus data.
2.2.7.1.2
Mengidentifikasi tipe relasi Bertujuan untuk mengidentifikasi relasi-relasi yang penting yang ada diantara tipe-tipe entiti yang telah diidentifikasi. Nama dari suatu relasi menggunakan kata kerja seperti mempunyai, mendaftar dan lainlain. Hal-hal yang perlu dilakukan dalam tahap ini adalah:
25
Menggambarkan
entiti-entiti
yang
sudah
diidentifikasi
dan
bagaimana entiti-entiti itu berelasi dengan menggunakan diagram ER (Entity-Relationship).
Menentukan batasan multiplicity dari tiap-tiap relasi. Multiplicity adalah angka (atau perkiraan) dari kemungkinan hubunganhubungan dengan objek lain pada suatu entity yang mungkin berelasi ke suatu hubungan dengan objek lain dari suatu tipe entity yang terhubung melalui relasi istimewa (Connolly, 2002, p344).
Memeriksa apakah tiap entiti setidaknya terhubung dalam satu hubungan dengan entity lain.
2.2.7.1.3
Mendokumentasikan tipe relasi.
Mengidentifikasi dan menghubungkan atribut dengan tipe entity atau relasi Bertujuan untuk menghubungkan atribut-atribut dengan entity atau relasi yang sesuai. Hal-hal yang harus diperhatikan dalam membuat atribut: 9 Menentukan apakah suatu atribut termasuk single-valued atau multi-valued. Multi-valued adalah suatu atribut yang dapat memiliki lebih dari satu nilai pada suatu objek. 9 Masalah-masalah potensial. Ketika mengidentifikasi entity, relasi, dan atribut, tidaklah wajar jika terlihat bahwa satu atau lebih entity, relasi atau atribut telah
26 dihilangkan dari pilihan awal. Untuk kasus ini, kembali ke langkahlangkah sebelumnya, dokumentasikan entity baru, relasi atau atribut dan periksa kembali semua relasi-relasi yang berhubungan. 9 Dokumentasi atribut Dokumentasikan semua informasi dari masing-masing atribut yang meliputi: a. Nama dan deskripsi atribut b. Tipe data dan ukuran field c. Alias atau nama lain dari atribut d. Apakah atribut tersebut multi-valued, jika iya, tentukan simpleattributes yang membentuk composite-attributes.
2.2.7.1.4
Menentukan atribut domain Bertujuan untuk menentukan batasan nilai suatu atribut dalam model data konseptual lokal. Contohnya yaitu menentukan nilai atribut Jns_Kelamin pada entity karyawan dengan ‘L’ atau ‘P’ atau nilai atribut Kd_Karyawan pada entity karyawan yang ditentukan panjangnya 10 digit, dimana 1 digit pertama berupa huruf abjad dan 9 digit terakhir berupa angka dari 1-999.
2.2.7.1.5
Menentukan primary key Bertujuan untuk mengidentifikasi candidate key dari setiap entity dan, jika ada lebih dari satu candidate key, tentukan salah satu untuk menjadi primary key. Candidate key adalah atribut yang ditentukan
27 secara minimal dari suatu entity yang secara unik mengidentifikasi setiap hubungan dari entity tersebut.
2.2.7.1.6
Mempertimbangkan penggunaan konsep pemodelan yang lebih baik (langkah pilihan) Bertujuan
untuk
mempertimbangkan
penggunaan
konsep
pemodelan yang lebih baik, seperti spesialisasi atau generalisasi, aggregasi dan komposit. Spesialisasi dan generalisasi adalah proses pengelompokkan beberapa entity dan menghasilkan entity yang baru. Spesialisasi
menggunakan
proses
top-down
dan
generalisasi
menggunakan proses bottom-up.
2.2.7.2 Perancangan Basis Data Logikal Perancangan Basis Data Logikal adalah proses membangun suatu model informasi yang digunakan oleh suatu perusahaan atau organisasi berdasarkan model data yang spesifik, tetapi tidak tergantung dari DBMS (Database Management System) khusus dan pertimbangan fisikal lainnya (Connolly, 2002, p441). Perancangan basis data logikal dengan cara membangun dan memvalidasi model local logical data untuk setiap view. Bertujuan untuk membangun model local logical data dari model local konseptual data yang mewakili suatu view khusus perusahaan atau organisasi. (Connolly, 2002, p441).
28 Pada Perancangan Basis Data Logikal, langkah-langkah yang dilakukan adalah:
2.2.7.2.1
Menghilangkan features yang tidak kompatibel dengan model relasional (langkah pilihan) Bertujuan untuk memperbaiki model local konseptual data dengan menghilangkan features yang tidak kompatibel dengan model relasional. Langkah-langkah yang harus dilakukan adalah: 1. Menghilangkan many-to-many (*:*) relationship types 2. Menghilangkan atribut multi-valued
2.2.7.2.2
Mendefinisikan integrity constraints Integrity constraint adalah batasan yang digunakan untuk menjaga agar basis data tidak menjadi inkonsisten.
Ada 5 tipe integrity constraints:
Required data (data/nilai yang valid)
Batasan domain attribute
Entity integrity (primary key tidak boleh null)
Referential integrity (foreign key pada suatu entity harus sesuai dengan candidate key pada entity lain)
29 2.2.7.3 Perancangan Basis Data Fisikal Perancangan basis data fisikal adalah proses untuk menghasilkan gambaran implementasi dari basis data di tempat penyimpanan kedua. Menjelaskan dasar dari relasi, pengorganisasian file dan indeks yang digunakan agar akses ke data menjadi efisien, dan integrity constraints yang berhubungan dan faktor keamanan (Connolly, 2002, p478). Pada perancangan basis data fisikal hal yang dilakukan adalah menterjemahkan model local global data untuk DBMS yang dituju. Bertujuan untuk menghasilkan suatu skema relasional basis data dari model global logical data yang dapat diimplementasikan di DBMS yang dituju (Connolly, 2002, p479). Pada perancangan basis data fisikal, tiga langkah yang akan dilakukan adalah:
2.2.7.3.1
Merancang relasi dasar Bertujuan untuk menentukan bagaimana merepresentasikan dasar relasi yang teridentifikasi dalam model global logical data di DBMS yang dituju. Untuk memulai proses perancangan fisikal, langkah awal adalah mengumpulkan dan memahami informasi mengenai relasi yang dihasilkan selama perancangan database logical. Informasi yang dibutuhkan dapat diperoleh dari kamus data dan definisi dari relasi dijelaskan dengan menggunakan Database Design Language (DBDL). Untuk setiap relasi yang teridentifikasi di model global logical data, didapatkan penjelasan dari relasi meliputi:
30 a) Nama dari relasi b) Daftar dari simple attributes dalam brackets c) Primary key dan letaknya yang tepat, alternate keys (AK) dan foreign keys (FK). d) Referential integrity constraints untuk setiap foreign keys yang teridentifikasi. Dari kamus data, yang didapatkan penjelasan dari setiap atribut : a) Domain, terdiri dari tipe data, panjang, dan setiap constraints dari domain. b) Apakah atribut dapat memiliki nilai NULL. Langkah selanjutnya adalah mengimplementasikan relasi dasar. Keputusan untuk mengimplementasikannya tergantung dari DBMS yang dituju. Perancangan dari relasi dasar harus didokumentasi seluruhnya bersama dengan alasan kenapa memilih rancangan yang diajukan.
2.2.7.3.2
Merancang constraints Bertujuan untuk merancang constraints untuk DBMS yang dituju. Untuk merancangnya, tergantung kepada DBMS yang akan digunakan. Perancangan constraints (representasi fisikal) harus didokumentasikan seluruhnya. Dokumentasikan secara khusus alasan kenapa memilih salah satu dimana terdapat banyak pilihan. Bertujuan untuk menentukan pengorganisasian file yang optimal untuk menyimpan relasi dasar dan indeks yang dibutuhkan untuk mendapatkan performa yang baik.
31 Ada beberapa factor yang dapat kita gunakan untuk meningkatkan efisiensi: 1. Transaction throughput 2. Response time 3. Disk storage Untuk meningkatkan performa, ada beberapa hardware components yang harus diperhatikan mengenai bagaimana hardware components berinteraksi dan memperngaruhi performa dari system. 1. Main memory 2. CPU 3. Disk I/O Prinsip-prinsip dasar untuk pendistribusian data melalui disks untuk menghindari masalah dalam transfer data adalah sebagai berikut: a) File system operasi harus dipisahkan dari file basis data. b) File utama basis data harus dipisahkan dari file indeks. c) File recovery log harus dipisahkan dari basis data yang sedang digunakan. 4. Network
32 Masih didalam perancangan basis data fisikal, langkah-langkah yang akan dilakukan selanjutnya adalah:.
2.2.7.3.3
Memilih indeks Untuk
menentukan
apakah
penambahan
indeks
akan
meningkatkan performa dari sistem. Satu pendekatan untuk memilih pengorganisasian file yang tepat untuk suatu relasi adalah dengan mempertahankan table tidak terurut susunannya dan membuat sebanyak secondary indexes yang diperlukan. Oleh karena itu, pilih atribut untuk ordering atau clustering tabel yaitu: 1) Atribut yang sering digunakan untuk join operations untuk membuat lebih efisien. 2) Atribut yang sering digunakan untuk mengakses table dalam relasi didalam susunan atribut.
2.2.7.3.4 Memperkirakan kapasitas disk yang diperlukan Bertujuan untuk menentukan kapasitas penyimpanan disk yang dibutuhkan dalam basis data. Untuk memperkirakan berapa kapasitas yang dibutuhkan berdasarkan ukuran dari setiap tabel dalam relasi. Hal ini dilakukan dengan merancang pandangan pengguna yang bertujuan
untuk
merancang
pandangan
pengguna
yang
telah
teridentifikasi selama pengumpulan dan analisis kebutuhan dalam aplikasi relasional basis data lifecycle. Sebagai contoh adalah staf yang
33 terdiri dari dua pandangan pengguna, yaitu pandangan Supervisor dan pandangan Asisten. Berikutnya adalah merancang keamanan, membatasi pengaksesan basis data oleh users yang tidak berhak dan menspesifikasi user terhadap basis data yang dapat diakses. Sistem keamanan menutupi akses dan penggunaan basis data di system level seperti username dan password. Data keamanan menutupi akses dan penggunaan objek basis data dan aksi yang user miliki dalam objek. Lalu dengan mempertimbangkan pengenalan dan redudansi control, pada langkah physical data design ini mempertimbangkan denormalisasi skema relasional untuk meningkatkan performa. Hasil dari normalisasi adalah perancangan basis data logikal secara struktural konsisten dan menekan jumlah redudansi. Faktor yang perlu dipertimbangkan adalah: •
Denormalisasi membuat implementasi lebih kompleks
•
Denormalisasi selalu mengorbankan fleksibilitas
•
Denormalisasi akan membuat cepat dalam retrieve data tetapi lambat dalam updates. Ukuran performa dari suatu perancangan basis data dapat dilihat
dari sudut pandang tertentu yaitu melalui pendekatan efisiensi data (Normalisasi) atau pendekatan efesiensi proses (Denormalisasi). Efesiensi data dimaksudkan untuk meminimalkan kapasitas disk dan
34 efesiensi proses dimaksudkan untuk mempercepat proses saat retrieve data dari basis data. Langkah berikutnya dengan memonitor dan memasang sistem operasi
yang
bertujuan
untuk
memonitor
sistem
operasi,
meningkatkan performa dan menentukan perancangan sistem yang tepat atau menggambarkan perubahan kebutuhan.
2.2.8
Entity Relationship Modelling (ER Modelling) Model ER adalah pendekatan top-down dalam perancangan basis data yang dimulai dengan mengidentifikasi data-data penting yang disebut entiti dah hubungan (relationship) antara data-data tersebut harus dipresentasikan dalam suatu model (Connolly andd Begg, 2002, p.330).
2.2.8.1 Entity Type Entiti merupakan kumpulan dari objek atau event yang mempunyai sifatsifat yang sama, yang diidentifikasi oleh perusahaan serta memiliki keberadaannya
yang
independent
(Connolly,
2002,
p.331).
Entiti
dilambangkan dengan sebuah kotak yang dibubuhi nama dari entiti tersebut didalam kotak tersebut. Dalam UML huruf utama entiti selalu menggunakan huruf kapital. Setiap objek yang diidentifikasikan secara unik disebut entitiy occurrence (Connolly, 2002, p.333).
35 2.2.8.2 Relationship Type Tipe relasi merupakan suatu set asosiasi yang memiliki arti di antara tipetipe entiti (Connolly, 2002, p.334). Tipe-tipe relasi diberi nama yang mendeskripsikan fungsinya. Representasi diagram dari tipe relasi ditunjukkan dengan garis yang menghubungkan tipe entiti yang bersosialisasi dan diberi label dengan nama relasi.
•
Derajat Tipe Relasi Entiti yang dilibatkan dalam tipe relasi tertentu dinyatakan sebagai partisipan dalam relasi tersebut. Jumlah partisipan dalam relasi tersebut disebut derajat relasi. Relasi dengan derajar dua disebut binary. Relasi dengan derajat tiga disebut ternary. Relasi dengan derajat empat disebut quarternary.
•
Relasi Rekursif Merupakan tipe relasi dimana entity yang sama berpartisipasi lebih dari sekali dengan peranan yang berbeda.
2.2.8.3 Atribut Atribut merupakan properti tertentu dari sebuah entiti atau tipe relasi (Connolly, 2002, p.331). Contohnya, tipe entiti pegawai, bisa memiliki atribut kode pegawai, nama pegawai, jabatan dan gaji. Sedangkan attribute domain adalah sekumpulan nilai yang dibolehkan untuk satu atau lebih atribut. Atribut dapat diklasifikasikan sebagai berikut
36 2.2.8.3.1 Atribut sederhana dan Komposit Atribut sederhana merupakan atribut yang terdiri dari satu komponen tunggal yang keberadaannya tidak ketergantungan, atribut sederhana tidak dapat dipecah menjadi komponen-komponen yang lebih kecil lagi. Contoh atribut sederhana adalah jabatan dan gaji dari entiti Pegawai. Atribut komposit merupakan atribut yang dibentuk dari banyak komponen. Contohnya atribut alamat yang dapat dipecah menjadi atribut jalan, kota, dan kodepos.
2.2.8.3.2 Atribut Single-valued dan Multi-valued Atribut Single-valued merupakan atribut yang menyimpan nilai tunggal untuk setiap kejadian dari tipe entiti. Kebanyakan atribut adalah Single-valued. Atribut Multi-valued merupakan atribut yang menyimpan banyak nilai untuk setiap kejadian dari tipe entiti.
2.2.8.3.3 Atribut turunan Atribut turunan merupakan atribut dimana nilainya diperoleh atau diturunkan dari nilai atribut atau sekumpulan atribut lainnya, dan tidak harus dari tipe entiti yang sama.
37 •
Keys
•
Simple Key Simple Key suatu kunci yang dibentuk oleh satu atribut
•
Candidate Key Candidate Key merupakan sekumpulan minimal atribut yang secara unik untuk mengindentifikasi setiap kejadian dari tipe entity.
•
Composite Key Composite Key merupakan key yang terdiri dari dua atau lebih atribut, dimana nilai atribut tersebut bila digabungkan secara bersama-sama baru akan dapat mengindentifikasi sebuah record unik untuk tipe entiti tersebut.
•
Primary Key Primary Key merupakan key yang terpilih secara unik untuk mengindentifikasi setiap kejadian dari tipe entiti.
•
Alternate Key Alternate Key merupakan key yang tidak dapat dipakai sebagai kunci primer (Primary Key).
•
Foreign Key Foreign Key merupakan suatu atribut yang melengkapi suatu hubungan (relationship) yang menunjukkan ke induknya.
38 2.2.8.4 Batasan Struktur (Structural Constraints) Batasan-batasan yang menggambarkan pembatasan pada relationship seperti yang ada pada real world harus diterapkan pada tipe entiti yang ikut serta pada sebuah relationship dinamakan multiplicity (Connolly, 2002, p.344). Multiplicity adalah jumlah occurance yang mungkin terjadi pada suatu relationship (Connolly, 2002, p.344). Derajat yang biasanya digunakan pada suatu relationship adalah binary relationship, yang terdiri atas : •
One-to-One (1:1) Relationship
•
One-to-Many (1: *) Relationship
•
Many-to-Many (*:*)Relationship
2.2.8.4.1
4th GL (Fourth Generation Language) 4th GL atau biasa disebut sebagai Bahasa Generasi Keempat adalah bahasa komputer yang diciptakan untuk mengimprovisasi produktivitas dari Bahasa Generasi Ketiga (3rd GL). Fitur utama yang terdapat pada 4th GL adalah sistem basis data yang sudah terintegrasi, bahasa query, pembuatan laporan dan fasilitas definisi layar. Sedangkan beberapa fitur tambahan diantaranya adalah pembangkit grafis, fungsi decision support dan fungsi analisis statistik. Menurut Connolly dan Begg (2002, p.42) bila dibandingkan dengan 3rd GL yang merupakan bahasa pemrograman procedural, 4th GL
merupakan
bahasa
pemrograman
non
procedural:
mendefinisikan apa yang akan dilakukan, dan bukan bagaimana.
user
39 Keunggulan yang ditawarkan oleh 4th GL adalah line of code yang lebih sedikit dibandingkan 3rd GL dan peningkatan produktivitas. Contoh dari Bahasa Gererasi Keempat adalah SQL dan QBE 4th GL mencakup: •
Bahasa presentasi, seperti bahasa query dan report generator.
•
Bahasa spesialisasi, seperti spreadsheet dan bahasa basis data.
•
Generator aplikasi yang mendefinisikan, meng-update, dan mengambil data dari basis data untuk membangun aplikasi.
•
Bahasa dengan level yang sangat tinggi (very high-level language) yang digunakan untuk membuat kode aplikasi.
2.2.8.4.2
State Transition Diagram (STD) Dalam perancangan sebuah system diperlukan adanya alat Bantu yang dapat menggambarkan sifat ketergantungan system, yaitu STD. STD digunakan untuk menuliskan urutan dan pergantian dari layer yang dapat terjadi ketika pengguna system berada pada terminal. Komponen yang digunakan STD yaitu, State
State adalah suatu kondisi dari suatu system pada suatu saat yang digambarkan dengan segi empat.
40
Transition
Transition
merupakan
suatu
petunjuk
perubahan keadaan yang disimbolkan dengan panah.
2.3 SQL (Structured Query Language)
2.3.1 Pengertian SQL Menurut Kadir (2002, p.101) SQL singkatan dari Structured Query Language. Dalam bahasa inggris sering dibaca sebagai SEQUEL. SQL merupakan bahasa query standar yang digunakan untuk mengakses basis data relasional.
2.3.2 Kelompok Pernyataan SQL Pernyataan SQL dapat dikelompokkan menjadi 5 kelompok, DDL, DML, DCL pengendali transaksi, dan pengendali programatik.
2.3.2.1 DDL (Data Definition Language) Menurut Connolly dan Begg (2002, p.40), DDL adalah bahasa yang memungkinkan
seorang
administrator
basis
data
dan
user
untuk
mendeskripsikan dan menentukan entiti, atribut dan relasi yang dibutuhkan
41 aplikasi, bersama dengan semua batasan-batasan integritas dan keamanan (integrity and security constraints). Menurut Subekti (1997, p.20), DDL (Data Definition Language) adalah bahasa yang dipakai untuk menjelaskan objek dari basis data seperti terlihat oleh pengguna (DBA, programmer, pengguna akhir). DDL dipakai untuk mendefinisikan kerangka basis data (berorientasi pada tipe dari objek basis data). DDL
merupakan
kelompok
perintah
yang
berfungsi
untuk
mendefinisikan attribut-attribut basis data, table, atribut (kolom), batasanbatasan terhadap suatu attribut, serta hubungan antar tabel. Beberapa statement DDL adalah CREATE TABLE, ALTER TABLE, DROP TABLE, CREATE INDEX dan DROP INDEX.
2.3.2.2 DML (Data Manipulation Language) Menurut Connolly (2002, p.41), DML (Data Manipulation Language) adalah suatu bahasa yang menyediakan kumpulan operasi yang akan diinginkan untuk mendukung operasi manipulasi data utama pada data yang diperoleh dalam basis data. Menurut Subekti (1997, p.21) DML (Data Manipulation Language) adalah bahasa yang dipakai untuk memanipulasi (memasukkan, merubah, menghapus) obyek data dari basis data. DML dipakai untuk operasi terhadap isi basis data, jadi berorientasi pada occurence basis data. Perintah yang masuk DML adalah SELECT, INSERT, UPDATE dan DELETE.
42 Menurut Connolly (2002, p.41-p.42), kita dapat membedakan DML menjadi 2 tipe yang berbeda yaitu: A. Procedural DML Procedural DML adalah suatau bahasa yang memungkinkan pengguna (umumnya programmer) untuk memberi instruksi ke sistem mengenai data apa yang dibutuhkan dan bagaimana cara pemanggilannya (retrieve). Artinya pengguna harus menjelaskan operasi pengaksesan data yang akan digunakan dengan menggunakan prosedur yang ada untuk mendapatkan informasi yang dibutuhkan. B. Non-Procedural DML Non-Procedural DML adalah bahasa yang memungkinkan pengguna untuk menentukan data apa yang dibutuhkan dengan menyebutkan spesifikasinya tanpa menspesifikasi bagaimana cara mendapatkannya.
2.3.2.3 DCL (Data Control Language) DCL berisi perintah-perintah untuk mengendalikan pengaksesan data. Pengendalian dapat dilakukan per pengguna, per tabel, per kolom, maupun per operasi yang boleh dilakukan. Perintah-perintah yang termasuk DCL adalah GRANT, REVOKE, dan LOCK TABLE.
43 2.3.2.4 Pengendalian Transaksi Pengendalian transaksi adalah perintah-perintah yang berfungsi untuk mengendalikan pengeksekusian transaksi. Perintah yang termasuk dalam kategori ini adalah COMMIT dan ROLLBACK.
2.3.2.5 Pengendali Programatik Pengendali
programatik
mencakup
pernyataan-pernyataan
yang
berhubungan dengan pemanfaatan SQL dalam bahasa lain (SQL yang dilekatkan).
Pernyataan-pernyataan
ini
bisa
dipakai
pada
bahasa
konvensional (3rd GL) seperti COBOL. Yang termasuk dalam pengendalian programatik ialah CLOSE, DECLARE, FETCH, dan OPEN.
2.4 Model Data Model merupakan media penyimpan dari sebuah perancangan. Perancang sistem akan mengembangkan suatu model untuk mewujudkan ide yang ada serta untuk mempelajari semua aspek dalam sebuah perancangan basis data.
2.4.1 Kegunaan Model Model bisa dipergunakan untuk mengkomunikasikan konsep dalam pikiran manusia sehingga orang lain dapat:
Berkomunikasi
Mengkategorikan
Menerangkan
44
Menentukan
Menyelidiki
Melibatkan
Menganalisis
Meniru Tujuannya adalah untuk membuat model yang baik serta memiliki banyak
kegunaan, mudah dimengerti oleh pengguna, dan berisi segala rincian yang diperlukan oleh pengembang untuk membangun sistem basis data.
2.4.2 Definisi Model Data Definisi Model Data oleh Date ditafsirkan sebagai berikut. Model data didefinisikan terdiri dari tiga komponen: 1.
Suatu kumpulan jenis objek data, yang membentuk dasar blok bangunan untuk beberapa basis data yang menyesuaikan diri terhadap model.
2.
Suatu kumpulan dari aturan integritas umum, yang berisi sekumpulan kejadian jenis objek yang secara sah bisa terlihat dalam beberapa basis data.
3.
Suatu kumpulan operator, yang bisa diterapkan sebagai kejadian objek untuk permintaan dan tujuan lain.
2.4.3 Model Data Sebagai Arsitektur Istilah model data digunakan untuk mengacu pada sekumpulan prinsip umum untuk menangani data (Tsichizris dan Lochovsky. 1982). Di sini, orangorang menyatakan model data relasional, model data hierarki, atau model data berorientasi objek.
45 Sekumpulan prinsip tersebut menggambarkan suatu model data yang bisa dibagi menjadi tiga bagian utama: −
Data definition – sekumpulan prinsip yang terkait dengan cara data tersusun, melibatkan penjelasan suatu organisasi untuk data (sekumpulan templates untuk organisasi data)
−
Data manipulation – sekumpulan prinsip yang terkait dengan cara pengoperasian data, berhubungan dengan proses untuk mengetahui pengaksesan data dan bagaimana basis data tersebut diubah.
−
Data integrity – sekumpulan prinsip yang terkait dengan gagasan mengenai alasan terjadinya perubahan valid dan perubahan invalid pada data.
2.4.4 Sistem Manajemen Basis Data atau Database Management System (DBMS) Database Management System (DBMS) adalah suatu system perangkat lunak yang dapat mendefinisikan, membuat, memelihara, dan mengontrol akses ke basis data (Connolly, 2002, p.16). Menurut Sillberschatz dan F.Korth (2002, p1), DBMS adalah koleksi daru data yang tidak berelasi dan satu set program untuk mengakses data-data itu. Pada intinya DBMS memiliki 2 bagian utama, yakni DDL dan DML. Menurut (Connolly, 2002, p.40). Data Definition Language (DDL) adalah suatu bahasa yang memperbolehkan database administrator (DBA) atau user untuk mendeskripsikan nama dari suatu entity, atribut, dan relasi data yang diminta oleh aplikasi bersamaan dengan integritas data dan kemanan datanya. Sedangkan untuk memanipulasi data yang tersimpan di dalam basis data menggunakan Data
46 Manipulation Language (DML). Definisi dari DML menurut Connolly (2002, p.41) adalah suatu bahasa yang memberikan fasilitas pengoperasian data yang ada dalam basis data.
Pengoperasian data yang akan dimanipulasi biasanya meliputi: 1.
Penambahan data baru kedalam basis data.
2.
Modifikasi data yang disimpan dalam basis data.
3.
Pengambilan data yang terdapat dalam basis data.
4.
Penghapusan data dari basis data.
Menurut Connolly dan Begg (2002, p.16), secara umum, DBMS menyediakan beberapa fasilitas, yaitu: 1.
Mengizinkan pengguna untuk mendefinisikan basis data, umumnya menggunakan Data Definition Language (DDL).
2.
Mengizinkan pengguna untuk memasukkan, mengubah, menghapus data dari basis data, umumnya menggunakan Data Manipulation Language (DML).
3.
DBMS memberikan akses yang terkontrol kedalam basis data.
Fungsi dari DBMS antara lain adalah: 1.
Sebagai tempat penyimpanan, pengambilan, dan perubahan data.
2.
Sebagai catalog yang diakses pengguna.
3.
Dukungan terhadap transaksi. Sebuah DBMS harus menyediakan mekanisme yang membuat semua perubahan berhubungan pada sebuah transaksi.
47 4.
Pengontrolan konkurensi Sebuah DBMS harus menyediakan mekanisme dimana basis data dirubah secara benar pada saat banyak pengguna sedang merubah data pada basis data secara bersamaan.
5.
Perbaikan setelah kegagalan Sebuah DBMS harus menyediakan mekanisme untuk memperbaiki basis data pada saat basis data sedang mengalami kerusakan.
6.
Hak akses Sebuah DBMS harus menyediakan mekanisme dimana hanya pengguna yang memiliki hak dapat mengakses basis data.
7.
Mendukung komunikasi data Sebuah DBMS dapat diintegrasikan dengan software komunikasi.
8.
Integritas Sebuah DBMS harus bisa meyakinkan bahwa antara data di basis data dan perubahan pada data mengikuti peraturan.
9.
Independensi data Sebuah DBMS harus menyertakan fasilitas untuk mendukung program independent dari struktur actual dari basis data.
10. Utilitas DBMS harus menyediakan fasilitas utilitas.
48 Menurut Connolly dan Begg (2002, p.25-p.30), ada beberapa keuntungan dan kerugian dari DBMS. Keuntungan dari DBMS antara lain: 1. Kontrol terhadap pengulangan data (data redundancy). 2. Konsistensi data 3. Menyimpan lebih banyak informasi dari data yang sama 4. Pembagian data (Sharing of data) 5. Menambah keamanan data 6. Menambah integritas data 7. Penetapan standarisasi 8. Lebih ekonomis 9. Menyeimbangkan persyaratan yang bertentangan 10. Memperbaiki akses dan respon data 11. Meningkatkan produktivitas 12. Meningkatkan pemeliharaan melalui independensi data 13. Meningkatkan pengaksesan data secara bersama-sama (concurrency) 14. Meningkatkan backup dan pelayanan perbaikan (recovery services) Sedangkan kerugian dari DBMS antara lain: 1. Kompleksitas 2. Ukuran (size) 3. Biaya dari DBMS 4. Biaya dari penambahan hardware 5. Biaya konvensi 6. Performa 7. Dampak besar terhadap suatu kegagalan
49 2.5 Teori Pendukung
2.5.1 Bagan Alir Data Bagan Alir Data adalah suatu model yang menggambarkan aliran data dan proses untuk mengolah data dalam suatu sistem. (Mulyadi, 2001, p57).
Simbol untuk pembuatan bagan alir dokumen (Document Flowchart):
Dokumen
Penghubung pada halaman yang sama (on-page connector):
Penghubung pada halaman yang berbeda (off-page connector)
Kegiatan Manual
Arsip Sementara
Arsip Permanen Ya
Tidak
Keputusan Garis Alir (flowline)
50
Mulai/Berakhir (terminal)
2.5.2 Data Flow Diagram (DFD) Menurut (McGraw-Hill, 2004, 357), Data Flow Diagram adalah gerakan/aliran data diantara system dengan lingkungannya atau diantara 2 proses di dalam sistem. Aliran data juga merepresentasikan dalam pembuatan, pembacaan, penghapusan ataupun pengupdate-an data pada suatu file atau database. Menurut McLeod (2001, p 401), Data Flow Diagram (DFD) adalah representasi grafis dari system yang menggunakan sejumlah symbol-simbol untuk mengilustrasikan bagaimana aliran data melewati proses-proses yang saling berhubungan.
Terdapat empat symbol DFD, yaitu :
Terminal : Menunjukkan sumber dan tempat tiba data
Proses : Pelaksanaan tugas atau fungsi
Penyimpanan Data : Tempat penyimpanan data Aliran Data : Saluran komunikasi
51 DFD dibagi yaitu : 1. Diagram Hubungan Menggambarkan hubungan system yang sedang dianalisis dengan eksternal entitinya. 2. Diagram Nol Menggambarkan proses-proses penting yang ada pada sistem yang dianalisis dan yang akan dibuat. 3. Diagram Rinci Menggambarkan proses-proses yang lebih rinci mengenai system yang dianalisis dan yang akan dirancang.
2.5.3 Pengertian Rumah Sakit Rumah Sakit adalah institusi yang menyediakan kegiatan medis, surgical, obstetrical care, pada seorang pasien di rumah sakit ini dioperasikan oleh pemerintah pusat atau pemerintah bagian, badan usaha setempat, atau badan yang diizinkan dari bagian yang berwenang. (Goyal, 1998, p3).
2.5.4 Tugas dan Fungsi Rumah Sakit •
Tugas RS (SK Menkes 983/1992): Melaksanakan upaya kesehatan secara berdaya guna dan berhasil guna dengan mengutamakan upaya penyembuhan dan pemulihan yang dilaksanakan secara serasi dan terpadu dengan upaya peningkatan pencegahan serta melaksanakan upaya rujukan.
52 •
Fungsi RS: Menyelenggarakan pelayanan medik, penunjang medik dan non medik pelayanan dan asuhan keperawatan, rujukan, pendidikan dan pelatihan, administrasi umum dan keuangan.
2.5.5 Jenis Pelayanan di Rumah Sakit •
Pelayanan Gawat Darurat UGD siap melayani pasien selama 24 jam sehari, dilengkapi dengan sarana penunjang diagnosa laboratorium dan radiologi, serta ambulance transportasi. Fasilitas 10 tempat tidur. UGD juga dilengkapi dengan "pelayanan bantuan medis" [PBIM] yang siap membantu masyarakat yang memerlukan panduan penanganan masalah kesehatan segera.
•
Haemodialisa Haemodialisa merupakan salah satu tindakan pengganti fungsi ginjal yang diberikan kepada penderita gagal ginjal, baik yang bersifat sementara
maupun
jangka
panjang.
Haemodialisa
bertujuan
memberikan kualitas hidup optimal pada penderita gagal ginjal terminal. PK St. Carolus melayani cuci darah untuk penderita gagal ginjal dan siap 24 jam. Untuk pencegahan penularan penyakit disediakan fasilitas yang terpisah untuk pasien non hepatitis, hepatitis B dan hepatitis C.
53 •
Balai Kesehatan Masyarakat Sesuai
dengan
Visi
dan
Misi
PKSC
yang
bertujuan
memberdayakan masyarakat untuk dapat memelihara kesehatannya, maka disediakan berbagai berbagai pelayanan masyarakat melalui Balkemas-balkemas yang tersebar di 5(Lima) wilayah DKI, Tangerang.
Pelayanan yang tersedia :
Poliklinik Umum
Poliklinik Gigi
Poliklinik Paru
BKIA (Balai Kesehatan Ibu dan Anak)
UKS (Usaha Kesehatan Sekolah)
UKGS (Usaha Kesehatan Gigi Sekolah)
PHN dan Posyandu
Serta pencegahan penyakit menular, penyuluhan kesehatan dan kesehatan lingkungan
•
Pelayanan Rawat Inap Tenaga-tenaga profesional medis, keperawatan dan profesional lain selalu siap melayani dengan kasih, dan berupaya meningkatkan kualitas pelayanan sejalan dengan perkembangan ilmu dan teknologi namun tidak meninggalkan sifat pelayanan yang manusiawi dan holistic.
54 o Jenis pelayanan yang tersedia:
Perawatan Penyakit Dalam
Perawatan Penyakit Bedah
Perawatan Kebidanan
Perawatan Penyakit Anak
Perawatan Neurologi
Perawatan Intensif
Perawatan Penyakit Jiwa
o Jenis Kelas Perawatan yang tersedia: Super VIP, VIP A, B, C, Utama, I, II, III, dan kelas khusus untuk pelayanan sosial bagi masyarakat yang tidak mampu.
•
Kamar Bedah Tersedia lima kamar bedah dan satu ruang pemulihan dengan kapasitas 6 tempat tidur. Dilengkapi dengan "Air Flow System", Ceiling Pendant Supply. Apabila perlu perawatan intensif, tersedia unit perawatan intensif bedah dengan kapasitas 10 tempat tidur. Berbagai macam tindakan pembedahan dapat dilakukan di kamar bedah PKSC, didukung oleh Tim Ahli Bedah yang kompeten dibidangnya. Antara lain bedah jantung dan vasculer, bedah syaraf, bedah orthopedi, bedah digestif dll.
55 •
Pelayanan Penunjang Diagnostik dan Terapi
Tidaklah lengkap apabila suatu pelayanan pasien di rumah sakit tanpa pelayana penunjang. Maka PKSC menyediakan berbagai pelayanan diagnostik yang menunjang supaya diagnosa penyakit dapat lebih akurat, antara lain :
o Laboratorium : patologi klinik, patologi anatomi o Radiologi
:
foto
rontgen
dengan
atau
tanpa
kontras
CT Scan : Whole body o Farmasi o Endoskopi
•
Pelayanan Penunjang Promotif dan Rehabilitasi Sesuai dengan Misi PKSC yaitu memberikan pelayanan holistik dan paripurna, maka selain pelayanan kuratif disediakan pula pelayanan promotif dan rehabilitatif, antara lain: Gizi, Fisioterapi. Disamping itu pelayanan tersebut dibentuk Club-club senam untuk menunjang kesehatan: club jantung sehat, club asma, club diabetes melitus dan club osteoporosis dan menyusul kelompok-kelompok senam yang lain.
•
Pelayanan Spiritual Pelayanan ini melengkapi seluruh pelayanan kepada pasien yang tidak hanya berupa pelayanan dari segi fisik namun juga dari segi sosial
56 dan spiritual. PKSC menyediakan Pelayanan Pastoral kepada pasien tanpa membedakan agama maupun latar belakangnya, berupa pendampingan agar pasien mampu menemukan makna hidup dalam pertemuannya
dengan
Allah
melalui
penderitaan
Pelayanan sosial medis ditujukan kepada pasien/keluarga yang mempunyai masalah sosial dalam kaitannya dengan keberadaan pasien di
RS
dengan
maksud
memberdayakan
masyarakat
untuk
menanggulangi masalahnya.
•
Pelayanan Penunjang Lain Selain berbagai bentuk pelayanan langsung seperti yang telah dipaparkan, pelayanan penunjang yang tidak langsung berhubungan dengan pasien juga tidak kalah penting untuk mendukung kelancaran, kenyamanan, dan keamanan pasien. Jenis pelayanan tersebut secara tidak langsung diterima pasien dari awal kedatangan sampai keluar PKSC. Pelayanan Administrasi Pasien Masuk, Pelayanan Sanitasi dan Amdal, Pelayanan Pemeliharaan Bangunan, Pelayanan pemeliharaan Alat Medik dan Komunikasi, Pelayanan Keamanan, Pelayanan Pemeliharaan Textil dan Pelayanan sentral Sterilisasi dan pada saat pulang pasien/keluarga akan dilayani oleh petugas Pelayanan rekening Pasien. Telah diusahakan sistem informasi menggunakan jaringan komputer untuk mempercepat proses administrasi pada saat pasien pulang.
57 2.5.6 Rawat Inap Rawat inap (opname) adalah istilah yang berarti proses perawatan pasien, di mana pasien diinapkan di rumah sakit. Ruang rawat inap adalah ruang tempat pasien dirawat. Ruangan ini dulunya sering hanya berupa bangsal yang dihuni oleh banyak orang sekaligus. Saat ini, ruang rawat inap di banyak rumah sakit sudah sangat mirip dengan kamar-kamar hotel. Pasien yang berobat jalan di Unit Rawat Jalan, akan mendapatkan surat rawat dari dokter yang merawatnya, bila pasien tersebut memerlukan perawatan di dalam rumah sakit, atau menginap di rumah sakit. (http://id.wikipedia.org/wiki/Rawat_inap)
2.5.7 Rekam Medik Rekam medik adalah tempat informasi pasien dicatat dan berguna untuk riwayat penyakit dan pengobatan di kemudian hari. Rekam medik berguna untuk komunikasi antara dokter, perawat dan analisis kesehatan, serta untuk akreditasi rumah sakit, riset ilmiah, dan perlindungan hukum. Isinya harus benar dan lengkap, disimpan dengan baik dan dapat diambil kembali dengan cepat. Basbeth
(Basbeth,
Ferryal,
http://www.freewebs.com//medicalrecord)
2005, menyajikan
rekam
medis,
kumpulan
definisi
Rekam Medis dalam berbagai kepustakaan dituliskan dalam berbagai pengertian, seperti dibawah ini: 1. Menurut Permenkes No.45 749a/Menkes/Per/XII/1989 Rekam Medis adalah berkas yang berisi catatan dan dokumen
mengenai
identitas
paseien,
hasil
pemeriksaan,
58 pengobatan, tindakan dan pelayanan lainnya yang diterima pasien pada sarana kesehatan, baik rawat jalan maupun rawat inap. 2. Menurut Edna K Huffman Rekam Medis adalah berkas yang menyatakan apa, siapa, mengapa, dimana, kapan dan bagaimana pelayanan yang diperoleh seorang pasien selama dirawat atau menjalani pengobatan 3. Menurut Gemala Hatta Rekam Medis merupakan kumpulan fakta tentang kehidupan seseorang dan riwayat penyakitnya, termasuk keadaan sakit, pengobatan saat ini dan lampau yang ditulis oleh para praktisi kesehatan dalam upaya mereka memberikan pelayanan kesehatan kepada pasien.
2.5.8 Kebutuhan Komputerisasi Medis Dalam pedomannya untuk para dokter dan karyawan kantor praktik, Sellars yang dikutip Aluise (1997, p.167) mengidentifikasi beberapa tanda bahaya yang menandakan kebutuhan komputer pada praktik medis. •
Pertumbuhan praktik Praktik medis sedang berkembang menjadi organisasi skala besar sewaktu ditambahkan pelayanan kesehatan yang baru dan memperluas fungsi-fungsi klinis dan bisnis. Kenaikan jumlah pasien dan pemasukkan yang besar mengakibatkan kenaikan dalam jumlah karyawan dan pekerjaan pencatatan sehingga membutuhkan rutinitas kerja yang lebih efesien.
59 Komputer mungkin tidak akan menambah bisnis baru, tetapi mereka dapat membantu mengatur dan mengelola pertumbuhan. •
Jadwal pengajuan penagihan tidak tercapai Memproses laporan keuangan bulanan pasien dan klaim asuransi merupakan suatu tugas yang menyita waktu serta membutuhkan ketelitian dan ketepatan waktu. Hal ini dapat menjadi masalah kalau tuntutan praktik lainnya harus diberikan prioritas. Penggunaan komputer untuk perhitungan dan pengajuan tagihan dapat melakukan sebagian besar pekerjaan tanpa keterlibatan staff.
•
Keputusan berdasarkan informasi Tenaga profesional pelayanan kesehatan memerlukan sejumlah besar informasi guna mengambil keputusan di bidang bisnis dan medis. Banyak dari informasi yang diperlukan tidak mudah diakses pada sistem manual, namun sistem komputer sekarang dapat segera memberikan informasi tentang pasien dan laporan produktivitas secara rinci.
•
Pembatasan fasilitas dan ruang Praktik medis terus menerus mencari ruangan untuk menyimpan catatan medis, menempatkan karyawan, dan menambah prosedur yang baru. Sistem komputer biasanya memakan tempat yang lebih kecil dibandingkan sistem manual.