ISSN : 2302-450X
PROSIDING
PERTEMUAN DAN PRESENTASI KARYA ILMIAH
BALI, 29 JULI 2016
PEMBICARA UTAMA SEMINAR PARALEL DENGAN TEMA
͞
͞
P
P
e
e
m
m
a
a
n
n
f
f
a
a
a
a
t
t
a
a
n
n
T
T
e
e
k
k
n
n
o
o
l
l
o
o
g
g
i
i
B
B
i
i
g
g
D
D
a
a
t
t
a
a
d
d
a
a
n
n
B
B
u
u
s
s
i
i
n
n
e
e
s
s
s
s
I
I
n
n
t
t
e
e
l
l
l
l
i
i
g
g
e
e
n
n
c
c
e
e
u
u
n
n
t
t
u
u
k
k
M
M
e
e
w
w
u
u
j
j
u
u
d
d
k
k
a
a
n
n
S
S
m
m
a
a
r
r
t
t
C
C
u
u
l
l
t
t
u
u
r
r
a
a
l
l
C
C
i
i
t
t
y
y
͟
͟
Prof. Dr. Ir. Suhono Harso Supangkat, CGEIT.
I. B. Rai Dharmawijaya Mantra
I. B. Gede Dwidasmara, S.Kom., M.Cs.
I Putu Suryawan, S.E., M.M.
PENYUNTING AHLI
Prof. Dr. I Ketut Gede Darma Putra, S.Kom., M.T.
Dr. H. Agus Zainal Arifin, S.Kom., M.Kom.
Dr.techn. Ahmad Ashari, M.Kom.
Dr. Drs. Anak Agung Ngurah Gunawan, M.T.
Agus Muliantara, S.Kom., M.Kom.
PELAKSANA SEMINAR
PELINDUNG
Rektor Universitas Udayana, Bali
PENANGGUNG JAWAB
Dekan Fakultas MIPA Universitas Udayana
Ketua Program Studi Teknik Informatika, FMIPA Universitas Udayana
PANITIA
I Gusti Ngurah Anom Cahyadi Putra,S.T.,M.Cs.
Gst. Ayu Vida Mastrika Giri, S.Kom., M.Cs.
I Gede Arta Wibawa,S.T.,M.Kom
Ida Bagus Made Mahendra, S.Kom., M.Kom.
I Putu Gede Hendra Suputra, S.Kom., M.Kom.
Luh Arida Ayu Rahning Putri,S.Kom.,M.Cs.
Made Agung Raharja, S.Si., M.Cs.
I Gede Santi Astawa, S.T., M.Cs.
I Komang Ari Mogi, S.Kom, M.Kom.
Ida Bagus Gede Dwidasmara,S.Kom.,M.Cs.
Dewa Made Bayu Atmaja Darmawan,S.Kom.,M.Cs.
I Made Widiartha, S.Si., M.Kom.
I Gusti Agung Gede Arya Kadnyanan.,S.Kom.,M.Kom.
I Gede Oka Gartria A.,S.Kom.,M.Kom.
I Wayan Supriana, S.Si., M.Cs.
Dra. Luh Gede Astuti, M.Kom.
KATA PENGANTAR
Puji syukur kita panjatkan kehadirat Tuhan Yang Maha Esa, atas terselesainya
penyusunan Prosiding SNATIA 2016 ini. Buku ini memuat naskah hasil penelitian dari berbagai
bidang kajian yang telah direview oleh pakar di bidangnya dan telah dipresentasikan dalam acara
Seminar SNATIA tahun 2016 pada tanggal 29 Juli 2016 di Universitas Udayana kampus Bukit
Jimbaran, Badung, Bali.
Kegiatan SNATIA 2016 merupakan agenda tahunan Program Studi Teknik Informatika,
Jurusan Ilmu Komputer, Universitas Udayana. SNATIA 2016
e ga bil te a Pemanfaatan
Teknologi Big Data dan Business Intelligence untuk Mewujudkan Smart Cultural City
, de ga
pembicara utama seminar yang terdiri dari pakar-pakar peneliti dan pemerhati di bidang
Teknologi Informasi dan Smart City.
Meskipun kegiatan seminar dan pendokumentasian naskah dalam prosiding ini telah
dipersiapkan dengan baik, namun kami menyadari masih banyak kekurangannya. Panitia
memohon maaf yang sebesar-besarnya atas kekurangan yang ada. Kritik dan saran perbaikan
sangat kami harapkan untuk penyempurnaan di masa mendatang, yang dapat dikirimkan melalui
e-mail [email protected].
Kepada semua pihak yang terlibat baik langsung maupun tidak langsung dalam
penyelenggaraan seminar dan penyusunan prosiding SNATIA 2016, panitia mengucapkan terima
kasih.
Jimbaran, 29 Juli 2016
DAFTAR ISI
Kata Pengantar
Daftar Isi
Artificial Intelligence
Implementasi Algoritma Genetika pada Penjadwalan Bimbingan Tugas Akhir (Studi
Kasus Jurusan Ilmu Komputer Universitas Udayana)
Alfin Amri ...
1
Implementasi Metode Naïve Bayes Classifier dalam Mendeteksi Penyakit Saluran Kemih
I Gede Krisna Putra Andiana ...
9
Klasifikasi Jamur Menggunakan Metode Naïve Bayes dengan Pemrosesan Paralel
I Putu Agus Suarya Wibawa ...
15
Klasifikasi Pengidap Diabetes Menggunakan Metode Naive Bayes dengan Pemrosesan
Pararel
Daniel Kurniawan ...
23
Komparasi Algoritma C4.5, Naïve Bayes dan K-Nearest Neighbor (K-Nn) untuk
Mendeteksi Kanker Payudara
Rayung Wulan ...
29
Penerapan Metode LCG (Linear Congruential Generator) pada Sistem Pengacak Soal
Studi Kasus : BLCC (Bali Logic and Computer Competition) Unud
I Wayan Puguh Sudarma ...
35
Perancangan Monitoring and Controlling Traffic Light pada Different Street Condition
Menggunakan Jaringan Internet
Cries Avian ...
43
Perancangan Sistem Evaluasi Nilai Akademik Mahasiswa Menggunakan K-Means
Clustering
Risky Aswi Ramadhani ...
49
Perancangan Sistem Pengklasifikasian Musik Menggunakan Algoritma Support Vector
Machine
Rancang Bangun Aplikasi Pencocokan Citra Tanda Tangan
Resty Wulanningrum ...
61
Information Systems
Analisa Sistem Informasi Persediaan Barang Pada PT. Dua Libra
Nur Azizah ...
67
Analisa Sistem Pembayaran Futsal Pada PT. Padang Golf Moderland
Nur Azizah ...
77
Analisis dan Perancangan Aplikasi ETL Untuk Data Warehouse
Made Mahadipta ...
87
Aprida Aplikasi Penilaian Fleksibel untuk Guru dan Dosen
Fatkur Rhohman...
99
Desain Aplikasi Prosiars Sebagai Media Pendukung Akuisisi Ketrampilan Tata Kelola
Rekam Medis
Slamet Sudaryanto N ...
103
Desain Model Integrasi dan Sinkronisasi Antar Unit Surveilans Untuk Mendukung Data
Warehouse Epidemiologi
Fikri Budiman ...
111
Evaluasi Penggunaan Website dan Fasilitas E-Learning Universitas Nusa Nipa
Menggunakan Metode Analisis Pieces Framework Menuju Paperless Office
Agustinus Lambertus Suban ...
119
Implementasi Single Page Application pada Aplikasi Sintask Menggunakan Javascript
Dan Jquery
Aditya Wikardiyan ...
129
Pengembangan dan Software Testing Aplikasi Tebak Huruf Jawa
Supriyono ...
135
Perancangan Aplikasi E-Learning Berbasis Android Pada Media Pembelajaran Alternatif
I Kadek Ardi Angga ...
141
Perancangan dan Implementasi Aplikasi Media Reservasi Makanan Berbasis Client
Server dengan Platform Android
Perancangan Data Warehouse pada Penjualan Kain Endek Bali (Studi Kasus Toko Luhur
Busana Bali)
Rosa Irma Cahyani...
153
Perancangan Sistem Informasi Ensiklopedi Motif Kain Endek Khas Bali
I Gusti Ag Ayu Putu Rhera Mahayekti ...
161
Perancangan Sistem Informasi Pendataan Surat Masuk dan Surat Keluar Pada Media
Cetak Tabloid Tipikor Berbasis Web
Nur Azizah ...
169
Perancangan Sistem Inventaris Sarana Akademik UN PGRI Kediri
Intan Nur Farida ...
181
Perancangan Sistem Tracer Alumni untuk Menentukan Profil Lulusan Prodi Teknik
Informatika Universitas Nusantara PGRI Kediri
Danar Putra Pamungkas...
187
Purwarupa Sistem Layanan Perpustakaan Menggunakan Konsep Basis Data
Terdistribusi
Putu Andina Titra Dewi ...
193
Rancang Bangun Sistem Monitoring Sarbagita Berbasis Mobile Sebagai Solusi
Peningkatan Kepuasan Pelanggan Sarbagita
Ida Bagus Dananjaya ...
199
Rancangan Emergency Call Sebagai Penanganan Kecelakaan Di Kota Kediri
Ervin Kusuma Dewi ...
207
Sistem Informasi Monitoring Bus Trans Sarbagita Berbasis Web
I Putu Gede Surya Hadi Kusuma ...
213
Sistem Informasi Pengarsipan Kinerja Dosen Menggunakan Restful Web Service
Teguh Andriyanto ...
221
Sistem Pengolahan Data Akademik Di Universitas Nusantara PGRI Kediri
Juli Sulaksono ...
227
Knowledge Management
Aplikasi Sistem Pencarian E-Book Dengan Memanfaatkan Web Crawler Berdasarkan
Kesamaan Semantik
Implementasi Algoritma C4.5 Pada Sistem Pendukung Keputusan Pemilihan Kos Di
Daerah Bukit Jimbaran Bali
Imam Zarkasi ...
241
Implementasi dan Perbandingan Algoritma Stemming untuk Dokumen Teks Berbahasa
Indonesia
Dina Anggraini ...
247
Penerapan Metode Profile Matching dalam Menentukan Kualitas Ikan Tuna (Studi
Kasus Pt.Primo Indo Ikan)
Agus Aan Jiwa Permana ...
255
Perancangan dan Implementasi Sistem Pendukung Keputusan Dalam Lomba Desa Pada
Kantor Badan Pemberdayaan Masyarakat Dan Pemerintahan Desa Di Provinsi Nusa
Tenggara Barat Dengan Metode Topsis
Ni Putu Eka Listiani ...
263
Perancangan Knowledge Management System Motif Kain Endek Khas Bali
Riska Prasetiyo Utami ...
269
Perancangan Rekomendasi Penjualan Endek Pada Sistem Web E-Commerce
Menggunakan Metode Hybrid Filtering
Luh Ayu Diah Fernita Sari ...
279
Perancangan Simulasi Keuntungan Penjualan Bensin Pada Stasiun Pengisian Bahan
Bakar Umum (SPBU) Menggunakan Metode Monte Carlo (Studi Kasus Spbu Jl. Raya
Uluwatu, Jimbaran)
I Putu Surya Diputra ...
287
Simulasi Transaksi untuk Memperkirakan Keuntungan pada Minimarket Vidya dengan
Menggunakan Metode Monte Carlo
Josua Geovani Sinaga ...
299
Sistem Pakar untuk Diagnosa Penyakit Diabetes Mellitus dengan Metode Mamdani
Pada Puskesmas Di Jakarta Timur
Za’i atu Niswati ...
307
Sistem Pendukung Keputusan dalam Penentuan Supplier Tanaman Terbaik
Menggunakan Metode Simple Additive Weighting Studi Kasus CV. Intan Mas Ajie
Rr. Putri Intan Paramaeswari ...
315
Sistem Pendukung Keputusan Menentukan Lokasi Membangun Ruko Menggunakan
Metode SAW Dan Proses Paralel
Sistem Pendukung Keputusan Pemilihan Paket Telekomunikasi Smartphone Atau
Gadget Dengan Metode SAW (Simple Additive Weighting)
Christina ...
329
Sistem Pendukung Keputusan Pemilihan Portofolio Investasi Saham di Bursa Efek
Indonesia Menggunakan Metode Saw dan Proses Paralel
I Gede Wicaksana ...
335
Sistem Pendukung Keputusan Penentuan Anak Asuh Bagi Peserta Didik Dengan Metode
SAW (Simple Additive Weighting)
Rina Firliana ...
341
Sistem Pendukung Keputusan Penentuan Lokasi Pembangunan Minimarket
Menggunakan Metode Simple Additive Weighting (Studi Kasus Kabupaten Gianyar)
Gede Surya Adiwiguna ...
349
Sistem Pendukung Keputusan Perekrutan Pegawai Dengan Metode Naïve Bayes (Studi
Kasus di PT. Tatamulia)
Ni Putu Striratna Devi Wedayanti ...
357
Sistem Pendukung Keputusan Perekrutan Pegawai Menggunakan Perangkingan
MADM TOPSIS
Luh Putu Dewi Cahyuni ...
363
Sistem Pendukung Keputusan Seleksi Penerima Beasiswa di SMKN 3 Negara
Menggunakan Metode Analytical Hierarchy Process (AHP)
I Putu Krisna Adi Syandhana ...
369
SPK Penentuan Lokasi Pembangunan Perumahan Menggunakan Metode SAW dengan
Pemrosesan Paralel (Studi Kasus Kab. Jembrana)
Gede Satria Pinandita ...
377
SPK untuk Menenentukan Kesesuaian Lahan Tanaman Kopi Arabika Menggunakan
Metode WP dengan Pemrosesan Paralel
Ketut Yudi Werdika ...
383
Web Dinamis Sebagai Sistem Bantu Pencarian Rumah Kos Mahasiswa Dengan Metode
Weighted Product (WP)
Multimedia Application
Analisis Sistem Rekomendasi Musik Berdasarkan Konteks Menggunakan Soft
Case-Based Reasoning
Gst. Ayu Vida Mastrika Giri ...
395
Aplikasi Alat Musik Padang Berbasis Android
I Gusti Ngurah Anom Cahyadi Putra ...
401
Aplikasi Reduksi Noise Citra Aksara Bali Pada Lontar
Gusti Agung Mas Trisna Krishany ...
409
Implementasi Augmented Reality Pada Objek-Objek Museum Bali Studi Awal
Perancangan Aplikasi Edukasi Untuk Pengunjung Museum
Gerson Feoh ...
415
Pengemba ga Ga e “uper “o ic “hoot de ga Pe dekata Ga e-SCRUM
Falahah ...
423
Perancangan Sistem Informasi Pembelajaran Pembuatan Banten Berbasis Video
Streaming
I Putu Septian Arya Pratama ...
429
Networking and Security
Aplikasi Chatting Berbasis Multiagent Menggunakan Java Agent Development
Framework (JADE)
Nisa Miftachurohmah ...
437
Color Image Encryption Using RC4 Algorithm
Andysah Putera Utama Siahaan ...
443
Implementasi Algoritma RC6 Sebagai Pengamanan Aplikasi Chatting
Anneke Puspita Dewi ...
449
Pengelolaan Routing OLSR Pada Jaringan Wireless Mesh
Iwan Rijayana ...
459
Pengembangan Aplikasi Context Aware Pada Teknolog Near Field Communcation
Yuli Fauziah ...
467
Penggunaan Metode Kriptografi pada Voice Over Internet Protokol
Perancangan dan Implementasi Aplikasi Chat Menggunakan MQTT Protocol
Muhammad Ridwan Satrio ...
481
Perancangan SMS Gateway Untuk Pelayanan Informasi pada Kegiatan Desa Adat
I Putu Raka Wiratma ...
485
Rancang Bangun Sistem Informasi Paroki Habi Keuskupan Maumere Melalui SMS
Gateway
Theresia Wihelmina Mado ...
491
Sistem Informasi Pengingat Pengumpulan Nilai Berbasis SMS Gateway pada Prodi
Sistem Informasi Universitas Nusantara PGRI Kediri
Fajar Rohman Hariri, M.Kom ...
499
Sistem Kendali DC Converter Untuk Aplikasi Sistem (CAES)
87
ANALISIS DAN PERANCANGAN APLIKASI ETL
UNTUK DATA WAREHOUSE
Made Mahadipta
1, Agus Muliantara,
2Made Agung Raharja
31,2
Program Studi Teknik Informatika, Jurusan Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Udayana
Jalan Kampus Udayana, Bukit Jimbaran – Bali Email: [email protected]
ABSTRAK
Perkembangan teknologi informasi pada era globalisasi ini sedang melaju dan tumbuh dengan pesatnya. Tuntutan akan tersedianya informasi bagi pengguna informasi tersebut harus relevan, tepat waktu dan akurat. Besarnya transaksi yang dilakukan oleh sistem informasi operasional menyebabkan data yang disimpan dalam database menjadi besar sehingga menimbulkan suatu masalah yaitu proses query untuk mendapatkan informasi berupa summary menjadi lambat dan membebani server karena beban proses transaksi dan proses analisis masih dalam satu server.
Data warehouse menjadi sebuah solusi sistem informasi yang digunakan untuk menampung semua data summary dari sistem informasi operasional sehingga mampu menghasilkan report berupa summary dengan proses query yang cepat. Data warehouse didukung oleh aplikasi back room yang disebut ETL (extraction, transformation, loading). Keberadaan ETL ini akan menjadi pondasi utama dari data warehouse, maka pada penelitian ini akan diteliti mengenai perancangan dan implementasi aplikasi ETL. Aplikasi ETL dibuat mampu melakukan proses cleaning data yang berfungsi untuk menjamin kualitas data yang akan ditransfer ke dalam data warehouse.
Perancangan dari aplikasi ini akan dibuat menggunakan metode pengembangan sistem SDLC (System Development Life Cycle). Untuk pengerjaan aplikasi akan menggunakan Visual Studio 2013, .NET framework 4.5 serta DBMS Oracle Database dengan PL/SQL dan mampu menghasilkan aplikasi ETL yang dinamis. Dinamis mempunyai arti proses dalam ETL dan viewing data dalam data warehouse tersebut bisa disesuaikan oleh user yang menggunakan aplikasi ini tanpa mengubah kode program dari aplikasi itu sendiri. Untuk analisis dan perancangan ini dapat dengan mudah di implementasikan dengan orang lain tanpa banyak resiko dalam pengerjaannya. Didukung dengan hasil pengujian black box menunjukan bahwa aplikasi ETL sudah 96% cukup menjawab kebutuhan fungsional, sehingga dapat memenuhi semua kebutuhan fungsional aplikasi.
Kata Kunci: Sistem Informasi, Data Warehouse, ETL, PL/SQL
ABSTRACT
In this era, developments of the information technology is growing so fast. The demand for the availability of information for users must be relevant, timely, and accurate. The amount of transactions conducted by operational information systems lead to the data stored in the database becomes large and make a problem like the query to obtain information in the form of summary becomes slow and burden somes server, because the process of the transactions and also process of the analysis are still in one server.
Data warehouse will be an information system solution that is used to accommodate all the data summary of operational information systems so it will produce a summary report with fast query process. The data warehouse is supported by application of a back room called ETL (extraction, transformation, loading). The existence of ETL will be the main foundation of the data warehouse, in this research it is created to this will be investigated in the design and implementation of ETL applications. ETL Applications be able to perform cleaning data process that works to ensure the quality of the data to be transferred into the data warehouse.
The design of this application will be made using the method of system development SDLC (System Development Life Cycle). For processing the application, it will be used Visual Studio 2013, .NET framework 4.5 and DBMS Oracle Database with PL / SQL, so it will able to produce a dynamic ETL application. Dynamic has a meaning in the ETL process and viewing the data in the data warehouse can be customized by users without changing the source code of the application itself. For the analysis and the design, it can be easily implemented byother people without many risks in the process. Supported by black box testing results, it showed that 96 % of ETL application has been already adequately addressed the functional requirement, so it can meet all the functional needs of the application.
ISSN : 2302 – 450X
88
1.
PENDAHULUAN
Perkembangan teknologi informasi pada era globalisasi ini sedang melaju dan tumbuh dengan pesatnya. Tuntutan akan tersedianya informasi bagi pengguna informasi tersebut harus relevan, tepat waktu dan akurat. Bertolak dari hal tersebut manusia mempunyai inovasi-inovasi untuk membuat suatu
sistem informasi yang menunjang kegiatan
operasional mereka. Dikarenakan banyak kegiatan operasional yang dilakukan maka data transaksi operasional akan semakin banyak pula. Besarnya transaksi yang dilakukan oleh sistem informasi operasional menyebabkan data yang disimpan dalam
database menjadi besar sehingga menimbulkan suatu masalah yaitu proses query untuk mendapatkan informasi berupa summary menjadi lambat dan membebani server karena beban proses transaksi dan proses analisis masih dalam satu server.
Data warehouse menjadi sebuah solusi sistem
informasi yang digunakan untuk menampung semua data summary dari sistem informasi operasional sehingga mampu menghasilkan report berupa
summary dengan proses query yang cepat. Penggunaan data warehouse sebagai sebuah sistem
yang terpisah dari sistem-sistem informasi
operasional menjadi sangat penting. Hal ini dikarenakan data warehouse akan menampung data dari berbagai sistem informasi operasional untuk
membentuk report yang terintegrasi serta
memisahkan beban proses transaksi dan proses analisis agar tidak membebani server.
Data warehouse ini didukung oleh aplikasi back
room yang disebut ETL (extraction, transformation,
loading). Keberadaan ETL ini akan menjadi pondasi dari data warehouse. Disamping itu ETL mempunyai fungsi penting untuk melakukan proses filtering dari data pada sistem-sistem informasi operasional sebelum data tersebut dimasukkan ke dalam data
warehouse. Mengingat fungsi dari ETL yang begitu penting bagi penunjang terciptanya suatu data
warehouse, maka pada penelitian ini akan diteliti mengeni perancangan dan implementasi aplikasi ETL. Aplikasi ETL dibuat mampu melakukan proses cleaning data yang berfungsi untuk menjamin kualitas data yang akan ditransfer ke dalam data
warehouse.
Perancangan dari aplikasi ini akan dibuat menggunakan metode pengembangan sistem SDLC (System Development Life Cycle) dan untuk pengerjaan aplikasi akan menggunakan aplikasi Visual Studio 2013, .NET framework 4.5 serta DBMS Oracle Database dengan PL/SQL dan mampu menghasilkan aplikasi ETL yang dinamis. Dinamis mempunyai arti proses dalam ETL dan
viewing data dalam data warehouse tersebut bisa disesuaikan oleh user yang menggunakan aplikasi ini tanpa mengubah kode program dari aplikasi.
2.
MODEL, ANALISIS, DESAIN, DAN
IMPLEMENTASI
1.1 Dasar Teori
2.1.1. Konsep Data Warehouse
Terdapat dua konsep besar dalam data
warehouse. Kedua konsep ini dikemukaan oleh dua
ahli yaitu William H. Inmon dan Ralph
Kimball.Menurut William H. Inmon, data warehouse
adalah koleksi data yang mempunyai sifat
berorientasi subjek, terintegrasi, time-variant dan bersifat tetap dari koleksi data dalam mendukung proses pengambilan keputusan manajemen. Inmon menegaskan bahwa data warehouse sebaiknya dibangun jika desain arsitektur data warehouse sudah dibuat (top-down approach). Karena data warehouse merupakan bagian dari business intelegent maka segala informasi berasal dari satu data warehouse. [3]
Menurut Ralph Kimball, data warehouse
merupakan suatu sistem yang mengekstrak,
membersihkan, menyesuaikan diri, dan mengirim sumber data ke dalam suatu data penyimpanan dimensional dan kemudian mendukung implementasi
query dan analisis untuk tujuan pengambilan keputusan. Disamping itu data warehouse berawal dari kumpulan data mart (bottom-up approach) yang berada dalam sebuah lingkungan enterprise. Dalam desainnya, informasi dalam data warehouse selalu disajikan dalam bentuk dimensional dan fact. [4]
2.1.2. Karakteristik Data Warehouse 1. Berorientasi Sujek
Data warehouse berorientasi subyek artinya
data warehouse didesain untuk menganalisa data
berdasarkan subyek-subyek tertentu dalam
organisasi, bukan pada proses atau fungsi aplikasi tertentu. Data warehouse diorganisasikan disekitar subjek-subjek utama dari perusahaan (konsumen, produk dan penjualan) dan tidak diorganisasikan pada area-area aplikasi utama (pelayanan konsumen, pengontrolan stok dan penjualan produk). Hal ini dikarenakan kebutuhan dari data warehouse untuk
menyimpan data-data yang bersifat sebagai
penunjang suatu keputusan, daripada aplikasi yang berorientasi data. [7]
2. Terintegrasi
Data warehouse dapat menyimpan data-data yang berasal dari sumber-sumber yang terpisah kedalam suatu format yang konsisten dan saling terintegrasi satu dengan lainnya. Dengan demikian data tidak bisa dipecah-pecah karena data yang ada
merupakan suatu kesatuan yang menunjang
keseluruhan konsep data warehouse itu sendiri. Syarat integrasi sumber data dapat dipenuhi dengan berbagai cara sepeti konsisten dalam penamaan variabel, ukuran variabel, struktur pengkodean dan atribut fisik dari data. Sebagai contoh pada lingkungan operasional terdapat berbagai macam
Made Mahadipta, Analisis dan Perancangan Aplikasi Etl untuk Data Warehouse
89
aplikasi yang mungkin pula dibuat oleh developer yang berbeda.
Oleh karena itu, mungkin dalam aplikasi-aplikasi tersebut ada variabel yang memiliki maksud yang sama tetapi nama dan format yang berbeda. Variabel tersebut harus dikonversi menjadi nama yang sama dan format yang disepakati bersama. Dengan demikian tidak ada lagi kerancuan karena perbedaan nama, format dan lain sebagainya. Barulah data tersebut bisa dikategorikan sebagai data yang terintegrasi karena kekonsistenannya. [7]
3. Rentang Waktu
Seluruh data pada data warehouse dapat dikatakan akurat atau valid pada rentang waktu tertentu. Untuk melihat interval waktu yang digunakan dalam mengukur keakuratan suatu data
warehouse, dapat digunakan berbagai cara antara lain : [7]
1) Menyajikan data warehouse pada rentang waktu tertentu, misalnya pada tahun-tahun tertentu untuk mengetahui suatu tren dari subjek tertentu atau untuk perbandingan.
2) Menggunakan variasi/perbedaan waktu yang disajikan dalam data warehouse baik implisit maupun eksplisit. Secara eksplisit dengan unsur waktu dalam hari, minggu, bulan dan lain sebagainya. Secara implisit misalnya pada saat data tersebut diduplikasi pada setiap akhir bulan atau per tiga bulan. Unsur waktu akan tetap ada secara implisit didalam data tersebut.
3) Variasi waktu yang disajikan data warehouse melalui serangkaian snapshot yang panjang.
Snapshot merupakan tampilan dari sebagian data tertentu sesuai keinginan pemakai dari keseluruhan data yang ada bersifat read-only.
2.1.3. Arsitektur Data Warehouse
Secara umum arsitektur data warehouse terdiri dari beberapa komponen penting diantaranya adalah Operational Source, Staging Area, Data Warehouse, Data Mart dan Metadata. [4]
Gambar 1.Arsitektur data warehouse [4] 1. Operational Sources
Komponen operational sources merupakan komponen yang berfungsi sebagai sumber dari data yang akan diolah sehingga data tersebut bisa
di-loading ke dalam data warehouse. Komponen ini bisa juga terdiri dari berbagai macam mesin DBMS
seperti Microsoft SQL Server, MySQL, Oracle ataupun flat file (.txt / .csv). Komponen ini tidak lain adalah database dari sistem informasi operasional yang akan dibuatkan data warehouse.
2. Staging Area
Komponen staging area merupakan komponen yang digunakan sebagai tempat atau stage untuk melakukan proses ETL. Proses yang pertama dilakukan oleh komponen ini adalah extraction data dari operational sources. Setelah proses tersebut berhasil dilanjutkan dengan proses transformation.
Proses ini bertujuan untuk melakukan
transformasi dari data yang telah diekstrak
sebelumnya. Tranformasi ini termasuk perubahan struktur tabel ataupun penggabungan/pemisahan tabel untuk mendapatkan summary dari data detail yang ada. Disamping itu pada proses ini juga dilakukan
cleaning dan conforming data yang akan di-loading dalam data warehouse. Jika proses ini telah berhasil, maka dilanjutkan dengan proses loading data. Proses ini sangat penting karena bertugas untuk menjamin ketersediaan data pada data warehouse itu sendiri. Walaupun terlihat sederhana, namun proses loading
data menjadi rumit jika loading data berjalan secara
otomatis sesuai jadwal pengiriman datanya.
3. Data Warehouse
Komponen ini merupakan suatu database dengan menggunakan suatu DBMS tertentu dimana dalam data warehouse ini terdapat informasi yang berupa summary ataupun data yang ingin dimasukkan ke dalam data warehouse.
4. Data Marts
Komponen data marts ini merupakan sebuah laporan yang dihasilkan dari proses query yang dilakukan pada data warehouse. Data marts yang dihasilkan mempunyai bermacam-macam jenis mulai dari tabular hingga berbagai jenis grafik. Ini tergantung dari kebutuhan penggunanya. Tapi yang tidak boleh dilupakan data marts yang dihasilkan harus berdasarkan time-variant.
5. Metadata
Komponen ini merupakan kumpulan data yang menjelaskan arti dari data yang ada pada setiap komponen mulai dari Operational Data Source hingga pada komponen Data Mart.
2.1.4. ETL Dalam Data Warehouse
ETL (Extraction, Transformation, Loading) merupakan aplikasi yang terpisah dari data
warehouse dan berfungsi sebagai pondasi dari data
warehouse itu sendiri. ETL terdiri dari tiga proses utama. Ketiga proses ini dilakukan secara berurutan. Keberhasilan suatu proses dalam ETL ini tergantung dari proses ETL sebelumnya. [4]
ISSN : 2302 – 450X
90
Gambar 2. Arsitektur ETL (Sumber : Kimball, 2004)
1. Extraction
Data mentah yang berasal dari sistem informasi operasional / sistem sumber biasanya ditulis atau
di-copy langsung ke dalam media penyimpanan /
staging area dengan restrukturisasi seminimal mungkin. Hal ini dilakukan untuk menjaga keaslian data yang didapat dari sistem sumber. Adakalanya sistem sumber yang berbasis struktur seperti pada mesin-mesin DBMS ditulis dalam bentuk flat file atau dalam tabel relasional pada staging area-nya. Hal ini memungkinkan hasil ekstraksi menjadi sesederhana dan secepat mungkin untuk diolah. Disamping itu dimungkinkan juga untuk fleksibilitas yang bagus untuk melakukan restart jika terjadi gangguan pada saat ekstraksi berlangsung.
Data yang telah diambil dalam proses ekstraksi ini dapat dibaca beberapa kali sesuai dengan keperluannya. Dalam beberapa kasus, data hasil ekstraksi ini bisa dihapus setelah dilakukannya proses
transformation karena dianggap sudah tidak berguna lagi. Kemudian dalam kasus lain, data ekstraksi ini bisa disimpan sebagai arsip cadangan jangka panjang namun memerlukan space yang besar. [4]
2. Transformation
Perubahan sekecil apapun yang dilakukan pada data mentah hasil ekstraksi adalah transformasi. Misalnya melakukan proses seleksi dari data yang mengandung nilai null. Jika data ditemukan null
maka data akan dihapus. Kemudian proses
menterjemahkan kode seperti pada data mentah ditulis jenis kelamin laki-laki adalah 1 dan perempuan adalah 2. Maka semua nilai jenis kelamin 1 akan diubah menjadi laki-laki dan 2 akan diubah menjadi perempuan. Contoh diatas merupakan contoh kecil dari sebuah proses transformasi yang dilakukan oleh ETL.
Beberapa hal penting yang sering dilakukan dalam tranformasi ini dan menjamin data yang akan diolah sudah bersih dari data yang dianggap sampah atau tidak perlu adalah cleaning dan conforming. Kedua proses ini merupakan proses penting yang wajib dilakukan jika data mentah dianggap belum bersih. [6]
1) Cleaning
Dalam kebanyakan kasus, tingkat kualitas data pada sistem-sistem sumber berbeda-beda. Kualitas data sistem sumber ini juga berbeda dengan kualitas data yang dibutuhkan pada data warehouse itu sendiri. Bertolak dari hal tersebut maka pengolahan data dapat melibatkan banyak proses-proses terpisah antara lain memeriksa nilai-nilai yang valid, memastikan konsistensi dari nilai-nilai tersebut, membuang duplikasi atau redudansi dari data. Karena proses pembersihan data ini begitu kompleks, dimungkinkan melibatkan manusia dalam penilaian apakah data yang akan diolah sudah bersih atau belum. Perlu diingat bahwa hasil dari cleaning ini tidak bisa dikembalikan ke sistem sumber tempat data itu berasal. Hal ini dikarenakan baik itu struktur atau isi data sudah tidak seperti data pada sistem sumber. Jika data dikembalikan, maka dimungkinkan akan terjadi kegagalan pada sistem exsisting tersebut.
2) Conforming
Data yang telah bersih kemudian akan dicek lagi sebelum dilakukan proses berikutnya. Proses ini adalah memisahkan data sumber yang identik atau jika menggunakan hitungan numeric data yang tidak termasuk dalam range tertentu. Conforming ini membutuhkan suatu kesepakan dari pengguna data untuk menentukan data mana saja yang akan digunakan dalam data warehouse
3. Loading
Proses loading atau dikenal juga dengan proses
delivering adalah suatu proses dimana data hasil transformasi siap untuk dimasukkan ke dalam data
warehouse itu sendiri. Pembentukan struktur tabel dari data yang akan di-loading merupakan tugas dari
designer dari data warehouse itu sendiri. Loading ini merupakan langkah akhir dan penting dalam menjamin ketersediaan data dalam data warehouse.
Data hasil proses loading ini siap di-query.
Mengenai kecepatan query yang dihasilkan
tergantung dari desain atau skema yang digunakan dalam data warehouse. Diharapkan skema yang digunakan bisa secara signifikan mengurangi waktu
query dan dapat menyederhanakan dalam pembangunan aplikasi. [5]
2.1.5. Oracle
Oracle Coorporation merupakan perusahaan yang bergerak di bidang penyediaan tool-tool pembangun aplikasi, produk-produk siap pakai dan pelayanan untuk mendukung keperluan penanganan masalah-masalah yang berkaitan dengan teknologi informasi. Aplikasi-aplikasi Oracle dapat dijalankan pada berbagai platform dan sistem operasi, dari komputer personal sampai komputer dengan multi
processor.
Oracle menyediakan aplikasi Relational
Made Mahadipta, Analisis dan Perancangan Aplikasi Etl untuk Data Warehouse
91
disebut dengan Oracle Server. Fasilitas-fasilitas yang ada di dalamnya memungkinkan pengguna untuk menyimpan dan mengatur informasi dengan segala keuntungan dari struktur relasional, ditambah dengan PL/SQL, suatu mesin yang mendukung pengguna
dengan kemampuan untuk menyimpan dan
mengeksekusi objek-objek basis data, seperti
procedure dan trigger.
Oracle Server juga menyediakan fasilitas untuk keamanan data yang dapat mengontrol bagaimana suatu basis data diakses. Aplikasi-aplikasi Oracle dapat dijalankan pada satu komputer sebagai Oracle Server. Sebagai alternatif, pengguna dapat menjalankan aplikasi-aplikasi Oracle tersebut pada komputer lokal untuk pengguna dan komputer
lainnya untuk Oracle Server (client-server
architecture). Pada lingkungan client-server ini, jangkauan luas dari sumber daya komputer dapat digunakan. Sebagai contoh, aplikasi berbasis form pada sistem pelayanan penerbangan dapat dijalankan pada komputer personal, pada saat yang bersamaan data penerbangan yang diperlukan oleh aplikasi tersebut ditangani oleh Oracle Server pada komputer pusat. [5]
2.1.6. MySQL
MySQL adalah sebuah implementasi dari sistem manajemen basisdata relasional (RDBMS) yang didistribusikan secara gratis dibawah lisensi GPL (General Public License). Setiap pengguna dapat secara bebas menggunakan MySQL, namun dengan batasan perangkat lunak tersebut tidak boleh dijadikan produk turunan yang bersifat komersial. MySQL sebenarnya merupakan turunan salah satu konsep utama dalam basisdata yang telah ada sebelumnya; SQL (Structured Query Language). SQL adalah sebuah konsep pengoperasian basisdata,
terutama untuk pemilihan atau seleksi dan
pemasukan data, yang memungkinkan pengoperasian data dikerjakan dengan mudah secara otomatis.
Kehandalan suatu sistem basisdata (DBMS) dapat diketahui dari cara kerja pengoptimasi-nya dalam melakukan proses perintah-perintah SQL yang dibuat oleh pengguna maupun program-program aplikasi yang memanfaatkannya. Sebagai peladen basis data, MySQL mendukung operasi basis data
transaksional maupun operasi basisdata
non-transaksional. Pada modus operasi non-transaksional, MySQL dapat dikatakan unggul dalam hal unjuk
kerja dibandingkan perangkat lunak peladen
basisdata kompetitor lainnya.
Namun demikian pada modus
non-transaksional tidak ada jaminan atas reliabilitas terhadap data yang tersimpan, karenanya modus non-transaksional hanya cocok untuk jenis aplikasi yang tidak membutuhkan reliabilitas data seperti aplikasi blogging berbasis web (wordpress), CMS, dan sejenisnya. Untuk kebutuhan sistem yang ditujukan untuk bisnis sangat disarankan untuk menggunakan
modus basisdata transaksional, hanya saja sebagai konsekuensinya unjuk kerja MySQL pada modus transaksional tidak secepat unjuk kerja pada modus non-transaksional.
MySQL termasuk jenis RDBMS (Relational
Database Management System). Database relasional menyimpan data dalam tabel-tabel terpisah daripada menempatkan semua data dalam satu ruang penyimpanan yang besar. Hal ini menambah kecepatan dan kefleksibelan. Itulah sebabnya istilah seperti tabel, baris dan kolom digunakan pada
MySQL. Pada MySQL, sebuah database
mengandung satu atau beberapa kolom. MySQL mendukung tipe data yaitu tipe data numerik, tipe data string dan tipe data waktu.
2.1.7. PostgreSQL
PostgreSQL merupakan Object-Relational
Database Management System (ORDBMS) yang
dikembangkan oleh University of California.
Database ini bersifat Open Source dan menggunakan lisensi GPL (General Public License) dan database ini mulai dikenal dan dipergunakan secara luas sejak tahun 1996, meskipun telah dikembangkan sejak tahun 1986 dan dikenal sebagai database yang bernama POSTGRES. (Momjian, 2001)
PostgreSQL memiliki arsitektur multiproses (forking) yang berarti memiliki stabilitas yang lebih tinggi, sebab satu proses anak yang mati tidak akan menyebabkan seluruh daemon mati meskipun pada kenyataannya, dulu ini sering terjadi. Di sisi lain, arsitektur dengan forking ini sulit diterapkan ke
Windows, sebab Windows amat thread-oriented, karena itulah PostgreSQL hanya bisa dijalankan di
Windows dengan melalui lapisan emulasi Cygwin.
2.1.8. SQL Server
SQL yang merupakan kepanjangan dari
Structured Query Language adalah sebuah produk dari mocrosoft yang berfungsi memanajemen
database yang relasional. pengertian adalah sebuah sistem manajemen database relasional yang memiliki
kegunaan merancang sebuah aplikasi yang
berhubungan dengan arsitektur server atau client. Pada umumnya SQL server selalu di pergunakan di dunia bisnis dengan kelengkapan basis yang jauh lebih banyak namun memiliki skala kecil hingga skala menengah, akan tetapi sekarang ini lebih berkembang lagi sehingga menggunakan basis data dengan skala yang cukup besar.
Cara berkomunikasi antara SQL server dan ASE yaitu dengan menggunakan jaringan protokol TDA atau Tabular Data System. Di samping itu SQL
server memiliki daya dukung ODBC atau singkatan dari Oen DataBase Connectivity yang memiliki sebuah Drive JDBC khusus bahasa pemrograman
Java. Selain itu keunggulan dari SQL server
memiliki kemampuan dalam pembuatan basis data mirroring dan clustering.
ISSN : 2302 – 450X
92
2.1.9. Visual Studio
Microsoft Visual Studio merupakan sebuah perangkat lunak lengkap (suite) yang dapat digunakan untuk melakukan pengembangan aplikasi, baik itu aplikasi bisnis, aplikasi personal, ataupun komponen aplikasinya, dalam bentuk aplikasi
console, aplikasi Windows, ataupun aplikasi Web.
Visual Studio mencakup kompiler, SDK, Integrated
Development Environment (IDE), dan dokumentasi (umumnya berupa MSDN Library). Kompiler yang dimasukkan ke dalam paket Visual Studio antara lain
Visual C++, Visual C#, Visual Basic, Visual Basic .NET, Visual InterDev, Visual J++, Visual J#, Visual
FoxPro, dan Visual SourceSafe.
Microsoft Visual Studio dapat digunakan untuk mengembangkan aplikasi dalam native code (dalam bentuk bahasa mesin yang berjalan di atas
Windows) ataupun managed code (dalam bentuk
Microsoft Intermediate Language di atas .NET
Framework). Selain itu, Visual Studio juga dapat
digunakan untuk mengembangkan aplikasi
Silverlight, aplikasi Windows Mobile (yang berjalan di atas .NET Compact Framework).
Visual Studio kini telah menginjak versi Visual Studio 4.5.50938, atau dikenal dengan sebutan
Microsoft Visual Studio 2013 yang diluncurkan padatahun 2013, yang ditujukan untuk platform
Microsoft .NET Framework 4.5. Versi sebelumnya, Visual Studio 2012 ditujukan untuk platform .NET
Framework 3.0 dan 3.5. Versi-versi tersebut di atas kini dikenal dengan sebutan Visual Studio .NET, karena memang membutuhkan Microsoft .NET
Framework. Sementara itu, sebelum muncul Visual Studio .NET, terdapat Microsoft Visual Studio 6.0 (VS1998).
2.1.10. SDLC (System Development Life Cycle)
SDLC (Systems Development Life Cycle, Siklus Hidup Pengembangan Sistem) atau Systems
Life Cycle (Siklus Hidup Sistem), dalam rekayasa sistem dan rekayasa perangkat lunak, adalah proses pembuatan dan pengubahan sistem serta model dan metodologi yang digunakan untuk mengembangkan sistem-sistem tersebut.
Konsep ini umumnya merujuk pada sistem komputer atau informasi. SDLC juga merupakan pola
yang diambil untuk mengembangkan sistem
perangkat lunak, yang terdiri dari tahap-tahap: analisis (analysis), desain (design), implementasi
(implementation), uji coba (testing) dan
pemeliharaanan (maintenance).
Gambar 3. Metode SDLC 1) Analisis Kebutuhan
Seluruh kebutuhan software harus bisa didapatkan dalam fase ini, termasuk didalamnya kegunaan software yang diharapkan pengguna dan batasan software. Informasi ini biasanya dapat diperoleh melalui wawancara, survey atau diskusi. Informasi tersebut dianalisis untuk mendapatkan dokumentasi kebutuhan pengguna untuk digunakan pada tahap selanjutnya.
2) Desain Sistem
Tahap ini dilakukan sebelum melakukan
coding. Tahap ini bertujuan untuk memberikan gambaran apa yang seharusnya dikerjakan dan bagaimana tampilannya. Tahap ini membantu dalam men spesifikasikan kebutuhan hardware dan sistem
serta mendefinisikan arsitektur sistem secara
keseluruhan.
3) Penulisan Kode Progran (Implementation)
Dalam tahap ini dilakukan pemrograman. Pembuatan software dipecah menjadi modul-modul kecil yang nantinya akan digabungkan dalam tahap berikutnya. Selain itu dalam tahap inijuga dilakukan pemeriksaaan terhadap modul yang dibuat, apakah sudah memenuhi fungsi yang diinginkan atau belum.
4) Pengujian Program (Testing)
Di tahap ini dilakukan penggabungan modul-modul yang sudah dibuat dan dilakukan pengujian ini dilakukan untuk mengetahui apakah software yang dibuat telah sesuai dengan desainnya dan masih terdapat kesalahan atau tidak.
5) Pemeliharaan (Maintenance)
Ini merupakan tahap terakhir dalam model
waterfall. Software yang sudah jadi dijalankan serta dilakukan pemeliharaan. Pemeliharaan termasuk dalam memperbaiki kesalahan yang tidak ditemukan pada langkah sebelumnya. Perbaikan implementasi unit sistem dan peningkatan jasa sistem sebagai kebutuhan baru.
1.2 Analisis Kebutuhan 2.2.1. Kebutuhan Fungsional
Kebutuhan fungsional adalah kebuduhan yang mendefinisikan fungsi dari sebuah aplikasi dan komponennya. Kebutuhan fungsional yang dapat dilakukan oleh aplikasi dpat dilihat di table dibawah ini.
Made Mahadipta, Analisis dan Perancangan Aplikasi Etl untuk Data Warehouse
93
Tabel 1 Kebutuhan Fungsional
No Kebutuhan
1 Admin dapat membuat profile
koneksi dan terkoneksi ke database sumber
2 Admin dapat melakukan Extraction,
Tranformation dan Loading.
3 Admin dapat membuat viewing data
mart dalam bentuk tabel dan grafik Dari kebutuhan fungsional dapat dilakukan
analisi data-data yang diperlukan dalam
pengembangan sistem.
1) Admin dapat membuat profile koneksi dan terkoneksi untuk setiap database sumber yang digunakan juga mempermudah admin dalam mengakses kembali database sumber.
2) Admin dapat mengolah data dari database sumber dengan mlakukan tahapan extraction,
transformation dan loading untuk mengolah data original dari database sumber.
3)
Admin dapat menampilkan hasil ETL yangsudah diolah kedalam bentuk viewing tabular dan chart untuk mempermudah pembacaan data.
1.3 Desain Sistem
2.3.1. Gambaran Umum Sistem
Gambar 4. Gambaran Umum Sistem 1. Operational Database Source (ODS)
MySQL, PostgreSQL dan SQL Server
merupakan beberapa contoh operational database
source (ODS) dari data yang akan diekstrak ke dalam
database Oracle. Hasil dari ekstraksi ini kemudian akan diolah melalui proses transformasi untuk dimasukkan ke dalam tabel fakta pada data
warehouse.
2. Extraction
Proses ekstraksi (E) diawali dengan menentukan ke sistem sumber (ODS) mana aplikasi akan
dikoneksikan (MySQL, PostgreSQL ataupun
Microsoft Access). Pada proses ekstraksi, aplikasi akan mengambil paramater koneksi yang telah dikonfigurasikan oleh admin diawal tadi. Jika berhasil melakukan koneksi ke sistem sumber, maka
admin akan memilih database serta tabel mana yang akan diekstrasi.
3. Transformation
Setelah proses ekstraksi berhasil, maka proses selanjutnya adalah transformation (T). Pada proses ini admin akan melakukan konfigurasi. Konfigurasi yang dilakukan diantaranya melakukan cleaning data
jika diperlukan, membentuk tabel dimensi,
menentukan target tabel dari hasil transformasinya, menentukan jenis transformasinya, jika dirasa perlu
admin bisa mendefinisikan suatu proses transformasi dengan PL/SQL sesuai kebutuhannya.
4. Loading
Jika proses transformasi berhasil maka akan dilanjutkan dengan proses loading (L). Pada proses ini, aplikasi akan memasukkan hasil transformasi tadi ke dalam tabel fakta atau dimensi yang telah dikonfigurasikan oleh admin sebelumnya.
5. Data Warehouse
Proses loading yang dilakukan adalah untuk memasukkan data hasil transformasi ke dalam tabel fakta dan tabel dimensi. Dimana kedua tabel tersebut berada di data warehouse dengan server Oracle.
Data Warehouse ini merupakan tujuan dari output
yang dihasilkan dalam proses transformasi
sebelumnya.
6. Data Mart (viewing data)
Setelah proses ETL selesai, maka langkah terakhir
sebagai output dari aplikasi adalah
mengkonfigurasikan sebuah view untuk menampilkan hasil dari loading data tersebut. Query biasanya langsung dilakukan ke dalam tabel fakta dan dimensi yang ada di data warehouse. Query yang dilakukan akan membentuk suatu data mart. Data mart ini bisa berbentuk tabel maupun grafis tergantung dari keinginan admin.
2.3.2. Rancangan DFD 1. Context Diagram
Context diagram memberikan gambaran siapa yang berinteraksi dengan system dan bagaimana respon system terhadap interaksi tersebut. Seperti gambar dibawah 3.1 melibatkan 1 entitas yaitu admin. Dimana admin harus memiliki akses untuk terkoneksi pada database sumber dan database aplikasi, sehingga dapat untuk mengolah/mentransfer data master yang berada pada database sumber kedalam database aplikasi dengan mekakuan proses ETL dan viewing.
Jika admin sudah terkoneksi dengan database
sumber kemudian aplikasi akan memberikan
informasi hasil ETL dan Data Mart View untuk memudahkan dalam pembacaan data yang diperlukan oleh admin
Koneksi
Data Mart Viewing
Hasil Koneksi
Hasil Data Mart Viewing
ADMIN Extraxtion, Transformation, Loading Hasil Extraxtion, Hasil Transformation, Hasil Loading ADMIN APLIKASI ETL DATA WAREHOUSE
ISSN : 2302 – 450X
94
2. DFD Level 1
DFD level 1 merupakan diagram yang menggambarkan alir data sistem secara lebih detail dari context diagram. Seperti Gambar 3.2 sistem memiliki 5 subproses yaitu koneksi, ekstraksi, transformasi, loading dan data mart. Subproses
koneksi digunakan untuk melakukan setting
konfigurasi pada akses ke database sumber oleh admin dan menyimpan konfigurasi pada table Etl_Connection_Pool.
Subproses koneksi digunakan untuk
melakukan pen settingan konfigurasi dalam
menghubungan aplikasi dengan database sumber. Jika data koneksi sudah benar dan sudah bisa terkoneksi dengan database sumber maka proses ekstraksi sudah bias dilakukan.
Data Koneksi ADMIN Data Koneksi Data Koneksi Terkoneksi Data Ekstraksi Data Ekstraksi Data Ekstraksi Data Ekstraksi Data Transformasi
Data Cleaning Ekstraksi Data Cleaning Ekstraksi Data Transformasi Data Transformasi Data Transformasi Data Transformasi Data Dimension Data Loading Data Loading Data Loading
Data Viewing Table Data Viewing Table Data Viewing Chart
Data Viewing Chart Data Viewing
Data Viewing
Data Fact Table
Data Dimension Table Data Ekstraksi Tb1 ETL_CONNECTION_POOL Tb2 ETL_EXTRACTION_PROFILE Tb4 ETL_CLEANING_CUSTOM_PROFILE Tb6 ETL_TRANSFORMASI_PROFILE Tb7 FACT_TABLE Tb8 ETL_VIEWING_TABLE_PROFILE 1 KONEKSI 2 EKSTRAKSI 3 TRANSFOR MASI 4 LOADING 5 DATA MART VIEWING Tb9 ETL_VIEWING_CHART_PROFILE Tb3 REPOSITORY_TABLE Tb5 DIMENSION_TABLE Tb5 DIMENSION_TABLE Gambar 6. DFD Level 1
Pada subproses Ekstraksi, Transformasi, dan
Loading admin dapat mekalukan pemilihan data sebelum melakukan ekstraksi dengan membuat profile ekstraksi yang telah disediakan lanjut pada transformasi dan loading ini digunakan untuk membuat query PL/SQL dimana digunakan untuk memasukan data pada proses loading ke dalam tabel dimensi dan tabel fakta yang dibuat pada proses transformasi.
Pada subproses data mart viewing digunakan unutuk mempermudah penampilan data yang sudah diolah hingga menghasilkan tampilan chart (grafik) dan tabular (tabel) dengan melakukan beberapa step konfigurasi yang sudah disediakan.
2.3.3. Rancangan Database
Gambar 7. Rancangan Databse Aplikasi
Skema database pada gambar diatas
menjelaskan skema database yang digunakan pada aplikasi ETL untuk Data Warehouse dimana terdapat 14 tabel yang dibuat untuk menunjang kinerja aplikasi ETL yakni sebagai berikut
Tabel 2 Daftar tabel skena database
Nama Tabel Etl_connection_bd_type, Etl_viewing_chart_profile, Etl_connection_pool Etl_viewing_type, Etl_extraction_profile, Etl_viewing_query_repository Etl_extraction_profile_detail Etl_viewing_query_join, Etl_cleaning_custom_profile, Etl_viewing_query_order, Etl_transformation_profile, Etl_viewing_query_group, Etl_viewing_table_profile, Etl_viewing_query_where.
2.3.1. Rancngan Form Awal
Gambar 8. Rancangan Form Awal Aplikasi
Gambar diatas merupakan rancangan antar muka dari tampilan form awal aplikasi ETL dimana tampilan diatas dibagi menjadi 4 bagian 1.MenuStrip,
2.ToolStrip, 3.Content dan 4.StatusStrip yang mana bagian tersebut memiliki perannya masing-masing yakni sebagai berikut.
1. MenuStrip
Menu Strip meruakan kumpulan dari tampilan
untuk mengumpulkan menu – menu berdasarkan
fungsinya yang tidak cukup ditampilan pada tampilan awal aplikasi.
2. ToolStrip
Tool Strip merupakan kumpulan dari tampilan menu berupa icon atau gambar serupa tombol yang dihunakan unuk memudahkan pengguna dalam mencari menu tersebut.
3. Content
Content atau isi disini merupakan tempat untuk
menampilkan form – form yang akan digunakan
dalam aplikasi ini. 4. StatusStrip
Stratus Strip merupakan deretan dari status terkoneksi atau tidak terkoneksinya database dengan aplikasi yang ditandakan dengan teks berwarna merah untuk tidak terkoneksi dan hijau untuk terkoneksi.
2.3.2. Rancngan Skenario Pengujian
1.
White Box TestingPengujian White Box berfokus pada alur logika di setiap modul dalam perancangan aplikasi ETL untuk Data Warehouse dengan menggunakan
Made Mahadipta, Analisis dan Perancangan Aplikasi Etl untuk Data Warehouse
95
basis path testing untuk mencari nilai cyclomatic
complexity dari alur flowgraph.
2.
Black Box TestingPengujian Black Box berfokus pada kebutuhan fungsional system yang sudah didefinisikan pada Analisis Kebutuhan Sistem. Skenario pengujian black
box testing dijelaskan pada tabel diawah ini.
Tabel 3 Ceklist Skenario Black Box Testing
Ke las Uji Bu ti r Uji Indetifikasi Tek n ik P en g u ji an Ha sil P en g u ji an Kode Fungsi Kode Uji
Tabel 4 Detail Skenario Black Box Testing
Kode Uji Butir Uji Tujuan Kondisi Awal Sekenario Pengujian Hasil Data yang diberikan Yang diharapkan Pengam atan Kesimpula n
3.
SKENARIO UJI COBA
3.1. Skenario Pengujian White Box
Pada white box testing, pengujian akan dilakukan pada alur logika di setiap modul dalam perancangan aplikasi ETL untuk Data Warehouse. Berikut merupakan tahapan scenario pengujian menggunakan basis path testing.
1) Modul Connection
1 : Mulai
2 : Input parameter connection
3 : Simpan parameter connection profile 4 : Apakah parameter lengkap ?
5 : Pilih connection profile
6 : Connect berdasarkan connection profile 7 : Selesai
Penghitungan nilai cyclomatic complexity dari alur Modul Connection sebagai berikut :
V(G) = E – N + 2 V(G) = 7 – 7 + 2 V(G) = 2 Jalur Pengujian : 1. Jalur 1 : 1 – 2 – 3 – 4 – 5 – 6 – 7 2. Jalur 2 : 1 – 2 – 3 – 4 – 2 – 3 – 4 – 5 – 6 – 7 Nilai yang didapat dari perhitungan cyclomatic
complexity adalah 2, sehingga terdapat 2 jalur
pengujian yang didapat berdasar perhitungan dari
flowgraph Connection Module tersebut. Nilai
cyclomatic complexity yang dimiliki adalah 2 tergolong program sederhana tanpa banyak resiko dimana program ini dapat dibuat oleh orang lain tanpa memiliki banyak resiko dalam pengerjaannya.
2) Modul Extraction
1 : Mulai
2 : Input parameter Extraction Profile 3 : Simpan parameter Extraction Profile 4 : Apakah parameter lengkap ? 5 : Pilih Extraction Profile 6 : Extraction Profile 7 : Selesai
Penghitungan nilai cyclomatic complexity dari alur Modul Extraction sebagai berikut :
V(G) = E – N + 2 V(G) = 7 – 7 + 2 V(G) = 2 Jalur Pengujian : 1. Jalur 1 : 1 – 2 – 3 – 4 – 5 – 6 – 7 2. Jalur 2 : 1 – 2 – 3 – 4 – 2 – 3 – 4 – 5 – 6 – 7 Nilai yang didapat dari perhitungan cyclomatic
complexity adalah 2, sehingga terdapat 2 jalur pengujian yang didapat berdasar perhitungan dari
flowgraph Extraction Module tersebut. Nilai
cyclomatic complexity yang dimiliki adalah 2 tergolong program sederhana tanpa banyak resiko dimana program ini dapat dibuat oleh orang lain tanpa memiliki banyak resiko dalam pengerjaannya.
3) Modul Cleaning
1 : Mulai
2 : Pilih Repository Table Name
3 : Apakah memilih menu Date Format ? 4 : Input parameter Date Format
5 : Simpan parameter Date Format 6 : Apakah memilih menu Null Value ? 7 : Input paramete Null Value
8 : Simpan parameter Null Value
9 : Apakah memilih menu Replace Value ? 10 : Input parameter Replace Value 11 : Simpan parameter Replace Value 12 : Selesai
Penghitungan nilai cyclomatic complexity dari alur Modul Extraction sebagai berikut :
V(G) = E – N + 2 V(G) = 13 – 12 + 2 V(G) = 3 Jalur Pengujian : 1. Jalur 1 : 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 – 11 – 12
ISSN : 2302 – 450X
96
2. Jalur 2 : 1 – 2 – 3 – 6 – 7 – 8 – 9 – 10 – 11 – 12 3. Jalur 3 : 1 – 2 – 3 – 9 – 10 – 11 – 12
Nilai yang didapat dari perhitungan cyclomatic
complexity adalah 3, sehingga terdapat 3 jalur pengujian yang didapat berdasar perhitungan dari
flowgraph Cleaning Module tersebut. Nilai
cyclomatic complexity yang dimiliki adalah 3 tergolong program sederhana tanpa banyak resiko dimana program ini dapat dibuat oleh orang lain tanpa memiliki banyak resiko dalam pengerjaannya.
4) Modul Transformation dan Loading
1 : Mulai
2 : Input Table Name, Table Type, Column Name, Data Type, Size, Primary Key, Not Null (untuk pembuatan tabel dimensi dan table fakta)
3 : Simpan tabel 4 : dimensikan tabel
5 : Apakah memilih menu Parameter ? 6 : Input parameter Repository dan
Destination
7 : Simpan parameter Repository dan Destination
8 : Apakah memilih menu Time Parameter ? 9 : Input parameter Time
10 : Simpan parameter Time 11 : Buat Transformation Library 12 : Input PL/SQL
13 : Simpan Transformation Library 14 : Pilih PL/SQL Name
15 : Execute PL/SQL Transformation Library 16 : Selesai
Penghitungan nilai cyclomatic complexity dari alur Modul Transformation and Loading sebagai berikut : V(G) = E – N + 2 V(G) = 16 – 16 + 2 V(G) = 2 Jalur Pengujian : 1. Jalur 1 : 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 – 11 – 12 – 13 – 14 – 15 – 16 2. Jalur 2 : 1 – 2 – 3 – 4 – 5 – 8 – 9 – 10 – 11 – 12 – 13 – 14 – 15 – 16
Nilai yang didapat dari perhitungan cyclomatic
complexity adalah 2, sehingga terdapat 2 jalur pengujian yang didapat berdasar perhitungan dari
flowgraph Transformation dan Loading Module tersebut. Nilai cyclomatic complexity yang dimiliki adalah 2 tergolong program sederhana tanpa banyak resiko dimana program ini dapat dibuat oleh orang
lain tanpa memiliki banyak resiko dalam
pengerjaannya.
5) Modul Viewing data Mart
1 : Mulai
2 : Input parameter Step 1 : Fact Table, Repository Table, Joint to Table
3 : Input parameter Step 2 : Group By, Order By, Order By And Data Limit
4 : Input parameter Step 3 : Chart parameter, Tabular parameter
5 : Simpan profile parameter
6 : Apakah ingin menampilkan dalam bentuk Chart ?
7 : Pilih Profile Neme, Chart Legends
8 : Apakah ingin menampilkan dalam bentuk Tabular ?
9 : Pilih profile name 10 : Selesai
Penghitungan nilai cyclomatic complexity dari alur modul Viewing Data Mart sebagai berikut :
V(G) = E – N + 2 V(G) = 10 – 10 + 2 V(G) = 2 Jalur Pengujian : 1. Jalur 1 : 1 – 2 – 3 – 4 – 5 – 6 – 7 – 8 – 9 – 10 2. Jalur 2 : 1 – 2 – 3 – 4 – 5 – 8 – 9 – 10 Nilai yang didapat dari perhitungan cyclomatic
complexity adalah 2, sehingga terdapat 2 jalur pengujian yang didapat berdasar perhitungan dari
flowgraph Viewing Data Mart Module tersebut. Nilai
cyclomatic complexity yang dimiliki adalah 2 tergolong program sederhana tanpa banyak resiko dimana program ini dapat dibuat oleh orang lain tanpa memiliki banyak resiko dalam pengerjaannya.
3.2. Skenario Pengujian Black Box
Black box testing merupakan pengujian dengan user interface untuk menguji apakah output yang dihasilkan oleh sistem sesuai dengan input yang diberikan. Pengujian ini dilakukan berdasarkan modul pada sistem, modul connection, modul
extraction, modul cleaning, modul transformation, modul loading, modul viewing data mart.