bab 2 landasan teori

advertisement
6
BAB 2
LANDASAN TEORI
2.1 Sistem Basis Data
2.1.1
Pengertian umum
1. Data
Data adalah fakta mentah mengenai orang, tempat, kejadian, dan hal – hal
yang penting dalam organisasi (Whitten, 2004, p23).
2. Field
Field adalah unit terkecil dari data yang berarti untuk disimpan pada
sebuah file atau database (Whitten, 2004, p520).
3. Record
Record adalah kumpulan field yang disusun dalam format yang telah
ditetapkan sebelumnya (Whitten, 2004, p521).
4. File
File adalah kumpulan record yang serupa (Whitten, 2004, p518).
5. Basis Data (Database)
Basis data adalah sekumpulan data yang terhubung secara logikal yang
dipakai bersama dan penjelasan dari data yang disebutkan, dirancang
untuk memperoleh informasi – informasi yang dibutuhkan oleh sebuah
organisasi (Connolly dan Begg, 2005, p15).
Database adalah kumpulan file yang saling terkait (Whitten, 2004, p518).
7
6. Database Management System (DBMS)
DBMS
merupakan
software
yang
memungkinkan
user
untuk
mendefinisikan, membuat, memelihara, dan mengatur kendali terhadap
basis data (Connolly dan Begg, 2005, p16).
DBMS adalah software khusus yang digunakan untuk membuat,
mengontrol, dan mengelola sebuah database (Whitten, 2004, p524).
7. Sistem Basis Data (Database System)
Sistem basis data merupakan kumpulan dari program aplikasi yang
berinteraksi dengan basis data bersamaan dengan DBMS atau basis data
itu sendiri (Connolly dan Begg, 2005, p4).
2.1.2
Perancangan Basis Data (Database Design)
Perancangan basis data merupakan proses menciptakan rancangan
yang akan mendukung misi dan tujuan perusahaan untuk kebutuhan sistem
basis data (Connolly dan Begg, 2005, p291). Pendekatan dalam perancangan
basis data, antara lain :
1) Buttom–Up
Pendekatan ini dimulai dari atribut dasar, dengan menganalisis hubungan
antara atribut, yang dikelompokkan ke dalam suatu relasi yang
merepresentasikan tipe entity dan relationship antara entity – entity
(Connolly dan Begg, 2005, p291).
2) Top–Down
Pendekatan ini dimulai dari pengembangan model data yang berisi
beberapa
entity
dan
relationship
tingkat
tinggi
dan
kemudian
8
menggunakan
pendekatan
top–down
secara
berurut
untuk
mengidentifikasikan entity tingkat rendah, relationship, dan atribut –
atribut yang berhubungan (Connolly dan Begg, 2005, p292).
3) Inside–Out
Pendekatan
ini
berhubungan
dengan
pendekatan
buttom–up,
perbedaannya adalah pendekatan ini mengidentifikasikan sekumpulan
entity utama dan kemudian menyebar ke entity – entity yang lain,
relationship – relationship, dan atribut – atribut yang berkaitan dengan
hal – hal yang sudah diidentifikasikan sebelumnya (Connolly dan Begg,
2005, p292).
4) Mixed Strategy
Pendekatan ini menggunakan pendekatan buttom–up dan top–down untuk
bagian model yang berbeda sebelum akhirnya menggabungkan semua
bagian (Connolly dan Begg, 2005, p292).
Dalam perancangan basis data terdapat tiga fase utama yaitu :
perancangan basis data konseptual (Conceptual Database Design),
perancangan basis data logikal (Logical Database Design), dan perancangan
basis data fisikal (Physical Database Design).
2.1.2.1 Perancangan Basis Data Konseptual (Conceptual Database
Design)
Perancangan basis data konseptual adalah proses membangun sebuah model
dari data yang digunakan di perusahaan, terlepas dari semua pertimbangan –
pertimbangan fisik (Connolly dan Begg, 2005, p439).
9
Langkah – langkah dalam perancangan basis data konseptual adalah sebagai
berikut :
Langkah 1 Membangun Conceptual Data Model
a) Langkah 1.1 Mengidentifikasi entity type
b) Langkah 1.2 Mengidentifikasi relationship type
c) Langkah 1.3 Mengidentifikasi dan menghubungkan atribut – atribut
dengan entity atau relationship type
d) Langkah 1.4 Menentukan atribut domain
e) Langkah 1.5 Menentukan atribut – atribut candidate,
primary, dan
alternate key
f) Langkah 1.6 Mempertimbangkan penggunaan enhanced modeling
concept (pilihan)
g) Langkah 1.7 Memeriksa model dari redundancy
h) Langkah 1.8 Memvalidasi conceptual data model terhadap transaksi user
i) Langkah 1.9 Meninjau kembali conceptual data model terhadap user
2.1.2.2 Perancangan Basis Data Logikal (Logical Database Design)
Perancangan basis data logikal adalah proses membangun sebuah model dari
data yang digunakan di perusahaan berdasarkan pada sebuah model data
yang spesifik, tetapi terlepas dari DBMS tertentu dan pertimbangan –
pertimbangan fisik lainnya (Connolly dan Begg, 2005, p439).
Langkah – langkah dalam perancangan basis data logikal adalah sebagai
berikut :
10
Langkah 2 Membangun dan Memvalidasi Logical Data Model
a) Langkah 2.1 Menentukan relasi untuk logical data model
b) Langkah 2.2 Memvalidasi relasi dengan menggunakan normalisasi
c) Langkah 2.3 Memvalidasi relasi terhadap transaksi user
d) Langkah 2.4 Memeriksa integrity constraint
e) Langkah 2.5 Meninjau kembali logical data model terhadap user
f) Langkah 2.6 Menggabungkan beberapa logical data model menjadi
model global (pilihan)
g) Langkah 2.7 Memeriksa kemungkinan perkembangan di masa yang
akan datang
2.1.2.3 Perancangan Basis Data fisikal (Physical Database Design)
Perancangan basis data fisikal adalah proses untuk menghasilkan penjelasan
dari pengimplementasian suatu basis data pada secondary storage, juga
menjelaskan base relation, pengaturan file, dan indeks yang digunakan untuk
mencapai akses data yang efisien, integrity constraint, serta ukuran
keamanan (Connolly dan Begg, 2005, p439).
Langkah – langkah dalam perancangan basis data fisikal adalah sebagai
berikut
Langkah 3 Menerjemahkan logical data model menjadi target DBMS
a) Langkah 3.1 Merancang base relation
b) Langkah 3.2 Merancang representasi dari derived data
c) Langkah 3.3 Merancang batasan perusahaan
11
Langkah 4 Merancang pengaturan file dan indeks
a) Langkah 4.1 Menganalisis transaksi
b) Langkah 4.2 Memilih organisasi file
c) Langkah 4.3 Pemilihan indeks
d) Langkah 4.4 Memperkirakan kebutuhan ruang penyimpanan
Langkah 5 Perancangan user view
Langkah 6 Perancangan mekanisme keamanan
Langkah 7 Mempertimbangkan pengenalan pengontrolan redundancy
Langkah 8 Memantau dan merubah sistem operasional
2.1.3
Normalisasi
Normalisasi adalah suatu teknik untuk menghasilkan himpunan relasi
dengan properti yang diinginkan berdasarkan kebutuhan – kebutuhan data
suatu perusahaan (Connolly dan Begg, 2005, p388).
Unnormalized form (UNF) adalah suatu tabel yang terdiri dari satu
atau lebih kelompok yang berulang (repeating group) (Connolly dan Begg,
2005, p403). Repeating group adalah sebuah atribut atau himpunan atribut di
dalam tabel yang memiliki lebih dari satu nilai (multiple value) untuk sebuah
primary key pada tabel tersebut (Connolly dan Begg, 2005, p403).
Tingkatan normalisasi terdiri dari tiga tahap yaitu :
1. First Normal Form (1NF)
Suatu relasi dikatakan 1NF jika titik temu tiap baris dan kolom
pada relasi tersebut mengandung satu dan hanya satu nilai (Connolly dan
Begg, 2005, p403).
12
Sebuah relasi akan berada dalam bentuk 1NF jika repeating
groupnya sudah hilang. Ada dua pendekatan untuk menghilangkan
repeating group pada tabel yang tidak normal (unnormalized table),
yaitu:
a. Dengan memasukkan data yang sesuai ke dalam kolom yang kosong
dari baris yang mengandung data yang berulang.
b. Dengan menempatkan data yang berulang bersama salinan dari
atribut kunci pada relasi yang terpisah.
2. Second Normal Form (2NF)
Relasi dikatakan 2NF jika relasi tersebut berada pada 1NF dan
setiap atribut yang bukan primary key bergantung sepenuhnya (fully
functionally dependent) terhadap primary key (Connolly dan Begg, 2005,
p407).
Full functional dependency terjadi jika A dan B merupakan atribut
dari suatu relasi, dan B dikatakan bergantung penuh terhadap A (A→B),
jika B bergantung terhadap A, namun bukan subset dari A (Connolly dan
Begg, 2005, p395).
3. Third Normal Form (3NF)
Suatu relasi dikatakan 3NF jika relasi tersebut berada dalam
bentuk 1NF dan 2NF, dan tidak ada atribut yang bukan primary key
bergantung secara transitif (transitively dependent) terhadap primary key
(Connolly dan Begg, 2005, p409).
Transitive dependency ialah sebuah kondisi dimana A, B, dan C
merupakan atribut dari relasi yang jika A→B dan B→C maka C disebut
13
bergantung secara transitif (transitively dependent) terhadap A melalui B
(A tidak functionally dependent terhadap B atau C) (Connolly dan Begg,
2005, p397).
2.1.4
Entity–Relationship Model
Untuk memastikan pemahaman yang tepat terhadap data dan
bagaimana penggunaannya di dalam suatu perusahaan, diperlukan sebuah
model. Model Entity–Relationship (ER) adalah salah satunya (Connolly dan
Begg, 2005, p342). Model ini menggunakan pendekatan top–down dalam
perancangan basis data yang dimulai dengan mengidentifikasikan data yang
penting yang disebut entity dan relationship dan data harus direpresentasikan
di dalam model, kemudian ditambahkan beberapa atribut, dan constraint
pada entity, atribut dan relationship.
2.1.4.1 Entity Type
Entity type adalah sekumpulan objek dengan sifat (property) yang sama yang
diidentifikasikan oleh perusahaan dan keberadaannya independent (Connolly
dan Begg, 2005, p343). Entity occurrence adalah objek dari entity type yang
diidentifikasikan secara unik (Connolly dan Begg, 2005, p345).
Entity type dapat diklasifikasikan menjadi :
1) Strong entity type, yaitu entity type yang keberadaannya tidak bergantung
pada entity type lainnya (Connolly dan Begg, 2005, p354).
2) Weak entity type, yaitu entity type yang keberadaannya bergantung pada
entity type lainnya (Connolly dan Begg, 2005, p355).
14
2.1.4.2 Relationship Type
Relationship type adalah sekumpulan asosiasi antara tipe – tipe entity yang
ada dan mempunyai arti (Connolly dan Begg, 2005, p346). Relationship
occurrence adalah suatu penyatuan yang dapat diidentifikasi secara unik,
termasuk satu kejadian (occurrence) dari tiap entity type yang berpartisipasi
(Connolly dan Begg, 2005, p346).
Derajat (degree) dari relationship type adalah jumlah entity type yang
berpartisipasi dalam sebuah relationship (Connolly dan Begg, 2005, p347).
Sebuah relationship yang memiliki dua derajat dinamakan binary.
Sedangkan sebuah relationship yang tiga memiliki derajat dinamakan
ternary, dan jika sebuah relationship memiliki derajat empat dinamakan
quarternary.
Complex relationship adalah sebuah relationship yang memiliki derajat
diatas binary.(Connolly dan Begg, 2005, p361).
Recursive relationship adalah sebuah relationship type dimana entity type
yang sama berpartisipasi lebih dari sekali pada peran yang berbeda (Connolly
dan Begg, 2005, p349). Relationship dapat diberikan nama peran untuk
menentukan fungsi dari setiap entity yang terlibat dalam relationship
tersebut. Nama peran juga dapat digunakan jika dua buah entity dihubungkan
melalui lebih dari satu relationship.
2.1.4.3 Atribut – Atribut
Atribut merupakan sifat – sifat (property) dari sebuah entity atau relationship
type (Connolly dan Begg, 2005, p350). Atribut domain adalah kumpulan
15
nilai yang diperbolehkan untuk satu atau lebih atribut. Atribut dapat dibagi
menjadi tiga, yaitu (Connolly dan Begg, 2005, p351) :
1) Simple / composite attribute
Simple attribute adalah atribut yang terdiri dari satu komponen tunggal
yang keberadaannya independen.
Composite attribute adalah atribut yang terdiri dari beberapa komponen
yang keberadaannya independen.
2) Single / multi–valued attribute
Single–valued attribute adalah atribut yang mempunyai nilai tunggal
untuk setiap kejadian atau sebuah entity type.
Multi–valued attribute adalah atribut yang mempunyai beberapa nilai
untuk setiap kejadian atau sebuah entity type.
3) Derived attribute
Derived attribute adalah atribut yang memiliki nilai yang dihasilkan dari
satu atau beberapa atribut lainnya, dan tidak harus berasal dari entity yang
sama.
Key
1) Candidate key, merupakan sejumlah kecil atribut dari entity yang
mengidentifikasikan setiap kejadian dari entity tersebut secara unik
(Connolly dan Begg, 2005, p352).
2) Primary
key,
merupakan
candidate
key
yang
dipilih
untuk
mengidentifikasikan setiap kejadian dari entity secara unik (Connolly dan
Begg, 2005, p353).
16
3) Alternate key, adalah setiap candidate key yang tidak terpilih menjadi
primary key (Connolly dan Begg, 2005, p353).
4) Composite key, merupakan candidate key yang terdiri dari dua atau lebih
atribut (Connolly dan Begg, 2005, p353).
5) Foreign key, adalah sebuah atribut atau sekumpulan atribut pada suatu
relasi yang sama dengan candidate key dari beberapa relasi lainnya
(Connolly dan Begg, 2005, p79).
2.1.4.4 Structural Constraint
Multiplicity adalah jumlah occurrence (kejadian) yang mungkin terjadi pada
sebuah entity type yang berhubungan ke sebuah occurrence dari entity type
lain pada suatu relationship (Connolly dan Begg, 2005, p356). Derajat yang
biasanya digunakan pada suatu relationship adalah binary relationship, yang
terdiri
atas
One–to–One
(1:1)
Relationship,
One–to–Many
(1:*)
Relationship, dan Many–to–Many (*:*) Relationship.
Multiplicity sebenarnya terdiri atas dua constraint yang berbeda, yaitu:
1) Cardinality,
menggambarkan
nilai
maksimum
dari
relationship
occurrence yang mungkin terjadi untuk sebuah entity yang ikut serta pada
suatu relationship (Connolly dan Begg, 2005, 363).
2) Participation, menentukan apakah semua atau hanya beberapa entity
occurrence yang ikut serta dalam sebuah relationship (Connolly dan
Begg, 2005, 363). Participation constraint dibagi menjadi :
a. Mandatory participation melibatkan semua entity occurrence pada
relationship tertentu (Connolly dan Begg, 2005, p363).
17
b. Optional participation melibatkan beberapa entity occurrence pada
relationship tertentu (Connolly dan Begg, 2005, p363).
2.1.5
Database System Development Lifecycle (DSDLC)
Untuk merancang aplikasi sistem basis data, terdapat tahapan –
tahapan terstruktur yang harus diikuti yang dinamakan dengan Database
System Development Lifecycle atau disingkat dengan DSDLC. Perlu diingat
bahwa tahapan dalam DSDLC tidak harus berurutan, namun juga dapat
melibatkan beberapa pengulangan ke tahapan sebelumnya melalui putaran
balik (feedback loops). Untuk sistem basis data yang kecil, dengan user yang
sedikit, lifecycle tidak perlu kompleks. Ketika mendesain sebuah sistem basis
data yang sedang atau besar dengan sepuluh sampai ribuan user
menggunakan ratusan query dan program aplikasi, lifecycle dapat menjadi
sangat kompleks. Tahapan – tahapan tersebut terlihat pada gambar 2.1
2.1.5.1 Database planning
Tujuan dari database planning adalah merencanakan agar tahap – tahap dari
aplikasi basis data dapat direalisasikan dengan seefektif dan seefisien
mungkin (Connolly dan Begg, 2005, p285).
2.1.5.2 System definition
System definition menggambarkan ruang lingkup dan batasan dari sistem
basis data termasuk pandangan pengguna (user view) yang utama (Connolly
dan Begg, 2005, p286).
18
Pandangan pengguna (user view) mendefinisikan apa yang dibutuhkan oleh
sistem basis data dari sudut pandang jabatan tertentu (seperti manajer atau
pengawas) maupun dari sudut pandang area aplikasi perusahaan (seperti
pemasaran, personalia, atau pengawasan persediaan) (Connolly dan Begg,
2005 p287).
Database planning
System definition
Requirement collection
and analysis
Database design
Conceptual database
design
DBMS selection
(optional)
Application
design
Logical database
design
Physical database
design
Prototyping (optional)
Implementation
Data conversion
and loading
Testing
Operational
Maintainance
Gambar 2.1 Database System Development Lifecycle
(Connolly dan Begg, 2005, p284)
19
2.1.5.3 Requirement collection and analysis
Requirement collection and analysis adalah proses pengumpulan dan analisis
informasi tentang bagian perusahaan yang akan didukung oleh sistem basis
data dan menggunakan informasi ini untuk mengidentifikasikan kebutuhan –
kebutuhan untuk sistem yang baru (Connoly, 2005, p288).
Ada beberapa teknik untuk mengumpulkan informasi ini, salah satunya
adalah teknik fact – finding. Teknik fact – finding adalah suatu proses resmi
dalam menggunakan teknik – teknik seperti wawancara atau kuesioner untuk
mengumpulkan fakta – fakta tentang sistem dan kebutuhan – kebutuhannya
(Connolly dan Begg, 2005, p314).
2.1.5.4 Database design (perancangan basis data)
Perancangan basis data adalah suatu proses menciptakan perancangan untuk
basis data yang akan mendukung keseluruhan operasi dan tujuan – tujuan
perusahaan (Connoly dan Begg, 2005, p291). Dalam database design
terdapat tiga fase utama, yaitu perancangan konseptual (conceptual database
design), perancangan logikal (logical database design), dan perancangan
fisikal (physical database design).
2.1.5.5 DBMS selection (optional)
Tujuan dari DBMS selection adalah untuk memilih DBMS yang tepat untuk
mendukung sistem basis data (Connolly dan Begg, 2005, p296). Tahapan
utama dalam memilih DBMS antara lain :
20
a) Mendefinisikan syarat – syarat sebagai referensi
Dibuat dengan menyatakan tujuan dan ruang lingkup pembelajaran dan
tugas – tugas yang akan dikerjakan.
b) Daftar singkat dua atau tiga produk
Kriteria yang dianggap penting dalam keberhasilan implementasi dapat
digunakan untuk membuat daftar produk – produk DBMS dalam
evaluasi, seperti dana yang tersedia, tingkat dukungan vendor, kecocokan
dengan perangkat lunak lainnya, dan apakah produk hanya berjalan pada
perangkat keras tertentu.
c) Evaluasi produk
Fitur – fitur yang digunakan dalam evaluasi produk – produk DBMS
dikelompokkan menjadi definisi data, definisi fisik, kemampuan akses,
penanganan keperluan – keperluan, pengembangan, dan fitur – fitur
lainnya.
d) Merekomendasikan pilihan dan memproduksi laporan
Langkah terakhir dari pemilihan DBMS adalah mendokumentasikan
prosesnya dan membuat pernyataan dalam penemuan dan rekomendasi
atas produk DBMS tertentu.
2.1.5.6 Application design
Bertujuan merancang antarmuka pemakai (user interface) dan program
aplikasi yang digunakan dan memproses basis data (Connolly dan Begg,
2005, p299). Dua aspek merancang aplikasi yaitu :
21
a) Perancangan transaksi (transaction design)
Transaksi adalah aksi atau rangkaian aksi yang dilakukan oleh seorang
pengguna atau program aplikasi yang mengakses atau mengubah isi dari
basis data (Connolly dan Begg, 2005, p300). Ada 3 jenis transaksi yaitu :
1. Retrieval transaction : digunakan untuk mendapatkan data untuk
ditampilkan pada layar atau pada pembuatan laporan.
2. Update transaction : digunakan untuk memasukkan data baru,
menghapus data lama atau memodifikasi data yang ada dalam basis
data.
3. Mixed transaction : mencakup pengambilan dan pengubahan data.
b) Perancangan antarmuka pengguna (user interface design)
Elemen – elemen dalam merancang suatu antarmuka pengguna (user
interface) (Connolly dan Begg, 2005, p301) antara lain :
1. Penetapan judul yang bermakna
2. Instruksi – instruksi yang dapat dipahami
3. Pengelompokkan logika dan pengurutan kolom
4. Bentuk form yang menarik secara visual
5. Judul kolom yang dikenal
6. Penggunaan istilah dan singkatan yang konsisten
7. Penggunaan warna yang konsisten
8. Ruang dan batasan yang terlihat untuk menginput kolom
9. Pergerakan kursor yang mudah
10. Perbaikan kesalahan untuk satu huruf dan semua kolom
11. Menampilkan pesan kesalahan terhadap nilai yang tidak sesuai
22
12. Pemberian tanda terhadap kolom yang berupa pilihan (optional field)
13. Pesan – pesan yang bersifat penjelasan untuk suatu kolom
14. Pemberian tanda penyelesaian
2.1.5.7 Prototyping (optional)
Prototyping adalah proses membangun sebuah model kerja dari aplikasi basis
data (Connolly dan Begg, 2005, p304). Tujuan utama prototyping adalah
untuk
memungkinkan
pengguna
menggunakan
prototype
untuk
mengidentifikasi fitur – fitur yang bekerja dengan baik pada sistem, atau
kekurangannya, dan memberikan saran bagi peningkatan kerja sistem atau
bahkan memberikan masukan terhadap pengembangan bahkan fitur – fitur
baru ke dalam sistem basis data.
2.1.5.8 Implementation
Implementation adalah realisasi fisikal dari desain basis data dan desain
aplikasi (Connolly dan Begg, 2005, p304). Dalam tahap ini juga akan
diimplementasikan komponen lain dari aplikasi basis data seperti menu layar,
pemasukan data, keamanan dan kontrol integritas.
2.1.5.9 Data conversion and loading
Data conversion and loading adalah suatu proses mentransfer data yang ada
ke dalam basis data baru dan mengubah aplikasi yang ada untuk dijalankan
dalam basis data baru (Connolly dan Begg, 2005, p305). Tahap ini hanya
dibutuhkan ketika sistem basis data baru menggantikan sistem yang lama.
23
2.1.5.10 Testing
Testing adalah suatu proses mengeksekusi sistem basis data dengan tujuan
untuk menemukan kesalahan (Connolly dan Begg, 2005, p305).
2.1.5.11 Operational maintainance
Operational maintenance adalah suatu proses memonitor dan memelihara
sistem dan diikuti dengan instalasi (Connolly dan Begg, 2005, p306).
2.2 Data Flow Diagram (DFD)
Data flow diagram adalah model proses yang digunakan untuk
menggambarkan aliran data melalui sebuah sistem dan tugas atau pengolahan yang
dilakukan oleh sistem (Whitten, 2004, p326). Sedangkan menurut Yourdon (1989,
p137) DFD adalah suatu gambaran grafis dari suatu sistem yang menggunakan
sejumlah bentuk simbol untuk menggambarkan bagaimana data mengalir melalui
suatu proses yang saling berkaitan.
Simbol – simbol yang digunakan dalam DFD, antara lain :
1. External Entity
Entity yang berada di luar sistem, yang memberikan data kepada sistem (source)
atau yang menerima informasi dari sistem (sink). Entity eksternal tidak termasuk
dalam sistem.
Gambar :
Bentuk Gane dan Sarson
Bentuk DeMarco/Yourdon
24
2. Proses
Proses adalah sesuatu yang mengubah input menjadi output. Proses sering juga
disebut bubble. Proses dapat digambarkan dengan lingkaran, segi empat, dan segi
empat membulat.
Gambar :
Bentuk Gane dan Sarson
Bentuk DeMarco/Yourdon
3. Aliran data (data flow)
Menggambarkan aliran data dari suatu entity ke entity lainnya. Simbol yang
digunakan berupa anak panah. Tanda panah tersebut menggambarkan aliran data
yang terjadi bisa antara dua proses yang berurutan, dari data store ke proses atau
sebaliknya dari proses ke sink.
Gambar :
4. Penyimpanan data (data store)
Data Store berfungsi untuk sebagai tempat penyimpanan data. Proses dapat
mengambil data atau memberikan data ke data store.
Gambar :
Bentuk Gane dan Sarson
Bentuk DeMarco/Yourdon
2.3 State Transition Diagram (STD) / Statechart Diagram
State Transition Diagram (STD) adalah alat yang digunakan untuk
menggambarkan urutan dan variasi layar yang dapat terjadi selama satu sesi
pengguna (Whitten, 2004, p636). Sedangkan menurut Gomaa (2000, p181), STD
merupakan
representasi
grafis
suatu
state
yang
terbatas
dimana
node
merepresentasikan state dan panah merepresentasikan state transition. Perubahan
25
state
(state
transition)
terjadi
dikarenakan
adanya
event
input.
State
merepresentasikan keadaan yang dapat dikenal pada interval waktu tertentu.
Panduan dalam membuat statechart adalah sebagai berikut :
1. Nama state harus merefleksikan situasi yang dapat diidentifikasikan atau interval
waktu ketika ‘sesuatu’ terjadi di dalam sistem.
2. Pada setiap statechart yang ada, setiap state harus mempunyai nama yang unik.
3. Harus memungkinkan untuk keluar (exit) dari semua state.
4. Pada flat statechart, pada waktu yang sama statechart hanya berada pada satu
state.
5. Pada hierarchical statechart, berlaku beberapa panduan, yaitu :
a. Pada hierarchical sequential statechart, ketika statechart merupakan
superstate, maka statechart tersebut hanya mempunyai satu substate.
b. Jika digunakan hierarchical concurrent statechart, ketika statechart
merupakan superstate, maka statechart tersebut berada pada satu substate
pada setiap level dari concurrent statechart.
6. Jangan bingung antara event dan action. Event disebabkan oleh perubahan state
dan action adalah akibat dari perubahan state.
7. Sebuah event terjadi pada suatu waktu.
8. Sebuah action adalah perintah.
9. sebuah action dieksekusi langsung. Sedangkan sebuah activity dieksekusi
melalui sebuah state.
10. Satu atau lebih action dapat berhubungan dengan sebuah state transition.
11. Suatu kondisi memiliki nilai boolean (true / false).
12. Action, activity dan kondisi merupakan optional.
26
2.4 Flowchart
Flowchart merupakan diagram yang merepresentasikan aliran dari informasi
dan urutan operasi di dalam sebuah sistem atau proses (Romney dan Steinbart, 2003,
p701). Simbol – simbol flowchart dapat dibagi menjadi empat kategori, yaitu :
a. Simbol input / output
Merepresentasikan media atau alat yang menyediakan input ke atau output dari
operasi proses.
b. Simbol proses
Memperlihatkan tipe alat yang digunakan untuk memproses data atau
mengindikasikan kapan sebuah proses dilakukan secara manual.
c. Simbol penyimpanan (storage)
Merepresentasikan alat yang digunakan untuk menyimpan data.
d. Simbol aliran dan lain – lain
Mengindikasikan aliran data dan barang. Simbol – simbol ini juga
merepresentasikan operasi mulai, selesai, kapan keputusan diambil, dan
penjelasan tambahan dari flowchart.
Berikut ini adalah simbol – simbol yang digunakan dalam flowchart pada penulisan
skripsi ini :
Tabel 2.1 Simbol – simbol flowchart
Simbol
Nama
Dokumen
Keterangan
Sebuah dokumen atau laporan, dokumen
tersebut dapat disiapkan dengan tangan atau
dicetak oleh komputer
Display
Informasi ditampilkan dengan menggunakan
alat online output seperti terminal, monitor,
atau layar
27
Online keying
Data masukkan dengan alat online seperti
terminal atau komputer personal
Proses
komputer
Proses yang dilakukan oleh komputer,
biasanya berupa perubahan data atau
informasi
Operasi manual
Proses operasi yang dilakukan secara manual
Magnetic disk
Data disimpan secara permanen pada
magnetic disk, digunakan untuk file master
dan database
On-line storage
Data disimpan sementara di dalam file on-line
Aliran
dokumen
proses
Terminal
Arah proses dari aliran dokumen, aliran
atau normal adalah menurun dan ke kanan
Decision
Langkah pengambilan keputusan, digunakan
dalam flowchart dari program komputeruntuk
menunjukkan percabangan ke jalur alternatif
Catatan
tambahan
Komentar tambahan atau penjelasan sebagai
klarifikasi
Sebuah awal, akhir atau titik interupsi di
dalam proses atau program
2.5 Perancangan User Interface / Layar
Interaksi manusia dengan komputer adalah ilmu yang berhubungan dengan
perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk
digunakan oleh manusia, serta studi fenomena besar yang berhubungan dengannya
(Shneiderman, 1998, p8). Menurut Shneiderman (1998, p74 – 75) dalam merancang
antarmuka pemakai (user interface), perlu menggunakan delapan aturan emas yang
terdiri dari :
28
1. Berusaha konsisten
2. Memungkinkan frequent user menggunakan shortcut
3. Memberikan umpan balik yang informatif
4. Merancang dialog untuk menghasilkan keadaan akhir
5. Memberikan pencegahan kesalahan dan penanganan kesalahan yang sederhana
6. Memungkinkan pembalikan aksi (undo) yang mudah
7. Mendukung internal locus of control
8. Mengurangi beban ingatan jangka pendek
2.6 Teori Web
2.6.1
Web
Web adalah aplikasi yang menyangkut banyak komputer. Web
menyediakan fasilitas seperti menyimpan, menemukan dan mengambil
informasi, menyimpan dan mengeksekusi program komputer, meng-input
dan memanipulasi informasi (Eaglestone dan Ridley, 2001, p190). Web
menyediakan fasilitas tersebut dengan menggunakan jaringan komputer
dunia luas yang disebut internet. Web dapat digunakan oleh setiap orang
dengan mengakses internet.
2.6.2
Web Server
Menurut Eaglestone dan Ridley (2001, p198), web–server digunakan
untuk menyimpan informasi dan layanan yang dapat diakses oleh web–client.
Berdasarkan Wikipedia (2007), web server mempunyai dua arti yaitu :
29
1.
Program komputer yang bertanggung jawab untuk menerima HTTP
request dari client yang dikenal sebagai web browser dan memberikan
respon dari HTTP client bersama dengan data – data optional yang
biasanya berupa halaman – halaman web seperti dokumen – dokumen
HTML dan objek – objek yang terhubung seperti gambar, dll.
2.
Sebuah komputer yang menjalankan program komputer yang
menghasilkan fungsi – fungsi yang telah dideskripsikan pada point
pertama.
Menurut Eaglestone dan Ridley (2001, p201), tempat bagi web server
untuk menyimpan informasi disebut dengan web site. Web site adalah
penyimpanan file secara konvensional yang mana file tersebut berisi
dokumen – dokumen web dan sumber – sumber lainnya. Dokumen tersebut
dapat berbentuk form atau file html, tetapi dapat juga berbentuk plain text
file, pdf file atau format lainnya dimana dokumen tersebut dapat disimpan.
Sumber – sumber dapat berupa executeable code yang sering disebut juga
script untuk mengakses program.
2.6.3
Intranet
Berdasarkan Wikipedia (2007), Intranet adalah jaringan komputer
pribadi yang menggunakan protokol internet, konektivitas jaringan untuk
mengamankan pembagian informasi atau operasi pada sebuah perusahaan
dengan karyawannya. Kadang – kadang konektivitas jaringan merujuk pada
bentuk layanan yang paling nyata, website internal. Beberapa konsep dan
teknologi yang sama dari internet seperti client dan server dijalankan pada
30
Internet protocol suite digunakan untuk membangun sebuah intranet. Ada
kecenderungan untuk menggunakan teknologi internet dalam menyediakan
antar muka yang baru dengan “warisan” data perusahaan dan sistem
informasi.
Kegunaan Intranet
Di Intranet digunakan web, e-mail, dll. E-mail mempunyai potensi
untuk membuat semua proses dalam badan usaha menjadi sangat transparan.
Web dengan perangkat basis data di belakangnya, biasanya merupakan alat
bantu paling potensial untuk melakukan 2 hal utama yaitu:
1. Membuat perusahaan / institusi menjadi semakin efisien.
Pendekatan yang dilakukan di sini biasanya membuat sistem informasi
manajemen yang berbasis web dan database.
2. Membuat perusahaan / institusi menjadi semakin kompetitif di dunianya.
Membuat sebuah badan menjadi kompetitif hanya mungkin dilakukan
jika kita dapat mengolah secara baik sumber daya manusia dan sumber
daya pengetahuan yang ada di internal badan / perusahaan tersebut.
Dalam hal ini yang dimaksud adalah konsep knowledge management
yaitu bagaimana kita melakukan percepatan proses daur ulang, analisis,
sintesa dari pengetahuan baik itu yang bersifat implisit maupun eksplisit.
Keuntungan Intranet
1. Produktivitas kerja maksimal : intranet dapat membantu user untuk
meletakkan dan menampilkan informasi lebih cepat dan menggunakan
aplikasi yang relevan dengan aturan – aturan dan tanggung jawab mereka.
31
2. Waktu : dengan intranet, perusahaan dapat membuat lebih banyak
informasi tersedia bagi karyawan, misalnya karyawan dapat terhubung
langsung
dengan
informasi
yang
dibutuhkan
ketika
mereka
memerlukannya.
3. Komunikasi : intranet dapat menyajikan peralatan yang mendukung
komunikasi dalam sebuah perusahaan, baik secara vertikal dan horisontal.
4. Operasi bisnis dan managemen : intranet juga digunakan sebagai sebuah
landasan program untuk mengembangkan dan menyebarkan aplikasi
untuk mendukung operasi bisnis dan keputusan bisnis melalui jaringan
dalam perusahaan.
5. Efektivitas biaya : pengguna dapat melihat informasi dan data melalui
web browser daripada memelihara dokumen fisik seperti manual
prosedur, daftar telepon internal dan form daftar permintaan.
6. Meningkatkan kolaborasi : dengan kemudahan akses informasi oleh
seluruh pengguna yang berhak.
7. Kemampuan cross – platform : dapat digunakan di platform mana saja
seperti Windows, Mac, dll.
Kerugian Intranet
1. Informasi yang tidak cocok atau salah dapat dikirim oleh intranet yang
dapat mengurangi kredibilitas dan keefektifan.
2. Intranet dengan tingkat interaktifitas yang tinggi terdapat kebebasan
untuk mengirim material ilegal dan berbahaya.
3. Butuh keahlian dalam mengelola dan mengembangkan informasi intranet
dalam sebuah perusahaan.
32
4. Keamanan intranet berkembang menjadi sebuah isu. Pengguna lain dapat
mengirimkan informasi yang sensitif yang mungkin muncul pada user
lainnya.
5. Karena informasi dapat dikirim oleh user manapun, kelebihan informasi
dapat muncul selama informasi tersebut tidak dikontrol dengan baik.
2.6.4
URL
Uniform Resource Locator (URL) adalah rangkaian karakter menurut
suatu format standar tertentu, yang digunakan untuk menunjukkan alamat
suatu sumber – seperti dokumen dan gambar di Internet. URL pertama kali
diciptakan oleh Tim Berners – Lee pada tahun 1991 agar penulis – penulis
dokumen dapat mereferensikannya ke World Wide Web. Sejak 1994, konsep
URL telah dikembangkan menjadi istilah Uniform Resource Identifier (URI)
yang lebih umum sifatnya. Walaupun demikian, istilah URL masih tetap
digunakan secara luas (Wikipedia, 2007).
Menurut Eaglestone dan Ridley (2001, p201), bentuk dasar dari sebuah http
URL adalah http://server/path. Path dari URL sebagai berikut :
1. Bagian pertama, “http”, menspesifikasikan protokol di mana sumber Web
dialamatkan oleh URL diakses.
2. Bagian kedua, “server”, adalah nama Web server dimana sumber
ditempatkan. Nama server mempunyai struktur yang hierarki.
Contohnya, www.dcs.shef.ac.uk.
“www” adalah nama server sedangkan “dcs.shef.ac.uk” merupakan nama
dari domain yang bersangkutan.
33
3. Bagian
ketiga
dari
URL
adalah
komponen
“bagian”
yang
mengindikasikan lokasi dari sumber di server.
Contohnya, public/index.html yang mengindikasikan path dari dokumen
utama melalui struktur direktori dari Web server ke file tertentu atau
sumber lain.
2.6.5
HTTP
Menurut Wikipedia (2007), HTTP (HyperText Transfer Protocol)
adalah protokol yang digunakan untuk mentransfer dokumen yang berisi
informasi dalam World Wide Web (WWW). HTTP adalah sebuah protokol
request (permintaan) / response (jawaban) di antara client dan server.
Client membuat HTTP request (seperti web browser, spider, atau tool
end-user lain) yang disebut sebagai user agent. Server yang merespon (yang
menyimpan atau membuat sumber daya seperti file HTML dan gambar)
disebut sebagai origin server.
Sumber
–
sumber
yang
diakses
oleh
HTTP
diidentifikasi
menggunakan Uniform Resource Identifiers (URIs) atau Uniform Resource
Locators (URLs).
2.6.6
HTML
Berdasarkan Eaglestone dan Ridley (2001, p201), HyperText Markup
Language (HTML) adalah sebuah bahasa markup yang membolehkan isi dan
presentasi dari sebuah dokumen dideskripsikan dengan memasukkan kode
dalam dokumen itu sendiri untuk mengenali dan membatasi bagian – bagian
34
yang berbeda dan menspesifikasikan bagaimana isi dan presentasi tersebut
diterjemahkan oleh browser.
Berdasarkan Wikipedia (2007), HyperText Markup Language
(HTML) adalah sebuah bahasa markup yang digunakan untuk membuat
sebuah halaman web dan menampilkan berbagai informasi di dalam sebuah
browser Internet. HTML adalah sebuah standar yang digunakan secara luas
untuk menampilkan halaman web. HTML kini merupakan standar Internet
saat ini.
2.6.7
XML
eXtensible Markup Language (XML) bahasa markup seperti HTML
yang tag – tagnya bisa didefinisikan sendiri. XML digunakan untuk
pertukaran data antar database yang berbeda di dalam internet (McClure et
al, 2006, p103).
2.6.8
XHTML
eXtensible HyperText Markup Language, atau XHTML, adalah
bahasa markup penerus HTML yang memiliki kemampuan yang kurang lebih
mirip HTML, tapi dengan aturan sintaks yang lebih ketat (Wikipedia, 2007).
HTML merupakan aplikasi dari SGML yang sangat fleksibel, sedangkan
XHTML adalah aplikasi dari XML, turunan SGML yang lebih terbatas.
Karena XHTML harus memiliki keteraturan bentuk (mengikuti sintaks yang
tepat), dokumen XHTML dapat diproses otomatis dengan menggunakan
standar pemroses XML tidak seperti HTML yang membutuhkan pemroses
35
yang lebih kompleks. XHTML dapat dianggap sebagai perpaduan antara
HTML dan XML karena merupakan formulasi ulang HTML dalam bentuk
XML.
2.6.9
JavaScript
JavaScript adalah scripting language yang berbasis objek yang dapat
diletakkan di halaman – halaman HTML (Flanagan David, 2002, p4).
2.6.10 AJAX
Asynchronous JavaScript and XML, atau disingkat AJAX, adalah
suatu teknik pemrograman berbasis web untuk menciptakan aplikasi web
interaktif (Wikipedia, 2008). Tujuannya adalah untuk memindahkan sebagian
besar interaksi pada komputer web browser, melakukan pertukaran data
dengan server di belakang layar, sehingga halaman web tidak harus dibaca
ulang secara keseluruhan setiap kali seorang pengguna melakukan
perubahan. Hal ini akan meningkatkan interaktivitas, kecepatan, dan
usability.
AJAX merupakan kombinasi dari :
1. XHTML (atau HTML) dan CSS untuk bahasa mark up dan tampilan.
2. DOM yang diakses dengan client side scripting language, khususnya
implementasi ECMAscript seperti Javascript dan JScript, untuk
menampilkan secara dinamis dan berinteraksi dengan informasi yang
ditampilkan.
36
3. Objek XMLHttpRequest untuk melakukan pertukaran data asinkronus
dengan web server. Pada beberapa framework dan kasus Ajax, objek
IFrame lebih dipilih daripada XMLHttpRequest untuk melakukan
pertukaran data dengan web server.
4. XML umumnya digunakan sebagai format untuk pengiriman data.
2.6.11 XMLHttpRequest
XMLHttpRequest
adalah
sebuah
kelas
dari
Javascript
yang
mengizinkan browser untuk berkomunikasi dengan server tanpa harus mem –
postback seluruh halaman. Dengan internet explorer, objek XMLHttpRequest
disediakan oleh MSXML ActiveX component. Dengan Firefox Mozilla dan
browser
lainnya,
objek
XMLHttpRequest
disediakan
oleh
kelas
XMLHttpRequest. Setiap browser memiliki library javascript yang berbeda –
beda (Zakas et al, 2006, p10).
2.6.12 DOM
Document Object Model (DOM) adalah objek impilisit dari Javascript
untuk mengakses objek – objek yang ada di suatu halaman web seperti
textbox, combo box, radio button (McClure et al, 2006, p51).
2.6.13 CSS
Cascading Style Sheet (CSS) adalah kumpulan informasi berupa
style – style untuk format desain halaman web seperti style font, warna
37
background dan sebagainya untuk menjaga konsistensi tampilan disetiap
halaman web (Lowe et al, 2006, p242).
2.6.14 ASP.NET
ASP.NET adalah sebuah bahasa pemrograman berbasis web yang
dibuat oleh Microsoft yang digunakan untuk membuat website dinamis,
aplikasi web, dan aplikasi web berbasis XML (McClure et al, 2006, p2).
ASP.NET adalah bagian dari framework .NET yang menawarkan teknologi
yang mampu membuat sebuah aplikasi dengan berbagai macam bahasa
seperti Visual Basic.NET, Jscript dan C#.NET. Microsoft mengeluarkan
ASP.NET pertama kali dengan versi 1.0 yang menawarkan banyak fitur
untuk meningkatkan produktivitas dalam membangun aplikasi web. Sekarang
versi ASP.NET yang telah dikeluarkan oleh Microsoft adalah 2.0 yang tidak
hanya meningkatkan produktivitas tetapi juga menyederhanakan administrasi
dan managemen aplikasi web ASP.NET.
2.7 Inventory
2.7.1
Pengertian Inventory
Menurut Love (1979, p3) inventory adalah sejumlah barang atau
bahan – bahan dalam kendali sebuah perusahaan yang disimpan untuk
beberapa waktu idle atau kondisi yang tidak produktif, menunggu sampai
saat digunakan atau dijual.
Menurut Tersine (1994, p3) istilah inventory dapat diartikan sebagai
berikut :
38
1. Bahan – bahan persediaan yang dipunyai pada suatu waktu (aktiva yang
nyata yang dapat dapat dilihat, diukur, dan dihitung).
2. Daftar barang dari semua aktiva fisik.
3. Untuk menentukan jumlah barang yang dimiliki.
4. Nilai dari persediaan barang yang dimiliki organisasi pada waktu tertentu.
2.7.2
Jenis Inventory
Menurut Tersine (1994, p3 – 4) inventory bisa terdiri dari persediaan
(supplies), bahan mentah (raw material), barang setengah jadi (in–process
good) , dan barang jadi (finished good).
Gambar 2.2 Jenis – Jenis Inventory
a. Persediaan (supplies)
Persediaan merupakan bagian dari inventory yang digunakan dalam
fungsi normal suatu organisasi yang bukan merupakan bagian dari produk
akhir.
b. Bahan mentah (raw material)
Bahan mentah merupakan barang – barang yang dibeli dari supplier
untuk digunakan sebagai input bagi proses produksi, bahan mentah akan
diubah menjadi barang jadi.
39
c. Barang setengah jadi (in–process good)
Barang setengah jadi merupakan produk akhir yang baru selesai sebagian
dan masih dalam proses produksi. Barang setengah jadi mewakili
akumulasi dari pekerjaan yang selesai sebagian dan antrian bahan –
bahan yang akan diproses lebih lanjut.
d. Barang jadi (finished good)
Barang jadi merupakan produk akhir proses produksi yang siap dijual,
didistribusikan, atau disimpan.
2.7.3
Pengontrolan Inventory
Menurut Love (1979, p7) pengontrolan inventory diinterpretasikan
sebagai usaha untuk mendapatkan dan menjaga keseimbangan ekonomi
antara biaya yang dikeluarkan dan biaya yang disimpan dengan
mempertahankan bahan – bahan dalam gudang.
Pengontrolan inventory dapat diinterpretasikan secara berbeda untuk
tiap – tiap orang. Misalnya saja untuk manajer gudang, pengontrolan
inventory berarti mengontrol lokasi penyimpanan fisik, usia, keamanan dari
pencuri, api, kelembaban, dan sejenisnya. Sedangkan untuk seorang akuntan
atau editor, inventory dikontrol melalui penggunaan biaya dan jumlah
informasi yang mempertinggi evaluasi modal yang tepat, penentuan
pemasukkan, dan indikator finansial lainnya (Love, 1979, p7).
Download