2011-1-00198-if 3

Embed Size (px)

Citation preview

  • 8/16/2019 2011-1-00198-if 3

    1/148

     

    77

    BAB 3

    ANALISIS DAN PERANCANGAN SISTEM

    3.1. Analisis sistem yang berjalan

    3.1.1  Sejarah Perusahaan

    AHASS 0596 Dunia Baru merupakan bengkel resmi untuk sepeda

    motor honda yang bergerak di bidang jasa perawatan/pemeliharaan (H2) dan

     penjualan spare part (H3). Bengkel ini berada di bawah naungan PT.

    AHM(Astra Honda Motor) dengan PT. Wahana Makmur Sejati sebagai Main

    Dealer di wilayah Jakarta dan Tanggerang. Ahass Dunia Baru didirikan oleh

    Ibu Irma Iskandar pad Tahun 1987. Pada awal berdirinya, bengkel ini terletak

    di Jl. Letjen Soeprapto No.40A, Jakarta-Pusat. Namun pada Tahun 2010

     bengkel ini dipindahkan ke Jl. Jombang Raya No.7, Tanggerang.

    Bengkel ini telah berdiri selama 20 tahun lebih dan memiliki 6 orang

    mekanik, 1 orang front desk, 1 orang bagian spare part dan 1 orang sebagai

    kepala bengkel. Seluruh karyawan tersebut telah memiliki standar sertifikasi

    dari Honda sehingga mereka semua telah terjamin kualitas dan keahlian di

     bidangnya masing-masing.

  • 8/16/2019 2011-1-00198-if 3

    2/148

    78

    3.1.2  Visi dan Misi

      Visi

    Adapun visi dari Ahass Dunia Baru adalah tumbuh dan

     berkembang sebagai salah satu Bengkel sepeda motor Honda

    yang terbaik di Indonesia.

    •  Misi

    Adapun misi dari Ahass Dunia Baru adalah memberikan

     pelayanan servis yang memuaskan bagi semua pengguna

    sepeda motor Honda, menjadikan sebuah bengkel dengan

     berbagai macam peralatan modern yang dapat meningkatkan

    kepercayaan konsumen.

  • 8/16/2019 2011-1-00198-if 3

    3/148

    79

    3.1.3  Struktur Organisasi

    Ahass Dunia Baru dipimpin oleh pemilik bengkelnya sendiri

    dengan dibantu 1 orang kepala bengkel yang bertanggung jawab

     penuh atas pelaksanaan kegiatan teknis dan non teknis di dalam

     bengkel. Struktur organisasi dari Ahass Dunia Baru adalah sebagai

     berikut:

    Gambar 3.1 Struktur Organisasi Ahass Dunia Baru

    Uraian tugas tentang kepemimpinan bengkel dapat diuraikan sebagai berikut:

    1.  Kepala Bengkel, bertugas untuk:

    1.1  Bertanggung jawab kepada pemilik bengkel atas hasil yang

    telah diperoleh.

    1.2  Mengawasi jalannya bengkel baik dari segi manajemen

    maupun dari segi kualitas mekanik.

  • 8/16/2019 2011-1-00198-if 3

    4/148

    80

    1.3  Terjun langsung ke lapangan ketika terjadi ketidakpuasan dari

    konsumen.

    2.  Mekanik, bertugas untuk:

    1.1  Merawat dan memperbaiki sepeda motor konsumen yang

    masuk ke bengkel.

    1.2  Memberikan kualitas terbaik dalam melakukan service motor.

    1.3  Memberikan penjelasan kepada konsumen tentang kerusakan-

    kerusakan yang terjadi pada sepeda motor konsumen.

    3.  Bagian Spare Part, bertugas untuk:

    1.1  Mengawasi barang yang masuk dan yang keluar.

    1.2  Membuat laporan pembelian, laporan persediaan barang, dan

    melaporkannya kepada kepala mekanik.

    1.3  Mengawasi sisa barang yang ada dan segera melakukan

     penyetokan sehingga tidak terjadi kekosongan barang.

    4.  Front Desk, bertugas untuk:

    1.1  Menyambut konsumen yang datang ke bengkel dan mencatat

    WO(Work Order ).

    1.2  Mencatat keluhan-keluhan yang ada pada sepeda motor

    konsumen.

    1.3  Memberikan informasi kepada konsumen mengenai harga

    servis dan harga barang.

    1.4  Membuat faktur penjualan pembelian setiap terjadi transaksi.

  • 8/16/2019 2011-1-00198-if 3

    5/148

    81

    1.5  Mencatat data-data p elanggan.

    5.  Pemilik Bengkel, sebagai penanam modal sekaligus pimpinan dimana

    memegang kekuasaan penuh, wewenang dan tanggung jawab atas

     bengkel tersebut.

    3.1.4  Prosedur yang Sedang Berjalan

    3.1.4.a Sistem Pembelian

    Prosedur pembelian barang yang berlaku di Ahass Dunia Baru

    adalah sebagai berikut:

    1.  Setelah mendapat persetujuan dari Pemilik Bengkel, bagian spare

     part membuat laporan persediaan stok barang.

    2.  Laporan tersebut kemudian di cocokan dengan jumlah barang yang

    ada di gudang.

    3.  Kemudian dibuat laporan persediaan stok barang yang sudah di

    update.

    4.  Setelah laporan persediaan stok barang yang sudah diupdate 

    selesai di buat, bagian spare part akan mencocokan laporan

    dengan barang yang tersedia di gudang dan mengupdate  stok

     barang untuk mengetahui barang mana yang sudah habis atau di

     bawah stok minimum dan harus dipesan.

  • 8/16/2019 2011-1-00198-if 3

    6/148

    82

    5.  Jika stok barang masih mencukupi maka sistem diaggap selesai,

    namun apabila ada kekurangan stok barang maka bagian spare part

    akan membuat Surat Purchase Order .

    6.  Surat Purchase Order  tersebut dibuat rangkap dua. Yang pertama

    dikirimkan ke supplier   sebagai bukti pemesanan barang. Yang

    kedua disimpan sebagai arsip untuk dicocokan dengan Faktur

    Pembelian.

  • 8/16/2019 2011-1-00198-if 3

    7/148

    83

    Gambar 3.2 Flowchart Prosedur Sistem Pembelian

  • 8/16/2019 2011-1-00198-if 3

    8/148

    84

    3.1.4.b Sistem Persediaan

    Prosedur sistem persediaan barang yang berlaku di Ahass

    Dunia Baru adalah sebagai berikut:

    1.  Setelah supplier   menerima surat  purchase order , maka akan

    dilakukan pengiriman barang sesuai dengan pesanan ke bagian

     front desk .

    2.  Setelah barang diterima, bagian spare part   akan memeriksa

    kuantitas dan kualitas barang sesuai purchase order .

    3.  Kemudian dilakukan pengecekan secara fisik untuk mengetahui

    apakah ada barang yang rusak atau kurang..

    4.  Setelah semua barang yang diterima sesuai dengan surat  purchase

    order , maka barang tersebut akan diterima dan disimpan ke

    gudang.

    5.  Pembayaran kepada pemasok akan dilakukan 1 bulan setelah

     barang diterima.

  • 8/16/2019 2011-1-00198-if 3

    9/148

    85

    Gambar 3.3 Flowchart Prosedur Sistem Persediaan

  • 8/16/2019 2011-1-00198-if 3

    10/148

    86

    3.1.4.c Sistem Penjualan

    Prosedur sistem penjualan barang yang berlaku di Ahass Dunia

    Baru adalah sebagai berikut:

    1.  Sistem penjualan dimulai dengan pemesanan barang(sales order )

    oleh konsumen ke bagian  front desk .

    2.  Setelah sales order   diterima, bagian  front desk   akan melaporkan

     pemesanan barang kepada bagian spare part   untuk dilakukan

     pengecekan apakah barang yang dipesan tersedia di gudang atau

    tidak.

    3.  Kemudian bagian spare part  akan melakukan pengecekan apakah

     barang yang dipesan tersedia di gudang atau tidak.

    4.  Jika barang tidak tersedia di gudang maka transaksi dianggap

    selesai. Namun apabila barang tersedia di gudang, bagian spare

     part akan melaporkan ke bagian  front desk   untuk diteruskan ke

    konsumen.

    5.  Bagian  front desk   akan membuatkan faktur penjualan rangkap

    2(dua). Lembar pertama untuk konsumen sebagai bukti bahwa

     barang tersebut telah dipesan sedangkan lembar yang kedua

    sebagai arsip bengkel untuk menghitung jumlah barang yang telah

    keluar per harinya.

    6.  Setelah faktur diserahkan ke konsumen, maka akan dilakukan

    transaksi pembayaran oleh konsumen ke bagian front desk .

  • 8/16/2019 2011-1-00198-if 3

    11/148

    87

    7.  Jika pembayarannya sesuai maka barang akan diserahkan ke

    konsumen.

  • 8/16/2019 2011-1-00198-if 3

    12/148

    88

    Sistem Penjualan

    GudangBagian Front Desk Bagian Spare PartKonsumen

    Mulai

    LaporanPemesanan Cek

    Selesai

    Faktur Penjualan

    Selesai

    tidakada

    adaLaporan Barang

    tersediaLaporan Barang

    tersedia

    Faktur Penjualan

    Pembayaran OK

    ya

    SalesOrder 

    MenerimaSalesOrder 

    Konsumen

    MembuatLaporan

    PemesananBarang

    Pembayaran

    MembuatFaktur

    penjualan

    Penyerahanbarang

    Menerimabarang

     

    Gambar 3.4 Flowchart Prosedur Sistem Penjualan

  • 8/16/2019 2011-1-00198-if 3

    13/148

    89

    3.1.4.d Sistem Pembayaran

    Prosedur Sistem Pembayaran ke Supplier   yang berlaku di

    Ahass Dunia Baru adalah sebagai berikut:

    1.  Pembayaran dilakukan 1 bulan setelah barang dikirim

    menggunakan rekening giro.

    2.  Bagian front d esk  akan melakukan pengecekan terhadap  purchase

    order yang sudah jatuh tempo.

    3.  Jika ditemukan  purchase order   yang sudah jatuh tempo, maka

    akan dilakukan transaksi pembayaran ke supplier .

    4.  Bukti pembayaran dan giro dibuat rangkap 2(dua). Lembar

     pertama diberikan kepada supplier   sebagai media pembayaran

    sedangkan lembar yang kedua disimpan sebagai bukti pembayaran. 

  • 8/16/2019 2011-1-00198-if 3

    14/148

    90

    Gambar 3.5 Flowchart Prosedur Sistem Pembayaran ke Supplier  

  • 8/16/2019 2011-1-00198-if 3

    15/148

    91

    3.1.5  Pemodelan Proses

    3.1.5.a 

    Diagram Konteks

    Ini merupakan sistem yang ada dalam Ahass Dunia Baru dari

     pemesanan barang ke supplier yaitu PT.Wahana Makmur Sejati

    sampai kepada penjualan kepada konsumen. Setelah melakukan

     pengecekan terhadap stok barang di gudang, jika terjadi kekosongan

     barang maka akan dilakukan pemesanan barang kepada PT.Wahana

    Makmur Sejati. Selambat-lambatnya barang akan dikirmkan dalam

     jangka waktu 1 minggu setelah proses pemesanan. Dalam sistem

     penjualan barang, barang yang dipesanan oleh konsumen akan

    langsung diberikan kepada konsumen dengan pembayaran secara

    tunai. Kedua transaksi tersebut, baik pembelian dan penjulan

    menggunakan faktur sebagai bukti terjadinya t ransaksi.

  • 8/16/2019 2011-1-00198-if 3

    16/148

    92

    SISTEM BASIS DATA

    PADA AHASS DUNIA

    BARU

    Konsumen Supplier  

    Manajemen

    Sales Order 

    Pengiriman Barang

    Purchase order 

    Faktur Penjualan Faktur Pembelian

    Penyerahan Barang

    L  a p or  an-l   a p or  an

    P  er mi  n t   a anL  a p or  an

    Retur PembelianRetur Penjualan

     

    Gambar 3.6 Diagram Konteks

  • 8/16/2019 2011-1-00198-if 3

    17/148

    93

    3.1.5.b DFD Level Nol

    Jika terjadi Pembelian barang maka input data barang-barang

    yang diterima akan dimasukkan ke dalam daftar persediaan stok

     barang. Jika terdapat penerimaan barang maka persediaan barang

     bertambah. Jika terjadi penjualan barang maka persediaan barang akan

     berkurang.

  • 8/16/2019 2011-1-00198-if 3

    18/148

    94

    Gambar 3.7 Diagram Nol

  • 8/16/2019 2011-1-00198-if 3

    19/148

    95

    3.1.6  Analisis Kebutuhan Informasi

    Dalam pelaksanaan prpses bisnis pada Ahass Dunia Baru diperlukan

    informasi sebagai ber ikut:

    Tabel 3.1 Tabel Kebutuhan Informasi

    Pengguna PemilikBengkel

    KepalaBengkel

    Bagian SparePart

    Bagian FrontDesk

    InfromasiLaporan

    Pembelian

    X X X

    LaporanPenjualan

    X X X

    LaporanPersediaanStok Barang

    X X X X

    DaftarPegawai

    X X

    DaftarSupplier

    X X X

    Daftar

    Konsumen

    X X X

    Dalam pelaksanaan bengkel terdapat berbagai dokumen yang

    dikeluarkan dan disimpan. Dokumen-dokumen tersebut dapat diklasifikasikan

    lebih rinci sehingga sesuai dengan bagian-bagiannya.

  • 8/16/2019 2011-1-00198-if 3

    20/148

    96

    Tabel 3.2 Tabel Representasi Analisis Kebutuhan Informasi

     No. Nama Entity Deskripsi

    1. Laporan Pembelian Berisikan data-data mengenai pembelian barangyang dipesan dari Supp lier.

    2. Laporan Penjualan Berisikan data-data mengenai penjualan spare part yang dilakukan oleh Ahass Dunia Baru.

    3. Laporan PersediaanStok Barang

    Berisikan data-data mengenai barang-barangyang ada di gudang dan jumlah persediaanya.

    4. Konsumen Berisikan data-data pribadi dari konsumen yangmelakukan pemesanan barang.

    5. Supplier Berisikan data-data mengenai supplier   yang

    men-supply barang.

    3.1.7  Permasalahan yang dihadapi

    Setelah melakukan wawancara dan analisis terhadap transaksi

     pembelian, penjualan, dan persediaan ditemukan masalah-masalah sebagai

     berikut:

    1.  Sulitnya perusahaan untuk mengetahui jumlah persediaan yang ada di

    gudang secara pasti.

    2.  Sulit dan lamanya pencatatan data transaksi ke dalam dan ke luar karena

     perusahaan masih mencatat data transaksi secara manual menggunakan

    nota penjualan dan pembelian.

    3.  Membutuhkan waktu yang cukup lama dalam penghitungan sisa stok

     barang yang tersedia di gudang.

    4.  Sering terjadi kesalahan penghitungan antara jumlah stok barang di buku

    stok dengan jumlah barang yang ada di gudang.

  • 8/16/2019 2011-1-00198-if 3

    21/148

    97

    5.  Sering kehabisan stok barang karena barang yang ada di gudang sudah

    habis dan terlambat untuk di pesan ke Main Dealer.

    3.1.8  Alternati f Pemecahan Masalah

    Berdasarkan permasalahan yang telah disebutkan di atas, maka kami

    membuat suatu perancangan sistem basis data menggunakan SQL server  

    2005. Basis data yang dibuat ini bertujuan untuk mempercepat waktu

     pencatatan setelah terjadi transaksi pembelian maupun penjualan sehingga

     jumlah stok barang yang ada di gudang dapat diketahui dengan p asti jumlah

     persediaannya.

    Sistem basis data tersebut kemudian di aplikasikan ke dalam sebuah

     program desktop. Program tersebut kami buat menggunakan Visual Basic

    2008 Express Studio. Aplikasi ini diharapkan dapat membantu pembuatan

    laporan pembelian dan penjualan yang akurat karena dihitung secara

    komputerisasi.

  • 8/16/2019 2011-1-00198-if 3

    22/148

    98

    3.2 Perancangan Basis Data

    Perancangan basis data dilakukan berdasarkan kebutuhan informasi yang telah

    diidentifikasi pada AHASS Dunia Baru,dibagi dalam tiga tahapan yaitu:

    a.  Perancangan Basis Data Konseptual(Conceptual database design)

     b.  Perancangan Basis Data Logikal ( Logikal Databse design)

    c.  Perancangan Basis Data Fisikal (Physical Database Design)

    3.2.1 Perancangan Basis Data Konseptual

    Perancangan basis data konseptual merupakan suatu proses pembuatan sebuah

    model informasi yang digunakan pada perusahaan,bebas dari semua pertimbangan

    fisik.Adapun langkah-langkah dalam perancangan dalam pembuatan perancangan

     basis data konseptual adalah sebagai berikut:

    Tahap 1 membangun model data konseptual

    1.  mengidentifikasi tipe entity

    2.  mengidentifikasi tipe relationship

    3.  mengidentifikasi dan mengasosiasikan atribut suatu entity

    4.  menemukan domain atribut

    5.  menentukan candidate key dan primary key

    6.  mempertimbangkan konsep enchaned modeling(langkah optional)

    7.  memeriksa model dari adanya redudansi

    8.  mengvalidasikan model konseptual local dengan transaksi user

    9.  mengreview model data konseptual dengan user

  • 8/16/2019 2011-1-00198-if 3

    23/148

    99

    3.2.1.a Mengidentifikasi Tipe Entity

    Entity-entity yang menjadi kebutuhan dari AHASS Dunia Baru setelah

    melalui proses analisis sistem adalah sebagai berikut:

    Tabel 3.3 identifikasi tipe Entity

    Entity Name Descpription Aliases Occurance

    Pegawai Merupakan entityyang berisiinformasi tentang pegawai yang

     berkerja padaAHASS DuniaBaru

    karyawan Setiap pegawaidapat menanganinol atau banyaktransaksi

     penjualan,pembeliandan cek stokSetiap pegawai berkerja pada bagian tertentu

    Bagian Berisi tentanginformasi bagian pegawai padaAHASS DuniaBaru

    Departement Setiap bagianmemiliki satu atau banyak pegawai

    konsumen Merupakan entity

    yang berisiinformasi tentangkonsumen yang berbelanja diAHASS DuniaBAru

    konsumen Setiap konsumen

    yang datingmempunyai kode pegawai sebgaiatanda pengenalseberapa seringkonsumen datanguntuk membeli barang danmenggunakanservice.

    Barang Merupakan entity

    yang berisi barangyang dijual olehAHASS DuniaBaru

    Produk Setiap barang dapat

    dimiliki oleh banyak penjualan,pembeliandan cek stok

    Cek stok Merupakan entityyang berisi pengecekan stok

    Pengecekan stok Pengecekan atokatau jumlah barangyang tersedia di

  • 8/16/2019 2011-1-00198-if 3

    24/148

    100

     pada AHASSDunia Baru

    gudang yangdilakukan oleh

     pegawaiSupplier Merupakan entityyang memuatinformasi tentangsupplier padaAHASS DuniaBaru

    supplier Supplier menerima purchase order danmeyediakan barangsesuai pesanan

    Sales order Merupkan entityyang berisiinformasi penjualan pada

    AHASS DuniaBaru

    Penjualan barang Setiap penjualandisebabkan olehkonsumen atau pelanggan yang

    diatur oleh pegawai

    Purchase order Merupakan Entityyang berisiinformasi pembelian barang pada AHASSDunia Baru padasupplier

    Pembelian barang Setiap pembeliandilakukan oleh pegawai untukmemesan barang pada supplier

    Pembayaran Merupakan entityyang berisi

    informasi pembayaran padaAHASS DuniaBaru

     pembayaran Pembayaran yangdilakukan pegawai

    kepada supplieruntuk melunasi biaya pembelian barang

    3.2.1.b Mengidentifikasi Tipe Relationship 

    Tujuan dari tahap inilah adalah untuk menentukan hubungan antara entity-

    entity yang ada.Berikut ini adalah  Entity  Relationship (ER) diagram konseptual yang

    memuat nama entity,multiplicity berserta relationship antar entiry.

  • 8/16/2019 2011-1-00198-if 3

    25/148

    101

    Bagian

    Pegawai

    Sales_Order Purchase_Order  

    Konsumen

    Pembayaran

    Supplier 

    Cek_StokBarang

    Memiliki

    MelakukanMenangani

    Melakukan Menerima

    Melakukan

    Melakukan

    MemesanMemesan

    Melakukan

    1..*

    1..1

    1..*

    1..*

    1..*

    1..1

    1..*

    Menangani

    1..1

    1..*

    1..*

    1..*

    1..1

    1..11..*

    1..1

    1..1

    1..1

    1..*

    1..1

    1..*1..1

    1..*

    Menyesuaikan1..*1..*

     

    Gambar 3.8 Entity Relationship Diagram Konseptual

  • 8/16/2019 2011-1-00198-if 3

    26/148

    102

    Berikut adalah tabel multiplicity dari tipe relationship antar entity :

    Tabel 3.4 Multiplicity Tipe Relationship

    Entity Name Multip licity Relationship Entity Name MultiplicityPegawai 1.1

    1.11.11.1

    MenanganimelakukanMelakukanmelakukan

    Sales_orderCek_stokPurchase_order pembayaran

    1.*1.*1.*1.*

    Bagian 1.1 Memiliki pegawai 1.*Cek_stok 1.* menyesuaikan barang 1.*supplier 1.1 Menangani Pembelian 1.*Sales_order 1.* Melibatkan Barang 1.*

    Konsumen 1.*1.1 MemesanMelakukan BarangPembayaran 1.*1.*

    3.2.1.c Mengidentifikasi dan Mengasosiasikan Atribut suatu Entity

    Tujuan dari tahap ini adalah menghubungkan atribut dengan entity ataupun

    relationship yang sesuai. Berikut ini merupakan tabel setiap entity dengan atribut

    masing-masing.

  • 8/16/2019 2011-1-00198-if 3

    27/148

    103

    Tabel 3.5 Dokumen Atribut dari Entity

    Entity Name Attribute Description

    data type&

    length NULL

    Mult

    Valu

    Pegawai Kode_pegawai Kode pegawai char (5) NO NO

    nama_pegawai nama pegawai varchar (30) NO NO

    alamat_pegawai alamat pegawai varchar (100) NO NO

    telepon_pegawai telepon pegawai varchar (15) NO NO

     password password varchar (10) NO NO

    Bagian Kode_Bagian Kode Bagian char (4) NO NO

     Nama_Bagian Nama Bagian varchar (30) NO NO

    Barang Kode_barang Kode barang char (6) NO NO

    nama_barang nama barang varchar (30) NO NO

    harga_jual harga jual numeric 10,2 NO NO

    harga_beli harga beli numeric 10,2 NO NO

     jumlah_barang jumlah barang integer NO NO

    minimal_stok minimal stok integer NO NO

    Supplier Kode_supplier Kode supplier char (6) NO NO

     Nama_supplier Nama supplier varchar (30) NO NO

    alamat_supplier alamat supplier varchar (100) NO NO

    telepon_supplier telepon supplier varchar (15) NO NO

    Konsumen Kode_Konsumen Kode Konsumen char(5) NO NO

  • 8/16/2019 2011-1-00198-if 3

    28/148

    104

     Nama_Konsumen Nama Konsumen varchar (30) NO NO

    Alamat_Konsumen Alamat Konsumen varchar (100) NO NO

    Telepon_Konsumen Telepon Konsumen varchar (15) NO NO

    cek stok kode_cek_stok Kode cek stok char (6) NO NO

    tgl_cek_stok tanggal cek stok datetime NO NO

     jumlah_stok jumlah stok integer NO NO

    harga_beli harga beli numeric 10,2 NO NO

    sales_order no_faktur no faktur char (6) NO NO

    tgl_faktur tgl faktur datet ime NO NO

     purchase_order No_PO No PO char (6) NO NO

    tgl_PO tgl PO datet ime NO NO

     pembayaran no_Giro No Giro char (6) NO NO

    tgl_Giro Tanggal Giro datet ime NO NO

    total_pembayaran Total pembayaran numeric 10,2 NO NO

    3.2.1.d Menentukan Domain Atribut

    Tujuan tahap ini adalah untuk menentukan domain dari suatu atribut yang

    terdapat pada model data konseptual.Domain atribut adalah sekumpulan nilai yang

    diperkenankan untuk satu atau lebih atribut.

  • 8/16/2019 2011-1-00198-if 3

    29/148

    105

    Tabel 3.6 Dokumen Domain Atribut

    Entity Name Attribute Domain attribut

    Kode pegawai Kode_pegawai Char(5) [K][P][0-9][0-

    9][0-9]

     Nama pegawai Nama_pegawai Varchar (30)

    Telepon pegawai Telepon_pegawai Varchar (15)

    Alamat pegawai Alamat_pegawai Varchar (100)

    Password Password Varchar (10)

    Kode bagian Kode_bagian Char(4) [K][B][0-9][0-9]

     Nama bagian Nama_bagian Varchar (30)

    Kode konsumen Kode_konsumen Varchar(5) [K][S][0-9] [0-

    9] [0-9]

     Nama konsumen Nama_konsumen varchar (30)

    Alamat konsumen Alamat_konsumen varchar (100)

    Telepon konsumen Telepon_konsumen varchar (15)

    Kode barang Kode_barang Char(6) [B][R][0-9][0-

    9][0-9][0-9]

     Nama barang Nama_barang Varchar (30)

    Harga jual Harga_jual Numeric (10,2)

    Jumlah barang Jumlah_barang Integer

    Sales order No_faktur Char(6) [F][P][0-9][0-

  • 8/16/2019 2011-1-00198-if 3

    30/148

    106

    9][0-9][0-9]

    Tanggal faktur Tgl_faktur Datetime

    Total penjualan Total_penjualan Numeric (10,2)

     Nomor cek stok No_cek_stok Char(6) [C][S][0-9][0-

    9][0-9][0-9]

    Tanggal cek stok Tgl_cek_stok Datetime

    Kode supplier Kode_supplier Char(6) [S][P][0-9][0-

    9][0-9][0-9]

     Nama supplier Nama_supplier Varchar (30)

    Alamat supplier Alamat_supplier Varchar(100)

    Telepon supplier Telepon_supplier Varchar (15)

     Nomor Purchase order No_PO Char(6) [P][O][0-9][0-

    9][0-9][0-9]

    Tanggal Purchase order Tgl_PO Datetime

    Total pembelian Total pembelian Numeric(10,2)

     No giro No_giro Char(6) [P][P][0-9][0-

    9][0-9][0-9]

    Tanggal pembayaran Tgl_giro Datetime

    Total pembayaran Total_pembayaran Numeric (10,2)

  • 8/16/2019 2011-1-00198-if 3

    31/148

    107

    3.2.1.e Menentukan Atribut Candidate key dan primary key

    Tujuan dari tahap ini adalah menentukan candidate key dan primary key untuk

    setiap entiry yang ada.

    Tabel 3.7 Dokumen Atribut Candidate Key dan Primary Key dari Setiap Entity

    Entity Name Candidate key Primary key

    Pegawai Kode pegawai

    Telepon pegawai

    Kode pegawai

    Bagian Kode Bagian

     Nama bagian

    Kode bagian

    Konsumen Kode_konsumen

    Telepon konsumen

    Kode konsumen

    Barang Kode Barang

     Nama barang

    Kode barang

    Cek stok No.cek stok No cek stok

    Supplier Kode supplier

    Telepon supplier

    Kode supplier

    Purchase order No PO No PO

    Sales order No faktur No penjualan

     pembayaran No Giro No Giro

     berikut ini adalah gambar entity relationship Diagram Konseptual yang dilengkaspi

    dengan primary key:

  • 8/16/2019 2011-1-00198-if 3

    32/148

    108

    Bagian

    Kode_Bagian

    Pegawai

    Kode_Pegawai

    Sales_Order 

    No_Faktur 

    Purchase_Order 

    No_PO

    Konsumen

    Kode_Konsumen

    Pembayaran

    No_Giro

    Supplier 

    Kode_Supp

    Cek_Stok

    No_Cek_Stok

    Barang

    Kode_Barang

    Memiliki

    MelakukanMenangani

    Melakukan Menerima

    Melakukan

    Melakukan

    MemesanMemesan

    Melakukan

    1..*

    1..1

    1..*

    1..*

    1..*

    1..1

    1..*

    Menangani

    1..1

    1..*

    1..*

    1..*

    1..1

    1..11..*

    1..1

    1..1

    1..1

    1..*

    1..1

    1..*1..1

    1..*

    Menyesuaikan1..*1..*

      Gambar 3.9 Entity relationship Diagram Konseptual dengan primary key

    3.2.1.f Mempertimbangkan Konsep Enchaned Modeling(Langkah Optional)

    Setelah diperhatikan dari tahap ini dan telah dipertimbangkan,maka pada

     perancangan konseptual tidak menggunakan konsep pemodelan enchaned.

  • 8/16/2019 2011-1-00198-if 3

    33/148

    109

    3.2.1.g Memeriksa Model Dari Redudansi

    Setelah ditelti tidak ada adanya bentuk redundansi atau pemanggilan kembali.

    3.2.1.h Memvalidasikan Model Konseptual Lokal Dengan Transaksi User

    Tujuan dari tahap ini adalah untuk menyakinkan bahwa model data

    konseptual yang dibuat mendukung transaksi user.

    Adapun transaksi-transaksi yang diperlukan adalah sebagai berikut:

    1.  Memasukkan data pegawai

    2.  Memasukkan data barang

    3.  Memasukkan data sales order

    4.  Memasukkan data stok

    5.  memasukkan data supplier

    6.  memasukkan data purchase order

    7.  memasukkan data sales order

    8.  memasukkan data pembayaran

    9.  melakukan update/delete data pegawai

    10. melakukan update/delete data barang

    11. melakukan update/delete data konsumen

    12. melakukan update/delete data sales order

    13. melakukan update/delete data cek stok

    14. melakukan up date/delete data supplier

    15. melakukan update/delete data purchase order

    16. melakukan update/delete data p embayaran

  • 8/16/2019 2011-1-00198-if 3

    34/148

    110

    17. menampilkan data p egawai

    18. mencari data pegawai berdasarkan nama pegawai

    19. menampilkan data barang

    20. mencari data barang berdasarkan nama barang

    21. menampilkan data sales order

    22. mencari data sales order berdasarkan nomor faktur

    23. menampilakn data cek stok

    24. mencari data cek stok berdasarkan nomor cek stok

    25. mencari data cek stok berdasarkan tanggal penyesuaian

    26. menampilkan data supplier

    27. mencari data supplier berdasarkan nama supp lier

    28. menampilkan data p urchase order

    29. Mencari data purchase order berdasarkan kode purchase order

    30. menampilkan data pembayaran

    31. mencari data pembayaran berdasarkan nomor giro

  • 8/16/2019 2011-1-00198-if 3

    35/148

    111

    3.2.1.i Mereview Data Konseptual User

    Setelah meninjau ulang model data konseptual dengan user maka dapat

    disimpulkan bahwa model data konseptual yang dibuat sudah sesuai dengan

    kebutuhan user.

    3.2.2 Perancangan Basis Data Logikal

    Perancangan basis data logikal merupakan suaut proses pembuatan sebuah

    model data yang digunakan dalam duaut perusahaan berdasarkan model data yang

    spesifik tetapi tidak tergantung pada DBMS dan pertimbangan fisik lainnya.Model

    data logikal merupakan sumber informasi perancangan tahap fisikal.Adapun langkah-

    langkahnya yaitu :

    Tahap 2 Membangun dan memvalidasi model data logikal

    1.  menentukan relasi untuk model data logikal

    2.  mengvalidasi relasi dengan menggunakan normalisasi

    3.  mengvalidasi relasi terhadap transaksi user

    4.  menentukan integrity constraint

    5.  menreview model data logikal dengan user

    6.  menggabungkan model-model data logikal menjadi model global

    7.  memeriksa pertumbuhan di masa depan

  • 8/16/2019 2011-1-00198-if 3

    36/148

    112

    3.2.2.a Menentukan Relasi Untuk Model Data Logikal

    Tujuan dari tahap ini adalah membuat relasi dari model data logikal untuk

    menampilkan kembali entity,relationship dan atribut yang telah didefinisikan.

    1.)  Strong Entity type

    Pegawai(kode_pegawai,nama_pegawai,alamat_pegawai,telepon_pegawai,

     password,kode_bagian)

     primary key : kode_pegawai

    Bagian(kode_bagian,nama_bagian)

     primary key : Kode_bagian

    Konsumen(kode_konsumen,nama_konsumen,alamat_konsumen,telp_konsum

    en)

     primary key : kode_konsumen

    Barang(kode_barang,nama_barang,harga_jual,jumlah_stok)

     primary key : Kode_barang

    sales order(no_faktur,tgl_faktur,total_penjualan)

     primary key : no_faktur

  • 8/16/2019 2011-1-00198-if 3

    37/148

    113

    cek stok(no_cek_stok,tgl_cek_stok,jumlah_stok)

     primary key : no_cek_stok

    supplier(kode_supp,nama_supp,alamat_supp,telepon_supp)

     primary key : kode_supp

     purchase order(Kode_PO,tgl_PO)

     primary key : kode_PO

     pembayaran(no_giro,tgl_giro,total_pembayaran)

     primary key : no_giro

    2.)  Weak entity type

    sales_order_detail(kode_barang,kuantitas)

     primary key: none

    cek_stok_detail(Kode_barang,jumlah_stok)

     primary key : none

     purchase_order_detail(kode_barang,nama_barang,kuantitas,no_PO)

     primary key : none

  • 8/16/2019 2011-1-00198-if 3

    38/148

    114

    3.)  one to many(1.*) binary relationship

    Untuk setiap hubungan one to many,entity pada one side dalam relasi menjasi

     parent sedangkan untuk entity pada many side menjadi child .

    Pegawai (kode_pegawai, nama_pegawai,alamat_pegawai, telp_pegawai,

    kode_bagian) primary key kode_pegawaiforeign key kode_bagian

     purchase_order(No_PO, Tgl_PO,kode_supp, nama_pegawai)

     primary key No_POforeign key kode_supp,kode_pegawai

     post pegawai ke purchase_order

    Pegawai (kode_pegawai, nama_pegawai,alamat_pegawai, telp_pegawai,kode_bagian) primary key kode_pegawai

    foreign key kode_bagian

    Sales_order(No_Faktur, tgl_faktur,kode_pegawai, n ama_pegawai) primary key No_Fakturforeign key kode_pegawai,

    kode_konsumen

     post pegawai ke sales_order

  • 8/16/2019 2011-1-00198-if 3

    39/148

    115

    Pegawai (kode_pegawai, nama_pegawai,alamat_pegawai, telp_pegawai,kode_bagian) primary key kode_pegawaiforeign key kode_bagian

     bagian (kode_bagian)

     primary key kode_bagian

     post pegawai ke bagian

    Pegawai (kode_pegawai, nama_pegawai,alamat_pegawai, telp_pegawai,kode_bagian) primary key kode_pegawaiforeign key kode_bagian

    Pembayaran(No_Giro, tgl_giro,kode_supp, kode_konsumen,no_faktur, no_PO) primary key No_Giroforeign key kode_supp

     post pegawai ke pembayaran

    Pegawai (kode_pegawai, nama_pegawai,alamat_pegawai, telp_pegawai,kode_bagian) primary key kode_pegawaiforeign key kode_bagian

    Cek_Stok (no_cek_stok,tgl_cek_stok, kode_pegawai,kode_supp) primary key no_cek_stokforeign key kode_barang

     post pegawai ke cek_stok

  • 8/16/2019 2011-1-00198-if 3

    40/148

    116

    4.)  one to one binary relationship

    setelah melakukan pengecekan tidak ada one to one binary relationship pada

    table diagram.

    5.)  one to one recursive relationship

    setelah melakukan pengecekan tidak ada one to one recursive relationship

     pada table diagram.

    Pembayaran(No_Giro, tgl_giro,kode_supp, kode_konsumen, no_faktur,no_PO) primary key No_Giroforeign key kode_supp

    Supplier(kode_supp, nama_supp,alamat_supp, email_supp,no_cek_stok) primary key kode_supp

     post pembayaran ke supplier

    Supplier(kode_supp, nama_supp,alamat_supp, email_supp, no_cek_stok)

     primary key kode_supp

     purchase_order(No_PO, Tgl_PO,kode_supp, nama_pegawai) primary key No_POforeign key kode_supp,kode_pegawai

     post supplier ke purchase_order

  • 8/16/2019 2011-1-00198-if 3

    41/148

    117

    6.)  superclass/subclass relation type

    setelah dilakukan pengecekan tidak ada superclass/subclass pada model data

    konseptual.

    7.)  many to many binary relationship types

    Untuk tiap hubungan many to many dibuat suatu relasi yang mempertasikan

    hubungan.antar entiry dan memasukkan seluruh atribut yang merupakan

     bagian dengan relasi .Primary key disalinkan pada relasi baru juga bertindak

    sebagai foreign key.

    Barang(Kode_Barang, nama_barang,harga_jual, harga_beli, jumlah_stok,minimal_stok)Primary key kode_barang

    Sales_order(No_Faktur, tgl_faktur,kode_pegawai, n ama_pegawai) primary key No_Faktur

     post barang ke sales_order

    Sales_Order_Detail(No_Faktur, Kode_Barang, Kuantitas)Primary key no_faktur

    Foreign k ey no_faktur_Kode_Brang

  • 8/16/2019 2011-1-00198-if 3

    42/148

    118

    Barang(Kode_Barang, nama_barang,harga_jual, harga_beli, jumlah_stok,minimal_stok)Primary key kode_barang

     purchase_order(No_PO, Tgl_PO,kode_supp, nama_pegawai) primary key No_PO

     post barang ke purchase_order

    Purchase_Order_Detail(No_PO, Total_Pembelian, Kode_Barang)Primary key No_PO

    Foreign k ey Kode_Barang

  • 8/16/2019 2011-1-00198-if 3

    43/148

    119

    8.)  complex relationship types

    Pada ERD tidak terdapat relasi kompleks

    9.)  Multi-valued atributs

    Untuk semua atribut multi valued dibuat sebuah relasi baru untuk

    mempretasikan multi-valued dan masukkan primary key entitas asal pada

    relasi baru untuk bertindak sebgaia foreign key.

    Cek_Stok (no_cek_stok, tgl_cek_stok,kode_pegawai, kode_supp) primary key no_cek_stokforeign key kode_barang

    Barang(Kode_Barang, nama_barangharga_jual, harga_beli, jumlah_stokminimal_stok)Primary key kode_barang

     post cek_stok ke barang

    Cek_Stok_Detail(No_Cek_Stok, Jumlah_Stok, Kode_Barang)Primary key No_Cek_Stok

    Foreign k ey Kode_Barang, No_Cek_Stok

  • 8/16/2019 2011-1-00198-if 3

    44/148

    120

    3.2.2.b Mengvalidasi Relasi Dengan Menggunakan Normalisasi

    Normalisasi pembelian/purchase order

    UNF

    Purchase_order{@no_Po,tgl_PO,kode_pegawai,nama_pegawai,kode_supplier,nama_ 

    supplier,kode_barang, nama_barang,harga_beli,kuantitas}

    1NF

    Purchase_order{@no_Po,tgl_PO,kode_pegawai,nama_pegawai,kode_supplier,nama_ 

    supplier,kode_barang }

    Purchase_order_detail{@ no_PO,kode_barang, nama_barang,harga_beli,kuantitas}

    2NF

    Purchase_order{@no_Po,tgl_PO,kode_pegawai,nama_pegawai,kode_supplier,nama_ 

    supplier,kode_barang }

    Purchase_order_detail{@ no_PO,kode_barang,kuantitas}

    Barang{@kode_barang, nama_barang,harga_beli}

    3NF

    Purchase_order{@no_Po,tgl_PO,kode_pegawai,kode_supplier,kode_barang }

    Purchase_order_detail{@no_PO kode_barang,kuantitas}

    Barang{@kode_barang, nama_barang,harga_beli}

    Pegawai{@kode_pegawai,nama_pegawai,alamat_p egawai,telp_pegawai,password}

    Supplier{@kode_supplier,nama_supp lier,alamat_supplier,telp_supplier}

    Normalisasi Persediaan/cek stok

    UNF

  • 8/16/2019 2011-1-00198-if 3

    45/148

    121

    Cek_stok{@no_cek_stok,tgl_cek_stok,kode_pegawai,nama_pegawai,kode_barang,

    nama_barang,jumlah_stok}

    1NF

    Cek_stok{@no_cek_stok,tgl_cek_stok,kode_pegawai,nama_pegawai,kode_barang,

    nama_barang,jumlah_stok}

    cek_stok_detail(@no_cek_stok,kode_barang,nama_barang,jumlah_stok)

    2NF

    Cek_stok{@no_cek_stok,tgl_cek_stok,kode_pegawai,kode_barang}

    cek_stok_detail{@no_cek_stok,kode_barang,jumlah_stok}

    Barang(@kode_barang,nama_barang}

    3NF

    Cek_stok{@no_cek_stok,tgl_cek_stok,kode_pegawai,kode_barang,}

    cek_stok_detail{@no_cek_stok,kode_barang,jumlah_stok}

    Barang(@kode_barang,nama_barang}

    Pegawai{@kode_pegawai,nama_pegawai,alamat_p egawai,telp_pegawai,password}

    Normalisasi penjualan/sales order

    UNF

    Sales_order{@no_faktur,tgl_faktur,kode_pegawai,nama_pegawai,kode_konsumen,n

    ama_konsumen,kode_barang, nama_barang,harga_jual,kuantitas}

    1NF

  • 8/16/2019 2011-1-00198-if 3

    46/148

    122

    Sales_order{@no_faktur,tgl_faktur,kode_pegawai,nama_pegawai,kode_konsumen,n

    ama_konsumen,kode_barang}

    Sales_order_detail{@no_faktur,kode_barang, nama_barang,harga_jual,kuantitas}

    2NF

    Sales_order{@no_faktur,tgl_faktur,kode_pegawai,nama_pegawai,kode_konsumen,n

    ama_konsumen,kode_barang}

    Sales_order_detail{@no_faktur,kode_barang,kuantitas}

    Barang{@kode_barang, nama_barang,harga_jual}

    3NF

    Sales_order{@no_faktur,tgl_faktur,kode_pegawai,kode_konsumen,kode_barang}

    Sales_order_detail{@no_faktur,kode_barang,kuantitas}

    MsBarang{@kode_barang, nama_barang,harga_jual}

    Pegawai{@kode_pegawai,nama_pegawai,alamat_p egawai,telp_pegawai,password}

    konsumen{@kode_konsumen,nama_konsumen,alamat_konsumen,telp_konsumen}

    3.2.2.c Mengvalidasi Relasi Terhadap Transaksi User

    Transaksi ini dilakukan dengan cara memerisa kembali semua transaksi user

    yang telah didefinisikan pada tahap konseptual terhadap relasi yang ada.Seetelah

    meninjau ulang model data logika local dengan user maka dapat disimpulkan bahwa

    model data logikal sudah mendukung transaksi-transaksi yang dibutuhkan user.

    3.2.2.d Menentukan integrity constraint 

  • 8/16/2019 2011-1-00198-if 3

    47/148

    123

    Tujuan pada tahap ini adalah untuk memeriksa interigrity constraint yang

    dipresentasikan pada mode data logikal.

    1.  Required data

     beberapa attribute harus mempunya nilai yang valid,dengan kata lain atribut-

    atribut yang ada tidak mempunyai nilai null.

    2.  Attribute domain constraints

    setiap atribut memliki domain yaitu kumpulan dari nilai yang sah.

    3.  Multiplcity

    menampilkan constraint yang ditempatkan pada relasi antar data dalam

    database

    4.  Entity integrity

     primary key dari suatu entity tidak boleh mempunyai nilai null

    5.  Refential integrity

    apabila suatu table memiliki foreign key yang mengandung suatu nilai maka

    nilai menunjuk pada barisyang ada relasi parent.Berikut adalah refential

    integrity constraint pada model data logika:

  • 8/16/2019 2011-1-00198-if 3

    48/148

    124

    Tabel 3.8 Tabel Referential Integrity Constraints

    Barang(kode_barang,nama_barang,harga_jual,jumlah_stok,minimal_stok)

    Primary key: kode_barang

    Konsumen(Kode_konsumen,nama_konsumen,alamat_konsumen,telepon_konsumen)

    Primary key: kode_konsumen

    Pegawai(kode_pegawai,nama_pegawai,alamat_pegawai,telepon_pegawai,password,k 

    ode_bagian)

    Primary key: kode_pegawai

    Foreign key:kode_bagian references bagian(kode_bagian)

    ON UPDATE CASCADE ON DELETE NO ACTION

    Bagian(Kode_bagian,namaBagian)

    Primary key:kode_bagian

    supplier(kode_supp,nama_supp,alamat_supp,telepon_supp)

     primary key:kode_supp

    sales_order(no_faktur,tgl_faktur,kuantitas,kode pegawai,kode konsumen)

     primary key:no_faktur

    foreign key:kode_pegawai references pegawai(kode_pegawai)ON UPDATE CASCADE ON DELETE NO ACTION

    kode_konsumen references konsumen(kode_konsumen)

    ON UPDATE CASCADE ON DELETE NO ACTION

    sales_order_detail(no_faktur,kode_barang,kuantitas)

     primary key:no_faktur,kode_barang

    foreign key:no_faktur refrences sales_order(no_faktur)

    ON UPDATE CASCADE ON DELETE NO ACTION

    kode _barang references barang(kode_barang)

    ON UPDATE CASCADE ON DELETE NO ACTION

  • 8/16/2019 2011-1-00198-if 3

    49/148

    125

     purchase_order(no_PO,tgl_PO,kode_pegawai,kode_supp lier)

     primary key:no_PO

    foreign key: kode_pegawai references pegawai(kode_pegawai)

    ON UPDATE CASCADE ON DELETE NO ACTION

    kode_supp references supp(kode_supp)

    ON UPDATE CASCADE ON DELETE NO ACTION

    Purchase_order_detail(no_PO,kode_barang,tgl_PO,kuantitas)

    Primary key:no_PO,kode_barang

    Foreign key: no_PO refrences purchase_order(no_PO)

    ON UPDATE CASCADE ON DELETE NO ACTION

    kode _barang references barang(kode_barang)

    ON UPDATE CASCADE ON DELETE NO ACTION

    Pembayaran(no_giro,tgl_giro,no_PO,kode pegawai,kode_supp)

    Primary key: no_giro

    Foreign key: no_PO refrences purchase_order(no_PO)

    ON UPDATE CASCADE ON DELETE NO ACTION

    kode_pegawai references p egawai(kode_pegawai)ON UPDATE CASCADE ON DELETE NO ACTION

    kode_supp references supp(kode_supp)

    cek-stok(@no_cek_stok,tgl_cek_stok,kode_pegawai)

     primary key:no_cek_stok

    foreign key: kode_pegawai references pegawai(kode_pegawai)

    ON UPDATE CASCADE ON DELETE NO ACTION

    cek_stok_detail(no_cek_stok,kode_barang,jumlah_stok)

     primary key:no_cek_stok,kode_barang

    foreign key: no_cek_stok references cek_stok(no_cek_stok)

    ON UPDATE CASCADE ON DELETE NO ACTION

    kode _barang references barang(kode_barang)

  • 8/16/2019 2011-1-00198-if 3

    50/148

    126

    ON UPDATE CASCADE ON DELETE NO ACTION

    3.2.2.e mereview Model Data Logikal Dengan User

    Setelah meninjau ulang model data lokal dengan user,maka didapatkan

    kesimpulan bahwa model data lokal sesuai dengan kebutuhan user.

    3.2.2.f Menggabungkan Model-Model Data Lokal Menjadi Model Global

    (Langkah Optional)

    Tujuan dari tahap ini adalah untuk menggabungkan individual data model

    logika lokal menjadi global yang menggambarkan perusahaan.

    Tabel 3.9 model data local ke global

    Barang(kode_barang,nama_barang,harga_jual,harga_beli,jumlah_stok,minimal_stok)

    Primary key: kode_barang

    Konsumen(Kode_konsumen,nama_konsumen,alamat_konsumen,telepon_konsumen)

    Primary key: kode_konsumen,

    Pegawai(kode_pegawai,nama_pegawai,alamat_pegawai,password,kode bagian)

    Primary key: kode_pegawai

    Foreign key:kode_bagian references bagian(kode_bagian)

    Bagian(Kode_bagian,nama_Bagian)

    Primary key:kode_bagian

  • 8/16/2019 2011-1-00198-if 3

    51/148

    127

    supplier(kode_supp,nama_supp,alamat_supp)

     primary key:kode_supp

    sales_order(no_faktur,tgl_faktur,kuantitas,kode_pegawai,kode_konsumen)

     primary key:no_faktur

    foreign key:kode_pegawai references pegawai(kode_pegawai),kode_konsumen

    references konsumen(kode_konsumen)

    sales_order_detail(no_faktur,kode_barang,kuantitas)

     primary key:no_faktur,kode_barang

    foreign key:no_faktur refrences sales_order(no_faktur),kode_barang references

     barang(kode_barang)

     purchase_order(no_PO,tgl_PO,kode_pegawai,kode_supp )

     primary key:no_PO

    foreign key: kode_pegawai references p egawai(kode_pegawai),kode_supp references

    supplier(kode_supp)

    Purchase_order_detail(no_PO,kode_barang,tgl_PO,kuantitas)

    Primary key:no_PO,kode_barang

    Foreign key: no_PO refrences purchase_order(no_PO),kode _barang references

     barang(kode_barang)

    Pembayaran(no_giro,tgl_giro,no_PO,kode pegawai,kode_supp)

    Primary key: no_giro

    Foreign key: no_PO refrences purchase_order(no_PO), kode_pegawai references

  • 8/16/2019 2011-1-00198-if 3

    52/148

    128

     pegawai(kode_pegawai),kode_supp references supp(kode_supp)

    cek-stok(no_cek_stok,tgl_cek_stok,kode_pegawai)

     primary key:no_cek_stok

    foreign key: kode_pegawai references pegawai(kode_pegawai)

    cek_stok_detail(no_cek_stok,kode_barang,jumlah_stok)

     primary key:no_cek_stok,kode_barang

    foreign key: no_cek_stok references cek_stok(no_cek_stok), kode _barang references

     barang(kode_barang)

  • 8/16/2019 2011-1-00198-if 3

    53/148

    129

    Gambar 3.10 Model Diagram Rasional Global

  • 8/16/2019 2011-1-00198-if 3

    54/148

    130

    3.2.2.g Memeriksa Pertumbuhan Di Masa Depan

    Rancangan basis data yang dibuat masih memungkinkan untuk diperluas jika

    user memiliki suatu keperluan di waktu akan datang.Seperti memerlukan tampilan

    gaji karyawan, history berkerja dll.

    3.2.3 Perancangan Basis Data Fisikal

    Perancangan ini merupakan perancangan yang merupakan proses yang

    menghasilkan sebuah deskripsi atau gambaran implementasi basis data pada media

     penyimpanan yang menggambarkan hubungan dasar,organisasi data dan indeks-

    indeks yang memungkinkan pengaksesan data lebi cepat.Langkah-langkahnya

    sebagai berikut:

    Tahap 3 Menterjemahkan model data logikal terhadpat DBMS yang ditentukan

    1.  Merancang relasi dasar

    2.  merancang representasi derived data

    3.  merancang general constraints

    Tahap 4 Merancang organisasi file dan index 

    4.  menganalisis transaksi

    5.  memilh organisasi f ile

    6.  memilih index

    7.  mengestimasi kapasitas p enyimpanan yang dibutuhkan

  • 8/16/2019 2011-1-00198-if 3

    55/148

    131

    Tahap 5 Merancang user views

    Tahap 6 Merancang keamanan

    3.2.3.a Merancang Relasi Dasar

    Pada langkah pertama merupakan perancangan  Database Design Language  

    (DBDL) untuk setiap entity yang bertujuan untuk membuat domain dari setiap atribut

     berdasarkan penjelasan berserta batasan yang ada dalam setiap atribut,yaitu :

    DBDL untuk Barang

    Domain Kode Barang fixed length character string, length 6, format:

    [B][R][0-9][0-9][0-9][0-9]

    Domain Nama Barang variable length character string, length 30

    Domain Harga_Jual variable length numeric, length 10,2

    Domain Jumlah Stok integer

    Barang (

    Kode_Barang Kode Barang NOT NULL,

     Nama_Barang Nama Barang NOT NULL,

    Harga Harga NOT NULL,

    Jumlah_Stok Jumlah Stok NOT NULL,

    PRIMARY KEY (Kode_Barang)

    );

  • 8/16/2019 2011-1-00198-if 3

    56/148

    132

    DBDL untuk Bagian

    Domain Kode Bagian fixed length character string, length 4, format:

    [B][G][0-9][0-9]

    Domain Nama Bagian variable length character string, length 30

    Bagian (

    Kode_Bagian Kode Bagian NOT NULL,

     Nama_Bagian Nama Bagian NOT NULL,

    PRIMARY KEY (Kode_Bagian)

    );

    DBDL untuk Pegawai

    Domain Kode Pegawai fixed length character string, length 6, format:

    [P][G][0-9][0-9][0-9][0-9]

    Domain Nama Pegawai variable length character string, length 30

    Domain Alamat Pegawai variable length character string, length 100

    Domain Password variable length character string, length 10

    Domain Kode Bagian fixed length character string, length 4, format:

    [B][G][0-9][0-9]

    Pegawai (

    Kode_Pegawai Kode Pegawai NOT NULL,

     Nama_Pegawai Nama Pegawai NOT NULL,

    Alamat_Pegawai Alamat Pegawai NOT NULL,

    Password Password NOT NULL,

  • 8/16/2019 2011-1-00198-if 3

    57/148

    133

    Kode_Bagian Kode Bagian NOT NULL,

    PRIMARY KEY (Kode_Pegawai),

    FOREIGN KEY Kode_Bagian REFERENCES Bagian (Kode_Bagian)

    ON UPDATE CASCADE ON DELETE NO ACTION

    );

    DBDL untuk Telp_Pegawai

    Domain Telepon Pegawai variable length character string, length 15, format: [0-9]

    untuk setiap digit

    Domain Kode Pegawai fixed length character string, length 6, format: [P][L][0-

    9][0-9][0-9][0-9]

    Telepon_Pegawai (

    Telepon_Pegawai Telepon Pegawai NOT NULL,

    Kode_Pegawai Kode Pegawai NOT NULL,

    PRIMARY KEY (Telepon_Pegawai),

    FOREIGN KEY (Kode_Bagian) REFERENCES Pegawai (Kode_Pegawai)

    ON UPDATE CASCADE ON DELETE NO ACTION

    );

  • 8/16/2019 2011-1-00198-if 3

    58/148

    134

    DBDL untuk Sales_order

    Domain Nomor Faktur fixed length character string, length 6, format: [F][P][0-

    9][0-9][0-9][0-9]

    Domain Tanggal Faktur datetime

    Domain Kode Pegawai fixed length character string, length 6, format:

    [P][G][0-9][0-9][0-9][0-9]

    Penjualan (

     No_Faktur No Faktur NOT NULL,

    Tgl_Faktur Tanggal Faktur NOT NULL,

    Kode_Pegawai Kode Pegawai NOT NULL,

    PRIMARY KEY (No_Faktur),

    ON UPDATE CASCADE ON DELETE NO ACTION

    FOREIGN KEY (Kode_Pegawai) REFERENCES Pegawai (Kode_Pegawai)

    ON UPDATE CASCADE ON DELETE NO ACTION

    ); 

    DBDL untuk Sales_order_detail Detail

    Domain Nomor Faktur fixed length character string, length 6, format: [F][P][0-

    9][0-9][0-9][0-9]

    Domain Kode Barang fixed length character string, length 6, format:

    [B][R][0-9][0-9][0-9][0-9]

    Domain Harga Jual variable length numeric, length 10,2

    Domain Kuantitas integer

  • 8/16/2019 2011-1-00198-if 3

    59/148

    135

    Penjualan_Detail (

     No_Faktur No Faktur NOT NULL,

    Kode_Barang Kode Barang NOT NULL,

    Harga_Jual Harga Jual NOT NULL,

    PRIMARY KEY (No_Faktur, Kode_Barang),

    FOREIGN KEY No_Faktur REFERENCES Penjualan (No_Faktur)

    ON UPDATE CASCADE ON DELETE NO ACTION

    FOREIGN KEY Kode_Barang REFERENCES Barang (Kode_Barang)

    ON UPDATE CASCADE ON DELETE NO ACTION );

    DBDL untuk Konsumen

    Domain Kode Konsumen variable length character string, length 5

    Domain Nama Konsumen variable length character string, length 30

    Domain Alamat Konsumen variable length character string, length 100

    Domain Telepon Konsumen variable length character string, length 15

    konsumen (

    Kode_Konsumen Kode Konsumen NOT NULL,

     Nama_Konsumen Nama Konsumen NOT NULL,

    Alamat_Konsumen Alamat Konsumen NOT NULL,

    Telepon_Konsumen Telepon konsumen NOT NULL,

    PRIMARY KEY (Kode_konsumen),

    ON UPDATE CASCADE ON DELETE NO ACTION

    );

  • 8/16/2019 2011-1-00198-if 3

    60/148

    136

    DBDL untuk Cek_Stok

    Domain Nomor Cek Stok fixed length character string, length 6, format: [C][S][0-

    9][0-9][0-9][0-9]

    Domain Tanggal Cek Stok datetime

    Domain Kode Pegawai fixed length character string, length 6, format:

    [P][G][0-9][0-9][0-9][0-9]

    Penjualan (

     No_Cek_Stok No Cek Stok NOT NULL,

    Tgl_Cek_Stok Tanggal Cek Stok NOT NULL,

    Kode_Pegawai Kode Pegawai NOT NULL,

    PRIMARY KEY (No_Cek_Stok),

    FOREIGN KEY (Kode_Pegawai) REFERENCES Pegawai (Kode_Pegawai)

    ON UPDATE CASCADE ON DELETE NO ACTION

    ); 

    DBDL untuk Cek_Stok_Detail

    Domain Nomor Cek Stok fixed length character string, length 6, format: [C][S][0-

    9][0-9][0-9][0-9]

    Domain Kode Barang fixed length character string, length 6, format:

    [B][R][0-9][0-9][0-9][0-9]

    Domain Jumlah Sistem integer

    Domain Jumlah Fisik integer

    Domain Keterangan variable length character string, length 100

  • 8/16/2019 2011-1-00198-if 3

    61/148

    137

    Cek_Stok-Detail (

     No_Cek_Stok No Cek Stok NOT NULL,

    Kode_Barang Kode Barang NOT NULL,

    Jumlah_Sistem Jumlah Sistem NOT NULL,

    Jumlah_Fisik Jumlah Fisik NOT NULL,

    Keterangan Keterangan NOT NULL,

    PRIMARY KEY (No_Cek_Stok, Kode_Barang),

    FOREIGN KEY (No_Cek_Stok) REFERENCES Cek_Stok (No_Cek_Stok)

    ON UPDATE CASCADE ON DELETE NO ACTION

    FOREIGN KEY (Kode_Barang) REFERENCES Barang (Kode_Barang)

    ON UPDATE CASCADE ON DELETE NO ACTION

    ); 

    DBDL untuk Supplier

    Domain Kode Supplier fixed length character string, length 6, format: [S][P][0-

    9][0-9][0-9][0-9]

    Domain Nama Supplier variable length character string, length 30

    Domain Alamat Supplier variable length character string, length 100

    Domain Email Supplier variable length character string, length 30

    Supplier (

    Kode_Supp Kode Supplier NOT NULL,

     Nama_Supp Nama Supplier NOT NULL,

    Alamat_Supp Alamat Supplier NOT NULL,

  • 8/16/2019 2011-1-00198-if 3

    62/148

    138

    Kode_Bagian Kode Bagian NOT NULL,

    PRIMARY KEY (Kode_Supp),

    ON UPDATE CASCADE ON DELETE NO ACTION

    );

    DBDL untuk Purchase Order

    Domain Nomor Purchase Order fixed length character string, length 6, format:

    [P][O][0-9][0-9][0-9][0-9]

    Domain Tgl Purchase Order datetime

    Domain Kode Pegawai fixed length character string, length 6, format:

    [P][G][0-9][0-9][0-9][0-9]

    Domain Kode Supp lier fixed length character string, length 6, format:

    [S][P][0-9][0-9][0-9][0-9]

    Purchase_Order (

     No_PO Nomor Purchase Order NOT NULL,

    Tgl_PO Tanggal Purchase Order NOT NULL,

    Kode_Pegawai Kode Pegawai NOT NULL,

    Kode_Supp Kode Supplier NOT NULL,

    PRIMARY KEY (No_PO),

    FOREIGN KEY (Kode_Pegawai) REFERENCES Pegawai (Kode_Pegawai)

    ON UPDATE CASCADE ON DELETE NO ACTION

    FOREIGN KEY (Kode_Supp) REFERENCES Supplier (Kode_Supp)

    ON UPDATE CASCADE ON DELETE NO ACTION

  • 8/16/2019 2011-1-00198-if 3

    63/148

    139

    );

    DBDL untuk Purchase_Order_Detail

    Domain Kode Purchase Order fixed length character string, length 6, format:

    [P][O][0-9][0-9][0-9][0-9]

    Domain Kode Barang fixed length character string, length 6, format:

    [B][R][0-9][0-9][0-9][0-9]

    Domain Kuantitas integer

    Purchase_Order_Detail (

     No_PO Nomor Purchase Order NOT NULL,

    Kode_Barang Kode Barang NOT NULL,

    Kuantitas Kuantitas

    PRIMARY KEY (Kode_PO, Kode_Barang),

    FOREIGN KEY (Kode_PO) REFERENCES Purchase_Order (Kode_PO)

    ON UPDATE CASCADE ON DELETE NO ACTION

    FOREIGN KEY (Kode_Barang) REFERENCES Supplier (Kode_Barang)

    ON UPDATE CASCADE ON DELETE NO ACTION

    );

    DBDL untuk Pembayaran

    Domain Nomor Giro fixed length character string, length 6, format:

    [P][P][0-9][0-9][0-9][0-9]

    Domain Tgl Purchse Payment datetime

  • 8/16/2019 2011-1-00198-if 3

    64/148

    140

    Domain Kode Pegawai fixed length character string, length 6, format:

    [P][G][0-9][0-9][0-9][0-9]

    Domain Kode Supplier fixed length character string, length 6, format:

    [S][P][0-9][0-9][0-9][0-9]

    Pembayaran (

     No_PP Nomor Purchase Payment NOT NULL,

    Tgl_PP Tgl Purchase Payment NOT NULL,

    Kode_Pegawai Kode Pegawai NOT NULL,

    Kode_Supp Kode Supp NOT NULL,

    PRIMARY KEY (Kode_PP),

    FOREIGN KEY (Kode_Pegawai) REFERENCES Kode Pegawai (Kode_Pegawai)

    ON UPDATE CASCADE ON DELETE NO ACTION

    FOREIGN KEY (Kode_Supp) REFERENCES Supplier (Kode_Supp)

    ON UPDATE CASCADE ON DELETE NO ACTION

    )

    3.2.3.b Merancang Representasi Derived data

    Tujuan dari tahap ini adalah untuk menampilkan kembali bagaimana derived

    data  yang tapil pada model data logikal ke global pada target DBMS.Atribut yang

    nilainya dapat dihasilkan dengan memriksa nilai dari atribut lain dikenal dengan

    nama derived  atau calculated  attribute.ontohnya sebagai berikut:

  • 8/16/2019 2011-1-00198-if 3

    65/148

    141

    Tabel 3.10 Tabel Sales order  

     No_faktur Tgl_faktur Kode_pegawai Total_penjualan

    FP0001 5 okt 2010 PG0002 300000,00

    Tabel 3.11 Tabel Sales order Detail

     No_faktur Kode_barang kuantitas Harga_jual

    FP0001 BR0001 1 50000,00

    FP0001 BR0003 2 250000,00

    Dari contoh di atas total penjualan didapat suatu nilai dari attribute lain.Total

     penjualan di dapat pada table sales order detail yang memiliki atribut yang

    dihubungkan oleh No_faktur.sales order dengan dengan sales order detail merupakan

    suatu entury yang saling berhubungan sehingga dapat mempengaruhi atribut satu

    sama lain.Total penjualan didapat dari kuantitas x kode barang.

    3.2.3.c Merancang General  Constraint 

    Tujuan dari tahap ini yaitu merancang general constraint untuk DBMS.

    Dalam sistem ini terdapat beberapa aturan bisnis yang harus dipenuhi.

    Berikut ini adalah general constraint   yang akan dibuat untuk menjaga

    intedritas dari data y ang disimpan.

  • 8/16/2019 2011-1-00198-if 3

    66/148

    142

    •  Kuantitas barang yang dijual 

    kuantitas barang yang dijual tidak boleh melebihi jumlah stok yang tersedia

    create table sales_order(

    no_faktur char(6) NOT NULL

    tgl_faktur datetime NOT NULL

    kode_pegawai char(6) NOT NULL

    constraint [kuantitaspenjualan]

    CHECK(NOT EXIST(SELECT Jumlah_stok from Barang

    group by kode_barang

    having kuantitas>jumlah stok)),

     primary key (no_faktur),

    on update cascade on delete no action,

    foreign key(kode_pegawai) references pegawai (kode_pegawai)

    on update cascade on delete no action

    );

    3.2.3.d Menganalisis Transaksi

    Analisis transaksi bertujuan untuk lebih memahami secara fungsional

    transaksi-transaksi yang berjalan dalam basis data dan untuk menganalisi transkasi-

    transaksi penting.

    keterangan transaksi:

  • 8/16/2019 2011-1-00198-if 3

    67/148

    143

    1.  Memasukkan data pegawai

    2.  Memasukkan data barang

    3.  Memasukkan data sales order

    4.  Memasukkan data stok

    5.  memasukkan data supplier

    6.  memasukkan data purchase order

    7.  memasukkan data sales order

    8.  memasukkan data pembayaran

    9.  melakukan update/delete data pegawai

    10. melakukan update/delete data barang

    11. melakukan update/delete data konsumen

    12. melakukan update/delete data sales order

    13. melakukan update/delete data cek stok

    14. melakukan up date/delete data supplier

    15. melakukan update/delete data purchase order

    16. melakukan update/delete data p embayaran

    17. menampilkan data p egawai

    18. mencari data pegawai berdasarkan nama pegawai

    19. menampilkan data barang

    20. mencari data barang berdasarkan nama barang

    21. menampilkan data sales order

    22. mencari data sales order berdasarkan nomor faktur

  • 8/16/2019 2011-1-00198-if 3

    68/148

    144

    23. menampilakn data cek stok

    24. mencari data cek stok berdasarkan nomor cek stok

    25. mencari data cek stok berdasarkan tanggal penyesuaian

    26. menampilkan data supplier

    27. mencari data supplier berdasarkan nama supp lier

    28. menampilkan data p urchase order

    29. Mencari data purchase order berdasarkan kode purchase order

    30. menampilkan data pembayaran

    31. mencari data pembayaran berdasarkan nomor

    Tabel 3.12  Referensi Silang Transaksi Dengan Relasi

    1 2 3 4

    I R U D I R U D I R U D I R U D

    Barang x

     bagian x

     pegawai x x

    supplier

    cek_stok x x

    cek_stok_detail x x

    sales_order x x

    sales_order_detail x x

     purchase_order x

     purchase_order_detail x

     pembayaran x

    konsumen

  • 8/16/2019 2011-1-00198-if 3

    69/148

    145

    5 6 7 8

    I R U D I R U D I R U D I R U D

    Barang bagian pegawai

    supplier xcek_stok

    cek_stok_detailsales_order x

    sales_order_detail x purchase_order x x

     purchase_order_detail x

     pembayaran x xkonsumen

    910

    11

    12

    I R U D I R U D I R U D I R U D

    Barang x x bagian

     pegawai x x

    suppliercek_stok xcek_stok_detail x

    sales_order x x x xsales_order_detail x x

     purchase_order purchase_order_detail x pembayaran x

    konsumen x x

  • 8/16/2019 2011-1-00198-if 3

    70/148

    146

    13

    14

    15

    16

    I R U D I R U D I R U D I R U DBarang bagian

     pegawai x xsupplier x x x x

    cek_stok x x xcek_stok_detail x

    sales_ordersales_order_detail

     purchase_order x x x

     purchase_order_detail x pembayaran x x

    konsumen

    17

    18

    19

    20

    I R U D I R U D I R U D I R U D

    Barang x x bagian

     pegawai x xsupplier

    cek_stok xcek_stok_detail x

    sales_order xsales_order_detail x

     purchase_order x purchase_order_detail x

     pembayaran xkonsumen

  • 8/16/2019 2011-1-00198-if 3

    71/148

    147

    21

    22

    23

    24

    I R U D I R U D I R U D I R U DBarang bagian

     pegawaisupplier

    cek_stok x xcek_stok_detail x

    sales_order x xsales_order_detail x x

     purchase_order

     purchase_order_detail pembayaran

    konsumen

    25

    26

    27

    28

    I R U D I R U D I R U D I R U D

    Barang bagian

     pegawaisupplier x x

    cek_stok xcek_stok_detail

    sales_ordersales_order_detail

     purchase_order x x purchase_order_detail x

     pembayaran xkonsumen

  • 8/16/2019 2011-1-00198-if 3

    72/148

    148

    29 30 31

    I R U D I R U D I R U D

    Barang bagian pegawai

    suppliercek_stok

    cek_stok_detailsales_order

    sales_order_detail purchase_order x

     purchase_order_detail x

     pembayaran x xkonsumen

    3.2.3.e Memilih organisasi file 

      Pemilihan DBMS

    Pemilihan DBMS merupakan pemilihan DBMS yang sesuai untuk

    mendukung aplikasi basis data. Berikut ini merupakan pertimbangan pemilihan

    DBMS antara SQL Server 2005 dan Oracle 9i.

  • 8/16/2019 2011-1-00198-if 3

    73/148

    149

    Tabel 3.13 Perbandingan Platform 

    SQL Server 2005 Oracle 9i

    Hanya bekerja pada  platform  berbasis

    Windows.

    Bisa bekerja pada semua  platform  mulai

    dari platform berbasis Windows, Compaq

    Tru64, UNX, system berbasis AIX,

    sistem HP-UX, Linux Intel.

    Tabel 3.14 Perbandingan Hardware Requirements  

    Keterangan SQL Server 2005 Oracle 9i

     Processor Minimal menggunakan Pentium 600

    MHz Pentium III sampai 1 GHz.

    Untuk Intel/ platform

    kompatibel lain: Pentium

    166 MHz atau lebih.

    Untuk AIX: IBM

    RISC/6000 atau Server

    Series 

     Memory Minimal membutuhkan 512 MB

    RAM

    Untuk Windows: 128 MB

    RAM (minimum) dan 256

    MB RAM (dianjurkan)

     Hard disk Database Engine and data file,

    Replication, and Full Text Search

    (150 MB)

    140 MB pada System

     Drive  + 4.5 GB untuk the

    Oracle Home Drive (FAT)

  • 8/16/2019 2011-1-00198-if 3

    74/148

    150

     Analysis  Services  and data  file  (35

    MB)

     Reporting  Services  and    Reporting  

     Manager  (40 MB)

     Notification   Services   Engine 

    Components, Client Components

    and Rules Components (5 MB)

     Integration Services (9 MB)

    Client Components (12 MB)

     Development Tools (70 MB)

    Samples and Sample Database (390

    MB)

    atau 2.8 GB untuk The  

    Oracle   Home   Drive 

    (NTFS)

    Typical Installation :

    minimal 450 s/d 550 Mb

    Compact Installation :

    minimal 350 s/d 400 Mb

    Table 3.15 Perbandingan Dialect  SQl Server 2005 dan Oracle 9i  

     Feature SQl Server 2005 : T-SQL Oracle 9i – PL/SQL

     Indexes  B-Tree indexes B-Tree indexes, Bitmap

    indexes, Partitioned

    indexes, Function Based

    indexes, Domain indexes

    Tables  Relational tables

    Temporary tables

     Relational tables, Object

    Tables, Temporary tables

  • 8/16/2019 2011-1-00198-if 3

    75/148

    151

    Triggers  AFTER triggers,

     INSTEAD OF triggers

     BEFORE triggers, AFTER

    triggers

     Procedures T -SQL statements  PL/SQL statements, Java

     Methods, third generation

    language (3GL) routines

     Arrays Supported Not supported

    Table 3.16 Tabel Perbandingan Keterbatasan Fitur SQL Server 2005 dengan Oracle

    9i

     Feature SQl Server 2005 Oracle 9i

    Column Name Length 128 30

     Index Name Length 128 30

    Table Name Length 128 30

    View Name Length 128 30

    Stored Procedure Name

     Length

    128 30

     Mix Column per Index 16 32

     Max char() size 8000 2000

     Max varchar() size 8000 4000

     Max Column per Table 1024 1000

     Max Table Row Length 8036 255000

  • 8/16/2019 2011-1-00198-if 3

    76/148

    152

     Max Query Size 16777216 16777216

     Recursive Subqueries 40 64

    Constant String Size in

    SELECT

    16777207 4000

    Constant String Size in

    WHERE

    8000 4000

    Table 3.17 Perbandingan Harga 

     Number of CPUs SQl Server 2005

    Standart Edition

    Oracle 9i

    Standart Edition

    1 $ 5,999 $ 17,500

    2 $ 11,998 $ 35,000

    4 $ 23,996 $ 70,000

    8 $ 47,992 $ 140,000

    16 $ 95,984 $ 280,000

    32 $ 191,968 $ 560,000

    Dari data-data di atas menunjukan bahwa Oracle 9i mempunyai kemampuan

    yang lebih baik daripada SQL Server 2005, namun dari segi hardware requirements  

    dan biaya yang harus dikeluarkan untuk DBMS tersebut relatif lebih tinggi. Atas

  • 8/16/2019 2011-1-00198-if 3

    77/148

    153

     pertimbangan di atas, maka p enulis memilih SQL Server 2005 sebagai DBMS yang

    akan digunakan dalam implementasi basis data.

    3.2.3.f Memilih Index

    Tujuan pada tahap ini adalah untuk meningkatkan peforma dari sistem dengan

    menggunkan index.Berikut adalah tabel index yang mebantu dalam pencarian data

    yang sering digunakan,yaitu :

    Tabel 3.18 Tabel Index

    Entitiy Primary Key Index

    Barang Kode_Barang Idx_kode_barang

    Purchase_Order No_PO Idx_No_PO

    Sales_Order No_Faktur Idx_No_Faktur

    Konsumen Kode_Konsumen Idx_Kode_Konsumen

    3.2.3.g Mengestimasi Kapasitas Penyimpanan yang Dibutuhkan

    Tujuan dari tahap ini adalah untuk menghitung kapasitas penyimpanan yang

    dibutuhkan oleh basis data. Perkiraan kapasitas setiap tabel adalah sebagai berikut:

    Tabel 3.19 Estimasi Tabel Bagian

    Field Data Type  Ukuran

    Kode_Bagian

     Nama_Bagian

    Char

    Varchar

    4

    30

  • 8/16/2019 2011-1-00198-if 3

    78/148

    154

    Kapasitas dari Tabel Bagian adalah 34 Byte.

    Diperkirakan dalam satu tahun terjadi penambahan 1 bagian.

    Dalam satu tahun pertumbuhan dari tabel Bagian adalah 1*34=34 By te.

    Tabel 3.20 Estimasi Tabel Pegawai

    Field Data Type  Ukuran

    Kode_Pegawai

     Nama_Pegawai

    Alamat_Pegawai

    Telepon

    Password

    Kode_Bagian

    Char

    Varchar

    Varchar

    Varchar

    Varchar

    Char

    6

    30

    100

    15

    10

    4

    Kapasitas dari Tabel Pegawai adalah 165 By te.

    Diperkirakan dalam satu tahun terjadi penambahan 1 Pegawai baru.

    Dalam satu tahun pertumbuhan dari tabel Pegawai adalah 1*165=165 Byte.

  • 8/16/2019 2011-1-00198-if 3

    79/148

    155

    Tabel 3.21 Estimasi Tabel Konsumen

    Field Data Type  Ukuran

    Kode_Konsumen

     Nama_Konsumen

    Alamat_Konsumen

    Telepon

    Char

    Varchar

    Varchar

    Varchar

    6

    30

    100

    15

    Kapasitas dari Tabel Konsumen adalah 151 Byte.

    Diperkirakan dalam satu bulan terdapat penambahan 100 konsumen.

    Dalam satu tahun pertumbuhan dari tabel Konsumen adalah 1*12*100*151=181200

    Byte.

    Tabel 3.22 Estimasi Tabel Barang

    Field Data Type  Ukuran

    Kode_Barang

     Nama_Barang

    Harga_Jual

    Harga_Beli

    Minimal_Stok

    Jumlah_Stok

    Char

    Varchar

     Numeric(10,2)

     Numeric(10,2)

    Integer

    Integer

    6

    30

    12

    12

    5

    5

  • 8/16/2019 2011-1-00198-if 3

    80/148

    156

    Kapasitas dari Tabel Barang adalah 70 Byte.

    Diperkirakan dalam satu tahun terjadi penambahan 20 barang baru.

    Dalam satu tahun pertumbuhan dari tabel Barang adalah 20*70=1400 Byte.

    Tabel 3.23 Estimasi Tabel Sales_Order

    Field Data Type  Ukuran

     No_Faktur

    Tgl_Faktur

    Kode_Pegawai

    Kode_Konsumen

    Char

    Datetime

    Char

    Char

    6

    8

    6

    4

    Kapasitas dari Tabel Sales_Order adalah 24 Byte.

    Diperkirakan dalam satu hari terjadi 20 transaksi.

    Dalam satu tahun pertumbuhan dari tabel Sales_Order adalah 20*30*12*24= 172800

    Byte.

  • 8/16/2019 2011-1-00198-if 3

    81/148

    157

    Tabel 3.24 Estimasi Tabel Sales_Order_Detail

    Field Data Type  Ukuran

     No_Faktur

    Kuantitas

    Kode_Barang

    Char

    Integer

    Char

    6

    50

    6

    Kapasitas dari Tabel Sales_Order_Detail adalah 62 Byte.

    Diperkirakan dalam satu hari terjadi 20 transaksi.

    Diperkirakan set iap t ransaksi terdapat 5 barang.

    Dalam satu tahun pertumbuhan dari tabel Sales_Order_Detail adalah

    20*5*30*12*62= 2232000 Byte.

    Tabel 3.25 Estimasi Tabel Cek_Stok

    Field Data Type  Ukuran

     No_Cek_Stok

    Tgl_Cek_Stok

    Kode_Pegawai

    Char

    Datetime

    Char

    6

    8

    6

    Kapasitas dari Tabel Cek_Stok adalah 20 Byte.

    Diperkirakan dalam satu hari terjadi 20 transaksi.

  • 8/16/2019 2011-1-00198-if 3

    82/148

    158

    Dalam satu tahun pertumbuhan dari tabel Cek_Stok adalah 20*30*12*20= 144000

    Byte.

    Tabel 3.26 Estimasi Tabel Cek_Stok_Detail

    Field Data Type  Ukuran

     No_Cek_Stok

    Jumlah_Stok

    Kode_Barang

    Char

    Integer

    Char

    6

    5

    6

    Kapasitas dari Tabel Tabel Cek_Stok_Detail adalah 17 Byte.

    Diperkirakan dalam satu hari terjadi 20 transaksi.

    Diperkirakan set iap t ransaksi terdapat 5 jenis barang.

    Dalam satu tahun pertumbuhan dari tabel Tabel Cek_Stok_Detail adalah

    20*5*30*12*17= 612 Kilo byte.

  • 8/16/2019 2011-1-00198-if 3

    83/148

    159

    Tabel 3.27 Estimasi Tabel Supplier

    Field Data Type  Ukuran

    Kode_Supp

     Nama_Supp

    Alamat_Supp

    Telepon

    Char

    Varchar

    Varchar

    Varchar

    6

    30

    100

    15

    Kapasitas dari Tabel Supplier adalah 151 Byte.

    Diperkirakan dalam satu tahun terjadi penambahan 5 supplier baru.

    Dalam satu tahun pertumbuhan dari tabel Supplier adalah 5*151 = 755 Byte.

    Tabel 3.28 Estimasi Tabel Purchase_Order

    Field Data Type  Ukuran

     No_PO

    Tgl_PO

    Kode_Pegawai

    Kode_Supp

    Char

    Datetime

    Char

    Char

    6

    8

    6

    6

    Kapasitas dari Tabel Purchase_Order adalah 26 Byte.

    Diperkirakan dalam satu bulan terjadi 300 transaksi.

  • 8/16/2019 2011-1-00198-if 3

    84/148

    160

    Dalam satu tahun pertumbuhan dari tabel Purchase_Order adalah

    1*300*12*26=93600 Byte.

    Tabel3.29 Estimasi Tabel Purchase_Order_Detail

    Field Data Type  Ukuran

     No_PO

    Kuantitas

    Kode_Barang

    Char

    Integer

    Char

    6

    28

    6

    Kapasitas dari Tabel Purchase_Order_Detail adalah 40 Byte.

    Diperkirakan dalam satu bulan terjadi 300 transaksi.

    Dalam satu tahun pertumbuhan dari tabel Purchase_Order_Detail adalah

    1*300*12*40=144000 Byte.

  • 8/16/2019 2011-1-00198-if 3

    85/148

    161

    Tabel 3.30 Estimasi Tabel Pembayaran

    Field Data Type  Ukuran

     No_Giro

    Tgl_Giro

    Kode_Supp

    Kode_Pegawai

     No_PO

    Char

    Datetime

    Char

    Char

    Char

    6

    8

    6

    6

    6

    Kapasitas dari Tabel Pembayaran adalah 32 Byte.

    Diperkirakan dalam satu bulan terjadi 300 transaksi.

    Dalam satu tahun pertumbuhan dari tabel Pembayaran adalah 1*300*12*32=115200

    Byte.

    Tabel 3.31 Estimasi Disk Space yang Dibutuhkan

    Tabel Kapasitas ysng dibutuhkan dalam 1 tahun

    Bagian 34 Byte

    Pegawai 165 Byte

    Konsumen 181200 Byte

    Barang 1400 Byte

    Sales_Order 172800 Byte

    Sales_Order_Detail 2232000 Byte

    Cek_Stok 144000 Byte

  • 8/16/2019 2011-1-00198-if 3

    86/148

    162

    Cek_Stok_Detail 612000 Byte

    Supplier 755 Byte

    Purchase_Order 93600 Byte

    Purchase_Order_Detail 144000 Byte

    Pembayaran 115200 Byte

    3.2.3.h Merancang User Interface

    Tujuan dari tahap ini adalah merancang user views yang telah teredintifikasi

    selama tahap requirements collection and analysis data dalam siklus pengembangan

     basis data.

    View Pegawai

    CREATE VIEW view_pegawai

    AS SELECT h.kode_pegawai,h.nama_pegawai, h.alamat_pegawai, d.telp_pegawai,

    h.password, b.kode_bagian

    FROM pegawai h, telp_p egawai d , bagian b

    WHERE h.kode_pegawai=d.kode_pegawai AND h.kode_bagian=b.kode_bagian

    View Konsumen

    CREATE VIEW view_konsumen

    AS SELECT h.kode_konsumen, h.nama_konsumen, h.alamat_konsumen,

    d.telp_konsumen.

  • 8/16/2019 2011-1-00198-if 3

    87/148

    163

    FROM konsumen h, telp_konsumen d

    WHERE h.kode_konsumen=d.kode_konsumen

    View Supplier

    CREATE VIEW view_supplier

    AS SELECT h.kode_supp, h.nama_supp, h.alamat_supp, d.telp_supp

    FROM supplier h, telp_supp d

    WHERE h.kode_supp=d.kode_supp

    View Sales_Order

    CREATE VIEW sales_order

    AS SELECT h.no_faktur, h.tgl_faktur, h.kode_pegawai, h.kode_konsumen

    FROM sales_order h, sales_order_detail d, pegawai p, barang b

    WHERE h.no_faktur = d.no_faktur AND h.kode_pegawai = p.kode_pegawai AND

    d.kode_barang = b.kode_barang

    GROUP BY h.no_faktur, h.tgl_faktur, h.kode_pegawai, h.kode_konsumen

    View Sales_Order_Detail

    CREATE VIEW view_sales_order_detail

    AS SELECT h.no_faktur, b.kode_barang, d.kuantitas

    FROM sales_order_detail d, barang b,sales_order h

    WHERE d.kode_barang=b.kode_barang AND h.no_faktur=d.no_faktur

  • 8/16/2019 2011-1-00198-if 3

    88/148

    164

    View Cek_Stok

    CREATE VIEW view_cek_stok

    AS SELECT h.no_cek_stok, h.tgl_cek_stok, h.kode_pegawai

    FROM cek_stok h, pegawai p

    WHERE h.kode_pegawai = p.kode_pegawai

    View Cek_Stok_Detail

    CREATE VIEW view_cek_stok_detail

    AS SELECT d.kode_barang, b.n ama_barang, d.jumlah_stok,

    FROM cek_stok_detail d, barang b, cek_stok h

    WHERE d.kode_barang=b.kode_barang AND h.no_cek_stok=d.no_cek_stok

    View Purchase_Order

    CREATE VIEW view_p urchase_order

    AS SELECT h.no_PO, h.tgl_PO, h.kode_pegawai, h.kode_supp

    FROM Purchase_Order h, supplier s, pegawai p

    WHERE h.kode_supp = s.kode_supp AND h.kode_pegawai = p .kode_pegawai

    View Purchase_Order_Detail

    CREATE VIEW view_purchase_order_detail

    AS SELECT h.no_PO, d.kode_barang, d.kuantitas

    FROM purchase_order_detail d, barang b, purchase_order h

    WHERE d.kode_barang=b.kode_barang AND h.no_PO=d.no_PO

  • 8/16/2019 2011-1-00198-if 3

    89/148

    165

    3.2.3.i Merancang Mekanisme Keamanan

    Tujuan dari tahap ini adalah untuk merancang mekanisme keamanan

    dari basis data. Adapun mekanisme keamanan yang dirancang untuk basis

    data adalah sebagai berikut:

    a)  Keamanan Sistem

    Keamanan Sistem diterapkan dengan menggunakan authentikasi user ,

    yaitu dengan menggunakan halaman login  sebelum masuk ke dalam

    sistem yang dirancang pada aplikasi. Dari halaman login, user  diminta

    memasukkan username dan password . Selain itu, juga diatur agar user  

    hanya bisa mengakses modul-modul tertentu dalam program sesuai

    dengan haknya.

     b)  Keamanan Data

    Keamanan data berhubungan dengan relasi basis data (tabel atau

    relasi) dan aksi user   terhadap tersebut misalnya aksi pemilihan,

     pengisian, pengubahan dan penghapusan data. Keamanan data ini

    diterapkan menggunakan autohorisasi user   dengan tujuan untuk

    membatasi hak akses user  terhadap relasi yang ada.

  • 8/16/2019 2011-1-00198-if 3

    90/148

    166

    Table 3.32 Perancangan Mekanisme Keamanan  

    User Pemilik Kepala Bagian Bagian

    Bengkel Bengkel Front Desk Spare Part

    Relasi I R U D I R U D I R U D I R U D

    Barang x x x x x x x x

    Bagian x x x x x

    Pegawai x x x x x x x

    Konsumen x x x x x x x x x x

    Supplier x x x x x x

    Sales_Order x x x x x x x

    Sales_Order_ x x x x x x x

    Detail

    Cek_Stok x x x x x x

    Cek_Stok_ x x x x x x x x

    Detail

    Purchase_ x x x x x x x

    Order

    Purchase_ x x x x x x

    Order_Detail

    Pembayaran x x x x x x

    Keterangan: I = Insert   R = Read   U = Update  D = Delete

  • 8/16/2019 2011-1-00198-if 3

    91/148

    167

    3.3 Perancangan Aplikasi

    Berikut ini merupakan perancangan aplikasi yang menggunakan dan

    memproses basis data. Perancangan aplikasi ini meliputi perancangan struktur menu,

     pembuatan State Transition Diagram(STD), spesifikasi proses serta perancangan

    input dan output .

    3.3.1 Struktur Menu

    Berikut ini merupakan struktur menu dari aplikasi yang dibuat:

    Halaman Login

    Fi le Insert Tr ans action

    Halaman Utam a

    ChangePassword

    Exit

    Product

    Pegawai

    Supplier 

    Front Desk

    Pembelian

    Penjualan

    Repor t

    Pembelian

    Penjualan

    Persediaan

    LogoutPurchase

    Order 

    Konsumen

     

    Gambar 3.11  Struktur menu rancangan aplikasi

  • 8/16/2019 2011-1-00198-if 3

    92/148

    168

    3.3.2 State Transition Diagram(STD)

    State Transition Diagram merupakan diagram yang menjelaskan aliran suatu state ke

    state yang lain dalam sebuah aplikasi.

    Berikut ini merupakan STD dari aplikasi yang dirancang:

    Gambar 3.12  STD Halaman Login

  • 8/16/2019 2011-1-00198-if 3

    93/148

    169

    Halaman Utama

    File

    Insert

    Transaction

    Report

    Klik ‘File’ _________________________

    Tampilkan menu File

    Klik ‘Insert’

    Tampilkan menu Insert

    Klik ‘Transaction’

    Tampilkan menu Transaction

    Klik ‘Report’

    Tampilkan menu Report

     _________________________

     _________________________

     _________________________

     

    Gambar 3.13  STD Halaman Utama

  • 8/16/2019 2011-1-00198-if 3

    94/148

    170

    Gambar 3.14  STD Halaman File

    Gambar 3.15  STD Halaman Change Password  

  • 8/16/2019 2011-1-00198-if 3

    95/148

    171

    Insert

    Barang

    Supplier 

    Pegawai

    Klik ‘Barang’ _________________________

    Tampilkan halaman b arang

    Klik ‘Supplier’

    Tampilkan halaman supplier 

    Klik ‘Pegawai,

    Tampilkan halaman pegawai

     _________________________

     _________________________

    Konsumen

    Klik ‘Konsumen’ _________________________

    Tampilkan halaman

    konsumen

     Gambar 3.16  STD Halaman Insert  

  • 8/16/2019 2011-1-00198-if 3

    96/148

    172

    Tambah Barang Eror Update Barang Eror  

    Tambah Barang Barang Update Barang

    Tambah Data Berhasil

    Hapus Barang

    Update Barang Berhasil

    Halaman Utama

    Klik ‘Simpan’ ____________

    Tambah dataerror, tampi lkan

    pesankesalahan

    Kl ik ‘OK’ ____________

    Tampilkanhalaman

    tambah Barang

    Masukkan katakunci ____________

    Tampilkanhalaman Barang

    berisi dataBarang yang

    dicari

    Klik ‘TampilSemua‘ ____________

    Tampi lkan

    halaman Barangberisi semuadata Barang

    Klik Tambah‘’ ____________

    Tampilkanhalaman

    tamba h Barang

    Klik ‘Batal’ ____________

    Tampilkanhalaman Ba rang

    Klik ‘Simpan’ ____________

    Tamb ah databerhasil,

    tampilkan p esanberhasil

    Kl ik ‘OK’ ____________

    Tampilkan

    halaman Barang

    Klik ‘Hapus’ ____________

    Tampilkanhalaman hapus

    Barang

    Klik ‘Yes’ ____________

    Hapus d atapegawai,

    Tampilkanhalaman Ba rang

    Klik ‘No’ ____________

    Tampilkanhalaman Barang

    Klik ‘Tutup’ ____________

    Tampilkanhalaman utama

    Klik ‘Barang’ ____________

    Tampilkanhalaman Barang

    Klik ‘Tutup’ ____________

    Tampilkanhalaman utama

    Klik ‘Tutup’ ____________

    Tampilkan

    halaman u tama

    Klik ‘OK’ ____________

    Tampilkanhalaman Barang

    Klik ‘Batal’ ____________

    Tampilkanhalaman Barang

    Klik ‘Update’ ____________

    Tampilkanhalaman Update

    Barang

    Klik ‘OK’ ____________

    Tampilkan

    halaman U pdateBarang

    Klik ‘Simpan’ ____________Update data

    error, tampilkanpesan

    kesalahan

    Klik ‘Simpan’ ____________

    Update databerhasil,

    tampilkan p esanberhasil

    Tambah Stok

    Klik ‘TambahStok’ ____________

    Tampilkanhalaman Tambah

    Stok Barang

    Klik ‘OK’ ____________

    Tampilkanhalaman Ba rang

    Klik ‘Cancel ’ ____________

    Tampi lkanhalaman Ba rang

     Gambar 3.17  STD Halaman Barang

  • 8/16/2019 2011-1-00198-if 3

    97/148

    173

    Tambah Supplier Eror  Update Supplier Eror 

    Tambah Supplier  Supplier Update Supplier  

    Tambah Data Berha sil

    Hapus Suppl ier Update Supplier

    Berhasil

    Halaman Utama

    Klik ‘Simpan’ ____________

    Tambah dataerror, tampilkan

    pesankesalahan

    Kl ik ‘OK’ ____________

    Tampilkanhalaman

    tambah supplier 

    Masukkan katakunci ____________Tampilkanhalaman

    supplier berisidata supplieryang d icari

    Klik ‘TampilSemua‘ ____________Tampilkanhalaman

    supplier berisisemua data

    supplier 

    Klik T ambah‘’ ____________

    Tampilkanhalaman

    tambah supplier 

    Klik ‘Batal’ ____________

    Tampilkanhalamansupplier 

    Klik ‘Simpan’ ____________

    Tambah data

    berhasil,tampilkan pesanberhasil

    Kl ik ‘OK’ ____________

    Tampilkanhalamansupplier 

    Kl ik ‘Hapus’ ____________

    Tampilkanhalaman hapus

    supplier 

    Klik ‘Yes’ ____________

    Hapus datapegawai,

    Tampilkanhalaman supplier 

    Klik ‘No’ ____________

    Tampilkanhalaman supplier 

    Klik ‘Tutup’ ____________

    Tampilkanhalaman utama

    Klik ‘Supplier’ ____________

    Tampilkanhalaman supplier 

    Kl ik ‘ Tutup’ ____________

    Tampilkanhalaman u tama

    Kl ik ‘ Tutup’ ____________

    Tampilkanhalaman u tama

    Klik ‘OK’ ____________

    Tampilkanhalamansupplier 

    Klik ‘Batal’ ____________

    Tampilkanhalamansupplier 

    Klik ‘Update’ ____________

    Tampilkanhalaman Update

    supplier 

    Klik ‘OK’ ____________

    Tampilkanhalaman Update

    supplier 

    Klik ‘Simpan’ ____________

    Update dataerror, tampilkan

    pesankesalahan

    Klik ‘Simpan’ ____________

    Update databerhasil ,

    tampi lkan pesanberhasil

     Gambar 3.18  STD Halaman Supplier  

  • 8/16/2019 2011-1-00198-if 3

    98/148

    174

    Tambah Pegawai Eror  Update Pegawai Eror 

    Tambah Pe gawai Pegawai Update Pegawai

    Tambah Data Berhasi l

    Hapus PegawaiUpdate Pegawai

    Berhasil

    Halaman U tama

    Klik ‘Simpan’ ____________

    Tambah dataerror, tampilkan

    pesankesalahan

    Klik ‘OK’ ____________

    Tampilkanhalamantambah

    Pegawai

    Masukkan katakunci ____________Tampilkanhalaman

    Pegawai berisidata Pegawai

    yang dicar i

    Kl ik ‘TampilSemua‘ ____________Tampilkanhalaman

    Pegawai b erisisemua data

    Pegawai

    Klik Tambah‘’ ____________

    Tampilkanhalamantambah

    Pegawai

    Kl ik ‘Batal’ ____________

    TampilkanhalamanPegawai

    Klik ‘Simpan’ ____________

    Tambah databerhasi l,

    tampilkan pesanberhasil

    Klik‘OK’ ____________

    TampilkanhalamanPegawai

    Klik ‘Hapus’ ____________

    Tampilkanhalaman hapus

    Pegawai

    Klik ‘Yes’ ____________

    Hapus datapegawai,

    Tampilkanhalaman Pegawai

    Kl ik ‘No’ ____________

    Tampilkanhalaman Pegawai

    Klik ‘Tutup’ ____________

    Tampilkanhalaman u tama

    Klik ‘Pegawai’ ____________

    Tampilkanhalaman Pegawai

    Klik ‘Tutup’ ____________

    Tampilkanhalaman utama

    Klik ‘Tutup’ ____________

    Tampilkanhalaman utama

    Klik‘OK’ ____________

    TampilkanhalamanPegawai

    Klik ‘Batal’ ____________

    TampilkanhalamanPegawai

    Kl ik ‘Update’ ____________

    Tampilkanhalaman Up date

    Pegawai

    Klik ‘OK’ ____________

    Tampilkanhalaman Update

    Pegawai

    Klik ‘Simpan’ ____________

    Update dataerror, tampilkan

    pesankesalahan

    Klik ‘Simpan’ ____________

    Update databerhasil,

    tampilkan pesanberhasil

     Gambar 3.19  STD Halaman Pegawai

  • 8/16/2019 2011-1-00198-if 3

    99/148

    175

    Transaction

    Front Desk

    Pembelian

    Penjualan

    Klik ‘Front Desk’ _________________________

    Tampilkan halaman FrontDesk

    Klik ‘Pembelian’

    Tampilkan halamanpembelian

    Klik ‘Penjualan’

    Tampilkan halamanpenjualan

     _________________________

     _________________________

    Purchase Order 

    Klik ‘Purchase Order’

    Tampilkan halaman

    Purchase Order 

     _________________________

     Gambar 3.20  STD Halaman Transaction  

  • 8/16/2019 2011-1-00198-if 3

    100/148

    176

    Gambar 3.21  STD Halaman Front Desk

  • 8/16/2019 2011-1-00198-if 3

    101/148

    177

    Gambar 3.22  STD Halaman Front Desk

  • 8/16/2019 2011-1-00198-if 3

    102/148

    178

    Gambar 3.23  STD Halaman Pembelian

  • 8/16/2019 2011-1-00198-if 3

    103/148

    179

    Gambar 3.24  STD Halaman Penjualan

  • 8/16/2019 2011-1-00198-if 3

    104/148

    180

    Pembelian

    Persediaan

    Penjualan

    Report

    Klik ‘Pembelian’ _________________________

    Tampilkan halaman LaporanPembelian

    Klik ‘Penjualan’ _________________________

    Tampilkan halaman LaporanPenjualan

    Klik ‘Persediaan’ _________________________

    Tampilkan halaman LaporanPersediaan

    Gambar 3.25  STD Halaman Laporan

  • 8/16/2019 2011-1-00198-if 3

    105/148

    181

    Gambar 3.26  STD Halaman Laporan Pembelian

  • 8/16/2019 2011-1-00198-if 3

    106/148

    182

    Gambar 3.27  STD Halaman Laporan Penjualan

  • 8/16/2019 2011-1-00198-if 3

    107/148

    183

    Gambar 3.28  STD Halaman Laporan Persediaan

  • 8/16/2019 2011-1-00198-if 3

    108/148

    184

    3.3.3 Pseudocode 

    Tahap ini akan dirancang  pseusocode  untuk menggambarkan alur

     jalannya aplikasi. Berikut ini psedocode dari aplikasi yang dibuat :

    Halaman login