BAB 2 TINJAUAN PUSTAKA
Pada tinjauan pustaka ini akan dibahas teori-teori yang berhubungan dengan basis data dan teori yang berhubungan dengan topik skripsi dan alat bantu analisis dan perancangan basis data. 2.1 Pengenalan Basis Data 2.1.1Entitas Menurut Connolly dan Begg (2010:15), entitas (entity) adalah sebuah objek yang unik (seperti orang, tempat, benda, konsep, ataupun kejadian) didalam suatu organisasi, yang akan direpsentasikan pada basis data. 2.1.2Data Connolly dan Begg (2010:70) menyatakan bahwa data adalah komponen terpenting dalam DBMS, berasal dari sudut pandang end-user. Data juga bertindak sebagai jembatan antara manusia dengan mesin. Data adalah fakta-fakta tentang segala sesuatu di dunia nyata yang dapat direkam dan disimpan pada media komputer (Nugroho, 2011:5). 2.1.3Basis Data Menurut Connolly dan Begg(2010:65), basis data (database) adalah sekumpulan data logis yang saling terhubungbeserta deskripsi data tersebut,yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. Sistem basis data adalah koleksi berkas-berkas yang saling berhubungan dimana program-program yang dibuat oleh pengguna dapat mengakses dan memodifikasi berkas-berkas tersebut. Salah satu tujuan dari sistem basis data itu sendiri adalah menyediakan pengguna suatu pandangan abstrak dari data, yaitu sistem yang menyembunyikan rincian mengenai mengenai bagaimana data disimpan dan dipelihara(Nugroho, 2011:10).
7
8 2.2 DBMS (Database Management System) 2.2.1Definisi DBMS(Database Management System) Menurut Connolly dan Begg(2010:66),Database Management System (DBMS) adalah suatu sistem perangkat lunak yang digunakan olehpengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol akses kepada basis data. Database Management System (DBMS) mempunyai fasilitas sebagai berikut: 1. Data Definition Language (DDL), fasilitas dari DDLbagi pengguna untuk menentukan tipe data, struktur, dan batasanpada data yang akan disimpan ke basis data. Berikut contohnya: 1. CREATE. 2. ALTER. 3. DROP. 2.
Data Manipulation Language (DML), fasilitas dari DMLbagi pengguna untuk memasukkan, menghapus, dan mengambil data dari basis data. Berikut contohnya: 1. SELECT. 2. UPDATE. 3. INSERT.
3.
Menyediakan kontrol akses menuju basis data. berikut contoh: a. Sistem keamanan yang mencegah pengguna yang tidak berkepentingan untuk mengakses basis data. b. Sistem intergritas yang mempertahankan konsistensi dari data yang tersimpan. c. Sistem kontrol bersamaan dimana memperbolehkan akses basis data secara bersamaan. d. Sistem
kontrol
pengembalian
data
yang
dapat
mengembalikan data kepada keadaan sebelumnya, apabila terjadi kegagalan perangkat keras atau perangkat lunak. e. Mempunyai katalog yang dapat diakses oleh pengguna yang berisi penjelasan data didalam basis data.
9 2.2.2Komponen dari DBMS (Database Management System) Menurut Connolly dan Begg(2010:68), terdapat 5 komponen penting dalam lingkungan DBMS yaitu:
Gambar 2.1 Komponen DBMS (Connolly dan Begg, 2010:68) 1. Hardware Untuk menjalankan sebuah aplikasi dan DBMS, dibutuhkan sebuah perangkat keras (hardware). Perangkat keras bisa berupasatu personal computer, satu mainframe, ataujaringan komputer. Bagian dari perangkat lunak tersebut tergantung dari kebutuhan organisasi dan pengunaan DBMS. Sebagian dari perangkat lunak hanya bisa dijalankan di beberapa DBMS ataupun di sistem operasi. DBMS memiliki batas minimal memori dan ruang penyimpanan untuk dijalankan. 2. Software Komponen perangkat lunak (software) itu terdiri dari DBMS itu sendiri dan program aplikasi berserta dengan sistem operasi, termasuk perangkat lunak jaringan apabila DBMS menggunakan jaringan. Program aplikasi yang biasa ditulis adalah generasi ke-3 programming language (3GL), diantaranya adalah C, C++, Java, Visual Basic, COBOL, Fotran, Ada, Pascal, atau juga bisa menggunakan generasi ke-4 (4GL)diantaranya SQL, yang tertanam di generasi ke-3. 3. Data Data adalah komponen terpenting dalam DBMS, berasal dari sudut pandang end-user. Data sebagai jembatan antara komponen mesin (perangkat lunak dan perangkat keras) dan komponen manusia.
4. Procedure Procedure adalah instruksi dan aturan-aturan dalam membuat dan menggunakan basis data. Pengguna sistem dan karyawan yang
10 mengelola
basis
data
membutuhkan
prosedur-prosedur
yang
didokumentasikan mengenai bagaimana cara menggunakan dan menjalankan sistem tersebut. Instruksi yang terdapat didalamnya adalah: 1. Loginke dalam DBMS terlebih dahulu. 2. Penggunaan fasilitas DBMS. 3. Memulai dan mengakhiri DBMS. 4. Membuat backup basis data. 5. Menangani kegagalan pada perangkat keras ataupun perangkat lunak. 6. Mengganti struktur pada tabel, mengatur ulang basis data melalui multiple disk, meningkatkan kinerja, atau arsip data pada secondary storage. 5. People Manusia sebagai salah satu komponen yang terlibat dalam proses sistem basis data. Terdapat 4 tipe manusia yang terlibat dalam lingkungan DBMS, yaitu: 1. Data AdmistratordanDatabase Administrator Data administrator adalah orang yang bertanggung jawab untuk mengatur sumber data termasuk merencanakan perencanaan basis data, mengembangkan dan meliharastandar, kebijakan dan prosedur, sertaperancangan konseptual/logikal basis data. Database administrator adalah orang yang bertanggung jawab terhadap realisasi fisikal dari basis data, termasuk desain fisikal basis data dan implementasi, kontrol keamanan dan integritas, memelihara sistem operasional, dan memastikan kepuasan kinerja untuk pengguna. 2. Database Designer Database designer dibagi menjadi 2 yaitu: 1.Logical database designeradalah orang yang mengidentifikasi data (entitas dan atribut), hubungan antara data, dan kendalakendaladata yang akan disimpan di dalam basis data.
11 2.Physical database designer adalah orang yang memutuskan bagaimana logikal basis data bisa direalisasikan. Meliputi: 1. Pemetaan perancangan logikal basis data menjadi suatu kumpulan tabel dan juga batasan integritas (integrity constraint). 2. Memilih struktur penyimpanan yang spesifik dan metode akses untuk mendapatkan kinerja yang baik. 3. Merancang tindakan keamanan yang dibutuhkan untuk data. 3. Application Developer Application developer adalah orang yang bertanggung jawab untuk menerapkan program aplikasi yang berguna untuk enduser. 4. End-user End-useradalah klien bagi basis data yang telah dibentuk, diimplementasikan, dan dikelola untuk memenuhi kebutuhan informasi.
2.2.3Keuntungan dan Kerugian DBMS (Database Management System) Connolly dan Begg (2010:77), berpendapat ada beberapa keuntungan dan kerugian dalam penggunaan DBMS. Keuntungannya adalah sebagai berikut: 1. Adanya kontrol terhadap pengulangan data. 2. Datanya konsisten. 3. Lebih banyak informasi yang didapat dari data yang sama. 4. Adanya pembagian data. 5. Meningkatkan integritas data. 6. Meningkatkan sistem keamanan terhadap pelindungan basis data dari pengguna yang tidak sah. 7. Mengijinkan database administrator (DBA) untuk menjabarkan dan menjalankan standar kebutuhan. 8. Menghemat biaya operasional dengan menggabungkan semua data kedalam basis data.
12 9. Menyeimbangkan kebutuhan antara satu pengguna dengan pengguna lainnya agar tidak terjadi selisih paham. 10. Meningkatkan pengaksesan data dan respon data. 11. Meningkatkan produktifitas. 12. Meningkatkan pemeliharaan melalui independency data. 13. Meningkatkan concurrency, yaitu jika terdapat dua atau lebih penggunaan akses file yang sama, maka proses pengaksesannya tidak akan terganggu satu sama lain. 14. Meningkatkan backup dan recovery jika terjadi kesalahan. Kerugiannya adalah sebagai berikut: 1. Mempunyai sistem perangkat lunak yang lebih kompleks. 2. DBMS mempunyai ukuran yang lebih besar. 3. Biaya yang harus dikeluarkan tergantung pada kebutuhan fungsi yang disediakan. 4. Biaya tambahan untuk penyimpanan basis data. 5. Biaya konversi tambahan untuk menjalankan DBMS. 6. Kinerja yang kurang cepat. 7. Kegagalan yang begitu besar.
2.2.4 Fungsi DBMS (Database Management System) Menurut Connolly dan Begg (2010:99), ada beberapa fungsi dari DBMS (Database Mangement System), yaitu: 1. Data storage, retrieval, dan update DBMS harus menyediakan kemampuan menyimpan, mengambil dan memperbarui data didalam basis data untuk pengguna. 2. Auser-accesible catalog DBMS
harus
menyediakan
katalog
yang
menjelaskan
dataitemyangdisimpan dan yang dapat diakses oleh pengguna. 3. Transaction support DBMS harus memberikan mekanisme untuk memastikan semua perubahan terhadap suatu transaksi dilakukan atau tidak sama sekali dilakukan.
13 4. Concurrency control service DBMS harus memberikan mekanisme untuk memastikan basis data telah berubah secara benar ketika beberapa pengguna merubah secara bersamaan. 5. Recovery service DBMS harus memberikan mekanisme untuk mengembalikan basis data kepada keadaan sebelum basis data mengalami kerusakan. 6. Authorization service DBMS harus memberikan mekanisme untuk memastikan hanya pengguna yang berkepentingan saja, yang dapat mengakses basis data. 7. Support for data communication DBMS harus mampu berintegrasi dengan semua perangkat lunak. 8. Integrity service DBMS harus memiliki sarana untuk menjamin data didalam basis data dan juga perubahan terhadap data sesuai dengan aturan tertentu. 9. Services to promote data independence DBMS harus dapat mendukung kebebasan program dari struktur aktual basis data. 10. Utility service DBMS harus menyediakan layanan fasilitas seperti: 1. Fasilitas import untuk basis data dari flat file, dan begitu juga fasilitas export untuk memindahkan basis data menujuflat file. 2. Fasilitas
monitoring
untuk
mengawasi
penggunaan
dan
pengoperasiannya. 3. Statistical analysis program untuk memeriksa kinerja dan statistik pemakaian. 4. Fasilitas
index
reorganization,
fasilitas
untuk
mengatur
kembaliindeksdan juga overflow-nya. 5. Garbage collection dan reallocation, fasilitas untuk menghapus record secara fisik dari storage device,untuk mengkonsolidasi tempat
(space)
yang
telah
dibebaskan,
mengalokasikannya kembali saat dibutuhkan.
dan
untuk
14 2.3Relational Model Connolly dan Begg (2010:144) menyatakan bahwarelational model didasarkanpada
sebuah
konsep
dasar
matematika
dari
relasi,
yang
direpresentasikan secara fisik sebagai tabel. 2.3.1Relational Data Structure Pengertian yang berhubungan dengan relational data structure dalam basis data sebagai berikut: 1. Relation adalah sebuah tabel dengan baris dan kolom. 2. Attribute adalah sebuah kolom dari suatu relasi. 3. Domain adalah kumpulan nilai yang diperbolehkan untuk satu atau lebih atribut. 4. Tuple adalah baris dari suatu relasi. 5. Degree adalah jumlah atribut yang terdapat di dalam relasi. 6. Cardinality adalah jumlah baris yang terdapat dalam sebuah relasi. 7. Relational database adalah kumpulan relasi yang sudah di normalisasi dengan nama relasi yang berbeda. 2.3.2Relational Key Relational key adalahsatu atau lebih atribut yang secara unik mengidentifikasi setiap tuple di relasi. Relational key terdiri dari (Connolly dan Begg, 2010:150): 1. Superkeyadalah satu atribut atau sekumpulan atribut yang secara unik mengidentifikasikan sebuah baris dalam sebuah relasi. 2. Candidate key adalah sebuah superkey yang bukan merupakan bagian dari superkey didalam relasi. 3. Primary key adalah candidate key yang terpilih untuk mengidentifikasi tuplesecara unik di dalam sebuah relasi. 4. Foreign key adalah satu atribut atau kumpulan atribut di dalam sebuah relasi yang sesuai dengan candidate keypada suatu relasi (mungkin bisa pada relasi yang sama). 5. Composite key adalah satu atau lebih atribut dari candidate keyyang menjadi primary key.
15 2.3.3Integrity Constraint Yang terdapat didalam integrity constraint adalah (Connolly dan Begg, 2010:153): 1. Null yaitu mengambarkan sebuah nilai dari atribut yang keberadaannya tidak diketahui atau tidak dapat dipakai dalam tuple. 2. Entity Integrity, didalam sebuah relasi, atribut dari primary key tidak boleh bernilai null. 3. Referential Integrity, jika sebuah foreign key berada dalam sebuah relasi,foreign key tersebut harus sesuai dengan nilai candidate key pada suatu tuple di relasi yang terhubung atau foreignkey tersebut harus bernilai null. 4. General Constraint, sebuah aturan tambahan yang dibuat oleh pengguna atau database administrator dari sebuah basis data yang mendefinisikan atau membatasi beberapa aspek dari perusahaan. 2.4Entity Relational Modeling Menurut Connolly dan Begg (2010:371), entity relational model adalah pendekatan secara top-down untuk merancang basis data yang diawali dengan mengindentifikasi data yang penting yang disebut sebagai entitas dan relasi data yang harus direpresentasikan kedalam sebuah model. 1. Entity type Menurut Connolly dan Begg(2010:372), sekelompok
objek
yang
memiliki
properti
entity type adalah yang
sama,
yang
diidentifikasikan oleh perusahaan karena memiliki keberadaan yang independen. Connolly dan Begg (2010:383) mengelompokkan entitiy type menjadi dua jenis yaitu: 1. Strong entitiy type adalah tipe entitas yang tidak bergantung keberadaannya terhadap entitas lainnya. 2. Weak entity type adalah tipe entitas yang keberadaannya bergantung terhadap entitas lainnya. 2. Relationship type MenurutConnollydan Begg(2010:374), relationship typeadalah sekumpulan asosiasi antara satu atau lebih entity type yang
16 berpartisipasi. Setiap tipe hubungan diberi nama yang menjelaskan fungsinya. 2.4.1Atribut Connolly dan Begg (2010:379) berpendapatbahwa, atribut adalah properti dari sebuah entitas atau tipe hubungannya. Atribut diklasifikasikan sebagai berikut: 1. Simple attribute adalah atribut yang terdiri dari komponen tunggal dengan keberadaan yang indepen dan tidak dapat dibagi menjadi komponen yang lebih kecil. 2. Composite attribute adalah atribut yang terdiri dari beberapa komponen dengan keberadaan yang indepen. 3. Single-valued dan multi-valued attribute Single-value attribute adalah atribut yang hanya mempunyai nilai tunggal untuk setiap kemunculan suatu entitas. Multi-valueattribute adalah atribut yang mempunyai lebih dari satu nilai untuk setiap kemunculan suatu entitas. 4. Derived attributeadalah atribut yang merepresentasikan sebuah nilai yang didapat dari satu atau banyakatribut yang berhubungan. 2.4.2Structural Constraint Menurut Connolly dan Begg (2010:385), hal yang utama didalam batasan pada suatu hubungan antar entitas disebut dengan multiplicity. Multiplicity adalah jumlah kejadian yang mungkin dari sebuah tipe entitas yang berhubungan dengan kejadian tunggal dari tipe entitas lain yang berhubungan melalui hubungan tertentu. Cardinalityadalah penggambaran jumlah maksimum dari relationship occurence yang mungkin terjadi untuk sebuah entitas yang berpartisipasi dalam tipe
relasi
dan
participation
menentukan
apakah
keseluruhan
atau
sebagianentitas yangberpartisipasi di dalam sebuah relasi (Connolly dan Begg, 2010:390). Terdapat tiga macam jenis hubungan sesuai dengan kebutuhan: 1. One to one(1:1)relationship
17 Hubungan ini terjadi ketika ada satu record dari tabel pertama yang mempunyai relasi dengan satu record dari tabel yang berbeda.
Gambar 2.2Contoh Multiplicity One-To-One (1:1) Relationship (Connolly dan Begg, 2010:336)
2. One-to-many(1:*)relationship Hubungan one-to-many terjadi bila setiap record dalam tabel A memiliki lebih dari satu relasi terhadap tabel B. Sebaliknya tabel B hanya boleh memiliki satu relasi dari tabel B.
Gambar 2.3Contoh Multiplicity One-To-Many (1:*) Relationship (Connolly dan Begg, 2010:338)
3. Many-to-many(* : *) relationship
18 Hubungan many-to-many terjadi ketika record dalam tabel A memiliki relasi dengan banyak record yang ada ditabel B, dan sebaliknya tabel B memiliki relasi dengan banyak record ditabel A.
Gambar 2.4Contoh Multiplicity Many-To-Many (*:*) Relationship (Connolly dan Begg, 2010:339)
2.5Teori Normalisasi Menurut Connolly dan Begg(2010:416), normalisasi adalah sebuah teknik untuk membuat sebuah relasi dengan sifat yang diinginkan, dari kebutuhan data perusahaan.Proses normalisasi menurut Connolly dan Begg(2010:430), yaitu sebagai berikut: 1. Unnormalized Form(UNF) Sebuah
tabel
yang
mengandung
satu
atau
lebih
dari
grup
pengulangan(repeating group). UNF ini dibuat dengan mentransformasikan data dari sumber informasi kedalam tabel berbentuk baris dan kolom. 2. First Normal Form(1NF) Sebuah relasi dimana persimpangan setiap baris dan kolom hanya memiliki satu nilai. 1NF dibuat dengan menghilangkan grup pengulangan. Untuk menghilangkannya dapat dilakukan dengan dua cara yaitu, pertama dengan memasukkan data yang sesuai kepada kolom kosong dari baris yang mengandung data yang berulang. Kedua, dengan menempatkan data yang berulang, beserta dengan salinan dari atribut key yang asli ke relasi yang berbeda. 3. Second Normal Form (2NF)
19 Sebuah relasi yangsudah berada dalam 1NF dan setiap atribut yang bukan primary keymemiliki ketergantungan fungsional yang penuh (full functional dependency) terhadap primary key. 2NF ini dibuat dengan menghilangkan ketergantungan sebagian (partial dependency).Full functional depency menunjukkanjika A dan B adalah atribut dari sebuah relasi. Maka B dikatakan full functional dependency terhadap A, jika B adalahfunctional dependent terhadap A, tetapi tidak terhadapbagian dari A. 4. Third Normal Form(3NF) Sebuah relasi yang berada pada 1NF dan 2NF, serta tidak ada atributyang bukanprimary
keyyangmemiliki
ketergantungan
transitif
(transitive
dependency) terhadapprimary key. Transitive dependency adalah suatu kondisi dimana A,B dan C adalah atribut dari sebuah relasi, yang digambarkan seperti: A->B dan B->C,maka C dikatakanmemiliki ketergantungan transitifterhadap A melalui B. 5. Boys Code Normal Form (BCNF) Sebuah relasi dikatakan berada di dalam BCNF, jika dan hanya jika setiap determinantmerupakan sebuah candidate key. Untuk melakukan sebuah pengujian apakah sebuah relasi bisa dikatakan BCNF, maka harus mengidentifkasi semua determinat dan memastikan bahwa mereka adalah candidate key.Determinant merupakan suatu atribut atau kumpulan atribut, yang berada disebelah kiri dari functional dependency. 6. Fourth Normal Form (4NF) Sebuah relasi dikatakan berada pada 4NF, jika dan hanya jika setiap nontrivial multi-valued dependencyA->>B, A merupakan candidate key dari relasi. Multi-valued dependency mewakili sebuah ketergantungan antar atribut (contohnya A, B, dan C)sehingga setiap nilai dari A terdapat kumpulan nilai dari B dan juga kumpulan nilai dari C.Akan tetapi, kumpulan nilai antara B dan C adalah independen atau berdiri sendiri. 7. Fifth Normal Form (5NF) Sebuah relasi dikatakan berada pada 5NF, jika dan hanya jika setiapjoin dependency (R1, R2,…,Rn) di dalam relasi R, setiap projeksi berisicandidate key dari relasi yang asli.Join dependency merupakan tipe sebuah dependency. Sebagai contoh, untuk setiap relasi R dengan bagian atribut dari R, dilambangkan A,B,..,Z, relasi R dikatakan join dependency jika dan
20 hanya jika setiap nilai yang sah dari relasi R sama dengan gabungan dari projeksinya pada A,B,…Z. 2.6Database System Development Lifecycle(DSDLC) Connolly dan Begg (2010:313) menyatakan tahapan-tahapan yang terdapatdalamdatabase system development lifecycleadalah sebagai berikut:
Gambar 2.5Database System Development Lifecycle (Connolly dan Begg, 2010:314) 1. Database Planning Perencanaan basis data merupakan suatu aktivitas manajemen yang memungkinkan tahapan dalamdatabase system development lifecycle dapat direalisasikan seefisien dan seefektif mungkin
21 (Connolly dan Begg, 2010:313). Perencanaan basis data harus diintegrasikan dengan strategi sistem informasi dari perusahaan. Terdapat tiga rumusan dalam membuat strategi sistem informasi, yaitu: 1. Identifikasi rencana dan tujuan dari perusahaan dengan penentuan kebutuhan sistem informasi berikutnya. 2. Mengevaluasi sistem informasi yang ada untuk menentukan kelebihan dan kekurangan yang ada. 3. Penilaian mengenai peluang teknologi informasi yang dapat memberikan keunggulan yang kompetitif. Langkah-langkah dalam perencanaan basis data adalah: 1. Mendefinisikan secara jelas mission statement dari aplikasi basis data. Mission statement merupakan tujuan utama dari aplikasi basis data yang dibuat.Mission statement membantu dalam memperjelas tujuan dari aplikasi basis data yang dibuat dan memberikan jalur yang lebih jelas dalam pembuatan aplikasi basis data secara efisien dan efektif. 2. Mengidentifikasi mission objective. Setiap mission objective harus dapat mengidentifikasi tugas tertentu yang harus dapat didukung oleh aplikasi basis data. Asumsinya adalah jika aplikasi basis data mendukung mission objective, maka mission statement akan terpenuhi.
2. System Definition Definisi
sistem
merupakan
suatu
proses
dalam
mendeskripsikan ruang lingkup dan batasan dari aplikasi basis data yang dibuat dan user view yang utama(Connolly dan Begg, 2010:316). Definisi sistem merupakan tahap penting sebelum melakukan perancangan desain aplikasi basis data. User view mendefinisikan apa yang dibutuhkan oleh aplikasi basis data yang dilihat dalam perspektif suatu peran pekerjaan tertentu
22 (seperti manajer atau supervisor) atau area aplikasi perusahaan (seperti marketing, personalia, atau stok kontrol). Identifikasi user view merupakan aspek penting dalam mengembangkan aplikasi basis data karena dapat membantu untuk memastikan bahwa tidak ada user view utama yang terlupakan ketika membuat kebutuhan untuk aplikasi basis data. 3. Requirements Collection and Analysis Menurut Connolly dan Begg (2010:316), pengumpulan kebutuhan dan analisis merupakan suatu proses dalam mengumpulkan dan menganalisa informasi mengenai bagian dari perusahaan yang akan didukung oleh aplikasi basis data, dan menggunakan informasi ini untuk mengidentifikasi kebutuhan dari aplikasi basis data. Terdapat banyak teknik dalam pengumpulan informasi, yang disebut
fact-finding
technique.Menurut
Connolly
dan
Begg
(2010:341), fact-finding techniquemerupakan suatu proses formal dengan menggunakan teknik seperti interview dan kuesioner untuk mengumpulkan fakta mengenai sistem, kebutuhan dan preferensi. Lima teknik umum dalam fact-finding technique: 1. Memeriksa dokumentasi. Memeriksa dokumentasi dapat membantu memberikan informasi mengenai bagian perusahaan yang memiliki masalah. Dengan memeriksa
dokumen,
faktur,
laporan
dan
berkas
yang
berhubungan dengan sistem yang ada, maka akan didapatkan pemahaman mengenai sistem. 2. Wawancara (interview). Wawancara bertujan untuk mendapatkan informasi secara langsung dari pengguna. Teknik ini memerlukan kemampuan komunikasi yang baik dalam menghadapi pengguna secara efektif. 3. Observasi. Observasi merupakan salah satu langkah teknik efektif untuk memahami suatu sistem. Teknik ini dilakukan dengan cara
23 berpartisipasi dan melihat secara langsung seseorang dalam melakukan aktivitas bisnis.
24 4. Penelitian. Penelitian dilakukan dengan mencari informasi mengenai masalah terkait melalui jurnal, buku referensi dan internet. 5. Kuesioner. Kuesioner merupakan dokumen dengan tujuan khusus untuk mendapatkan fakta yang dikumpulkan dari banyak orang, dengan tetap mengontrol respon dari mereka.
4. Database Design Menurut Connolly dan Begg (2010:320), desain basis data merupakan suatu proses dalam membuat desain yang akan mendukung mission statement dan mission objective perusahaan untuk kebutuhan aplikasi basis data. Terdapat dua pendekatan utama dalam desain basis data: 1. Bottom-up, pendekatan ini dimulai dari tingkat dasar dari atribut (yaitu, properti dari entitas dan relasinya), yang melalui analisa asosiasi antara atribut akan dikelompokkan menjadi relasi yang merepresentasikan
tipe
relasi
dan
relasi
antara
entitas.
Pendekatan bottom-up lebih cocok digunakan untuk perancangan desain basis data yang sederhana dengan jumlah atribut yang relatif kecil. Pendekatan bottom-up menggunakan proses normalisasi. 2. Top-down, pendekatan ini dimulai dengan pengembangan model data yang memiliki beberapa entitas dan relasi tingkat tinggi, kemudian mengidentifikasi entitas, relasi dan atribut tingkat rendah.
Pendekatan
top-down
diilustrasikan menggunakan
konsep Entity-Relationship Model (ERD). Desain basis data terdiri dari tiga tahapan utama yaitu: 1. Perancangan Basis Data Konseptual Perancangan basis data konseptual merupakan suatu proses membangun model data konseptual yang digunakan oleh perusahaan,
yang
tidak
bergantung
kepada
pertimbangan
fisikal(Connolly dan Begg, 2010:467). Pertimbangan fisikal yang
25 dimaksud berupa DBMS yang digunakan, program aplikasi, bahasa pemrograman, hardware platform ataupun masalah kinerja. Langkah-langkah dalam membangun model data konseptual: 1. Mengidentifikasi entity type Tujuannya adalah untuk mengidentifikasi entity type utama yang dibutuhkan. 2. Mengidentifikasi relationship type Tujuannya adalah untuk mengidentifikasi hubungan penting yang ada di antara entity type yang telah diidentifikasi. 3. Mengidentifikasi dan menghubungkan atribut dengan entity type atau relationship type Tujuaannya adalah untuk menghubungkan atribut-atribut dengan entity type atau relationship type yang sesuai. 4. Menentukan domain atribut Tujuannya adalah untuk menentukan domain dari masingmasing atribut yang telah diidentifikasi di dalam model data konseptual. Domain merupakan kumpulan nilai-nilai yang diijinkan untuk satu atau lebih atribut. 5. Menentukan candidate key, primary key dan alternate key Tujuaannya adalah untuk menentukan candidate key untuk masing-masing entity type. Jika terdapat lebih dari satu candidate key, maka akan dipilih salah satu untuk dijadikan primary key dan yang lain akan menjadi alternate key. 6. Mempertimbangkan
penggunanaan
enhanced
modelling
concept Tujuannya adalah untuk mempertimbangkan penggunaan enhanced modelling concept seperti spesialisasi/generalisasi, agregasi dan komposisi. 7. Memeriksa model dari redundansi Tujuannya
adalah
untuk
memeriksa
apakah
terdapat
redundansi di dalam model data konseptual. Aktivitas dalam memeriksa redundansi, meliputi: a. Memeriksa kembali hubungan one-to-one relationship. b. Menghilangkan hubungan yang redundan.
26 c. Mempertimbangkan dimensi waktu. 8. Memvalidasi model data konseptual dengan transaksi pengguna Tujuannya adalah untuk memastikan model data konseptual mendukung transaksi yang dibutuhkan. 9. Memeriksa kembali model data konseptual dengan pengguna Tujuannya adalah untuk memeriksa kembali data konseptual untuk memastikan bahwa
model tersebut merupakan
representasi nyata dari kebutuhan data perusahaan.
2. Perancangan Basis Data Logikal Menurut Connolly dan Begg (2010:467), perancangan basis data logikal merupakan suatu proses membangun model data logikal yang digunakan oleh perusahaan berdasarkan data model yang spesifik, tetapi tidak bergantung kepada DBMS tertentu dan pertimbangan fisikal. Langkah-langkah dalam membangun model data logikal: 1. Menurunkan relasi untuk model data logikal Tujuannya adalah untuk membuat relasi model data logikal untuk merepresentasikan entitas, hubungan, dan atribut yang telah diidentifikasi. Struktur dalam menurunkan relasi: a. strong entity type; b. weak entity type; c. one-to-many binary relationship type; d. one-to-one binary relationship type; e. one-to-one recursive relationship type; f.
superclass/subclass relationship type;
g. many-to-many binary relationship type; h. complex relationship type; i.
multi valued attribute.
2. Memvalidasi relasi menggunakan normalisasi Tujuannya adalah untuk memvalidasi relasi yang terdapat pada model data logikal menggunakan normalisasi.
27 3. Memvalidasi relasi dengan transaksi pengguna Tujuannya adalah untuk memastikan relasi yang terdapat pada model data logikal mendukung transaksi yang dibutuhkan. 4. Memeriksa integrity constraint Tujuannya adalah untuk memeriksa apakah integrity constraint direpresentasikan pada model data logikal. Tipe-tipe dari integrity constraint: a. required data; b. attribute domain constraint; c. multiplicity; d. entity integrity; e. referential integrity; f. general constraint. 5. Memeriksa kembali model data logikal dengan pengguna Tujuannya adalah untuk memeriksa kembali model data logikal untuk
memastikan
bahwa
model
tersebut
merupakan
representasi nyata dari kebutuhan data perusahaan. 6. Menggabungkan model data logikal menjadi model data global Tujuannya adalah untuk menggabungkan model data logikal menjadi model data global tunggal yang merepresentasikan keseluruhan user view dari basis data. 7. Memeriksa perkembangan di masa depan Tujuannya adalah untuk menentukan apakah terdapat perubahan penting yang akan terjadi di masa depan dan menilai apakah model data logikal dapat menangani perubahan tersebut.
3. Perancangan Basis Data Fisikal Menurut Connolly dan Begg (2010:467), perancangan basis data fisikal merupakan suatu proses dalam menghasilkan deskripsi dari implementasi basis data pada tempat penyimpanan, yang mencakup relasi dasar, file organization, dan indeks yang digunakan untuk mencapai akses data secara efisien serta batasan integritas (integrity constraint) dan tingkat keamanan. Langkah-langkah dalam perancangan basis data fisikal:
28 1.Menerjemahkan model data logikal untuk DBMS yang digunakan Tujuannya adalah untuk menghasilkan skema basis data relasional dari model data logikal, yang dapat diimplementasikan pada DBMS yang digunakan. Terdapat tiga aktivitas di dalam tahap ini: a. Merancang relasi dasar Tujuannya
adalah
untuk
menentukan
bagaimana
merepresentasikan relasi dasar yang telah diidentifikasi pada model data logikal ke DBMS yang digunakan. b. Merancang representasi derived data Tujuannya
adalah
untuk
menentukan
bagaimana
merepresentasikan deriveddata yang terdapat pada model data logikal ke DBMS yang digunakan. c. Merancang general constraint Tujuannya adalah untuk merancang general constraint untuk DBMS yang digunakan. 2.Merancang file organization dan indeks Langkah-langkah dalam merancang file organization dan indeks: 1. Menganalisa transaksi Tujuannya adalah untuk memahami fungsionalitas dari transaksi yang akan dijalankan pada basis data dan untuk menganalisa transaksi penting. 2. Memilih file organization Tujuannya adalah untuk menentukan file organization yang efisien untuk setiap relasi dasar. 3. Memilih indeks Tujuannya adalah untuk menentukan apakah menambah indeks akan meningkatkan kinerja dari sistem. 4. Memperkirakan kebutuhan disk space Tujuannya adalah untuk memperkirakan kebutuhan disk space yang diperlukan oleh basis data. 3. Merancang user view Tujuannya adalah untuk merancang user view yang telah diidentifikasi ketika tahapan pengumpulan kebutuhan dan analisis pada database system development lifecycle.
29
4. Merancang mekanisme keamanan Tujuannya adalah untuk merancang mekanisme keamanan untuk basis data sebagaimana ditentukan oleh pengguna ketika tahapan pengumpulan kebutuhan dan analisis pada database system development lifecycle. 5. Mempertimbangkan adanya pengontrolan redundansi Tujuannya adalah untuk menentukan apakah pengenalan pengontrolan redundansi dengan mengendurkan normalisasi akan meningkatkan kinerja dari sistem. 6. Mengawasi dan mengendalikan sistem operasional Tujuannya adalah untuk mengawasi sistem operasional dan meningkatkan kinerja dari sistem untuk memperbaiki keputusan perancangan yang tidak sesuai atau merefleksikan kebutuhan akan perubahan.
5. DBMS Selection Menurut Connolly dan Begg (2010:325), pemilihan DBMS merupakan tahapan untuk memilih DBMS yang sesuai untuk dapat mendukung aplikasi basis data. Terdapat empat langkah utama dalam memilih DBMS: 1. Mendefinisikan kerangka acuan belajar. 2. Membuat daftar dua atau tiga produk DBMS. 3. Mengevaluasi produk DBMS. 4. Merekomendasikan pilihan dan membuat laporan produk DBMS.
6. Application Design Menurut Connolly dan Begg (2010:329), desain aplikasi merupakan perancangan user interface dan program aplikasi yang menggunakan aplikasi basis data. Terdapat dua aspek dalam desain aplikasi, yaitu: 1. Transaction design
30 Menurut Connolly dan Begg (2010:330), transaksi merupakan suatu tindakan, atau serangkaian tindakan, yang dilakukan oleh satu pengguna atau program aplikasi, yang melakukan akses atau mengubah konten yang terdapat pada aplikasi basis data. Terdapat tiga tipe utama transaksi, yaitu: 1. Retrieval transaction Digunakan untuk mengambil data untuk ditampilkan pada layar atau untuk membuat laporan. 2. Update transaction Digunakan untuk melakukan memasukkan data baru, menghapus data lama, atau memodifikasi data yang ada pada aplikasi basis data. 3. Mixed transaction Melibatkan transaksi pengambilan dan pembaharuan data (retrieval dan update). 2. User interface design Untuk dapat menghasilkan rancangan user interface yang baik, maka dibutuhkan suatu panduan. Panduan yang akan digunakan adalah eight golden rules.
7. Prototyping Menurut
Connolly
dan
Begg
(2010:333),
prototyping
merupakansuatu proses pembuatan model kerja dari aplikasi basis data. Suatu prototype tidak memiliki keseluruhan fitur atau menyediakan semua fungsionalitas dari aplikasi basis data. Tujuan dari pengembangan prototype adalah supaya pengguna dapat menggunakan prototype untuk mengidentifikasi fitur dari aplikasi basis data, apakah sudah bekerja dengan baik atau belum. Terdapat dua strategi dalam pengembangan prototyping: 1. Requirement prototyping, yaitu penggunaan prototype untuk menentukan kebutuhan dari aplikasi basis data yang diusulkan, dan setelah kebutuhan sudah terpenuhi, maka prototype tersebut tidak akan digunakan.
31 2. Evolutionary prototyping, yaitu penggunaan prototype dengan tujuan
seperti
requirement
prototyping,
tetapi
memiliki
perbedaan dalam hal, prototype tersebut tetap digunakan untuk pengembangan lebih lanjut menjadi aplikasi basis data.
8. Implementation Implementasi merupakan realisasi fisikal dari basis data dan perancangan aplikasi (Connolly dan Begg, 2010:333).
9. Data Conversion and Loading Menurut Connolly dan Begg (2010:334), data conversion and loadingmerupakan suatu proses untuk memindahkan data yang ada menuju basis data yang baru dan mengubah aplikasi yang ada untuk dapat dijalankan di basis data yang baru.
10. Testing Connolly
dan
Begg
(2010:334)
menyatakan,
testing
merupakan suatu proses menjalankan aplikasi basis data dengan tujuan untuk mencari kesalahan (error).Sedangkan menurut Pressman (2010:482) testing bertujuan untuk mencari kesalahan dan salah satu test yang baik adalah test yang memiliki tingkat probabilitas tinggi dalam menemukan kesalahan (error). Salah satu jenis testing menurut (Pressman, 2010:495) adalah: 1. Black-Box Testing Black-box testing, juga disebut dengan behavioural testing, berfokus pada kebutuhan fungsional dari perangkat lunak. Black-Box
Testing
adalah
teknik
yang
memungkinkandeveloperuntuk mendapatkan kondisi ketika melakukan input yang akan dikerjakan sesuai dengan kebutuhan fungsional.Black-box testing mencoba untuk mencari error pada kategori sebagai berikut: 1. Kesalahan fungsi yang tidak benar dan fungsi yang hilang. 2. Interface error.
32 3. Error yang terdapat didalam struktur data atau external data access. 4. Behavior dan performance error. 5. Initialization dan termination error.
11. Operational Maintenance Menurut
Connolly
maintenancemerupakan
dan suatu
Begg proses
(2010:335), untuk
operational
memantau
dan
memelihara aplikasi basis data setelah dilakukan instalasi. Aktivitasaktivitas dalam melakukan maintenance: 1. Memantau kinerja dari sistem. Jika kinerja berada di bawahlevel yang diterima, maka diperlukan pembetulan ataupun reorganisasi dari basis data. 2. Memelihara dan memperbaharui aplikasi basis data (ketika diperlukan). 2.7 Penjualan Menurut Hall (2013:146), penjualan melibatkan prosedur yang meliputi menerima dan memproses pemesanan pelanggan, memenuhi pemesanan tersebut dan mengirimkan produk kepada pelanggan, menagih pembayaran kepada pelanggan pada waktu yang tepat, dan mencatat transaksi tersebut dengan benar. 2.8Pembelian Menurut Hall (2013:13), pembelian merupakan suatu aktifitas dalam memesan persediaan barang dari pemasok ketika persediaan barang sudah mencapai masa dimana harus melakukan pemesanan kembali.
Sifat dari
aktivitas ini bervariasi tergantung dari perusahaan. Dalam beberapa kasus pembelian membutuhkan tidak lebih dari mengirimkan purchase order pada pemasok yang dipilih. Dalam kasus lain aktivitas ini melakukan penawaran kepada beberapa pemasok. Proses pembelian adalah sebuah interaksi dari sekelompok orang, perlengkapan, aktifitas dan kontrol yang didesain untuk menyelesaikan atau mencapai fungsi pokok sebagai berikut (Gelinas dan Dull, 2010:431):
33 1. Menangani rutinitas kerja dari departemen pembelian dan departemen penerimaan. 2. Mendukung keputusan yang dibutuhkan oleh pihak yang mengatur departemen pembelian dan departemen penerimaan. 3. Membantu dalam persiapan laporan internal dan eksternal. 2.9Persediaan Menurut Kieso,Weygandt dan Warfield(2011:408), persediaan adalah pospos aktiva yang dimiliki oleh perusahaan untuk dijual dalam operasi bisnis normal, atau barang yang akan digunakan atau dikonsumsi. Investasi dalam persediaan biasanya merupakan aktiva lancar paling besar dari perusahaan dagang (ritel) dan manufaktur. Menurut
Kimmel,
Weygandt
dan
Kieso
(2010:276),
persediaan
diklasifikasikan menjadi tiga kategori: 1. Finished goods inventory adalah barang yang sudah selesai diproduksi dan siap untuk dijual. 2. Work in processadalah bagian dari produksi persediaan yang sudah mulai diproses produksi tetapi belum selesai. 3. Raw material adalah bahan dasar yang digunakan untuk proses produksi. Barang-barang tersebut belum melewati fase produksi sama sekali. 2.10HTTP Menurut Hidayatullah dan Kawistara (2014:5), Hypertext Transfer Protocol (HTTP) adalah protokol agar client dan server bisa berkomunikasi dengan gaya request-response. HTTPmenentukan bagaimana format pesan dan bagaimana cara pengirimannya, serta bagaimana web server dan browser beraksi dan bereaksi terhadap berbagai perintah. Contoh: sebuah client (browser) mengirim HTTPrequestke server. Kemudian server mengirimkan respon kepada client. Respon tersebut mengandung status tentang request tersebut dan konten yang di request. 2.11PHP PHPadalah scripting language yang didesain secara khusus untuk sebuah web yang berada dalam sisi server. Didalamnya terdiri dari HTML page, yang
34 dapat diletakkan PHP code dan akan dieksekusi setiap kali halaman tersebut dikunjungi.PHP code tersebut diartikan padaweb server dan menghasilkan HTML
atau
hasil
lainnya,
yang
akan
dilihat
oleh
pengguna(WellingdanThompson,2009:2). Menurut Hidayatullah dan Kawistara (2014:234), PHP adalah suatu bahasa scripting yang khusus digunakan untuk web development. Karena sifatnya yang server side scripting, maka untuk menjalankan PHP harus menggunakan webserver. PHP itu sendiri dapat diintegrasikan dengan HTML, Javascript, JQuery, Ajax. Namun, pada umumnya PHP lebih banyak digunakan bersamaan dengan file bertipe HTML. Dengan menggunakan PHP pengguna bisa membuat websitepowerful yang dinamis dengan disertai manjemen basis data. Selain itu penggunaan PHP yang sebagian besar dapat beroperasi di berbagai platform, menjadi salah satu alasan kenapa pengguna harus menguasai PHP untuk menjadi web development yang handal.Ada beberapa kelebihan PHP yaitu,sebagai berikut: a. PHP berbasis server side scripting Server side scripting dapat bekerja jika ada tiga komponen berikut: 1. PHP parser (CGI atau server modul) CGI itu sendiri adalah Common Gateway Interface yang dimana mempunyai definisi suatu mekanisme yang berjalan di webserver, bertugas untuk melayani komunikasi dua arah antara web server dengan web browser. 2. Web server Web server itu sendiri bisa berupa Apache dalam XAMPP. 3. Web Browser Tempat dimana pengguna bisa melihat hasil outputPHP yang dikerjakan. b. Command Line Scripting pada PHP Dimana pengguna bisa menggunakan PHP dengan dan tanpa web server atau browser. Dengan menggunakan PHPParser saja pengguna bisa menggunakan PHP pada command line. Cara kerjanya hampir sama dengan scriptPHP tersebut digunakan untuk memproses sebuah job dan task. c. Dapat digunakan diberbagai macam Platform Operating System.
35 d. Mendukung berbagai macam web server. e. Output file PHP pada XHTML, HTML dan juga XML. 2.12Web Server Menurut Sibero (2014:11), web server adalah sebuah komputer yang terdiri perangkat keras dan perangkat lunak. Secara bentuk fisik dan cara kerjanya, perangkat keras web servertidak berbeda dengan komputer atau PC, yang membedakan adalah kapasitas dan kapabilitasnya. Perbedaan tersebut dikarena web server bekerja sebagai penyedia layanan yang dapat diakses oleh banyak pengguna, sehingga dibutuhkan kapasitas dan kapabilitas yang besar dibandingkan PC. Menurut Hidayatullah dan Kawistara (2014:125),web server adalah tempat dimana pengguna penyimpan sebuah aplikasi webyang telah dibuat, kemudian mengaksesnya melalui internet. Setiap perubahan kecil maupun besaryang diuploadoleh penggunake dalam web server,pengguna langsung dapat melihat perubahan dan memeriksa apakah perubahan itu sudah sesuai dengan yang pengguna inginkan atau tidak. Selain itu dibutuhkannya web server ini adalah untuk server side script seperti PHP, pemeriksaan baru akan tampil jika menggunakan web server.
Itulah bedanya dengan clientside script seperti
HTML, CSS dan Javascript yang cukup dengan browser pengguna sudah bisa tahu apakah script pengguna sudah sesuai dengan keinginan atau belum. 2.13PhpMyAdmin PhpMyAdmin adalah aplikasi web yang dibuat oleh phpmyadmin.net. PhpMyAdmin digunakan untuk adminstrasi sistem basis data MySQL. Beberapa fitur administrasi basis data pada PhpMyAdminsebagai berikut (Sibero, 2014:376): 1. Pembuatan basis data. 2. Mengubah basis data. 3. Pembuatan tabel. 4. Mengubah tabel. 5. Menghapus tabel. 6. Menambah data. 7. Mengubah data. 8. Menghapus data.
36 9. Membuat view. 10. Menghapus view. 11. Membuat indeks kolom. 12. Menghapus indeks kolom. 2.14Web Browser MenurutSibero (2014:12), web browser adalah aplikasi perangkat lunak yang digunakan untuk mengambil dan menyajikan sumber informasi web. Sumber informasi web diindentifikasikan dengan uniform resource indentifier (URI) yang dapat terdiri dari halaman web, video, gambar, ataupun konten lainnya. 2.15Internet Menurut Connolly dan Begg (2010:1024),internet adalah sekumpulan jaringan komputer yang terhubung satu dengan yang lain. Internet terdiri dari kumpulan jaringan terpisah yang saling terhubung satu dengan yang lain, jaringan tersebut dipunyai oleh pihak komersial, pendidikan, maupun organisasi pemerintahan. Menurut
Sibero(2014:10),internet
adalah
jaringan
komputer
yang
menghubungkan antar jaringan secara global, internet bisa juga disebut jaringan dalam suatu jaringan yang luas. 2.16Intranet Intranet adalah sebuah website atau kumpulan website yang dimiliki oleh suatu organisasi, yang hanya dapat diakses oleh lingkup internal dari organisasi tersebut (Connolly danBegg, 2010:996). 2.17Web Database Beberapa keuntungan dan kerugian dari web database (Connolly dan Begg, 2010:1036): Keuntungan dari web database: 1. Sederhana. 2. Mempunyai platform yang independen. 3. Grafis antarmuka dengan pengguna. 4. Standarisasi. 5. Dapat dibuka di platform mana pun.
37
Kerugian dari web database: 1. Dalam hal kehandalan (realibility). 2. Dalam hal keamanan (security). 3. Dalam hal Harga (cost). 4. Tingkat skalabilitas (scalability). 5. Dalam hal kinerja (performance).
2.18HTML Hidayatullah dan Kawistara(2014:13) mengatakanHTML atau singkatan dari Hypertext Markup Language adalah bahasa standaryang digunakan untuk menampilkan halaman web. Yang dapat dilakukan olehHTML yaitu sebagai berikut: a. Mengatur tampilan dari halaman webdan isinya. b. Membuat tabel dalam halaman web. c. Mempublikasikan halaman web secara online. d. Membuat form yang bisa di gunakan untuk menangani registrasi dan transaksi via web. e. Menambahkan
objek-objek
seperti
audio,
video,
animasi,
javaapplet dalam halaman web. f. Menampilkan area gambar(canvas) dalam browser. 2.19Apache Menurut Raharjo, Heryanto, dan Rosdiana (2014:1), Apache adalah perangkat yang digunakan sebagai web server(dalam hal ini komputer lokal). Dengan menggunakanApache, kode-kode PHPyang sudah dibuat dapat dijalankan didalam sebuah web browser dikomputer lokal, sehingga tidak memerlukan akses internet secara langsung. 2.20MySQL Menurut Dwiartara(2012:6),MySQL adalah basis data, basis data itu sendiri merupakan jalan dapat menyimpan berbagai informasi dengan membaginya berdasarkan kategori-kategori tertentu. Dimana informasi-informasi tersebut saling berkaitan satu dengan lainnya. MySQLbersifat RDMS (Realtional
38 Database Management System). RDMS memungkinkan seorang admin dapat menyimpan banyak informasi ke dalam tabel-tabel, dimana tabel-tabel tersebut saling berkaitan satu sama lain. Keuntungan RDMS sendiri adalah kita dapat memecah basis data kedalam tabel-tabel yang berbeda. Setiap tabel memiliki informasi yang berkaitan dengan tabel yang lainnya.Beberapa keuntungan dari MySQL itu sendiri adalah: 1. Gratis Sama dengan PHP, MySQL itu sendiri bersifat opensource, semua orang bebas menggunakan tanpa harus dikenakan biaya sedikitpun. 2. Cross Platform MySQL dapat digunakan padaWindows dan juga padaLinux. 3. Lengkap dan cepat Pasangan yang tepat untuk PHP. Banyak hosting saat ini mendukung adanya PHP dan MySQL karena kecepatan, gratis, dan dapat dijalankan di sistem operasi manapun. 2.21WWW World Wide Web yang biasa disebut dengan WWW dan juga webadalah suatu sistem yang berkaitan dengan dokumen digunakan sebagai media atau sarana untuk menampilkan teks, gambar, multimedia, dan lainnya pada jaringan internet(Sibero, 2014:11). 2.22Flowchart Menurut Romney dan Steinbart (2006: 70),flowchartadalahsebuah teknik analisis yang digunakan untuk mendeskripsikan suatu aspek dari sistem infromasi secara jelas ringkas dan logis.Flowchart juga digunakan sebagai simbol standar untuk menggambarkan proses transaksi yang dilakukan oleh perusahaan dan aliran data dari sistem. Flowchart simbol dibagi menjadi 4 kategori: 1. Input atau output symbol yang merepsentasikan media yang menyediakan input atau menyimpan output dari suatu proses operasi. 2. Processing symbol yang menunjukkan media yang digunakan untuk memproses data atau mengindikasikan ketika suatu proses dilakukan secara manual.
39 3. Storage symbol yang merepresentasikan media yang digunakan untuk menyimpan data yang tidak digunakan oleh sistem. 4. Flow & miscellaneous symbol yang mengindikasikan aliran data dan barang. Berikut adalah simbol-simbol dari flowchart: Tabel 2.1 Simbol Yang Terdapat Dalam Flowchart Kategori Flowchart
Input/output symbol
Simbol
Keterangan
Input/output
Beberapa fungsi input atau output dalam program flowchart. Dan juga digunakan untuk menyediakan jurnal akuntansi di dalam dokumen flowchart
Multiple copies of one document
Document
Menggambarkan banyak dokumen atau laporan.
Sebuah dokumen atau laporan: yang disiapkan secara manual atau komputer.
Computer processing Fungsi proses yang dilakukan oleh komputer; biasanya dihasilkan pada saat perubahan data atau informasi. Processing symbol
Storage symbol
Flow & miscellaneous symbol
Manual operation
Operasi proses yang dilakukan secara manual.
Magnetic disc
Data yang disimpan pada magnetic disk; digunakan pada master file dan basis data.
Magnetic tape
Data yang disimpan pada magnetic tape.
Terminal
Simbol yang menggambarkan awal atau akhir dari aliran proses.
Flow line
Arah suatu proses atau aliran suatu dokumen.
40
41
Kategori Flowchart
Simbol Decision
Keterangan Simbol yang menggambarkan sebuah langkah pengambilan keputusan.
On-page connector
Mengubungkan aliran proses pada halaman yang sama.
Off-page Connector
Simbol ini digunakan untuk menunjukkan kemana dan bagaimana bagan aliran terkait satu dengan yang lainnya pada halaman yang berbeda.
Flow & miscellaneous symbol
2.23State Transition Diagram (STD) STD atau State Transition Diagram adalah sebuah alat yang digunakan untuk mengambarkan sebuah urutan dan variasi screen yang terjadi pada satu sesi pengguna(Whitten dan Bentley, 2007:635). Notasi-notasi yang ada dalam STD, yaitu: a. Kotak (persegi): menggambarkan state sistem. b. Anak panah: menunjukkan arah perubahan state. c. Tulisan yang diberi garis bawah: menyatakan sebuah kondisi. d. Tulisan tanpa garis bawah: menyatakan sebuah aksi. Aksi biasanya berada di bawah kondisi.
State 1 Condition Action State2
Gambar 2.6 Notasi STD
42 2.24Data Flow Diagram (DFD) DFDadalah penggambaran suatu pergerakan grafik data antara entitas eksternal, proses-proses menyimpan data kedalam suatu sistem (Valacich, GeorgedanHoffer, 2011:154). DFD juga dapat diartikan sebagai teknik yang menggambarkan suatu proses bisnisbeserta data yang melewati bisnis proses tersebut.DFD ini berfokus terutama kepada bisnis atau aktivitas yang dilakukan.(Roth, Dennis dan Wixom, 2013:184). Menurut Roth, Dennis dan Wixom (2013:191), DFD mempunyai beberapa model diagram untuk menggambarkan bisnis proses, diantaranya: 1. Diagram Konteks Diagram yang mengambarkan keseluruhan proses bisnis sebagai satu proses dan menunjukan aliran data dari dan ke externalentities. Data store biasanya tidak ditampilkan di dalam diagram konteks. 2. Diagram LevelNol Menggambarkan level tertinggi dari proses penting yang ada dalam sistem, dan bagaimana mereka saling berhubungan. 3. Diagram Level 1 Pada diagram ini digambarkan rincian dari setiap proses yang ada pada diagram nol sampai ketingkat proses yang paling rinci. 4. Diagram Level2 Merupakan penggambaran lebih detail dari proses yang terdapat pada diagram level 1. Berikut ini penjelasan tentang keempat simbolyang digunakan pada DFD, yaitu (Valacich, George dan Hoffer, 2011:156): 1. Data Flow Adalah aliran informasi yang menunjukan pergerakan dari satu tempat ke tempat lainnya dalam satu sistem. 2. Data Store Adalah tempat dimana sebuah data disimpan kedalam suatu sistem. 3. Process Tempat dimana melakukan dan mengolah sebuah data, kemudian akan ditranformasikan, disimpan, dan didistribusikan.
43 4. Source/sink Sebuah tempat tujuan data yang akan dituju. Terkadang source/sink ini sendiri menunjuk sebagai external entities karena berada diluar sistem.
Gambar 2.7Simbol DFD (Valacich, George dan Hoffer, 2011:155) 2.25Eight Golden Rules Shneidermandan Plaisant (2010:88) memaparkan bahwa terdapat delapan aturan yang digunakan sebagai prinsip dasar dalam merancang user interface, yaitu: 1. Strive for consistency Konsistensi dilakukan pada urutan tindakan, istilah yang digunakan pada menu, perintah, halaman bantuan, warna, tata letak serta font. 2. Cater to universal usability Mengenali kebutuhan pengguna yang beragam seperti perbedaan rentang
usia,
pemula
dan
ahli
serta
keragaman
teknologi.
Menambahkan fitur untuk pemula, seperti penjelasan, dan fitur untuk para ahli, seperti shortcut dapat memperkaya desain interface dan meningkatkan kualitas sistem yang dirasakan. 3. Offer informative feedback Untuk setiap tindakan yang dilakukan oleh pengguna harus ada umpan balik dari sistem. Untuk tindakan yang kecil dan sering, respon yang diberikan dapat sederhana, sementara untuk tindakan yang besar dan jarang, respon yang diberikan harus lebih substansial.
44 4. Design dialogs to yield closure Urutan tindakan harus diatur ke dalam kelompok awal, pertengahan, hingga akhir. Umpan balik yang informatif pada penyelesaian tindakan dapat memberikan kepuasan pencapaian, rasa lega dan tanda untuk mempersiapkan tindakan selanjutnya bagi pengguna. Contohnya, website e-commerce memindahkan pengguna dari memilih produk menuju halaman checkout, dan diakhiri dengan halaman konfirmasi yang jelas, yang melengkapi transaksi. 5. Prevent errors Sebisa mungkin, sistem harus dirancang supaya pengguna tidak dapat melakukan
kesalahan
yang
fatal.
Contohnya
adalah
tidak
memperbolehkan karakter alphabet di dalam kolom numerik. Jika pengguna
melakukan
kesalahan,
maka
interface
harus
dapat
mendeteksi dan memberikan solusi. 6. Permit easy reversal of actions Sebisa mungkin, tindakan yang dilakukan oleh pengguna harus dapat dikembalikan ke kondisi sebelumnya. Fitur ini akan mengurangi kecemasan pengguna, karena pengguna tahu bahwa kesalahan dapat dibatalkan sehingga mendorong pengguna untuk mengeksplorasi menu-menu yang belum diketahui oleh pengguna. 7. Support internal locus of control Membuat pengguna sebagai inisiator dalam melakukan tindakan bukan sebagai responden terhadap tindakan. 8. Reduce short-term memory load Keterbatasan akan ingatan manusia membutuhkan suatu tampilan yang sederhana atau banyak tampilan halaman yang sebaiknya disatukan, serta diberikan cukup waktu pelatihan untuk mempelajari kode ataupun urutan tindakan. 2.26 Hasil Penelitian dan Produk Sebelumnya Untuk mendukung penulisan skripsi telah didapat jurnal yang relevan dengan permasalahan yang sedang dibahas dalam skripsi ini. Berikut hasil ringkasan dari jurnal yang telah dikaji:
45 2.26.1Analisis dan Perancangan Sistem Basis Data Pembelian, Penjualan, dan Persediaan pada PT. Interjaya Surya Megah Dalam jurnal ini, basis data yang dibuat dimaksudkan untuk mendukung pemindahan barang dari kantorpusat, pemasukan barang dari supplier, pengeluaran barang, laporan pembelian danpenjualan, serta penyesuaian barang. Ruang lingkup penelitian dalam jurnal ini adalah: 1. Penerimaan barang, yaitu penerimaan barang dari kantor pusat, dan pembelian barang dari supplier serta adanya kontrol order pembelian barang. 2. Pengeluaran barang, yaitu penjualan barang namun tidak melakukan kontrol order permintaan barang dari customer. 3. Stock opname, yaitu perhitungan stok barang secara manual pada PT. Interjaya Surya Megah. Masalah yang dihadapi pada jurnal ini adalah sebagai berikut: 1. Data yang belum terintegrasi antarabagian gudang dan bagian penjualan, sehingga bagian penjualan harus selalu menghubungi bagian gudang terlebih dahulu untuk mendapatkan informasi mengenai sisa barang yang ada di gudang. 2. Adanya redundansi data karena setiap divisi mempunyai pencatatan sendiri
sehingga
ketikadilakukannya
rekapitulasi
akan
terjadi
redundansi data. 3. Jumlah jenis barang yang banyak danlaporan – laporan yang kompleks dari berbagai divisi sehingga menyulitkan karyawan dan memakan banyak waktu dalam proses crosschecking jumlah barang. Adanya lostinformation dalam proses crosscheckingstok barang. 4. Keamanan data masih riskan mengingat data masih disimpandalam berupa kertas, sehingga pihak yang tidak berkepentingan dapat mengaksesnya. Berdasarkan analisis permasalahan yang telah dilakukan terhadap sistem yang berjalan padaperusahaan PT. Interjaya Surya Megah, alternatif pemecahan masalah yang diusulkan dalam jurnal ini, yaitu:
46 1. Membuat suatu sistem basisdata menggantikan sistem lama yang masih manual dan menyediakan laporan yang diperlukan olehmanajer. 2. Basis data yang dibuat dimaksudkan untuk mendukung pemindahan barang dari kantorpusat, pemasukan barang dari supplier, pengeluaran barang, retur barang, laporan pembelian danpenjualan, serta penyesuaian barang. Kesimpulan yang didapat pada jurnal ini adalah dengan adanya sistem basis data, persediaan barang yang terdapat padagudang dapat diketahuisecara tepat, cepat, dan akurat. Keamanan data di dalam perusahaan juga lebih terjaga dengan adanya pembagian hak akses.