DAFTAR ISTILAH Istilah
Pengertian
Baseline testing
Tipe pengujian untuk mengidentifikasi permasalahan performansi lebih awal.
Concurrent user
Jumlah user yang mengakses website dalam waktu yang bersamaan.
Load pattern
Pola pengujian yang menggambarkan simulasi user yang digunakan selama melakukan pengujian
Load testing
Tipe pengujian untuk mengetahui performansi sistem ketika berada pada kondisi normal dan kondisi puncak.
Metrik
Satuan nilai yang diperoleh dari pengujian yang digunakan sebagai bahan analisa performansi.
Page time
Rentang waktu tunggu dimana client mengirimkan request page ke server hingga server selesai melakukan response dari request page tersebut.
Response time
Rentang waktu tunggu dimana client mengirimkan request ke server hingga server selesai melakukan response dari request tersebut.
Skenario
Gambaran aktivitas yang dilakukan user dalam menggunakan sistem.
Throughput
Jumlah request user yang di proses server dalam satuan detik.
Virtual user (vu)
Sejumlah user yang digunakan mensimulasikan pengaksesan sistem bersamaan.
Warm-up
Rentang waktu antara awal test dan ketika data sampel dieksekusi.
Workload distribution
Simulasi untuk mengidentifikasi user serta proses yang akan dilakukan user.
untuk secara
xiv
1
PENDAHULUAN
1.1 Latar Belakang Menurut Ahlawat dan Tyagi, sebagai aplikasi website, performansi sistem merupakan critical issue [6]. Hal ini disebabkan karena pengguna website tidak mau menunggu lama untuk sebuah mendapatkan response server terhadap request yang diberikan pengguna. Permasalahan performansi tertuju pada sebuah situasi dimana sistem berada pada kondisi unexpectedly high response time atau low throughput. Oleh sebab itu, dibutuhkan proses pengujian sistem dimana hal tersebut dapat menjamin mutu perangkat lunak untuk mengontrol kualitas produk sebelum dilakukan peluncuran produk ke masyarakat. Dengan dilakukannya pengujian performansi sistem, penguji dapat mensimulasikan kondisi load untuk mengidentifikasi masalah performansi serta optimasi performansi sistem sehingga sistem dapat berjalan dengan optimal. Pada penelitian ini, penulis akan melakukan penelitian mengenai performansi sistem pada website MeritYuk. Website MeritYuk merupakan sebuah portal informasi mengenai pernikahan berbasis website. Sebagai website yang akan melakukan ekspansi ke kota-kota besar di Indonesia, sistem perlu mengantisipasi terjadinya lonjakan pengunjung website. Oleh karena itu, perlu dilakukan penjaminan mutu perangkat lunak, salah satunya adalah pengujian performansi sistem. Pengujian performansi sistem dilakukan dalam 5 tahapan, yaitu tahap project assessment, tahap planning, tahap scripting, tahap execution, dan tahap analisa pengujian serta laporan. Dalam melakukan pengujian performansi sistem, terdapat 5 (lima) tipe pengujian, yaitu baseline test, load test, stress test, soak test, dan volume test. Baseline test merupakan tahap pembangunan baseline performance. Load test merupakan tahap melakukan analisis load pada kondisi tertentu. Stress test merupakan tahap menentukan breakpoint pada sistem. Soak test merupakan test yang dilakukan dalam jangka waktu yang panjang. Sedangkan volume test merupakan test yang dilakukan untuk mengukur high data volumes atau throughput. Pengujian ini menggunakan 2 (dua) tipe testing, yaitu tipe baseline test dan tipe load test. Pemilihan dua tipe pengujian tersebut dilakukan berdasarkan penelitan Du Plessis [13], dimana baseline testing dapat mengidentifikasi permasalahan performansi lebih awal. Sedangkan load test dilakukan untuk memberikan gambaran performansi ketika sistem berada pada kondisi tertentu. Pada pengujian load test akan dilakukan dalam 2 (dua) kondisi pengujian, yaitu pada kondisi normal dan kondisi puncak. Pengujian ini menggunakan data yang di peroleh dari pihak MeritYuk. Beberapa data yang di dapat akan di olah menjadi baseline goal. Pengujian baseline test dan load test akan menghasilkan 5 (lima) metrik, yaitu avg. concurrent user, avg. page time, avg. response time, avg. throughput (page/sec), dan persentase error test.
2
1.2 Perumusan Masalah Adapun rumusan masalah yang ada pada penelitian ini adalah sebagai berikut: 1. Bagaimana nilai performansi yang di dapat dari pengujian baseline test dan load test? 2. Bagaimana perbandingan nilai baseline goal dengan nilai performansi yang di dapat dari pengujian baseline test dan load test? 3. Apakah baseline test dapat digunakan dalam memperkirakan skenario yang berpotensi memiliki performansi buruk?
1.3 Batasan Masalah Batasan masalah pada penelitian ini adalah sebagai berikut: 1. Website yang di uji adalah website MeritYuk, dimana penulis telah melakukan kerja sama dengan pemilik website untuk mengumpulkan data dan melakukan pengujian website. 2. Penulis menggunakan fungsionalitas yang ada pada website sehingga dapat diasumsikan seluruh fungsionalitas website berjalan dengan baik. 3. Penulis melakukan pengujian dengan tipe baseline testing dan load testing. 4. Penelitian performance testing akan menghasilkan 6 (enam) metrik, yaitu avg. concurrent user, avg. page time, avg. response time, avg. throughput (page/sec), dan persentase error test. 5. Pengujian baseline test berfokus pada perkiraan skenario yang berpotensi memiliki performansi buruk. 6. Pengujian load testing berfokus pada response time dan throughput dalam kondisi normal dan kondisi puncak.
1.4 Tujuan Berdasarkan perumusan masalah, maka tujuan yang ingin di capai dari penelitian ini adalah: 1. Melakukan penelitian performance testing pada website MeritYuk dengan menggunakan baseline test dan load test. 2. Melakukan analisa hasil pengujian testing dengan tipe pengujian baseline test dan load test. 3. Melakukan analisa hasil baseline goal dengan hasil pengujian baseline test dan load test. 4. Mengetahui bahwa baseline test dapat digunakan untuk memperkirakan skenario yang berpotensi memiliki performansi buruk.
1.5 Metodologi Penyelesaian Masalah Metodologi penyelesaian masalah terbagi dalam beberapa tahapan, yaitu: 1. Melakukan studi literatur terhadap: a. Software Quality Assurance, Software Testing, Software Performance Testing, Baseline testing, dan Load testing. b. Performance requirement dan performance goal. c. Metrik Software Performance Testing. 2. Mencari tools yang sesuai untuk melakukan pengujian performansi website menggunakan baseline testing dan load testing.
3
3. Melakukan interview terhadap pihak pemilik website untuk mendapatkan performance requirement dan performance goal. 4. Membangun test plan dan test case yang akan diuji. 5. Melakukan eksekusi pengujian menggunakan baseline testing dan load testing. 6. Melakukan analisa terhadap hasil pengujian baseline testing dan load testing. 7. Pembuatan laporan.
1.6 Sistematika Penulisan Adapun sistematika penulisan tugas akhir ini adalah sebagai berikut: 1. BAB 1 Pendahuluan Pada bab 1 ini menerangkan isi dan rencana pengerjaan tugas akhir secara keseluruhan, meliputi latar belakang, perumusan masalah, batasan masalah, tujuan, dan metode penyebab masalah yang diterapkan. 2. BAB 2 Landasan Teori Bab ini menjelaskan dasar-dasar teori yang berkaitan dengan baseline testing dan load testing. 3. BAB 3 Perancangan dan Implementasi Menerangkan metodologi riset serta tahapan yang dilakukan saat melakukan pendekatan metodologi yang dipilih. 4. BAB 4 Pengujian dan Analisis Pada bab ini akan dibahas pengujian akan metodologi yang dilakukan serta analisis hasil pengujian. 5. BAB 5 Simpulan dan Saran Bab ini berisi simpulan dan saran yang didapatkan dari hasil pengujian sistem.
4
2 TINJAUAN PUSTAKA 2.1 Software Quality Assurance Menurut Galin [4], Software Quality Assurance (SQA) merupakan sebuah kumpulan dari perencanaan yang sistematik untuk memberikan kepercayaan terhadap proses pengembangan software ataupun proses perbaikan pada sistem untuk membangun kebutuhan fungsional teknis yang sejalan dengan kebutuhan manajerial sehingga penjadwalan dan operasi dapat berjalan sesuai dengan anggaran. Berdasarkan definisi di atas, terlihat bahwa software quality assurance menjadi cara untuk mendukung serta melindungi proses pengembangan software agar berjalan dengan baik. Model McCall [4] merupakan salah satu model yang digunakan untuk mengklasifikasikan kebutuhan suatu software. McCall mengklasifikasikan kebutuhan ke dalam 11 faktor kualitas software yang dibagi ke dalam tiga kelompok, yaitu: 1. Faktor operasi produk, yang terdiri atas faktor correctness, reliability, efficiency, integrity, dan usability. 2. Faktor transisi produk, yang terdiri atas faktor portability, reusability, dan interoperability. 3. Faktor revisi produk, yang terdiri atas faktor maintability, flexibility, dan testability. Pada penelitian ini, penulis mengambil faktor revisi produk, yaitu testability, dimana penulis melakukan pengujian terhadap sebuah sistem untuk mengetahui apakah sistem telah sesuai dengan kebutuhan yang telah ditetapkan pemilik sistem.
2.2 Software Testing Menurut IEEE Std 610.12 [14] terdapat dua definisi untuk menjelaskan apa itu testing: “(1) The process of operating system or component under specified conditions, observing or recording the result, and making an evaluation of some aspect of the system or component. (2) The process of analyzing a software item to detect the differences between existing and requirement condition (that is, bugs) and to evaluate the features of the software item.” Dari definisi testing diatas, Galin [4] menjelaskan bahwa software test merupakan sebuah proses formal yang dilakukan oleh spesialis tim testing dimana software unit, beberapa software unit yang terintegrasi ataupun software secara keseluruhan diperiksa oleh program yang di jalankan dengan computer. Seluruh test yang dilakukan akan uji berdasaran approved test procedures dalam approved test case. Adapun tujuan dilakukannya kegiatan software testing, diantaranya adalah untuk mengidentifikasi dan mengetahui seberapa banyak error yang dapat terjadi pada sebuah software untuk mendapatkan kualitas software yang layak [4]. Software testing memiliki dua teknik pengujian, yaitu pengujian black box dan pengujian white box [4]. Berikut ini adalah penjelasan mengenai teknik pengujian:
5
1. Pengujian black box. Pengujian ini dilakukan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang dirancang. Fokus dari pengujian ini adalah dilihat berdasarkan keluaran yang dihasilkan dari kondisi masukan yang diberikan tanpa melihat bagaimana proses untuk mendapatkan keluaran tersebut. 2. Pengujian white box. Pengujian white box digunakan untuk mengetahui bagaimana cara kerja sistem secara intenal. Hal ini dilakukan untuk menjamin operasioperasi internal sesuai dengan spesifikasi yang telah ditetapkan dengan menggunakan struktur kendali dari prosedur yang dirancang. Pengujian performance testing masuk pada kategori teknik pengujian black box. Hal ini disebabkan dalam pengujian performance testing, pengujian hanya menguji performansi berdasarkan fungsi-fungsi website.
2.3 Software Performance Test Performance testing merupakan sebuah proses pengumpulan data dan analisis data yang digunakan untuk memprediksi bagaimana sistem bekerja pada saat kondisi load tertentu [1]. Du Plessis [13] mengutarakan bahwa sebuah proyek performance testing dianggap berhasil bila meliputi seluruh atau hampir seluruh poin berikut: 1. Successful tests. Kegiatan testing dapat dikatakan berhasil bila seluruh kebutuhan yang diuji tidak terdapat error. Namun, bila testing gagal karena permasalahan terkait performansi ataupun load pun masih dianggap berhasil karena permasalah dapat teridentifikasi. 2. Problems identify early. Dengan adanya performance testing dapat mengetahui permasalah lebih cepat sebelum permasalah tersebut sulit untuk di identifikasi dan sulit untuk diperbaiki. 3. Improvement in system performance. Salah satu tujuan utama dilakukannya testing adalah meningkatkan performansi sistem dimana dapat mempengaruhi kinerja sistem secara keseluruhan. 4. Non-performance problems identified. Saat dilakukan functional testing, terkadang ada kerusakan yang tidak mudah dideteksi. 5. Visible deliverables. Dengan adanya penyampaian secara fisik akan mempermudah dalam mengkomunikasikan keberhasilan testing.
6
2.4 Tipe Software Performance Test Software performance testing memiliki beberapa tipe testing menurut Du Plessis [13], diantaranya: 1. Baseline Testing. Baseline testing merupakan tahap pembangunan baseline performance. 2. Load Testing. Tujuan dilakukannya load testing adalah untuk melakukan verifikasi tingkah laku sebuah sistem dalam kondisi normal ataupun kondisi load peak. 3. Stress Testing. Stress testing merupakan tipe testing yang dilakukan untuk menentukan breakpoint dari sistem. Tipe ini dilakukan ketika akar permasalahan performansi testing telah diselesaikan. Hasil dari stress test dapat digunakan untuk melakukan capacity planning dan memberikan gambaran kepada administrator bagaimana system breaks and recovers. 4. Soak Testing Soak test merupakan tipe testing dimana load test dilakukan pada jangka waktu yang lama. 5. Volume Testing Volume test berkaitan dengan ukuran database dan file size. Pada tugas akhir ini, tipe testing yang digunakan adalah baseline testing dan load testing. Baseline testing dipilih karena baseline testing merupakan landasan awal dalam melakukan performance testing. Sedangkan load testing dipilih karena dapat mengukur kualitas aplikasi dalam hal performansi berdasarkan actual customer behavior [3]. 2.4.1.1 Baseline test Menurut Du Plessis [13], tahap baseline test merupakan tahap terpenting dari metodologi pengujian performansi. Bila baseline test dilakukan dengan benar, maka 85% permasalahan performansi dapat teridentifikasi dan terselesaikan ketika baseline test selesai dilakukan. Pada pengujian baseline test, setiap satu script akan dieksekusi dengan menggunakan jumlah user yang sedikit, yaitu sekitar 1 user, 2 user, 5 user untuk mengetahui nilai dasar dari response time. Dalam melakukan persiapan dan eksekusi pengujian, banyak hal yang harus dilakukan. Banyak waktu yang dihabiskan dalam mempersiapkan eksekusi load test. Hal yang dilakukan dalam mempersiapkan load test diantaranya adalah mempersiapkan data pengujian, scenario planning dan konfigurasi. Persiapan baseline test tidak selama persiapan untuk load test. Dalam melakukan baseline test, test data yang digunakan tidak banyak. Selain itu, hasil yang di dapat mudah untuk di pahami serta mudah untuk di buat laporan hasil pengujian. Bila terdapat permasalahan performansi selama baseline test, maka permasalahan tersebut dapat diidentifikasi dengan mudah.
7
2.4.1.2 Load test Pengujian dengan menggunakan tipe load test dapat membantu untuk mengidentifikasi kapasitas maksimum dari suatu aplikasi. Pendekatan yang biasa dilakukan dalam melakukan load test pada website adalah sebagai berikut: 1. Mengidentifikasi performance-critical scenario. 2. Mengidentifikasi distibusi workload. 3. Mengidentifikasi metrik yang akan digunakan dalam melakukan pengujian. 4. Membuat gambaran test untuk mensimulasikan load test. 5. Mengimplementasikan gambaran test yang telah dibangun dengan menggunakan tools yang digunakan dan hasil yang diperoleh digambarkan ke dalam metrik. 6. Melakukan analisa data metrik yang di dapat dari pengujian. Dalam memilih tipe test yang akan digunakan dalam menguji performansi test, salah satu alasan dasar memilih load test adalah karena tipe ini dapat memberikan informasi mengenai web application’s behavior selama kondisi normal dan kondisi puncak. Hasil pengujian yang di dapat dari load test selanjutnya akan dibandingkan dengan hasil pengujian baseline test untuk mengetahui hasil performansi website yang di dapat.
2.5 Istilah dalam Software Performance Test Pada performance testing, terdapat beberapa istilah yang sering dipakai, diantanya: 1. Virtual user (vu) Virtual user atau vu merupakan sejumlah user yang digunakan untuk mensimulasikan pengaksesan sistem yang di test secara bersamaan [19]. 2. Warm up Warm up merupakan rentang waktu antara awal test dan ketika data sample dieksekusi [20]. Tujuan dilakukannya warm up agar request yang dikirimkan user di simpan dalam cache memory server. Bila suatu saat request yang sama dikirimkan ke server, server akan memanggil request yang ada pada cache memory dan mengirimkan reply sehingga waktu reply lebih cepat. 3. Load pattern Load pattern merupakan pola pengujian yang menggambarkan bagaimana mensimulasikan user yang digunakan selama dilakukannya pengujian. Terdapat 2 tipe load pattern, yaitu: a. Constant Tipe constant digunakan untuk mensimulasikan jumlah user dimana selama pengujian dimulai hingga pengujian berakhir jumlah user tetap sama. b. Step Tipe step digunakan untuk mensimulasikan jumlah user dimana terjadinya penambahan user dalam rentang wantu tertentu hingga mencapai maksimum user.
8
4. Workload distribution Workload distribution merupakan sebuah cara untuk mensimulasikan keadaan dalam sebuah kejadian yang sebenarnya.
2.6 Indikator Performance Test Dalam melakukan pengujian performansi, terdapat beberapa indikator yang digunakan dalam melakukan pengujian performansi, yaitu: 1. Response Time Response time merupakan sebuah rentang waktu tunggu dimana client mengirimkan request ke server hingga server selesai melakukan response dari request tersebut [1]. Rentang waktu tunggu dibagi dalam dua tipe, yaitu network latency dan application latency. Network latency merujuk pada waktu tunggu antara data dari satu server ke server lainnya. Sedangkan application latency merujuk pada seberapa lama data di proses oleh server.
Gambar 2-1 Proses Web Request
Dari gambar diatas, yang reponse time terlihat pada jumlah waktu tunggu NI hingga N4 ditambah A1 hingga A4. Network latency berada pada N2 dan N3, sedangkan application latency berada pada proses A1, A2, dan A3. Dalam Visual Studio, terdapat dua buat tipe response time, yaitu response time terhadap page dan response time terhadap request. Pada Visual Studio, istilah page response time di sebut page time. Sedangkan istilah response time merepresentasikan response time terhadap request. Pada pengujian ini akan ditampilkan kedua tipe response time tersebut, yaitu page time dan response time. 2. Concurrent User [8] Pada penelitian ini, concurrent user mengacu pada jumlah user yang mengakses website dalam waktu yang bersamaan. Rata-rata conccurency user dapat dirumuskan sebagai berikut:
(1) (2)
9
Dari rumus di atas, C adalah rata-rata concurrent user, n adalah jumlah session, L adalah waktu akses website, T adalah testing time, dan Cp adalah jumlah maksimum concurrent user. 3. Throughput [8] Throughput merupakan jumlah request user yang di proses server dalam satuan detik. Throughput biasanya ditetapkan dengan hits per second atau page per second. (3) Dari rumus di atas, F adalah throughput, Nvu adalah jumlah virtual user, R adalah request atau page yang dikirimkan user, dan T adalah durasi pengujian. Pada pengujian ini, satuan throughput yang digunakan adalah page per second. 4. Resource Utilization [8] Resource utilization digunakan untuk mendeskripsikan performansi web server seperti processor time, memory available megabyte, physical disk time, dan lainnya. Dalam penelitian ini, metrik resource utilization tidak digunakan karena permasalahan policy.
2.7 Metodologi Performance Test Menurut Du Plessis [13], dalam melakukan performance testing terdapat 6 tahapan, yaitu tahapan project assessment, planning, scripting, test execution, results analysis, dan reporting. Berikut ini adalah penjelasan tahapan performance test: 2.7.1 Tahap Project Assessment Project assessment merupakan tahap pencarian informasi pengenai sistem yang akan di test. Informasi yang perlu diperoleh berupa analisis kebutuhan pengguna, kebutuhan tools yang akan digunakan, kebutuhan waktu untuk mendapatkan hasil yang bermanfaat. 2.7.2 Tahap Planning Pada tahap ini dilakukan pengolahan informasi yang di dapat dari tahap sebelumnya dimana informasi yang diperoleh akan digunakan sebagai planning dari performance testing. Informasi yang diperoleh akan menjadi acuan dari tahap-tahap selanjutnya. Berikut adalah hal-hal yang dibutuhkan dalam tahap planning, yaitu: 1. Tujuan serta ruang lingkup dari testing. 2. Performance requirement dan performance goal, 3. Jenis pengujian yang akan dilakukan. 4. Tools yang akan digunakan. 5. Test case dan skenario. 6. Workload distribution.
10
2.7.3 Tahap Scripting Tahap ini menjadi tahap awal dilakukannya testing. Pada tahap ini, test scenario yang telah dibangun pada tahap selanjutnya di ubah menjadi test script yang dijalankan oleh testing tools. 2.7.4 Tahap Execution Tahap ini merupakan tahap dimana seluruh persiapan yang telah dilakukan pada tahap sebelumnya di eksekusi. Terdapat beberapa pengujian yang bisa dilakukan dalam tahap test execution ini, yaitu baseline testing, load testing, stress testing, soak testing, dan volume testing. Tipe-tipe pengujian di atas memiliki fungsi yang berbeda, diantaranya: 1. Baseline Testing. Baseline testing merupakan tahap awal dari performance testing, dimana baseline testing ini dilakukan untuk mengidentifikasi permasalahan performansi lebih awal. 2. Load Testing. Tujuan dilakukannya load testing adalah untuk melakukan verifikasi tingkah laku sebuah sistem dalam kondisi normal ataupun kondisi puncak. 3. Stress Testing. Stress testing merupakan tipe testing yang dilakukan untuk menentukan breakpoint dari sistem. Tipe ini dilakukan ketika akar permasalahan performansi testing telah diselesaikan. Hasil dari stress test dapat digunakan untuk melakukan capacity planning dan memberikan gambaran kepada administrator bagaimana system breaks and recovers. 4. Soak Testing Soak test merupakan tipe testing dimana load test dilakukan pada jangka waktu yang lama. 5. Volume Testing Volume test berkaitan dengan ukuran database dan file size. 2.7.5 Tahap Result Analysis Tahap ini merupakan tahap terpenting dalam performance testing. Pada tahap result analysis ini, hasil pengujian yang telah dilakukan pada tahap sebelumnya dikumpulkan dan di analisa untuk mendapatkan nilai performansinya. 2.7.6 Tahap Reporting Setelah melakukan analisis terhadap hasil pengujian, maka di buat laporan yang dapat menjelaskan seluruh aktivitas yang dilakukan dan hal yang terjadi dalam proses pengujian. Hal-hal yang di muat dalam laporan diantaranya kondisi awal sistem, parameter yang digunakan untuk mengukur pengujian, behavior yang terjadi selama pengujian, hasil dari pengujian, analisis pengujian, serta simpulan dari pengujian.
11
2.8 Sekilas MeritYuk
Gambar 2-2 Logo MeritYuk
MeritYuk merupakan sebuah portal informasi mengenai pernikahan berbasis website. Website ini memberikan solusi perencanaan bagi calon pengantin serta menjadi jembatan antara calon pengantin dan vendor pernikahan. MeritYuk berdiri pada 7 Juli 2013, yang merupakan 11 startup terbaik pada tahun 2013 versi Telkom Indigo Incubator dan juga satu-satunya startup bisnis yang lolos pada kategori Public Service di ajang Telkom Indigo Incubator dan dinobatkan sebagai “5 Interesting Startup” at Tech In Asia di Bandung. Beberapa layanan yang ditawarkan MeritYuk, yaitu: 1. Budget Planner. MeritYuk memiliki sistem bernama Smart Planner yang memberikan rekomendasi vendor berdasarkan dana yang disiapkan oleh calon mempelai. 2. Wedding Organizer. MeritYuk melayani proses perencanaan pernikahan, mulai dari pemilihan konten hingga pengawasan eksekusi. 3. Market Finder. MeritYuk mempertemukan calon pengantin dengan vendor pernikahan yang didukung oleh proses pemasaran secara digital yang terintegrasi. Keuntungan yang ditawarkan portal informasi MeritYuk: 1. Customer First: MeritYuk akan selalu mengedepankan kebutuhkan calon pengantin dan vendor. 2. Easy to Use: Proses perencanaan pernikahan menjadi mudah dengan bantuan team yang handal. 3. Trusted Partner: MeritYuk selalu meningkatkan pelayanan untuk menjawab kebutuhan calon pengantin dalam merencanakan acara pernikahan. 4. Reliable: Dengan dukungan team yang solid dalam penyedia system dan marketing, para vendor akan memperoleh market yang lebih luas. Website ini memiliki beberapa fungsionalitas, diantaranya: 1. Sistem Smart Planner, yaitu sebagai portal informasi yang memudahkan penggunanya dalam melakukan perencanaan pernikahan. 2. View vendor, yaitu sebagai sarana informasi bagi pengguna mengenai vendor-vendor pernikahan. 3. View blog, yaitu sebagai sarana informasi mengenai hal-hal yang berkaitan dengan pernikahan.
12
Pada website MeritYuk, sistem Smart Planner memiliki beberapa fungsionalitas, yaitu: 1. Wedding Date. Pengguna dapat memilih rencana waktu dan tempat pelaksanaan pernikahan. 2. Estimasi Budget. Pengguna melakukan input estimasi budget yang akan dikeluarkan serta perkiraan jumlah undangan yang akan disebarkan. 3. Pemilihan Kategori. Merityuk memudahkan pengguna untuk memilih kebutuhan yang diperlukan selama pernikahan. 4. Pemilihan Produk. Sistem akan memberikan rekomendasi vendor pernikahan sesuai dengan budget yang sebelumnya telah diinputkan. 5. Cart. Konfirmasi pemesanan yang telah dilakukan.
Gambar 2-3 Halaman utama MeritYuk
13
Gambar 2-4 Halaman Vendor MeritYuk
14