Pembangunan Perangkat Lunak Data Warehouse Di CV. Widuri

(1)

96

[2] Inmon, William H. 2005. “Building The Data Warehouse (4th ed.)”.

Indianapolis :Wiley Publishing, Inc.

[3] Rainardi, V.2002. Building A Data Warehouse, With Examples in SQL Server. New York :Springer.

[4] Golfarelli, M., Hill, M.G., dan Rizzi, S.2009. Data Warehouse Design, Modern Principles and Methodologies.New York: Mc Graw Hill.

[5] Thomas C. Hammergren and Alan R. Simon, Data Warehousing for Dummies 2nd Edition, Wiley Publishing,Inc. , 2009.

[6] Yudhi Hermawan, Konsep OLAP dan Aplikasinya Menggunakan Delphi. Yogyakarta: ANDI Yogyakarta, 2005. Roger S. Pressman, Software Engineering, 7th ed.: Mc Graw. Hill, 2010.

[7] Rainardi, V. Building A Data Warehouse, With Examples in SQL Server. APRESS.

[8] Novianda, K.R., (2010). Microsoft Business Intelligence dengan SQL Server 2008 R2 dan Sharepoint 2010.

[9] Harold, Davis (2002). Visual C# .Net Programming. Sybex, 2002

[10] Ponniah Paulraj, Data Warehousing Fundamentals, New York : Wiley Publishing, Inc.

[11] Golfarelli Matteo and Rizzi Stefano. Data Warehouse Design Modern Principles and Methodologies. New York : McGrawHill


(2)

(3)

1

1.1 Latar Belakang Masalah

Data warehouse merupakan database yang saling bereaksi yang dapat digunakan untuk query dan analisisis, bersifat orientasi subjek, terintegrasi, time-variant, tidak berubah yang digunakan untuk membantu para pengambil keputusan. Menurut W.H.Inmon dan Richard D.H., data warehouse adalah koleksi data yang mempunyai sifat berorientasi subjek, terintegrasi, time-variant, dan bersifat tetap dari koleksi data dalam mendukung proses manajemen pengambilan keputusan [2]. Pemakaian data warehouse hampir dibutuhkan oleh setiap perusahaan, Data warehouse memungkinkan integrasi berbagai macam jenis data dari berbagai macam aplikasi atau sistem yang dapat menjamin akses yang lebih cepat bagi manajemen untuk memperoleh informasi, dan menganalisisnya sebagai bahan informasi strategis khususnya untuk perusahaan.

CV.Widuri merupakan perusahaan yang bergerak di bidang makanan ringan. CV.Widuri beralamat di Kec. Kawali Kab. Ciamis. Desa Ciakar Cipaku – Ciamis, Yang berdiri sejak tahun 2005. Dalam menjalankan usahanya CV.Widuri memasarkan makanan ringan ke kota – kota besar. Sebagai penjual makanan ringan CV.Widuri terus meningkatkan perusahaannya dengan menambah jenis – jenis makanan ringannya dan terus menambah jumlah toko – toko yang di suplay oleh CV.Widuri.

Berdasarkan hasil wawancara dengan pihak CV.Widuri, dalam proses bisnisnya saat ini perusahaan sulit mendapatkan informasi yang memadai untuk melakukan analisis terhadap keinginan pasar, hal ini disebabkan karena data yang masih terpisah – pisah dan data yang tidak saling terintegrasi satu dengan yang lainnya, hal ini berdampak pada kemajuan dan perkembangan perusahaan yang kurang optimal,

Berdasarkan permasalahan yang telah diuraikan diatas maka penulis ingin membangun sebuah data warehouse yang dapat memudahkan pihak perusahaan


(4)

dalam proses pengambilan keputusan agar memudahkan perusahaan untuk mengetahui keinginan pasar. Dengan adanya sistem tersebut, diharapkan dapat membantu pihak perusahaan CV.Widuri dalam menentukan jumlah produksi dan target distribusi. Oleh karena itu, penulis mengambil tugas akhir dengan judul pembangunan perangkat lunak data warehouse di CV.Widuri.

1.2 Identifikasi Masalah

Berdasarkan latar belakang yang telah ada dijelaskan di atas, maka penulis dapat mengindentifikasi permasalahan sebagai berikut :

Bagaimana membangun sebuah perangkat lunak datawarehouse di CV.Widuri.

1.3 Maksud dan Tujuan

Berdasarkan permasalahan yang ada, maka maksud dari penelitian ini adalah untuk Membangun perangkat lunak data warehouse di CV.Widuri.

Adapun tujuan yang akan dicapai dari penelitian ini adalah : 1. Membantu pihak perusahaan dalam pengintegrasian data.

2. Menyediakan informasi – informasi yang dibutuhkan pihak perusahaan untuk pengambilan suatu keputusan.

3. menyajikan informasi yang lebih ringkas, akurat, dan relevan bagi pihak perusahaan.

1.4 Batasan Masalah

Ada beberapa batasan masalah dalam penelitian ini agar pembahasan lebih terfokus sesuai dengan tujuan yang akan dicapai. Batasan masalah dalam penelitian ini adalah :

1. Data yang digunakan sebagai acuan penelitian merupakan data perusahaan yang berupa data excel.

2. data yang digunakan hanya data dari beberapa tahun sebelumnya. 3. Perangkat lunak yang akan dibangun berbasiskan dekstop.


(5)

5. Aplikasi pendukung menggunakan C#

1.5 Metodologi Penelitian

Penelitian ini menggunakan metode penelitian deskriptif. Metode penelitian deskriptif sendiri merupakan sebuah metode yang bertujuan untuk membuat gambaran secara sistematis, faktual dan akurat mengenai fakta-fakta dan perilaku dari objek penelitian serta menjadi dasar pengambilan keputusan.

1.5.1 Metode Pengumpulan Data

Metodologi pengumpulan data yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut:

a. Studi Literatur

Pengumpulan data dengan cara mengumpulkan literatur, jurnal, paper dan bacaan-bacaan yang ada kaitannya dengan judul penelitian.

b. Observasi

Teknik pengumpulan data dengan mengadakan penelitian dan peninjauan langsung ke CV.WIDURI terhadap permasalahan yang diambil.

c. Wawancara

Teknik pengumpulan data dengan mengadakan tanya jawab secara langsung dengan manajemen yang ada kaitannya dengan topik yang diambil.

1.5.2 Metode Pembangunan Perangkat Lunak

Teknik analisis data dalam Perancangan dan pengembangan Sistem Informasi ini menggunakan metode Waterfall. Metode Waterfall adalah model klasik yang bersifat sistematis dan berurutan dalam membangun software. Adapun fase-fase dari metode waterfall yang meliputi beberapa proses diantaranya:


(6)

Gambar 1.1 Metode Waterfall a. Requirements Definition

Merupakan bagian dari sistem yang terbesar dalam pengerjaan suatu proyek, dimulai dengan menetapkan berbagai kebutuhan dari semua elemen yang diperlukan sistem dan mengalokasikannya kedalam pembentukan perangkat lunak.

a. System and Software Design

Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan proyek pembuatan perangkat lunak.

b. Implementation and Unit Testing

Tahap penerjemahan dari data yang dianalisis kedalam bentuk yang mudah dimengerti oleh user.

c. Integration and System Testing

Tahap penerjemahan data atau pemecahan masalah yang telah dirancang keadalam bahasa pemrograman tertentu.

d. Operation


(7)

e. Maintenance

Tahap akhir dimana suatu perangkat lunak yang sudah selesai dapat mengalami perubahan–perubahan atau penambahan sesuai dengan permintaan user.

1.6 Sistematika Penulisan

Sistematika penulisan tugas akhir penelitian ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

BAB I PENDAHULUAN

Bab ini Membahas tentang sub bab antara lain : latar belakan, identifikasi masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, dan sistematika penulisan, agar dapat memberikan gambaran tentang urutan penyajian laporan tugas akhir ini.

BAB II. TINJAUAN PUSTAKA

Bab ini membahas mengenai Profil perusahaan dan landasan teori yang digunakan dalam membangun perangkat lunak data warehouse, materi-materi umum yang membahas data warehouse dan berkaitan dengan teori-teori pendukung lainnya. BAB III. ANALISIS DAN PERANCANGAN

Bab ini menguraikan tentang analisis dan perancangan sistem membahas mengenai gambaran sistem yang sedang berjalan. menjelaskan mengenai langkah-langkah yang digunakan dalam proses perancangan sistem serta desain antar muka sistem.

BAB IV. IMPLEMENTASI DAN PENGUJIAN

Bab ini Menjelaskan mengenai implementasi aplikasi yang telah dibuat serta melakukan pengujian terhadap aplikasi yang diimplementasikan tersebut.

BAB V. KESIMPULAN DAN SARAN

Berisi kesimpulan dan saran yang sudah diperoleh dari hasil penulisan tugas akhir


(8)

(9)

7

2.

BAB 2

TINJAUAN PUSTAKA

2.1 Profil Prusahaan

CV.Widuri merupakan perusahaan yang bergerak di bidang industri makanan ringan yang didirikan pada tahun 2005 oleh Bapak Dudung tobi budin. CV.Widuri beralamat di Kec. Kawali Kab. Ciamis. Desa Ciakar Cipaku – Ciamis. Dalam menjalankan usahanya CV.Widuri memasarkan makanan ringan ke kota – kota besar. Sebagai penjual makanan ringan CV.Widuri terus meningkatkan perusahaannya dengan menambah jenis – jenis makanan ringannya dan terus menambah jumlah toko – toko yang di suplay oleh CV.Widuri.

2.1.1 Visi dan Misi Visi

Menjadi perusahaan penghasil makanan ringan yang bermutu tinggi, dan mampu menguasai pasar.

Misi

Menjadi perusahaan makanan ringan terbesar di Indonesia 2.1.2 Logo Perusahaan

Adapun logo perusahaan di CV.Widuri adalah sebagai berikut :


(10)

2.1.3 Struktur Perusahaan

Struktur organisasi dalam suatu perusahaan merupakan hal yang sangat penting, dengan adanya struktur organisasi ini memberikan pembagian tugas sesuai dengan bidangnya masing-masing. Adapun struktur organisasi di CV.Widuri adalah sebagai berikut :

Gambar 2.2 Struktur Organisasi CV.Widuri Tugas masing – masing pada struktur organisasi CV.Widuri

1. Tugas peminpin perusahaan adalah memantau dan menilai keseluruhan dari kemajuan perusahaan serta bertanggung jawab untuk pengambilan keputusan bagi perusahaan.

2. Tugas bagian keuangan adalah melaksanakan kegiatan administrasi keuangan perusahaan untuk menjamin kelancaran, keakuratan dan ketertiban administrasi keuangan perusahaan.

3. Tugas bagian gudang adalah sebagai penanggung jawab dari semua transaksi yang terjadi di gudang perusahaan.

4. Tugas bagian produksi adalah membuat produk dari mulai mengolah


(11)

5. Tugas bagian marketing dan penjualan adalah mengatur jadwal penjualan dan melakukan penjualan untuk memenuhi permintaan pelanggan serta mencatat semua transaksi penjualan.

2.2 Landasan Teori

Landasan teori membahas mengenai materi atau teori apa saja yang digunakan sebagai acuan dalam membuat tugas akhir ini. Landasan teori yang diuraikan merupakan hasil dari studi literatur yaitu pengumpulan data dengan cara mempelajari jurnal, browsing internet, referensi buku dan bacaan-bacaan lainnya yang berhubungan erat dengan penelitian yang dilakukan.

2.2.1 Data

Data adalah fakta mentah mengenai orang, tempat, kejadian, dan hal-hal yang penting dalam organisasi [1].

Data merupakan bahasa, simbol-simbol pengganti lain yang disepakati oleh umum dalam menggambarkan objek, manusia, peristiwa, aktivitas, konsep. Singkatnya data merupakan suatu kenyataan apa adanya [1].

2.2.2 Database

Database atau Basis data merupakan kumpulan data yang disimpan secara sistematis didalam komputer dan dapat diolah atau dimanipulasi menggunakan perangkat lunak (program aplikasi) untuk menghasilkan informasi. Pendefinisian basis data meliputi spesifikasi berupa tipe data, struktur, dan juga batasan-batasan data yang akan disimpan. Basis data merupakan aspek yang sangat penting dalam sistem informasi dimana basis data merupakan gudang penyimpanan data yang akan diolah lebih lanjut. Basis data menjadi penting karena dapat menghidari duplikasi data, hubungan antar data yang tidak jelas, organisasi data, dan juga update yang rumit [1].

Basis data (Database) sendiri dapat didefinisikan dalam sejumlah sudut pandang seperti [1]:


(12)

1. Himpunan kelompok data (arsip) yang saling berhubungan yang diorganisasi sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah.

2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redun-dansasisi) yang tidak perlu, untuk memenuhi berbagai kebutuhan.

3. Kumpulan file, table, arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronis.

2.2.3 Database Management System (DBMS)

Aplikasi yang digunakan untuk membangun sebuah sistem basis data yang memungkinkan Pengguna untuk mendefinisikan, membuat, memelihara dan mengontrol akses ke database merupakan pengertian dari Database Management System (DBMS). DBMS membantu dalam pemeliharaan dan pengolahan kumpulan data dalam jumlah besar, sehingga dengan bantuan DBMS tidak akan menimbulkan kekacauan dan dapat digunakan oleh pengguna sesuai dengan kebutuhan. Bahasa basis data biasanya terdiri atas perintah-perintah yang diformulasikan dalam bentuk query sehingga perintah tersebut akan diproses oleh DBMS [1].

2.2.4 Data Warehouse

Pengertian Data Warehouse dapat bermacam-macam namun mempunyai inti yang sama, seperti pendapat beberapa ahli berikut ini :

Data warehouse adalah koleksi data yang mempunyai sifat berorientasi subjek, terintegrasi, time-variant, dan bersifat tetap dari koleksi data dalam mendukung proses pengambilan keputusan management [2].

Data warehouse merupakan database relasional yang didesain lebih kepada query dan analisa dari pada proses transaksi, biasanya mengandung history data dari proses transaksi dan bisa juga data dari sumber lainnya. Data warehouse memisahkan beban kerja analisis dari beban kerja transaksi dan memungkinkan organisasi menggabung/konsolidasi data dari berbagai macam sumber [2].


(13)

Data warehouse merupakan metode dalam perancangan database, yang menunjang DSS (Decission Support System) dan EIS (Executive Information System). Secara fisik data warehouse adalah database, tapi perancangan data warehouse dan database sangat berbeda. Dalam perancangan database tradisional menggunakan normalisasi, sedangkan pada data warehouse normalisasi bukanlah cara yang terbaik [2].

Dari definisi-definisi yang dijelaskan tadi, dapat disimpulkan data warehouse adalah database yang saling bereaksi yang dapat digunakan untuk query dan analisisis, bersifat orientasi subjek, terintegrasi, time-variant, tidak berubah yang digunakan untuk membantu para pengambil keputusan.

2.2.4.1 Kegunaan Data Warehouse

Berdasarkan pengertian data warehouse diatas, data warehouse diperlukan bagi para pengambil keputusan manajemen dari suatu organisasi/perusahaan. Dengan adanya data warehouse, akan mempermudah pembuatan aplikasi-aplikasi DSS (Decision Support System) dan EIS (Executive Information System) karena kegunaan dari data warehouse adalah khusus untuk membuat suatu database yang dapat digunakan untuk mendukung proses analisa (OLAP), mengambil keputusan, pembuatan laporan, penggalian informasi baru (Data Mining) dari banyak data dan proses executive informasi [3].

Beberapa kegunaan data warehouse: a. Pembuatan laporan

Pembuatan laporan merupakan salah satu kegunaan data warehouse yang paling umum dilakukan. Dengan menggunakan query sederhana didapatkan laporan perhari,perbulan, pertahun atau jangka waktu kapanpun yang diinginkan.

b. On-Line Analytical Processing (OLAP)

Dengan adanya data warehouse, semua informasi baik detail maupun hasil summary yang dibutuhkan dalam proses analisa mudah didapat. OLAP mendayagunakan konsep data multidimensi dan memungkinkan para pengguna menganalisa data sampai mendetail, tanpa mengetikkan satupun


(14)

perintah SQL. Hal ini dimungkinkan karena pada konsep multidimensi, maka data yang berupa fakta yang sama bisa dilihat dengan menggunakan fungsi yang berbeda. Fasilitas lain yang ada pada sofware OLAP adalah fasilitas rool-up dan drill-down. Drill-down adalah kemampuan untuk melihat detail dari suatu informasi dan roll-up adalah kebalikannya.

c. Data mining

Data mining merupakan proses untuk menggali (mining) pengetahuan dan informasi baru dari data yang berjumlah banyak pada data warehouse, dengan menggunakan kecerdasan buatan (Artificial Intelegence), statistik dan matematika. Data mining merupakan teknologi yang diharapkan dapat menjembatani komunikasi antara data dan pemakainya.

Beberapa solusi yang diberikan data mining antara lain : 1. Menebak target pasar

Data mining dapat mengelompokkan (clustering) model-model pembeli dan melakukan klasifikasi terhadap setiap pembeli dan melakukan klasifikasi terhadap setiap pemebeli sesuai dengan karakteristik yang diinginkan.

2. Melihat pola beli dari waktu ke waktu

Data mining dapat digunakan untuk melihat pola beli dari waktu ke waktu. 3. cross-market analysis

Data mining dapat dimanfaatkan untuk melihat hubungan antara satu produk dengan produk lainnya.

4. Profil pelanggan

Data mining bisa membantu pengguna untuk melihat profil pembeli sehingga dapat diketahui kelompok pembeli tertentu cenderung kepada suatu produk apa saja.

5. Informasi summary

Data mining dapat membuat laporan summary yang bersifat multidimensi dan dilengkapi dengan informasi statistik lainnya.

6. Proses informasi executive

Data warehouse dapat membuat ringkasan informasi yang penting dengan tujuan membuat keputusan bisnis, tanpa harus menjelajahi keseluruhan data.


(15)

Dengan menggunakan data warehouse segala laporan telah diringkas dan dapat pula mengetahui segala rinciannya secara lengkap, sehingga mempermudah proses pengambilan keputusan. Informasi dan data pada laporan data warehouse menjadi target informative bagi user.

2.2.4.2 Konsep Dasar Data Warehouse

Data warehouse adalah kumpulan macam-macam data yang subject oriented, integrated, time variant, dan nonvolatile dalam mendukung proses pembuatan keputusan [4].

Data warehouse sering diintegrasikan dengan berbagai sistem aplikasi untuk mendukung proses laporan dan analisis data dengan menyediakan data histori, yang menyediakan infrastruktur bagi EIS dan DSS.

a. Subject Oriented

Data warehouse diorganisasikan pada subjek-subjek utama, seperti pelanggan, barang, dan penjualan. Berfokus pada model dan analisis pada data untuk membuat keputusan, jadi bukan pada setiap proses transaksi atau bukan pada OLTP. Menghindari data yang tidak berguna dalam mengambil suatu keputusan.

b. Integrated

Dibangun dengan menggabungkan atau menyatukan data yang berbeda. relational databse, flat file, dan on-line transaction record. Menjamin konsistensi dalam penamaan, struktur pengkodean, dan struktur atribut diantara data satu sama lain.

c. Datawarehouse time variant

Data disimpan untuk menyediakan informasi dari perspektif historical, data yang tahun - tahun lalu atau 4 - 5 tahun. Waktu adalah elemen kunci dari suatu data warehouse pada saat pengcapture-an.

d. Non Volatile

Setiap kali proses perubahan, data akan di tampung dalam tiap-tiap waktu. Jadi tidak di perbaharui terus menerus. Data warehouse tidak memerlukan


(16)

pemrosesan transaksi dan recovery. Hanya ada dua operasi initial loading of data dan access of data.

2.2.4.3 Proses ETL(Extraction, Transformation, Loading)

Tiga fungsi utama yang perlu dilakukan untuk membuat data siap digunakan pada data warehouse adalah extraction, transformation dan loading. Ketiga fungsi ini terdapat pada staging area [5].

Pada data staging ini, disediakan tempat dan area dengan beberapa fungsi seperti data cleansing, change, convert, dan menyiapkan data untuk disimpan serta akan digunakan dalam data warehouse [5].

a. Extraction

Data Extraction adalah proses pengambilan data yang diperlukan dari sumber data warehouse dan selanjutnya dimasukkan pada staging area untuk diproses pada tahap berikutnya. Pada fungsi ini banyak berhubungan dengan berbagai tipe sumber data seperti: Format data, mesin yang berbeda, software dan arsitektur yang tidak sama. Sehingga sebelum proses ini dilakukan, sebaiknya perlu didefinisikan requirement terhadap sumber data yang yang akan digunakan untuk proses berikutnya.

b. Transformation

Pada kenyataannya, pada proses transaksional data disimpan dalam berbagai format sehingga jarang kita temui data yang konsisten antara aplikasi-aplikasi yang ada. Transformasi data ditujukan untuk mengatasi masalah ini. Dengan proses transformasi data ini, kita melakukan standarisasi terhadap data pada satu format yang konsisten. Beberapa contoh ketidakkonsistenan data tersebut dapat diakibatkan oleh tipe data yang berbeda, data length dan lain sebagainya.

c. Load

Data load adalah memindahkan data ke data warehouse. Ada dua loading data yang dilakukan pada data warehouse. Pertama adalah inisial load, proses ini dilakukan pada saat telah selesai mendisain dan membangun data warehouse. Data yang dimasukkan akan sangat besar dan memakan waktu yang relatif lebih


(17)

lama. Kedua Incremental load, dilakukan ketika data warehouse telah dioperasikan. Incremental load ini dapat dilakukan sesuai dengan sistem yang dibangun

2.2.4.4 Arsitektur Data Warehouse

Data Warehouse Design, Modern Principles and Methodologies, Terdapat 3 jenis arsitektur data warehouse yaitu Single-Layer Architecture, Two-Layer Architecture, dan Three-Layer Architecture. Adapun dari penjelasannya akan dijabarkan sebagai berikut : [6]

a. Single Layer Architecture

Dalam Single Layer Architecture hasil akhir yang diinginkan adalah untuk memperkecil total keseluruhan data store, untuk mencapai hasil akhir tersebut data yang bersifat redudansi akan dihapus. Dalam kasus ini data warehouse bersifat virtual artinya data warehouse di implementasikan sebagai dimensional view dari data operasional dan dibuat sebagai middleware. Kelemahan dari arsitektur ini adalah kesalahan dalam menggabungkan antara analisis dan proses transaksi. Gambar 2.3 menjelaskan Single-Layer Architecture dalam data warehouse.

Gambar 2.3 Single-Layer architecture b. Two-Layer Architecture

Dalam suatu perusahaan, data operasional biasanya berada pada daerah kekuasaan departemen masing-masing dalam bentuk database OLTP.. Gambar 2.4 Menjelaskan mengenai Two-Layer Architecture dalam data warehouse,


(18)

dimana dalam arsitektur ini media penyimpanan antara sumber data dan data warehouse dipisahkan.

Gambar 2.4 Two-Layer Architecture

a) Lapisan pertama adalah source layer. Pada lapisan ini, data masih berupa operasional data, artinya data warehouse dibangun dengan mengintegrasikan data-data yang berasal dari berbagai sumber data, yaitu database operasional atau ekernal data lainnya.

b) Lapisan kedua adalah data staging area. Pada lapisan ini, data operasional akan diekstrak ( lebih dikenal dengan proses ETL ) ke dalam data warehouse. Sesuai dengan namanya, aplikasi ETL melakukan fungsi-fungsi Extract, Transform, dan Load. Proses extract adalah proses pengambilan data dari sumber data. Disebut extract, karena proses pengambilan data ini tidak mengambil data matang saja. Proses extract ini harus mengakomodir berbagai macam teknologi yang digunakan oleh sumber data dan diintegrasikan ke dalam database tunggal. Kemudian data hasil extract ini menjalani proses transform yang pada prinsipnya adalah mengubah kode-kode yang ada menjadi kode-kode-kode-kode standar, misalnya kode-kode propinsi. Hal ini perlu dilakukan mengingat data-data yang diambil berasal dari sumber yang berbeda yang kemungkinan memiliki standardisasi yang berbeda pula. Standardisasi diperlukan untuk nantinya memudahkan pembuatan laporan. Proses load dalam ETL adalah suatu proses mengirimkan data yang telah


(19)

menjalani proses transformasi ke gudang data akhir, yaitu data warehouse itu sendiri dimana aplikasi reporting dan business intelligence siap untuk diakses.

c) Lapisan ketiga adalah data warehouse layer. Informasi akan disimpan pada sebuah penyimpanan logic yang tersentralisasi, yaitu data warehouse . Data warehouse dapat diakses secara langsung, dan juga bisa digunakan sebagai sumber untuk membuat data marts yang merupakan sebagian dari duplikasi data warehouse dan dirancang khusus bagian khusus.

d) Lapisan keempat adalah analysis. Ada 4 tugas yang nantinya dapat dilakukan, keempat tugas tersebut yaitu :

1. Pembuatan Laporan (Reporting)

Pembuatan laporan adalah salah satu tugas data warehouse yang paling umum dilakukan, dengan menggunakan query sederhana didapatkan laporan per-hari, minggu, bulan, tahun atau jangka waktu kapanpun yang diinginkan. 2. On-Line Analytical Processing (OLAP)

Dengan adanya data warehouse, semua informasi baik detail ataupun summary yang dibutuhkan dalam proses analisa mudah didapat. OLAP mendayagunakan konsep data multidemensi dan memungkinkan para pengguna menganalisa data sampai mendetail, tanpa mengetik satupun perintah SQL. Hal ini memungkinkan karena menggunakan konsep multidimensi (diintegrasikan kedalam tabel fakta dan tabel dimensi).

3. Data Mining

Data mining merupakan proses untuk menggali (mining) pengetahuan dari data yang berjumlah banyak pada data warehouse, dengan menggunakan kecerdasan buatan (Artificial Intelegence), static dan matematika. Data Mining merupakan teknologi yang diharapkan dapat menjebatani komunikasi antara data dan pelakunya.

4. Proses Informasi Executive

Data warehouse dapat membuat ringkasan informasi yang penting dengan tujuan membuat keputusan bisnis, tanpa harus menjelajahi keseluruhan data. Dengan menggunakan data warehouse segala laporan telah diringkas dan


(20)

dapat pula mengetahui rinciannya secara lengkap sehingga mempermudah pengambilan keputusan. Informasi dan data pada laporan data warehouse menjadi target informative bagi pengguna.

c. Three-Layer Architecture.

Perbedaan Two-Layer Architecture dengan Three-Layer Architecture yaitu terletak pada lapisan ketiga. Dalam arsitektur ini, lapisan ketiga adalah lapisan data reconciled atau operasional data store. Berikut penjelasan dari Three Layer Architecture:

1. Data Operasional disimpan dalam berbagai sistem operasional dalam

setiap bagian organisasi. Lapisan ini terlaksana apabila data operasional yang diperoleh dari sumber data sudah terintegrasi dan bersih (telah melalui proses ETL) dan data-data yang ada dapat terintegrasi, konsisten, benar, mutakhir, dan rinci.

2. Reconciled Data atau Operational Data Store (ODS)

Keuntungan utama dari lapisan data reconciled adalah menciptakan model referensi umum data untuk keseluruhan perusahaan pada saat yang sama juga memisahkan masalah ekstraksi data source dan integrasi operational data store. Penyimpanan data berada dalam gudang data perusahaan atau data mart. Tahap ini berfungsi untuk memasukkan data ke dalam Enterprise Data warehouse (EDW) yang terintegrasi secara terpusat dan tersedia untuk pendukung keputusan.. Gambar 2.5 Menjelaskan mengenai Three-Layer Architecture dalam data warehouse.


(21)

Gambar 2.5 Three-Layer Architecture 2.2.4.5 Jenis Dasar Data Warehouse

Jenis data warehouse yang digunakan oleh perusahaan akan berbeda-beda, data warehouse yang dibangun harus disesuaikan dengan sumber data dan kebutuhan perusahaan tersebut. Berikut jenis dasar data warehouse: [6]

1) Functional Data Warehouse (Data Warehouse Fungsional)

Data base yang digunakan jenis data warehouse ini adalah database yang diperoleh dari kegiatan sehari-hari. Data warehouse dibuat lebih dari satu dan dikelompokkan berdasar fungsi-fungsi yang ada di dalam perusahaan seperti fungsi keuangan (financial), marketing, personalia dan lain-lain. Keuntungan dari bentuk data warehouse seperti ini adalah, sistem mudah dibangun dengan biaya relatif murah sedangkan kerugiannya adalah resiko kehilangan konsistensi data dan terbatasnya kemampuan dalam pengumpulan data bagi pengguna.


(22)

Gambar 2.6 Data Warehouse Fungsional 2) Centralized Datawarehouse (Data Warehouse Terpusat)

Bentuk ini terlihat seperti bentuk data warehouse fungsional, namun terlebih dahulu sumber data dikumpulkan dalam satu tempat terpusat, kemudian data disebar ke dalam fungsinya masing-masing, sesuai kebutuhan persuhaan. Data warehouse terpusat ini, biasa digunakan oleh perusahaan yang belum memiliki jaringan eksternal. Keuntungan dari bentuk ini adalah data benar-benar terpadu karena konsistensinya yang tinggi sedang kerugiannya adalah biaya yang mahal serta memerlukan waktu yang cukup lama untuk membangunnya.

Gambar 2.7 Data Warehouse Terpusat 3) Distributed Data Warehouse (Data Warehouse terdistribusi)


(23)

Pada data warehouse terdistribusi ini, digunakan gateway yang berfungsi sebagai jembatan penghubung antara data warehouse dengan workstation yang menggunakan sistem beraneka ragam. Dengan sistem terdistribusi seperti ini memungkinkan perusahaan dapat mengakses sumber data yang berada diluar lokasi perusahaan (eksternal).

Keuntungannya adalah data tetap konsisten karena sebelum data digunakan data terlebih dahulu di sesuaikan atau mengalami proses sinkronisasi. Sedangkan kerugiannya adalah lebih kompleks untuk diterapkan karena sistem operasi dikelola secara terpisah juga biaya nya yang paling mahal dibandingkan dengan dua bentuk data warehouse lainnya.

Gambar 2.8 Data Warehouse Terdistribusi 2.2.4.6 Metodologi Perancangan Database untuk Data Warehouse

Sembilan tahap metodologi dalam perancangan database untuk data warehouse, yaitu : [7]

Langkah 1 : Pemilihan proses

a. Data mart yang pertama kali dibangun haruslah data mart yang dapat dikirim tepat waktu dan dapat menjawab semua pertanyaan bisnis yang penting

b. Pilihan terbaik untuk data mart yang pertama adalah yang berhubungan dengan sales, misal property sales, property leasing, property advertising.

Langkah 2 : Pemilihan sumber

a. Proses pemilihan secara pasti apa yang diwakili atau direpresentasikan oleh sebuah tabel fakta.


(24)

b. Misal, jika sumber dari sebuah tabel fakta properti sale adalah properti sale individual maka sumber dari sebuah dimensi pelanggan berisi rincian pelanggan yang membeli properti utama

Langkah 3 : Mengidentifikasi dimensi

a. Set dimensi yang dibangun dengan baik, memberikan kemudahan untuk memahami dan menggunakan data mart

b. Dimensi ini penting untuk menggambarkan fakta-fakta yang terdapat pada tabel fakta

c. Misal, setiap data pelanggan pada tabel dimensi pembeli dilengkapi dengan id_pelanggan, no_pelanggan, tipe_pelanggan, tempat_tinggal, dan lain sebagainya.

d. Jika ada dimensi yang muncul pada dua data mart,kedua data mart tersebut harus berdimensi sama, atau paling tidak salah satunya berupa subset matematis dari yang lainnya.

e. Jika sebuah dimensi digunakan pada dua data mart atau lebih,dan dimensi ini tidak disinkronisasi,maka keseluruhan data warehouse akan gagal, karena dua data mart tidak bisa digunakan secara bersama-sama

Langkah 4 : Pemilihan fakta

a. Sumber dari sebuah tabel fakta menentukan fakta mana yang bisa digunakan dalam data mart.

b. Semua fakta harus diekspresikan pada tingkat yang telah ditentukan oleh sumber

Langkah 5 : Menyimpan pre-kalkulasi di tabel fakta a. Hal ini terjadi apabila fakta kehilangan statement

Langkah 6 : Melengkapi tabel dimensi

a. Pada tahap ini kita menambahkan keterangan selengkap - lengkapnya pada tabel dimensi

b. Keterangannya harus bersifat intuitif dan mudah dipahami oleh pengguna Langkah 7 : Pemilihan durasi database

a. Misalnya pada suatu perusahaan asuransi, mengharuskan data disimpan selama 10 tahun atau lebih


(25)

Langkah 8 : Menelusuri perubahan dimensi yang perlahan a. Atribut dimensi yang telah berubah tertulis ulang

b. Atribut dimensi yang telah berubah menimbulkan sebuah dimensi baru c. Atribut dimensi yang telah berubah menimbulkan alternatif

sehingga nilai atribut lama dan yang baru dapat diakses secara bersama pada dimensi yang sama.

Langkah 9 : Menentukan prioritas dan mode query a. Pada tahap ini lebih menggunakan perancangan fisik. 2.2.4.7 Skema Data Warehouse

Skema yang sering digunakan pada data warehouse adalah skema bintang atau snowflake, kedua skema ini sangat mudah dimengerti dan sesuai dengan kebutuhan bisnis, mendukung query sederhana dan menyediakan performa query yang superior dengan meminimalisasi tabel-tabel join [7].

1. Skema Bintang (Star Schema)

Skema bintang merupakan struktuk logikal yang memiliki tabel fakta yang terdiri atas data faktual ditengahnya, dan dikelilingi oleh tabel-tabel dimensi yang berisi referensi data.

Gambar 2.9 Skema Bintang Jenis – jenis Skema Bintang antara lain :


(26)

Dalam skema ini, setiap table harus memiliki primary key yang terdiri dari satu kolom atau lebih. Primary key dari table fakta terdiri dari satu atau lebih foreign key. Foreign key merupakan primary key pada table lain.

Gambar 2.10 Skema Bintang Sederhana b. Skema bintang dengan banyak table fakta

Skema bintang juga bisa terdiri dari satu atau lebih table fakta. Dikarenakan karena table fakta tersebut ada banyak, misalnya disamping penjualan terdapat table fakta forecasting dan result. Walaupun terdapat lebih dari satu table fakta, mereka tetap menggunakan table dimensi bersama-sama.


(27)

2. Snowflake Schema

Merupakan varian dari skema bintang dimana table-table dimensi tidak terdapat data yang di denormalisasi. Dengan kata lain satu atau lebih table dimensi tidak bergabung secara langsung kepada table fakta tapi pada table dimensi lainnya.

Gambar 2.12 Snowflake Schema

3. Fact Constellation Schema

Fact constellation schema adalah dimensional model yang didalamnya terdapat lebih dari satu tabel fakta yang membagi satu atau lebih dimension table. Skema ini lebih kompleks daripada star skema karena berisi berbagai tabel fakta. Dalam fact constellation schema, satu dimensi table bisa digunakan di beberapa tabel fakta sehingga desainnya lebih kompleks. Keuntungan dari fact constellation schema adalah kemampuan untuk memodelkan bisnis lebih akurat menggunakan beberapa tabel fakta. Namun kerugiannya adalah sulit dalam pengelolaan dan desain yang rumit


(28)

Gambar 2.13 Fact Constellation Schema

2.2.4.8 Tujuan Data Warehouse

Data warehouse biasanya dimiliki oleh perusahaan yang sudah besar, yang memiliki banyak cabang, data yang banyak dan tentunya struktur organisasi yang kompleks [3].

Perusahaan yang memiliki banyak transaksi, yang memiliki banyak cabang, yang mengakibatkan data-data barang perusahaan tersebar dilokasi yang berbeda, system operasi yang berbeda, bahkan di basisdata yang berbeda. Sehingga dalam pengambilan sebuah keputusan pihak perusahaan membutuhkan akses ke semua sumber data pada tiap-tiap cabang dan ini tidak efisien. Dari permasalahan ini, Data warehouse hadir sebagai solusi yang kompetitif, efisien untuk pengambilan keputusan di perusahaan.

Tujuan Akhir menggunakan Datawarehouse

1. Menyediakan data organisasi yang mudah diakses oleh manager.

2. Data yang berada di data warehouse bersifat konsisten, dan merupakan kebenaran.


(29)

3. Data warehouse merupakan tempat, dimana data yang telah digunakan di publikasikan.

4. Kualitas data di data warehouse dapat diandalkan. 2.3 Alat-alat Pemodelan Sistem

Alat-alat pemodelan sistem membahas mengenai tools apa saja yang digunakan dalam membuat tugas akhir ini.

2.3.1 Diagram Konteks

diagram konteks merupakan diagram yang menggambarkan kondisi sistem yang ada baik input maupun output serta menyertakan terminator yang terlibat dalam penggunaan sistem. Diagram ini akan memberi gambaran tentang keseluruhan sistem. Sistem dibatasi oleh boundary (dapat digambarkan dengan garis putus). Dalam diagram konteks hanya ada satu proses. Tidak boleh ada store dalam diagram konteks [8].

Diagram konteks berisi gambaran umum (secara garis besar) sistem yang akan dibuat. Secara kalimat, dapat dikatakan bahwa diagram konteks ini berisi

“siapa saja yang memberi data (dan data apa saja) ke sistem, serta kepada siapa

saja informasi (dan informasi apa saja) yang harus dihasilkan sistem.” Maka dapat disimpulkan bahwa diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem.

2.3.2 Data Flow Diagram (DFD)

Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual maupun komputerisasi. DFD ini sering disebut juga dengan nama Bubble chart, Bubble diagram, model proses, diagram alur kerja, atau model fungsi. DFD ini adalah salah satu alat pembuatan model yang sering


(30)

digunakan, khususnya bila fungsi-fungsi sistem merupakan bagian yang lebih penting dan kompleks dari pada data yang dimanipulasi oleh sistem. Dengan kata lain, DFD adalah alat pembuatan model yang memberikan penekanan hanya pada fungsi sistem [8].

DFD merupakan alat perancangan sistem yang berorientasi pada alur data dengan konsep dekomposisi dapat digunakan untuk penggambaran analisa maupun rancangan sistem yang mudah dikomunikasikan oleh profesional sistem kepada pemakai maupun pembuat program.

2.3.3 Entity Relation Diagram (ERD)

Entity Relationship Diagram merupakan model data berupa notasi grafis dalam pemodelan data konseptual yang menggambarkan hubungan antara penyimpan satu dengan penyimpan yang lain. Model data sendiri merupakan sekumpulan cara, peralatan untuk mendeskripsikan data-data yang memiliki hubungan satu sama lain, semantiknya, serta batasan konsistensi. Model data terdiri dari model hubungan entitas dan model relasional. Diagram hubungan entitas ditemukan oleh Peter Chen dalam buku Entity Relational Model-Toward a Unified of Data. Pada saat itu diagram hubungan entitas dibuat sebagai bagian dari perangkat lunak yang juga merupakan modifikasi khusus, karena tidak ada bentuk tunggal dan standar dari diagram hubungan entitas [8].

2.4 Alat-alat Pembangunan Perangkat Lunak

Alat-alat Pembangunan Perangkat Lunak membahas mengenai alat atau tools apa saja yang digunakan dalam membuat Aplikasi data warehouse dalam penelitian ini.

2.4.1 C#

Bahasa pemrograman C# dikembangkan oleh Microsoft sebagai bahasa yang simple, modern, general purpose, dan berorientasi objek. Pengembangan bahasa C# sangat dipengaruhi oleh bahasa pemrograman terdahulu, terutama C++. Delphi, dan Java. C++ dikenal memiliki kecepatan yang tinggi dan memiliki


(31)

akses memori hapir hingga ke low level. Namun bagi para programmer, C++ merupakan Bahasa yang relatif rumit dibandingkan bahasa pemrograman lainnya. Kehadiran C# memberi suntikan optimisme bagi para programmer untuk dapat mengembangkan aplikasi yang berdasa guna dengan baik cepat dan lebih mudah. Bahasa C# masih harus dikembangkan dengan kemampuan untuk melakukan berbagai task. Namun dalam hal performansi hingga saat ini C++ masih diakui sebagai salah satu yang terbaik.

C# dikembangkan sejalan dengan pengembangan teknologi .Net. Teknologi .NET telah berevolusi dari .NET 1.0 hingga .NET 4.0. Sendiri merupakan sebuah framework yang memiliki base class library, dan bisa diimplementasikan ke dalam beberpaa bahasa pemrograman yang dikembangkan Microsoft termasuk diantaranya adalah bahasa C#. Microsoft mengembangkan IDE yang secara khusus mendukung pengembangan aplikasi dengan teknologi .NET, versi terakhirnya yaitu Visual Studio 2010, mendukung teknologi .Net 4. Diantara karakteristik dari .NET adanya sebuah Common Langguage Runtime (CLR). CLR sendiri merupakan sebuah komponen virtual machine yang akan diakses program pada saat runtime kode yang ditulis dalam bahasa C# ataupun VB.NET misalnya dicompile oleh .NET Compiler menjadi code dalam format Common Intermediate Langguage (CIL).

CIL merupakan sebuah format bahasa standar pada level intermediate yang digunakan dalam bidang teknologi .NET apa pun bahasa pemrograman yang digunakan oleh kode. Kemudian pada saat runtime, CLR mengeksekusi CIL dengan melakukan proses loading dan linkin serta menghasilkan bahasa mesin untuk mengeksekusi program. Proses ini memunculkan istilah multilangguage pada pengembangan aplikasi .Net programmer memiliki pilihan untuk menentukan pilihan untuk menggunakan bahasa pemrograman, yang familiar bagi mereka dan apapun bahasa pemgraman apapun mereka tetap memilih akan tetap memiliki keungulan-keungulan dan teknologi lainnya.


(32)

Standar European Computer Maufacturer Association (ECMA) mendatarkan beberapa tujuan desain dari bahasa pemrograman C#, sebagai berikut [9]:

1) Bahasa pemrograman C# dibuat sebagai bahasa pemrograman yang bersifat bahasa pemrograman general – purpose (untuk tujuan jamak), berorientasi objek, modern, dan sederhana.

2) Bahasa pemrograman C# ditujukan untuk digunakan dalam mengembangkan komponen perangkat lunak yang mampu mengambil keuntungan dari lingkungan terdistribusi.

3) Portabilitas programmer sangatlah penting, khususnya bagi programmer yang telah lama menggunakan bahasa pemrogaman C dan C++.

4) Dukungan untuk internasionalisasi (multi- language) juga sangat penting. 5) C# ditujukan agar cocok digunakan untuk menulis program aplikasi baik

dalam sistem klien-server (hosted system) maupun sistem 38 embedded (embedded system), mulai dari perangkat lunak yang sangat besar yang menggunakan sistem operasi yang canggih hingga kepada perangkat lunak yang sangat kecil yang memiliki fungsi-fungsi terdedikasi.

2.4.2 SQL Server

SQL Server adalah sistem manajemen database relasional (RDBMS) yang dirancang untuk aplikasi dengan arsitektur client/server. Istilah client, server, dan client/server dapat digunakan untuk merujuk kepada konsep yang sangat umum atau hal yang spesifik dari perangkat keras atau perangkat lunak. Pada level yang sangat umum, sebuah client adalah setiap komponen dari sebuah sistem yang meminta layanan atau sumber daya (resource) dari komponen sistem lainnya. Sedangkan sebuah server adaah setiap komponen sistem yang menyediakan layanan atau sumber daya ke komponen sistem lainnya. [8].


(33)

31 3.1

Analisis sistem merupakan penguraian dari sistem yang telah ada dengan tujuan untuk merancang sistem yang baru atau memperbaharui. Tahap analisis sistem ini dari tahap mengumpulkan dan mengimplementaskan data-data yang ada, menganalisis permasalahan, dan menemukan kelemahan dari sistem yang berjalan supaya dapat diusulkan perbaikannya. Langkah-langkah dalam analisis sistem antara lain :

1. Analisis Masalah 2. Analisis Data

3. Analisis Kebutuhan Informasi 4. Pemodelan Data Warehouse

5. Spesifikasi Kebutuhan Perangkat Lunak 6. Analisis Kebutuhan Non Fungsional 7. Analisis Kebutuhan Fungsional 8. Spesifikasi Proses

9. Kamus data DFD 3.1.1 Analisis Masalah

CV.Widuri merupakan perusahaan yang bergerak di bidang makanan ringan, membutuhkan informasi yang lebih lengkap dari sistem yang sudah ada pada saat ini, berdasarkan penelitian yang dilakukan pada CV.Widuri, adapun masalah-masalah yang timbul adalah sebagai berikut :

1. Dalam proses bisnisnya saat ini perusahaan sulit mendapatkan informasi yang memadai untuk melakukan analisis terhadap keinginan pasar.

2. Data yang masih terpisah – pisah dan belum terintegrasi sehingga sulit untuk mendapatkan informasi yang lebih baik.


(34)

3.1.2 Analisis Data

Analisis data merupakan tahap analisis terhadap data yang diolah dalam sistem atau prosedur yang sedang berjalan.

Berdasarkan analisis proses yang sedang berjalan, data yang digunakan adalah sebagai berikut:

1. Table toko 2. Table marketing 3. Table penjualan 4. Table makanan 5. Table pembelian 6. Table pemesanan 7. Table suplier

Penjelasan struktur tabel dari masing-masing tabel yang akan digunakan adalah sebagai berikut:

1. Table toko

Tabel toko merupakan tabel untuk menyimpan data toko yang memesan barang ke CV.Widuri, primary key di tabel ini adalah id_toko. Untuk lebih jelasnya struktur tabel toko dapat dilihat pada tabel 3.1 Tabel Toko.

Tabel 3.1 Tabel Toko

Nama Field Tipe Data Ukuran Kunci

id_toko Varchar 8 PK

nama_toko Varchar 30 alamat_toko Varchar 45 nama_pemilik Varchar 30 no_telepon Varchar 15 2. Table marketing

Tabel marketing merupakan tabel untuk menyimpan data marketing yang bekerja di CV.Widuri, primary key di tabel ini adalah id_ marketing. Untuk lebih jelasnya struktur tabel ukuran dapat dilihat pada tabel 3.2 Tabel marketing.


(35)

Tabel 3.2 Tabel Marketing

Nama Field Tipe Data Ukuran Kunci

id_marketing Varchar 8 PK

nama_marketing Varchar 30 alamat_marketing Varchar 45 tempat_lahir Varchar 25

tanggal_lahir Date -

jenis_kelamin Varchar 10

no_telepon Varchar 15

pendidikan Varchar 10

3. Table penjualan

Tabel penjualan merupakan tabel untuk menyimpan data penjualan yang digunakan dalam proses transaksi di CV.Widuri, primary key di tabel ini adalah no_penjualan. Untuk lebih jelasnya struktur tabel ukuran dapat dilihat pada tabel 3.3 Tabel penjualan.

Tabel 3.3 Tabel Penjualan

Nama Field Tipe Data Ukuran Kunci

no_penjualan Varchar 8 PK

id_penjualan Varchar 8

id_marketing Varchar 8 FK references marketing

(„id_marketing’)

nama_marketing Varchar 30

id_toko Varchar 8 FK references toko („id_toko’)

nama_toko Varchar 30

id_makanan Varchar 8 FK references makanan

(„id_makanan’)

nama_makanan Varchar 45

harga_makanan Float -


(36)

Nama Field Tipe Data Ukuran Kunci

total Float -

id_tanggal_penjualan Varchar 8 tanggal_penjualan Date -

4. Table makanan

Tabel makanan merupakan tabel untuk menyimpan data makanan yang ada di CV.Widuri, primary key di tabel ini adalah id_makanan. Untuk lebih jelasnya struktur tabel ukuran dapat dilihat pada tabel 3.4 Tabel makanan.

Tabel 3.4 Tabel Makanan

Nama Field Tipe Data Ukuran Kunci

id_makanan Varchar 8 PK

nama_ makanan Varchar 45 harga_ makanan Float - keterangan Varchar 30 5. Table pembelian

Tabel pembelian tambahan merupakan tabel untuk menyimpan data pembelian makanan tambahan yang dibeli oleh CV.Widuri, primary key di tabel ini adalah no_pembelian. Untuk lebih jelasnya struktur tabel ukuran dapat dilihat pada tabel 3.5Tabel pembelian barang tambahan.

Tabel 3.5 Tabel Pembelian

Nama Field Tipe Data Ukuran Kunci

no_pembelian_barang Varchar 8 PK

id_pembelian_barang Varchar 8

id_suplier Varchar 8 FK references suplier

(„id_suplier’)

nama_suplier Varchar 30

id_makanan Varchar 8 FK references makanan

(„id_makanan’)

nama_makanan Varchar 45


(37)

Nama Field Tipe Data Ukuran Kunci

jumlah Float -

total Float -

Tanggal_pembelian Varchar 8 Tanggal_pembelian_barang Date -

6. Table pemesanan

Tabel pemesanan merupakan tabel untuk menyimpan data pemesanan yang berada di CV.Widuri, primary key di tabel ini adalah no_pemesanan. Untuk lebih jelasnya struktur tabel ukuran dapat dilihat pada tabel 3.6 Tabel pemesanan.

Tabel 3.6 Tabel Pemesanan

Nama Field Tipe Data Ukuran Kunci

id_pemesanan Varchar 8 PK

no_pemesanan Varchar 8

id_toko Varchar 8 FK references toko („id_toko’)

nama_toko Varchar 30

id_makanan Varchar 8 FK references makanan

(„id_makanan’)

nama_makanan Varchar 45

jumlah Float -

Id_tanggal_pemesanan Varchar 8 tanggal_pemesanan Date -

7. Table suplier

Tabel suplier merupakan tabel untuk menyimpan data suplier yang digunakan dalam proses pembelian barang di CV.Widuri, primary key di tabel ini adalah id_suplier. Untuk lebih jelasnya struktur tabel ukuran dapat dilihat pada tabel 3.7 Tabel supplier.

Tabel 3.7 Tabel Suplier

Nama Field Tipe Data Ukuran Kunci

id_suplier Varchar 8 PK


(38)

Nama Field Tipe Data Ukuran Kunci alamat_suplier Varchar 45

no_telepon Varchar 15

seluruh tabel diatas akan berelasi dan untuk bisa melihat lebih jelas relasinya dapat dilihat pada gambar 3.1 Skema Relasi OLTP.

Gambar 3.1 Skema Relasi OLTP 3.1.3 Analisis Kebutuhan Informasi

Analisis kebutuhan informasi adalah tahap menganalisis informasi apa saja yang dibutuhkan oleh CV.Widuri dari data warehouse yang akan di bangun. Berdasarkan hasil analisis masalah ada beberapa kebutuhan informasi yang dibutuhkan oleh pihak CV.Widuri adalah sebagai berikut:

1. Informasi jumlah makanan paling laku dijual setiap bulan dan tahun. 2. Informasi jumlah makanan yang dibeli setiap toko dan setiap daerah yang


(39)

3. Informasi jumlah makanan yang paling sering dijual marketing di setiap daerah dalam setiap bulan dan tahun.

4. Informasi jumlah makanan yang dipesan oleh setiap toko, setiap daerah dalam setiap bulan dan tahun.

5. Informasi jumlah makanan yang dipasok oleh suplier dalam setiap bulan dan tahun.

3.1.4 Pemodelan Data Warehouse

Pada tahap pemodelan data warehouse, akan dijelaskan mengenai proses-proses yang akan dianalisis guna membangun kebutuhan terhadap data warehouse.

3.1.4.1 Arsitektur Pembangunan Data Waerhouse

Jenis data warehouse yang akan dibangun adalah jenis data warehouse fungsional, dimana sumber data yang akan disimpan dalam data warehouse adalah data eksternal, yaitu data sehari-hari dari masing-masing aktivitas yang

berupa file microsoft office excel dengan format “Xls”. Jenis Data warehouse

fungsional terdiri dari lapisan source layer, Data Staging, data warehouse layer dan analysis. Berikut gambar arsitektur data warehouse fungsional.

Gambar 3.2 Data Warehouse Fungsional 3.1.4.2 Source Layer

Source layer adalah lapisan sumber data, dimana pada lapisan ini data masih berupa file eksternal. Data eksternal yang akan digunakan dalam


(40)

pembangunan data warehouse ini adalah data berupa file excel dengan format xls. File excel ini akan di import kedalam database, Sebelum mengimport file excel ke dalam database, terlebih dahulu kolom dan isi data dari tiap field atau record yang ada dianalisa agar struktur tabel yang akan dibangun dalam data warehouse sesuai dengan file yang akan di import ke database.

3.1.4.3 Data Staging

Pada lapisan ini, data ekternal yang sudah diimport kedalam database akan diekstrak, ditransform dan kemudian diload ke dalam data warehouse. Proses ini lebih dikenal dengan proses ETL. Proses ETL merupakan proses yang sangat penting dalam membangun data warehouse, semakin tinggi tingkat kebenaran proses ETL semakin akurat informasi yang diambil dari data warehouse.

Gambar 3.3 Langkah-Langkah ETL 3.1.4.4 Proses ETL

Proses etl menjelaskan tentang tahapan yang akan di lakukan dalam proses staging. Seperti penjelasan dibawah ini :

1. Proses Extraction

Langkah pertama pada proses ETL adalah mengekstrak data dari sumber-sumber data. Data warehouse dapat menggabungkan data dari sumber-sumber yang berbeda dengan sistem-sistem terpisah yang menggunakan format data yang


(41)

berbeda. Ektraksi adalah mengubah data ke dalam suatu format yang berguna untuk proses transformasi. Tabel 3.8 menunjukan table beserta field yang di extract.

Tabel 3.8 Tabel Extract

No. Nama Tabel Field

1 toko id_toko

nama_toko alamat_toko nama_pemilik no_telepon

2 marketing id_marketing

nama_marketing alamat_marketing tempat_lahir tanggal_lahir jenis_kelamin no_telpon pendidikan

3 penjualan no_penjualan

id_penjualan id_marketing nama_marketing id_toko

nama_toko id_makanan nama_makanan harga_makanan jumlah

total


(42)

No. Nama Tabel Field

tanggal_penjualan

4 makanan id_ makanan

nama_makanan harga_makanan keterangan

5 pembelian no_pembelian

id_pembelian id_ suplier nama_suplier id_makanan nama_makanan harga_beli jumlah total

Id_tanggal_pembelian tanggal_pembelian

6 pemesanan no_pemesanan

id_pemesanan id_toko nama_toko id_makanan nama_makanan jumlah

Id_tanggal_pemesanan tanggal_pemesanan

7 suplier id_suplier

nama_suplier alamat_suplier no_telepon


(43)

2. Proses Transformation

Proses transform yang dilakukan adalah cleaning dan conditioning. a) Cleaning

Proses cleaning membersihkan data-data yang tidak perlu dari tabel yang telah di-extract yaitu menghilangkan filed yang tidak terpakai. Berikut merupakan nama field yang dihilangkan dalam proses cleaning :

1. Pada table_toko tidak memerlukan field nama_pemilik dan no_telpon. 2. Pada table_marketing tidak memerlukan field tempat_lahir, tanggal_lahir,

jenis_kelamin, dan pendidikan.

3. Pada table_bahan tidak memerlukan field harga dan keterangan. 4. Pada table_barang tidak memerlukan field keterangan.

Tabel 3.9 Cleaning Tabel Toko

toko dim_toko

No Field No Field

1 id_toko 1 id_toko

2 nama_toko 2 nama_toko

3 alamat_toko 3 alamat_toko

4 nama_pemilik 5 no_telepon

Pada tabel ini menghilangkan beberapa field nama_pemilik dan no_telpon karena tidak dibutuhkan dalam proses penjualan.

Tabel 3.10 Cleaning Tabel Marketing

marketing dim_marketing

No Field No Field

1 id_marketing 1 id_marketing

2 nama_marketing 2 nama_marketing

3 alamat_marketing

4 tempat_lahir

5 tanggal_lahir

6 jenis_kelamin

7 no_telpon


(44)

Pada tabel ini menghilangkan beberapa field alamat_marketing,

no_telpon,tempat_lahir, tanggal_lahir, jenis_kelamin, dan pendidikan karena tidak

dibutuhkan dalam proses penjualan.

Tabel 3.11 Cleaning Tabel Suplier

bahan dim_bahan

No Field No Field

1 id_suplier 1 id_suplier

2 nama_suplier 2 nama_suplier

3 Alamat_suplier 4 no_telepon

Pada tabel ini menghilangkan beberapa field harga dan keterangan karena tidak dibutuhkan dalam proses OLAP.

Tabel 3.12 Cleaning Tabel Barang

barang dim_barang

No Field No Field

1 id_makanan 1 id_makanan

2 nama_makanan 2 nama_makanan

3 harga_makanan 3 harga_makanan

4 keterangan

Pada tabel ini menghilangkan beberapa field keterangan karena tidak dibutuhkan dalam proses OLAP.

b) Conditioning

Proses conditioning dilakukan dengan pemilihan tabel dan atribute dari sumber data ke target data (data warehouse). Penjelasan dari conditioning pada proses transformasi yaitu mengubah field tanggal di pecah menjadi beberapa field (tanggal, bulan, tahun) karena ketika proses analisis, data yang dibutuhkan bisa dianalisis lebih dalam berdasarkan range waktu yang diinginkan. Untuk lebih jelasnya lihat table dibawah ini dibawah ini :


(45)

Tabel 3.13 Tabel Conditioning dim_tanggal_pemesanan Tanggal_pemesanan dim_tanggal_pemesanan

6/07/2014 tanggal bulan tahun

19 /07/ 2014 6 07 2014

24/07/2014 19 07 2014

1/08/2014 24 07 2014

9/08/2014 1 08 2014

9 08 2014

Tabel 3.14 Tabel Conditioning dim_tanggal_penjualan Tanggal_Penjualan dim_tanggal_penjualan

21/04/2014 tanggal bulan tahun

09 /05/ 2014 21 04 2014

24/07/2014 09 05 2014

1/08/2014 24 07 2014

Tabel 3.15 Tabel Conditioning dim_tanggal_pembelian

Tanggal_Pembelian_barang Dim_waktu_pembelian_barang

1/08/2014 tanggal bulan tahun

9/08/2014 1 08 2014

18/08/2014 9 08 2014

25/08/2014 18 08 2014

30/08/2014 25 08 2014

3. Proses Load

Pada proses ini, data yang sudah dibaca, dibersihkan, dan dirubah formatnya, akan disimpan pada data warehouse. Teknik yang akan digunakan adalah update. Data yang sudah ada tidak akan dihapus atau diubah karena data akan di-update secara berkala. Nantinya semua data yang sudah melalui proses extraction, dan transformation akan langsung dimasukkan ke data warehouse tanpa merubah data yang sudah ada.


(46)

a. Proses ETL data barang

Proses ini adalah langkah – langkah pembentukan dimensi barang yang dapat dilihat pada gambar dibawah ini :

Gambar 3.4 Proses ETL Data Barang Penjelasan :

1) Ektraksi data barang yang ada pada data base OLTP. 2) Cleaning data yang nilainya null.

3) Filter berdasarkan kolom-kolom yang dibutuhkan.

4) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

5) Load data ke dimensi barang. b. Proses ETL data toko

Proses ini adalah langkah – langkah pembentukan dimensi toko yang dapat dilihat pada gambar dibawah ini :


(47)

Gambar 3.5 Proses ETL Data Toko Penjelasan :

1) Ektraksi data toko yang ada pada data base OLTP. 2) Cleaning data yang nilainya null.

3) Filter berdasarkan kolom-kolom yang dibutuhkan.

4) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

5) Load data ke dimensi toko. c. Proses ETL data marketing

Proses ini adalah langkah – langkah pembentukan dimensi marketing yang dapat dilihat pada gambar dibawah ini :


(48)

Gambar 3.6 Proses ETL Data Marketing Penjelasan :

1) Ektraksi data marketing yang ada pada data base OLTP. 2) Cleaning data yang nilainya null.

3) Filter berdasarkan kolom-kolom yang dibutuhkan.

4) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

5) Load data ke dimensi marketing. d. Proses ETL data penjualan

Proses ini adalah langkah – langkah pembentukan fakta penjualan yang dapat dilihat pada gambar dibawah ini :


(49)

Gambar 3.7 Proses ETL Data Penjualan Penjelasan :

1) Ektraksi data penjualan yang ada pada data base OLTP. 2) Filter berdasarkan kolom-kolom yang dibutuhkan.

3) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

4) Load data ke fakta penjualan. e. Proses ETL data tanggal penjualan

Proses ini adalah langkah – langkah pembentukan dimensi tanggal penjualan yang dapat dilihat pada gambar dibawah ini :


(50)

Gambar 3.8 Proses ETL Data Tanggal Penjualan Penjelasan :

1) Ektraksi data penjualan yang ada pada data base OLTP. 2) Pengelompokan berdasarkan tanggal penjualan.

3) Cleaning data yang nilainya null. 4) Filter berdasarkan tanggal penjualan.

5) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

6) Load data ke dimensi tanggal penjualan. f. Proses ETL data tanggal pemesanan

Proses ini adalah langkah – langkah pembentukan dimensi tanggal pemesanan yang dapat dilihat pada gambar dibawah ini :


(51)

Gambar 3.9 Proses ETL Data Tanggal Pemesanan Penjelasan :

1) Ektraksi data pemesanan yang ada pada data base OLTP. 2) Pengelompokan berdasarkan tanggal penjualan.

3) Cleaning data yang nilainya null. 4) Filter berdasarkan tanggal pemesanan.

5) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

6) Load data ke dimensi tanggal pemesanan. g. Proses ETL data tanggal pembelian

Proses ini adalah langkah – langkah pembentukan dimensi tanggal pembelian yang dapat dilihat pada gambar dibawah ini :


(52)

Gambar 3.10 Proses ETL Data Tanggal Pembelian Penjelasan :

1) Ektraksi data pembelian yang ada pada data base OLTP. 2) Pengelompokan berdasarkan tanggal pembelian.

3) Cleaning data yang nilainya null. 4) Filter berdasarkan tanggal penjualan.

5) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

6) Load data ke dimensi tanggal pembelian. h. Proses ETL data suplier

Proses ini adalah langkah – langkah pembentukan dimensi suplier yang dapat dilihat pada gambar dibawah ini :


(53)

Gambar 3.11 Proses ETL Data Suplier Penjelasan :

1) Ektraksi data suplier yang ada pada data base OLTP. 2) Cleaning data yang nilainya null.

3) Filter berdasarkan kolom-kolom yang dibutuhkan.

4) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

5) Load data ke dimensi suplier. 6) Load data ke dimensi marketing. i. Proses ETL data pemesanan

Proses ini adalah langkah – langkah pembentukan fakta pemesanan yang dapat dilihat pada gambar dibawah ini :


(54)

Gambar 3.12 Proses ETL Data Pemesanan Penjelasan :

1) Ektraksi data pemesanan yang ada pada data base OLTP. 2) Filter berdasarkan kolom-kolom yang dibutuhkan.

3) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

4) Load data ke fakta pemesanan. j. Proses ETL data pembelian

Proses ini adalah langkah – langkah pembentukan fakta pembelian yang dapat dilihat pada gambar dibawah ini :


(55)

Gambar 3.13 Proses ETL Data Pembelian Penjelasan :

1) Ektraksi data pembelian yang ada pada data base OLTP. 2) Filter berdasarkan kolom-kolom yang dibutuhkan.

3) Pengecekan data apabila data sudah ada maka update data, jika data belum ada maka insert data.

4) Load data ke fakta pembelian. 3.1.3.4 Data WareHouse Layer

Pada lapisan ini, data yang sudah melalui proses ETL akan disimpan pada sebuah penyimpanan logic yang tersentralisasi yaitu data warehouse. Nantinya akan dibutuhkan tiga tabel fakta yaitu tabel fakta pemesanan, table fakta penjualan, dan table fakta pembelian barang. Selain itu akan ada tabel dimensi yang akan digunakan bersama dalam beberapa tabel fakta. Melihat dari kebutuhan


(56)

tersebut, maka skema data warehouse yang akan digunakan adalah Fact constellations. Untuk lebih jelasnya, skema relasi data warehouse dapat dilihat pada gambar dibawah ini :


(57)

Tabel dibawah ini menunjukan jenis masing-masing tabel yang ada pada skema relasi di atas.

Tabel 3.16 Tabel penjelasan skema data warehouse

NO NAMA JENIS

1 fact_penjualan Fakta

2 fact_pemesanan Fakta

3 fact_pembelian Fakta

4 dim_toko Dimensi

5 dim_barang Dimensi

6 Dim_suplier Dimensi

7 dim_marketing Dimensi

8 Dim_waktu_penjualan Dimensi

9 Dim_waktu_pemesanan Dimensi

10 Dim_waktu_pembelian_barang Dimensi

Tabel fakta dan dimensi yang digunakan dalam data warehouse berasal dari data data eksternal sedang berjalan dan telah melalui proses ETL.

3.1.3.5 OLAP

Setelah data warehouse terbentuk, langkah terakhir adalah melakukan pengambilan data dari data warehouse. Dalam pembangunan data warehouse kali ini, hasil output dari data warehouse akan berupa laporan dan juga digunakan untuk analisis data dengan OLAP.

Untuk proses OLAP, teknik analisis yang akan digunakan adalah slicing dan dicing. Kedua teknik tersebut dipilih karena sangat membantu dalam proses filtering data berdasarkan tiap dimensi maupun turunan dari masing-masing dimensi. Filtering data tersebut tidak hanya berdasarkan satu dimensi saja, tetapi bisa juga dari beberapa atau semua dimensi. Selain itu, dengan teknik slicing dan dicing kebutuhan informasi di CV. Widuri Perdana sudah terpenuhi yaitu data penjualan, pemesanan, dan pembelian barang yang nantinya dapat Filtering.


(58)

3.1.5 Spesifikasi Kebutuhan Perangkat Lunak

Spesifikasi kebutuhan perangkat lunak berisi deskripsi dari kebutuhan perangkat lunak yang akan dibangun baik kebutuhan fungsional maupun kebutuhan non fungsional. Untuk lebih jelasnya deskripsi kebutuhan fungsional dapat dilihat pada tabel 3.23 spesifikasi kebutuhan perangkat lunak fungsional dan deskripsi kebutuhan non-fungsional dapat dilihat pada tabel 3.24 spesifikasi kebutuhan perangkat lunak non-fungsional.

Tabel 3.17 Tabel Spesifikasi Kebutuhan Perangkat Lunak Fungsional

Kode Kebutuhan

SKPL-F1 Sistem dapat melakukan proses Import data SKPL-F2 Sistem dapat melakukan proses Ektraksi data SKPL-F3 Sistem dapat melakukan transform data SKPL-F4 Sistem dapat melakukan proses Load data

SKPL-F5 Sistem dapat melakukan analisi terhadap pemesanan SKPL-F6 Sistem dapat melakukan analisi terhadap penjualan SKPL-F7 Sistem dapat melakukan analisi terhadap pembelian SKPL-F8 Sistem dapat menampilkan hasil analisi berupa

gerafik

SKPL-F9 Sistem dapat mencetak laporan

Tabel 3.18 Tabel Spesifikasi Kebutuhan Perangkat Lunak Non Fungsional

Kode Kebutuhan

SKPL-F1 Sistem dapat berjalan pada platform

windows

SKPL-F2 Bahasa pemograman yang digunakan

adalah c#

3.1.6 Analisis Kebutuhan Non Fungsional

Analisis kebutuhan non fungsional dilakukan untuk menghasilkan spesifikasi yang rinci mengenai segala hal yang dapat dikerjakan oleh sistem pada saat diimplementasikan. Hasil dari analisis ini akan menentukan masukan yang dibutuhkan sistem, keluaran yang dihasilkan sistem, lingkup proses yang


(59)

digunakan untuk mengolah masukan sehingga menghasilkan keluaran yang diinginkan, kendali terhadap sistem, dan macam-macam kategori pengguna sistem.

A. Analisis Pengguna

Analisis pengguna dilakukan untuk mengetahui tugas dan karakteristik pengguna yang akan menggunakan sistem yang akan dibangun. Dengan mempertimbangkan tingkat pengalaman pengguna dalam menggunakan komputer dapat dirancang sebuah sistem yang mudah dipelajari dan digunakan oleh pengguna tersebut.

Karakteristik pengguna pada CV.Widuri yaitu dapat mengoprasikan komputer dan software yang sering digunakan yaitu Microsoft Office. Dari hasil pengumpulan data dapat disimpulkan yang akan menggunakan sistem ini sudah terpenuhi.

B. Analisis Perangkat Keras

Analisis kebutuhan perangkat keras adalah tahap analisis terhadap perangkat keras yang sudah ada dan digunakan di CV.Widuri, serta analisis terhadap kebutuhan minimum perangkat keras untuk menjalankan aplikasi ini. Spesifikasi perangkat keras yang ada di Cv.Widuri adalah sebagai berikut:

1. Processor : Intel Dual Core, 2.6 GHz 2. Memory : RAM 2 GB

3. Harddisk : 500 GB 4. VGA : 512 GB

Sedangkan kebutuhan minimum perangkat keras yang diperlukan untuk aplikasi ini adalah sebagai berikut :

1. Processor : Intel Dual Core, 2.6 GHz 2. Memory : RAM 2 GB

3. Harddisk : 250 GB 4. VGA : 512 GB

Dari analisis diatas dapat disimpulkan bahwa kebutuhan perangkat keras untuk dapat mengimplementasikan sistem ini sudah terpenuhi.


(60)

C. Analisis Perangkat Lunak

Analisis kebutuhan perangkat lunak adalah tahap analisis terhadap perangkat lunak yang digunakan di CV.Widuri dan analisis perangkat lunak yang akan digunakan untuk menjalankan aplikasi ini. Perangkat lunak yang digunakan di CV.Widuri adalah sebagai berikut:

1. Sistem operasi Windows 7

2. Untuk mengolah data menggunakan aplikasi Microsoft office 2010

Berikut ini merupakan perangkat lunak yang dibutuhkan untuk menjalankan aplikasi ini:

1. Sistem operasi Windows 7

2. SQL Server 2014 sebagai tool dalam mengolah database 3. Microsoft Visual Studio sebagai tool pembangun aplikasi 3.1.7 Analisis Kebutuhan Fungsional

Analisis kebutuhan fungsional menggambarkan proses kegiatan yang akan diterapkan dalam sebuah sistem. Analisis yang akan dibuat untuk menggambarkan model fungsional dan aliran informasi yaitu diagram konteks dan data flow diagram (DFD).

3.1.7.1Diagram konteks

Pembuatan diagram konteks dari sistem pendekatan struktur ini menggambarkan sistem secara garis besar yang kemudian akan dipecah menjadi bagian-bagian lebih terperinci.

Adapun diagram konteks dari sistem yang akan dibangun dapat dilihat pada gambar berikut :


(61)

user Aplikasi data

warehouse Data OLTP Data OLTP

Import data makanan Import data marketing Import data toko Import data suplier Import data pemesanan

Import data penjualan Import data pembelian

ETL OLAP Reporting

Info ETL Info OLAP Cetak laporan

Gambar 3.15 Diagram Konteks 3.1.7.2Data Flow Diagram (DFD)

Data Flow Diagram (DFD) merupakan proses yang menggambarkan suatu alir informasi yang lebih detail dan terperinci yang merupakan pengembangan dari diagram konteks. Berikut ini merupakan Data Flow Diagram dari sistem yang akan dibangun :

1. DFD Level 1 Aplikasi Data Warehouse

DFD Level 1 aplikasi data warehouse adalah penurunan dari diagram konteks untuk menjabarkan proses-proses yang akan terjadi dalam sistem. Gambar DFD Level 1 dapat dilihat pada gambar dibawah ini :


(62)

1 Proses Import Data

User

Data_OLTP Import data makanan

Import data marketing Import data toko Import data suplier Import data pemesanan

Import data penjualan Import data pembelian

Data operasional 2 Proses ETL Data OLTP Dim_toko Dim_makanan fact_pemesanan Dim_waktu_pemesanan Dim_marketing fact_pembelian Dim_waktu_pembelian Dim_waktu_penjualan fact_penjualan Dim_suplier Data toko Data pemesanan Data waktu pemesanan

Data marketing

Data waktu pembelian Data pembelian

Data penjualan

Data makanan

Data waktu pejualan

3 Proses OLAP fact_penjualan Dim_waktu_penjualan Dim_waktu_pembelian fact_pembelian Dim_marketing Dim_makanan Dim_waktu_pemesanan fact_pemesanan Dim_toko Data load Info load Data transform info transform Data ekstark info ekstark

Analisis OLAP fact_pemesanan Analisis OLAP fact_penjualan

Analisis OLAP fact_pembelian

Data operasional Data operasional Info Impo rt data makanan

Info Impo rt data marketing Info Impo rt data toko Info Impo rt data suplier Info Impo rt data pemesanan

Info Impo rt data penjualan Info Impo rt data pembelian

Data suplier Dim_suplier C e ta k la p o ra n In fo c e ta k la p o ra n

Gambar 3.16 DFD Level 1 Aplikasi Data Warehouse 2. DFD Level 2 Proses Import Data

Adapun DFD Level 2 proses import data dari sistem yang akan dibangun dapat dilihat pada gambar berikut :


(63)

User

1.1 Pemilihan file

Data OLTP

1.2 Simpan data

Data operasional Data operasional

Memilih data

Info memilih data

Simpan Data operasional Simpan Info data operasional

Data operasional

Data OLTP Data operasional

Gambar 3.17 DFD Level 2 Proses Import Data 3. DFD Level 2 Proses ETL

Adapun DFD Level 2 proses ETL data dari sistem yang akan dibangun dapat dilihat pada gambar berikut :


(64)

E T L L D a ta O LT P D a ta O LT P 2 .1 P ro s es E x tr a ct , tr a n sf o rm , lo a d 2 .2 P ro s es V iew ta fo v iew d a ta Data Dim_makanan Data Dim_waktu_pemesanan Data fact_penjualan Data Dim_marketing Data Dim_marketing Data fact_pemesanan Data Dim_toko D a ta w a reh o u s e Data fact_pembelian

Data Dim_waktu_penjualanData Dim_waktu_pembelian

D a ta w a reh o u s e D a ta O LT P Gam b ar 3.18 DF D Le ve

l 2 Pr

oses ET


(65)

4. DFD Level 2 Proses OLAP

Adapun DFD Level 2 proses OLAP data dari sistem yang akan dibangun dapat dilihat pada gambar berikut :

3.1 Pilih nama OLAP

User

Pemilihan nama olap

3.2 Analisis data OLAP

3.3 Report

Data warehouse Info pemilihan nama olap

Analisis OLAP Info analisis OLAP

Data warehouse

Hasil analisis OLAP

Info Reprt Report

Gambar 3.19 DFD Level 2 Proses OLAP 3.1.8 Spesifikasi Proses

Spesifikasi proses berfungsi untuk menjelaskan proses model aliran yang terdapat pada DFD. Adapun spesifikasi proses dari DFD yang telah dibuat akan dijelaskan pada tabel berikut:


(66)

Tabel 3.19 Tabel Spesifikasi Proses

No. Proses Keterangan

1 No.Proses 1

Nama Proses Proses import data

Source Pengguna

Input Data operasional Output Info import

Destination Simpan data operasional ke database OLTP Logika Proses 1. Aplikasi menampilkan form impor

2. Pengguna memilih file. 3. Pengguna import data.

4. Jika data tidak sesuai maka akan keluar pesan kesalahan.

5. Jika data sesuali maka akan disimpan ke database OLTP dan menampilkan pesan berhasil.

2 No.Proses 1.1

Nama Proses Pemilihan berkas

Source Pennguna

Input Data operasional

Output Info pemilihan file lokasi Destination Pengguna

Logika Proses 1. Aplikasi menampilkan form untuk memilih data yang akan di import.

2. Pengguna memilih data yang akan di import.

3. Aplikasi menampilkan nama lokasi file yang telah di pilih.

3 No.Proses 1.2

Nama Proses Simpan data


(67)

No. Proses Keterangan Input Data operasional

Output Info simpan data

Destination Pengguna, database OLTP

Logika Proses 1. Aplikasi menampikan form untuk menyimpan data 2. Pengguna menyimpan data

3. Aplikasi melakukan proses menyimpan data operasional ke database OLTP.

4 No.Proses 2

Nama Proses Proses ETL

Source Pengguna

Input Database OLTP

Output Info ETL

Destination Pennguna

Logika Proses 1. Aplikasi menampilkan form ETL. 2. Pengguna memilih proses ETL 3. Aplikasi meng-extract data

4. Aplikasi men-transform data yang sudah di extract. 5. aplikasi load data yang sudah di transform ke

database datawarehouse

5 No.Proses 2.1

Nama Proses Proses Extract, transform, load

Source Pengguna

Input Database OLTP

Output Info Extract, transform, load

Destination Extract, transform, load data yang diperlukan untuk datawarehouse

Logika Proses 1. aplikasi menampilkan form utuk proses Extract, transform, load


(68)

No. Proses Keterangan

3. Aplikasi menampilkan loading ETL yang sedang berlangsung.

4. Apabila data gagal di proses maka sistem menampilkan pesan kesalahan

5. Apabila data berhasil diproses maka sistem akan menampilkan pesan berhasil

6 No.Proses 2.2

Nama Proses Proses View data

Source Pengguna

Input Database OLTP, Database Datawarehouse

Output Info data sebelum proses ETL dan sesudah proses ETL Destination Cek data sebelum dan sesudah ETL

Logika Proses 1. Aplikasi menampilkan form view data

2. pengguna memilih nama tabel yang akan di view. 3. Pengguna memilih view.

4. Aplikasi menampilkan data sebelum proses ETL dan data sebelum ETL

7 No.Proses 3

Nama Proses Proses OLAP

Source Pengguna

Input Data warehouse

Output Analisis OLAP Destination Pengguna

Logika Proses 1. Apilkasis menampilkan form

2. Pengguna memilih nama olap yang akan di analisisi. 3. Aplikasi menampilkan hasil analisis olap.

4. Pengguna memilih roll-up dan rool-down. 5. Pengguna memilih slice dan dice.


(69)

No. Proses Keterangan

8 No.Proses 3.1

Nama Proses Pilih nama Olap

Source Pengguna

Input Nama olap

Output Info nama olap Destination pengguna

Logika Proses 1. Aplikasi menampilkan form pemilihan nama olap. 2. Pengguna memilih nama olap yang akan dianalisisi 3. Aplikasi menampilkan nama olap yang akan

dianalaisisi.

9 No.Proses 3.2

Nama Proses Proses analisis data OLAP

Source Pengguna

Input Datawarehouse

Output Hasil analisis olap Destination pengguna

Logika Proses 1. Aplikasi menampilkan form analisis olap.

2. Pengguna memilih nama olap yang akan dianalisisi 3. Pengguna memilih roll-up dan rool-down.

4. Pengguna memilih slice dan dice.

5. Aplikasi menampilkan hasil proses analisisi olap 10 No.Proses 3.3

Nama Proses Report

Source Pengguna

Input Data hasil analisis olap Output Cetak laporan

Destination Mencetak laporan hasil analisis olap Logika Proses 1. Aplikasi menampilkan form report


(1)

PEMBANGUNAN PERANGKAT LUNAK DATA WAREHOUSE

DI CV. WIDURI

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

DADAN SETIADI

10110733

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

UNIVERSITAS KOMPUTER INDONESIA

2015


(2)

iv

DAFTAR ISI

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... iv

DAFTAR GAMBAR ... vi

DAFTAR TABEL ... viii

DAFTAR SIMBOL ... x

DAFTAR LAMPIRAN ... xii

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang Masalah ... 1

1.2 Identifikasi Masalah ... 2

1.3 Maksud dan Tujuan ... 2

1.4 Batasan Masalah ... 2

1.5 Metodologi Penelitian ... 3

1.5.1 Metode Pengumpulan Data ... 3

1.5.2 Metode Pembangunan Perangkat Lunak ... 3

1.6 Sistematika Penulisan ... 5

BAB 2 TINJAUAN PUSTAKA ... 7

2.1 Profil Prusahaan ... 7

2.1.1 Visi dan Misi ... 7

2.1.2 Logo Perusahaan ... 7

2.1.3 Struktur Perusahaan ... 8

2.2 Landasan Teori ... 9

2.2.1 Data ... 9

2.2.2 Database ... 9

2.2.3 Database Management System (DBMS) ... 10

2.2.4 Data Warehouse ... 10

2.2.4.1 Kegunaan Data Warehouse ... 11

2.2.4.2 Konsep Dasar Data Warehouse ... 13

2.2.4.3 Proses ETL(Extraction, Transformation, Loading) ... 14

2.2.4.4 Arsitektur Data Warehouse ... 15

2.2.4.5 Jenis Dasar Data Warehouse ... 19

2.2.4.6 Metodologi Perancangan Database untuk DataWarehouse ... 21

2.2.4.7 Skema Data Warehouse ... 22

2.2.4.8 Tujuan Data Warehouse ... 25

2.3 Alat-alat Pemodelan Sistem ... 26

2.3.1 Diagram Konteks ... 26

2.3.2 Data Flow Diagram (DFD) ... 27

2.3.3 Entity Relation Diagram (ERD) ... 27

2.4 Alat-alat Pembangunan Perangkat Lunak ... 28

2.4.1 C# ... 28

2.4.2 SQL Server ... 29


(3)

v

3.1 Analisis Sistem ... 31

3.1.1 Analisis Masalah ... 31

3.1.2 Analisis Data ... 32

3.1.3 Analisis Kebutuhan Informasi ... 36

3.1.4 Pemodelan Data Warehouse ... 37

3.1.4.1 Arsitektur Pembangunan Data Waerhouse ... 37

3.1.4.2 Source Layer ... 37

3.1.4.3 Data Staging ... 38

3.1.4.4 Proses ETL ... 38

3.1.3.4 Data WareHouse Layer... 53

3.1.3.5 OLAP ... 55

3.1.5 Spesifikasi Kebutuhan Perangkat Lunak ... 56

3.1.6 Analisis Kebutuhan Non Fungsional ... 56

3.1.7 Analisis Kebutuhan Fungsional ... 58

BAB 4 IMPLEMENTASI DAN PENGUJIAN ... 77

4.1 Implementasi ... 77

4.1.1 Perangkat Lunak Pembangun ... 77

4.1.2 Perangkat Keras Pembangun ... 77

4.1.3 Implementasi Basis Data ... 77

4.1.4 Implementasi Antar Muka ... 82

4.2 Pengujian Sistem ... 83

4.2.1 Pengujian Alpha ... 83

4.2.2 Kasus dan Hasil Pengujian Alpha ... 84

4.2.3 Kesimpulan Pengujian Alpha... 93

4.2.4 Pengujian Beta ... 93

4.2.5 Kesimpulan Pengujian Beta ... 94

BAB 5 KESIMPULAN DAN SARAN ... 95

5.1 Kesimpulan ... 95

5.2 Saran ... 95


(4)

iii

KATA PENGANTAR

Puji dan syukur penulis panjatkan kehadirat Allah SWT atas rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi yang berjudul Pembangunan Perangkat Lunak Data Warehouse di CV.Widuri.

Penyusunan skripsi ini tidak akan terwujud tanpa mendapat dukungan, dan masukan dari berbagai pihak. Untuk itu, penulis ingin menyampaikan terimakasih yang sebesar-besarnya kepada :

1.Kedua orang tua dan keluarga besar penulis yang sudah memberikan do’a,

dukungan, kasih sayang dan motivasi, sehingga penulis dapat menyelesaikan tugas akhir ini.

2. Ibu Dian Dharmayanti, S.T., M.Kom. selaku dosen pembimbing, yang telah banyak memberikan arahan, saran dan bimbingan kepada penulis.

3. Bapak Adam Mukharil Bachtiar, S.Kom., M.T. dan Bapak Alif Finandhita, S.Kom., M.T. selaku dosen reviewer, yang telah memberikan arahan dan bimbingan kepada penulis.

4. Ibu Nelly Indriani W, S.Si., M.T. Selaku dosen wali penulis yang telah banyak memberikan ilmu, bantuan dan motivasi kepada penulis.

5. Bapak dan Ibu dosen Program Studi Teknik Informatika yang telah ikhlas memberikan ilmu dan bantuan kepada penulis selama kuliah.

6. Windia Septianti yang telah berjuang bersama-sama.

7. Khaerur, jojo, bim-bim, otep, dani, joy, babeh, edi, tarkiman, Dinda dan seluruh keluarga if-16 angkatan 2010 yang tidak bias disebutkan satu persatu atas dukungan dan kerjasamannya.

Akhir kata, semoga skripsi ini dapat bermanfaat bagi pembaca.

Bandung, 28 Juli 2015


(5)

(6)