BAB 3
ANALIS IS DAN PERANCANGAN
3.1 Sejarah Perusahaan
PT M illenium Globalindo Holiday (PT M G Holiday) didirikan sejak 3 Januari tahun 2000. Berawal dari sebuah perusahaan yang bertindak sebagai agen perjalanan grosir murni, perusahaan ini hanya melayani agen perjalanan sebagai klien dan tidak menerima order apapun langsung dari tamu. Bisnis M G Holiday khusus dalam pemesanan hotel dan kemasan wisata, tetapi tidak melakukan tiket penerbangan. M G Holiday menyediakan hotel domestik Indonesia dan juga hotel-hotel internasional di seluruh dunia.
Saat ini M G Holiday sendiri memiliki rekan jaringan internasional di berbagai benua khususnya Asia, Asia Pasifik dan Eropa. Jumlah jaringan tersebut tidak kurang dari 12 negara meliputi, negara-negara Asia Tenggara (seperti Thailand, Singapura, Vietnam) China, Hongkong, India, Russia, Timur Tengah (seperti Israel, Iran dan M esir), Eropa (seperti Inggris, Jerman, Perancis).
3.1.1 Kantor MG Holiday
MG Holiday Kantor Pusat berlokasi di Jakarta, dan memiliki lima kantor perwakilan di Bandung, Semarang, Bali, Surabaya dan Yogyakarta. M G Holiday juga memiliki Kantor Penjualan & Pemasaran di Kuala Lumpur, Singapura, Shanghai, Shenzhen, Iran, India dan Arab Saudi.
3.1.2 Klien
MG Holiday telah terbukti sebagai salah satu agen perjalanan grosir terbesar di Indonesia dan sekarang memiliki lebih dari 1300 daerah sub-agen Indonesia dan di luar negeri memiliki lebih dari 200 sub-agen. pasar utama perusahaan ini adalah pasar domestik dan Asia khususnya ASEAN, Korea, Timur Tengah, India, China termasuk Hong Kong.
3.1.3 Profil Perusahaan Kantor Pusat:
Ruko Greenville Tengah No 2 PP
Jl. Raya Tanjung Duren Barat, Jakarta Barat 11479, Indonesia Tel: 021-5641945 Fax: 021-5641946
Kontak
- M r Raymond, M anaging Director [email protected]
- Bapak Eddy, Direktur Penjualan & Pemasaran [email protected]
- M r Sumarno, M anajer Akuntansi [email protected]
3.2 S truktur Organisasi
Di dalam sebuah organisasi, akan sangat lebih teratur dan efisien apabila organisasi tersebut memiliki struktur yang mengatur posisi dan kinerja dari
karyawan-
karyawan yang terlibat dalam usaha kerja pada masing-masing bidangnya di dalam organisasi tersebut
Berikut adalah gambar struktur organisasi yang dimiliki oleh PT MG Holiday.
Gambar 3.1 Struktur Organisasi PT M G Holiday
3.2.1 Tugas dan Wewenang 1. RUPS
RUPS (Rapat Umum Pemegang Saham) merupakan pemegang kendali tertinggi dari suatu organisasi. RUPS berfungsi sebagai kendali utama dalam pengambilan keputusan- keputusan yang diambil dalam suatu perusahaan. Dalam RUPS, semua pemegang saham sebesar/sekecil apapun sahamnya memiliki hak
untuk mengeluarkan suaranya. Dalam RUPS sendiri dibahas masalah-masalah yang berkaitan dengan evaluasi kinerja dan kebijakan perusahaan yang harus dilaksanakan segera. Bila pemegang saham berhalangan, dia bisa melempar suara miliknya ke pemegang lain yang disebut mandat. Hasil RUPS biasanya dilimpahkan ke komisaris untuk diteruskan ke direksi untuk dijalankan. Contoh umum dari isi RUPS:
M emberhentikan direksi atau komisaris
M enentukan direksi dan pengangkatan komisaris
M enetapkan besar gaji direksi dan komisaris
M engevaluasi kinerja perusahaan
M emutuskan rencana penambahan / pengurangan saham perusahaan
M enentukan kebijakan perusahaan
M engumumkan pembagian laba (dividen) 2. Presiden Komisaris
Presiden Komisaris merupakan pemimpin tertinggi dari jajaran direksi yang pada suatu kasus juga merupakan founder / pendiri dari suatu organisasi tersebut. Presiden komisaris memiliki hak penuh dalam menjalankan tugasnya namun pengambilan keputusan suatu organisasi tetap dilakukan dalam RUPS. Presiden Komisaris hanya bertugas untuk menjalankan keputusan yang telah diambil melalui RUPS yang kemudian dilimpahkan kepada bawahan sebagai contoh CEO atau jajaran direksi lainnya.
Tugas dan wewenang dari Presiden Komisaris meliputi:
• Menetapkan sasaran perusahaan baik untuk rencana jangka panjang maupun rencana jangka pendek.
• Menetapkan kebutuhan perusahaan dalam mencapai tujuan yang sudah ditetapkan.
• Menetapkan kebijakan perusahaan berdasarkan visi dan misi perusahaan.
• Memonitor kinerja perusahaan. 3. Direktur Manager (Managing Director)
Managing director atau yang kita sering sebut dengan CEO (Chief Executive Officer) adalah jabatan tertinggi di suatu perusahaan dan mempunyai tugas untuk memimpin suatu perusahaan dan bertanggung jawab untuk kestabilan perusahaan tersebut. Namun, titel CEO sering mempunyai banyak tafsiran dalam penggunaannya, karena sering diasosiasikan sebagai President atau Direktur Utama dalam suatu perusahaan. Dalam banyak organisasi CEO bahkan digambarkan lebih penting daripada President Director perusahaan. Sebab, ia mempunyai tugas yang lebih luas daripada President Director dan sering juga dikombinasikan dengan Chairman of The Board. 4. Direktur Penjualan (Director of Sales)
Director of Sales ( irektur Penjualan) merupakan jabatan tertinggi yang bertanggung jawab dalam bagian penjualan dan pemasaran suatu produk atau jasa yang ditawarkan oleh suatu perusahaan. Direktur penjualan mendapatkan perintah dari CEO secara langsung atau dapat melalui sekretaris CEO. Direktur penjualan berfungsi untuk menentukan strategi-strategi pemasaran dan penjualan yang tepat sasaran dan mendorong tingkat penjualan yang sesuai dengan target
perusahaan. Dalam kinerjanya direktur penjualan dibantu oleh manager pemasaran dan manager produk.
6. Direktur Operasional (Director of Operational)
Director of Operational (Direktur Operasional) merupakan jabatan yang memiliki tanggung jawab secara luas pada sebuah perusahaan. Direktur operasional biasanya mengatur keseluruhan kegiatan operasional perusahaan mulai dari pelayanan terhadap konsumen, distribusi, pengadaan barang / jasa. Dalam kasus ini, PT M G Holiday memiliki direktur operasional yang bertugas secara khusus dalam kegiatan operasional domestik, internasional, dan tur.
7. Kontrol Keuangan (Finance Controller)
Finance Controller / kontrol keuangan bergerak dalam bidang pengaturan kontrol keuangan suatu perusahaan. Bagian ini mendata, mencatat, dan memberikan laporan keuangan yang nanti akan dapat dilihat oleh jajaran direksi dalam RUPS. Setiap bagian dalam menjalankan tugasnya harus bekerja sama dengan bagian kontrol keuangan agar data-data yang dimiliki oleh kedua pihak tidak terjadi perbedaan penghitungan. Setiap kegiatan yang berkaitan dengan keuangan dilakukan harus dilaporkan kepada bagian kontrol keuangan untuk didata, setelah itu baru bagian kontrol keuangan meminta persetujuan dari pimpinan apakah dana yang dibutuhkan dapat dikeluarkan atau tidak dengan alasan dan kondisi tertentu.
8. Manager Pemasaran (Marketing Manager)
Marketing Manager (manager pemasaran) merupakan jabatan yang menentukan kegiatan-kegiatan pokok yang dilakukan oleh perusahaan untuk mempertahankan kelangsungan perusahaannya, untuk berkembang, dan untuk
mendapatkan laba. Proses pemasaran itu dimulai jauh sejak sebelum barang-barang diproduksi, dan tidak berakhir dengan penjualan. Kegiatan pemasaran perusahaan harus juga memberikan kepuasan kepada konsumen jika menginginkan usahanya berjalan terus, atau konsumen mempunyai pandangan yang lebih baik terhadap perusahaan.
9. Manager Produk (Product Manager)
Product Manager (Manager Produk) bertugas untuk menginvestigasi, menunjuk, mengatur produk-pruduk yang ada pada suatu perusahaan dan berperan secara aktif dalam manajemenen produk. Manager produk juga menentukan produk mana yang cocok di pasaran dan mana produk-produk yang sudah tidak sesuai lagi dengan kebutuhan pasar.
10. Domestik Manager
Domestik manager pada perusahaan PT MG Holiday bertugas dalam hubungan relasi-relasi domestik. Domestik manager harus dapat menjalin kerja sama yang baik antara relasi perusahaan domestik yang dapat memberikan keuntungan bagi kedua belah pihak, domestik manager bertanggung jawab langsung terhadap direktur operasional dan dibantu oleh supervisor domestik dalam pelaksanaan tugasnya.
11. International Manager
International Manager pada perusahaan PT MG Holiday bertugas dalam hubungan relasi-relasi internasional. International manager harus dapat mencari relasi baru dalam skala internasional guna menambahkan kualitas dari jasa yang ditawarkan, sekaligus tetap menjaga hubungan baik yang telah terjadi pada perusahaan lain dalam skala internasional. International manager juga
bertanggung jawab secara langsung terhadap direktur operasional dan dibantu oleh international supervisor dalam pelaksanaan tugasnya.
12. Asisten Kontrol Keuangan (Assistance Finance Controller)
Assistance Finance Controller merupakan asisten dari kontrol keuangan yang bidang pekeerjaannya sama dengan kontrol keuangan. Asisten kontrol keuangan menerima perintah dari kontrol keuangan dan membantu pekerjaan-pekerjaan kontrol keuangan, hal ini dilakukan agar tidak terjadi salah kalkulasi dalam pengerjaannya.
13. Manager Akuntansi (Accounting Manager)
Accounting Manager (Manager Akuntansi) merupakan pimpinan dalam penghitungan keuangan yang bertanggung jawab kepada kontrol keuangan. Manager akuntansi bertugas untuk memberikan perintah kepada Accounting Supervisor dan mengawasi kinerjanya.
3.2.2 Visi dan Misi PT MG Holiday 1. Visi
Visi dari PT M G Holiday adalah inovasi yang dinamis dalam mencapai titik kesempurnaan dalam menyediakan jasa pelayanan serta menjadi rekan terpercaya yang memahami kebutuhan pelanggan.
2. M isi
Untuk mencapai misi yang telah ditentukan maka PT M G Holiday mencanangkan beberapa misi yang dapat dilakukan, yaitu :
o M engembangkan budaya perusahaan yang berorientasikan pelanggan. o Secara berkesinambungan meningkatkan inovasi dan mutu kerja.
o M enyediakan jasa pelayanan yang inovatif dengan tetap mempertimbangkan aspek harga yang terjangkau.
o M eningkatkan kedisiplinan kerja dalam setiap elemen karyawan.
3.3 Prosedur yang Sedang Berjalan
Berikut adalah proses bisnis yang sedang berjalan di PT M G Holiday: 3.3.1 Proses Reservasi
Agen perjalanan yang ingin memesan kamar hotel melalui M G Holiday dapat menghubungi staff M G Holiday melalui telepon, pengiriman email, atau melalui yahoo messenger kepada staff M G Holiday untuk memberikan informas i mengenai detail reservasi, kemudian staff akan menghubungi pihak hotel untuk memesan kamar, jika kamar tersedia maka staff akan memesan kamar sesuai reservasi yang telah dibuat, lalu staff akan menghubungi pihak agen perjalanan untuk menginformasikan ketersediaan kamar hotel. Kemudian agen perjalanan dapat memasukkan detail reservasi kamar hotel secara langsung di website PT MG Holiday ataupun meminta staff MG Holiday untuk menyimpan datanya dalam database.
3.3.2 Proses Penjualan Voucher Hotel
Setelah agen perjalanan mengirimkan voucher guarantee kepada M G Holiday maka staff akan membuat voucher untuk dikirimkan ke hotel yang dipesan dan invoice untuk dikirimkan ke agen. Pembayaran yang diterima dari agen diterima berdasarkan status payment agen tersebut. Terdapat tiga status payment yaitu: kredit, pre payment, dan hard payment. Agen dengan status kredit bisa membayar setiap dua minggu, untuk status pre payment maka agen harus
membayar paling lambat sebelum tamu check out dari hotel, sedangkan untuk hard payment maka pembayaran harus diterima sebelum tamu check in.
3.4 Subjek Data
Subjek data merupakan kumpulan data yang telah dikelompokkan pada suatu sistem yang memiliki fungsi tertentu dari hasil penelitian terhadap fungsi bisnis pada suatu perusahaan. Subjek data ini dapat dipakai untuk menampilkan informasi yang diperlukan bagi pihak eksekutif.
Subjek data yang tersedia pada PT MG Holiday dapat dilihat pada tabel berikut ini:
Tabel 3.1 Subjek data
Subjek Data Keterangan
Agen
Berisi informasi mengenai agen yang menjadi pelanggan perusahaan.
Hotel
Berisi informasi mengenai hotel yang menjadi klien perusahaan.
Supplier
Berisi informasi mengenai supplier yang bekerja sama dengan perusahaan.
Karyawan Berisi informasi mengenai karyawan perusahaan. Invoice Berisi informasi tentang detail tagihan kepada agen. Voucher hotel Berisi informasi tentang detail reservasi tamu untuk hotel. Reservasi Berisi informasi mengenai detail reservasi.
3.5 Fungsi Bisnis
Fungsi bisnis merupakan kegiatan-kegiatan yang dilakukan oleh perusahaan yang menyusun keseluruhan aktivitas yang ada di dalam perusahaan, sehingga tujuan perusahaan dapat tercapai dengan baik. Dari penelitian yang dilakukan diperoleh bahwa fungsi bisnis yang berkaitan dengan reservasi dan penjualan voucher hotel pada PT Holiday adalah sebagai berikut:
Tabel 3.2 Fungsi Bisnis
Fungsi Bisnis Keterangan
Penerimaan reservasi Kegiatan mencatat permintaan reservasi dari agen. Cek ketersediaan kamar hotel Kegiatan mengecek ketersediaan kamar hotel yang
akan dipesan.
Konfirmasi reservasi Kegiatan konfirmasi detail reservasi kepada agen dan pendataan ke dalam database.
Penerimaan voucher guarantee
Kegiatan konfirmasi pembuatan invoice dan voucher hotel.
Pembuatan invoice Kegiatan pembuatan laporan tagihan untuk agen. Pembuatan voucher hotel Kegiatan pembuatan detail reservasi tamu untuk
3.6 Entity Relationship Diagram (ERD)
ERD yang terdapat pada PT MG Holiday adalah sebagai berikut:
Ac count.OrganizationTypes
PK Organi zationTypeID
Organi zat ionTypeName
Ac count.Organizations PK Organiz ationID Organiz at ionCode Organiz at ionName FK1 Organiz at ionTypeI D Address1 Address2 FK3 CityI D PhoneNumber FaxNumber EmailAddres s URLAddress FK2 Payment TypeID Credit Limit Creat edBy Creat edTime Las tUpdat edBy Las tUpdat edTime
Financ e. Pay mentTy pes
PK PaymentTypeI D PaymentTy peName World.Cities PK Ci tyID Ci tyCode Ci tyName FK1 Count ry ID Creat edBy Creat edTime Las tUpdat edBy Las tUpdat edTime
World.Count ries P K CountryID Count ry Code Count ry Name Creat edBy Creat edTime Las tUpdatedBy Las tUpdatedTime Hotel.Rat ings PK Hotel RatingI D HotelRatingTit le HotelRatingDes c CreatedBy CreatedTime Last UpdatedB y Last UpdatedTime Hotel.Hot els PK HotelI D HotelCode HotelName FK1 HotelRatingI D FK2 Pay mentTypeID PhoneNumber Fax Number HotelLocation Addres s1 Addres s2 FK3 City ID EmailA ddress URLAddress CreatedB y CreatedTime Last UpdatedBy Last UpdatedTime Hotel.BedTy pes PK BedTypeID BedType
WebS ervic e.S uppli ers
PK SupplierID SupplierName Acc ount.Users PK UserI D Us erLogin Us erPassword FK2 OrganizationID Title FullName Position Addres s FK1 Cit yID EmailAddres s PhoneNumber MobileNumber CreatedBy CreatedTi me Last UpdatedBy Last UpdatedTime
Reserv at ion.Res ervations
PK ReservationID Reserv at ionNumber FK2 OrganizationI D OrganizationS taffTitle OrganizationS taffFullName OwnerUserID CreatedBy CreatedTime Last UpdatedB y Last UpdatedTime
Res ervation. Hotel s
PK ReservationHotelID FK 1 Res ervationI D FK 2 Hot elI D Check InDate Check OutDat e TotalAdult TotalChild SpecialRequest Agenc yVouc herNumber Creat edBy Creat edTime LastUpdat edBy LastUpdat edTime
Reserv ati on.HotelGuest s
PK ReservationHotelGuestID FK1 Reserv at ionHotelID GuestTitl e GuestFirstName GuestLas tName CreatedB y CreatedTime Last UpdatedB y Last UpdatedTime Reservation.HotelRooms PK Reservati onHotelRoom ID FK1 ReservationHotelID Market FK2 BedTypeI D Quantit y Allot mentUsed CreatedBy CreatedTime LastUpdatedBy LastUpdatedTime Reserv at ion.HotelRoomRates PK ReservationHotelRoom RateID
FK1 Reserv ati onHotelRoomI D FK2 SupplierID Chec kInDate NettRat e SellRat e CreatedB y CreatedTime Last UpdatedBy Last UpdatedTime Invoice.I nv oic es PK InvoiceID InvoiceNumber FK1 Reserv at ionID FK2 OrganizationID InvoiceDate PaymentLimitDat e InvoiceHeader InvoiceFooter Print ed CreatedBy CreatedTi me Last UpdatedBy Last UpdatedTime Last PrintedBy Last PrintedTime Invoice.HotelGuest s PK InvoiceHotelGuestI D FK1 InvoiceID Guest Title Guest FullName Invoice.Lines PK InvoiceLineI D FK1 Inv oic eI D Inv oic eLineDes c RoomType FK2 BedTypeI D Quantit y V oucher.Hot els PK VoucherHotelI D VoucherHot elNumber FK1 Reserv at ionID FK2 HotelID Chec kInDate Chec kOut Date Conf irmedB yName Speci alRequest AgencyV oucherNumber CreatedB y CreatedTime Last UpdatedB y Last UpdatedTime V oucher.Hot elGuest s PK VoucherHotelGuestID FK1 VoucherHot elID Gust Ti tle GuestFullName V oucher.Hot elRooms PK VoucherHotelRoom ID FK1 VoucherHot elI D Quant ity RoomTy pe FK2 BedTypeID Servic eDet ail Invoice.Hot elRat es
PK Invoi ceHotel RateID
FK1 Invoi ceLineI D Chec kInDate NettRat e SellRat e AgencyCommis sion
3.7 Metadata
Metadata database pada PT MG Holiday adalah sebagai berikut: Nama tabel : Account.Users
Primary Key : UserID
Foreign Key : CityID, OrganizationID Keterangan : Tabel M aster User
Tabel 3.3 Tabel Account.Users
Nama Field Tipe Size Keterangan
User ID Int 4 Kode User
UserLogin Varchar 50 ID login User User Password Varchar 100 Password User
OrganizationID Int 4 ID organisasi
Title Varchar 5 Gelar User
FullName Varchar 50 Nama Lengkap User
Position Varchar 50 Jabatan User
Address Varchar 50 Alamat User
CityID Int 4 Kode Kota User
Email Address Varchar 50 Alamat Email User PhoneNumber Varchar 50 Telepon User M obileNumber Varchar 50 Telepon M obile User
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdateBy Int 4 Petugas Update
Terakhir
Nama tabel : Account.Organization Primary Key : OrganizationID
Foreign Key : OrganizationTypeID, PaymentTypeID, CityID Keterangan : Tabel M aster Organisasi
Tabel 3.4 Account.Organization
Nama Field Tipe Size Keterangan
OrganizationID Int 4 ID Organisasi
OrganizationCode Varchar 15 Kode Organisasi OrganizationTypeID Tinyint 1 ID Tipe Organisasi
Address1 Varchar 100 Alamat Pertama
Address2 Varchar 100 Alamat Kedua
CityID Int 4 ID Kota Organisasi
PhoneNumber Varchar 50 Telepon Organisasi FaxNumber Varchar 50 Nomor Fax Organisasi
EmailAddress Varchar 100 Alamat Email Organisasi
URLAddress Varchar 100 Alamat URL Organisasi PaymentTypeID Tinyint 1 ID Jenis Pembayaran
CreditLimit M oney 8 Batas Hutang
Organisasi
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
Nama tabel : Account.OrganizationTypes Primary Key : OrganizationTypeID
Foreign Key : -
Keterangan : Tabel Tipe Organisasi
Tabel 3.5 Account.OrganizationTypes
Nama Field Tipe Size Keterangan OrganizationTypeID Tinyint 1 ID Tipe Organisasi
OrganizationTypeName Varchar 30 Nama Tipe Organisasi
Nama tabel : Finance.PaymentTypes Primary Key : PaymentTypeID Foreign Key : -
Keterangan : Tabel Tipe Pembayaran
Tabel 3.6 Finance.PaymentTypes
Nama Field Tipe Size Keterangan PaymentTypeID Tinyint 1 ID Tipe Pembayaran
Nama tabel : Hotel.Hotels Primary Key : HotelID
Foreign Key : HotelRatingID, PaymentTypeID, CityID Keterangan : Tabel M aster Hotel
Tabel 3.7 Hotel.Hotels
Nama Field Tipe Size Keterangan
HotelID Int 4 ID Hotel
HotelCode Varchar 30 Kode Hotel
HotelName Varchar 50 Nama Hotel
HotelRatingID Tinyint 1 ID Rating Hotel PaymentTypeID Tinyint 1 ID Tipe Pembayaran PhoneNumber Varchar 50 Telepon Hotel FaxNumber Varchar 50 Nomor Fax Hotel HotelLocation Varchar 300 Lokasi Hotel Address1 Varchar 100 Alamat Hotel 1 Address2 Varchar 100 Alamat Hotel 2
CityID Int 4 ID Kota Hotel
EmailAddress Varchar 100 Alamat Email Hotel URLAddress Varchar 100 Alamat URL Hotel
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
Nama tabel : Hotel.Ratings Primary Key : HotelRatingID Foreign Key : -
Keterangan : Tabel Rating Hotel
Tabel 3.8 Hotel.Ratings
Nama Field Tipe Size Keterangan HotelRatingID Tinyint 1 ID Rating Hotel
HotelRatingTitle Varchar 15 Jabatan Rating Hotel HotelRatingDesc Varchar 50 Rating Hotel
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : Hotel.BedTypes Primary Key : BedTypeID Foreign Key : -
Keterangan : Tabel Tipe Ranjang yang dapat direservasi Tabel 3.9 Finance.PaymentTypes
Nama Field Tipe Size Keterangan BedTypeID Tinyint 1 ID Tipe Ranjang
Nama tabel : Reservation.HotelGuests Primary Key : ReservationHotelGuestsID Foreign Key : ReservationHotelID
Keterangan : Tabel reservasi untuk tamu hotel
Tabel 3.10 Reservation.HotelGuests
Nama Field Tipe Size Keterangan Reservation.HotelGue
stsID
Int 4 ID Reservasi tamu hotel
ReservationHotelID Int 4 ID reservasi hotel
GuestTitle Varchar 5 Gelar tamu
GuestFirstName Varchar 50 Nama depan tamu GuestLastName Varchar 50 Nama belakang tamu
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : Reservation.Hotel Primary Key : ReservationHotelID Foreign Key : ReservationID, HotelID Keterangan : Tabel reservasi hotel
Tabel 3.11 Reservation.Hotel
Nama Field Tipe Size Keterangan ReservationHotelID Int 4 ID reservasi hotel
ReservationID Int 4 ID reservasi
HotelID Int 4 ID hotel
CheckInDate Datetime 8 Tanggal check in CheckOutDate Datetime 8 Tanggal check out
TotalAdult Int 4 Jumlah orang
dewasa
TotalChild Int 4 Jumlah anak-anak
SpecialRequest Varchar 200 Pesanan spesial AgencyVoucherNumb
er
Varchar 50 Nomor voucher agensi
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : Reservation.HotelRoomrates Primary Key : ReservationHotelRoomratesID
Foreign Key : ReservationHotelRoomsID, SupplierID Keterangan : Tabel reservasi harga hotel
Tabel 3.12 Reservation.HotelRoomrates
Nama Field Tipe Size Keterangan
Reservation.HotelRoo mratesID
Int 4 ID reservasi harga hotel
Reservation.HotelRoo msID
Int 4 ID reservasi kamar hotel
CheckInDate Datetime 8 Tanggal check in
NettRate M oney 8 Harga Nett
SellRate M oney 8 Harga jual
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : Reservation.HotelRooms Primary Key : ReservationHotelRoomsID Foreign Key : ReservationHotelID, BedTypeID Keterangan : Tabel reservasi kamar hotel
Tabel 3.13 Reservation.HotelRooms
Nama Field Tipe Size Keterangan Reservation.HotelRoo
msID
Int 4 ID reservasi kamar hotel
Reservation.HotelID Int 4 ID reservasi hotel BedTypeID Tinyint 1 ID tipe ranjang
Quantity Tinyint 1 Banyaknya item
AllotmentUsed Tinyint 1 Ditujukan kepada
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : Reservation.Reservation Primary Key : ReservationID
Foreign Key : OrganizationID Keterangan : Tabel reservasi
Tabel 3.14 Reservation.Reservation
Nama Field Tipe Size Keterangan ReservationID Int 4 ID reservasi
ReservationNumber Varchar 12 Nomor reservasi
OrganizationID Int 4 ID organisasi
OrganizationStaffTitle Varchar 5 Gelar Staff Organisasi OrganizationStaffFull
Name
Varchar 50 Nama staff organisasi
OwnerUserID Int 4 User ID owner
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : Voucher.Hotels Primary Key : VoucherHotelID
Foreign Key : ReservationID, HotelID Keterangan : Tabel voucher hotel
Tabel 3.15 Voucher.Hotels
Nama Field Tipe Size Keterangan VoucherHotelID Int 4 ID voucher hotel
VoucherHotelNumber Varchar 12 Nomor voucher hotel ReservationID Int 4 ID reservasi
HotelID Int 4 ID Hotel
CheckInDate Datetime 8 Tanggal check in
CheckOutDate Datetime 8 Tanggal check out ConfirmedByName Varchar 50 Konfirmasi nama SpecialRequest Varchar 200 Request spesial AgencyVoucherNumber Varchar 50 Nomor Voucher
agensi
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update
Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : Voucher.HotelRooms Primary Key : VoucherHotelRoomId
Foreign Key : VoucherHotelID, BedTypeID Keterangan : Tabel Voucher Kamar Hotel
Tabel 3.16 Voucher.HotelRooms
Nama Field Tipe Size Keterangan VoucherHotelRoomID Int 4 ID voucher kamar
hotel
VoucherHotelID Int 4 ID voucher hotel
Quantity Tinyint 1 Banyaknya kamar
pesanan
RoomType Varchar 50 Jenis kamar yang dipesan
BedTypeID Tinyint 1 ID jenis ranjang
ServiceDetail Varchar 50 Detil pelayanan
Nama tabel : Voucher.HotelGuests Primary Key : VoucherHotelGuestID Foreign Key : VoucherHotelID
Keterangan : Tabel Voucher Keterangan Tamu Hotel Tabel 3.17 Voucher.HotelGuests
Nama Field Tipe Size Keterangan VoucherHotelGuestID Int 4 ID voucher tamu
hotel
GuestTitle Varchar 5 Gelar tamu
GuestFullName Varchar 50 Nama lengkap tamu
Nama tabel : Invoice.Invoices Primary Key : InvoiceID
Foreign Key : ReservationID, OrganizationID Keterangan : Tabel Invoice Hotel
Tabel 3.18 Invoice.Invoices
Nama Field Tipe Size Keterangan
InvoiceID Int 4 ID invoice
InvoiceNumber Varchar 15 Nomor invoice ReservationID Int 4 ID reservasi
OrganizationID Int 4 ID organisasi
InvoiceDate Datetime 8 Tanggal invoice PaymentLimitDate Datetime 8 Limit tanggal
pembayaran
InvoiceHeader Varchar 250 Bagian header invoice
InvoiceFooter Varchar 250 Bagian footer invoice
Printed Varchar 500 Bagian yang dicetak
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
LastPrintedBy Int 4 Petugas pencetakan
terakhir
LastPrintedTime Datetime 8 Waktu pencetakan terakhir
Nama tabel : Invoice.HotelGuests Primary Key : InvoiceHotelGuestID Foreign Key : InvoiceID
Keterangan : Tabel invoice tamu hotel
Tabel 3.19 Invoice.HotelGuests
Nama Field Tipe Size Keterangan InvoiceHotelGuestID Int 4 ID invoice tamu
hotel
InvoiceID Int 4 ID invoice
GuestTitle Varchar 5 Gelar tamu
Nama tabel : Invoice.Lines Primary Key : InvoiceLineID
Foreign Key : InvoiceID, BedTypeID Keterangan : Tabel baris invoice
Tabel 3.20 Invoice.Lines
Nama Field Tipe Size Keterangan InvoiceLineID Int 4 ID baris invoice
InvoiceID Int 4 ID invoice
InvoiceLineDesc Varchar 250 Detail invoice
RoomType Varchar 50 Jenis kamar
BedTypeID Tinyint 1 ID jenis ranjang Quantity Tinyint 1 Kuantitas kamar
Nama tabel : Invoice.HotelRates Primary Key : InvoiceHotelRateID Foreign Key : InvoiceLineID
Keterangan : Tabel invoice rate hotel
Tabel 3.21 Invoice.HotelRates
Nama Field Tipe Size Keterangan InvoiceHotelRateID Int 4 ID invoice rate hotel InvoiceLineID Int 4 ID baris invoice CheckinDate Datetime 8 Tanggal check in
SellRate M oney 8 Tarif jual
AgencyCommission M oney 8 Komisi agensi
Nama tabel : WebService.Suppliers Primary Key : SupplierID
Foreign Key : -
Keterangan : Tabel supplier
Tabel 3.22 WebService.Suppliers
Nama Field Tipe Size Keterangan SupplierID Int 4 ID supplier
SupplierName Varchar 50 Nama supplier
Nama tabel : World.Cities Primary Key : CityID Foreign Key : CountryID Keterangan : Tabel daftar kota
Tabel 3.23 World.Cities
Nama Field Tipe Size Keterangan
CityID Int 4 ID kota
CityCode Varchar 5 Kode kota
CityName Varchar 50 Nama kota
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
Nama tabel : World.Countries Primary Key : CountryID Foreign Key : -
Keterangan : Tabel daftar negara
Tabel 3.24 World.Countries
Nama Field Tipe Size Keterangan
CountryID smallint 2 ID negara
CountryCode Varchar 3 Kode negara
CountryName Varchar 50 Nama negara
CreatedBy Int 4 Petugas Pembuatan
CreatedTime Datetime 8 Waktu Pembuatan
LastUpdatedBy Int 4 Petugas Update Terakhir
LastUpdatedTime Datetime 8 Waktu Update Terakhir
3.8 Teknologi yang Digunakan
PT MG Holiday menggunakan teknologi informasi untuk mendukung kegiatan operasional atau kegiatan bisnis sehari-hari. Teknologi yang digunakan meliputi penggunaan perangkat keras (hardware) dan perangkat lunak (software).
3.8.1 Hardware
Hardware yang digunakan pada PT M G Holiday sebagai berikut: 1. Hardware Server
Server dapat menampung semua data kegiatan operasional perusahaan tersebut. Server dihubungkan dengan local area network (LAN) sehingga dapat berhubungan dengan komputer client. Spesifikasi komputer server yang digunakan pada PT MG Holiday yaitu:
- Prosesor Intel Xeon Dual Core - M emori 8 GB - HardDisk 4x146 GB SATA - DVD-ROM - M onitor Saphire 15’ - Keyboard - Mouse - LAN Card 2. Hardware Client
Hardware client merupakan komputer yang digunakan oleh client dan dihubungkan ke server melalui LAN. Spesifikasi komputer client yang digunakan pada PT M G Holiday berupa notebook dengan prosesor Core 2 Duo dengan RAM 2 GB dan HardDisk 80 GB.
3.8.2 Software
Software merupakan aplikasi yang digunakan untuk menjalankan sistem operasional pada PT M G Holiday. Sistem operasi yang digunakan adalah M icrosoft Windows Server 2003 64bit pada server dan M icrosoft Windows XP Professional SP2 pada client, sedangkan software lainnya meliputi M icrosoft Office Professional 2007, SQL Server 2008, dan M icrosoft Visual Studio 2008.
3.9 Permasalahan yang Dihadapi
PT MG Holiday masih membutuhkan waktu yang cukup lama dalam menyediakan laporan untuk membantu pengambilan keputusan karena data yang harus dikumpulkan masih menggunakan cara manual dari setiap bagian yang berhubungan dengan laporan yang dibutuhkan.
Laporan yang dihasilkan belum dapat mengakomodasi kebutuhan informasi pihak eksekutif karena hanya menampilkan informasi dari satu dimensi saja. Untuk membandingkan informasi dari beberapa dimens i maka pihak eksekutif harus membandingkannya secara manual, sehingga pihak eksekutif tidak dapat mengambil keputusan secara tepat, cepat dan akurat.
Pada sistem yang sedang berjalan pada PT MG Holiday, laporan reservasi yang dihasilkan hanya bermuara pada jumlah reservasi yang dilakukan pada satuan waktu. Namun pada laporan tersebut tidak ditemukan informasi yang lebih terperinci seperti informasi detil mengenai hotel dan klien.
Pada laporan penjualan, laporan yang dihasilkan juga belum mempunyai informasi yang mengakomodasi kebutuhan eksekutif. Pada laporan penjualan, pihak eksekutif tidak bisa melihat jenis pembayaran yang dilakukan, padahal informasi ini diperlukan untuk melihat jenis pembayaran mana yang lebih sering dilakukan, sehingga pihak eksekutif dapat menentukan kebijakan-kebijakan dalam tipe pembayaran dengan lebih baik.
3.10 Alternatif Pemecahan Masalah
Untuk mengatasi masalah yang telah disebutkan di atas pada PT MG Holiday maka diusulkan untuk membuat dan merancang data warehouse atau sistem aplikasi berbasis data warehouse dengan menggunakan teknologi OLAP. Aplikasi data warehouse yang dibuat akan menyimpan data, meringkas data, melakukan transformasi data dari sumber data yang tersebar, memuat data historis, dan mengintegrasikannya ke dalam satu sistem database. Sehingga dengan adanya data warehouse maka akan membantu proses analisis dan pengambilan keputusan pihak eksekutif karena membantu dalam memmbuat laporan yang dapat dilihat dari beberapa dimensi dan dapat memilih data yang ingin ditampilkan dengan tingkat peringkasan yang sesuai dan jangka waktu yang diinginkan, misalnya per bulan, atau per tahun, dan juga dapat melihat laporan dalam bentuk grafik. Aplikasi yang dibuat diharapkan dapat menampilkan kebutuhan informasi yang diinginkan yaitu laporan reservasi dan penjualan lebih cepat daripada metode yang dilakukan pada perusahaan sekarang.
3.11 Matriks Kebutuhan Informasi
Tabel 3.25 M atriks Kebutuhan Informasi
Laporan Deskripsi Kebutuhan Kapan
Dibutuhkan
Yang M embutuhkan Reservasi Jumlah reservasi dan total nilai
reservasi (berdasarkan nilai beli dan nilai jual) berdasarkan periode (hari, bulan, triwulan, tahun), agensi (nama agensi, kota dan negara agensi, dan tipe pembayaran agensi), hotel (nama hotel, kota dan negara hotel, tipe pembayaran hotel, dan rating hotel), supplier (nama supplier) dan karyawan(nama karyawan).
Setiap hari Domestic Manager, International Manager, Product Manager, Marketing Manager, dan Direksi
Penjualan Jumlah penjualan dan total nilai penjualan, pembelian, dan markup berdasarkan periode (hari, bulan, triwulan, tahun), agensi (nama agensi, kota dan negara agensi, dan tipe pembayaran agensi), hotel (nama, kota dan negara, tipe pembayaran hotel, dan rating hotel), supplier (nama supplier) dan karyawan (nama karyawan).
Setiap hari Accounting Manager, Product Manager, Marketing Manager, dan Direksi
3.12 Arsitektur Data Warehouse
Dalam perancangan data warehouse di PT M G Holiday, arsitektur yang digunakan adalah data warehouse terpusat (centralized data warehouse). Data-data yang ada di dalam database operasional perusahaan diseleksi berdasarkan kebutuhan laporan perusahaan kemudian ditampung ke dalam satu tempat penyimpanan yang besar.
Alasan pemilihan data warehouse terpusat adalah untuk mengurangi redudans i data dan memudahkan pengawasan serta pemeliharaan data, selain itu juga karena pengembangan data warehouse terpusat lebih mudah dan lebih murah. Berikut adalah gambar arsitektur data warehouse yang digunakan :
Source Destination ETL
OLTP Data Warehouse Multi Dimensional OLAP
(SQL Server 2008) (SQL Server 2008) (SQL Server 2008 Analysis Service)
Gambar 3.3 Arsitektur data warehouse yang digunakan
Komponen-komponen yang digunakan untuk mendukung pembuatan data warehouse pada perusahaan adalah sebagai berikut :
1. Sumber data
Data yang diambil berasal dari data OLTP yang sudah ada sebelumnya pada PT MG Holiday. Data berasal dari tabel-tabel transaksi dalam database.
Custom ized Application Using Visual Basic 2008 Microsoft Excel
2. Transformasi data
Transformasi data dilakukan untuk memindahkan data ke dalam data warehouse. Transformasi data itu sendiri dilakukan dengan memakai sistem Data Transformation System yang sudah disediakan oleh Microsoft SQL Server 2008. 3. Data warehouse
Data yang sudah di transform ke dalam data warehouse diolah kembali. Agar dapat disusun menjadi laporan yang dibutuhkan oleh pihak eksekutif. Data itu sendiri bersifat historis dan lebih ringkas.
4. OLAP
OLAP memudahkan user untuk menganalisa data yaitu dengan menggunakan view yang kompleks dan multidimensional karena OLAP dapat dilihat dari berbagai dimensi.
5. Front End Tool
Komponen ini merupakan tampilan yang akan dipakai oleh user dalam mengakses data dan mempermudah user dalam membuat laporan. Front End Tool yang digunakan dalam data warehouse ini adalah aplikasi yang dibuat dengan menggunakan Microsoft Visual Basic 2008.
3.13 Nine-S tep Methodology
Dalam membuat data warehouse diperlukan beberapa tahap untuk membuat perancangan data warehouse yang baik. Tahap-tahap perancangan data warehouse yang digunakan pada perancangan ini adalah metodologi 9 tahap (nine-step methodology). Tahap-tahap yang dilakukan akan diuraikan sebagai berikut:
3.13.1 Pemilihan Proses (Choosing the process)
Proses pada PT M G Holiday yang digunakan untuk merancang data warehouse adalah sebagai berikut:
• Reservasi
Proses reservasi didefinisikan sebagai proses pemesanan kamar hotel kepada pihak hotel berdasarkan atas permintaan agen.
Dokumen yang ada meliputi: reservation dan agency voucher.
Data yang ada meliputi: hotel, supplier, reservation, organization, dan user. • Penjualan
Proses penjualan pada PT MG Holiday yang dimaksud adalah proses penjualan voucher hotel kepada agen berdasarkan atas reservasi yang telah dilakukan.
Dokumen yang ada meliputi: invoice dan voucher.
Data yang ada meliputi: hotel, invoice, organization, user.
3.13.2 Pemilihan Grain (Choosing the grain)
Grain merupakan data dari calon fakta yang dapat dianalisis. M emilih grain berarti menentukan apa yang sebenarnya direpresentasikan oleh record dalam tabel fakta.
Grain dari PT M G Holiday yang digunakan untuk merancang data warehouse adalah sebagai berikut:
• Reservasi
Grain untuk data reservasi dihitung per roomnight yang dipesan, data ini dapat dilihat berdasarkan periode, agensi, hotel, supplier, dan karyawan.
• Penjualan
Grain untuk data penjualan dihitung per roomnight yang telah dijual, data ini dapat dilihat berdasarkan periode, agensi, hotel, supplier, dan karyawan.
3.13.3 Identifikasi dan Penyesuaian Dimensi (Identifying and conforming the dimensions)
Setelah pemilihan grain maka yang perlu dilakukan selanjutnya adalah mengidentifikasi dimensi yang terkait dengan fakta. Dimensi yang terdapat pada proses ini adalah dimensi waktu, organization, hotel, supplier, dan user.
Tabel 3.26 Tabel Daftar Dimensi
Dimensi Keterangan
Waktu Dimensi waktu dapat dilihat berdasarkan tanggal, hari, bulan, triwulan, dan tahun.
Organization Dimensi organisasi dapat dilihat berdasarkan nama organisasi, tipe pembayaran, nama kota, dan nama negara.
Hotel Dimensi hotel dapat dilihat berdasarkan nama hotel, rating hotel, tipe pembayaran, nama kota, dan nama negara.
Supplier Dimensi supplier dapat dilihat berdasarkan nama supplier.
User Dimensi user dapat dilihat berdasarkan nama user.
3.13.4 Pemilihan Fakta (Choosing the facts)
Pada tahap ini dilakukan pemilihan fakta yang akan digunakan. M asing-masing fakta memiliki data yang dapat dihitung dan selanjutnya akan ditampilkan dalam bentuk laporan dan grafik. Berikut adalah fakta-fakta yang akan digunakan dalam data warehouse :
Tabel 3.27 Tabel Daftar Fakta
Fakta Keterangan Dimensi
Reservasi M eliputi quantity yang merupakan jumlah kamar yang dipesan dan sumnight yang merupakan jumlah hari pesanan.
Dimensi waktu,
organization, hotel, supplier, user , dan bedtype.
Penjualan M eliputi quantity yang merupakan jumlah kamar yang dibeli dan sumnight yang merupakan jumlah hari tinggal tamu.
Dimensi waktu,
organization, hotel, supplier, user , dan bedtype.
3.13.5 Menyimpan Pre-kalkulasi dalam Tabel Fakta (Storing pre-calculations in the fact table)
Untuk fakta Reservasi, agregasi-nya adalah:
- JumlahRoomNightReservation merupakan jumlah roomnight yang dipesan
- TotalJualReservation merupakan total jumlah penjualan yaitu JumlahRoomNightReservation dikalikan harga jual
- TotalBeliReservation merupakan total jumlah pembelian yaitu JumlahRoomNightReservation dikalikan harga beli
Sedangkan untuk fakta Penjualan, agregasi-nya adalah: - JumlahRoomNightJual merupakan jumlah roomnight yang terjual
- TotalJual merupakan total jumlah penjualan yaitu JumlahRoomNightJual dikalikan harga jual
- TotalBeli merupakan total jumlah pembelian yaitu JumlahRoomNightJual dikalikan harga beli
- TotalM arkup merupakan total keuntungan yang didapat yaitu TotalJual dikurangi TotalBeli
3.13.6 Melengkapi Tabel Dimensi (Rounding out the dimension tables)
M enambahkan sebanyak mungkin deskripsi teks pada dimensi. Deskripsi tersebut harus intuitif dan dapat dimengerti oleh user. Berikut deskripsi teks dari tabel dimensi yang ada:
Tabel 3.28 Tabel Rounding Out Dimension
Dimensi Field Deskripsi
DimensiWaktu - KdWaktu - Tanggal - Hari - Bulan - Triwulan - Tahun
Laporan dapat dilihat per tahun, per triwulan, per bulan, dan per hari.
DimensiOrganization - KdOrganization - OrganizationID - OrganizationName - PaymentTypeName - CityName - CountryName
Laporan dapat dilihat per nama agensi, per tipe pembayaran, per kota, dan per negara.
DimensiHotel - KdHotel - HotelID - HotelName - HotelRatingTitle
Laporan dapat dilihat per nama hotel, per rating hotel, per tipe pembayaran, per
- PaymentTypeName - CityName
- CountryName
kota, dan per negara.
DimensiSupplier - KdSupplier - SupplierID - SupplierName
Laporan dapat dilihat per nama supplier.
DimensiUser - KdUser
- UserID - FullName
Laporan dapat dilihat per nama karyawan.
Dimensi BedType - KdBedType
- BedTypeID - BedTypeName
Laporan dapat dilihat berdasarkan tipe kamar.
Berikut daftar dan penjelasan lebih lanjut dari dimensi tersebut: • DimensiWaktu
Tabel 3.29 DimensiWaktu
Atribut Tipe Data Size
KdWaktu Int 4
Hari Int 4 Bulan Int 4 Triwulan Int 4 Tahun Int 4 • DimensiOrganization Tabel 3.30 DimensiOrganization
Atribut Tipe Data Size
KdOrganization Int 4 OrganizationID Int 4 OrganizationName Varchar 50 PaymentTypeName Varchar 50 CityName Varchar 50 CountryName Varchar 50
• DimensiHotel
Tabel 3.31 DimensiHotel
Atribut Tipe Data Size
KdHotel Int 4 HotelID Int 4 HotelName Varchar 50 HotelRatingTitle Varchar 15 PaymentTypeName Varchar 50 CityName Varchar 50 CountryName Varchar 50 • DimensiSupplier Tabel 3.32 DimensiSupplier
Atribut Tipe Data Size
KdSupplier Int 4
SupplierID Int 4
SupplierName Varchar 50
• DimensiUser
Tabel 3.33 DimensiUser
Atribut Tipe Data Size
KdUser Int 4 UserID Int 4 UserName Varchar 50 • DimensiBedType Tabel 3.34 DimensiBedType
Atribut Tipe Data Size
KdBedType Int 4
BedTypeID Int 4
3.13.7 Memilih Durasi dari Database (Choosing the duration of the database)
Dalam tahap ini akan ditentukan durasi data yang diambil dan yang akan dipindahkan ke dalam tabel fakta. Berdasarkan hasil identifikasi pada PT MG Holiday, database tersebut mulai digunakan sejak tahun 2006 sampai saat ini, sehingga durasi database yang akan dimasukkan dalam data warehouse berusia 4 tahun.
3.13.8 Melacak Perubahan Dimensi Secara Perlahan (Tracking slowly changing dimensions)
Untuk menangani perubahan data pada tabel dimensi dalam perancangan data warehouse pada PT MG Holiday, akan digunakan teknik slowly changing dimension tipe 2 dimana jika terjadi perubahan data maka akan ditambahkan record baru. Hal ini dilakukan untuk menjaga data yang lama tetap ada agar dapat diketahui perubahan yang terjadi. Sehingga di beberapa tabel dimensi akan ditambahkan surrogate key. Teknik ini hanya digunakan pada DimensiOrganization, DimensiHotel, dan DimensiSupplier karena hanya ketiga dimensi tersebut yang memungkinkan adanya perubahan data.
3.13.9 Menentukan Prioritas dan Mode Query (Deciding the query priorities and the query modes)
Dalam tahap ini akan dibahas mengenai proses Extract, Transform, and Load (ETL), backup secara berkala, dan analisis kapasitas media penyimpanan.
a. Proses Extract, Transform, dan Load (ETL)
Proses ETL akan dilakukan setiap dua minggu sekali yang akan dilakukan oleh staff divisi IT di perusahaan pusat. Namun jika terjadi perubahan data maka akan dilakukan ETL saat terjadi perubahan. b. Proses Backup dan Recovery
Proses backup akan dilakukan dua minggu sekali oleh divisi IT setelah proses ETL berhasil dilakukan. Dengan adanya backup data, jika terjadi kerusakan data maka perusahaan masih memiliki data cadangan. Backup data disimpan di dalam CD eksternal maupun ke dalam harddisk eksternal.
Recovery data bertujuan untuk mengembalikan data ke dalam keadaan terakhir kali sebelum terjadi kerusakan. Sehingga bila ada masalah datanya bisa di-recover dari CD ataupun harddisk eksternal.
c. Analisis Kapasitas Media Penyimpanan
Untuk mengetahui banyaknya kapasitas media penyimpanan yang akan diperlukan, maka dilakukan analisis estimasi kapasitas media penyimpanan yang dibutuhkan. Waktu yang diambil adalah 5 tahun ke depan.
Rumus yang akan digunakan untuk perhitungan kebutuhan penyimpanan record dalam SQL Server 2008 adalah:
a. Num_Row = Jumlah Baris / Jumlah Record. b. Num_Col = Jumlah Kolom dalam tabel.
c. Fixed_Data_Size = Jumlah bytes yang dibutuhkan oleh semua kolom yang mempunyai tipe data dengan ukuran yang pasti.
d. Num_Variable_Cols = Jumlah kolom yang mempunyai tipe data dengan ukuran tidak pasti seperti varchar, nvarchar, varbinary.
e. M ax_Var_Size = Ukuran byte terbesar dari semua kolom yang mempunyai tipe data dengan ukuran tidak pasti.
f. Variable_Data_Size = Jumlah bytes yang dibutuhkan untuk semua kolom variabel = 2 + (Num_Variable_Cols x 2) + M ax_Var_Size. g. Null Bitmap = Bit status null kolom = 2 + ((Num_Col + 7) / 8). h. Row_Size = Fixed_Data_Size + Null_Bitmap + 4.
Nilai 4 merepresentasikan data row header. i. Rows_Per_Page = 8096 / (Row_Size+2). j. Num_of_Pages = Num_Row / Rows_Per_Page. k. Num_of_Bytes = 8192 * Num_of_Pages.
l. Num_of_Kbytes = 8192 / 1024 * Num_of_Pages = 8 * Num_of_Pages.
Analisis kapasitas media penyimpanan untuk data yang ada hingga saat ini:
1. FaktaPenjualan
Jumlah baris dalam 1 tahun sekitar 127944 baris Num_Rows = 127944 baris
Jumlah kolom (Num_Cols) = 9 kolom
Fixed_Data_Size = 4+4+4+4+4+9+9+9+9= 56 bytes Variable_Data_Size = 0
Null Bitmap = Bit status null kolom = 2 + ((Num_Cols + 7) / 8) = 2 + ((9+7)/8) = 4
Row_Size = Fixed_Data_Size + Null_Bitmap + 4 = 56 + 4 + 4 = 64 bytes Rows_Per_Page = 8096 / (Row_Size+2) = 8096 / (64+2) = 123 baris
Num_of_Pages = Num_Row / Rows_Per_Page = 127944 / 123 = 1040,195 pages
Ukuran dari sebuah tabel dalam 1 tahun
Dalam byte = 8192 * Num_of_Pages = 8192 * 1040.195 = 8521278,423 bytes
Dalam Kbyte = 8521278,423 / 1024 = 8321,56 Kbytes Dalam M byte = 8321,56 / 1024 = 8,12 M bytes
2. FaktaReservation
Jumlah baris dalam 1 tahun sekitar 251645 baris Num_Rows = 251645 baris
Jumlah kolom (Num_Cols) = 8 kolom
Fixed_Data_Size = 4+4+4+4+4+9+9+9= 47 bytes Variable_Data_Size = 0
Null Bitmap = Bit status null kolom = 2 + ((Num_Cols + 7) / 8)= 2 + ((8+7)/8) = 4
Row_Size = Fixed_Data_Size + Null_Bitmap + 4 = 47 + 4 + 4 = 55 bytes Rows_Per_Page = 8096 / (Row_Size+2) = 8096 / (55+2) = 142 baris
Num_of_Pages = Num_Row / Rows_Per_Page = 251645 / 142 = 1771,7 pages
Ukuran dari sebuah tabel dalam 1 tahun
Dalam byte = 8192 * Num_of_Pages = 8192 * 1771,7 = 14513766,4 bytes Dalam Kbyte = 14513766,4 / 1024 = 14173,6 Kbytes
Dalam M byte = 14173,6 / 1024 = 13,8 M bytes
3. DimensiWaktu
Jumlah baris dalam 1 tahun sekitar 429513 baris Num_Rows = 429513 baris
Jumlah kolom (Num_Cols) = 6 kolom
Fixed_Data_Size = 4 + 4 + 4 + 4 + 4 + 8 = 28 bytes Num_Variable_Cols = 0 kolom
M ax_Var_Size = 0 bytes
Variable_Data_Size = 2 + (Num_Variable_Cols * 2) + M ax_Var_Size = 2 + (0*2) + 0 = 2 bytes
Null Bitmap = Bit status null kolom = 2 + ((Num_Cols + 7) / 8) = 2 + ((6+7)/8) = 4
Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4 = 28 + 2 + 4 + 4 = 38 bytes
Rows_Per_Page = 8096 / (Row_Size+2) = 8096 / (38+2) = 202,4 baris Num_of_Pages = Num_Row / Rows_Per_Page = 429513 / 202,4 = 2122,09 pages
Ukuran dari sebuah tabel dalam 1 tahun
Dalam byte = 8192 * Num_of_Pages = 8192 * 2122,09 = 17384161,28 bytes Dalam Kbyte = 17384161,28 / 1024 = 16976,72 Kbytes
Dalam M byte = 16976,72 / 1024 = 16,57 M bytes
4. DimensiOrganization Num_Rows = 5514 baris
Jumlah kolom (Num_Cols) = 6 kolom Fixed_Data_Size = 4+4 = 8 bytes Num_Variable_Cols = 4 kolom M ax_Var_Size = 50 bytes
Variable_Data_Size = 2 + (Num_Variable_Cols * 2) + M ax_Var_Size = 2 + (4*2) + 50 = 60 bytes
Null Bitmap = Bit status null kolom = 2 + ((Num_Cols + 7) / 8) = 2 + ((6+7)/8) = 4
Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4 = 8 + 60 + 4 + 4 = 76 bytes
Rows_Per_Page = 8096 / (Row_Size+2) = 8096 / (76+2) = 103,79 baris Num_of_Pages = Num_Row / Rows_Per_Page = 5514 / 103,79 = 53,12 pages
Ukuran dari sebuah tabel
Dalam byte = 8192 * Num_of_Pages = 8192 * 53,12 = 435159 bytes Dalam Kbyte = 435159 / 1024 = 424,95 Kbytes
5. DimensiHotel
Num_Rows = 16150 baris
Jumlah kolom (Num_Cols) = 7 kolom Fixed_Data_Size = 4+4 = 8 bytes Num_Variable_Cols = 5 kolom M ax_Var_Size = 50 bytes
Variable_Data_Size = 2 + (Num_Variable_Cols * 2) + M ax_Var_Size = 2 + (5*2) + 50 = 62 bytes
Null Bitmap = Bit status null kolom = 2 + ((Num_Cols + 7) / 8) = 2 + ((7+7)/8) = 4
Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4 = 8 + 62 + 4 + 4 = 78 bytes
Rows_Per_Page = 8096 / (Row_Size+2) = 8096 / (78+2) = 101,2 baris Num_of_Pages = Num_Row / Rows_Per_Page = 16150 / 101,2 = 159,58 pages
Ukuran dari sebuah tabel
Dalam byte = 8192 * Num_of_Pages = 8192 * 159,58 = 1422176,96 bytes Dalam Kbyte = 1422176,96 / 1024 = 1388,84 Kbytes
Dalam M byte = 1388,84 / 1024 = 1,35 M bytes
6. DimensiSupplier Num_Rows = 14 baris
Jumlah kolom (Num_Cols) = 3 kolom Fixed_Data_Size = 4+4 = 8 bytes
Num_Variable_Cols = 1 kolom M ax_Var_Size = 50 bytes
Variable_Data_Size = 2 + (Num_Variable_Cols * 2) + M ax_Var_Size = 2 + (1*2) + 50 = 54 bytes
Null Bitmap = Bit status null kolom = 2 + ((Num_Cols + 7) / 8) = 2 + ((3+7)/8) = 4
Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4 = 8 + 54 + 4 + 4 = 70 bytes
Rows_Per_Page = 8096 / (Row_Size+2) = 8096 / (70+2) = 112,44 baris Num_of_Pages = Num_Row / Rows_Per_Page = 14 / 112,44 = 0,124 pages Ukuran dari sebuah tabel
Dalam byte = 8192 * Num_of_Pages = 8192 * 0,124 = 1015,808 bytes Dalam Kbyte = 1015,808 / 1024 = 0,992 Kbytes
Dalam M byte = 0,992 / 1024 = 0,00096 M bytes
5. DimensiUser
Num_Rows = 143 baris
Jumlah kolom (Num_Cols) = 3 kolom Fixed_Data_Size = 4+4 = 8 bytes Num_Variable_Cols = 1 kolom M ax_Var_Size = 50 bytes
Variable_Data_Size = 2 + (Num_Variable_Cols * 2) + M ax_Var_Size = 2 + (1*2) + 50 = 54 bytes
Null Bitmap = Bit status null kolom = 2 + ((Num_Cols + 7) / 8) = 2 + ((6+7)/8) = 4
Row_Size = Fixed_Data_Size + Variable_Data_Size + Null_Bitmap + 4 = 8 +54 + 4 + 4 = 70 bytes
Rows_Per_Page = 8096 / (Row_Size+2) = 8096 / (70+2) = 112,44 baris Num_of_Pages = Num_Row / Rows_Per_Page = 143 / 112,44 = 1,272 pages Ukuran dari sebuah tabel
Dalam byte = 8192 * Num_of_Pages = 8192 * 1,272 = 10418,499 bytes Dalam Kbyte = 10418,499 / 1024 = 10,174 Kbytes
Dalam M byte = 10,174 / 1024 = 0,0099 M bytes
Tabel 3.35 Tabel Analisis Kapasitas M edia Penyimpanan Tabel Fakta
Nama Tabel Jumlah Bytes
(Mbytes)
Nama Tabel 1 tahun 2 tahun 3 tahun 4 tahun 5 tahun FaktaPenjualan 8,12 16,24 24,36 32,48 40,6 FaktaPembelian 13,8 27,6 41,4 55,2 69
Total 21,92 43,84 65,76 87,68 109,6
Tabel 3.36 Tabel Analisis Kapasitas M edia Penyimpanan Tabel Dimensi
Nama Tabel Jumlah Bytes
(Mbytes) DimensiOrganization 0,41 DimensiHotel 1,35 DimensiSupplier 0,00096 DimensiUser 0,0099 DimensiWaktu 1 tahun = 16,57 2 tahun = 33 3 tahun = 49,5 4 tahun = 66 5 tahun = 82,5 Total 18,3409 34,7709 51,2709 67,7709 84,2709
d. Security
Security merupakan komponen yang penting dalam setiap perusahaan. Dengan security yang baik, data yang dimiliki oleh perusahaan pun lebih aman. Sistem security sendiri dapat dibagi menjadi 2, antara lain sebagai berikut:
1. Authentication
Sistem yang berfungsi sebagai authentication dalam aplikasi ini adalah login form yang mengharuskan pengguna memasukkan data username dan password yang benar sebelum dapat mengakses data. Selain itu, proses akses OLAP yang dilakukan menggunakan autentifikasi windows.
2. Authorization
Dalam aplikasi ini, hanya pengguna yang login sebagai admin yang dapat mengakses halaman manage user yang berfungsi untuk menambah, mengedit, atau menghapus daftar pengguna.
3.14 Skema Bintang (Star Schema)
Pada perancangan ini, bentuk skema yang dipilih adalah skema bintang, karena skema ini merupakan skema yang lebih mudah dipahami dan digunakan oleh pengguna daripada skema yang lain. Bentuknya yang tidak terlalu rumit, memudahkan dalam hal query. Berikut ini adalah skema bintang untuk tiap fakta yang sudah ditentukan:
a. Skema Bintang Fakta Penjualan
Gambar 3.4 Skema Bintang Fakta Penjualan b. Skema Bintang Fakta Reservasi
3.15 Metadata OLAP
Metadata adalah data tentang data. Pada umumnya metadata berisi data tentang struktur tabel data warehouse, atributnya, sumber datanya, dan penjelasan dari datanya. Berikut ini adalah metadata dari data warehouse PT M G Holiday:
DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: DimensiWaktu
Deskripsi Tabel: Tabel dimensi waktu
Tabel 3.37 Metadata DimensiWaktu
Field Tipe Ukuran Keterangan Sumber Data Transformasi
Field Tipe Ukuran Tabel
KdWaktu Int 4 Surrogate
key
Create (autonumber)
Tanggal Date time
8 Tanggal CreatedTime Date
time
8 Reservation.Reservations dan Invoice.Invoices
Copy
Hari Int 4 Hari CreatedTime Int 4 Reservation.Reservations
dan Invoice.Invoices
Bulan Int 4 Bulan CreatedTime Int 4 Reservation.Reservations
dan Invoice.Invoices
Create
Triwulan Int 4 Triwulan CreatedTime Int 4 Reservation.Reservations
dan Invoice.Invoices
Create
Tahun Int 4 Tahun CreatedTime Int 4 Reservation.Reservations
dan Invoice.Invoices
Create
DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: DimensiOrganization Deskripsi Tabel: Tabel dimensi agensi
Tabel 3.38 Metadata DimensiOrganization
Field Tipe Ukuran Keterangan Sumber Data Transformasi
Field Tipe Ukuran Tabel
KdOrganization Int 4 Surrogate key
Create (autonumber)
OrganizationID Int 4 Kode agensi OrganizationID Int 4 Account.Organizations Copy
OrganizationNa me Varc har 50 Nama agensi OrganizationNa me Varc har 50 Account.Organizations Copy PaymentTypeNa me Varc har 50 Jenis payment PaymentTypeNa me Varc har 50 Account.Organizations dan Finance.PaymentTypes Copy
har har dan World.Cities
CountryName Varc har 50 Nama negara CountryName Varc har 50 Account.Organizations dan World.Countries Copy DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: DimensiHotel
Deskripsi Tabel: Tabel dimensi hotel
Tabel 3.39 Metadata DimensiHotel
Field Tipe Ukuran Keterangan Sumber Data Transformasi
Field Tipe Ukuran Tabel
key (autonumber)
HotelID Int 4 Kode hotel HotelID Int 4 Hotel.Hotels Copy
HotelName Varc har
50 Nama hotel HotelName Varc
har 50 Hotel.Hotels Copy HotelRatingTitle Varc har 15 Kategori rating hotel HotelRatingTitle Varc har 15 Hotel.Hotels dan Hotel.Ratings PaymentTypeNa me Varc har 50 Jenis payment PaymentTypeNa me Varc har 50 Hotel.Hotels dan Finance.PaymentTypes Copy CityName Varc har
50 Nama kota CityName Varc
har 50 Hotel.Hotels dan World.Cities Copy CountryName Varc har 50 Nama negara CountryName Varc har 50 Hotel.Hotels dan World.Countries Copy
DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: DimensiSupplier
Deskripsi Tabel: Tabel dimensi supplier
Tabel 3.40 Metadata DimensiSupplier
Field Tipe Ukuran Keterang
an
Sumber Data Transformasi
Field Tipe Ukuran Tabel
KdSupplier Int 4 Surrogat e key
Create (autonumber)
SupplierID Int 4 Kode supplier
SupplierID Int 4 WebService.Suppliers Copy
SupplierName Varchar 50 Nama
supplier
DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: DimensiUser
Deskripsi Tabel: Tabel dimensi user (karyawan)
Tabel 3.41 Metadata DimensiUser
Field Tipe Ukuran Keterang
an
Sumber Data Transformasi
Field Tipe Ukuran Tabel
KdUser Int 4 Surrogat e key
Create (autonumber)
UserID Int 4 Kode user
UserID Int 4 Account.Users Copy
FullName Varchar 50 Nama
user
DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: DimensiBedType
Deskripsi Tabel: Tabel dimensi BedType
Tabel 3.42 Metadata DimensiBedType
Field Tipe Ukuran Keterang
an
Sumber Data Transformasi
Field Tipe Ukuran Tabel
KdBedType Int 4 Surrogat e key
Create (autonumber) BedTypeID Int 4 Kode
tipe tempat tidur
BedTypeID Int 4 Hotel. BedTypes Copy
tipe tempat tidur
DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: FaktaJual
Deskripsi Tabel: Tabel fakta penjualan
Tabel 3.43 Metadata FaktaJual Field Tipe Uku
ran
Keterangan Sumber Data Transformasi
Field Tipe Uku ran
Tabel
KdWaktu Int 4 Foreign key KdWaktu Int 4 DimensiWaktu Copy KdWaktu di mana
DimensiWaktu.Tanggal=Invoice.I nvoices.CreatedTime
KdOrgani zation
Int 4 Foreign key KdOrganiza tion
Int 4 DimensiOrganizatio n
Copy KdOrganization di mana DimensiOrganization.KdOrganiza tion=Reservation.Reservations.Or
Reservation.Reservations.Reserva tionID=Invoice.Invoices.Reservati onID
KdHotel Int 4 Foreign key KdHotel Int 4 DimensiHotel Copy KdHotel di mana
DimensiHotel.KdHotel=Reservati on.Hotels.HotelID dan dan Reservation.Hotels.ReservationID =Reservation.Reservations.Reserv ationID dan Reservation.Reservations.Reserva tionID=Invoice.Invoices.Reservati onID
KdUser Int 4 Foreign key KdUser Int 4 DimensiUser Copy KdUser di mana
DimensiUser.KdUser=Invoice.In voices.CreatedBy
KdSupplie r
Int 4 Foreign key KdSupplier Int 4 DimensiSupplier Copy KdSupplier di mana
DimensiSupplier.KdSupplier=Res ervation.HotelRoomRates.Supplie rID dan Reservation.HotelRoomRates.Res ervationHotelRoomID=Reservatio n.HotelRooms.ReservationHotelR oomID dan Reservation.HotelRooms.Reservat ionHotelID=Reservation.Hotels.R eservationHotelID dan Reservation.Hotels.ReservationID =Reservation.Reservations.Reserv ationID dan Reservation.Reservations.Reserva
tionID=Invoice.Invoices.Reservati onID
KdBedTyp e
Int 4 Foreign key KdBedType Int 4 DimensiBedType Copy KdBedType di mana
DimensiBedType.KdBedType=Re servation.HotelRooms.BedTypeID dan Reservation.HotelRooms.Reservat ionHotelID=Reservation.Hotels.R eservationHotelID dan Reservation.Hotels.ReservationID =Reservation.Reservations.Reserv ationID dan Reservation.Reservations.Reserva tionID=Invoice.Invoices.Reservati onID
Quantity Num eric 9 Jumlah quantity kamar Quantity Num eric 9 Invoice.Lines Calculate sum(Invoice.Lines.Quantity) NettRate Num eric 9 Jumlah harga beli kamar NettRate Num eric 9 Invoice.HotelRates Calculate sum(Invoice.HotelRates.NettRat e) SellRate Num eric 9 Jumlah harga jual kamar SellRate Num eric 9 Invoice.HotelRates Calculate sum(Invoice.HotelRates.SellRate ) SumNight Num eric 9 Jumlah hari sewa kamar SellRate Num eric 9 Invoice.HotelRates Calculate count(Invoice.HotelRates.SellRa te) JumlahRo omNightJ ual Num eric 9 Jumlah quantity penjualan Quantity dan SellRate Num eric 9 Invoice.Lines dan Invoice.HotelRates Calculate sum(Invoice.Lines.Quantity*coun t(Invoice.HotelRates.SellRate))
dalam satuan room night TotalJual Num eric 9 Total nilai penjualan Quantity dan SellRate Num eric 9 Invoice.Lines dan Invoice.HotelRates Calculate sum(Invoice.Lines.Quantity*sum( Invoice.HotelRates.Sellrate)) TotalBeli Num eric 9 Total nilai pembelian Quantity dan NettRate Num eric 9 Invoice.Lines dan Invoice.HotelRates Calculate sum(Invoice.Lines.Quantity*sum( Invoice.HotelRates. NettRate)) TotalM ark up Num eric 9 Total nilai keuntungan Quantity, SellRate, NettRate, dan AgencyCo mmission Num eric 9 Invoice.Lines dan Invoice.HotelRates Calculate sum(Invoice.Lines.Quantity*sum( Invoice.HotelRates.SellRate-Invoice.HotelRates. NettRate-Invoice.HotelRates.AgencyComm ission))
DBM S: SQL Server 2008 Nama Database: M G_OLAP Nama Tabel: FaktaReservation
Deskripsi Tabel: Tabel fakta reservasi
Tabel 3.44 Metadata FaktaReservation Field Tipe Uku
ran
Keterangan Sumber Data Transformasi
Field Tipe Uku ran
Tabel
KdWaktu Int 4 Foreign key KdWaktu Int 4 DimensiWaktu Copy KdWaktu di mana
DimensiWaktu.Tanggal=Reservat ion.Reservations.CreatedTime
KdOrgani zation
Int 4 Foreign key KdOrganiza tion
Int 4 DimensiOrganizatio n
Copy KdOrganization di mana DimensiOrganization.KdOrganiza tion=Reservation.Reservations.Or
ganizationID
KdHotel Int 4 Foreign key KdHotel Int 4 DimensiHotel Copy KdHotel di mana
DimensiHotel.KdHotel=Reservati
on.Hotels.HotelID dan Reservation.Hotels.ReservationID
=Reservation.Reservations.Reserv ationID
KdUser Int 4 Foreign key KdUser Int 4 DimensiUser Copy KdUser di mana
DimensiUser.KdUser=Reservatio n.Reservations.OwnerUserID
KdSupplie r
Int 4 Foreign key KdSupplier Int 4 DimensiSupplier Copy KdSupplier di mana
DimensiSupplier.KdSupplier=Res ervation.HotelRoomRates.Supplie
Reservation.HotelRoomRates.Res ervationHotelRoomID=Reservatio n.HotelRooms.ReservationHotelR oomID dan Reservation.HotelRooms.Reservat ionHotelID=Reservation.Hotels.R eservationHotelID dan Reservation.Hotels.ReservationID =Reservation.Reservations.Reserv ationID KdBedTyp e
Int 4 Foreign key KdBedType Int 4 DimensiBedType Copy KdBedType di mana DimensiBedType.KdBedType=Re servation.HotelRooms.BedTypeID dan