BAB 2 TINJAUAN PUSTAKA 2.1
Teori Umum 2.1.1 Data Data adalah fakta atau observasi mentah yang biasanya mengenai fenomena fisik atau transaksi bisnis. Lebih khusus lagi, data adalah ukuran objektif atribut dari entitas seperti orang-orang, tempat, benda, atau kejadian (Indrajani, 2011, p. 2). Data adalah komponen terpenting dalam DBMS, dilihat berdasarkan sudut pandang end-user (Connolly & Begg, 2010, p. 70) Data bertindak sebagai jembatan yang menghubungkan antara mesin dengan pengguna (Connolly & Begg, 2010, p. 68) Data
Hardware
Procedures
Software
People
Bridge Machine
Human
Gambar 2. 1 Data (Connolly & Begg, 2010, p. 68)
2.1.2 Basis Data Basis data adalah suatu kumpulan data yang berhubungan secara logical dan dekripsi dari data tersebut yang dirancang untuk kebutuhan informasi suatu organisasi (Connolly & Begg, 2010, p. 65) Basis data adalah kumpulan file yang saling terkait. Basis data tidak hanya
merupakan
kumpulan
file.
Record
pada
setiap
file
harus
memperbolehkan hubungan-hubungan untuk menyimpan file lain (Whitten, Bentley, & Dittman, 2007, p. 518). Keuntungan basis data (Whitten, Bentley, & Dittman, 2007, p. 520): 1)
Memiliki kemampuan untuk berbagi dan menggunakan data yang sama di banyak aplikasi dan sistem.
2)
Penyimpanan data dalam format yang fleksibel. Basis data didefinisikan secara terpisah dari sistem informasi dan program-program aplikasi yang akan menggunakan basis data.
3)
Teknologi basis data menyediakan skalabilitas superior. Basis data dan sistem yang menggunakannya dapat ditingkatkan atau dikembangkan untuk menemukan kebutuhan-kebutuhan perubahan pada sebuah organisasi.
4)
Kemajuan independensi data. Hal ini mengurangi redudansi data dan meningkatkan fleksibilitas.
5)
Sangat mendukung penggunaan jangka panjang. Berdasarkan pengertian di atas, dapat disimpulkan basis data adalah sekumpulan data yang terintegrasi dan dirancang untuk memelihara informasi supaya tersedia untuk memenuhi kebutuhan suatu organisasi.
2.1.3 Database Management System (DBMS) Database Management System (DBMS) adalah sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol akses ke database (Connolly & Begg, 2010, p. 66). Ada beberapa keuntungan dari Database Management System (DBMS) diantaranya (Connolly & Begg, 2010, p. 77): 1)
Mengontrol pengulangan data
2)
Menjadikan data konsisten
3)
Memberikan informasi lebih banyak dari sejumlah data yang sama
4)
Berbagi data
5)
Meningkatkan integritas data
6)
Meningkatkan keamanan data
7)
Menerapkan standarisasi
8)
Meminimalisasi biaya
9)
Menyeimbangkan kebutuhan-kebutuhan yang terkonflik
10) Meningkatkan kemampuan pengaksesan dan respon pada data 11) Meningkatkan produktivitas 12) Meningkatkan pemeliharaan dengan kemandirian data 13) Meningkatkan konkurensi 14) Meningkatkan pelayanan backup (menyimpan cadangan) dan recovery services (pemulihan)
2.1.3.1 Data Definition Language (DDL) DDL(Data Definition Language) adalah suatu bahasa yang memperbolehkan seorang DBA atau user untuk mendeskripsikan dan memberi nama suatu entitas, atribut, dan relasi data yang diperlukan oleh aplikasi, bersama dengan integritas yang teraosiasi dan batasan keamanan datanya (Connolly & Begg, 2010, p. 92). Perintah-perintah dalam DDL: 1)
Create Table: membuat tabel dengan mengidentifikasikan tipe data untuk setiap kolom.
2)
Alter Table: menambah atau menghapus kolom dari konstrain.
3)
Drop Table: menghapus tabel berserta semua data yang terkait di dalamnya.
2.1.3.2 Data Manipulation Language (DML) DML (Data Manipulation Language) adalah sebuah bahasa yang menyediakan satu set operasi untuk mendukung pengoperasian manipulasi data dasar pada basis data (Connolly & Begg, 2010, p. 92). Pengoperasian manipulasi pada umumnya (Connolly & Begg, 2010, p. 92): 1)
Penambahan data baru ke dalam basis data.
2)
Modifikasi data yang disimpan dalam basis data.
3)
Pengembalian data yang terdapat dalam basis data.
4)
Penghapusan data dari basis data. Perintah-perintah di dalam DML:
1) Select: menampilkan sebagian atau seluruh isi dari suatu tabel. 2) Update: mengubah isi atribut dari suatu tabel. 3) Insert: menambah baris nilai baru ke dalam suatu tabel. 4) Delete: menghapus sebagian atau seluruh isi dari suatu tabel.
2.1.4 Database Lifecycle
Gambar 2. 2 Database Lifecycle (Connolly & Begg, 2010, p. 313)
The Information System Lifecycle adalah sumber yang dapat mengumpulkan, memenejemen, mengontrol dan membagi informasinya untuk suatu organisasi (Connolly & Begg, 2010, p. 312). 312)
Dari tahun 1970, system database telah menggantikan file-based system sebagai bagaian dari suatu system informasi organisasi. Tingkatan dari information lifecycle yang terdiri dari: 1) Planning 2) System Definition 3) Requirement Collection and analysis 4) Database Design 5) Application Design 6) Prototyping 7) Implementation 8) Testing 9) Conversion 10) Operational Maintenance
Database System Development Lifecycle atau siklus hidup pengembangan basis data merupakan komponen terpenting dalam sistem basis data (Connolly & Begg, 2010, p. 313). 1. Database Planning Database Planning adalah Langkah pertama yang bertujuan untuk memenjemen aktivitas yang berlangsung di setiap langkah Database System Development Lifecycle dapat dijalankan seefisien dan seefektif mungkin (Connolly & Begg, 2010, p. 313). Database planning harus terintegrasi dengan keseluruhan Sistem Informasi suatu perusahaan, biasanya pada langkah ini terdapat tiga permasalahan yang terlibat dalam perumusan Strategi Sistem Informasi diantaranya: a. Identifikasi
rencana
perusahaan
dan
tujuannya
dengan
penentuan yang berlanjut dari kebutuhan sistemi informasi b. evaluasi sistem informasi saat ini untuk menentukan kekuatan dan kelemahan yang ada c. Penilaian peluang IT yang mungkin menghasilkan keunggulan kompetitif 2. System Definition (Connolly & Begg, 2010, p. 316)
Pada langkah kedua yang bertujuan untuk menjelaskan ruang lingkup dan batasan dari system database dan pandangan pengguna atau user.
3. Requirements Collection and Analysis Langkah ketiga ini bertujuan untuk proses pengumpulan dan analisis informasi tentang bagian dari organisasi yang didukung oleh sistem
basis
data,
dan
menggunakan
informasi
ini
untuk
mengidentifikasi persyaratan untuk sistem baru (Connolly & Begg, 2010, p. 316). Informasi yang dibutuhkan (Connolly & Begg, 2010, p. 316): a. Penjelasan mengenai data yang digunakan. b. Detail bagaimana data tersebut digunakan. c. Kebutuhan tambahan untuk sistem basis data yang baru Pada teknik ini melibatkan untuk pengumpulan dan analisis informasi tentang bagian dari perusahaan yang akan dilayani oleh database. ada banyak teknik untuk mengumpulkan informasi ini, biasa disebutnya Fact-Finding Techniques.Pengertian Fact-Finding adalah proses formal yang menggunakan teknik teknik yang meliputi wawancara dan kuisioner untuk mengumpulkan data tentang sistem, kebutuhan (Connolly & Begg, 2010, p. 341). Fact-Finding mempunyai lima teknik dalam mengumpulkan data–datanya yaitu (Connolly & Begg, 2010, p. 344346): a. Examining Documention Mempelajari dokumen, laporan dan formulir yang terkait dengan sistem terkini, sehingga dapat mempercepat tentang sistem tersebut. b. Interviewing Melakukan wawancara terhadap pihak terkait mengenai data yang dibutuhkan. Kelebihan teknik wawancara yaitu memungkinkan yang diwawancara untuk merespon bebas dan terbuka untuk pertanyaan. Kekurangan teknik wawancara yaitu memakan waktu, dan tidak praktis.
c. Observation the enterprise in Operation Obersevasi merupakan salah satu teknik yang sangat efektif dalam Fact-Finding Techniques untuk mengetahui sistem karena dapat melihat bagaimana cara kerja seseorang dalam mempelajari sistemnya. Pada teknik observasi ini memiliki kekurangan dan kelebihan yaitu: Kelebihannya yaitu pengamat dapat melihat proses yang sedang berlangsung. Kekurangannya yaitu orang mungkin sadar atau tidak sadar melakukan berbeda ketika sedang diamati. d. Research Pada teknik ini adalah melakukan penelitian mengenai aplikasi dan masalah yang ada baik itu dari buku referensi, jurnal dan internet. Pada teknik penelitian ini mempunyai kelebihan dan kekurangan yaitu: Kelebihannya yaitu peneliti dapat melihat bagaimana orang lain telah memecahkan masalah serupa atau memenuhi persyaratan serupa Kekurangannya yaitu mungkin akhirnya tidak membantu dalam memecahkan masalah karena masalah tidak didokumentasikan di tempat lain
e. Quisioner Kuisioner adalah dokumen-dokumen yang dibuat tujuan khusus yang memungkinkan fakta yang dikumpulkan dari sejumlah besar orang atas respon mereka. Pada
teknik
kuisioner
ini
mempunyai
kelebihan
dan
kekurangannya yaitu: Kelebihannya yaitu tanggapan dapat ditabulasi dan dianalisis dengan cepat. Kekurangannya yaitu tidak dapat mengamati dan menganalisa bahasa tubuh responden.
Kegiatan penting yang terkait dengan tahap ini adalah memutuskan bagaimana menangani situasi di mana ada lebih dari satu tampilan pengguna untuk sistem database. ada tiga pendekatan utama untuk mengelola kebutuhan sistem database dengan beberapa tampilan pengguna meliputi: a. Centralized Approach (Connolly & Begg, 2010, p. 318) Pendekatan yang untuk setiap tampilan pengguna digabung menjadi satu set persyaratan untuk sistem database baru. model data yang mewakili semua pandangan pengguna dibuat selama tahap desain database dan pendekatan terpusat mencakup pengumpulan kebutuhan untuk tampilan pengguna yang berbeda ke dalam satu daftar kebutuhan. b. View Integration Approach (Connolly & Begg, 2010, p. 318) Persyaratan untuk setiap tampilan pengguna tetap sebagai daftar terpisah. model data yang mewakili setiap tampilan pengguna diciptakan dan kemudian bergabung. Dalam pendekatan ini terdapat 2 macam data model yaitu:
•
Local Data Model (Connolly & Begg, 2010, p. 319) Model data yang mewakili pandangan single user. masingmasing model terdiri dari diagram dan dokumentasi yang secara formal menggambarkan kebutuhan dari satu atau tampilan pengguna lebih dari database.
•
Global Data Model (Connolly & Begg, 2010, p. 319) Local Data Model yang kemudian akan digabungkan pada tahapan selanjutnya akan menghasilkan Global Data Model ini yang akan mewakili semua kebutuhan pengguna untuk database.
c. Kombinasi keduanya Pengabungan dari kedua pendekatan yang ada.
4. Database Design (Connolly & Begg, 2010, p. 320)
Database Design merupakan proses pembuatan sebuah desain yang akan mendukung misi objektif suatu perusahaan untuk kebutuhan system database tersebut. Pada tahapan Database Design terdapat 2 pendekatan yaitu: a. The bottom up merupakan pendekatan yang sangat sesuai untuk desain database sederhana dengan jumlah yang relatif kecil dari attribute b. The top down merupakan pendekatan yang digunakan untuk desain database kompleksitas yang cukup tinggi. Dalam tahapan Database Design terdapat 3 fase yaitu: a. Conseptual Database Design Conceptual Database Desgin merupakan proses membangun model data yang akan digunakan di dalam suatu perusahaan, bersifat independent dari semua pertimbangan fisikal. Tahap desain konseptual database yang dimulai dengan membuat model
data
konseptual
dari
perusahaan
dengan
rincian
implementasi seperti target DBMS, program aplikasi, bahasa pemprograman, hardware platform, performance dan segala pertimbangan fisikal lain nya. Tahapan – tahapan conceptual database desain adalah (Connolly & Begg, 2010, p. 468): 1. Mengidentifikasi tipe entitas 2. Mengidentifikasi tipe relationship 3. Mengasosiasikan atribut–atribut dengan tipe relationship 4. Menentukan atribut domainnya 5. Menentukan candidate key, primary key, dan alternate key 6. Sebaiknya menggunakan konsep permodelan lebih lanjut 7. Memeriksa model untuk redundancy 8. Memvalidasi konseptual data model terhadap transaksi pengguna 9. Melakukan review konseptual data model dengan pengguna b. Logical Database Design Logical Database Design merupakan proses membangun model data
yang
digunakan
didalam
suatu
perusahaan,
bersifat
independent terhadap DBMS tertentu dan segala pertimbangan fisik lainnya. Tahapan–tahapan logical database design adalah (Connolly & Begg, 2010, pp. 468-492): 1. Menghilangkan fitur – fitur yang tidak kompatibel dengan model data relasional. 2. Melakukan relasi untuk model data logical 3. Melakukan validasi relasi dengan menggunakan normalsasi 4. Melakukan validasi terhadap transaksi user 5. Memeriksa kendala integritas 6. Melakukan review logical data model dengan user c. Physical database design Physical dataase design merupakan proses untuk menghasilkan deskripsi implementasi database pada penyimpanan sekunder menggambarkan hubungan dasar, organisasi file dan indeks yang digunakan untuk mendapatkan akses yang cepat terhadap data dan setiap integrity constraint terkait dan langkah–langkah kemanan yang ada. Tahapan–tahapan
physical
database
design
adalah
(Connolly & Begg, 2010, pp. 468-523): 1. Merancang relasi dasar 2. Merancang representasi dari data turunan 3. Merancang general constraint 4. Analisis transaksi 5. Menentukan organisasi file 6. Menentukan index 7. Memperkirakan kapasitas disk yang dibutuhkan 8. Merancang user view 9. Merancang mekanisme keamanan
5. DBMS Selection Database Management System adalah sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan,
membuat, memelihara dan mengontrol akses ke database (Connolly & Begg, 2010, p. 66). DBMS Selection adalah pemilihan DBMS yang tepat guna mendukung sistem basis data (Connolly & Begg, 2010, p. 325). Dalam memilih DBMS juga harus memperhatikan berbagai hal seperti (Connolly & Begg, 2010, p. 326): a. Mendefinisikan syarat referensi pembelajaran b. Mencatat dua atau tiga produk c. Mengevaluasi produk d. Merekomendasikan pilihan dan membuat laporan
6. Application Design Desain aplikasi adalah perancangan User Interface dan aplikasi program yang digunakan dan memproses basis data (Connolly & Begg, 2010, p. 329). Desain aplikasi ini dibagi menjadi 2 sudut pandang, yaitu: a. Transaction Design (Connolly & Begg, 2010, p. 330) Transaction Design merupakan suatu tindakan yang dilakukan single user atau progam aplikasi, yang mengakses dan merubah konten yang ada dalam database. Tujuan desain transaksi adalah untuk menetapkan dan mendokumentasikan karakteristik tingkat tinggi dari transaksi yang dibutuhkan pada database meliputi: Data yang akan digunakan pada saat transaksi:
o Karakteristik fungsional transaksi o Hasil transaksi o Penting bagi pengguna o Tingkat yang diharapkan dari pengguna Transaksi tersebut mempunyai 3 tipe yaitu: a. Retrieval transaction Retrieval transaction digunakan untuk mengambil data yang bertujuan untuk ditampilkan pada layar atau dalam laporan produksi. b. Update transaction
Update transaction digunakan untuk menyisipkan record yang baru, menghapus record yang lama, atau merubah record yang sudah ada dalam database. c. Mixed transaction Mixed
transaction
merupakan
penggabungan
dari
Retrieval transaction dan Update transaction
7. Prototyping (optional) Prototyping adalah pembuatan model kerja suatu sistem database (Connolly & Begg, 2010, p. 333). Tujuan utama mengembangkan sistem database prototipe adalah untuk memungkinkan pengguna untuk menggunakan prototype untuk mengidentifikasi fitur dari sistem yang bekerja dengan baik atau tidak, dan jika mungkin untuk menyarankan perbaikan atau fitur baru bahkan ke sistem databasenya. Terdapat 2 strategi prototyping yang digunakan yaitu: a. Requirements prototyping Requirements prototyping adalah menggunakan prototype untuk menentukan persyaratan sistem database yang diusulkan, dan setelah persyaratan lengkap, prototype akan dihapus. b. Evolutionary prototyping Evolution prototyping adalah cara kerjanya sama seperti requirement prototyping tetapi yang membedakan nya adalah prototype tidak dihapus, tetapi dengan pengembangan yang terus berlanjut makan akan menjadi sistem database yang bekerja.
8. Implementation Impementation adalah realisasi fisik dari database dan aplikasi desain (Connolly & Begg, 2010, p. 333). Dalam pelaksanaan database dicapai dengan menggunakan DDL dari DBMS yang dipilih. DDL (Data Definition Language) adalah Sebuah bahasa yang memungkin Database Administrator untuk menggambarkan
dan
memberi
nama
entitas,
atribut
dan
hubungannya yang diperlukan suatu aplikasi, bersama dengan integritas yang terkait dan keamanan (Connolly & Begg, 2010, p. 92) Program aplikasi diimplementasikan menggunakan bahasa generasi ketiga (3GL) dan generasi keempat (4GL) yang diimplementasikan dengan menggunakan DML. DML (Data Manipulation Language) adalah sebuah bahasa yang menyediakan satu set operasi untuk mendukung operasi manipulasi data dasar pada data yang dimiliki dalam database
9. Data Conversion and Loading Data Conversion and Loading adalah pemindahan beberapa data yang sudah ada ke dalam sebuah database baru dan mengubah beberapa aplikasi yang sudah ada untuk dijalankan pada database yang baru (Connolly & Begg, 2010, p. 334)
10. Testing Testing adalah proses menjalankan sistem database yang bertujuang mencari error yang terdapat pada sistem database tersebut (Connolly & Begg, 2010, p. 334). Terdapat 5 kriteria yang digunakan untuk mengevaluasi pada tahapan ini antara lain: a. Learnability Learnability adalah tingkat pemahaman tentang sistem oleh pengguna baru baik sulit untuk dipelajari atau mudah untuk dipelajari. b. Performance Performance adalah menunjukan kinerja optimal sistem tersebut. c. Robustness Robustness adalah respon sistem jika terjadi sewaktu – waktu terjadi error. d. Recoverability
Recoverability adalah kemampuan sistem dalam mengamankan data apabila sewaktu terjadi kegagalan atau hal yang diinginkan e. Adapatability Adapatability adalah suatu sistem dapat cepat beradaptasi atau menyesuaikan dengan lingkungan yang berbeda.
11. Operational Maintenance Operational
Maintenance
adalah
proses
memonitor
dan
pemeliharaan sistem berdasarkan penginstalasian (Connolly & Begg, 2010, p. 335). Didalam pemeliharaan sistem ada beberapa kegiatan yang dilakukan antara lain: a. Memonitor kinerja sistem b. Pemeliharaan dan pembaharuan sistem basis data
2.1.5 Perancangan Basis Data (Database Design) Perancangan basis data adalah suatu proses pembuatan sebuah desain yang akan mendukung tujuan dan operasi dari perusahaan untuk kebutuhan sistem basis data (Connolly & Begg, 2010, p. 320). Perancangan basis data terdiri dari tiga fase utama, yaitu (Connolly & Begg, 2010, p. 467): 1) Perancangan basis data konseptual (Conseptual Database Design) 2) Perancangan basis data logikal (Logical Database Design) 3) Perancangan basis data fisikal (Physical Database Design)
2.1.5.1 Perancangan Basis Data Konseptual
(Conceptual Database
Design) Perancangan basis data konseptual adalah proses pembangunan sebuah model dari data yang digunakan pada perusahaan, yang tidak bergantung dari semua pertimbangan-pertimbangan fisik (Connolly & Begg, 2010, p. 322). Tujuan dari perancangan basis data konseptual adalah mengidentifikasi
entitas
penting beserta
atribut-atributnya
dan
hubungan antara entitas yang satu dengan entitas yang lain (Connolly & Begg, 2010, p. 465). 465) Langkah-langkah Langkah Conceptual Database Design (Connolly & Begg, 2010, pp. 471-485): 471 1)
Identifikasi tipe entitas (entity) ( Langkah pertama dalam membangun sebuah konseptual data model adalah mendefinisikan objek utama di mana user terlibat di dalamnya (Connolly & Begg, 2010, p. 471). Tipe ipe-tipe entity: a)
Strong Entity Type (entitas kuat) Strong Entity Type adalah entitas yang keberadaannya tidak bergantung pada tipe entitas lainnya (Connolly & Begg, 2010, p. 383).
b)
Weak Entity Type (entitas lemah) Weak Entity Type adalah entitas yang keberadaannya bergantung pada tipe entitas lainnya (Connolly & Begg, 2010, p. 383).
Gambar 2. 3 Strong and weak entity (Connolly & Begg, 2010, p. 384) 2)
Identifikasi tipe relasi (relationship) ( Tujuan dari langkah ini adalah mengidentifikasi relasi penting yang ada di antara entitas. (Connolly & Begg, 2010, p. 472) 472).
Relationship adalah sekumpulan hubungan antara satu atau lebih entitas (Connolly & Begg, 2010, p. 374). Relasi menurut hubungan dengan entitas lain dapat dibagi menjadi (Connolly & Begg, 2010, 20 p. 376): 1) Binary Relationship: Relationship yang keterhubungannya antara dua tipe entitas.
Gambar 2. 4 Binary Relationship (Connolly & Begg, 2010, p. 376)
2) Ternary
Relationship:
Relationship onship
yang
keterhubungannya antara tiga tipe entitas.
Gambar 2. 5 Ternary ernary Relationship (Connolly & Begg, 2010, p. 377) 3) Quarternary
Relationship:
Relationship
keterhubungannya antara empat tipe entitas.
yang
Gambar 2. 6 Quarternary uarternary Relationship (Connolly & Begg, 2010, p. 377)
Relasi mempunyai batasan (constraint) utama yang harus merefleksikan larangan dalam hubungan yang disebut multiplicit (Connolly & Begg, 2010, p. 385) multiplicity 385). Tanda ◄ menunjukan arah yang benar agar pembaca ca dapat mengartikan m maksud dari relasi tersebut (Contoh: Branch Has ► Staff).
Gambar 2. 7 Identifikasi Relationship (Connolly & Begg, 2010, p. 376)
Multiplicity terdiri dari dua jenis constraint constraint, yaitu (Connolly & Begg, 2010, p. 390). 390) a. Cardinality:
penggambaran
jumlah
maksi aksimum
dari
kemungkinan batasan sebuah entitas yang ikut berpartisipasi dalam sebuah relasi. Mapping Cardinalities menunjukkan
jumlah entitas yang dapat dihubungkan meelalui sebuah hubungan (Connolly & Begg, 2010, p. 390). b. Participation: penggambaran yang menentukan enentukan apakah semua atau hanya beberapa entity occurannce (anggota entitas) yang ikut berpartisipasi dalam sebuah hubungan (Connolly & Begg, 2010, p. 391).
Gambar 2. 8 Contoh Cardinality dan Participation (Connolly & Begg, 2010, p. 391) Relasi yang ang paling umum u adalah relasi binary. Yang artinya relasi antar entitas yang persis antara dua entitas saja. Bagaimanapun, anapun, relasi kompleks yang melibatkan lebih dari dua entitas dan relasi rekursif yang hanya melibatkan satu entitas harus diperhatikan. Langkah-langkah langkah dalam mengidentifikasi tipe relasi : a. Menggunakan Entity-Relationship (ER) Diagram Sering terjadi bahwa lebih mudah dan lebih cepat dimengerti
suatu
perancangan
apabila
basis
data
divisualisasikan daripada menguraikan deskripsi tekstual panjang kepada user. Kami menggunakan Entity--Relationship
(ER) diagram untuk mewakili entitas dan bagaimana mereka berhubungan satu sama lain dengan lebih mudah. Sepanjang tahap perancangan sistem basis data, kami merekomendasikan bahwa diagram ER harus digunakan bila diperlukan untuk membantu membangun sebuah gambaran dari bagian dari perusahaan yang kita modelkan. Tabel 2. 1 ERD Simbol
Keterangan Entitas Entitas
adalah
suatu
objek
yang
dapat
diidentifikasi dalam lingkungan pemakai.
Relasi
Relasi
menunjukkan
adanya
hubungan
di
antara sejumlah entitas yang berbeda. Simbol yang digunakan adalah :
Garis Garis sebagai penghubung antara relasi dengan entitas, relasi dan entitas dengan atribut.
Atribut Atribut
berfungsi mendeskripsikan karakter
entitas (atribut yang berfungsi sebagai key diberi garis bawah).
b. Menentukan multiplicity constraint dari tipe relasi Setelah mengidentifikasi selasi model selanjutnya kita multplicity tiap relasi. Multiplicity constraints digunakan untuk mengecek dan memelihara kualitas data.
c. Mengecek Fan Traps dan Chasm Traps Setelah
relasi
yang
dibutuhkan
antar
entitas
didefinisikan, maka langkah berikutnya adalah m mengecek fan traps dan chasm traps. Definisi dari fan traps adalah suatu model odel yang merepresentasikan suatu relasi antarr entitas. Tetapi alur relasinya memperlihatkan ambiguitas. Chasm traps adalah suatu model dimana ana terdapat hubungan antar entit entitas yang satu dengan yang lain, tetapi tidak aada relasi antar tar ke kedua entitas yang uta utama. d. Mendokumentasikan tipe relasi Setelah tipe relasi diidentifikasi, langkah berikutnya adalah memberikan nama yang mempunyai makna akna dan jelas kepada user. Selain itu, juga me- record deskripsi relasi dan multiplicity constraints constr pada kamus data.
Gambar 2. 9 Contoh kamus data Relationship yang mendeskripsikan relationship untuk staf user view dreamhome (Connolly & Begg, 2010, p. 475)
3)
Identifikasi dan asosiasi attribute dengan entitas entitas-entitas atau relasi Tujuan dari langkah ini adalah untuk mengasosiasikan attribute dengan tipe entity atau tipe relationship yang sesuai (Connolly & Begg, 2010, p. 474). 474) Atribut adalah properti dari sebuah entity atau relationship. Atribut juga diartikan sebagai properti deskriptif
atau karakteristik dari sebuah entity (Connolly & Begg, 2010, p. 379). Jenis-jenis atribut: 1) Atribut domain Atribut domain adalah sejumlah nilai yang diizinkan untuk nilai lebih untuk satu atau lebih atribut. Domain menetapkan bahwa sebuah atribut mungkin menahan dan serupa dengan konsep domain pada model relationship (Connolly & Begg, 2010, p. 379). 2) Atribut simpel Atribut simple adalah sebuah atribut yang di susun dari komponen tunggal dengan keberadaan yang mandiri. Atribut simpel tidak bisa dibagi lebih jauh lagi ke komponen yang lebih kecil. Seperti contoh posisi entity dan gaji karyawan. Atribut simpel dapat di sebut juga atomic atribut (Connolly & Begg, 2010, p. 379). 3) Atribut komposit Atribut komposit adalah sebuah atribut yang disusun dari komponen yang berlipat ganda, masing-masing dengan sebuah keberadaan yang bebas. Beberapa atribut dapat di bagi lebih jauh lagi ke hasil komponen yang lebih kecil dengan keberadaan mandiri yang dimiliki atribut itu sendiri (Connolly & Begg, 2010, p. 380). 4) Atribut single-valued Atribut yang mempunyai nilai tunggal untuk setiap kejadian pada sebuah tipe entity (Connolly & Begg, 2010, p. 380).
5) Atribut multi-valued Atribut yang mempunyai beberapa nilai untuk setiap kejadian pada sebuah tipe entity (Connolly & Begg, 2010, p. 380). 6) Atribut derivasi
Atribut yang mewakili sebuah nilai yang dapat diturunkan dari atribut lain yang berhubungan atau kumpulan dari beberapa atribut, dan tidak harus berasal dari entity yang sama (Connolly & Begg, 2010, p. 380).
4)
Menentukan domain attribute Tujuan dari langkah ini adalah untuk menentukan domain untuk atribut-atribut di dalam data model konseptual local (Connolly & Begg, 2010, p. 478). Domain adalah sebuah kumpulan nilai-nilai dari satu atau lebih attribute yang diambil nilainya (Connolly & Begg, 2010, p. 478).
5)
Menentukan candidate, primary, dan alternate key Menentukan kandidat key untuk setiap tipe entitas dan jika ada lebih dari satu candidate key untuk memilih satu untuk dijadikan primary key (Connolly & Begg, 2010, p. 479). Jenis keys: 1) Candidate key Candidate key adalah sejumlah kecil atribut yang secara unik mengidentifikasikan setiap kejadian dari setiap tipe entity (Connolly & Begg, 2010, p. 381). 2) Primary key Primary key adalah candidate key yang terpilih untuk mendefinisikan secara unik pada setiap kejadian dari sebuah tipe entity (Connolly & Begg, 2010, p. 381). 3) Composite key Composite key adalah sebuah candidate key yang terdiri dari dua atau banyak atribut (Connolly & Begg, 2010, p. 382). 4) Foreign key Foreign key adalah himpunan atribut dalam suatu relationship yang cocok dengan candidate key dari beberapa relationship lainnya (Indrajani, 2011, p. 42). 5) Alternate key
Alternate key adalah candidate key yang tidak terpilih menjadi primary key, atau biasa di sebut secondary key (Indrajani, 2011, p. 42). 6)
Pertimbangan menggunakan konsep enchanced modeling (optional) Tujuan dari tahap ini adalah “mempertimbangkan penggunaan enhanced modeling, seperti spezialitation, generalization, aggregation, dan composition” (Connolly & Begg, 2010, pp. 480-481).
7)
Pengecekan redudansi model Tujuan dari tahap ini adalah melakukan pemeriksaan model data konseptual untuk mengidentifikasi adanya redudansi dan menghilangkannya (Connolly & Begg, 2010, pp. 482-483) 3 aktivitas dalam tahap ini: a) Re-examine one-to-one relationships Dalam mengidentifikasikan entitas, ada kemungkinan mengidentifikasikan dua entitas yang mewakili objek yang sama. Kedua entitas tersebut harus di gabungkan, jika primary key berbeda, pilih satu untuk dijadikan primary key dan sisanya alternate key.
b) Remove redundant relationships Relationship dikatakan redundant jika informasi yang sama didapatkan dari relationship lain. c) Consider time dimension Waktu
dimensi
hubungan
penting
ketika
menilai
redundansi. Ada dua jalan antara man dan child, yang pertama hubungan langsung father of atau hubungan married to dan mother of. Akibatnya, kita mungkin berpikir bahwa hubungan father of tidak perlu. Namun ini akan menjadi salah untuk dua alasan, alasan pertama ayahnya mungkin memiliki anak dari pernikahan sebelumnya dan
kita memodelkan pernikahan ayah yang sekarang dengan 1:1 relationship.. Alasan kedua, ayah dan ibu tidak menikah.
Gambar 2. 10 Mempertimbangkan Dimensi Waktu (Connolly & Begg, 2010, p. 483) 8)
Validasi model data konseptual terhadap transaksi user Tujuan dari tahap ini adalah meyakinkan bahwa model data conceptual mendukung transaksi (Connolly & Begg, 2010, pp. 483-485). 483 . Dua cara untuk meyakinkan bahwa model data conceptual mendukung transaksi: a) Menjelaskan transaksi Memeriksa bahwa semua informasi (entitas, hubungan, dan atribut) yang dibutuhkan oleh setiap transaksi disediakan oleh model, dengan mendokumentasikan deskripsi kebutuhan setiap transaksi. b) Jalur transaksi Pendekatan kedua untuk memvalidasi model data terhadap transaksi yang dibutuhkan melibatkan diagram yang mewakili jalur yang diambil langsung oleh setiap transaksi pada ER diagram.
9)
Mereview model data konseptual dengan user Tujuan langkah ini adalah ad untuk mengevaluasi engevaluasi model data konseptual lokal dengan pengguna dan meyakinkan eyakinkan bahwa model odel data tersebut adalah representasi yang nyata dari
tam mpilan (Connolly & Begg, 2010, p. 485).. Model data konseptual meliputi diagram ER dan dokum mentasi yang mendukung yang menggambarkan model data.
Gambar 2. 11 Model Data Konseptual (Connolly & Begg, 2010, p. 491)
2.1.5.2 Perancangan Basis Data Logikal (Logical ( Database Design Design) Perancangan basis data logikal merupakan erupakan proses membangun sebuah model m informasi yang digunakan dalam sebuah perusahaan berdasarkan pada sebuah model data yang spesifik, tetapi tidak bergantung
pada
sebuah
DBMS
tertentu
dan
pertimbangan pertimbangan-
pertimbangan fisik lainnya (Connolly & Begg, 2010, p. 467). 467) Tujuan dari tahap ini adalah menerjemahkan model data conceptual ke dalam model data logical yang kemudian divalidasi untuk memeriksa kebenarannya secara struktural dan kemampuannya untuk mendukung kebutuhan transaksi (Connolly & Begg, 2010, p. 490). Tahapan perancangan basis data logikal: 1) Menurunkan relasi untuk model data logikal Tahap ini bertujuan untuk mebuat relasi untuk model data logikal untuk merepresentasikan entitas, relasi dan atribut yang telah diidentifikasikan (Connolly & Begg, 2010, p. 492). Multiplicity ultiplicity adalah constrain yang ditempatkan pada relasi antara data dalam database. a) One to many relationship types Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi setiap entitas pada entitas B dapat berhubungan dengann satu entitas pada himpunan entitas A (Connolly & Begg, 2010, p. 387) 387).
Gambar 2. 12 Hubungan one to many (Connolly & Begg, 2010, p. 387) Contoh diatas menggambarkan 3 tipe relationship staff yang mengawasi suatu property yang akan disewa. Staff SG37
mengawasi property PG21 dan PG36 dengan relationship r1 dan r2 r2, staff SA9 mengawasi property PA14 dengan relationship r3, namun staff SG5 tidak mengawasi property manapun dan property PG4 tidak diawasi oleh staff. Dapat disimpulkan bahwa seorang staff dapat mengawasi nol atau lebih property, dan tiap property dapat diawasi oleh nol atau satu orang staff. Tipe relationship seperti ini disebut one – to – many. many b) One to one relationship types Hubungan relasi satu ke satu yaitu setiap entitas pada himpunan entitas A berhubungan paling banyak dengan satu entitas pada himpunan entitas B (Connolly & Begg, 2010, p. 386). 386)
Gambar 2. 13 Hubungan one to one (Connolly & Begg, 2010, p. 386)
Contoh diatas menggambarkan 2 tipe entitas staff yang mengelola branch. Staff SG5 mengatur cabang B003 dengan relationship r1 dan staff SL21 mengatur branch B005 dengan relationship r2, tetapi staff SG37 tidak mengatur cabang manapun. Dapat disimpulkan d bahwa seorang staff hanya dapat mengatur nol atau satu branch dan setiap branch hanya dapat diatur oleh satu orang staff. Tipe relationship seperti ini disebut one – to – one. c) One to one recrusive relationship types Untuk relasi rekursif 1:1, memiliki pilihan untuk membuat relation tunggal dengan dua salinan primary key atau membuat relation baru untuk mewakili hubungan. Relation baru hanya
akan memiliki dua attribute yaitu kedua salinan primary key, dimana salinan primary key bertindak sebagai foreign key dan harus diganti namanya untuk menunjukkan tujuan masing masingmasing dalam relation. (Connolly & Begg, 2010, p. 495) 495). d) Superclass/subclass relationship types Super class entity seperti parent entity dan subclass entity seperti child entity.
Gambar 2. 14 Panduan untuk superclass / subclass (Connolly & Begg, 2010, p. 496) e) Many to many relationship types Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B (Connolly & Begg, 2010, p. 388).
Gambar 2. 15 Hubungan many to many (Connolly & Begg, 2010, p. 388) Contoh diatas menggambarkan 4 tipe relationship suatu koran yang mengiklankan property. Glasgow Daily mengiklankan property PG21 dan PG36 dengan relationship r1 dan r2, The West News juga mengiklankan property PG36 dengan relationship r3, Aberdeen Express mengiklankan property
PA14 dengan relationship r4 dan property PG4 tidak diiklankan. Disimpulkan bahwa satu koran dapat dapat mengiklankan satu atau lebih property dan satu property dapat diiklankan oleh nol atau lebih koran. Tipe relationship seperti ini disebut many – to – many relationship. f) Complex relationship types Uuntuk untuk setiap hubungan yang kompleks, buat relation untuk mewakili hubungan dan setiap attribute yang merupakan bagian dari hubungan. Kirimkan salinan primary key attribute dari entitas yang terlibat dalam hubungan yang kompleks ke dalam hubungan baru, untuk bertindak sebagai foreign key (Connolly & Begg, 2010, p. 498). 498) Contoh, registers memilik ternary relationship dalam branch user view yang mewakili hubungan antara staff yang mendaftar sebagai client baru di branch. Untuk mewakili ini, kita menciptakan hubungan untuk entitas enti kuat branch, staff, dan client,, dan menciptakan hubungan registration untuk mewakili hubungan register.
Gambar 2. 16 Complex relationship type (Connolly & Begg, 2010, p. 498) g) Multi-valued Multi attributes Untuk setiap attribute multi-valued dalam suatu entitas, buatlah relation baru untuk mewakili attribute multi multi-valued dan primary key dari entitas dalam relation baru, untuk bertindak
sebagai foreign key. Kecuali attribute multi-valued valued itu sendiri merupakan alternate key dari entitas, primary key dari relasi baru adalah kombinasi dari attribute multi-valued valued dan primary key dari entitas (Connolly & Begg, 2010, p. 499) 499). Misalnya, dalam user view branch untuk mewakili situasi di mana satu branch telah sampai tiga nomor telepon, attribute telpNo dari entitas branch telah didefinisikan sebagai attribute multivalued. valued. Untuk mewakili ini, kita membuat hubungan untuk entitas branch dan menciptakan hubungan baru ru yang disebut Telepon untuk mewakili attribute multi-valued telpNo.
Gambar 2. 17 Multi – valued attributes (Connolly & Begg, 2010, p. 499) 2) Validasi relations menggunakan normalisasi Tujuan dari tahap ini adalah memvalidasi relation di model data logical menggunakan normalisasi. Tujuan dari normalisasi adalah memastikan bahwa himpunan relation memiliki jumlah minimal dan belum memiliki attribute yang cukup untuk mendukung persyaratan data perusahaan, pe dan juga relation harus memiliki redundansi data minimal untuk menghindari masalah update (Connolly & Begg, 2010, p. 501). 501) Normalisasi adalah teknik resmi untuk menganalisis menganalisisrelation berdasarkan primarykey (atau candidate key)) dan ketergantungan secara fungsional (Connolly & Begg, 2010, p. 428) 428). Proses Normalisasi: a) First Normal Form (1NF) Unnormalized Form (UNF) adalah
sebuah
tabel yang
berisi satu atau lebih repeating group (Connolly & Begg, 2010,
pp. 430-431). Repeating group adalah sebuah attribute atau himpunan attribute dalam tabel yang memiliki lebih dari satu nilai (multiplevalue) untuk sebuah primary key pada tabel tersebut.First Normal Form (1NF) adalah sebuah relasi dimana titik temu antara baris dan kolomnya hanya mengandung satu nilai. Untuk mengubah tabel UNF ke 1NF, dilakukan identifikasi dan penghapusan repeatinggroup dalam tabel. b) Second Normal Form (2NF) Second Normal Form (2NF) adalah suatu hubungan yang ada dalam 1NFdan setiap
non-primary-key attribute,
functional
dependency sepenuhnya pada primary key (Connolly & Begg, 2010, p. 434). Normalisasi 1NF ke 2NF melibatkan penghapusan partialdependencies. Hapus attribute partial dependencies dari relation dengan menempatkannya dalam relation baru bersama dengan salinan determinant, apabila terdapat
partial
dependencies.
Functional
dependency
menjelaskan hubungan antara attribute dalam suatu relation. Contoh, X dan Y adalah attribute dari relations R, Y secara functional dependency pada X (dilambangkan X → Y), jika setiap nilai X terkait dengan tepat satu nilai Y. (X dan Y mungkin masing-masing terdiri dari satu atau attribute lebih). Full functional dependency menunjukkan bahwa jika X dan Y adalah attribute dari suatu hubungan, Y adalah fully functionally dependent pada X jika Y adalah functional dependency pada X, tetapi tidak pada setiap subset dari X. c) Third Normal Form (3NF) Third Normal Form (3NF) adalah suatu hubungan yang ada dalam 1NF dan 2NF dan dimana key attribute
yang transitively
tidak
ada non-primary-
dependentpada primary
key
(Connolly & Begg, 2010, pp. 435-437). Normalisasi 2NF ke 3NF melibatkan penghapusan transitive dependency. Hapus relation dengan cara menempatkan attribute dalam suatu relationbaru bersama dengan salinan determinant, apabila terdapat transitive dependency. Transitive dependency adalah
sebuah kondisi dimana X, Y dan Z adalah attribute dari sebuah hubungan seperti jika X → Y dan Y → Z, maka Z adalah dependent secara transitif pada XY melalui (disediakan bahwa X tidak functionally dependent pada Y atau Z).
3) Validasi relations terhadap transaksi user Tujuan dari tahap ini adalah “Memastikan bahwa relations dalam model data logical mendukung transaksi yang diperlukan (Connolly & Begg, 2010, p. 502).
4) Memeriksa integrity constraints Tujuan
dari
tahap
ini
adalah
Memeriksa
apakah
integrityconstraints ditampilkan dalam model data logical. Integrityconstraints ini bertujuan untuk melindungi basis data dari ketidaklengkapan,
ketidakakuratan,
atau
ketidakkonsistenan
(Connolly & Begg, 2010, pp. 502-505). Beberapa tipe integrity constraints: a) Required data Beberapa attribute harus memiliki nilai pada datanya sehingga tidak diperbolehkan null. b) Attribute domain constraints Attribute memiliki domain yang merupakan sekumpulan nilai yang sah. c) Multiplicity Multiplicity mewakili constraints yang ditempatkan pada relationship antara data di database.
Tabel 2. 2 Tabel Multiplicity Multiplicity
Arti
0..1
Nol atau satu kejadian entitas
Multiplicity
Arti
1..1 (or just 1)
Satu kejadian entitas
0..* (or just *)
Nol atau banyak kejadian entitas
1..*
One atau banyak kejadian entitas
5..10
Minimum 5 dan maksimum 10 kejadian entitas
0, 3, 6–8
Nol, tiga atau enam sampai delapan kejadian entitas
d) Entity integrity Primary key dari sebuah entitas tidak dapat bernilai null. e) Referential integrity Foreign key menghubungkan setiap tuple dalam childrelation dengan tuple dalam parentrelation dengan mencocokkan nilai candidate key. Referential integrity berarti jika foreign key mengandung nilai, nilai tersebut yang harus merujuk pada suatu tupel yang ada di parentrelation.
Gambar 2. 18 Referential integrity (Connolly & Begg, 2010, p. 505) Beberapa
strategi
yang
harus
dipertimbangkan
dalam
menghapus tuple dari relation parent: A. NO ACTION Mencegah penghapusan dari parent relation jika terdapat hubungan ke child tuple. B. CASCADE Apabila pada tuple parent dihapus, maka secara otomatis tuple childakan terhapus juga. C. SET NULL Jika pada tuple parent dihapus, maka nilai foreign key pada semua tuple child otomatis akan terisi nilai null null.
D. SET DEFAULT
Jika pada tuple parent dihapus, maka foreign key pada semua tuple child akan menerima nilai default. f) General constraints Constraints tambahan yang dibuat oleh user atau seseorang database administrator dari basis data tersebut.
5) Review model data logikal dengan user Tahapan ini memastikan bahwa model data logikal local yang terbentuk merupakan representasi dari perusahaan (Connolly & Begg, 2010, p. 506).
6) Menggabungkan model data logikal ke dalam model global (optional step) Tahapan ini bertujuan untuk menggabungkan model data logikal lokal ke dalam data model single global logical yang mewakili semua user views dari basis data (Connolly & Begg, 2010, p. 506). Aktivitas dalam tahap ini: a. Menggabungkan model data logikal ke dalam model global. b. Validasi model data logikal global. Meninjau kembali model data logikal global dengan user.
7) Memeriksa perkembangan di masa depan Tujuan dari tahap ini adalah untuk menentukan apakah akan ada perubahan yang signifikan di masa depan dan memperkirakan apakah model data logikal bisa mengakomodasi perubahan tersebut (Connolly & Begg, 2010, p. 517).
Gambar 2. 19 Global Relation Dia Diagram (Connolly & Begg, 2010, p. 516). 516)
2.1.5.3 Perancangan Basis Data Fisikal (Physical (Physical Database Design Design) Perancangan
basis
data
fisikal
adalah
proses
untuk
menghasilkan deskripsi dari pengimplementasian suatu basis data pada media penyimpanan kedua. Perancangan ini juga menjelaskan relasi dasar, pengaturan file, dan indeks yang digunakan untuk mencapai akses data yang efisien, integrity constraint yang terkait, serta ukuran keamanan (Connolly & Begg, 2010, p. 523) 523). Tahapan Perancangan Basis Data Fisikal: 1) Menerjemahkan model data logikal global untuk target DBMS Tujuan
dari
tahap
databaserelational
dari
ini
adalah
model
data
“Menghasilkan logical
yang
skema dapat
diimplementasikan pada target DBMS (Connolly & Begg, 2010, p. 524). 524) a) Design base relations
Tujuan dari tahap ini adalah “Memutuskan cara untuk mewakili base relations yang sudah diidentifikasi di model data logical ke dalam target DBMS (Connolly & Begg, 2010, p. 525). Setiap relation yang diidentifikasikan dalam model data logical memiliki definisi yang terdiri dari: 1) Nama relation 2) Daftar dari simple attribute 3) Primary key, alternate keys, dan foreign keys 4) Refential integrity constraints untuk setiap foreign keys yang diidentifikasi 2) Mendesain organisasi file dan indeks Menentukan bagaimana merepresentasikan beberapa derived data yang terdapat dalam model data logikal ke dalam DBMS (Connolly & Begg, 2010, p. 526). 3) Mendesain User Views Tujuan dari tahap ini adalah Merancang tampilan penggunayang sudah diidentifikasi selama pengumpulan kebutuhan dan analisis tahap dari pengembangan siklus kehidupan sistem database (Connolly & Begg, 2010, p. 542). 4) Mendesain mekanisme keamanan Membatasi pengaksesan basis data oleh user yang tidak berhak dan menspesifikasikan basis data yang dapat diakses oleh user (Connolly & Begg, 2010, p. 542).
Gambar 2. 20 Model Data Fisikal (Connolly & Begg, 2010, p. 526)
2.1.6 Data Flow Diagram (DFD) Data flow diagram adalah sebuah tool yang digunakan untuk menggambarkan aliran data yang melalui sebuah sistem dan pengerjaan pemrosesan yang dikerjakan sistem (Whitten, Bentley, & Dittman, 2007, p. 379) Simbol dan koneksi yang digunakan (Whitten, Bentley, & Dittman, 2007, p. 317): 1.
Persegi panjang yang bertepi bulat merepresentasikan proses atau pekerjaan yang harus diselesaikan.
2.
Bujur sangkar merepresentasikan external agents. External agents agentsadalah orang luar, unit organisasi, sistem, atau organisasi yang berinteraksi dengan sistem, disebut juga dengan external entity (Whitten & Bentley, 2007: 319).
3.
Kotak terbuka merepresentasikan data stores, biasa disebut juga files atau basis data.
4.
Panah merepresentasikan aliran data, input, dan output,, kepada atau dari proses.
Gambar 2. 21 Simple Data Flow Diagram (Whitten, Bentley, & Dittman, 2007, p. 318)
Context data flow diagram adalah sebuah model proses yang digunakan untuk mendokumentasikan lingkup dari sistem, biasa disebut juga environmental model (Whitten, Bentley, & Dittman, 2007, p. 339) 339).
Gambar 2. 22 Context Data Flow Diagram (Whitten, Bentley, & Dittman, 2007, p. 340) System diagram adalah diagram yang menunnjukkan semua kejadian pada sistem yang terdapat pada single diagram. System diagram merupakan pecahan dari single process yang terdapat pada context diagram (Whitten, Bentley, & Dittman, 2007, p. 348). 348)
Gambar 2. 23 System Diagram (Whitten, Bentley, & Dittman, 2007, pp. 350 350-351). 2.1.7 State Trantition Diagram (STD) State Transition Diagram adalah suatu diagram yang menggambarkan bagaimana suatu proses dihubungkan satu sama lain dalam waktu yang bersamaan.
StateTransition Diagram digambarkan dengan sebuah state
yangberupa komponen sistem yang menunjukkan bagaima bagaimana kejadiankejadian tersebut dari satu state ke state yang lain (Whitten, Bentley, & Dittman, 2007, p. 636). 636) Komponen yang biasa digunakan dalam STD, yaitu:
1.
Keadaan sistem (System state)
State merupakan kumpulan keadaan atau atribut yang mencirikan suatu benda pada waktu atau kondisi tertentu. State disimbolkan dengan persegi panjang. Contohnya: Proses user mengisi password, menentukan instruksi berikutnya. 2.
Perubahan keadaan (Transition state) Perubahan keadaan keadaan digambarkan dengan garis panah berarah yang menghubungkan dua keadaan berkaitan.
3.
Kondisi (Condition) Condition adalah sebuah sinyal yang menyebabkan perubahan keadaan dari state satu ke state berikutnya. Contohnya seperti interrupt signal ata atau data.
4.
Aksi (Action) Action adalahhal yang dilakukan sistem apabila ada perubahan state atau merupakan reaksi terhadap kondisi. Action menghasilkan keluarandari tampilan pesan, cetakanatau alat output lainnya.
Gambar 2. 24 State Transition Diagram (Whitten, Bentley, & Dittman, 2007, p. 636)
2.1.8 Flow Chart Flowchart adalah representasi grafikal dari sebuah sistem yang menjelaskan aspek-aspek sistem informasi secara jelas, tepat, dan logis yang digunakan terutama untuk menjelaskan relasi fisik di antara entitas-entitas kuncinya (Hall, 2011, p. 8) Flowchart (bagan-alir) adalah ekspresi algoritma sebagai sekumpulan bentuk-bentuk geometri, seperti persegi panjang, lingkarang, jajar genjang, dan sebagainya, yang berisi langkah-langkah komputasi (Munir, 2007, p. 19).
start
Read m, n
n=0
True
False r = m MOD n m=n n=r
Print m
stop
Gambar 2. 25 Contoh flowchart (Munir, 2007, p. 20)
2.2
Teori Khusus 2.2.1 PHP PHP (Programming Hypertext Processor) adalah bahasa pemprograman scripting berbasis server side yang dirancang spesifik untuk pengembangan pembuatan web. Dengan halaman HTML, code php dapat tereksekusi setiap kali halaman terebut dikunjungi. PHP merupakan sebuah proyek open source dimana dapat dengan mudah mengakses source code dan menggunakan dan mengubahnya tanpa pungutan biaya (Welling & Thomson, 2009, pp. 2-8). Sampai pada saat ini, PHP telah diluncurkan pada versi 5 yang memiliki keunggulan sebagai berikut: (Welling & Thomson, 2009, pp. 2-8) 1. Object Oriented Pengembangan berorientasi obyek mencoba untuk menggunakan klasifikasi, hubungan, dan sifat dari obyek dalam sistem untuk membantu dalam pengembangan program dan penggunaan kembali kode. Pemprograman yang berorientasi pada obyek yang menyatukannya dalam sebuah class yang terdiri dari data, field, dan method untuk membangun sebuahh aplikasi. 2. Simple Extensible Markup Languange (XML) XML adalah format text tag-based untuk dokumen XML di rancang untuk mengantar dan menyimpan data dengan fokus pada apa yang terdapat pada data, bukan untuk menampilkan data.
2.2.2 XAMPP XAMPP adalah distribusi Apache yang kecil dan ringan yang mengandung teknologi pengembangan web yang paling umum dalam satu paket. Kapasitas kontennya yang kecil dan portabilitasnya membuatnya menjadi tool yang ideal bagi pengguna dalam mengembangkan dan melakukan testing di aplikasi PHP dan MySQL (Dvorski, 2007, p. 1).
2.2.3 My SQL MyStructured Query Language (MySQL) adalah salah satu database server yang menggunakan bahasa Structured Query Language (SQL). SQL adalah bahasa pertanyaan (query language) yang digunakan untuk menanyakan informasi dari sebuah basisdata. MySQL adalah Relational Database Management System (RDBMS) yang sangat cepat. (Welling & Thomson, 2009, pp. 3-8). MySQL merupakan bahasa yang memiliki kemampuan yang cukup baik untuk menunjang kerja user, baik yang telah berpengalaman dengan database maupun untuk pemula. SQL digunakan untuk mencari informasi (query), memanipulasi data (DML), dan mendefinisikan data (DDL). Dalam basis data secara umum dikenal dua bahasa yaitu: (Welling & Thomson, 2009, pp. 3-8) 1. Data Definition Language (DDL) Data Definition Language adalah bahasa yang dipakai untuk menjelaskan obyek dari bahasa data. Data Definition Language digunakan untuk mendefinisikan kerangka basis data. 2. Data Manipulation Language (DML) Data Manipulation Language adalah bahasa yang dipakai untuk memanipulasi obyek data dari basis data . DML dipakai untuk operasi terhadap isi basis data.
2.2.4 Scoring Guidelines Performance Excellence
Gambar 2. 26 Malcolm baldridge education criteria 7 kategori Performance Excellence berbasis Malcolm Baldridge Baldridge: 1) Kepemimpinan (leadership) 2) Perencanaan strategis (strategic planning) 3) Fokus pada pelanggan (customer focused) 4) Pengukuran, analisis, dan manajemen pengetahuan (measurement, analysis, and knowledge management) 5) Fokus pada tenaga kerja (workforce focused) 6) Fokus pada operasi (operation focused) 7) Hasil (result) Proses yang terdiri dari keenam kriteria (1-6) (1 6) diatas diukur dengan pendekatan ADLI (Approach, Deployment, Deployment, Learning, dan Integrated),
sedangkan Kriteria Result diukur dengan pendekatan LeTCi, yaitu: Level, Trend, Comparison dan Integrited). Scoring Guidelines yang digunakan untuk kategori-kategori proses (kategori 1 sampai dengan 6): Tabel 2. 3 Tabel ADLI Scoring Performance Excellence Berbasis Malcolm Baldridge Score
Score 0% or 5%
Description
• No systematic approach to item requirements is evident; information is anecdotal. (A) • Little or no deployment of any systematic approach is evident. (D) • An improvement orientation is not evident; improvement is achieved by reacting to problems. (L) • No organizational alignment is evident; individual areas or work units operate independently. (I)
10 %, 15% 20%, or 25 %
• The beginning of a systematic approach to the basic requirements of the item is evident. (A) • The approach is in the early stages of deployment in most areas or work units, inhibiting progress in achieving the basic requirements of the item. (D) • Early stages of a transition from reacting to problems to a general improvement orientation are evident. (L) • The approach is aligned with other areas or work units largely through joint problem solving. (I)
30%, 35%,
• An effective, systematic approach, responsive
40%, or 45%
to the basic requirements of the item, is evident. (A) • The approach is deployed, although some areas or work units are in early stages of deployment. (D) • The beginning of a systematic approach to evaluation and improvement of key processes is evident. (L)
• The approach is in the early stages of alignment with the basic organizational needs identified in response to the Organizational Profile and other process items. (I) 50%, 55%, 60%, or 65%
• An effective, systematic approach, responsive to the overall requirements of the item, is evident. (A) • The approach is well deployed, although deployment may vary in some areas or work units. (D) • A fact-based, systematic evaluation and improvement process and some organizational learning, including innovation, are in place for improving the efficiency and effectiveness of key processes. (L) • The approach is aligned with your overall organizational needs as identified in response to the Organizational Profile and other process items. (I)
70%, 75%, 80%, or 85%
• An effective, systematic approach, responsive to the multiple requirements of the item, is evident. (A) • The approach is well deployed, with no significant gaps. (D) • Fact-based, systematic evaluation and improvement and organizational learning, including innovation, are key management tools; there is clear evidence of refinement as a result of organizational-level analysis and sharing. (L) • The approach is integrated with your current and future organizational needs as identified in response to the Organizational Profile and other process items. (I)
90%, 95%,
• An effective, systematic approach, fully
or 100%
responsive to the multiple requirements of the item, is evident. (A) • The approach is fully deployed without significant weaknesses or gaps in any areas or work units. (D)
•
Fact-based,
improvement
systematic and
evaluation
organizational
and
learning
through innovation are key organization-wide tools; refinement and innovation, backed by analysis and sharing, are evident throughout the organization. (L) • The approach is well integrated with your current and future organizational needs as identified in response to the Organizational Profile and other process items. (I)
Scoring Guidelines yang digunakan untuk kategori-kategori hasil (results) yaitu kategori 7: Tabel 2. 4 Tabel LeTCI Scoring Performance Excellence Berbasis Malcolm Baldridge Score
Description
Score
• There are no organizational performance results, or the
0% or 5%
results reported are poor. (Le)• Trend data either are not reported or show mainly adverse trends. (T) • Comparative information is not reported. (C) • Results are not reported for any areas of importance to the accomplishment of your organization’s mission. (I)
10 %, 15%
• A few organizational performance results are reported,
20%, or 25 %
responsive to the basic requirements of the item, and early good performance levels are evident. (Le) • Some trend data are reported, with some adverse trends evident. (T) • Little or no comparative information is reported. (C) • Results are reported for a few areas of importance to the accomplishment of your organization’s mission. (I)
30%, 35%, 40%, or 45%
• Good organizational performance levels are reported, responsive to the basic requirements of the item. (Le) • Some trend data are reported, and most of the trends
presented are beneficial. (T) • Early stages of obtaining comparative information are evident. (C) • Results are reported for many areas of importance to the accomplishment of your organization’s mission. (I)
50%, 55%, 60%, or 65%
• Good organizational performance levels are reported, responsive to the overall requirements of the item. (Le) • Beneficial trends are evident in areas of importance to the accomplishment of your organization’s mission. (T) • Some current performance levels have been evaluated against relevant comparisons and/or benchmarks and show areas of good relative performance. (C) • Organizational performance results are reported for most key student and other customer, market, and process requirements. (I)
70%, 75%,
• Good-to-excellent organizational performance levels
80%, or 85%
are reported, responsive to the multiple requirements of the item. (Le) • Beneficial trends have been sustained over time in most areas of importance to the accomplishment of your organization’s mission. (T) • Many to most trends and current performance levels have been evaluated against relevant comparisons and/or benchmarks and show areas of leadership and very good relative performance. (C) • Organizational performance results are reported for most key student and other customer, market, process, and action plan requirements. (I)
90%, 95%, or 100%
• Excellent organizational performance levels are reported that are fully responsive to the multiple requirements of the item. (Le)
• Beneficial trends have been sustained over time in all areas of importance to the accomplishment your organization’s mission. (T) • Industry and benchmark leadership is demonstrated in many areas. (C) • Organizational performance results and projections are reported for most key student and other customer, market, process, and action plan requirements. (I)
2.3
Hasil Penelitian Aplikasi Sejenis Penjelasan mengenai aplikasi sejenis Performance Excellence berbasis Malcolm Baldridge: 1) ISO 9000 ISO 9000 adalah kumpulan standar untuk sistem manajemen mutu (SMM). ISO 9000 yang dirumuskan oleh TC 176 ISO, yaitu organisasi internasional di bidang standardisasi. ISO 9000 pertama kali dikeluarkan pada tahun 1987 oleh International Organization for Standardization Technical Committee (ISO/TC) 176. 8 prinsip manajemen mutu pada ISO 9000: 1.
Fokus pelanggan
2.
Kepemimpinan
3.
Dukungan(Keterlibatan) karyawan
4.
Pendekatan Proses
5.
Pendekatan sistem terhadap manajemen
6.
Perbaikan berkesinambungan
7.
Pendekatan factual dalam pengambilan keputusan
8.
Hubungan pemasok yang saling menguntungkan
Perbedaan MBNQA dan ISO 9000 adalah dari aspek:
•
Tujuan
•
Isi
•
Fokus penghargaan.
Kekurangan ISO 9000:
•
Besarnya kebutuhan biaya dan waktu pada saat menyiapkan informasi perusahaan secara manual.
2) Deming Prize Deming Prize adalah penghargaan nasional kepada individu atau organisasi (baik organisasi kecil maupun organisasi besar) yang mencapai prestasi di bidang pengendalian mutu. Tujuan dari penghargaan ini adalah mempromosikan kesadaran mengenai mutu, kualitas, idntifikasi kebutuhan untuk kualitas yang unggul. Deming prize di bagi 4 kategori: 1.
Deming prize for individual person: penghargaan yang di berikan kepada seseorang atau individu yang memberikan kontribusinya dalam meningkatkan kualitas mutu.
2.
Deming prize for Division: diberikan kepada divisi yang mencapai peningkatan kinerja luarbiasa melalui penerapan company wide quality control berdasarkan statistical quality control.
3.
Deming prize for small business: diberikan kepada usaha berskala kecil atau menengah.
4.
Quality Control Award: diberikan kepada perusahaan yang terus menerus menunjukan komitmen nya terhadap total quality control paling tidak tahun setelah mendapatkan deming prize. Kategori yang dinilai:
1.
Kebijakan
2.
Organisasi dan koperasi
3.
Pencarian dan penggunaan informasi
4.
Analisis
5.
Perancangan kedepannya
6.
Pelatihan
7.
Jaminan mutu
8.
Dampak mutu
9.
Standarisasi
10. Pengendalian