1 restrukturisasi basis data distribution planning

16
1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING SYSTEM DI PT. XYZ 1 Anna Setiyani 2 Dr. Asep Juarna, SSi, MKom Program Pasca Sarjana Universitas Gunadarma 1 [email protected] 2 [email protected] ABSTRAK Tujuan penelitian ini adalah untuk menormalkan kembali struktur basis data rusak, yang menyebabkan restrukturisasi basis data harus segera dilakukan untuk menanggulangi informasi yang tidak akurat. Restrukturisasi basis data hanya berfokus pada tabel-tabel transaksi utama yang berkaitan dengan proses bisnis pada aplikasi. Tabel-tabel transaksi tersebut akan terdekomposisi menjadi tabel-tabel master dan tabel transaksi. Struktur basis data baru akan menjadi lebih sederhana dan efisien, karena tabel-tabel yang tidak berhubungan dengan proses bisnis utama akan dihilangkan dari struktur. Restrukturisasi basis data ini menggunakan Microsoft SQL Server 2005 sebagai platform sistem basis datanya. Kata Kunci : Restrukturisasi Basis Data, SQL SERVER 2005, Aplikasi Desktop PENDAHULUAN Pada era informasi ini kegiatan bisnis suatu organisasi tidak terlepas dari peran Teknologi Informasi (TI). TI merupakan sarana andalan guna memenangkan persaingan dalam industri, membantu organisasi dalam mewujudkan efisiensi proses back office, meningkatkan kualitas layanan kepada konsumen, membantu mengambil keputusan, merencanakan ke depan, memperluas pasar, dan memasarkan produk. PT. XYZ merupakan salah satu perusahaan trading dan distribusi terbesar di Indonesia, dengan pengalaman lebih dari empat dekade menangani komoditas besar. PT. XYZ juga merupakan perusahaan produsen sorbitol dan turunan tepung terbesar di Indonesia, dengan pabrik yang berada di Indonesia dan Cina, dan sudah diekspor ke banyak negara di dunia dan pelanggan mancanegara. Distribution Planning System (DPS) atau Sistem Perencanaan Distribusi adalah sistem untuk mengatur kegiatan perencanaan dan pelaksanaan distribusi barang dari gudang ke pelanggan secara realtime. DPS secara fungsionalitas dikhususkan untuk membantu departemen distribusi di PT. XYZ untuk mengatur kegiatan distribusi, supaya semua kegiatan pendistribusian barang tercatat lebih teratur dan efisien. Selain itu, data yang dihasilkan DPS juga dapat digunakan oleh departemen lain di PT. XYZ guna menghasilkan laporan-laporan analisis yang dapat menunjang keputusan manajemen strategis untuk mengatur langkah-langkah bisnis di masa depan.

Upload: phungnhu

Post on 31-Dec-2016

225 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

1

RESTRUKTURISASI BASIS DATADISTRIBUTION PLANNING SYSTEM

DI PT. XYZ

1Anna Setiyani2Dr. Asep Juarna, SSi, MKom

Program Pasca Sarjana Universitas [email protected]

[email protected]

ABSTRAK

Tujuan penelitian ini adalah untuk menormalkan kembali struktur basis data rusak, yangmenyebabkan restrukturisasi basis data harus segera dilakukan untuk menanggulangiinformasi yang tidak akurat. Restrukturisasi basis data hanya berfokus pada tabel-tabeltransaksi utama yang berkaitan dengan proses bisnis pada aplikasi. Tabel-tabel transaksitersebut akan terdekomposisi menjadi tabel-tabel master dan tabel transaksi. Strukturbasis data baru akan menjadi lebih sederhana dan efisien, karena tabel-tabel yang tidakberhubungan dengan proses bisnis utama akan dihilangkan dari struktur. Restrukturisasibasis data ini menggunakan Microsoft SQL Server 2005 sebagai platform sistem basisdatanya.Kata Kunci : Restrukturisasi Basis Data, SQL SERVER 2005, Aplikasi Desktop

PENDAHULUANPada era informasi ini kegiatan bisnis suatu organisasi tidak terlepas dari peranTeknologi Informasi (TI). TI merupakan sarana andalan guna memenangkan persaingandalam industri, membantu organisasi dalam mewujudkan efisiensi proses back office,meningkatkan kualitas layanan kepada konsumen, membantu mengambil keputusan,merencanakan ke depan, memperluas pasar, dan memasarkan produk.

PT. XYZ merupakan salah satu perusahaan trading dan distribusi terbesar di Indonesia,dengan pengalaman lebih dari empat dekade menangani komoditas besar. PT. XYZ jugamerupakan perusahaan produsen sorbitol dan turunan tepung terbesar di Indonesia,dengan pabrik yang berada di Indonesia dan Cina, dan sudah diekspor ke banyak negaradi dunia dan pelanggan mancanegara.

Distribution Planning System (DPS) atau Sistem Perencanaan Distribusi adalah sistemuntuk mengatur kegiatan perencanaan dan pelaksanaan distribusi barang dari gudang kepelanggan secara realtime. DPS secara fungsionalitas dikhususkan untuk membantudepartemen distribusi di PT. XYZ untuk mengatur kegiatan distribusi, supaya semuakegiatan pendistribusian barang tercatat lebih teratur dan efisien. Selain itu, data yangdihasilkan DPS juga dapat digunakan oleh departemen lain di PT. XYZ gunamenghasilkan laporan-laporan analisis yang dapat menunjang keputusan manajemenstrategis untuk mengatur langkah-langkah bisnis di masa depan.

Page 2: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

2

Beberapa permasalahan yang timbul setelah DPS dipakai adalah :1. Utilitas dan kemampuan Microsoft SQL Server 2005 dalam indexing data, yang

memungkinkan untuk mengakses data masif dalam waktu cepat dan efisien,tidak maksimal.

2. Tidak dapat melakukan migrasi data, pada saat pembaruan sistem basis data dariMicrosoft SQL Server 2000 ke Microsoft SQL Server 2005, karena tidak adanyaprimary key pada struktur basis data lama. Sementara, Microsoft SQL Server2005 mengharuskan adanya primary key pada tiap tabelnya untuk memudahkanmengatur relationship antar tabel dan indexing dalam mengakses data lebihcepat. Kecepatan proses data berkurang dengan tidak adanya primary key dalamfisik basis data.

3. Akurasi datanya diragukan karena banyaknya data yang bernilai null, terjadinyaduplikasi data, dan redundansi data. Keadaan ini mengakibatkan laporan daninformasi yang disajikan menjadi tidak valid.

4. Ada beberapa tabel dan kolom yang sudah tidak terpakai lagi atau diperbaharui,sehingga timbul kerancuan dan duplikasi data.

5. Beban kerja server karena sistem basis data tidak terstruktur dengan baiksehingga mengakibatkan terhambatnya kinerja sistem dan bisnis.

Berdasarkan fakta-fakta yang ada, maka beberapa masalah yang dapat dirumuskanadalah membangun DPS dengan kriteria sebagai berikut:

1. Perubahan struktur tabel dan kolom oleh administrator menimbulkan masalahseperti tabel yang tidak jelas penggunaannya, kolom yang sudah tidak terpakailagi, dan lain-lain.

2. Restrukturisasi sistem basis data DPS lama ke DPS baru.3. Mendokumentasikan struktur basis data DPS dengan baik.4. Merampingkan atau menambahkan fungsi baru ke dalam sistem basis data DPS

yang baru agar sesuai dengan proses bisnis yang sedang berjalan di AKR.5. Implementasi struktur basis data baru menggantikan struktur sistem basis data

lama.

Tujuan penelitian ini adalah mengembalikan kenormalan tabel dengan membuangkelemahan-kelemahan dan kesalahan-kesalahan yang ada pada sistem basis data yangsedang berjalan. Selain itu, DPS dapat dimanfaatkan semaksimal mungkin sebagaisistem pendukung kegiatan distribusi dan juga sebagai business core PT. XYZ. Hasillain yang diharapkan dengan adanya restrukturisasi dan refactoring adalah untukmempermudah pengguna dalam pemanfaatan DPS. Jika dilihat dari sisi pengembangperangkat lunak DPS, sistem yang sudah tersusun dengan baik diharapkan akan lebihmudah dalam hal perawatan dan pengembangan sistem.

TINJAUAN PUSTAKASistem Basis DataSistem basis data adalah suatu sistem penyusunan dan pengelolaan data denganmenggunakan komputer yang bertujuan untuk menyimpan atau merekam sertamemlihara data operasional lengkap suatu organisasi/perusahaan, sehingga mampumenyediakan informasi yang optimal yang diperlukan pemakai untuk kepentinganproses pengambilan keputusan (Ramakhrisna dan Gehrke, 2002).

Page 3: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

3

Definisi basis data (database) adalah kumpulan data logis yang saling terhubung danmempunyai deskripsi data yang sama, didesain untuk memenuhi kebutuhan informasi didalam sebuah organisasi (Pressman, 2005). Properti basis data meliputi :

1. Kumpulan data yang terstruktur2. Logically coherent – mempunyai makna3. Inherent meaning – informasi versus data4. Intended user group(s) – tujuan yang spesifik5. Merepresentasikan dunia nyata

Beberapa model basis data yang telah terbentuk pada masa sekarang antara lain :1. Relational Model. Codd memperkenalkan model ini pada tahun 1970 dan

merupakan salah satu model DBMS yang masih dipakai sampai sekarang.2. The Entity Relationship Model (ER-Model). Pertama kali diperkenalkan oleh

Chen pada tahun 1976. Model ini menggunakan pendekatan secara umum untukmempresentasikan data dan sangat membantu dalam perancangan sistem basisdata relasional.

3. The Object Oriented Model. Pengembangan model basisdata yang menerapkankonsep berorientasi objek. Model ini belum banyak digunakan, karena masihterdapat kesulitan dalam penerapannya di dunia nyata.

Sistem Manajemen Basis DataSistem Manajemen Basis Data (SMBD) adalah perangkat lunak yang menangani semuapengaksesan basis data dan memiliki fasilitas membuat, mengakses, memanipulasi danmemelihara basis data (Ramakhrisna dan Gehrke, 2002). Adapun fungsi SMBD antaralain :

1. Data Definition, SMBD harus dapat mengolah pendefinisian data.2. Data Manipulation, SMBD harus dapat menangani permintaan dari pemakai

untuk mengakses data.3. Data Security & Integrity, SMBD harus dapat memeriksa security dan integritas

data yang didefinisikan oleh administrator basis data.4. Data Recovery & Concurency, SMBD harus dapat menangani kegagalan-

kegagalan pengaksesan basis data yang dapat disebabkan oleh kesalahan sistem,kerusakan disk, dsb.

5. Data Dictionary, SMBD harus mempunyai kamus data.6. Performance, SMBD harus menangani unjuk kerja dari semua fungsi seefisien

mungkin.

SQL ServerMicrosoft SQL Server adalah salah satu produk sistem manajemen basis data relasional(RDBMS). Bahasa Query utamanya adalah Transact-SQL yang merupakanimplementasi dari SQL standar ANSI/ISO yang digunakan untuk Microsoft dan Sybase.

SQL Server 2005 merupakan edisi terbaru setelah SQL Server 2000, dan predecessorSQL Server 2008, serta merupakan bagian dari seri sistem manajamen basis datarelasional Microsoft SQL Server. SQL Server 2005 mempunyai banyak fitur yang dapatmembantu untuk mengatur basis data relasional, dan dalam beberapa edisinyamenambah fungsionalitas penting dalam hal business intelligence. Tentunya

Page 4: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

4

kemampuan SQL Server 2005 lebih lengkap dan menunjang usaha kecil untuk memilikisistem basis data dengan harga terjangkau.

Komponen dari SQL Server 2005 adalah:1. SQL Server Configuration Manager, seorang administrator basis data yang

mengatur komputer untuk akses basis data adalah pengguna utama untuk alat ini.Kegunaan dari tool ini adalah :

a. Mengatur service-service yang berjalan pada background sistem.b. Pengatur jaringan data yang aktif dipakai untuk transaksi data.

2. SQL Server Management Studio, SQL Server Management Studio secara garisbesar merupakan rumah tempat mengatur dan menjalankan SQL Server yangmempunyai antarmuka pengguna yang sangat mudah dimengerti dan digunakan.

RestrukturisasiRestrukturisasi adalah proses modifikasi terhadap source code dan/atau data agar terjadipeningkatan fungsionalitas di masa yang akan datang (Sommerville, 2005). Jenis-jenisrestrukturisasi dapat dibagi menjadi beberapa bagian, yaitu:

1. Restrukturisasi dokumen, yaitu melakukan perubahan struktur dokumen yangada dengan beberapa alasan, antara lain pemutakhiran dokumen.

2. Restrukturisasi kode, yaitu melakukan perubahan terhadap struktur kodeprogram perangkat lunak untuk meningkatkan fungsionalitasnya danmenghasilkan kode yang berkualitas tinggi.

3. Restrukturisasi basis data, yaitu melakukan perubahan terhadap struktur dataperangkat lunak untuk meningkatkan fungsionalitasnya

Restrukturisasi Basis DataTujuan utama dari restrukturisasi basis data adalah melakukan struktur ulang terhadapbasis data guna mendapatkan lingkungan data yang teratur dan tersusun dengan baik.Proses ini melibatkan analisa dan reorganisasi terhadap struktur data (kadang nilai-nilaidata), bisa merupakan bagian dari proses perpindahan dari sistem file-based ke sebuahlingkungan DBMS, atau perubahan dari DBMS satu ke DBMS lainnya.

Pendekatan yang dapat dilakukan untuk melakukan restrukturisasi data, antara lain:1. Data Cleanup, yaitu melakuakn penghapusan duplikasi data dan data redundan

guna meningkatkan kulitas datanya.2. Data Extension, yaitu data dan program yang terhubung direkayasa ulang untuk

menghilangkan kelemahan/batasan yang ada di proses data. Hal inimembutuhkan perubahan terhadap program untuk menambah panjang field-nya,mengubah batas atas dalam tabel dan lain-lain.

3. Data migration, yaitu memindahkan data ke dalam DBMS dengan struktur yanglebih baik. Data sebelumnya yang disimpan di dokumen terpisah atau diaturpada DBMS lama.

Berbagai permasalahan yang sering terjadi sebelum melakukan restrukturisasi data,antara lain:

1. End-Users menghendaki data berada pada tampilan desktop merekadibandingkan dengan di di dalam sistem file.

Page 5: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

5

2. Sistem harus memproses data lebih jauh dari perkiraan sebelumnya olehperancang mereka.

3. Tempat penyimpanan data berada di tempat yang berlainan dan dengan formatyang berbeda, bahkan data dapat tersimpan di sistem yang berbeda.Kemungkinan data redundan menjadi sangat besar.

4. Penamaan data yang sulit dipahami. Data yang sama mungkin memliki namayang berbeda di program yang berlainan.

5. Panjang field; panjang field yang sama mungkin akan berbeda pada program.6. Susunan baris mempresentasikan entitas yang sama ditulis dengan program

yang berbeda.7. Hard-coded literals8. Minimnya kamus data yang dimiliki

Strategi untuk melakukan restrukturisasi data yaitu:1. Schema Conversion; translasi dari skema sistem yang ada ke dalam skema yang

sama dengan sebuah sistem berteknologi baru. Database Re-Engineering(DBRE) dilengkapi dengan database design yang baru.

2. Data conversion; migrasi data dari sistem lama ke sistem yang baru dan hasildisesuaikan dengan konversi skema.

3. Program modification; melakukan perubahan terhadap program sehinggaprogram mampu mengakses basis data yang baru sebagai pengganti sistem yanglama. Meningkatkan fungsionalitas, kualitas kode program, mengubah bahasapemrograman dan tidak mengubah antarmuka pengguna. Mengurangi prosesyang kompleks berdasarkan konversi skema.

Refactoring Basis DataRefactoring basis data adalah perubahan sederhana pada skema basis data untukmeningkatkan desain dalam mempertahankan segi perilaku maupun informasi dalamkode semantic, dengan kata lain tidak menambahkan fungsionalitas baru ataumemperlebar fungsionalitas yang ada, tidak juga menambahkan data atau mengubahmakna data (Ambler dan Sadalge, 2006).

Database SmellsFowler (1970, dalam Scott dan Pramond, 2006) memperkenalkan konsep “code smells”,sebuah strategi umum untuk mencari masalah yang ada di dalam kode, sehingga munculkebutuhan untuk refactoring. Serupa dengan itu, terdapat “database smells” yang jugamuncul kebutuhan serupa. Smell basis data meliputi:

1. Multipurpose column; yaitu satu kolom yang nilainya difungsikan untukbeberapa tujuan.

2. Multipurpose table; sama dengan Multipurpose Column, tapi ini terjadi padatabel.

3. Redundant data; beberapa kolom yang menyimpan informasi pada satu tabel,ternyata informasi itu ada juga di tabel lain.

4. Tables with too many columns; terdapat banyak kolom yang ada di satu tabel,sehingga menyulitkan dalam pengaksesan tabel tersebut.

5. Tables with too many rows; terdapat banyak baris atau record yang ada dalamsatu tabel, hal ini berakibat pada masalah performansi data tersebut.

Page 6: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

6

6. “Smart” columns; yaitu sebuah kolom yang menyimpan beberapa informasi.Misalnya satu kolom yang menyimpan ID mahasiswa, dimana ID mahasiswatersebut menyimpan informasi mengenai fakultas, jurusan serta nomor urutnya,parsing harus dilakukan terlebih dahulu sebelum informasi tersebut digunakan.

7. Fear of change; ketakutan pada perubahan skema basis data karena takutmemecahkan masalah-masalah tertentu pada saat ingin melakukan pemeliharaansistem.

HASIL DAN PEMBAHASANPengembang perangkat lunak yang terlibat dalam pembuatan DPS tidak menyertakandokumentasi yang berisi aliran data atau diagram konseptual. Pengamatan danpercobaan yang fungsi dan struktur data yang ada di DPS dilakukan untuk mendapatkangambar sederhana aliran data tersebut. Data yang tidak valid menjadi sebab utamamengapa secara keseluruhan diagram tidak mengikuti kaidah penggambaran diagramkonseptual yang sebenarnya. Dari struktur basis data lama dapat digambarkan diagramkonseptual seperti dibawah ini:

Page 7: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

7

Gambar 1.Diagram konseptual struktur basis data lama dari DPS

Diagram fisik tidak tersedia karena dokumentasi sistem tidak ada. Jadi, gambar diagramfisik menempuh langkah yang sama dengan langkah pembuatan diagram konseptual.

Page 8: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

8

DDOR *NoDDOR

NoNSP

DDORDate

Principal

Product

NoSO

Customer

Location

Term

Qty

status

Remark

nm_input

dt_input

domaster *ddo_no

ddo_date

dpo_no

Site

warehouse

dn_produk

kd_produk

dn_sales

kd_sales

dcustomer

kd_cust

address1

address2

address3

dqty

folo

dum

areatuj1

dkemasan

saldo

remark

saldoreal

crd_term

sch_date

sch_qty

account

subaccount

cc

areatuj2

transporter

dstatus

gmmaster *gsj_no

gdo_no

Site

gdelivery

gcustomer

gwarehouse

ddo_no

stujuan

gterm

geta

gprice

gketerangan

gqty

gproduct

gpacking

gnsp

gprincipal

sstatus

swarna

stg_cran

slc_no

sex_kapal

ssj_date

svol_load

sst_barang

sst_mutu

sst_segel

sst_nomor

sst_selisih

sst_kemasan

sst_lain

sst_keterangan

svol_unload

scrg_rcp

ssj_rcp

ssusut

stoleransi

std_trm

sprc_susut

srt_angkut

srt_type

stype

sbongkar

stolakan

samt_susut

sppn

stotal

svc_no

sefektif

sefektify

sremak

sg_total

sarea

sjsaldo

sjgross

sjtare

pketerangan

confirmsj

confirmttb

driver

snopol

stransporter

Perantara *do_no

sj_no

ncust

cust

ship_to

product_name

product_code

qty_kirim

qty_terima

warehouse

sno_pol

ssj_date

scrg_rcp

sex_kapal

lbatal

datestatus

pstatus

ldelete

sjmaster *ssj_no

sdo_no

sdelivery

swarehouse

ddo_no

stujuan

stransporter

sno_pol

sketerangan

s_line

sqty

sstatus

swarna

stg_cran

slc_no

sex_kapal

ssj_date

sch_date

svol_load

sst_barang

sst_mutu

sst_segel

sst_nomor

sst_selisih

sst_kemasan

sst_lain

sst_keterangan

svol_unload

scrg_rcp

ssj_rcp

ssusut

stoleransi

std_trm

sprc_susut

srt_angkut

srt_type

stype

sbongkar

stolakan

samt_susut

sppn

stotal

svc_no

sefektif

sefektify

sremak

sg_total

sarea

sjsaldo

sjgross

sjtare

pketerangan

confirmsj

confirmttb

driver

FK_sjmaster_domaster

FK_Perantara_domaster

FK_gmmaster_domaster

FK_DDOR_domaster

Gambar 2.diagram fisik struktur basis data lama

Page 9: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

9

AreaAreaTo

customer *kd_customer

nm_customer

MenuTabelMenu

Modul

Lokasi

seq_menu

seq_modul

msuserulogin

upassword

ulevel

lokasi

StkPointPrincipal

StockPoint

tarif_ap *Tsj_no

ssj_date

Entity

Accrued

TDO_NO

tterima

transporter

packing

product

shipFrom

areafrom

shipto

areato

type

qty_unload

PriceSusut

susut

tarif

bi_kuli

bi_back

bi_tolakan

bi_lain

type_bayar

total_accrued

total_biaya

voucher

eff_vou

remark

pinput

dateinput

AmountSusut

PPN

TotalAmtSusut

TotalAmt

status

sj_receipt

qty_load

no_polisi

delivery

Periode

Tahun

s_hit

t_per

transporterTransporter

product *kd_product

nm_product

qty_product

g_product

Gambar 3.Diagram fisik struktur basis data lama (lanjutan)

Aspek-aspek masalah yang menyebabkan basis data DPS perlu direkayasa ulang adalahdengan cara meneliti struktur basis data DPS lama. Berdasarkan struktur data daninformasi yang terkandung pada tabel-tabelnya, terdapat beberapa kesalahan dasar yangada pada struktur basis data lama yaitu :

a) Keberadaan primary key dan foreign key tidak tergambar secara fisik padaDBMS.

b) Duplikasi data, Surat Jalan (SJ) dengan nomor yang sama ada pada tiga tabelyang berbeda yaitu sjmaster, domaster, gmmaster, dengan fungsi dan isi datayang hampir sama.

Page 10: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

10

c) Data tidak unik ada pada kolom yang dianggap sebagai primary key. Datatersebut juga dapat bernilai null atau berupa kolom kosong. Hal ini terjadi disetiap tabel yang ada pada struktur basis data lama.

d) Panjang data dan tipe data dari kolom yang dianggap sebagai key penghubungantar tabel tidak sama. Sehingga, jika direpresentasikan secara fisik dalamDBMS akan muncul pesan kesalahan dalam menghubungkan tabel-tabeltersebut.

e) Tabel yang tidak mempunyai fungsi yang jelas. Tabel ini dapat dihilangkan darisistem.

f) Penamaan kolom yang tidak menggunakan aturan keseragamaan, sehingga sulitmenghubungkan kolom satu dengan kolom yang berlainan tabel.

g) Kemiripan penamaan kolom yang mempunyai tipe data sama tetapi mempunyaifungsi berbeda. Contoh: Jika dilihat secara fisik, kolom sdelivery dan sch_datepada tabel sjmaster mempunyai nilai yang sama. Tetapi ternyata jika dilihatsecara fungsional pada listing program, tanggal-tanggal tersebut mempunyaifungsi yang berbeda.

Selain kelemahan tersebut diatas, ada beberapa kelemahan lain yang termasuk dalamdeteksi “Smells” basis data yaitu:

1. Multipurpose Column; pada tabel gmmaster, dan sjmaster, kolom ssj_noberfungsi sebagai penyimpan no. SJ dan no. DDOR jika data tersebutmerupakan data DDOR. Kolom swarehouse di tabel sjmaster selain sebagaitempat untuk menyimpan data supplier, berfungsi pula sebagai penyimpan dataketerangan SJ.

2. Multipurpose Table; tabel gmmaster yang seharusnya hanya untuk menyimpandata SJ supplier, berfungsi juga untuk menyimpan data DDOR yang secarastruktur dan bentuk berbeda dengan SJ.

3. Data redundan; data Surat Jalan dengan nomor sama masuk ke dalam tiga tabelberbeda (sjmaster, gmmaster, perantara) dengan isi informasi yang hampir sama.

4. Tabel terlalu banyak baris; terjadi pada tabel domaster. Satu no. DO dapatmempunyai lebih dari satu tanggal schedule delivery (sch_date). Pada tabelgmmaster, karena tabel tersebut mempunyai fungsi ganda sebagai penyimpandata SJ principal dan DDOR, menyebabkan baris tabel tersebut membengkak.

5. Tabel terlalu banyak kolom; terjadi pada tabel-tabel transaksi seperti tabelsjmaster, domaster, gmmaster dan tarif_ap. Banyak kolom yang tidak jelasfungsinya dan sudah tidak terpakai lagi, tetapi tetap ada. Hal ini terjadi karenadokumentasi yang tidak jelas.

6. “Smart” columns; berdasarkan struktur data dan diagram fisik yang ada tidakterlihat adanya nilai yang ada di kolom yang menyimpan informasi lebih darisatu kegunaan.

7. Takut akan perubahan; pengembang perangkat lunak enggan merubah strukturdata karena takut perubahan tersebut akan merubah sistem secara keseluruhan.

Berdasarkan analisa struktur basis data lama, refaktorisasi tabel pada basis data lamatidak akan menghasilkan struktur basis data yang optimal dan dapat diandalkan, karenakesalahan-kesalahan yang ada pada struktur basis data lama merupakan kesalahan fataldan mendasar. Karena basis data sudah pernah ada, tabel-tabel utama yang sudah adadijadikan tabel acuan untuk membuat tabel pada basis data baru. Tabel-tabel utama

Page 11: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

11

yang digunakan adalah tabel yang merupakan penampung data transaksi utama. Tabel-tabel utama tersebut antara lain:

1. Tabel domaster, adalah tabel untuk menampung data Delivery Order (DO) dariMFG-PRO. MFG-PRO adalah sistem ERP (Enterprise Resource Planning) yangdimiliki PT. XYZ.

2. Tabel sjmaster, gmmaster dan perantara mempunyai fungsi dasar sama, yaitumenampung data Surat Jalan (SJ). Hanya saja ketiga tabel tersebut melayanitransaksi SJ yang berbeda. Tabel sjmaster, adalah tabel untuk menampung dataSurat Jalan (SJ) secara keseluruhan.

3. Tabel gmmaster, adalah tabel yang berfungsi sebagai penampung data SuratJalan (SJ) yang baik barang atau asal pendistribusian barangnya berasal daripemasok barang. Tabel ini juga berfungsi sebagai tabel penyimpan DailyDelivery Order Request (DDOR).

4. Tabel perantara, adalah tabel yang berfungsi untuk menampung data Surat Jalan(SJ) yang terhubung dengan aplikasi Fleet Management System (FMS). FMSadalah aplikasi lain di PT. XYZ yang mengatur manajemen penggunaankendaraan pengangkut.

5. Tabel tarif_ap, adalah tabel yang berfungsi untuk menampung data berkaitandengan perhitungan biaya distribusi barang untuk kemudian menerbitkanvoucher penagihan kepada pelanggan.

Untuk memudahkan dalam melakukan restrukturisasi dengan menggunakan prosesrefaktorisasi data, lima tabel transaksi utama di atas akan didekomposisi menjadi tabeltransaksi utama dan tabel-tabel master pendukung sesuai dengan kriteria kesalahan-kesalahan yang telah terdeteksi.

Langkah-langkah untuk melakukan restrukturisasi dan dekomposisi tabel-tabel di atasadalah :

1. Hilangkan duplikasi data (data yang mempunyai detail informasi yang samadengan jumlah baris lebih dari satu, atau data kembar).

2. Hapus baris data yang memiliki nilai null atau karakter kosong pada kolom yangdianggap sebagai primary key dan foreign key.

3. Hilangkan kolom yang tidak mempunyai fungsi yang jelas atau kolommempunyai nilai null atau karakter kosong pada setiap baris datanya.

4. Tentukan superkeys, candidate keys dan primary key dari tabel yang sedangdirestrukturisasi.

5. Tentukan functional dependency (ketergantungan fungsional) atau FD antarentitas dalam tabel yang sedang direstrukturisasi

6. Jika ada, temukan tabel yang mempunyai kemiripan isi dan struktur dengan FDyang ada. Modifikasi tabel tersebut sampai ke struktur yang benar.

7. Jika ada, gabungkan tabel yang memiliki struktur data dan fungsi yang hampirsama. Tambahkan satu kolom untuk penanda perbedaan fungsi data tersebut.

8. Tentukan primary key dan foreign key dari tabel-tabel yang sudah terbentuk.9. Penamaan tabel dan kolom harus diseragamkan untuk menghindari menghindari

terjadinya redundansi data dan kemudahan dalam menghubungkan antara tabelsatu dengan tabel lain.

10. Kontruksi tabel-tabel yang sudah didekomposisi.

Page 12: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

12

Restrukturisasi Basis DataDari hasil pelaksanaan langkah-langkah restrukturisasi tabel di atas maka akandiperoleh tabel-tabel sebagai berikut:

Tabel 1.Hasil restrukturisasi tabel lama ke tabel baru

Tabel Lama Tabel Baru Isi Tabel

domaster TMasterArea data master area

TMasterCustomer data master pelanggan

TMasterWarehouse data master gudang

TMasterProduct data master produk

TMasterPDHGroup data master PDH

TMasterProductGroup data master grup produk

TMasterSales data master sales

TDO data transaksi DO

TPlanDO data transaksi perencanaan DO

sjmaster TSJ data transaksi SJ

TMasterTransporter data master transporter

TMasterSupplier data master supplier

TMasterWarehouse data master gudang

TDDOR data transaksi DDOR

tarif_ap Tvoucher data transaksi voucher

TmasterCost data master biaya

Gambar logis dalam bentuk diagram konseptual berdasarkan hasil restrukturisasi basisdata sesuai dari hasil analisa kelemahan basis data ada pada dibawah ini.

Page 13: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

13

Gambar 4.Diagram konseptual struktur basis data baru

Diagram fisik dari struktur basis data yang terbentuk dari hasil restrukturisasi. Diagramfisik ini menunjukkan bentuk fisik yang dirancang untuk DPS hasil bentukan diagramkonseptual.

Page 14: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

14

Gambar 5.Diagram Fisik Struktur Basis Data Baru

Implementasi Rancangan Basis DataTahap implementasi ini meliputi proses konversi dan migrasi data serta pengujian datahasil migrasi dari struktur basis data lama ke struktur basis data baru. Langkah-langkahdalam proses implementasi rancangan basis data baru adalah:

Page 15: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

15

1. Implementasi diagram fisik yang diperoleh dari hasil restrukturisasi data.2. Migrasi data; merupakan tahap pemindahan data pada struktur basis data lama

ke dalam struktur basis data baru.

Tahapan setelah mendapatkan rancangan diagram fisik struktur basis data baru adalahimplementasi rancangan basis data baru ke dalam lingkungan Microsoft SQL Server2005. Langkah-langkah untuk implementasi tersebut adalah:

1. Membuat script SQL untuk membuat skema basis data baru.2. Membuat dan mengeksekusi script SQL dengan menggunakan bahasa pada

lingkungan SQL Server 2005. Script tersebut memuat perintah untuk membuatsemua tabel yang telah dirancang pada diagram fisik struktur basis data DPSbaru. Selain itu, script tersebut juga harus bisa membuat relasi antar tabel terkaitseperti terlihat pada diagram fisik struktur data DPS baru.

Berikut ini adalah hasil analisa dan pembuktian yang dilakukan pada struktur basis datalama dengan struktur basis data baru:

1. Dengan menggunakan kaidah relasional dan terstruktur, basis data barumemberikan kemudahan lebih terhadap perubahan yang akan terjadi pada dimasa yang akan datang.

2. Data redundan juga dapat dihilangkan, sedangkan pada struktur bahasa yangbaru data masih redundan.

3. Integritas data, yaitu informasi yang ada pada struktur data yang baru dapatdijaga konsekuensinya.

4. Mudah dalam pemeliharaan sistem basis data.5. Performansi data lebih cepat dari versi struktur basis data yang sama juga.

KESIMPULAN DAN SARANKesimpulanStruktur basis data terlihat lebih terstruktur daripada sebelumnya. Jumlah tabel menjadiberkurang setelah adanya restrukturisasi basis data, karena tabel yang tidak mempunyaifungsi jelas tidak diikutsertakan dalam struktur basis data yang baru. Struktur tabeldapat kembali menjadi normal, sehingga pengembang perangkat lunak DPS dapatdengan mudah melakukan perawatan dan pengembangan sistem. Keakuratan data lebihterjamin karena tidak adanya redundansi dan duplikasi data.

Utilitas yang dimiliki oleh Microsoft SQL Server 2005 dapat digunakan lebih optimal.Dalam hal ini fungsinya untuk mengoptimalkan pencarian dan indexing data. Aksesdata menjadi terjamin cepat karena adanya primary key dan foreign key, keterhubunganantar tabel menjadi jelas dan indexing data membuat data mudah terurut oleh DBMS.

Struktur basis data baru ini belum sempurna. Beberapa fungsi lain seperti administrasipengguna, log sistem, dan administrasi menu dan modul tidak dibahas pada penulisanthesis ini, karena thesis ini hanya berfokus kepada penormalan kembali struktur basisdata DPS. Restrukturisasi basis data hanya berdasarkan pada proses bisnis yang terlibatdalam DPS.

Hasil basis data bentukan renormalisasi basis data lama dan langkah-langkahnya dapatmenjadi guideline atau panduan untuk menyelesaikan masalah restrukturisasi basis data

Page 16: 1 RESTRUKTURISASI BASIS DATA DISTRIBUTION PLANNING

16

DPS. Setelah restrukturisasi basis data tuntas, restrukturisasi sistem secara keseluruhansegera dapat dilakukan.

SaranHasil restrukturisasi basis data yang sudah ada hendaknya dirawat dan pengubahanstruktur sesuai dengan permintaan penambahan fungsi sistem, harus melalui prosedurdan memperhatikan kaidah-kaidah yang berlaku dalam merubah struktur basis data.Hal-hal yang perlu diperhatikan dalam merubah bentuk struktur data adalah fungsi-fungsi tabel dan kolom. Jika fungsi data dari atau untuk satu fungsi modul sudah adapada basis data, tidak perlu menambah tabel dengan fungsi yang sama ke dalam sistembasis data.

Jika ada penambahan dan pengurangan fungsi sistem dan berakibat pada modifikasistruktur basis data, hendaknya menyertakan dokumentasi yang jelas. Sehingga, apabilaada pergantian administrator, perawatan sistem, penambahan modul atau fungsi,prosesnya akan lebih cepat dan efisien.

Restrukturisasi basis data akan lebih sempurna apabila disertai dengan restrukturisasiperangkat lunak secara keseluruhan. Struktur data yang ada sangat berbeda bentuknyadengan struktur data hasil restrukturisasi. DPS lama tidak akan bisa beroperasi apabilamenggunakan struktur basis data yang perangkat lunak yang ada sekarang,

Restrukturisasi basis data harus disempurnakan untuk mengikuti fungsi sistem yang ada,seperti administrasi pengguna, administrasi pengguna, log sistem, dan administrasimenu dan modul. Selain itu, perlu dikaji kembali mengenai kualitas data ditinjau darikecepatan dan keakuratan data pada saat melakukan pengambilan data dari DBMSlama dan DBMS yang sudah terbentuk.

DAFTAR PUSTAKAAmbler, Scott W., Sadalge, Pramond J. 2006. Refactoring Database: Evolutionary

Database Design. Addison Wesley Professional.

Kerievsky, Joshua. 2004. Refactoring to Patterns. Addison Weasley.

Pressman, Roger S. 2005. Software Engineering, A Practitioner’s Approach, 6th

Edition. McGraw Hill.

Ramakhrisna, Raghu & Gehrke, Johannes. 2002. Database Management System, 2nd

Edition. McGraw Hill-Higher Education.

Sommerville, Ian. 2005. Software Engineering, 6th Edition. Addison Wesley.

Teorey, Tobey, Lightstone, Sam, Nadeu, Tom. 2006. Database Modelling & Design:Logical Design, 4th Edition. Morgan Kaufmann Publishers, San Fransisco.

Toft Hansen, Kjell. 2002. Introduction to Database. Distance Learning from NVU-AITeL.