10 II.1. Konsep Sistem Pendukung Keputusan
Definisi sistem adalah sekumpulan hal atau kegiatan atau elemen atau subsistem yang saling bekerja sama atau yang dihubungkan dengan cara-cara tertentu sehingga membentuk satu kesatuan untuk melaksanakan suatu fungsi guna mencapai suatu tujuan. Sedangkan Sistem Penunjang Keputusan (SPK) merupakan sebuah sistem berbasis komputer yang membantu dalam proses pengambilan keputusan. SPK juga sebagai sistem informasi berbasis komputer yang adaptif, interaktif dan fleksibel, yang secara khusus dikembangkan untuk mendukung solusi dari pemasalahan manajemen yang tidak terstruktur untuk meningkatkan kualitas pengambilan keputusan. Dengan demikian dapat ditarik satu definisi tentang SPK yaitu sebuah sistem berbasis komputer yang adaptif, fleksibel, dan interaktif yang digunakan untuk memecahkan masalah-masalah tidak terstruktur sehingga meningkatkan nilai keputusan yang diambil. (Henry Wibowo S: 2009 : B-63).
Secara umum, sistem pendukung keputusan (SPK) adalah sistem berbasis komputer yang interaktif, yang membantu pengambil keputusan memanfaatkan data dan model untuk menyelesaikan masalah-masalah yang tak terstruktur dan semi terstruktur. Sebenarnya definisi awalnya, SPK adalah sistem berbasis model yang terdiri dari prosedur-prosedur dalam pemrosesan data dan pertimbangannya untuk membantu manajer dalam mengambil keputusan. Agar berhasil mencapai
tujuannya maka sistem tersebut harus sederhana, mudah untuk dikontrol, mudah beradaptasi, lengkap pada hal-hal penting, dan mudah berkomunikasi dengan user. (Julianto Lemantara : 2008 : 3)
II.2. Logika Fuzzy
Fuzzy diperkenalkan dalam paper yang dibuat oleh Lofti A Zadeh, dimana Zadeh memperkenalkan teori yang memiliki obyek-obyek dari himpunan fuzzy yang memiliki batasan yang tidak pretisi dan keanggotaan dalam himpunan fuzzy, bukan dalam bentuk logika benar (true) atau salah (false), tetapi dinyatakan dalam bentukderajat (degree). Konsep ini disebut Fuzziness dan teorinya dinamakan Fuzzy Set Theory.
Sedangkan Logika Fuzzy (Fuzzy Logic) merupakan studi tentang metode dan prinsip-prinsip pemikiran dimana pemikiran tersebut menghasilkan preposisi yang baru dari preposisi yang lama. Pada logika lama, preposisi diperlukan diantara true dan false, nilai kebenaran dari preposisi tersebut antara 1 atau 0. Fuzzy logic membuat pernyataan umum dari dua nilai logika lama dengan cara menyertakan nilai kebenaran dari sebuah preposisi untuk dijadikan sembarang angka diantara interval (1,0). (Apriansyah Putra & Dinna Yunika Hardiyanti : 2011 : D17)
II.2.1. Himpunan Kelasik
Pada dasarnya, teori himpunan fuzzy merupakan perluasan dari teori himpunan klasik. Pada teori himpunan klasik (crisp), keberadaan suatu elemen
pada suatu himpunan A, hanya akan memiliki 2 kemungkinan keanggotaan, yaitu menjadi anggota A atau tidak menjadi anggota A (Chak, 1988). Suatu nilai yang menunjukkan seberapa besar tingkat keanggotaan suatu elemen (x) dalam suatu himpunan (A), sering dikenal dengan nama nilai keanggotaan atau derajat keanggotaan, dinotasikan dengan μA (x). Pada himpunan klasik, hanya ada 2 nilai keanggotaan, yaitu μA(x)=1 untuk x menjadi anggota A; dan μA(x)=0 untuk x bukan anggota dari A. (Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:15 Graha Ilmu)
Contoh: Misalkan dimiliki variabel umur yang dibagi menjadi 3 kategori (Kusumadewi, 2003), yaitu:
MUDA Umur < 35 tahun PAROBAYA 35 ≤ umur ≤ 55 tahun TUA umur > 55 tahun
Nilai keanggotaan secara grafis, himpunan MUDA, PAROBAYA, dan TUA ini dapat dilihat pada gambar II.1. (Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:16 Graha Ilmu)
. . . . . . . . . . . . MUDA Umur 1 0 0
x
35 . . . . . . . . . . . . PAROBAYA Umur 1 0 0
x
35 -35 TUA Umur 1 0 0
x
55 . . . . . . . . . . . .Gambar II.1 : Himpunan Muda, Parobaya, dan Tua
(Sumber: Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:16. Graha Ilmu)
Pada Gambar II.1 tersebut dapat dijelaskan bahwa:
1. Apabila seseorang berusia 34 tahun, maka ia dikatakan MUDA (μMUDA[34] = 1).
2. Apabila seseorang berusia 35 tahun, maka ia dikatakan TIDAK MUDA (μMUDA[35] = 0).
3. Apabila seseorang berusia 35 tahun kurang 1 hari, maka ia dikatakan TIDAK PAROBAYA (μPAROBAYA[35 tahun – 1 hari] = 0).
Dari sini dapat dikatakan bahwa pemakaian himpunan klasik untuk menyatakan variabel umur kurang bijaksana, adanya perubahan kecil pada suatu nilai mengakibatkan perbedaan kategori yang cukup signifikan. (Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:17 Graha Ilmu)
II.2.2. Fungsi Keanggotaan
Fungsi keanggotaan (membership function) adalah suatu kurva yang menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Ada beberapa fungsi yang bisa digunakan. (Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:22 Graha Ilmu)
1. Representasi Kurva Segitiga
Kurva segitiga pada dasarnya gabungan antara 2 garis linear (Gambar II.2). (Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:25 Graha Ilmu)
Domain a b c Derajat Keanggotaan
x 1 0Gambar II.2 : Representasi Kurva Segitiga
(Sumber : Sri Kusumadewi dan Sri Hartati, Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf; 2010:25, Graha Ilmu)
Fungsi keanggotaan kurva segitiga :
c x b b x a c x atau a x b c x c a b a x x ; / ; / ; 0 2. Representasi Kurva Trapesium
Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya saja ada beberapa titik yang memiliki nilai keanggotaan 1 (Gambar II.3). (Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:26 Graha Ilmu)
Domain a b c Derajat Keanggotaan
x 1 d 0Gambar II.3 : Representasi Kurva Trapesium
(Sumber : Sri Kusumadewi dan Sri Hartati, Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf; 2010:26, Graha Ilmu)
Fungsi keanggotaan Kurva Trapesium :
d x c x b b x a d x atau a x c d x d a b a x x ; / 1 ; / ; 0 3. Representasi Kurva Bentuk Bahu
Daerah yang terletak ditengah-tengah suatu variabel yang direpresentasikan dalam bentuk segitiga, pada sisi kanan dan kirinya akan naik dan turun (misalkan: DINGIN bergerak ke SEJUK bergerak ke HANGAT dan bergerak ke PANAS). Tapi terkadang, salah satu sisi dari variabel tersebut tidak mengalami perubahan. Sebagai contoh, apabila telah mencapai kondisi PANAS, kenaikan temperatur akan tetap pada kondisi PANAS. Himpunan fuzzy ’bahu’, bukan segitiga, digunakan untuk mengakhiri
variabel suatu daerah fuzzy. Bahu kiri bergerak dari benar ke salah, sebaliknya bahu kanan bergerak dari salah ke benar. Gambar II.5 menunjukkan variabel TEMPERATUR dengan daerah bahunya. (Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:27 Graha Ilmu)
Temperatur 15 20 25 Derajat Keanggotaan
x 1 30 35 40 0Bahu Kiri Bahu Kanan
DINGIN SEJUK NORMAL HANGAT PANAS
0CGambar II.4 : Daerah ’Bahu’ pada Variabel Temperatur
(Sumber : Kusumadewi. Sri dan Hartati. Sri. Neuro-Fuzzy Integrasi Sistem Fuzzy dan Jaringan Syaraf. 2010:28. Graha Ilmu)
II.2.3. Fuzzy Multi-Attribut Decision Making (FMADM)
Fuzzy Multiple Attribute Decision Making adalah suatu metode yang digunakan untuk mencari alternatif optimal dari sejumlah alternatif dengan kriteria tertentu. Inti dari FMADM adalah menentukan nilai bobot untuk setiap atribut, kemudian dilanjutkan dengan proses perankingan yang akan menyeleksi alternatif yang sudah diberikan. Pada dasarnya, ada 3 pendekatan untuk mencari nilai bobot atribut, yaitu pendekatan subyektif, pendekatan obyektif dan
pendekatan integrasi antara subyektif & obyektif. Masing-masing pendekatan memiliki kelebihan dan kelemahan. Pada pendekatan subyektif, nilai bobot ditentukan berdasarkan subyektifitas dari para pengambil keputusan, sehingga beberapa faktor dalam proses perankingan alternatif bisa ditentukan secara bebas. Sedangkan pada pendekatan obyektif, nilai bobot dihitung secara matematis sehingga mengabaikan subyektifitas dari pengambil keputusan. Ada beberapa metode yang dapat digunakan untuk menyelesaikan masalah FMADM antara lain:
1. Simple Additive Weighting Method (SAW) 2. Weighted Product (WP)
3. Electre
4. Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) 5. Analytic Hierarchy Process (AHP). (Apriansyah Putra & Dinna Yunika
Hardiyanti : 2011 : D17)
II.2.3. Simple Additive Weighting Method (SAW)
Konsep dasar metod SAW adalah mencari penjumlahan terbobot dari rating kinerja pada setiap alternatif pada semua atribut. Metode SAW membutuhkan proses normalisasi matriks keputusan (X) ke suatu skala yang dapat diperbandingkan dengan semua rating alternatif yang ada.
ij i ij i ij ij ij X x Min x Max X r
Keterangan :
jika j adalah atribut keuntungan (benefit) jika j adalah atribut biaya (cost)
Dimana rij adalah rating kinerja ternormalisasi dari alternatif Ai pada atribut Cj; i=1,2,…,m dan j=1,2,…,n. Nilai preferensi untuk setiap alternatif ( Vi ) diberikan sebagai: Vi= Nilai Vi yang lebih besar mengindikasikan bahwa alternatif Ai lebih terpilih.
RUMUS
k = i
(wxni)+…+(wxnn)
k = n
Langkah penyelesaian Fuzzy MADM menggunakan metode SAW : 1. Menentukan kriteria yang dijadikan acuan pengambilan keputusan. 2. Menentukan rating kecocokan setiap alternatif pada setiap kriteria.
3. Membuat matriks keputusan berdasarkan kriteria, kemudian melakukan normalisasi matriks berdasarkan persamaan yang disesuaikan dengan jenis atribut sehingga diperoleh matriks ternormalisasi R.
4. Hasil akhir diperoleh dari proses perangkingan yaitu penjumlahan dari perkalian matriks ternormalisasi R dengan vector bobot sehingga diperoleh nilai terbesar yang dipilih sebagai alternatif terbaik sebagai solusi. (Apriansyah Putra & Dinna Yunika Hardiyanti : 2011 : 17).
II. 3. Penilaian dan Analisa Kredit
Penilaian kredit adalah Suatu kegiatan pemeriksaan, penelitian, dan analisa terhadap kelengkapan, keabsahan, dan kelayakan berkas/surat/data permohonan kredit calon debitur hingga dikeluarkannya suatu keputusan apakah kredit tersebut diterima atau ditolak. (Djohan 2000:97)
Menurut Thomas Suyatno, dkk (2003:70) yang dimaksud dengan analisa kredit adalah pekerjaan yang meliputi :
1. Mempersiapkan pekerjaan-pekerjaan penguraian dari segala aspek, baik keuangan maupun non keuangan untuk mengetahui kemungkinan dapat/tidak dapat dipertimbangkan suatu permohonan kredit.
2. Menyusun laporan analisis yang diperlukan, yang berisi penguraian dan kesimpulan serta penyajian alternatif-alternatif sebagai bahan pertimbangan untuk pengambilan keputusan pimpinan dari permohonan kredit nasabah.
Dari Pengertian tersebut dapat disimpulkan, pengertian penilaian atau analisis kredit adalah Suatu kegiatan analisa/penilaian berkas/data dan juga berbagai aspek yang mendukung yang diajukan oleh pemohon kredit, sebagai dasar pertimbangan pengambilan keputusan apakah permohonan kredit tersebut diterima atau ditolak.
II.3.1. Pertimbangan Analisa Kredit
Dalam pelaksanaan penilaian kredit, bank harus selalu mempertimbangkan berbagai hal yang terkait, agar kredit yang akan dipinjamkan dapat memiliki
manfaat dan tidak merugikan bank maupun debitur di masa depan. Menurut Rahadja (1990:10) bank harus selalu mempertimbangkan hal-hal sebagai berikut:
1. Keamanan kredit (safety), artinya harus benar-benar diyakini bahwa kredit tersebut dapat dilunasi kembali.
2. Terarahnya tujuan penggunaan kredit (suitability), yaitu bahwa kredit akan digunakan untuk tujuan yang sejalan dengan kepentingan masyarakat/sekurang-kurangnya tidak bertentangan dengan peraturan yang berlaku.
3. Menguntungkan (profitable), baik bagi bank berupa penghasilan bunga maupun bagi nasabah, yaitu berupa keuntungan dan makin berkembangnya usaha.
II.3.2. Aspek Penilaian Analisis Kredit
Dalam menilai atau menganalisis suatu permohonan kredit perlu dibahas berbagai aspek yang menyangkut keadaan usaha pemohon kredit. Pembahasan ini pada dasarnya adalah untuk meneliti apakah pemohon memenuhi Prinsip 5C atau tidak yang kemudian menjadi pertimbangan bank untuk menentukan kelayakan pemohon kredit memperoleh kredit atau tidak, dengan perkataan lain apakah permohonan kredit tersebut feasible dalam arti andaikata kredit diberikan, maka usahanya akan berkembang baik dan mampu mengembalikan kredit, baik pokok maupun bunga dalam jangka waktu yang wajar atau sebaliknya. Kasmir (2002:120) menjelaskan aspek-aspek yang perlu dinilai dalam penentuan kelayakan pemberian fasilitas kredit adalah sebagai berikut :
1. Aspek Hukum/Yuridis
2. Aspek Pemasaran (Marketing) 3. Aspek Keuangan
4. Aspek Teknis 5. Aspek Manajemen 6. Aspek Sosial Ekonomi
7. Aspek Analisa Dampak Lingkungan (AMDAL)
II.4. Bahasa Pemrograman Java
Bahasa pemrograman java dimulai dari sebuah tim pengembangan software dari Sun Microsystem yang dipimpin oleh James Gosling dan Patrick Naughton. Pada tahun 1991, Sun Microsystem mengembangkan sebuah bahasa pemrograman yang berukuran kecil untuk diimplementasikan pada alat elektronik rumah tangga seperti switchbox TV kabel. Berhubungan alat tersebut tidak memiliki banyak memori, maka bahasa yang digunakan harus sangat kecil dan menghasilkan kode yang kecil pula. Permasalahan lainnya adalah alat-alat tersebut memiliki CPU yang berbeda-beda karena dibuat oleh manufactur yang berbeda. Jadi sangatlah diharuskan bahasa pemrograman tersebut tidak terikat pada sebuah arsitektur mesin tertentu saja. (Sulistiani, Sri. Membangun GUI dengan JAVA Netbean 6.5 : 2010:1)
Oleh karena itu adanya keharusan sebuah pemrograman yang kecil, menghasilkan kode yang kecil pula dan harus platform independen (tidak terikat pada platform) membuat tim pada proyek tersebut terinspirasi oleh ide
pemrograman yang sama yang telah ditemukan oleh Niklaus Wirth, penemu pascal. Jadi penemu pascal memiliki pemikiran tentang sebuah software bahasa pemrograman portable dan tidak tergantung pada sebuah platform atau mesin. Bahasa pemrogaman komersial yang disebut UCSD pascal tersebut menghasilkan kode intermediate yang diperuntukkan bagi sebuah mesin virtual. Jadi, kode asli dari bahasa pemrograman tersebut tidak tergantung pada mesin ataupun platform sistem operasi karena USCD pascal menghasilkan intermediate code yang selanjutnya akan dikompilasi atau diterjemahkan oleh mesin virtual ke kode mesin dimana kode tersebut dijalankan. (Sulistiani, Sri. Membangun GUI dengan JAVA Netbean 6.5 : 2010:2)
Pada tahun-tahun tersebut sangat pesat. Namun saat itu browser juga masih jarang ditemui. Pada tahun 1994 kebanyakan orang menggunakan mosaic, yaitu sebuah browser non komersial yang dibuat oleh Marc Anderseen pada tahun 1993 di supercomputing center universitas illinois. Pada pertengahan tahun 1994 para pengembang java menyadari bahwa mereka dapat saja membangun sebuah browser yang lebih flexibel dari pada yang lainnya. Selanjutnya dibuatlah HotJava browser yang dikerjakan oleh Patrick Naughton dan Jonathan Payne. Tujuan utama dari pembuatan browser tersebut tidak lain adalah untuk mempromosikan bahasa java dan memamerkan kekuatannya. Java juga memiliki kekuatan pada aplikasi yang disebut applet yang disebut juga berhubungan dengan browser. (Sulistiani, Sri. Membangun GUI dengan JAVA Netbean 6.5 : 2010:2)
Booming bahasa java dimulai pada tahun 1995 ketika Netscape memutuskan untuk menggunakan java pada web browsernya, yaitu Netscape
Navigator apada tahun 1996. Hal ini kemudian diikuti oleh raksasa – raksasa software seperti IBM, Symantec, Inprise dan masih banyak yang lain termasuk Microsoft dengan internet explorernya.
Sun sendiri merilis java pertama kalinya pada tahun 1996, kemudian diikuti dengan versi 1.02 beberapa bulan kemudian. Pada awalnya java masih mampu memenuhi kebutuhan para pengembang untuk membangun software secara profesional. Baru pada tahun 1998 muncul versi java 1.2 yang dirilis pada bulan Desember dan beberapa hari kemudian namanya diganti dengan java 2. (Sulistiani, Sri. Membangun GUI dengan JAVA Netbean 6.5 : 2010:3)
API adalah Aplication Programming Interface yaitu sebuah layer yang berisi class-class yang sudah didefinisikan dan antarmuka pemrograman yang akan membantu para pengembangan aplikasi dalam perancangan sebuah aplikasi. Pada saat ini dikenal ada tiga macam API dari java, yaitu:
1. J2SE, yaitu Java 2 Standard Edition adalah sebuah API yang dapat digunakan untuk mengembangkan aplikasi-aplikasi yang bersifat client – side standalone atau applet.
2. J2EE, yaitu Java 2 Enterprise Edition adalah API yang digunakan untuk melakukan pengembangan aplikasi-aplikasi yang bersifat server-side seperti Java Servlet, dan Java Server Pages.
3. J2ME, yaitu Java 2 Micro Edition adalah API yang merupakan subset dari J2SE tetapi memiliki kegunaan untuk mengembangkan aplikasi pada handheld device seperti Smart Phone atau PDA tentu saja yang
didalamnya telah ditanamkan interpreter java. (Sri, Sulistiani, Membangun GUI dengan JAVA Netbean 6.5 : 2010:4)
4. IDE (Integreted Development Environment), yaitu sebuah lingkungan pengembangan aplikasi lengkap dan dapat membantu proses pengembangan sebuah aplikasi menjadi lebih cepat. Berikut ini situs web download java dan netbeans.
Gambar II.5 : Website Untuk Mendownload NetBeans Terbaru
(Sumber : Sri Sulistiani, Membangun GUI dengan JAVA Netbean 6.5 : 2010:5)
II.5. MySQL
MySQL adalah database server relasional yang gratis di bawah lesensi GNU (General Public License). Dengan sifatnya Open Source, memungkinkan juga user untuk melakukan modifikasi pada source code-nya untuk memenuhi kebutuhan spesifik. MySQL merupakan database server user dan multi-threaded yang tangguh (robust). Dengan memiliki banyak feature MySQL bisa
bersaing dengan database komersil lainnya. Tidak mengejutkan, MySQL menjadi database pilihan untuk banyak pengguna PHP. (Utdirartatmo. Firrar : 2002:1)
MySQL dikembangkan oleh MySQL AB, sebuah perusahaan komersial yang membangun layanan bisnisnya melalui database MySQL. Awal mula pengembangan MySQL adalah penggunaan MySQL untuk koneksi ke tabel mempergunakan rutin level rendah (ISAM) setelah beberapa pengujian diperoleh kesimpulan MySQL tidak cukup cepat dan fleksibel untuk memenuhi kebutuhan. Sehingga dihasilkan suatu antarmuka SQL baru pada database tetapi dengan API yang mirip MySQL. (Utdirartatmo. Firrar :2002:1-2).
Gambar II.6 : Tampilan Mysql Berbasis PHP Myadmin
II.6. Data Flow Diagram (DFD)
DFD merupakan diagram yang mengunakan notasi-notasi atau simbolsimbol untuk mengambarkan sistem jaringan kerja antar fungsi-fungsi yang berhubungan satu sama lain dengan aliran dan penyimpanan data.
1. Kesatuan Luar (External Entity)
Kesatuan luar (entity) di lingkungan luar sistem yang dapat berupa orang, organisasi atau sistem lainnya yang berada di lingkungan luarnya yang akan memberikan input atau menerima output dari sistem. Suatu kesatuan luar dapat disimbolkan dengan suatu notasi persegi panjang atau suatu persegi panjang dengan sisi kiri dan atasnya berbentuk garis tebal.
2. Aliran Data
Aliran data di DFD diberikan simbol suatu panah. Aliran data ini mengalir diantara proses (process), simpanan data (data store) dan kesatuan luar (External entity). Aliran data ini menunjukkan arus dari data yang dapat berupa masukan untuk sistem atau hasil dari proses sistem.
3. Proses
Suatu proses adalah kegiatan atau kerja yang dilakukan oleh orang, mesin atau komputer dari hasil suatu aliran data yang masuk ke dalam proses untuk dihasilkan aliran data yang akan keluar dari proses. Suatu proses dapat disimbolkan dengan notasi lingkaran atau dengan simbol empat persegi panjang dengan sudut-sudut tumpul.
4. Penyimpan Data (Data Store)
Penyimpan data (data store) merupakan penyimpan data yang dapat berupa, yaitu :
• Suatu file atau basis data di sistem komputer. • Suatu arsip atau catatan manual.
• Suatu tabel acuan manual. • Suatu agenda atau buku.
Simpanan data di DFD dapat disimbolkan dengan sepasang garis horisontal paralel yang tertutup di salah satu ujungnya atau tanpa ditutup. (Radiant Victor Imbar, Dewanto Adi Putra : Vol.2 : 2007 : 168).
II.7. Entity Relationship Diagram ( ERD )
Entity Relational Diagram merupakan salah satu pemodelan data konseptual yang paling sering digunakan dalam proses pengembangan basis data bertipe relasional. Model E-R adalah rincian yang merupakan representasi logika dari data pada suatu organisasi atau area bisnis tertentu. Model E-R terdiri dari beberapa komponen dasar yaitu sebagai berikut:
1. Entitas
Entitas adalah sesuatu atau objek di dunia nyata yang dapat dibedakan dari sesuatu atau objek yang lainnya. Sebagai contoh, setiap mahasiswa dalam suatu universitas adalah suatu entitas. Setiap fakultas dalam suatu universitas adalah juga suatu entitas. Dapat dikatakan bahwa entitas bisa bersifat konseptual/abstrak atau nyata hadir di dunia nyata.
2. Atribut
Atribut adalah properti deskriptif yang dimiliki oleh setiap anggota dari himpunan entitas. Sebagai contoh entitas mahasiswa, atribut-atribut yang dimiliki adalah nim, nama mahasiswa, alamat dan lain-lain.
Hubungan antar relasi adalah hubungan antara suatu himpunan entitas dengan himpunan entitas yang lainnya. Misalnya, entitas mahasiswa memiliki hubungan tertentu dengan entitas matakuliah (mahasiswa mengambil matakuliah). Pada penggambaran model E-R, relasi adalah perekat yang menghubungkan suatu entitas dengan entitas yang lainnya. 4. Kardinalitas/Derajat Relasi
Kardinalitas relasi menunjukkan jumlah maksimum entitas yang dapat berelasi dengan entitas pada himpunan entitas yang lain. Sebagai contoh: entitas-entitas pada himpunan entitas mahasiswa dapat berelasi dengan satu entitas, banyak entitas atau tidak satupun entitas dari himpunan entitas kuliah. Kardinalitas relasi yang terjadi di antara dua himpunan entitas dapat berupa :
• Satu ke Satu (One to One)
Setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, begitupun sebaliknya.
• Satu ke Banyak (One to Many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, tetapi tidak sebaliknya, dimana setiap entitas pada himpunan entitas B berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas A.
Setiap entitas pada himpunan entitas A berhubungan dengan paling banyak dengan satu entitas pada himpunan entitas B, tetapi tidak sebaliknya dengan entitas B.
• Banyak ke Banyak (Many to Many)
Setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B, dan demikian sebaliknya, dimana setiap entitas pada himpunan entitas B dapat berhubungan dengan banyak entitas pada himpunan entitas A. (Radiant Victor Imbar, Dewanto Adi Putra : Vol.2 : 2007 : 169-170).