7
BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Pengertian Data Menurut Kadir (2002, p7), data adalah fakta mengenai objek, orang dan lainlain.Data dalah bagian dari sebuah fakta, teks, grafik, gambar, suara, dan video.Data mengacu pada semua fakta yang telah dikumpulkan, disimpan dan diproses sehingga menjadi suatu informasi yang dibutuhkan.
2.1.2 Hirarki Data Menurut Kadir (2002,p8), hirarki data terdiri atas elemen data, record, dan file. 1. Elemen data adalah suatu satuan data yang paling kecil yang tidak dapat dipecah-pecahkan lagi menjadi unit yang bermakna.Kita dapat mengenal elemen data dengan nama-nama seperti item, field, kolom dan atribut. 2. Record yaitu suatu kumpulan data yang saling berkaiyan satu sama lain. Nama lain dari record adalah tuple (baris dalam system basis data rasional). 3. File adalah himpunan record yang bertipe sama. Dalam suatu sistem basis data rasional, file diwakili oleh komponen yang disebut table atau relasi. 2.1.3 Pengertian Sistem Menurut McLeod (2001,p3-4), sistem adalah suatu kerangka kerja terpadu yang mempunyai satu sasaran atau lebih.
8 Menurut McLeod (2001,p11), sistem adalah suatu kelompok element yang terintegrasi yang mempunyai maksud yang sama untuk mencapai suatu tujuan.Sistem mengubah suatu masukan berupa data-data atau informasi menjadi suatu keluaran. Dan sistem dapat juga suatu pengkoordinasikan sumber daya berupa bahan atau mesin, sehingga dapat disimpulkan bahwa sistem adalah gabungan dari beberapa komponen yang saling berkaitan,yang mengerjakan sutu fungi untuk mencapai tujuan bersama.
2.1.4 Pengertian Informasi Menurut Mcleod (2001,p18) informasi adalah data yang telah diproses atau yang memiliki arti. Menurut Mcleod (2001,p3), informasi terdiri dari data yang ditransformasikan dan dibuat lebih bernilai melalui pemrosesan. Jadi, dapat disimpulakan bahwa informasi merupakan data-data yang diproses dan diolah menjadi suatu bentuk atau pengetahuan yang lebih berarti dan berguna yang dapat dipergunakan oleh banyak pihak.
2.1.5 Pengertian Sistem Informasi Menurut Laudon (2002,p7) sistem informasi adalah komponen-komponen yang saling berkaitan yang bekerja bersama-sama untuk mengumpulkan, mengolah, menyimpan dan menampilkan informasi untuk mendukung pengambilan keputusan, koordinasi, pengaturan, analisis dan visualisasi pada sebuah organisasi.
9 Dari definisi diatas dapat disimpulkan bahwa sistem informasi adalah sebuah sistem yang bekerja sama mengumpulkan informasi sehingga menghasikan suatu informasi yang dibutuhkan.
2.1.6 Pengertian Basis Data Menurut Connolly(2002, p2), basis data adalah sekumpulan data yang disimpangkan dalam bentuk format yang telah distandarisasikan, didesain agar digunakan oleh banyak pengguna.
2.1.7 Pengertian Sistem Basis Data Menurut Connolly(2002, p2), sistem basis data adalah perangkat lunak yang mendefinisikan suatu database, menyimpan data, mendukung query language, menghasikan laporan dan menciptakan layer pemasukan data.
2.1.8 Data Flow Diagram Menurut Yourdan (1989,p139). Diagram aliran data adalah model atau alat yang digunakan untuk menggambarkan sistem sebagai jaringan dari beberapa kumpulan proses fungsional, yang dihubungkan satu dengan yang lainnya oleh suatu aliran data. Ada 3 tingkatan dalam diagram aliran data yaitu: 1. Diagram konteks Merupakan tingkatan yang paling pertama, yang menggambarkan ruang lingkup sistem yang digunakan. Dan mempunyai satu proses yang dapat menampilkan gambar secara keseluruhan dari hubungan antar sistem dengan unit–unit diluar sistem.
10 2. Diagram Nol Merupakan diagram yang menggambarkan proses-proses dan aliran data yang terjadi didalam suatu sistem. Proses-proses ini kemudian dapat dipecah menjadi proses-proses dan aliran data yang lebih detail. 3. Diagram rinci Diagram yang menggambarkan rincian proses-proses yang ada pada diagram nol dan rincian yang lebih detail. a. Proses (Function atau Transformation) Proses menggambarkan bagian dari sistem yang mengelola masukan menjadi keluaran.
Gambar 2.1 Simbol proses dalam DFD
b. Aliran (Flow) Aliran adalah suatu perpindahan informasi dari satu bagian ke bagian lain dalam suatu sistem. Awal panah menggambarkan asal data sedangkan arah panah menggambarkan tujuan data.
Gambar 2.2 Simbol aliran dalam DFD
11 c. Store Store adalah suatu simbol yang digunakan untuk menyimpan suatu data.
Gambar 2.3 Simbol store dalam DFD
d. Terminator Adalah suatu simbol untuk menggambarkan suatu entitas (entity) yang dapat berupa organisasi, orang yang berhubungan dengan sitem.
Gambar 2.4 Simbol terminator dalam DFD
2.1.9 State Transition Diagram (STD) Menurut Pressman, Roger S. (2001,p328), STD (State Transition Diagram) adalah suatu definisi sebuah perilaku model yang bergantung pada sekumpulan status sistem, dimana status tersebut adalah setiap modus perilaku sistem yang dapat diamati, status ini diwakili oleh bentuk-bentuk grafis seperti lingkaran/kotak, garis yang menghubungkan status tersebut merupakan perwakilan dari control atau aksi yang diperlukan.
12 Ada 2 buah symbol yang menggambarkan proses dalam state transition diagram (STD), yaitu : 1. State ada dua jenis yaitu state awal (initial state) dan state akhir (Final state). Initial state tidak boleh berjumlah lebih dari satu, sedangkan final state boleh lebih dari satu. State-state ini digambarkan dalam bentuk persegi panjang.
Gambar 2.5 state
2. Gambar panah menunjukkan transisi antar state. Tiap panah diberi label dengan ekspresi aturan. Label yang diatas menunjukkan kejadian atau kondisi yang menyebabkan terjadinya transisi.
Gambar 2.6 Transisi state
2.2 Teori Khusus 2.2.1 Daur hidup Aplikasi Sitem Basis Data Menurut Connoly & Begg (2002,p272), analisis dan peancangan aplikasi sistem basis data digambarkan dalam daur hidup sebagai berikut:
Gambar 2.7 Database Application Lifecycle (Connoly, 2002, p272 )
2.2.2 Database Planing Membuat sebuah sistem basis data yang baik harus memiliki sebuah manajemen sistem yang juga baik. Semakin baik manajemen sistem, maka akan semakin efektif dan efisien realisasi dari sistem basis data tersebut. Database Planing adalah salah satu manajemen yang dapat mengatur setiap tahap pembuatan basis data menjadi lebih efisien dan lebih efektif.
14 2.2.3 System Definition Dalam rencana pembuatan basis data salah satu tahapan yang harus dilakukan adalah membatasi ruang lingkup dari sistem basis data yang akan dibuat. Pembatasan ruang lingkup ini dilakukan sebelum dibuatnya aplikasi basis data. Tahapan untuk menentukan ruang lingkup dari sistem yang akan dibuat itu termasuk ke dalam System Definition.
2.2.4 Requirements Collection and Analysis Untuk mendukung terciptanya suatu sistem basis data yang baik, sudah seharusnya dilakukan pengumpulan informasi dan menganalisa informasi yang sudah didapat tersebut. Informasi ini akan digunakan untuk menentukan kebutuhan user akan sistem yang baru. Menurut McLeod (2001, p128), analisis sistem adalah penelitian atas sistem yang telah ada dengan tujuan merancang sistem baru atau memperbaharui sistem yang telah ada. Tahap-tahap analisis menurut McLeod adalah sebagai berikut : •
Mengumumkan penelitian sistem Mengkomunikasikan kepada pegawai tentang alasan perusahaan melaksanakan proyek dan bagaimana sistem baru akan menguntungkan perusahaan dan pegawai.
•
Mengorganisasikan tim proyek Tim proyek yang akan melakukan penelitian sistem dikumpulkan
•
Mendefinisikan kebutuhan informasi
15 Mempelajari kebutuhan informasi pemakai dengan terlibat dalam berbagai kegiatan pengumpulan informasi: wawancara perorangan, pengamatan, pencarian catatan, dan survei •
Mendefinisikan kriteria kinerja sistem Menspesifikasikan secara tepat apa yang harus dicapai oleh sistem.
•
Menyiapkan usulan rancangan Menspesifikasikan secara tepat apa yang harus dicapai oleh sistem.
•
Menyetujui atau menolak rancangan proyek Tim proyek menunggu persetujuan dari manajer yang telah mengevaluasi usulan rancangan. Jika disetujui, proyek maju ke tahap rancangan.
Dalam proses pengumpulan informasi, Connolly dan Begg menawarkan beberapa cara, yang mereka tuliskan dalam buku mereka. Cara-cara tersebut adalah sebagai berikut : •
Examining Documentation Metode ini sangat bermanfaat dalam memperoleh informasi yang akan digunakan dalam pembuatan sistem basis data. Hal ini disebabkan karena mempelajari dokumentasi dapat membantu kita untuk mengenali sistem yang sedang berjalan pada suatu perusahaan, dan memahami persoalan yang sedang dihadapi. Sehingga pembuatan sistem basis data akan menjadi lebih optimal, karena didukung dengan pengetahuan tersebut.
16 •
Wawancara Teknik wawancara adalah sebuah teknik yang paling sering digunakan dalam pencarian fakta atau informasi. Dengan metode wawancara informasi dapat diperoleh dari pengguna sistem berjalan secara langsung. Metode ini dapat memberikan informasi yang cukup akurat dikarenakan informasi yang diperoleh adalah informasi yang bersumber langsung dari pengguna sistem berjalan. Dari informasi yang diterima, akan didapatkan seperti apa sistem yang akan dibuat.
•
Observasi Perusahaan Melakukan observasi perusahaan adalah cara yang paling efektif untuk memperoleh informasi dari sistem berjalan. Dengan melakukan observasi ke dalam sebuah perusahaan, kita dapat melihat atau bahkan berpartisipasi pada penggunaan sistem berjalan. Metode ini sangat memudahkan kita untuk memahami masalah-masalah yang dihadapi oleh sistem.
•
Penelitian Meneliti adalah sebuah metode pencarian informasi yang juga sangat berguna. Dengan mempelajari studi kepustakaan, pembuatan sistem akan menjadi lebih efisien dan efektif. Hal ini disebabkan karena kapabilitas dan kemampuan analisis kita dalam mengolah sistem berjalan menjadi semakin baik. Bentuk dari studi kepustakaan adalah dengan membaca literatur dari berbagai sumber seperti majalah, buku, artikel di internet, dsb
17 •
Kuesioner Membuat kuesioner, lalu kuesioner tersebut dibagikan kepada sample untuk diisi, lalu jawaban pertanyaan dianalisis adalah kegiatan yang dilakukan jika kita menggunakan metode ini. Sering kali metode ini dilakukan untuk menghemat waktu, untuk memperoleh informasi dari sejumlah sumber informasi yang dilakukan secara bersamaan. Sehingga informasi dapat diperoleh dengan lebih efisien.
2.2.5 Database Design Proses dari pembuatan rancangan basis data yang akan digunakan di dalam sebuah organisasi atau perusahaan adalah bagian dari database design (Connolly, p279). Dalam membuat perancangan ini dapat digunakan dua buah pendekatan yaitu : •
Bottom-Up Metode perancangan database yang dimulai dari penentuan atributatribut dasar (entitas), properti dari entitas dan relationship, dilanjutkan dengan menganalisa hubungan antar atribut yang berhubungna dalam satu relasi
•
Top-Down Pendekatan ini dimulai dari pengembangan data model yang mengandung high level entity relationship, setelah itu menentukan atribut dari entitas tersebut.
18 Kedua pendekatan diatas adalah pendekatan yang sering dilakukan untuk mengerjakan model perancangan basis data yang berbeda. Teknik bottom-up sering digunakan untuk membuat perancangan sistem basis data yang relatif simpel. Tetapi untuk perancangan basis data yang lebih kompleks, teknik topdown lebih sering digunakan. Bentuk pendakatan lain yang saat ini sudah mulai berkembang adalah gabungan dari kedua pendekatan diatas. Teknik campuran ini adalah Inside-Out. Dalam membuat perancangan basis data terdapat tiga fase utama yaitu : •
Conceptual Database Design Pada fase ini hal penting yang harus dilakukan adalah membuat representasi dari sistem basis data yang akan dibuat. Menentukan entitas, atribut dan relasi adalah tugas yang harus dilakukan pada fase ini. Model informasi yang dibangun pada fase ini masih terlepas dari pertimbangan-pertimbangan fisik. Fase ini meliputi pembuatan sebuah model data konseptual dari perusahaan yang masih terlepas dari detildetil
penerapannya
seperti
DBMS,
program
aplikasi,
bahasa
pemrograman, hardware platform, dan pertimbangan fisik lainnya. •
Logical Database Design Menerjemahkan dan mengembangkan apa yang telah diperoleh pada fase conceptual database design adalah yang harus dilakukan pada fase perancangan logikal. Pada fase ini pembuatan struktur logikal dari basis data seperti perancangan relation dilakukan.
19 Model informasi yang dibangun pada fase ini juga masih terlepas dari pertimbangan-pertimbangan fisik. •
Physical Database Design Pada fase ini dilakukan implementasi dari fase logikal ke dalam realisasi fisik database seperti pengimplementasian DBMS, penggunaan bahasa pemrograman untuk mencapai tujuan dari DBMS yang diinginkan.
2.2.6 Normalisasi Menurut Betha Sidik (2001, p53), normalisasi merupakan salah satu tahap dalam proses perancangan yang mengharuskan perancang untuk mempertimbangkan masalah space penyimpanan (efisiensi), mencegah duplikasi dan redundancy data, konsistensi dan integritas data dalam database yang dirancang. Normalisasi merupakan usaha untuk meminimalisasi dan (jika mungkin) menghilangkan masalah duplikasi dan inkonsistensi. Menurut Connolly dan Begg (2002, p376) suatu perancangan database harus memenuhi kondisi yang tidak memiliki anomali. Kondisi anomali adalah kondisi dimana suatu database memiliki kejanggalan terhadap penempatan atribut tertentu dari suatu objek data. Oleh karena itu, tujuan utama dari normalisasi adalah pengelompokkan atribut-atribut kedalam satu relation berdasarkan kepada keys, dan functional dependecies antar atribut didalamnya.
20 •
1st Normal Form Sebelum dilakukan normalisasi, sebuah form dapat disebut unnormalized form jika form tersebut memiliki satu atau lebih repeating group. Dalam normalisasi tahap satu ini yang dilakukan adalah mengidentifikasi dan menghilangkan repeating group tersebut. Repeating group adalah sebuah atribut atau sekelompok atribut dalam satu tabel yang memilki nilai lebih dari satu (multiple value) untuk sebuah kejadian dalam tabel tersebut. Pada tahap ini juga ditentukan primary key.
•
2nd Normal Form Dalam normalisasi yang kedua ini field-field yang bukan merupakan primary key dan tergantung (partially dependency) pada primary key harus dihilangkan
•
3rd Normal Form Pada normalisasi tahap 2 redundansi data memang sudah berkurang. Tetapi tidak berarti berkurangnya redundasi tersebut telah menghilangkan anomali. Oleh karena itu pada tahap ketiga dalam normalisasi dilakukan penghilangan ketergantungan transitif yang dimiliki didalam sebuah database.
2.2.7 Entity dan Relation Diagram Diagram E-R adalah sebuah notasi grafik dari sebuah model data, yang diperoleh dari analisa entity dan relationship. Diagram E-R adalah sebuah model
21 jaringan yang menjelaskan tentang data yang tersimpan dari sebuah sistem pada tingkat abstraksi yang tinggi. Elemen - elemen yang digunakan dalam diagram E-R: 1. Entity Set Entity set merupakan obyek yang dapat dibedakan yang ada dalam organisasi pemakai (user interprise). Entity biasanya diberikan nama dengan kata benda, dan secara umum dapat dikelompokan dalam empat jenis yaitu : orang, benda, lokasi, kejadian dan terdapat unsur waktu didalamnya. Entity set merupakan symbol utama dari diagram E-R dan biasa digambarkan dengan sebuah simbol empat persegi panjang. 2.Relationship Set Relationship adalah hubungan alamiah yang terjadi antara yang terjadi antar entity. Relationship adalah hal yang sangat penting karena menunjukan hubungan antar entity. 3.Atribute Secara umum atribute adalah sifat atau karakteristik dari tiap entity maupun tiap relationship. 4.Cardinality Cardinality adalah tingkat hubungan antar entity. Ada tiga kemungkinan tingkat hubungan yang ada, yaitu : a. One to One (1 : 1) Tingkat hubungan dinyatakan pada satu pada satu, jika satu kejadian pada entity yang pertama hanya mempunyai satu hubungan dengan satu kejadian pada entity yang kedua. Dan sebaliknya, satu kejadian pada entity
22 yang kedua hanya bisa mempunyai satu hubungan dengan satu kejadian pada entity yang pertama. b. One to Many (1 : M) Tingkat hubungan satu pada banyak adalah sama dengan banyak pada satu. Tergantung dari arah mana hubungan tersebut dilihat untuk satu kejadian pada entity yang pertama dapat mempunyai banyak hubungan dengan kejadian pada entity yang kedua. Sebaliknya, banyak hubungan pada entity yang kedua hanya bisa mempunyai satu kejadian pada entity yang pertama. c. Many to Many (M : M) Tingkat hubungan banyak pada banyak terjadi jika tiap kejadian pada sebuah entity akan mempunyai banyak hubungan dengan kejadian pada entity lainnya. Baik dilihat dari sisi entity yang kedua.
2.2.8 Entity Relationship Modeling Komponen-komponen yang terdapat pada entity relationship modeling adalah : •
Entity Types Adalah sekelompok objek yang dikelompokkan berdasarkan kesamaan properti yang keberadaannya dibedakan secara unik dan memiliki independence existence. Berikut adalah jenis-jenis entitas. a) Strong Entity Type Adalah sebuah jenis entitas yang keberadaannya tidak bergantung kepada entitas lainnya
23 b) Weak Entity Type Adalah sebuah jenis entitas yang k e b e r k y a bergantmg
kepada keberadaan entitas lain.
Mationship Types a) MdtipPicity Adalah sebuah rentang yang menjabarkan kemungkkm
entity occzrrence dari sebuah entitas yang berliubungan dengan entitas lainnya a e l d u i suatu relation.~hip.
b) Cardinality Menmjukkm angka maksimum dari sebuah k e m m g h a n
relationship occurences pada dua buah entitas yang mernpunyai relationship. c) Participation MentmjuW
apakah sernua atau tidaknya
enlity
ocrtaence berpxtisipasi dalam relationship. d) One-to-One (1 :1) Relationship
Adalah s e b d relationship dimma cardinality dari kedua entitas bernilai satu
Gambar 2.8 One-to-one (1:l) Relationship
e) One-to-Many (I :*) Relationship Adalah sebuah relationship b a n a cardinality dui entitas 1 bemilai 1 dan cardinality dari entitas 2 bemilai nzany(*).
i
Participation
Gambar 2.9 One-to-Many (1 :*) Relationship
Many-to-Many (*:*) Relationslup Addah sebuah relationship dimana cardinality dari entitas
1 bernilai many (*)dm cardinality dari entitas 2 bemilai nzanj,
II
Entib 1
I
-
tL---
Entity Occurences )
I
I
I Participation
Ganlbar 2.10 Many-to-Many (*:*) Relationship Atribute Types a) SimpIe Atribute Adalah alribut yang terdiri atas satu komponen tunggd d m mempunyai independent existence.
25 b) Composite Atribute Adalah atribut yang memiliki lebih dari satu komponen dan mempunyai independent existence.
2.2.9 Model Sequential Linear Model Waterfall merupakan paradigma yang paling tua dan paling banyak digunakan untuk membangun sebuah software. Paradigma ini membutuhkan pendekatan yang sistematis dan berurutan untuk membuat sebuah software yang dimulai dari rekayasa sistem, kemudian dilanjutkan ke analisa, perancangan, pengkodean, pengujian dan pemeliharaan.
Rekayasa sistem/informasi Analisi Perancanga
kode
Pengujian
Gambar 2.11 Model Linear Sequential •
Rekayasa sistem (system engineering) Pengembangan perangkat lunak dimulai dengan membangun syarat dari semua elemen sistem serta mengalokasikan beberapa bagian dari kebutuhan ke perangkat lunak tersebut. Analisis sistem ini penting karena akan menentukan konektivitas antar perangkat keras, pengguna, dan basis data. Dalam rekayasa sistem juga tercangkup penentuan ruang
26 lingkup, estimasi biaya, estiamsi penjadwalan, estimasi sumber daya manusia. •
Analisis kebutuhan perangkat lunak (software requirement analysis) Pengumpulan kebutuhan difokuskan pada perangkat lunak. Untuk pemahaman sifat program yang diciptakan, analis harus memahami cangkupan informasi, tingkah laku, performa dan antar muka yang dibutuhkan, serta memperhatikan keinginan dan kebutuhan pengguna. Analisis
dapat
menggunakan
metode
wawancara,
survei,
dan
sebagainya. •
Perancangan (design) Perancangan perangkat lunak meliputi struktur data, arsitektur piranti lunak, prosedur-prosedur, E-R Diagram, Data Flow Diagram (DFD), rancangan layar, rancangan laporan, keamanan, serta representasi antar muka pemakai.
•
Pengkodean (coding) Dilakukan untuk menterjemahkan perancangan yang telah dibuat ke dalam bentuk yang dapat dibaca oleh mesin.
•
Pengujian (testing) Pengujian terhadap perangkat lunak yang telah dibuat untuk menghilangkan kesalahan. Pengujian difokuskan pada logical internal dari pranti lunak yaitu pengecekan terhadap statement-statement, serta difokuskan juga pada functional external yang dilakukan untuk
27 menemukan kesalahan pada program. Pada pengujian ini masukan yang diberikan harus menghasilkan keluaran yang sesuai dengan harapan. •
Support Dilakukan agar perangkat lunak dapat beroperasi secara optimal, serta dilakukan untuk mengantisipasi perubahan-perubahan pada sistem yang dapat
disebabkan
oleh
kesalahan-kesalahan
yang
ditemukan,
penyempurnaan sistem, penyesuaian sistem dan tindakan pencegahan.