Bab 2 Landasan Teori
2.1
Teori-teori Dasar / Umum 2.1.1
Data Data berasal dari bahasa Latin yaitu datum yang berarti fakta, kejadian, kenyataan atau peristiwa. Mengacu pada tulisan Kenneth C. Laudon dan Jane P. Laudon (2008), data dapat didefinisikan sebagai kumpulan fakta-fakta yang berupa fisik dan non fisik, kejadian-kejadian dan prosedur yang belum diolah manusia atau peralatan yang digunakan manusia. Data dapat digunakan sebagai bahan dasar yang objektif di dalam proses penyusunan kebijaksanaan dan keputusan oleh pimpinan organisasi. Data merupakan keterangan yang masih mentah atau belum diolah. Agar dapat digunakan, maka data itu harus diolah terlebih dahulu ke dalam bentuk informasi yang sesuai dengan keperluan yang dibutuhkan. Data dependence adalah data yang terikat oleh program aplikasi. Jadi ketika kita mengganti data, data pada program aplikasi juga akan terganti. Istilah lainnya menyebutkan sebagai data structure dependence, yaitu
ketergantungan
terhadap
5
struktur
data.
6 Data independence adalah data yang bebas, tidak terikat program aplikasi. Jadi ketika kita mengganti data, data pada program aplikasi tidak terganti.
2.1.2
Basis Data (Database) Mengacu pada tulisan Thomas Connolly (2008), basis data adalah kumpulan data yang terkait secara logis dimana deskripsi data ini dirancang untuk memenuhi kebutuhan informasi organisasi. Basis data bersifat tunggal, artinya satu gudang besar data digunakan secara bersamaan oleh banyak departemen dan pengguna. Penggunaan basis data akan mencegah redundansi data, yaitu kondisi dimana terdapat banyak duplikasi data. Basis data tidak hanya memegang data operasional organisasi tetapi juga deskripsi dari data ini. Untuk alasan ini, basis data juga didefinisikan sebagai kumpulan dari record yang terintegrasi. Basis data terdiri atas banyak entitas. Setiap entitas memiliki atribut dan hubungan. Atribut adalah properti yang menggambarkan beberapa aspek dari objek yang ingin kita simpan, sedangkan hubungan (relationship) adalah asosiasi antar entitas. Bahasa basis data terbagi atas 2 jenis, yaitu: 1.
Data Definition Language (DDL) - Bahasa
yang
memungkinkan
DBA
atau
user
untuk
mendefinisikan, menerangkan, dan memberi nama entitas-entitas, atribut, serta relasi yang dibutuhkan untuk aplikasi, termasuk batasan-batasan keamanan dan integritasnya.
7 2.
Data Manipulation Language (DML) - Bahasa yang menyediakan operasi dasar manipulasi data pada data yang terdapat dalam basis data. Adapun operasi yang dapat dilakukan adalah memasukkan, memodifikasi, memanggil, dan menghapus data.
Basis data dikelola dalam suatu sistem yang disebut Siklus Hidup Sistem Basis Data (Database Lifecycle). Menurut Connolly (2005, p282), siklus hidup sistem basis data adalah komponen pokok dari sebuah sistem informasi yang digunakan pada perusahaan serta penggunaannya harus dilihat dari sudut pandang kebutuhan perusahaan yang lebih besar. Pengertian sistem informasi adalah sumber-sumber mengenai koleksi, manajemen, kontrol dan diseminasi informasi perusahaan.
Gambar 2.1 Gambar Siklus Hidup Sistem Basis Data
8 Database lifecycle mempunyai beberapa tahan dari siklus hidup aplikasi yaitu: 1. Perancangan basis data: bagaimana tahapan-tahapan siklus hidup dapat direalisasikan secara lebih efisien dan efektif. 2. System definition: Pendefinisian ruang lingkup dari sistem basis data, pengguna dan aplikasinya. 3. Design: perancangan sistem basis data secara konseptual, logikal dan fisikal dilakukan sesuai dengan sistem manajemen basis data yang diinginkan. 4. Implementasi: proses dari penulisan definisi basis data secara konseptual, eksternal, internal, dan pembuatan file-file database yang kosong, serta implementasi aplikasi software. 5. Loading dan Data Conversion: database ditempatkan baik secara memanggil data secara langsung ataupun merubah file-file yang ada ke dalam format sistem basis data dengan memanggilnya kembali. 6. Application Conversion: beberapa aplikasi software dari suatu sistem sebelumnya dikonversikan ke suatu sistem yang baru. 7. Testing dan Validation: sistem yang baru dites dan diuji kebenarannya. 8. Operation: operasi-operasi pada sistem basis data dan aplikasiaplikasinya. 9. Monitoring dan Maintenance: selama fase operasi, sistem secara konstan memonitor dan memelihara basis data. Pertambahan dan pengembangan data dan aplikasi-aplikasi software dapat terjadi.
9 Modifikasi dan pengaturan kembali basis data mungkin diperlukan dari waktu ke waktu.
Langkah 3, 4, dan 5 merupakan bagian dari fase design dan implementation pada siklus kehidupan sistem informasi yang besar. Pada umumnya basis data pada organisasi menjalani seluruh aktifitas siklus kehidupan di atas. Langkah 5 dan 6 tidak berlaku jika basis data dan aplikasi-aplikasinya baru.
2.1.3 Model Relasional Beberapa istilah dalam model relasional: -
Relation, table, atau file adalah tabel yang terdiri dari beberapa baris dan kolom
-
Attribute, column, atau field adalah kolom
-
Tuple, row, atau record adalah baris
-
Domain adalah himpunan nilai atribut
-
Degree adalah banyaknya atribut
-
Cardinality adalah banyaknya baris
Relational Key terdiri dari: -
Super key: himpunan field yang mengidentifikasi secara unik barisbaris dalam relasi
-
Candidate key: calon-calon field yang akan dipilih menjadi primary key
10 -
Composite key: candidate key yang memiliki lebih dari 1 field
-
Primary key: suatu nilai dalam basis data yang digunakan untuk mengidentifikasi suatu baris dalam tabel. Nilai dari primary key adalah unik.
-
Foreign key: Sebuah kumpulan field dalam satu relasi yang digunakan untuk menunjuk ke suatu baris pada relasi yang lain (harus berhubungan dengan primary key pada relasi yang kedua)
-
Alternate key: candidate key yang tidak terpilih sebagai primary key.
Jenis-jenis operasi join : -
Join / Equijoin atau biasa disebut sebagai Inner Join atau Simple Join adalah bentuk kondisi join dimana nilai relasi yang terjadi antar dua tabel (binary relation) adalah sama (terdapat hubungan antara Primary Key dan Foreign Key).
-
Outer Join adalah bentuk kondisi join untuk mencari nilai join yang memenuhi dari kedua tabel, ditambah nilai yang tidak memenuhi dari salah satu sisi tabel tersebut.
-
Natural Join adalah suatu statement join yang membandingkan kolom umum kedua tabel satu sama lain.
2.1.4
Database Design Database design adalah proses pembuatan model data sebuah basis data yang mendetail. Tujuannya adalah dapat menggambarkan relasi data antara data yang dibutuhkan oleh aplikasi dan user.
11 Pembuatan desain basis data dapat dilakukan dengan menggunakan model data. Model data merupakan sekumpulan konsep yang digunakan untuk mendeskripsikan struktur dari sebuah basis data. Adapun struktur tersebut terdiri atas tipe data, hubungan, dan batasan-batasan dari setiap data. Selain itu, model data juga mendeskripsikan perilaku-perilaku khusus dari aplikasi basis data. Hal ini akan memudahkan perancang basis data untuk membuat operasi-operasi yang sesuai untuk setiap user. Model data berfungsi untuk mendukung pembuatan sistem informasi dengan menyediakan informasi dan susunan data. Tiga fase dalam pembuatan desain basis data, yaitu : 1.
Conceptual Database Design Proses pembentukan model yang berasal dari informasi independen yang digunakan dalam perusahaan. Model data dibangun dengan memakai informasi dalam spesifikasi kebutuhan user dan merupakan sumber informasi untuk fase desain logikal. Model data ini terdiri atas kelas entitas, hubungan antar entitas, dan menjelaskan ruang lingkup model. Langkah-langkah perancangan konseptual: 1.
Mengidentifikasi tipe entitas Tahap ini bertujuan untuk menentukan entitas-entitas utama yang dibutuhkan dalam sistem. Entitas-entitas ini dibuat dalam tabel yang berisi nama entitas, deskripsi, alias, dan kejadian pada setiap entitas.
12 2.
Mengidentifikasi tipe relationship Tahap ini mengidentifikasi hubungan yang terjadi antar entitas yang
telah
diidentifikasi
sebelumnya.
Tujuannya
untuk
menentukan hubungan-hubungan yang penting di antara entitas yang ada. Langkah- langkah yang dilakukan: a.
Pembuatan Entity Relationship Diagram
b.
Penentuan multiplicity dari relasi. Multiplicity menyatakan banyaknya kemungkinan hubungan antar entitas, umumnya dinyatakan dengan 1..1 atau 1..*. Sedangkan relasi menjelaskan bagaimana hubungan dari 1 entitas ke entitas lainnya.
3. Mengidentifikasi dan menghubungkan atribut dengan tipe entitas atau relationship. Tujuan dari tahap ini adalah untuk mengasosiasikan atribut dari setiap tipe entitas atau relasi. 4. Menentukan atribut domain Tujuannya untuk menetapkan atribut domain dalam model data konseptual lokal. Domain merupakan sekumpulan nilai-nilai dimana satu atau lebih atribut menggambarkan nilainya. 5. Menentukan candidate key dan primary key Hal ini dilakukan dengan terlebih dahulu memilih candidate key untuk setiap entitas. Jika ada lebih dari 1 candidate key, maka 1 akan dipilih menjadi primary key sedangkan sisanya menjadi alternate keys.
13 6. Mempertimbangkan
penggunaan
dari
enhanced
modeling
concepts. (optional) Tahap
yang
mengembangkan
bersifat model
optional ER
ini
yang
digunakan
telah
dibuat
untuk dengan
menggunakan metode-metode seperti spesialisasi, generalisasi, agregasi, dan komposisi. 7. Mengecek redundancy pada model Tahap ini digunakan untuk mengecek conceptual data model yang telah dibuat dan mengidentifikasi serta menghilangkan redundansi yang ada. Langkah-langkahnya: a.
Mengecek ulang hubungan one-to-one (1:1) Pada saat mengidentifikasi entitas, mungkin akan ditemukan 2 entitas yang merepresentasikan objek yang sama di dalam sistem. Dalam kasus ini, kedua entitas tersebut akan digabung dan jika primary key-nya berbeda, maka akan dipilih salah satunya.
b. Menghilangkan relasi redundan Sebuah relasi dikatakan redundan apabila suatu informasi yang sama bisa didapatkan dari relasi yang lain. c. Mempertimbangkan time dimension Dalam menentukan redudansi, perlu dipertimbangkan juga mengenai apakah hubungan antar entitas bisa berubah seiring berjalannya waktu. Hal ini bisa membuat suatu relasi
14 yang mungkin dianggap redundan sekarang bisa menjadi tidak redundan di kemudian hari. 8. Memvalidasikan model konseptual dengan transaksi pengguna Tahap ini digunakan untuk memastikan model yang telah dibuat mampu mendukung transaksi-transaksi yang akan terjadi. Ada 2 macam cara yang bisa digunakan untuk melakukan tahap ini, yaitu: a.
Mendeskripsikan semua transaksi-transaksi yang ada
b.
Melihat jalur transaksi Cara ini dilakukan dengan melihat jalur yang dilewati setiap transaksi di dalam diagram. Dengan demikian, akan terlihat bagian mana yang tidak dibutuhkan dan bagian mana yang dibutuhkan.
9. Mengevaluasi conceptual data model dengan pengguna Tahap terakhir dari perancangan konseptual ini dilakukan untuk mengecek kesesuaian model yang dibuat dengan kebutuhan pengguna. Selain itu, tahap ini juga dilakukan agar pengguna mendapatkan gambaran nyata dari model yang akan dibuat.
2.
Logical Database Design Proses pembentukan model yang berasal dari informasi yang digunakan dalam perusahaan berdasarkan model data tertentu, independen terhadap DBMS dan aspek fisik lainnya. Langkah-langkah perancangan logikal:
15 1.
Mendapatkan relasi untuk model data logikal. Pada tahap ini, komposisi dari setiap relasi dideskripsikan menggunakan Database Definition Language (DBDL). Relasi didapatkan dari struktur-struktur berikut di data model konseptual: a.
Strong entity Membuat relasi yang mencakup semua atribut sederhana untuk setiap entitas yang kuat di dalam model data.
b.
Weak entity Membuat relasi yang mencakup semua atribut sederhana dari entitas yang lemah di dalam model data.
c.
Relasi one-to-many Untuk setiap relasi 1:*, entitas yang memegang bagian 1 akan menjadi parent, sedangkan bagian yang * akan menjadi child.
d.
Relasi one-to-one Relasi 1:1 terbagi kondisinya tergantung pada keharusan partisipasi dari setiap entitas.
e.
Relasi one-to-one rekursif Relasi 1:1 dimana setiap entitas dari relasi adalah sama.
f.
Relasi superclass/subclass Superclass akan menjadi parent sementara subclass akan menjadi child.
16 g.
Relasi many-to-many Untuk setiap relasi *:*, maka akan dibuat sebuah entitas baru dengan isi primary key dari setiap entitas yang membentuknya dan akan menjadi foreign key. Salah satu ataupun kedua foreign key tersebut bisa menjadi primary key dan ditambah dengan atribut lainnya.
h.
Relasi complex Relasi complex merupakan relasi yang dihasilkan oleh lebih dari 2 entitas.
i.
Atribut multi-value Suatu entitas memiliki atribut multi-value apabila nilai suatu atributnya bisa lebih dari 1. Untuk atribut seperti ini, maka akan dibuat relasi baru dimana entitas baru akan memuat nilai-nilai yang ada.
2.
Memvalidasikan relasi menggunakan normalisasi Pada tahap ini, setiap pengelompokan dari atribut-atribut di setiap
relasi
divalidasikan
dengan
menggunakan
aturan
normalisasi. Mengacu pada pendapat Thomas Connolly (2008), normalisasi
dapat
didefinisikan
sebagai
teknik
dengan
pendekatan bottom-up yang digunakan untuk membantu mengidentifikasi hubungan, yang dimulai dari menguji hubungan ketergantungan fungsional antar atribut. Tujuan dari normalisasi adalah mengidentifikasi kesesuaian hubungan yang mendukung data untuk memenuhi kebutuhan perusahaan. Teknik validasi
17 dalam peranan normalisasi digunakan untuk memeriksa apakah struktur relasi yang dihasilkan oleh ER modelling itu baik atau tidak. Proses Normalisasi: 1.
Unnormalized Form (UNF) Suatu tabel yang berisikan satu atau lebih grup yang berulang. Table yang unnormalized dapat dibuat dengan memindahkan data dari sumber informasi.
2. First Normal Form (1NF) Sebuah relasi dimana setiap baris dan kolom hanya berisikan satu nilai. Proses ini dilakukan dengan menentukan satu atau kumpulan atribut sebagai key untuk tabel unnormalized. Lalu mengidentifikasikan dan menghapus grup yang berulang dalam tabel unnormalized. 3. Second Normal Form (2NF) Relasi dalam 1NF dan setiap atribut non primary key bersifat full functional dependent pada primary key. Proses 1NF ke 2NF adalah pertama-tama identifikasi primary key untuk relasi 1NF, lalu identifikasikan functional dependencies dalam relasi. Jika terdapat partial dependencies terhadap primary key, maka hapus dengan menempatkan dalam relasi yang baru bersama dengan salinan determinannya.
18 4. Third Normal Form (3NF) Relasi dalam 1NF dan 2NF dan dimana tidak terdapat atribut non primary key yang bersifat transitive dependent pada primary key. Proses 2NF ke 3NF adalah dimulai dengan identifikasi primary key dalam relasi 2NF, lalu identifikasi functional dependencies dalam relasi, dan jika terdapat transitive dependencies terhadap primary key, hapus dengan menempatkannya dalam relasi yang baru bersama dengan salinan determinannya. 5. Boyce-Codd Normal Form (BCNF) Aturan Boyce-Codd adalah sebuah relasi jika dan hanya jika determinan adalah candidate key. Pengujian terhadap BCNF dilakukan dengan cara mengidentifikasi semua determinan dan memastikan bahwa semuanya adalah candidate key. Determinan adalah sebuah kelompok atribut dimana beberapa atribut lain bergantung terhadapnya. 6. Fourth Normal Form (4NF) Bila R(A,B,C) merupakan suatu relasi, dengan A, B, C adalah atribut – atribut relasi tersebut, maka proyeksi dari R berupa (A, B) dan (A, C) jika R memenuhi MVD: A -->> B | C Perlu diketahui, bila terdapat: A --->> B
19 A --->> C Maka keduanya dapat ditulis menjadi: A --->> B | C Secara praktis, suatu relasi memenuhi bentuk normal keempat jika: – telah berada pada BCNF, dan – tidak mengandung dua atribut atau lebih yang bernilai banyak.
7. Fifth Normal Form (5NF) Dependensi gabungan mendasari bentuk normal kelima. Suatu relasi R (X, Y, ..., Z) memenuhi dependensi gabungan jika: Gabungan dari proyeksi A, B, ..., C dengan A, B, ..., C merupakan sub-himpunan dari atribut-atribut R. Dependensi gabungan sesuai dengan definisi di atas dinyatakan dengan notasi: * (A, B, ..., C) dengan A = XY B = YZ C = ZX Bentuk 5NF, yang terkadang disebut PJ/NF (Projection Join/Normal
Form),
menggunakan
acuan
dependensi
20 gabungan. Suatu relasi berada dalam 5NF jika dan hanya jika setiap dependensi gabungan dalam R tersirat oleh kunci kandidat relasi R. Secara praktis dapat dikatakan bahwa suatu relasi R berada dalam 5NF jika data yang ada padanya tak dapat lagi didekomposisi menjadi relasirelasi yang lebih kecil dengan kunci kandidat relasi-relasi yang lebih kecil ini tidak sama dengan kunci kandidat relasi. 3.
Memvalidasikan relasi terhadap transaksi pengguna Tahap ini memastikan model data logikal yang telah dibuat sudah memenuhi kebutuhan transaksi pengguna seluruhnya.
4.
Mengecek integritas constraint Merupakan batasan-batasan yang dibuat untuk mencegah basis data menjadi tidak lengkap, tidak akurat, ataupun tidak konsisten. Beberapa batasan yang perlu diperhatikan: o
Data yang selalu dibutuhkan Ini menyatakan beberapa atribut tidak boleh kosong.
o
Batasan domain atribut Setiap atribut memiliki ruang lingkup nilai yang sah.
o
Multiplicity Batasan ini berkaitan dengan banyaknya suatu data di dalam 1 basis data.
o
Integritas entitas Primary key dari setiap entitas tidak boleh kosong.
21 o
Integritas referensi Integritas referensi maksudnya jika foreign key memiliki nilai, maka nilai tersebut harus ada di relasi parent.
o
General constraints Tahap ini mencakup batasan-batasan yang ada dari hal-hal yang tidak berhubungan langsung dengan sistem. Contohnya peraturan perusahaan.
5.
Mengevaluasi data model logikal dengan pengguna Pada tahap ini, data model logikal seharusnya sudah lengkap. Salah satu cara yang bisa digunakan adalah menggunakan Data Flow Diagram. Untuk memastikan kesesuaiannya, maka perlu dilakukan pemeriksaan oleh pengguna. Dengan demikian, jika ada bagian yang dirasa belum sesuai oleh pengguna, maka hal tersebut masih bisa diperbaiki.
6.
Menggabungkan data model logikal ke model global (optional) Model global merupakan model data yang merepresentasikan sudut pandang dari seluruh pengguna basis data.
7.
Mengecek perkembangan ke masa depan Desain logikal basis data yang telah dibuat haruslah bisa dikembangkan untuk mendukung perkembangan ke masa yang akan datang.
22 3.
Physical Database Design Skema ini menjelaskan bagaimana fisik penyimpanan data pada penyimpanan sekunder, serta menggambarkan struktur penyimpanan dan metode akses yang dipakai untuk mencapai akses yang efisien terhadap data. Langkah-langkah pembuatan model data fisikal: 1.
Mengubah model data logikal menjadi sesuai dengan DBMS target a.
Mendesain relasi dasar Menentukan bagaimana merepresentasikan relasi dasar yang ada di model data logikal.
b.
Mendesain representasi dari data turunan Menentukan bagaimana merepresentasikan data turunan, yaitu data yang nilainya didapat dari nilai atribut lain, yang ada di model data logikal.
c.
Mendesain general constraints Menentukan batasan-batasan untuk diterapkan di DBMS target.
2.
Mendesain pengorganisasian file dan index a.
Menganalisa transaksi Mengevaluasi fungsionalitas dari semua transaksi dan menganalisa transaksi-transaksi penting.
b.
Menentukan pengorganisasian file Menentukan pengorganisasian yang efisien untuk setiap relasi dasar.
23 c.
Menentukan index Menentukan perlu tidaknya menggunakan index dan efeknya terhadap performa sistem.
d. 3.
Menentukan kebutuhan kapasitas memori
Mendesain user views Mendesain user views yang telah diidentifikasi sebelumnya.
4.
Mendesain mekanisme keamanan Mendesain mekanisme keamanan sesuai kebutuhan pengguna, baik itu keamanan data maupun keamanan sistem.
2.1.5
Application Design Merupakan suatu perancangan user interface dan program aplikasi yang menggunakan dan melakukan proses terhadap basis data. Transaction design adalah tindakan mengakses dan mengubah isi basis data yang dilakukan oleh user atau program aplikasi. Tiga tipe utama transaksi, yaitu: 1.
Retrieval : mendapatkan data untuk ditampilkan di layar
2.
Update : insert, delete, update record pada basis data
3.
Mixed : gabungan retrieval dan update
2.1.6 Program Aplikasi Program
aplikasi
adalah
sebuah
program
komputer
yang
berinteraksi dengan basis data yang mengeluarkan permintaan yang sesuai (biasanya berupa pernyataan SQL) kepada DBMS. User
24 berinteraksi dengan basis data melalui sejumlah program aplikasi yang digunakan untuk membuat, mengatur basis data dan mengeluarkan informasi. Program-program ini dapat berupa aplikasi batch, atau yang lebih khusus saat ini adalah aplikasi desktop, aplikasi online. Program aplikasi dapat ditulis dalam beberapa bahasa pemrograman atau dalam bahasa tingkat yang lebih tinggi seperti bahasa generasi keempat.
2.2
Teori-teori Khusus yang Berhubungan dengan Topik yang Dibahas 2.2.1
Embedded Database Sistem embedded database adalah sebuah DBMS yang terintegrasi dengan software aplikasi yang membutuhkan akses ke data yang tersimpan, dengan sistem basis data yang tersembunyi dari end-user dan membutuhkan sedikit atau bahkan tanpa pengaturan dan pemeliharaan. Jenis basis data seperti ini digunakan pada aplikasi yang penggunanya tidak tahu menahu mengenai pengaturan basis data. Salah satu jenis Embedded Database adalah Oracle TimesTen, yang merupakan hasil akuisisi TimesTen oleh Oracle pada 20 Juni 2005. Embedded database ini menyimpan data dalam memori utama dan menunjuk secara langsung ke aplikasi, sehingga waktu pemrosesan data menjadi sederhana dan secepat pengaksesan RAM. Selain itu Oracle TimesTen juga mendukung semua perintah dari Oracle seperti PL/SQL. Oracle TimesTen bekerja dengan sistem In-Memory Database System (IMDS), yaitu sistem dimana basis data tidak selalu mengakses disk, melainkan menyimpan data di memori utama. Sistem ini
25 menyimpan ke hard disk hanya pada waktu-waktu tertentu yang sudah ditentukan oleh aplikasi. Hal inilah yang membuat IMDS memiliki waktu pemrosesan yang cepat. Dengan dihilangkannya proses masukan dan keluaran disk, basis data jenis ini juga didesain lebih sederhana, contohnya dengan dihilangkannya caching. Desain yang lebih sederhana ini juga meninggalkan jejak yang lebih sedikit, sehingga tidak menguras memori. Selain itu, keunggulan IMDS adalah kemampuannya untuk mengatasi kegagalan sistem yang mengacaukan data di memori. Hal ini bisa dilakukan mengingat proses basis data ini menggunakan hard disk, yang mana merupakan memori nonvolatile (data tidak hilang walaupun masukan listrik padam), untuk pembuatan backup dan log. Untuk terhubung ke aplikasi, Oracle TimesTen mendukung ODBC (Open DataBase Connectivity) dan JDBC (Java DataBase Connectivity). Hal ini memungkinkan Oracle TimesTen untuk terhubung dengan berbagai jenis bahasa pemrograman.
2.2.2 .NET Application Dengan Windows Forms, kita dapat mengembangkan smart clients. Smart client adalah aplikasi yang mudah dibuat, diperbaharui, yang kaya akan grafik, dapat bekerja ketika terhubung ataupun terputus dari internet, dan dapat mengakses sumber daya pada komputer lokal dalam cara yang lebih aman. Windows form adalah teknologi smart client untuk framework .NET, satu set perpustakaan yang dikelola yang menyederhanakan tugas-
26 tugas aplikasi umum seperti membaca dan menulis ke dalam sistem file. Bila kita menggunakan lingkungan pengembangan seperti Visual Studio, kita dapat membuat aplikasi Windows Forms smart client yang menampilkan
informasi,
membutuhkan
inputan
pengguna,
dan
berkomunikasi dengan komputer yang di-remote melalui jaringan. Pada Windows Form, sebuah form adalah permukaan visual dimana kita menampilkan informasi kepada pengguna. Kita biasanya membangun aplikasi Windows Forms dengan menambahkan kontrol ke forms dan mengembangkan tanggapan terhadap tindakan pengguna, seperti klik mouse atau penekanan tombol. Kontrol adalah elemen diskrit antarmuka pengguna yang menampilkan data atau menerima input data. Ketika seorang pengguna melakukan sesuatu terhadap form atau salah satu dari kontrolnya, maka aksi akan menghasilkan sebuah event. Aplikasi akan bereaksi terhadap event melalui kode dan proses event ketika mereka terjadi. Banyak aplikasi harus menampilkan data dari basis data, file XML, Web Service XML, atau sumber data lainnya. Windows Forms menyediakan
kontrol
yang
fleksibel
yang
dinamakan
kontrol
DataGridView untuk menampilkan data tabular, sehingga setiap bagian dari data menempati selnya sendiri. Kita dapat membuat kontrol databound secara mudah dengan menggunakan window Data Sources. Window ini menampilkan sumber data seperti basis data, web service, dan objek-objek yang terdapat di dalam proyek.
27 2.2.3 Asuransi Jiwa Setiap hari, baik individual maupun bisnis, memungkinkan terjadinya resiko. Sebagai contoh, seorang individu yang berprofesi sebagai pencari nafkah dalam keluarga dapat saja mengalami kecelakaan mobil ketika mengemudi, meninggalkan keluarganya tanpa pemasukan ketika dia tidak dapat melakukan tugasnya. Sebuah perusahaan dapat menghadapi resiko kehilangan barang-barangnya akibat kebakaran. Dalam menghadapi resiko, seseorang dapat : 1. Menghindari resiko Kita dapat menghindari resiko dari cidera yang dihasilkan dari kecelakaan pesawat dengan tidak berpergian naik pesawat. 2. Mengontrol resiko Seseorang dapat mengontrol resiko misalnya, setelah mencapai usia 40 tahun seseorang itu mengecek penyakit-penyakit yang ada dalam dirinya sebelum semuanya terlambat. 3. Menerima resiko Atasan dapat memberikan biaya kesehatan kepada pekerjanya dengan menyisihkan uang yang harus dibayar untuk biaya kesehatan mereka dari penghasilan mereka sekarang. 4. Mentransfer resiko Pencari nafkah dapat mentransfer resiko kematian dini atau ketidakmampuan kepada pihak asuransi dengan membayar sejumlah premi kepada pihak asuransi. Sebagai balasannya, pihak asuransi
28 berjanji untuk membayar sejumlah nilai atas kejadian yang diasuransikan. Asuransi jiwa adalah asuransi yang memberikan proteksi terhadap kerugian ekonomi yang disebabkan oleh kematian dari orang yang diasuransikan. Asuransi jiwa adalah sebuah mekanisme efektif untuk memberikan proteksi terhadap resiko pribadi yaitu, resiko kematian dini, resiko usia lanjut, dan resiko kesehatan yang buruk. Asuransi jiwa juga dapat digunakan dengan tujuan seperti: 1.
Investasi kendaraan
2.
Proteksi terhadap kreditor
3.
Donasi amal
4.
Pendanaan kematian Asuransi jiwa tidak hanya sebagai suatu alat pengatur resiko yang
efektif untuk individu. Asuransi jiwa juga secara umum digunakan untuk bisnis dengan tujuan: 1.
Kelanjutan bisnis
2.
Perpanjangan kredit
Beberapa istilah dalam asuransi jiwa: -
Premi adalah sejumlah uang yang harus dibayar secara berkala oleh calon pemegang polis atas produk yang telah dibeli kepada pihak asuransi.
-
Polis adalah bukti tertulis atau surat perjanjian antara pihak-pihak yang mengadakan perjanjian, baik nasabah atau pihak asuransi. Fungsi polis bagi nasabah (tertangggung):
29 1.
Sebagai bukti tertulis atas jaminan penangggungan untuk mengganti kerugian yang mungkin dideritanya yang ditanggung oleh polis.
2.
Sebagai bukti pembayaran premi kepada penanggung.
3.
Sebagai bukti otentik untuk menuntut penanggung bila lalai atau tidak memenuhi jaminannya.
Fungsi polis bagi perusahaan asuransi (penanggung): 1.
Sebagai bukti atau tanda terima premi asuransi dari tertanggung.
2.
Sebagai bukti tertulis atas jaminan yang diberikannya kepada tertanggung untuk membayar ganti rugi yang mungkin diderita oleh tertanggung.
3.
Sebagai bukti otentik untuk menolak tuntutan ganti rugi atau klaim bila penyebab ganti rugi tidak memenuhi syarat polis.
-
Pemegang polis adalah seseorang yang mempunyai kuasa atas polis yang dibelinya dengan membayar premi kepada pihak asuransi, disini pemegang polis dapat berperan sebagai tertanggung atau tidak.
-
Penanggung adalah suatu badan perusahaan yang menanggung orang yang diasuransikan sejumlah nilai dan kejadian tertentu yang telah disepakati dalam persyaratan polis.
-
Tertanggung adalah seseorang yang diasuransikan.
-
Penerima manfaat adalah satu atau lebih individu yang didaftarkan oleh pemegang polis yang menerima manfaat apabila tertanggung mengalami kejadian seperti yang telah disepakati dalam polis.
30 -
Know Your Customer (KYC) adalah suatu teknik yang digunakan oleh pihak asuransi untuk lebih mengenal nasabah dari sisi keuangan.
-
Net worth adalah besarnya total aset seseorang atau perusahaan yang telah dikurangi kredit.
-
Cash flow adalah besarnya pemasukan dan pengeluaran seseorang dalam suatu periode tertentu.
-
Surat Pengajuan Asuransi Jiwa (SPAJ) adalah formulir yang harus diisi oleh calon nasabah untuk menjadi nasabah pada perusahaan asuransi jiwa.