5 BAB 2
LANDASAN TEORI
2.1 Analisis Survival
Menurut Collett (2003), analisis survival merupakan salah satu analisis yang menggambarkan suatu proses yang berhubungan dengan waktu, diawali dengan time origin atau start time sampai dengan terjadinya suatu kejadian khusus atau end point atau failure event. Menurut Ernawati dan Purhadi (2012), analisis survival digunakan jika variabel respon yang digunakan berupa data survival (waktu). Dalam menentukan waktu survival (t), terdapat tiga elemen yang perlu diperhatikan yaitu:
a. Time origin atau starting point (titik awal) adalah waktu dimulainya suatu penelitian. Dalam bidang marketing, yang menjadi titik awal adalah ketika suatu produk untuk pertama kali di publikasikan dalam proses penjualan produk dalam e-commerce.
b. Ending event of interest (kejadian akhir) adalah kejadian yang menjadi inti dari penelitian. Titik akhir yang dimaksud dalam bidang marketing adalah keadaan suatu produk dinyatakan terjual dalam jumlah tertentu dan di dalam waktu tertentu.
c. Measurement scale for the passage of time (skala ukuran untuk berlalunya waktu). Dalam bidang marketing, skala ukuran yang digunakan adalah lamanya waktu (hari) yang digunakan suatu produk dipublikasikan dalam website e-commerce hingga produk tersebut terjual dalam jumlah tertentu.
2.1.1 Data Tersensor
Dalam analisis survival, terdapat kesulitan dalam pengamatan data yaitu adanya kemungkinan pengamatan beberapa produk yang tidak dapat di observasi berawal dari start point hingga end point. Keadaan tersebut dikatakan data tersensor (Kleinbaum dan Klein, 2011).
Menurut Le (1997), terdapat tiga hal yang menyebabkan data tersensor, yaitu :
1. Jika obyek pengamatan meninggal ataupun pindah. Dalam bidang marketing, data dikatakan tersensor jika suatu produk dinyatakan tidak terjual dalam jumlah dan waktu tertentu.
2. Jika perlakuan harus dihentikan karena suatu alasan tertentu. Dalam bidang marketing, data dikatakan tersensor jika suatu produk harus dihentikan penjualannya karena suatu alasan tertentu, seperti terjadi perbedaan harga yang tidak sesuai dengan kesepakatan suplier dengan perusahaan e-commerce.
3. Jika masa penelitian berakhir sedangkan obyek pengamatan belum sampai pada failure event. Dalam bidang marketing, data dikatakan tersensor jika masa penelitian berakhir sedangkan suatu produk belum terjual dalam waktu dan jumlah tertentu.
2.2 Metode Kaplan-Meier
Kaplan-Meier adalah komputasi yang digunakan untuk mengestimasi peluang survival serta menggambarkan-nya dalam bentuk kurva survival (Kleinbaum dan Klein, 2011). Dalam bidang marketing, metode kaplan meier digunakan berdasarkan waktu bertahannya suatu produk hingga produk tersebut terjual. Berikut ini adalah rumus dari kaplan meier :
Dimana :
Kumulatif peluang waktu survival pada waktu ke j Peluang survival pada waktu lebih dari i jika peluang survival terjadi lebih dari atau saat waktu i, ditunjukkan dengan rumus :
= Jumlah amatan yang survive pada minimal waktu ke j = Jumlah amatan yang mengalami failure pada waktu ke j = Jumlah amatan yang tersensor pada waktu ke j hingga j+1 Contoh plot kaplan meier disajikan pada Gambar 2.1.
(Sumber: Kleinbaum dan Klein, 2011) Gambar 2.1 Plot Kaplan Meier
Gambar diatas menjelaskan bahwa semakin lama waktu yang diberikan untuk pasien pada group 1 atau group 2 untuk melakukan pengobatan akan menurunkan peluang survive suatu group pasien.
2.3 Pemodelan Cox Proportional Hazard
2.3.1 Cox PH
Model Cox proportional hazard (Cox PH) adalah pemodelan matematika yang sangat popular yang digunakan untuk menganalisis data survival (Kleinbaum dan Klein, 2011). Menurut Nisa’ dan Budiantara (2012), pemodelan data survival tersebut merupakan pemodelan metode semi parametrik yang digunakan untuk mengestimasi efek variabel prediktor pada data survival. Model Cox PH dapat ditulis sebagai berikut (Kleinbaum dan Klein, 2011) :
Dengan :
adalah vektor yang berisi p variabel prediktor. = sebuah peubah baseline hazard yang menggambarkan model hazard ketika semua variabel prediktor nya bernilai nol.
adalah vektor pada parameter regresi.
Model Cox PH pada persamaan 2.2 dapat menghasilkan berbagai macam jenis residual, diantaranya residual martingale dan residual deviance (Nisa’ dan Budiantara, 2012). Penjelasan residual tersebut dijelaskan pada persamaan (2.4) dan (2.5).
2.3.2 Asumsi Cox PH
Model Cox Proportional Hazard dikatakan model semi-parametrik dikarenakan model ini tidak memerlukan pengecekan asumsi-asumsi mengenai kelayakan bentuk distribusi yang diharuskan pada model parametrik. Namun, pemodelan Cox PH memerlukan kesesuaian asumsi-asumsi tertentu. Asumsi pemodelan Cox PH dikatakan terpenuhi jika nilai hazard ratio antar kedua variabel independen konstan ( Kleinbaum,2011).
Pengujian asumsi Cox PH dapat dilihat dari terbentuknya plot antar variabel independen. Plot yang terbentuk dikatakan konstan jika tidak bersinggungan (sejajar) antar variabel independen. Selain itu, pengujian asumsi dapat dilakukan dengan pengujian Goodness of Fit (GOF) dengan hipotesis sebagai berikut ( Kleinbaum dan Klein, 2011) :
H0 = Asumsi Cox PH terpenuhi
H1 = Asumsi Cox PH tidak terpenuhi
Dengan daerah penolakan yang berlaku sebagai berikut :
1. Jika nilai p-value < (alpha) , maka dinyatakan tolak H0 atau dengan
2. Jika nilai (chi-square) hitung > nilai (chi-square) pada tabel, maka dinyatakan tolak H0 atau dengan kata lain variabel dinyatakan
tidak memenuhi asumsi cox PH
2.3.3 Hazard Ratio
Nilai adalah hazards pada saat t bagi amatan dengan variabel prediktor X relatif terhadap hazard amatan dengan variabel prediktor bernilai nol. Misalkan X = 1 untuk variabel yang diberi perlakuan, dan X=0 untuk variabel yang tidak diberi perlakuan. Dari model Cox PH dapat dijelaskan bahwa resiko kegagalan dari variabel yang diberi perlakuan akan sebesar kali dari variabel yang tidak diberi perlakuan.
Apabila dan adalah fungsi hazards dari dua individu dengan dan X1. Maka rasio tingkat hazardnya adalah :
Tingkat hazards dari dua fungsi tersebut bersifat proporsional. Jika rasio pada suatu persamaan bernilai 2 pada titik tertentu, maka resiko kegagalan produk pertama dua kali lebih besar dari produk kedua.
2.4 Residual Martingale
Residual merupakan suatu alat diagnostik yang digunakan untuk menilai suatu ketepatan model dan berfokus pada masing masing variabel secara grafikal. Penggunaan residual dalam analisis data survival digunakan untuk menilai hal-hal sebagai berikut (Thernau, Grambsch dan Fleming,2003) :
1. Bentuk fungsional untuk mengetahui pengaruh dari variabel prediktor pada suatu model.
2. Ketepatan suatu model dengan memperhitungkan asumsi-asumsi pada pemodelan proportional hazard.
3. Ketepatan suatu model dengan memperhitungkan signifikansi dari masing-masing variabel.
4. Pengaruh yang diberikan untuk suatu variabel dalam estimasi parameter.
Persamaan residual martingale dapat dijelaskan sebagai berikut (Muthmainnah, 2007) :
Dengan
Residual martingale ke-i pada waktu ke-t 1 , Untuk data tidak tersensor.
0 , untuk data tersensor.
Estimasi dari baseline fungsi hazard kumulatif pada waktu yang diperoleh di persamaan (2.2)
adalah vektor pada estimasi parameter regresi. adalah vektor yang berisi p variabel prediktor.
Nilai residual martingale adalah antara hingga 1. Nilai tersebut negatif pada data tersensor. Residual martingale dapat menjadi gambaran mengenai perbedaan hasil pengamatan ( dengan angka prediksi pada kejadian kejadian (h(t)). Ketika perbedaan antara hasil pengamatan dengan angka prediksi untuk subjek ke-i cukup besar, itu menunjukkan bahwa subjek ke-i tidak sesuai dengan model dan mengakibatkan suatu nilai besar pada . Karena range dari h(t) adalah (0, ) dan hanya bernilai 0 atau 1, maka dapat diambil kesimpulan bahwa residual martingale bernilai ( ) dan kesimetrisan dari distribusi residual martingale mendekati 0.
2.5 Residual Deviance
Menurut Monika (2007), kemiringan yang dihasilkan oleh residual martingale sangat tinggi. Oleh karena itu, untuk membuktikan kemiringan tersebut tidak mempengaruhi hasil, maka terbentuklah residual deviance yang
merupakan transformasi dari residual martingale dengan nilai simetris . Residual deviance didefinisikan sebagai berikut:
Dengan
= Tanda dari residual martingale
2.6 Multivariate Adaptive Regression Splines (MARS)
Multivariate Adaptive Regression Splines (MARS) merupakan salah satu metode baru yang fleksibel untuk pemodelan regresi dengan data berdimensi tinggi. MARS merupakan bentuk perluasan dari basis fungsi splines dimana jumlah basis fungsi merupakan parameter dari pemodelan tersebut. MARS merupakan pendekatan regresi nonparametrik multivariat. Teknik MARS menjadi populer karena tidak menentukan tipe khusus seperti hubungan antara variabel prediktor dan respon, seperti linier, kuadratik, atau kubik (Budiantara, Otok, dan Suryadi, 2006).
Beberapa istilah yang perlu diperhatikan dalam metode dan pemodelan MARS adalah sebagai berikut (Febriyanti, Yozza dan Rahmi, 2013) :
1. Knots
Knots merupakan nilai variabel prediktor ketika slope suatu garis regresi mengalami perubahan yang dapat didefinisikan sebagai akhir dari suatu segmen sekaligus merupakan awal dari segmen lain. Di setiap titik knot, diharapkan adanya kontinuitas dari basis fungsi antar satu region dengan region lainnya. Minimum observasi antara knot (MO) adalah 0,1,2, dan 3 observasi.
2. Basis Fungsi (BF)
Merupakan selang antar knot yang berurutan. Pada umumnya basis fungsi yang dipilih berbentuk polinomial dengan turunan yang kontinu pada setiap titik knot. Maksimum basis fungsi yang diijinkan adalah 2-4 kali jumlah variabel prediktornya.
3. Interaksi
Merupakan hasil perkalian silang antar variabel yang saling berkorelasi. Jumlah Maksimum Interaksi (MI) yang diperbolehkan adalah 1,2 atau 3. Jika MI > 3 akan dihasilkan model semakin kompleks dan model akan sulit diinterpretasi.
Persamaan umum model MARS adalah sebagai berikut :
Dimana :
= Basis fungsi induk
= Koefisien dari basis fungsi ke-m M = Maksimum basis fungsi
= Derajat interaksi =
= Variabel prediktor
= nilai knots dari variabel prediktor
Persamaan (2.6) dapat dituliskan dalam bentuk berikut :
Menurut Friedman (1991), penjumlahan pertama meliputi semua basis fungsi untuk satu variabel, penjumlahan kedua meliputi semua basis fungsi untuk interaksi antar dua variabel, penjumlahan ketiga meliputi semua basis fungsi untuk interaksi ketiga variabel dan seterusnya. Sehingga dapat diketahui bahwa basis fungsi merupakan sekumpulan fungsi yang diguunakan untuk merepresentasikan informasi yang terdiri atas satu atau lebih variabel termasuk interaksi antar variabel. Basis fungsi menunjukkan adanya hubungan antara variabel prediktor dengan variabel respon. Penjumlahan pertama dari persamaan (2.7) dapat dituliskan menjadi:
(2.6)
merupakan penjumlahan semua basis fungsi untuk satu variabel . Penjumlahan kedua dari persamaan (2.8) dapat dituliskan menjadi:
merepresentasikan penjumlahan semua basis fungsi dua variabel dan
Pemodelan MARS ditentukan berdasarkan trial and error untuk kombinasi BF, MI dan MO untuk mendapatkan nilai GCV yang minimum. Persamaan GCV adalah sebagai berikut :
Dengan :
Dimana :
n = Banyak data B = Basis fungsi
2.7 Pemodelan MARS pada Data Survival
Multivariate Adaptive Regression Splines (MARS) pada umumnya dapat digunakan pada 2 tipe variabel respon, yaitu biner dan kontinu. Menurut Monika (2007), variabel respon pada pemodelam MARS dapat (2.10)
(2.11) (2.8)
menggunakan residual dari pemodelan Cox PH, yaitu : residual martingale atau residual deviance. Sehingga pemodelan survival dengan pendekatan MARS dapat diartikan sebagai pemodelan MARS (persamaan 2.6) dengan variabel responnya adalah residual hasil dari pemodelan Cox PH.
2.7.1 Keunggulan Pemodelan MARS dengan Pemodelan MARS pada Data Survival
Menurut Friedman (1991), MARS memiliki beberapa keunggulan, antara lain :
1. MARS merupakan metode yang tidak tergantung pada asumsi bentuk kurva tertentu, sehingga pemodelan ini memberikan fleksibilitas lebih besar.
2. MARS memiliki sifat yang fleksibel pada pemodelan data yang berdimensi tinggi serta pemodelan dengan menambahkan atau melibatkan banyak interaksi dengan sedikit variabel.
Menurut Monika (2007), terdapat kelebihan kelebihan yang didapat pada pemodelan MARS dengan data survival, antara lain:
1. Pemodelan MARS dengan data survival dapat digunakan pada data yang memiliki hubungan baik linear, non linear, atau kubik antara variabel prediktor dengan variabel respon atau adanya interaksi antar variabel prediktor itu sendiri.
2. Perbandingan antara penggunaan residual martingale atapun residual deviance dari pemodelan Cox PH sebagai variabel respon dalam pemodelan MARS secara signifikan menghasilkan nilai variasi yang lebih kecil jika dibandingkan dengan pemodelan Cox PH tanpa residual sebagai respon.
3. Pemodelan MARS pada data survival, residual yang dihasilkan merupakan hasil pemodelan Cox PH dengan analisis stepwise, yang berarti pemodelan Cox PH yang dihasilkan lebih baik dari hasil pemodelan CoxPH tanpa analisis stepwise.
2.8 Pengujian Signifikansi Parameter Model MARS 2.8.1 Uji Signifikansi Serentak
Pada model MARS dilakukan uji signifikansi basis fungsi yang meliputi uji bersamaan (serentak) dan uji individu. Uji signifikansi yang dilakukan secara bersamaan terhadap banyaknya basis fungsi bertujuan untuk mengetahui apakah secara umum model MARS terpilih merupakan model yang sesuai dan menunjukkan hubungan yang tepat antara variabel prediktor dengan variabel respon. Hipotesis yang digunakan adalah :
Hipotesis nol (H0) akan ditolak jika artinya
terdapat paling tidak satu yang tidak sama dengan nol atau dengan kata lain terdapat paling tidak satu basis fungsi yang memuat variabel prediktor yang berpengaruh terhadap variabel respon. Nilai diperoleh dari tingkat signifikansi serta = dan dengan n adalah banyaknya sampel dan adalah banyaknya basis fungsi yang berkontribusi terhadap model.
Nilai diperoleh dari perhitungan berikut :
2.8.2 Uji Signifikansi Individu
Pengujian untuk masing masing basis fungsi bertujuan untuk mengetahui apakah basis fungsi yang terbentuk mempunyai pengaruh signifikan terhadap model. Selain itu dapat diketahui pula apakah model yang memuat parameter tersebut telah menggambarkan keadaan data yang sebenarnya. Hipotesisnya adalah sebagai berikut :
Dengan
Hipotesis nol akan ditolak jika artinya terdapat pengaruh variabel prediktor terhadap variabel respon pada basis fungsi ke- di dalam model. Nilai diperoleh dengan derajat bebas dan tingkat signifikansi
Nilai diperoleh dari rumus sebagai berikut.
2.9 E-Commerce
2.9.1 Definisi E-Commerce
Electronic commerce (E-commerce) adalah proses pembelian, penjualan atau pertukaran produk, jasa dan informasi melalui jaringan komputer (Dewi, 2011).
Electronic commerce (Perniagaan Elektronik), sebagai bagian dari Electronic business (bisnis yang dilakukan dengan menggunakan electronic transmission (Hildamizanthi. 2011). Dalam mengimplementasikan e-commerce tersedia suatu integrasi rantai nilai dari infrastrukturnya, yang terdiri dari tiga lapis. Pertama adalah insfrastruktur sistem distribusi (flow of good), kedua adalah insfrastruktur pembayaran (flow of money), dan ketiga adalah infrastruktur sistem informasi (flow of information). Terdapat tiga faktor yang perlu diperhatikan dalam pembangunan sebuah e-commerce yaitu: variability, visibility, dan velocity (Sukamajati, 2009).
2.9.2 Keuntungan dari E-Commerce
Menurut Schneider (2011:17), perusahaan tertarik dalam perdagangan elektronik karena cukup sederhana yaitu dapat membantu meningkatkan (2.13)
keutungan e-commerce serta dapat meningkatkan keuntungan dan secara bersamaan dapat menurunkan biaya.
2.9.3 Kekurangan dari E-Commerce
Menurut Schneider (2011:19), beberapa proses bisnis tidak mungkin meminjamkan diri mereka untuk perdagangan elektronik. Sebagai contoh, makanan yang mudah rusak dan biaya mahal, barang-barang unik seperti perhiasan yang dirancang khusus tidak mungkin dapat diperiksa secara memadai dari lokasi yang jauh, meskipun ada teknologi yang mungkin akan dirancang di masa depan.
2.10 Definisi Penjualan
Menurut Kotler dan Amstrong (2008:457), penjualan merupakan sebuah proses dimana kebutuhan pembeli dan kebutuhan penjual dipenuhi, melalui antar pertukaran informasi dan kepentingan. Untuk mencapai penjualan yang tinggi, diperlukan adanya pemasaran. Pemasaran merupakan sebuah proses perusahaan menciptakan nilai untuk konsumennya dan membangun hubungan kuat dengan konsumen dengan tujuan untuk menciptakan nilai keuntungan bagi konsumen (Kotler dan Amstrong, 2008:5).
Penelitian sebelumnya tentang e-marketing adalah penelitian yang ditulis oleh Armesh, et al. (2010) di Malaysia. Penelitian tersebut menyebutkan beberapa faktor yang ada dalam metode online sales/marketing mempengaruhi kepuasan konsumen dalam melakukan transaksi pembelian via internet. Variabel yang digunakan dalam penelitian ini antara lain: nilai dari suatu produk, desain dan kemudahan dalam mengakses website dan penyesuaian produk.
1. Nilai dari suatu Produk
Faktor utama dari kesuksesaan e-commerce ialah dapat meminimalisir biaya suatu produk dan memaksimalkan kualitas suatu produk itu sendiri (Keeney, 1999). Biaya suatu produk didefinisikan sebagai total biaya termasuk biaya produk, pajak, pengiriman barang, internet hingga biaya perjalanan produk. Selain itu, konsumen membutuhkan informasi berapa
banyak produk yang sudah terjual dan dapat diperlihatkan di dalam web. Dengan adanya informasi tersebut, akan meningkatkan tingkat kepercayaan konsumen (Kalakota dan Whinston,1997 ).
2. Desain dan Penggunaan Website
Menurut Haque dan Khatibi (2007) kemudahan dalam mengakses website yang digunakan dalam e-commerce harus terpenuhi. Dikarenakan, konsumen yang tidak sering menggunakan internet dalam melakukan pembelian tidak memiliki kepercayaan diri untuk membeli suatu produk karena tingkat keraguan yang tinggi pada kesuksesan transaksi pembelian. Dinyatakan oleh Wolfinbarger dan Gilly (2001), konsumen dapat menilai suatu produk berdasarkan Informasi yang didapatkan dari penjual serta desain dari website e-commerce, termasuk kemudahan navigasi dalam mengakses website tersebut.
3. Penyesuaian Produk
Penerapan penyesuaian produk pada e-commerce berupa kemampuan e-commerce menyediakan produk yang memang dibutuhkan oleh konsumen (Zhu dan Kraemer, 2002). Jenis produk yang ada pada e-commerce diharapkan dapat memenuhi kebutuhan konsumen. Dalam hal ini, salah satu atribut penyesuaian produk adalah konsumen dapat mengetahui dengan jelas jumlah produk yang tersedia pada e-commerce.
Kepuasan pelanggan dalam commerce di definisikan bahwa e-commerce dapat memenuhi kebutuhan konsumen sesuai dengan tujuan dan keinginan konsumen. Kepuasan konsumen meliputi beberapa tahap yaitu konsumen memerlukan sesuatu, konsumen mengumpulkan berbagai informasi tentang apa yang diperlukan, konsumen melakukan evaluasi pada alternatif produk yang telah di dapatkan, konsumen mengambil keputusan untuk melakukan transaksi, dan tahap terakhir adalah tindakan yang dilakukan oleh konsumen setelah proses pembelian terjadi (Kottler, 1997) Dari ke 5 tahap itu dapat terlihat ada/ tidak nya kepuasan konsumen terjadi.
2.11 R Language
Menurut Suhendra, Susanto, dan Andriansyah (2007), R adalah suatu kesatuan software yang terintegrasi dengan beberapa fasilitas untuk manipulasi, perhitungan dan penampilan grafik yang handal. R berbasis pada bahasa pemrograman S, yang dikembangkan oleh AT&T Bell Laboratories. Pada awalnya R dibuat oleh Ross Ihaka dan Robert Gentleman dari Universitas Auckland lalu pengembangan R dikembangkan oleh tim inti. R bersifat multiplatform, yakni dapat di install dan digunakan baik pada sistem operasi windows, UNIX/LINUX maupun pada Macintosh. Selain itu, R didukung oleh komunitas yang secara aktif saling berinteraksi satu sama lain melalui jaringan internet dan didukung oleh manual atau R-help yang menyatu pada software R.
2.12 Pemrograman Java
Java merupakan bahasa pemrograman yang memiliki fitur lengkap dan merupakan bahasa pemrograman yang secara umum dapat digunakan untuk membangun suatu aplikasi yang rumit (Liang, 2011:32). Tidak hanya digunakan dalam pengembangan web-programming, java juga dapat digunakan dalam pengembangan aplikasi independen pada berbagai platform seperti server, desktop, ataupun perangkat mobile.
Menurut Liang (2011:32), java memiliki keunikan tersediri yaitu “write ones, run everywhere” yang berarti bahwa kode yang berjalan pada satu platform dapat berjalan pada plaform lain,tanpa melakukan kompilasi ulang.
2.13 Rekayasa perangkat lunak
Rekayasa perangkat lunak merupakan pembuatan dan penggunaan prinsip-prinsip keahlian teknik dalam perancangan perangkat lunak yang ekonomis yang handal dan bekerja secara efisien pada mesin yang sesungguhnya (Pressman, 2010:14). Dalam rekayasa piranti lunak terdapat fondasi dalam proses perangkat lunak dengan mengidentifikasi sejulah aktivitas kerangka kerja yang berlaku untuk semua proyek perangkat lunak, terlepas dari hal ukuran dan kompleksitas.
Aktivitas tersebut terdiri dari :
1. Fokus pada kualitas ( A quality focus )
Pendekatan teknik apapun (termasuk rekayasa perangkat lunak) harus bersandar pada komitmen organisasi terhadap suatu mutu/kualitas. Total kualitas manajemen dan filosofi yang sama mendorong budaya perbaikan proses yang berkesinambungan dan budaya inilah yang akhirnya mengarah pada pengembangan pendekatan teknik yang semakin baik dalam rekayasa perangkat lunak. Fokus pada kualitas merupakan dasar utama dalam mendukung rekayasa piranti lunak. 2. Proses ( Process)
Pondasi dalam rekayasa piranti lunak adalah lapisan proses. Proses pada rekayasa piranti lunak adalah perekat yang merangkum teknologi lapisan secara bersama–sama dan memungkinkan pengembangan perangkat lunak yang rasional dan tepat waktu. Proses mendefinisikan sebuah kerangka kerja dalam lingkup key process areas (KPAs) dapat ditetapkan dengan penyampaian (delivery) yang efektif dari teknologi perangkat lunak. KPAs membentuk dasar kontrol manajemen proyek perangkat lunak dan menetapkan konteks metode-metode teknis yang diterapkan, produk kerja (model, dokumen, data, laporan, form, dan lain-lain) yang diproduksi, milestone yang ditetapkan, kualitas yang terjamin dan perubahan yang dikelola dengan baik.
3. Metode (Method)
Dalam rekayasa piranti lunak, telah disediakan metode yang dapat digunakan dalam membangun perangkat lunak. Metode mencakup analisis kebutuhan (requirement analysis), perancangan (design), program konstruksi (program construction), pengujian (testing), dan pemeliharaan (maintenance).
4. Alat Bantu (Tools)
Alat bantu pada rekayasa piranti lunak secara otomatis ataupun semi-otomatis menyediakan dukungan untuk proses dan metode. Ketika alat-alat diintegrasikan sehingga informasi yang dibuat oleh salah satu alat dapat digunakan oleh alat lainnya, sebuah sistem yang mendukung perangkat lunak, dengan menggabungkan perangkat lunak
(software), perangkat keras (hardware), dan basis data (database) disebut dengan computer-aided software engineering (CASE).
2.13.1 Model proses
Model proses pada rekayasa piranti lunak merupakan sekumpulan tugas dan aktifitas yang terangkum dalam suatu kerangka kerja perancangan suatu perangkat lunak. Pada setiap kerangka kerja, terdapat definisi bahwa tugas yang akan diselesaikan, tugas yang akan menghasilkan suatu produk, jaminan kualitas pada piranti lunak, serta milestones yang dapat digunakan untuk mengindikasikan kemajuan suatu proses (Pressman, 2010: 31).
2.13.1.1 Model Proses Waterfall
Tahapan utama dari waterfall model mencerminkan aktifitas pengembangan dasar (Soomerville, 2011: 30-31). Terdapat 5 tahapan pada model waterfall yaitu : requirement analysis and definition, system and software design, implementation and unit testing, integration and system testing dan operation and maintenance.Gambar ilustrasi dari model proses waterfall disajikan dalam Gambar 2.2.
(Sumber : Sommerville ,2011: 30) Gambar 2.2 Model Waterfall
Berikut ini adalah penjelasan dari tahapan-tahapan tersebut : 1. Requirement analysis and definition
Merupakan tahapan penetapan fitur, kendala, dan tujuan dari suatu perangkat lunak melalui konsultasi dengan pengguna perangkat lunak. Dalam tahapan ini, semua informasi dari pengguna akan dijelaskan secara detail dan berfungsi sebagai spesifikasi suatu perangkat lunak. 2. System and Software Design
Merupakan tahapan pembentukan suatu arsitektur sistem berdasarkan ketentuan yang telah ditetapkan. Selain itu, dalam tahap ini dilakukan identifikasi dan penggambaran abstraksi dasar suatu sistem perangkat lunak yang terintegritas.
3. Implementation and unit testing
Merupakan tahapan penentuan hasil dari desain perangkat lunak yang akan direalisasikan sebagai suatu kumpulan program atau unit program. Dalam tahapan ini, dilakukan pula pengujian spesifikasi setiap unit program.
4. Integration and system testing
Merupakan tahapan pengujian pengintegrasian dari masing masing unit program sehingga keseluruhan unit program menjadi suatu unit sistem yang utuh yang saling terintegrasi satu sama lain dan memastikan bahwa sistem yang terbentuk telah memenuhi persyaratan yang telah ditetapkan. Setelah itu, sistem akan dikirim kepada pengguna sistem.
5. Operation and Maintenance
Merupakan tahapan instalasi suatu sistem dari perangkat lunak. Perangkat lunak tersebut dapat digunakan. Dalam tahapan ini dilakukan pengoreksian error yang tidak ditemukan pada tahap pembuatan. Selain itu, pengembangan sistem seperti penambahan fitur dan fungsi baru dapat dilakukan dalam tahapan ini.
2.14 Unified Modelling Language (UML)
Menurut Bentley dan Whitten (2007:381) UML diungkapkan seperti suatu bagan yang digunakan untuk membangun rumah, satu bagan menyediakan pembangunan dengan perspektif untuk masing masing bagian
rumah. UML merupakan suatu kumpulan dari pemodelan yang digunakan untuk mendeskripsikan serta menspesifikasikan sebuah sistem perangkat lunak dalam suatu kondisi objek (Bentley dan Whitten, 2007:371). UML dibagi menjadi beberapa komponen :
1. Use case Diagram
Use case menggambarkan interaksi antara sistem dan user (Whitten dan Bentley, 2007: 246-250). Use case mendeskripsikan siapa saja yang menggunakan sistem dengan penggunaan user dalam berinteraksi dengan sistem.
Use case diagram memiliki komponen sebagai berikut : a. Pelaku (Actor)
Pada use case diagram, pelaku adalah segala sesuatu yang berinteraksi dengan sistem dalam proses pertukaran informasi.
b. Hubungan (Relationship)
Pada use case diagram, hubungan menggambarkan garis sebagai penghubung 2 simbol. Jenis hubungan dibedakan menjadi 5, yaitu :
i. Asosiasi (Associations)
Hubungan antara pelaku (Actor) dan use case terjadi ketika use case menggambarkan sebuah garis penghubungan antara use case dengan pelaku (actor).
ii. Perluasan (Extends)
Use case berisikan fungsi-fungsi rumit yang terdiri dari beberapa tahap pembuatan sebuah logika use case yang sulit untuk dimengerti.
iii. Includes
Use case dapat menurunkan redudancy terhadap dua use case atau lebih melalui langkah kombinasi umum dalam kasus itu sendiri.
iv. Ketergantungan (Depends On)
Hubungan yang terjadi antara use case menunjukkan bahwa satu use case tidak dapat berjalan jika use case yang lain tidak dijalankan.
v. Pewarisan (Inheritance)
Hubungan antara pelaku (actor) menciptakan gambar yang sederhana ketika pelaku abstrak mewarisi tugas dari multiple real actors.
Gambar ilustrasi dari use case disajikan dalam Gambar 2.3.
(Sumber : Whitten dan Bentley, 2007). Gambar 2.3 Diagram Use case
2. Activity Diagram
Menurut Bentley dan Whitten (2007: 390-391) activity diagram menggambarkan alur yang sistematis dari aktifitas use case. Diagram ini dapat digunakan untuk pemodelan logika dengan suatu sistem. Diagram ini bertujuan untuk pemahaman secara mudah dari alur dan urutan tahapan use case. Terdapat delapan tahapan yang ada pada activity diagram, antara lain :
1. Titik Solid (Initial Node)
Sebuah lingkaran yang menjelaskan awal mula suatu proses 2. Aksi (Action)
Sebuah persegi panjang dengan sudut tumpul yang menjelaskan tugas yang perlu dilakukan
3. Panah (Flow)
Sebuah arah panah yang menuju ke diagram untuk mengindikasikan proses dari sebuah kegiatan.
4. Wajik (Diamond)
Sebuah wajik dengan satu set alur yang terdiri dari satu alur masuk dan dua atau lebih alur keluar.
5. Merge
Sebuah wajik dengan dua atu lebih alur yang masuk dan alur yang keluar.
6. Fork
Sebuah garis hitam dengan satu alur masuk sampai pada penggabungan.
7. Penggabungan (Join)
Sebuah garis hitam dengan dua atau lebih alur yang masuk dan satu alur yang keluar, dimana tidak ada proses yang terjadi secara bersamaan.
8. Aktifitas final (Activity final)
Sebuah lingkaran atau titik solid yang berada pada lingkaran berongga menjelaskan akhir dari suatu proses.
(Sumber :Bentley dan Whitten,2007) Gambar 2.4 Activity Diagram
3. Class Diagram
Menurut Bentley dan Whitten (2007: 400), class diagram secara grafis menggambarkan struktur sistem dari suatu objek, Diagram ini menampilkan kelas-kelas objek yang sistemnya tersusun seperti hubungan antara kelas objek. Class diagram digunakan untuk menggambarkan objek-objek dan asosiasinya. Gambar ilustrasi dari class diagram disajikan dalam Gambar 2.5.
(Sumber : Whitten dan Bentley, 2007 ) Gambar 2.5 Class Diagram
4. Sequence Diagram
Sequence diagram menggambarkan hubungan interaksi yang terjadi pada objek melalui pesan dalam eksekusi use case dalam waktu yang sistemastis ( Bentley dan Whitten, 2007: 659). Diagram ini menggambarkan langkah-langkah pesan yang dikirim dan diterima antar objek.
Menurut Bentley dan Whitten (2007: 660), Elemen-elemen yang terdapat pada diagram sequence adalah :
1. Actor
Pengguna yang menggunakan perangkat lunak dan berinteraksi dengan sistem
2. Interface Class
Sebuah kotak yang mengindikasikan kode kelas. Interface class ditandai dengan <<interface>>
3. Controller Class
Setiap use case memiliki satu atau lebih controller class, penulisan controller class sama dengan notasi pada interface class yaitu <<controller>>
4. Entity Classes
Sebuah kotak tambahan untuk setiap entiti yang dibutuhkan untuk menggabungkan urutan langkah langkah pada sistem.
5. Messages
Sebuah panah horizontal yang berasal dari actor ke sistem yang menunjukan masuknya pesan.
6. Activation Bars
Sebuah batang yang menandakan periode waktu yang digunakan oleh masing-masing objek aktif dalam interaksi. 7. Return Messages
Sebuah panah putus-putus horizontal dari sistem ke pelaku (actor) yang berisi pesan balik. Pesan balik dikirimkan pada setiap kejadian,meskipunhanya berupa indikasi sukses atau tidak.
8. Self Call
Sebuah objek yang dapat memanggil metode nya sendiri.
9. Frame
Kotak yang dapat menyertakan satu atau lebih pesan untuk membagi fragmen sequence. Kotak digunakan untuk mengidikasikan area yang mengalami perulangan .
( Sumber : Bentley dan Whitten, 2007) Gambar 2.6 Sequence Diagram
2.15 Interaksi Manusia dan Komputer
Menurut Shneiderman dan Plaisant (2010: 22-23), interaksi manusia dan komputer berkaitan dengan tampilan antarmuka yang digunakan oleh user yang bertujuan untuk berkomunikasi dan berinteraksi dengan komputer. Interaksi manusia dan komputer merupakan ilmu yang berhubungan dengan perancangan, evaluasi, dan implementasi sistem komputer yang bersifat interaktif. Tujuan dari interaksi manusia dan komputer adalah memudahkan user dengan memperhatikan kepentingan user. Suatu program yang baik haruslah bersifat userfriendly dan usabilitty. Dalam interaksi manusia dan komputer terdapat 5 kriteria yang harus dipenuhi oleh suatu sistem, antara lain (Shneiderman dan Plaisant, 2010: 32) :
1. Waktu pembelajaran (Time to learn)
Suatu tampilan dari perangkat lunak yang dapat dipelajari secara cepat oleh pengguna.
2. Kecepatan kinerja (Speed of performance)
Suatu tampilan dari perangkat lunak yang memiliki kemampuan tertentu dalam proses berjalannya sebuah sistem.
3. Tingkat kesalahan (Rate of errors by users)
Suatu tampilan dari perangkat lunak yang memiliki solusi untuk pengguna sistem antarmuka ketika terdapat tingkat kesalahan yang terjadi saat proses suatu sistem berjalan.
4. Daya ingat (Retention over time)
Suatu tampilan yang memudahkan pengguna dalam mengingat dan mempelajari perangkat lunak tersebut.
5. Kepuasan subjektif (Subjective satisfaction)
Suatu tampilan perangkat lunak yang dapat meningkatkan kepuasan pengguna.
2.15.1 Delapan Aturan Emas
Menurut Shneiderman dan Plaisant (2010: 88-89), terdapat delapan aturan emas dalam merancang antarmuka, antara lain :
1. Berusaha untuk konsisten
Tindakan konsisten merupakan tindakan yang dibutuhkan dalam situasi yang serupa.
2. Melayani kebutuhan universal
Dikarenakan beragamnya pengguna, maka perancangan layar harus mempertimbangkan perbedaan seperti ; usia, hambatan fisik ataupun variasi teknologi. Perancangan layar dapat memberikan petunjuk untuk pengguna yang awam ataupun shortcut untuk pengguna yang sudah berpengalaman.
3. Menawarkan umpan balik yang informatif
Terdapatnya sistem umpan balik untuk setiap tindakan pengguna dapat menciptakan suasana yang komunikatif. Untuk tindakan-tindakan sering dan kecil, tanggapan dapat bersifat sederhana, sedangkan untuk tindakan yang jarang dan utama, tanggapan harus bersifat detail.
4. Desain dialog untuk menghasilkan keadaan akhir
Dalam merancang komunikasi dengan pengguna, urutan tindakan harus terorganisir secara berkelompok dengan mengetahui keadaan awal, tengah, dan akhir. Hal ini dapat meningkatkan kepuasan pengguna saat menggunakan antarmuka suatu perangkat lunak.
5. Penawaran penanganan error yang sederhana
Dalam perancangan desain, penggunaan desain yang pernah ada dapat meminimalisir kesalahan serius yang dilakukan oleh pengguna. Namun jika kesalahan yang disebabkan oleh pengguna terjadi, sistem dapat mendeteksi kesalahan dan dapat menawarkan mekanisme yang memudahkan pengguna dalam penanganan kesalahan.
6. Mengizinkan pembalikan tindakan
Apabila memungkinkan, tindakan dapat dikembalikan pada kondisi sebelumnya. Ketika pengguna melakukan aksi yang tidak diinginkan dan ingin melakukan pembataan, sistem dapat memberikan fungsi pembatalan agar pengguna merasa nyaman dalam penggunaan sistem pada perangkat lunak.
7. Dukungan pusat kendali internal
Sistem dapat merespon tindakan pengguna yang berpengalaman unttuk bertanggung jawab atas sistem, sehingga pengguna dapat mengontrol program-program yang ada di dalam sistem.
8. Kurangi beban memori jangka pendek
Tampilan yang diciptakan harus dibuat sederhana sehingga pengguna tidak perlu menghafal. Begitupula dengan perancangan tampilan yang sederhana serta minimalisir frekuensi perpindahan window.
2.16 Profil Perusahaan
PT. Online Pertama merupakan perusahaan e-commerce dengan kategori Group Buying. Group Buying adalah sebuah sistem penjualan dalam e-commerce yang menggunakan jangka waktu tertentu untuk melakukan transaksi pembelian kepada suplier dalam jumlah banyak (grosir) sesuai dengan kuantitas yang ditawarkan suplier kepada perusahaan. Jangka waktu tersebut yang digunakan perusahaan untuk mengumpulkan pesanan suatu produk terlebih dahulu hingga mencapai jumlah tertentu, lalu melakukan pemesanan kepada suplier, hingga melakukan pengiriman barang ke alamat konsumen. Penawaran yang diberikan oleh perusahaan memiliki klasifikasi jenis produk tertentu.
Berikut ini klasifikasi jenis produk yang diberikan :
Tabel 2.1 Jenis Produk
Jenis Produk Gadget dan Electronics Fashion dan Beauty Baby dan Kids Home Appliance
Food dan Beverages ( F&B)
Dalam penjualan produk, dibutuhkan jangka waktu penjualan untuk sebuah produk yang akan dipublikasikan dalam website perusahaan. Waktu publikasi publikasi suatu produk pada perusahaan berada di antara 11 hari hingga 21 hari. Perpanjangan waktu publikasi dapat dilakukan perusahaan terhadap suplier sesuai dengan kuantitas yang dimiliki suplier.