BAB 1 PENDAHULUAN
1.1
Latar Belakang Dunia saat ini telah memasuki era globalisasi yang menuntut perusahaan-
perusahaan yang ada untuk mampu bertahan dan menjawab berbagai tantangan bisnis yang semakin kompleks.Agar dapat terus bersaing dan berkembang, perusahaan harus mampu memanfaatkan dan mengelola sumber daya yang ada secara efektif dan efisien. Salah satu sumber daya yang penting dalam mendukung kelancaran proses bisnis perusahaan, yaitu teknologi informasi. Perkembangan teknologi informasi telah memberikan kemudahan dan dampak positif yang besar dalam berbagai aspek kehidupan, termasuk di bidang bisnis. Sistem informasi yang berjalan memerlukan sebuah database yang berguna untuk menyimpan dan mengolah data mentah menjadi informasi yang berguna bagi perusahaan. Seiring dengan perkembangan bisnis dan berjalannya waktu, jumlah data atau transaksi dalam perusahaan akan semakin banyak. Idealnya, dengan meningkatnya jumlah data transaksi, rentang waktu yang diperlukan untuk memproses data tersebut tetap stabil atau meningkat secara tidak signifikan. Namun realitanya tidak selalu seperti itu. Yang sering terjadi adalah semakin besar jumlah data dalam suatu database, kecepatan pemrosesan data akan menurun karena waktu yang diperlukan untuk memproses data juga menjadi lebih lama. Dengan tersedianya berbagai jenis processor, memory, dan disk drive yang semakin canggih dan cepat, godaan untuk mengadakan perangkat keras baru untuk meningkatkan kinerja akan semakin besar. Namun, perbaikan kinerja dengan pengadaan
1
2
perangkat keras dapat dikatakan sebagai pemecahan masalah jangka pendek. Apabila permintaan dan beban kerja terus meningkat, kemungkinan besar perusahaan akan segera menghadapi kembali permasalahan yang sama. Selain itu, pengadaan perangkat keras tidak selalu mampu mengatasi permasalahan performance pada sistem. Suatu sistem yang dirancang secara buruk akan menghasilkan performance yang buruk, sebanyak apapun perangkat keras yang ditambahkan. Dengan demikian, diperlukan suatu teknik yang dapat menjaga dan bahkan meningkatkan kinerja dari databaseagar kinerja sistem informasi secara keseluruhan dapat ditingkatkan. Teknik ini disebut dengan performance tuning. Performance tuningtelah dilakukan oleh banyak perusahaan yang memilikidatabasedalam skala besar untuk mengatasi permasalahan kinerja pada sistem yang timbul sebagai konsekuensi dari jumlah data perusahaan yang semakin besar. Astra Credit Companies merupakansalah satu perusahaan pelopor di bidang consumer finance. Astra Credit Companies melayani pembelian kendaraan bermotor secara kredit. Untuk mendukung layanan kepada pelanggan, ACC menyediakan fasilitasCall Center. Call Center ACC ini memanfaatkan suatu sistem berbasis web yang dinamakan CRS (Customer Response System). Seiring berjalannya waktu, database dari aplikasi CRSjuga semakin besar. Ukuran database yang semakin besar ini disinyalir menjadi salah satu faktor penyebab menurunnyaperformance dari aplikasi CRS. Bukti dasar dari kinerja aplikasi yang memburuk, yaitu lamanya waktu page load dari beberapa halaman CRS, khususnya halaman-halaman yang berkaitan dengan produk-produk andalan Astra Credit Companies, yakni ACP dan Fastrack Financing.Oleh karena itu, pihak Astra Credit Companies merasa perlu melakukan tuning terhadap aplikasi CRS.
3
1.2
Ruang Lingkup Berdasarkan hasil survei dan wawancara dengan pihak Astra Credit Companies,
ruang lingkup dari penelitian ini akan dibatasi pada perbaikanperformance dari aplikasi bermasalah, yaitu aplikasi Customer Response System.Performance aplikasi diukur dari response time dari halaman-halaman web pada aplikasi. Fokus dari penelitian ini juga dipersempit untuk mencakup hanya halaman-halaman web aplikasi CRS yang berkaitan dengan dua produk favorit ACC, yakni ACP dan Fastrack Financing,yang memiliki response time paling tinggi. Dalam penulisan skripsi ini,pendekatan performance tuning yang digunakan adalah SQL tuning yang mencakup empat metode, yaitu pembuatan function, restrukturisasi SQL,indexing, danpartitioning. Pembuatan function dilakukan untuk memanfaatkan soft parsing pada query sehingga waktu pemrosesan query menjadi lebih cepat.Restrukturisasi SQL dilakukan denganmenulis ulang queryke bentuk lain yang lebih efektif.Indexing dilakukan pada kolom tabel yang sering dijadikan filter pada klausa where dengan tujuan untuk mempercepat pencarian data.Partitioning dilakukan untuk memecah tabel yang besar menjadi bagian-bagian yang lebih kecil sehingga jumlah data yang perlu diperiksa dalam pemrosesan suatu query dapat dibatasi.
4
1.3
Tujuan dan Manfaat Tujuan yang ingin dicapai dari penulisan skripsi ini, yaitu sebagai berikut: 1. Mengidentifikasi masalah berkaitan dengan lamanya response timedari halaman-halaman aplikasi Customer Response System yang berkaitan dengan produk ACP dan Fastrack Financing. 2. Menyediakan alternatif solusi pemecahan masalah yang diidentifikasi melalui performance tuning dengan pendekatan SQL tuning. Manfaat yang dapat diperoleh dari penulisan skripsi ini, yaitu sebagai berikut: 1. Meminimalkan response time dari halaman-halaman aplikasi Customer Reponse Systemyang berkaitan dengan produk ACP dan Fastrack Financinguntuk mendukung aktivitas pelayanan konsumen oleh agen teleservice dan telemarketing Astra Credit Companies. 2. Menekan biaya maintenance dan penambahan perangkat keras di masa yang akan datang dengan mengoptimalkan kinerja sistem yang ada melalui SQL tuning.
5
1.4
Metodologi Penulisan skripsi ini dilakukan dalam beberapa tahap sebagai berikut: 1. Pengumpulan Data •
Pengumpulan data dilakukan secara langsung di Astra Credit Companies selama 300 jam, yaitu setiap hari rabu dan kamis dari tanggal 14 September 2011 hingga 22 Desember 2011.
5
•
Melakukan wawancara dengan pihak-pihak terkait mengenai aplikasi Customer Response System dan proses bisnis berjalan untuk memperoleh pengetahuan awal mengenai masalah dan kebutuhan perusahaan.
•
Melakukan observasi terhadap database dan aplikasi Customer Response System yang sedang berjalan di perusahaan.
•
Melakukan pengukuran awal terhadap kinerja aplikasi Customer Response Sistem yang berjalan.
•
Melakukan studi literatur yang relevan terhadap penelitian sebagai landasan teori dalam penulisan skripsi ini.
2. Analisis •
Mengidentifikasi inti-inti permasalahan berdasarkan hasil observasi terhadap aplikasi Customer Response System dan kondisi database yang sedang berjalan.
•
Menentukan tujuan dan ruang lingkup penelitian berkaitan dengan metode SQL tuning yang akan digunakan dan batasan halaman-halaman aplikasi yang akan dilakukan tuning.
•
Melakukan uji lab terhadap beberapa metode tuning untuk memeriksa kesesuaian teori terhadap sistem yang berjalan.
3. Perancangan Pada tahap desain dan perancangan, penulis akanmerancang beberapa alternatif solusi bagi permasalahan yang telah diidentifikasi, berdasarkan metode SQL tuning yang telah ditetapkan pada tahap analisis, yaitu pembuatan function, restrukturisasi SQL,indexing, dan partitioning.
6
4. Evaluasi Pada tahap terakhir ini, penulis akan mengembangkan rancangan solusi ke dalam sistem dan melakukan pengukuran terhadap kinerja dari sistem yang baru (setelah dilakukan SQL tuning)untuk dibandingkan dengan kinerja dari sistem yang lama (sebelum dilakukan SQL tuning). Jika kinerja sistem baru lebih baik maka penelitian dikatakan telah berhasil.
1.5
Sistematika Penulisan Penulisan skripsi ini dijabarkan secara sistematis ke dalam beberapa bab yang
akan dijelaskan lebih lanjut di dalam setiap bab. Adapun sistematika penulisan setiap bab adalah sebagai berikut: •
Bab 1 : Pendahuluan Pada bab ini diuraikan mengenai: -
Latar belakang pemilihan topik
-
Ruang lingkup penelitian
-
Tujuan yang ingin dicapai dari penelitian
-
Manfaat yang dihasilkan dari penelitian
-
Metodologi yang digunakan dalam penelitian mulai dari pengumpulan data hingga evaluasi
•
Sistematika penulisan skripsi
Bab 2 : Landasan Teori Bab ini berisi teori-teori yang melandasi penelitian. Teori-teori tersebut dibagi ke dalam dua kelompok besar, yaitu teori umum dan teori khusus.
7
-
Teori umum, merupakan teori-teori yang mendefinisikan objek-objek umum dalam penelitian, seperti database, perangkat lunak, dan perangkat keras.
-
Teori khusus, merupakan teori-teori yang mendukung analisis dan perancangan solusi, misalnya teori mengenai indexing danpartitioning.
•
Bab 3 : Analisis dan Perancangan Bab ini terbagi menjadi tiga bagian antara lain: -
Analisis perusahaan, berisi informasi mengenai sejarah perusahaan, struktur organisasi perusahaan, dan pembagian tugas dan wewenang serta kondisi kerja di dalam perusahaan.
-
Analisis sistem yang berjalan, membahas gambaran kondisi sistem yang sedang berjalan dan permasalahan yang sedang dihadapi.
-
Perancangan SQL tuning, menjelaskan beberapa alternatif solusi yang dirancang penulis bagi permasalahan yang diidentifikasi.
•
Bab 4 : SQL Tuning dan Evaluasi Bab ini menguraikan tentang pelaksanaan dari rancangan SQL tuning serta evaluasi kinerja sistem yang lama dan yang baru.
•
Bab 5 : Simpulan dan Saran Bab terakhir ini berisi simpulan dari hasil penelitian yang telah dilakukan serta saran-saran
yang
disampaikan
pengembangan selanjutnya.
oleh
penulis
bagi
perusahaan
untuk