• Tidak ada hasil yang ditemukan

APLIKASI BILLING HOSTING BERBASIS ANDROID PADA SEMBILANMEDIA.COM.

N/A
N/A
Protected

Academic year: 2017

Membagikan "APLIKASI BILLING HOSTING BERBASIS ANDROID PADA SEMBILANMEDIA.COM."

Copied!
80
0
0

Teks penuh

(1)

SKRIPSI

Diajukan Oleh : Akhmad Taufik Hidayat

NPM : 0834110015

J URUSAN TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI

(2)

i

APLIKASI BILLING HOSTING BERBASIS ANDROID PADA SEMBILANMEDIA.COM

Penyusun : Akhmad Taufik Hidayat Pembimbing I : Ir. R. Purnomo Edi Sasongko Pembimbing II: Syurfah Ayu Ithhriah, S.Kom

ABSTRAK

Meningkatnya popularitas internet dan World Wide Web pada tahun 1990-an, telah membawa era baru dalam penyampaian informasi, dimana internet telah menjadi media publikasi yang sangat populer. Seseorang dapat dengan mudahnya mempublikasikan atau mengakses suatu informasi dalam kurun waktu yang tidak terbatas. Untuk bisa mengunggah layanan informasi kita ke dunia internet diperlukan adanya domain dan hosting. Penyedia jasa domain dan hosting dinegara kita sudah sangat menjamur. Sebuah perusahaan hosting provider menggunakan berbagai macam perangkat lunak untuk mempermudah control mereka terhadap jasa yang akan diberikan. Namun dalam prakteknya seseorang yang akan menyewa jasa domain dan hosting harus melakukan order melalui website online secara langsung baik melalui warung internet maupun melalui laptop atau komputer rumah. Dengan tujuan untuk mempermudah penulis membuat sebuah aplikasi billing untuk membantu proses order yang berjalan pada

hanheld atau smarthphone android. Pembuatan aplikasi ini telah dilakukan beberapa langkah yaitu merancang system informasi dengan menyusun table-tabel dan merancang konsep program serta desain sesuai dengan kebutuhan menggunakan sistem operasi Android. Sehingga mampu terkoneksi dengan baik dengan system billing yang sudah ada menggunakan system API. Aplikasi billing ini dapat memberikan kemudahan dalam proses pembelian domain dan hosting sehingga menjadi lebih praktis. Dalam hasil uji coba system yang telah selesai dan berhasil dibuat, Aplikasi ini mampu terintegrasi dengan baik dengan billing yang digunakan sebelumnya dan telah di implementeasikan pada smartphone Android 2.3.

(3)

ii

Puji syukur kita panjatkan kehadirat Allah SWT, Tuhan Yang Maha Esa yang telah memberikan rahmat serta hidayah-Nya sehingga penyusunan laporan ini dapat diselesaikan.

Laporan ini disusun untuk Tugas Akhir saya, dengan judul “ APLIKASI

BILLING HOSTING DOHOSE BERBASIS ANDROID PADA

SEMBILANEDIA.COM ”

Ucapan terima kasih saya sampaikan juga ke berbagai pihak yang turut membantu memperlancar penyelesaian Tugas Akhir ini, yaitu kepada:

1. Prof.Dr.Ir. Teguh Sudarto, MP Selaku Rektor Universitas Pembangunan Nasional “Veteran” Jawa Timur.

2. Bapak Ir. Sutiyono, MT Selaku Dekan Fakultas Teknologi Industri UPN “Veteran” Jawa Timur

3. Ibu Dr.Ir. Ni Ketut Sari, MT Selaku Kepala Jurusan Teknik Informatika. FTI, UPN “Veteran” Jawa Timur.

4. IR R Purnomo Edi Sasongko dan Syurfah Ayu Ithhriah S.kom selaku pembimbing, yang telah sabar dan arif dalam membimbing dan memberikan nasehat kepada kami.

5. Firza Prima Aditiawan, S.Kom selaku PIA Jurusan Teknik Informatika yang telah membantu saya.

6. Kedua orang tua saya masing-masing, ibu yang banyak memberikan Doa, Kasih Sayang, Cinta, Kesabaran sejak kami dalam kandungan serta bimbingan, dan semangat sampai saya menjadi sekarang ini, terima kasih banyak untuk semuanya dan terima kasih karena selalu menjadi orang tua dan teman yang baik buat saya. Kepada Ayah yang selalu men-support saya agar selalu bersemangat dan meraih cita-cita.. terima kasih Ayah semangatmu akan membuahkan hasil untuk masa depan saya.

(4)

iii

9. Buat bapak Muhammad Faizal S.kom sekeluarga yang telah berkenan memfasilitasi dalam pelaksanan skripsi saya ini

10.Buat Teman – teman KoLU yang menyediakan resource tiada henti, sapi, luhur, bli jovi, faizal, fajar, zulfi, arda, rendy dll yang tidak bisa saya sebutkan satu persatu semangat dan hiburan, keep open source guys.

Selesainya Tugas Akhir ini merupakan kebahagiaan tersendiri bagi penulis. Penulis menyadari bahwa dalam penyusunan Tugas Akhir ini masih banyak terdapat kekurangan yang harus diperbarui. Untuk itu penulis mengharapkan saran dan kritik demi kesempurnaan Tugas Akhir ini.

Demikianlah laporan ini disusun semoga bermanfaat, sekian dan terima kasih.

Surabaya, 15 Juni 2012

(5)

iv

ABSTRAK . ... i

KATA PENGANTAR ... ii

DAFTAR ISI ... iv

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... x

BAB I : PENDAHULUAN 1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 3

1.3. Batasan Masalah ... 3

1.4 Tujuan ... 4

1.5 Manfaat ... 4

1.6 Metodologi Penelitian ... 5

1.7 Sistematika Penulisan ... 6

BAB II : TINJAUAN PUSTAKA 2.1. Profile sembilanmedia.com ... 8

2.2. Profil Android ... 9

2.2.1 Sejarah Sistem Operasi Android ... 9

(6)

v

2.3 Eclipse ... 13

2.4 Android Development Dengan Eclipse ... 15

2.5 Unified Modelling Language (UML) ... 22

2.6 PHP ... 23

2.7 Domain Dan Hosting ... 24

2.7.1 Domain ... 24

2.7.2 Hosting ... 25

2.8 WHMCS ... 25

BAB III : ANALISIS DAN PERANCANGAN 3.1 Analisis dan Konsep Perancangan Program ... 27

3.2 Analisis Kebutuhan ... 28

3.2.1 Identifikasi Kebutuhan pendukung ... 28

3.2.2 Kebutuhan Data ... 29

3.3 Model Waterfall ... 30

3.4 Perancangan Aplikasi Dalam UML ... 35

3.4.1 Use Case Diagram ... 35

3.4.2 Activity Diagram ... 37

(7)

vi

4.1 Lingkungan Implementasi ... 42

4.2 Implementasi Data ... 43

4.3 Implementasi Antar Muka ... 43

4.3.1 Menu Utama Aplikasi Dohose ... 44

4.3.2 Halaman Domain Order ... 44

4.3.3 Halaman Contact Form ... 45

4.3.4 Menu Hosting Order ... 46

4.3.5 Form Confirmation ... 47

4.3.6 Halaman Check Refund ... 48

4.3.7 Form Pricing Dohose ... 49

BAB V : UJICOBA DAN EVALUASI 5.1 Lingkungan Uji Coba ... 50

5.2 Skenario Ujicoba ... 50

5.3 Pelaksanaan Uji Coba ... 51

5.3.1 Uji Coba Instalasi ... 51

5.3.2 Uji Coba Masuk Menu ... 52

5.3.3 Uji Coba Proses Order Domain ... 52

(8)

vii

5.4 Evaluasi ... 56

BAB VI : PENUTUP

6.1 Kesimpulan ... 57

6.2 Saran ... 57

(9)

1 1.1. Latar Belakang

Perkembangan ilmu pengetahuan khususnya teknologi informasi yang begitu

pesat dewasa ini, telah memberikan dampak yang cukup signifikan dalam

aspek-aspek kehidupan manusia. Meningkatnya popularitas internet dan World Wide Web

pada tahun 1990-an, telah membawa era baru dalam penyampaian informasi, dimana

internet telah menjadi media publikasi yang sangat populer. Seseorang dapat dengan

mudahnya mempublikasikan atau mengakses suatu informasi dalam kurun waktu

yang tidak terbatas.

Untuk bisa mengunggah layanan informasi kita ke dunia internet diperlukan

adanya domain dan hosting. Penyedia jasa domain dan hosting dinegara kita sudah

sangat menjamur. Sebuah perusahaan hosting provider menggunakan berbagai

macam perangkat lunak untuk mempermudah control mereka terhadap jasa yang akan

diberikan.

Salah satu teknologi yang saat ini sedang berkembang pesat dan dapat

mempermudah kegiatan tersebut adalah munculnya teknologi smartphone Android.

Sistem Operasi Android sendiri mencakup banyak lingkup misalkan Android 1.5

(Cup Cake) SDK, Android 1.6 (Donut) SDK, Android 2.0/2.1 (Eclair) SDK, Android

(10)

Android adalah sistem operasi untuk telepon seluler yang berbasis Linux.

Android menyediakan platform terbuka bagi para pengembang buat menciptakan

aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya,

Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak

untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset

Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan

telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan

Nvidia. Pada saat perilisan perdana Android, 5 November 2007, Android bersama

Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada

perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi

Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Di

dunia ini terdapat dua jenis distributor sistem operasi Android. Pertama yang

mendapat dukungan penuh dari Google atau Google Mail Services (GMS) dan kedua.

adalah yang benar–benar bebas distribusinya tanpa dukungan langsung Google atau

dikenal sebagai Open Handset Distribution (OHD).

Dengan berpegang pada fakta diatas maka akan dilakukan pengembangan dan

mulai serius dalam mengoptimalkan sistem operasi Android dalam manajemen

penjualan domain dan hosting pada situs sembilanmedia.com. Dan akan membangun

suatu aplikasi yang dirancang untuk menambah aplikasi sistem pada smartphone

Android.

Harapan yang ada adalah aplikasi tersebut dapat diimplentasikan dan dapat

memudahkan semua kegiatan penjualan domain dan hosting pada situs

(11)

reseller untuk meningkatkan penjualan. Dan dapat memberikan keuntungan tersendiri

baik bagi reseller maupun penyedia jasa layanan tersebut.

1.2. Perumusan Masalah

Secara umum dalam melakukan pembelian domain dan hosting para

pelanggan harus membuka situs penyedia jasa tersebut dan melakukan pendaftaran

serta melakukan order baik domain maupun hostingnya pada form yang telah

disediakan.

Berdasarkan masalah tersebut maka dapat dirumuskan suatu masalah yang

akan dibahas dalam Tugas Akhir ini adalah :

“Bagaimana mengimplementasikan sistem pembelian domain dan hosting

(billing) menggunakan Sistem Operasi Android”

1.3. Batasan Masalah

Batasan permasalahan dalam pelaksanaan Tugas Akhir ini adalah sebagai

berikut :

1) aplikasi yang dibangun adalah aplikasi billing (DOHOSE) menggunakan

Sistem Operasi Android,

2) aplikasi akan dibangun menggunakan eclipse dan diuji pada hanheld

Android,

3) hanya digunakan oleh satu user,

(12)

1.4. Tujuan

Tujuan yang akan dicapai dari Tugas Akhir ini adalah :

“Membuat aplikasi pembelian domain dan hosting (billing) menggunakan

Sistem Operasi Android”

1.5. Manfaat

Aplikasi ini diharapkan akan dapat dimanfaatkan untuk:

1) Memberikan kemudahan dalam melakukan pembelian domain dan hosting

melalui layanan mobile, sehingga dapat diakses dimana saja dan kapan

saja.

2) Mempermudah member dalam melakukan promosi domain dan hosting

dengan pembelian secara langsung dan mampu melihat hasil perolehan

komisi atas pembelian yang telah dilakukan.

3) Meningkatkan publikasi serta tingkat penjualan.

1.6. Metodologi Penelitian

Metode adalah suatu cara atau teknik yang sistematik untuk mengerjakan atau

menyelesaikan sesuatu. Adapun metodologi penelitian yang digunakan untuk

menyelesaikan berbagai permasalahan yang ditemukan adalah :

1) Studi Kepustakaan

Merupakan jenis metode yang dilakukan dengan mengumpulkan data yang

(13)

cara membaca buku-buku, makalah, bahan kuliah dan membaca

bahan-bahan sumber referensi lainnya.

2) Studi Lapangan

Merupakan metode yang dilakukan secara langsung dengan cara survey ke

lapangan yang merupakan sumber untuk memperoleh data sesuai dengan

kebutuhan.

3) Studi Literatur

Merupakan metode yang dilakukan dengan mengunjungi dan mempelajari

sistem operasi android atau situs-situs yang berhubungan dengan Tugas

Akhir dengan mengunjungi website-website yang menyediakan tutorial

mengenai bahasa pemrograman yang akan digunakan.

4) Wawancara,

Merupakan proses tanya jawab langsung kepada pengguna Smartphone

Android. Tujuannya agar sistem yang dibuat ini sedapat mungkin memenuhi

harapan yang diinginkan.

5) Uji Coba dan Evaluasi Hasil

Pada tahap ini dilakukan uji coba dan analisis serta dilakukan evaluasi

kelebihan dan kekurangan terhadap perangkat lunak yang telah di buat.

6) Dokumentasi

Pada tahap terakhir ini disusun buku sebagai dokumentasi dari pelaksanaan

tugas akhir yang berisi konsep penunjang, perancangan perangkat lunak,

pembuatan perangkat lunak, dokumentasi dari uji coba dan pada bagian

(14)

1.7. Sistematika Penulisan

Untuk mempermudah penulisan tugas akgir ini, dapat dibuat suatu sistematika

penulisan yang terdiri dari :

BAB I PENDAHULUAN

Pada bab ini diuraikan secara ringkas pembahasan tentang latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat, metodologi penelitian skripsi, dan sistematika penulisan.

BAB II TINJAUAN PUSTAKA

Bab ini berisikan tentang teoritis mengenai pengertian-pengertian metode penyusunan data serta mengenai bahasa pemrograman yang digunakan.

BAB III ANALISIS DAN PERANCANGAN APLIKASI

Pada bab ini, akan dibahas mengenai system yang akan di analisa dan yang akan dirancang antara lain analisa permasalahan, perancangan system, serta rancangan antarmuka system yang akan dibuat.

BAB IV IMPLEMENTASI SISTEM

(15)

BAB V UJI COBA DAN EVALUASI

Pada bab kelima berisi penjelasan lingkungan uji coba aplikasi, pelaksanaan uji coba dan evaluasi dari hasil uji coba yang telah dilakukan untuk kelayakan pemakaian aplikasi

BAB VI KESIMPULAN DAN SARAN

Pada bab keenam berisi kesimpulan dan saran untuk pengembangan aplikasi lebih lanjut dalam upaya memperbaiki kelemahan pada aplikasi guna untuk mendapatkan hasil kinerja aplikasi yang lebih baik.

LAMPIRAN

(16)

8

TINJ AUAN PUSTAKA

2.1. Pr ofil Sembilanmedia.com

Sembilan Media Nusantara (SMN) didirikan pada awal tahun 2010

merupakan usaha yang bergerak dalam bidang pengembang software dan

menyediakan Solusi berbasis IT yang inovatif dan terintegrasi. SMN - The Best

Choice For Your IT Solution ditangani oleh tenaga - tenaga ahli profesional muda

yang sudah berpengalaman didalam pembuatan berbagai macam software baik secara

dekstop aplikasi maupun website aplikasi.

Sembilan Media Nusantara memberikan layanan jasa dalam bidang

networking pula yang berupa network instalation, infrastruktur dan juga network

maintenance untuk memonitoring system kerja dalam network atau jaringan dalam

perusahaan anda.

Sembilan Media Nusantara juga menghadirkan solusi untuk web hosting

dengan berbagai macam pilihan paket anda dapat mengatur strategi untuk menyimpan

data file website, Sembilan Media Nusantara juga menghadirkan solusi untuk

registrasi domain, transfer domain dan memberikan hak akses penuh terhadap control

domain anda untuk memanage domain anda (melakukan perubahan nameserver,

registrasi nameservice, merubah detil kontak, mengatur url frame atau redirect, dll)..

Berbagai macam product dan service yang di hadirkan dapat mempermudah dan

(17)

2.2. Pr ofil Android

Android adalah sistem operasi untuk telepon seluler yang berbasis Linux.

Android menyediakan platform terbuka bagi para pengembang buat menciptakan

aplikasi mereka sendiri untuk digunakan oleh bermacam peranti bergerak. Awalnya,

Google Inc. membeli Android Inc., pendatang baru yang membuat peranti lunak

untuk ponsel. Kemudian untuk mengembangkan Android, dibentuklah Open Handset

Alliance, konsorsium dari 34 perusahaan peranti keras, peranti lunak, dan

telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan

Nvidia.

2.2.1. Sejarah Sistem Operasi Andr oid

Pada saat perilisan perdana Android, 5 November 2007, Android bersama

Open Handset Alliance menyatakan mendukung pengembangan standar terbuka pada

perangkat seluler. Di lain pihak, Google merilis kode–kode Android di bawah lisensi

Apache, sebuah lisensi perangkat lunak dan standar terbuka perangkat seluler. Di

dunia ini terdapat dua jenis distributor sistem operasi Android.

Pertama yang mendapat dukungan penuh dari Google atau Google Mail

Services (GMS) dan kedua adalah yang benar–benar bebas distribusinya tanpa

dukungan langsung Google atau dikenal sebagai Open Handset Distribution

(OHD).(Arif Nurhadi,2010)

2.2.3. Struktur Android

Awalnya Android dibuat oleh perusahaan perangkat lunak Android, Inc yang

lantas dibeli oleh Google. Android kemudian diadopsi oleh Open Handset Alliance

(18)

menggunakan versi modifikasi dari kernel Linux versi 2.6. Sistem Android

memungkinkan developer membangan aplikasi sendiri dengan menggunakan bahasa

pemrograman Java. Disamping itu Android juga menyediakan tools dan APIs yang

dibutuhkan selama pembuatan program. Android juga dapat mengontrol peralatan

bergerak seperti ponsel yang menjalankan aplikasi tersebut melalui Java libraries

yang dikembangkan oleh Google.

Sebagai bagian dari upaya mendorong terciptanya standar terbuka (open

standards) untuk teknologi perangkat bergerak, Google merilis sebagian besar dari

kode-kode program Android dibawah Apache License, sebuah model lisensi untuk

open source. Dengan lisensi Apache, vendor yang menggunakan platform Android

(misalnya perusahaan pembuat ponsel) dapat menambahkan ekstensi atau program

tambahan yang bersifat proprietary tanpa perlu mendaftarkan ekstensi tersebut ke

komunitas open source.

Distribusi Android dimulai pada 5 November 2007, ditandai dengan pendirian

Open Handset Alliance, sebuah aliansi bersama atau konsorsium yang terdiri atas 65

perusahaan pembuat perangkat keras, software, dan telekomunikasi seperti Broadcom

Corporation, Google, HTC, Intel.

Pada 9 Desember 2008 aliansi tersebut mengumumkan tambahan 14 anggota

baru untuk mendukung proyek Android, yakni ARM Holdings, Atheros

Communications, Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson,

Toshiba, dan Vodafone Group Plc. Dengan menyediakan open development platform,

Android menawarkan kepada para pengembang untuk membuat aplikasi-aplikasi

(19)

juga digunakan oleh aplikasi inti. Selain itu mereka juga bebas untuk megoptimalkan

penggunaan hardware, megakses informasi lokasi, menjalankan layanan sendiri,

mengatur alarm, dan fungsi-fungsi lain yang tak terhitung banyaknya. (Arif

Nurhadi,2010).

2.2.4. Fitur Android

Sebagai platform terpadu, Android memiliki fitur-fitur teknis yang dibutuhkan

untuk menyusun sebuah sistem operasi bergerak (mobile OS), meliputi:

a) Application framework: memungkinkan reuse dan replacement of

components

b) Dalvik virtual machine: dioptimalkan untuk mobile devices

c) Integrated browser: menggunakan open source WebKit engine

d) Optimized graphics: menggunakan custom 2D graphics library; 3D graphics

berdasar pada spesifikasi OpenGL ES 1.0 (akselerasi hardware bersifat

optional)

e) SQLite: untuk mengelola database/structured data storage

f) Media support: untuk audio, video, dan still image formats (MPEG4, H.264,

MP3, AAC, AMR, JPG, PNG, GIF)

g) GSM Telephony (hardware dependent)

h) Bluetooth, EDGE, 3G, dan WiFi (hardware dependent)

i) Camera, GPS, compass, dan accelerometer (hardware dependent)

j) Rich development environment, meliputi device emulator, tools untuk

(20)

Selain fitur diatas, Android dibundel lengkap dengan satu set core

applications (aplikasi inti) yang meliputi email client, SMS program, kalender, peta

(maps), browser, kontak, dan sebagainya. Semua aplikasi tersebut ditulis dalam

bahasa pemrograman Java (Nazruddin, 2010).

2.2.5. Ver si Andr oid

Sejak rilis pertamanya, Android telah mengalami beberapa kali mengalami

updating. Berikut adalah versi awal hingga versi terakhir (stabil) dari Android:

a) Android 1.5 (Cup Cake) SDK

Berbasis pada Linux Kernel 2.6.27. Diluncurkan pada 30 April 2009. Cup Cake

antara lain mendukung fungsi-fungsi seperti merekam dan melihat video pada

camcorder mode, mengupload video ke YouTube dan foto ke Picasa langsung dari

ponsel, dan Bluetooth A2DP support.

b) Android 1.6 (Donut) SDK

Pada 15 September dengan berbasis Linux Kernel 2.6.29, Donut menambah

kemampuan Android seperti support untuk resolusi layar WVGA, antarmuka kamera,

camcorder, dan gallery yang terintegrasi, dukungan untuk CDMA/EVDO. 802.1x

(WiFi), VPN, Gestures, dan Text-to-speech engine, serta peningkatan kecepatan

untuk kamera dan pencarian.

c) Android 2.0/2.1 (Eclair) SDK

Android 2.0 Eclair dirilis pada 26 Oktober 2009. Update dari versi sebelumnya

meliputi peningkatan hardware speed, dukungan untuk lebih banyak ukuran dan

resolusi layar, tampilan browser yang baru dan dukungan untuk HTML5, Google

(21)

Exchange, Blutooth 2.1, Live Wallpapers, dan pengayaan virtual keyboard. Android

2.1 diluncurkan pada 3 Desember 2009 dengan tetap menggunakan codename Eclair.

Keduanya menggnuakan Linux Kernel 2.6.29 (Nazruddin, 2010).

2.3. Eclipse

Eclipse adalah sebuah IDE (Integrated Development Environment) untuk

mengembangkan perangkat lunak dan dapat dijalankan di semua platform (

platform-independent). Berikut ini adalah sifat dari Eclipse:

a) Multi-platfor m: Target sistem operasi Eclipse adalah Microsoft Windows,

Linux, Solaris, AIX, HP-UX dan Mac OS X.

b) Multi-language: Eclipse dikembangkan dengan bahasa pemrograman Java,

akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa

pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain

sebagainya.

c) Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun

bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak,

seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain

sebagainya.

Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan

open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat

lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah

kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang

dinamakan plug-in. Eclipse awalnya dikembangkan oleh IBM untuk menggantikan

(22)

tanggal 5 November 2001, yang menginvestasikan sebanyak US$ 40 juta untuk

pengembangannya. Semenjak itu konsursium Eclipse Foundation mengambil alih

untuk pengembangan Eclipse lebih lanjut dan pengaturan organisasinya.

Eclipse menggunakan EPL (Eclipse Public License), yaitu lisensi yang

memungkinkan organisasi untuk menjadikan Eclipse sebagai produk komersialnya,

dan pada saat yang sama meminta orang yang melakukan perubahan untuk

mengkontribusikan hasilnya kembali kepada komunitas. (Mindit,2011).

Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang

mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah

fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse yang

dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang

membentuk RCP:

1) Core platform

2) OSGi

3) SWT (Standard Widget Toolkit)

4) JFace

5) Eclipse Workbench

Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development

Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program

Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in

baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman

(23)

Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible)

untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk

mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam

keperluan, cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin

mengembangkan program C/C++ terdapat plug-in CDT (C/C++ Development Tools).

Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse,

plug-in UML2 tersedia untuk membuat diagram UML. Dengan menggunakan PDE

setiap orang bisa membuat plug-in sesuai dengan keinginannya. Salah satu situs yang

menawarkan plug-in secara gratis seperti Eclipse downloads by project.

Sejak tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran Eclipse

secara rutin dan simultan yang dikenal dengan nama Simultaneous Release. Setiap

versi peluncuran terdiri dari Eclipse Platform dan juga sejumlah proyek yang terlibat

dalam proyek Eclipse. Tujuan dari sistem ini adalah untuk menyediakan distribusi

Eclipse dengan fitur-fitur dan versi yang terstandarisasi. Hal ini juga dimaksudkan

untuk mempermudah deployment dan maintenance untuk sistem enterprise, serta

untuk kenyamanan (Herry Finley,2012).

2.4. Android Development dengan Eclipse

Perkembangan teknologi mobile termasuk yang paling cepat, ditambah dengan

prospek bisnis dan lifestyle menjadikan aplikasi berbasis mobile sangat menarik

untuk dikembangkan oleh setiap developer. Semakin maraknya teknologi

smartphone yang dipelopori oleh boomingnya Blackberry, Iphone, dan terakhir

diwarnai dengan adanya Google Android menjadikan mobile application sesuatu

(24)

menjadi raja di dunia mobile programming (karena mayoritas device yang telah

support) timbul banyak permasalahan yang dialami oleh para mobile developer

karena terbatasnya resource dan kemampuan yang dimiliki, Namun teknologi

smartphone memberikan fleksibilitas yang sangat tinggi bagi developer untuk

memaksimalkan resource yang dimiliki oleh device.

Diantara teknologi smartphone yang populer saat ini, android menjadi salah

satu pemain serius di masa depan karena sifatnya yang open source sehingga

mendapat dukungan dari komunitas. Android memanfaatkan teknologi bahasa

pemrograman Java sebagai core dalam pengembangan aplikasi, sehingga tampaknya

Java menjadi prerequisites bagi programmer yang ingin bermain-main dengan

Android. Untungnya android juga memberikan support kepada 2 IDE (integrated

development environment) yang paling populer di dunia Java, yaitu eclipse dan

netbeans. Cara setup development menggunakan netbeans pastikan sudah memiliki

SDK android, yang bisa didapat di http://developer.android.com/sdk/index.html .

Untuk dapat memulai lengkapi langkah yang diperlukan untuk melakukan instalasi

SDK tersebut, hal ini terutama karena SDK tersebut belum berisi semua repository

file yang diperlukan, diantaranya untuk menambahkan android platform dan

komponen lain yang diperlukan. Pada windows, hal ini dapat dilakukan dengan

(25)

Instalasi dan Setting Android SDK, J DK, dan Eclipse

Beberapa persiapan sebelum kita develop aplikasi android. Unduh aplikasi

Eclipse pada www.eclipse.org lalu ekstrak kedalam C:\eclipse. Kemudian untuk

mendapatkan Android SDK versi terakhir dapat mengunduh langsung dari website

resmi Android.

Setelah mengunduh, ekstrak berkas Android yang di unduh tadi ke :

C:\eclipse\android-sdk-windows

Eclipse tidak membutuhkan instalasi, namun sebelum dapat menggunakan

pastikan pastikan komputer Anda telah terinstal Java SE Development Kit (JDK)

yang bisa diunduh di alamat http://www.oracle.com/technetwork/java/javase/

downloads/index.html. Ukuran file installer JDK tersebut kurang lebih 78 MB.

Selanjutnya yaitu melakukan instalasi plugin ADT Eclipse. Jalankan eclipse.exe

pastikan komputer telah terkoneksi dengan internet. Klik menu Help -> Install New

Software. Klik Add pada sudut kanan atas dialog. Pada dialog Add repository,

masukkan name "ADT Plugin", lalu masukkan URL

https://dl-ssl.google.com/android/eclipse/. Klik OK

(26)

Untuk melakukan update library Android eksekusi file SDKManager.exe,

kemudian klik button Update All untuk melakukan update library secara otomatis

hingga selesai. Proses ini akan memakan waktu lama apabila kita ingin memasang

semua library untuk berbagai jenis tipe Android OS, karena jika semuanya terinstal

kurang lebih akan memakan 2GB harddrive. Selanjutnya adalah menghubungkan

eclipse dengan Android SDK. Buka Eclipse, kemudian masuk ke menu Window ->

Preferences, lalu klik Tab Android Pada dialog tersebut klik button Browse,

kemudian arahkan ke path/lokasi folder android-sdk-windows. Klik Apply, maka akan

muncul beberapa macam library yang siap digunakan, seperti tampak pada gambar

berikut.

(27)

Emulator

Selesai memasang paket yang dibutuhkan, sudah bisa membuat emulator di

menu “Window->AVD Manager”. Disini kita akan membuat “Android Virtual

Device” atau singkatnya “AVD”,

Gambar 2.3 Membuat AVD baru

Kemudian klik New untuk membuat AVD baru.

Gambar 2.4 Field Membuat AVD

(28)

Untuk mencoba AVD di emulator yang baru saja dibuat, pilih pada nama

AVD yang telah kita buat lalu klik Start kemudian launch

Gambar 2.5 Emulator Android

ECLIPSE

Untuk membuat aplikasi Android menggunakan Eclipse Anda perlu

menyatukan library Android di Eclipse, seperti yang telah dijelaskan sebelumnya

kemudian kita bias memulai dengan memilih menu File->New->Other->Android

Project.

(29)

Isi dengan nama project yang diinginkan kemudian klik Next.

Selanjutnya kita akan diminta untuk memilih platform Android yang akan kita

gunakan.

Gambar 2.7 pilih platform

Kemudian pilih Next, dan mulai mengisi detail project kita

(30)

Dan tekan tombol “Finish”. Setelah itu sudah bisa membuat aplikasi untuk

Android.(Ivan Michael Siregar, 2011)

2.5. Unified Modelling Language

Unified Modelling Language (UML) adalah sebuah "bahasa" yang telah

menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan

sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model

sebuah sistem. Dengan menggunakan UML kita dapat membuat model untuk semua

jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras,

sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun

(Dharwiyanti, 2003).

UML menyediakan diagram – diagram yang sangat kaya dan dapat diperluas

sesuai kebutuhan kita. Diagram adalah representasi secara grafis dari elemen-elemen

tertentu beserta hubungan-hubungannya. Diagram menjadi sangat penting, karena

diagram menyediakan representasi secara grafis dari sistem (atau bagiannya) dan

representasi grafis sangat mempermudah pemahaman terhadap sistem (Hariyanto,

2004).

Use CaseDiagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari

sebuah sistem. Yang ditekankan adalah “apa” yang diperbuat sistem, dan bukan

“bagaimana”. Sebuah use case merepresentasikan sebuah interaksi antara aktor

dengan sistem. Diagram ini sangat penting untuk mengorganisasi dan memodelkan

(31)

Tabel 2.1 Deskripsi Use Case (Nugroho, 2005) Deskripsi Use Case

Actor Aktor adalah pengguna sistem dan digambarkan seperti di samping. Peran pengguna tertulis di bawah

ikon. Pelaku tidak terbatas pada manusia. Jika suatu sistem berkomunikasi dengan aplikasi lain, dan akan memberikan masukan atau keluaran, maka aplikasi tersebut juga dapat dianggap sebagai actor.

Actor Name

Use Case Use Case (misalnya Daftar Mobil, Hapus Pengguna). adalah fungsi yang disediakan oleh sistem, Use Case digambarkan dengan elips. Nama use case

ditulis di bawah elips. Use Case Name

Association Asosiasi digunakan untuk menghubungkan Aktor dengan Use Case, dan menunjukkan bahwa sebuah actor berpartisipasi di dalam beberapa form use case. Asosiasi yang digambarkan oleh tanda panah menghubungkan aktor dan use case.

2.6. PHP

Menurut Rudyanto (2005), Jika kita ingin menggunakan bahasa pemrograman

web yang gratis, PHP adalah jawaban yang tepat. Setelah itu dijelaskan, “PHP (dulu

Personal Home Page, sekarang PHP: Hypertext Preprocessor) merupakan program

yang dikembangkan secara bersama oleh para programmer dari seluruh dunia yang

menekuni dunia open-source”.

Berbeda dengan bahasa pemrograman Web seperti ASP (Active Server Page)

yang merupakan scripting yang dikembangkan oleh Microsoft, dimana sekarang telah

berkembang menjadi ASP.Net. tetapi sama seperti produk Microsoft yang lainnya

yang berorientasi komersialdan harus membayar lisensi untuk menggunakan bahasa

(32)

Rudyanto (2005) melanjutkan, Sebagai sebuah bahasa pemrograman

server-side, PHP juga memiliki keunggulan seperti :

a. Source atau script tidak dapat dilihat dengan menggunakan view HTML

source, yang ada pada web browser.

b. Dapat memanfaatkan sumber-sumber aplikasi yang dimiliki oleh server,

seperti misalnya untuk keperluan database connection.

c. Dapat melakukan semua aplikasi program CGI, seperti mengambil nilai form,

menghasilkan halaman web yang dinamis, mengirim dan menerima cookie.

d. Dapat dikenal oleh web browser apapun, karena tidak membutuhkan

kompatibilitas web browser tertentu.

2.7. Domain dan Hosting

Domain dan hosting merupakan satu kesatuan dalam pembangunan sebuah

website. Dengan adanya domain dan hosting website yang merupakan halaman

informasi yang disediakan melalui jalur internet bisa diakses di seluruh dunia selama

terkoneksi dengan jaringan internet.

2.7.1. Domain

Nama domain (domain name) adalah nama unik yang diberikan untuk

mengidentifikasi nama server komputer seperti web server atau email server di

jaringan komputer ataupun internet. Nama domain berfungsi untuk mempermudah

pengguna di internet pada saat melakukan akses ke server, selain juga dipakai untuk

mengingat nama server yang dikunjungi tanpa harus mengenal deretan angka yang

(33)

kesatuan dari sebuah situs web seperti contohnya "wikipedia.org". Nama domain

kadang-kadang disebut pula dengan istilah URL, atau alamat website.(Astrid, 2006)

2.7.2. Hosting

Pengertian hosting dapat berarti layanan internet untuk penempatan

informasi-informasi baik untuk halaman-halaman web, penyimpanan email, database, dll. Untuk

sederhananya, layanan ini sebagai solusi untuk menempatkan halaman-halaman web

anda agar selalu online. Dengan demikian, kita tidak perlu menyediakan satu

komputer khusus yang selalu online di kantor atau di rumah anda, melainkan cukup

dengan bekerjasama dengan penyedia jasa hosting ini.

Atau layanan untuk penempatan halaman-halaman web di internet di mesin

komputer yang selalu terhubung dengan internet, umumnya layanan ini disediakan

oleh penyelenggara jasa internet atau Internet Presence Provider.

Hosting atau biasa disebut sebagai web hosting adalah layanan penyewaan

ruang simpan data (space) yang digunakan untuk menyimpan data - data website agar

halaman website tersebut bisa diakses dari mana saja. Data web tersebut meliputi file

- file html, php script, cgi script, css, image, database, dan file lain yang dibutuhkan

untuk menampilkan halaman web. (Astrid, 2006)

2.8. WHMCS (Web Hosting Manager Complete Solution)

WHMCS adalah sebuah all-in-one client management system yaitu sebuah

aplikasi berbasis web untuk pengelolaan member dan juga transaksi dalam sebuah

(34)

automation system yang memberikan kendali penuh dalam bisnis persewaan domain

dan hosting. WHMCS juga sudah terintegrasi dengan berbagai macam modul API

yang telah banyak dipakai oleh para developer baik itu dari sistem pembayaran

ataupun pengelolaan server berbasis cpanel dan sebagainya. WHMCS membantu

meringankan kinerja para pengelola server sehingga tidak terlalu dipusingkan dengan

perintah-perintah dasar pada suatu sistem operasi. Kemudian WHMCS juga sudah

melakukan otomatisasi pada sistem pembayaran dan pengelolan dukungan (support)

sehingga client tidak perlu bingung dalam melakukan pembelian domain dan

(35)

27

3.1 Analisis dan Konsep Per ancangan Progr am

Analisis adalah penguraian dari suatu masalah atau objek yang akhirnya menghasilkan suatu kesimpulan, hal ini dimaksudkan untuk mengidentifikasi dan mengevaluasi masalah-masalah atau objek.

Analisis terhadap pembuatan program aplikasi ini dimaksudkan untuk mengetahui proses pembuatan program aplikasi sistem pembelian domain dan hosting sehingga siap dipublikasikan ke smartphone. Maka dari diberikan teknik dasar dalam perancangan program aplikasi billing (DOHOSE) secara umum, yaitu :

a) Mengetahui tools yang digunakan dalam sistem penjualan domain dan hosting

b) Menentukan bahasa pemrograman aplikasi yang akan digunakan.

c) Menentukan fasilitas tambahan yang akan diberikan pada aplikasi sistem penjualan domain dan hosting.

d) Jika fasilitas tambahan membutuhkan database, maka tentukan database

yang akan digunakan, sesuaikan dengan pemrograman aplikasi yang akan digunakan.

(36)

3.2 Analisis Kebutuhan

Mencakup hal-hal yang dubutuhkan yang kesemuanya meliputi kebutuhan-kebutuhan pendukung pada pembuatan sistem hingga selesai yaitu berfokus pada alat yang dibutuhkan baik perangkat keras maupun lunak dan kebutuhan data yang meliputi data-data yang dibutuhkan yang berhubungan dengan pengguna sistem.

3.2.1 Identifikasi Kebutuhan Pendukung

Kebutuhan disini meliputi alat-alat yang dapat mendukung dalam merancang dan pembuatan aplikasi billing tersebut.

Software dan Hardware yang dibutuhkan antara lain : a) Rational Rose (untuk merancang UML) b) MySQL (database)

c) Processor minimum 200 MHz (sebaiknya lebih) d) RAM minimum 2GB atau lebih

e) Cache memory 512 KB atau lebih f) Harddisk 360 GB.

(37)

3.2.2 Kebutuhan Data

Dari hasil surfey yang dilakukan penulis maka dapat didefinisikan beberapa kebutuhan data atau requirement yang diperlukan dalam pembuatan aplikasi ini dan itu meliputi :

Tabel 3.1. Data Requirement

DATA KAMUS DATA

User = Orang yang melakukan order. Input Domain = Nama domain yang akan di order.

Input Kontak = Data pemilik domain atau account pemilik.

Input Hosting = Memilih paket hosting yang tersedia sesuai dengan kebutuhan

Refund = Laporan hasil affiliasi atau bonus dari penjualan bulan lalu.

Kesemua data-data tersebut ( lihat tabel data requirement) tersimpan dalam tabel-tabel yang terangkum dalam software WHMCS, jadi setiap data yang dimasukkan oleh user tersebut secara otomatis akan tersimpan pada database pusat WHMCS.

(38)

3.3 Model Water fall

Nama model ini sebenarnya adalah “Linear Sequential Model”. Model ini sering disebut dengan “classic life cycle” atau model waterfall. Model ini adalah model yang muncul pertama kali yaitu sekitar tahun 1970 sehingga sering dianggap kuno, tetapi merupakan model yang paling banyak dipakai didalam

Software Engineering (SE). Model ini melakukan pendekatan secara sistematis dan urut mulai dari level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing / verification, dan maintenance. Disebut dengan waterfall karena tahap demi tahap yang dilalui harus menunggu selesainya tahap sebelumnya dan berjalan berurutan. Sebagai contoh tahap desain harus menunggu selesainya tahap sebelumnya yaitu tahap requirement. Secara umum tahapan pada model waterfall dapat dilihat pada gambar berikut :

Gambar 3.1 Model Water fall

(39)

Berikut adalah penjelasan dari tahap-tahap yang dilakukan di dalam model ini menurut Pressman.

1) System / Information Engineering and Modeling

Permodelan ini diawali dengan mencari kebutuhan dari keseluruhan sistem yang akan diaplikasikan ke dalam bentuk software. Hal ini sangat penting, mengingat software harus dapat berinteraksi dengan elemen-elemen yang lain seperti hardware, database, dsb. Tahap ini sering disebut dengan Project Definition.

2) Software Requirements Analysis

Proses pencarian kebutuhan diintensifkan dan difokuskan pada software. Untuk mengetahui sifat dari program yang akan dibuat, maka para software engineer harus mengerti tentang domain informasi dari software, misalnya fungsi yang dibutuhkan, user interface, dsb. Dari 2 aktivitas tersebut (pencarian kebutuhan sistem dan software) harus didokumentasikan dan ditunjukkan kepada pelanggan.

3) Design

(40)

4) Coding

Untuk dapat dimengerti oleh mesin, dalam hal ini adalah komputer, maka desain tadi harus diubah bentuknya menjadi bentuk yang dapat dimengerti oleh mesin, yaitu ke dalam bahasa pemrograman melalui proses coding. Tahap ini merupakan implementasi dari tahap design yang secara teknis nantinya dikerjakan oleh programmer.

5) Testing / Verification

Sesuatu yang dibuat haruslah diujicobakan. Demikian juga dengan software. Semua fungsi-fungsi software harus diujicobakan, agar software bebas dari error, dan hasilnya harus benar-benar sesuai dengan kebutuhan yang sudah didefinisikan sebelumnya.

6) Maintenance

Pemeliharaan suatu software diperlukan, termasuk di dalamnya adalah pengembangan, karena software yang dibuat tidak selamanya hanya seperti itu. Ketika dijalankan mungkin saja masih ada errors kecil yang tidak ditemukan sebelumnya, atau ada penambahan fitur-fitur yang belum ada pada software tersebut. Pengembangan diperlukan ketika adanya perubahan dari eksternal perusahaan seperti ketika ada pergantian sistem operasi, atau perangkat lainnya.

(41)

dapat berjalan dengan baik dan tanpa masalah. Meskipun seringkali kebutuhan sistem tidak dapat didefinisikan seeksplisit yang diinginkan, tetapi paling tidak, problem pada kebutuhan sistem di awal project lebih ekonomis dalam hal uang (lebih murah), usaha, dan waktu yang terbuang lebih sedikit jika dibandingkan problem yang muncul pada tahap-tahap selanjutnya.

Meskipun demikian, karena model ini melakukan pendekatan secara urut / sequential, maka ketika suatu tahap terhambat, tahap selanjutnya tidak dapat dikerjakan dengan baik dan itu menjadi salah satu kekurangan dari model ini. Selain itu, ada beberapa kekurangan pengaplikasian model ini, antara lain adalah sebagai berikut:

Ketika problem muncul, maka proses berhenti, karena tidak dapat menuju ke tahapan selanjutnya. Bahkan jika kemungkinan problem tersebut muncul akibat kesalahan dari tahapan sebelumnya, maka proses harus membenahi tahapan sebelumnya agar problem ini tidak muncul. Hal-hal seperti ini yang dapat membuang waktu pengerjaan SE.

Karena pendekatannya secara sequential, maka setiap tahap harus menunggu hasil dari tahap sebelumnya. Hal itu tentu membuang waktu yang cukup lama, artinya bagian lain tidak dapat mengerjakan hal lain selain hanya menunggu hasil dari tahap sebelumnya. Oleh karena itu, seringkali model ini berlangsung lama pengerjaannya.

(42)

model proses ini dibutuhkan seseorang yang “multi-skilled”, sehingga minimal dapat membantu pengerjaan untuk tahapan berikutnya.

Menurut saya, tahapan-tahapan model ini sudah cukup baik dalam artian minimal untuk melakukan SE, maka harus ada tahapan-tahapan ini. Tahapan-tahapan ini jugalah yang digunakan oleh model-model yang lain pada umumnya. Ada filosofi yang mengatakan sesuatu yang sukses diciptakan pertama kali, maka akan terus dipakai di dalam pengembangannya. Hal ini juga berlaku pada waterfall model ini. Mungkin dapat dikatakan bahwa inilah standar untuk melakukan SE.

Akan tetapi, yang mungkin menjadi banyak pertimbangan mengenai penggunaan dari model ini adalah metode sequential-nya. Mungkin untuk awal-awal software diciptakan, hal ini tidak menjadi masalah, karena dengan berjalan secara berurutan, maka model ini menjadi mudah dilakukan. Sesuatu yang mudah biasanya hasilnya bagus. Oleh karena itu model ini sangat populer. Akan tetapi, seiring perkembangan software, model ini tentu tidak bisa mengikutinya. Yang menjadi kelemahan adalah pada pengerjaan secara berurutan tadi, seperti yang sudah saya utarakan sebelumnya. Kelemahan-kelemahan yang lain juga sudah saya utarakan di atas, atau bahkan masih ada yang lainnya.

(43)

mengarah kecil bisa menggunakan model ini. Akan tetapi kalau sudah project besar, tampaknya kesulitan jika menggunakan model ini.

3.4 Per ancangan Aplikasi Dalam UML

Perancangan sistem aplikasi billing (DOHOSE) ini dibuat rancangan dengan memnggunakan Unified Modeling Language perancangan UML dibagi menjadi beberapa tahapan sebagai berikut :

a) Use Case Diagram

Berfungsi menggambarkan fungsionalitas yang diharapkan sebuah sistem. Ditunjukkan dengan interaksi antara aktor (entitas manusia/mesin) dan proses yang terjadi dalam system

b) Activity Diagaram

Activity diagrams menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision

yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram

juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi

di-trigger oleh selesainya state sebelumnya (internal processing). 3.4.1 Use Ca se Diagr am

(44)

Domain order

Hosting order

Confirmation

Check refund User

Pricing

diagram dapat digunakan selama proses analis untuk menangkap requirements system. Dan selama tahap design, use case diagram menetapkan perilaku system saat di implementasikan. Penggambaran Use Case Diagram tersebut mempresentasikan perancangan sistem pada aplikasi secara umum yaitu sebuah interaksi antar aktor dan antar sistem pada pengguna aplikasi seperti pada Gambar 3.3.

Gambar 3.2. Pembuatan Use Case Diagram

Seorang aktor merupakan entitas manusia atau mesin yang berinteraksi dengan sistem sehingga dapat mencapai apa yang diharapkan oleh sistem. Aktor tersebut adalah pengguna, beberapa proses sistem yang disebut disini adalah

Domain Order (melakukan pembelian domain oleh pengguna), Hosting Order

(melakukan pembelian hosting oleh pengguna). Aktor dan sistem dihubungkan menurut kebutuhan masing-masing (lihat gambar 3.3).

(45)

dijelaskan secara koprehensif pada tahap UML selanjutnya dalam activity diagram.

3.4.2 Activity Diagram

Tatanan alur beberapa aktivitas dari setiap proses yang ada pada system sehingga hubungan pemakaian antara user dan system terjalin dengan baik (pemrosesan dalam system seperti yang diinginkan), adalah activity diagram ini yang dapat menjelaskan hubungan tersebut. Oleh karena user pemakai system hanya satu user, yaitu hanyalah pengguna saja maka activity diagram yang ada adalah sebagai berikut :

(46)

Gambar 3.3 menunjukkan proses berjalannya aplikasi mulai dari menu utama aplikasi kemudian memilih menu pilihan yang ada yaitu domain order, hosting order, confirmation, check refund, sampai dengan menu pricing

3.5 Rancangan Sistem Menu

Dalam merancang program aplikasi dibuat agar terkesan sederhana dan memudahkan user untuk menggunakan, maka penulis membuat sistem menu 1) Membuka Aplikasi

Proses ini dilakukan untuk memulai aplikasi, terdapat 5 menu yaitu Domain Order, Hosting Order, Confirmation, Check Refund, Pricing. Pada proses yang dilakukan terdapat tiga aktivitas yang menyangkut segala kegiatan user (pengguna) yang ada dan ada hubunganya dengan system, yaitu domain order, hosting order dan check refund. Adapun rancangannya adalah sebagai berikut.

Gambar 3.4 Rancangan Menu Utama 2) Domain Or der

Adalah bagaimana seorang pengguna untuk melakukan pembelian domain. Proses yang tejadi mulai dari memasukkan nama domain yang diinginkan dan kemudian data pembeli sampai dengan pemilihan paket hosting yang diinginkan. Adapun rancangannya adalah sebagai berikut.

Dohose

(47)

Gambar 3.5 Rancangan Menu Domain Order 3) Hosting Order

Adalah bagaimana seorang pengguna untuk melakukan pembelian hosting saja tanpa melakukan pembelian domain. Proses yang terjadi adalah pengisian data pembeli sampai dengan pemilihan paket hosting dan lama sewa hosting. Adapun rancanganya adalah sebagai berikut

Gambar 3.6 Rancangan menu hosting order 4) Confirmation

Adalah bagaimana seorang pengguna untuk melakukan konfirmasi pembayaran terhadap order yang telah dilakukan. Proses yang terjadi adalah

Dohose

domain .com

Check Domain

Ekstensi domain Nama

Domain

Hosting Order

Nama domain

Choose package

Choose cycle Namadomain.com

wado

Monthly

(48)

pengisian data transfer dan no invoice (tagihan). Adapun rancanganya adalah sebagai berikut

Gambar 3.7 Rancangan menu confirmation

5) Check Refund

Adalah bagaimana seorang pengguna untuk melakukan pengecekan terhadap hasil perolehan penjualan yang telah dilakukan. Adapaun rancangannya adalah sebagai berikut.

Gambar 3.8 Rancangan menu check refund

Confirmation Name

Invoice id

Account Bank Name

Email

Destination

Amount

BCA

Send Confirmation

Check Refund For Last Month

(49)

6) Pr icing

Adalah bagaimana seorang pengguna untuk melihat harga yang ada. Adapun rancangannya adalah sebagai berikut dan berbentuk seperti tabel

TLD Min. years Price

.com 1 Rp. 95.000

.net 1 Rp. 95.000

.org 1 Rp. 95.000

.biz 1 Rp. 100.000 .info 1 Rp. 95.000

.us 1 Rp. 105.000

.tv 1 Rp. 320.000

(50)

42

IMPLEMENTASI SISTEM

Pada bab IV ini akan dibahas mengenai implementasi dari rancangan sistem yang telah dibuat pada bab III. Bagian implementasi sistem kali ini meliputi: lingkungan implementasi, implementasi proses, dan implementasi antarmuka.

4.1 Lingkungan Implementa si

Pada bagian ini akan dijelaskan mengenai perangkat keras dan perangkat lunak yang digunakan pada implementasi sistem ini.

Per angkat Ker as :

a) Notebook dengan prosessor Intel Core i5 b) Memori 2 GB

c) Harddisk 500 GB Per angkat Lunak

a) Sistem Operasi Windows 7 b) Dreamweaver CS5

c) Android SDK

d) Java Development Kid (JDK) e) Eclipse

f) Rational Rose

(51)

4.2 Implementasi Data

Pada tahap ini akan dibahas mengenai implementasi data dari perancangan data yang telah dibahas sebelumnya. Dari hasil requiremen data didapat script untuk memanggil dan menginputkan data pada system billing WHMCS yang sudah ada dengan memanfaatkan system API yang dibuat menggunakan php untuk menerima inputan dari user android dan meneruskan ke dalam system billing WHMCS.

4.3 Implementasi Antar Muka

Pada tahap ini akan dijabarkan tentang implementasi antar muka dari aplikasi yang telah dibuat berdasarkan perancangan yang telah dibahas pada Bab III. System ini berfungsi untuk mempermudah pengguna dalam mengelola system pada aplikasi Dohose. Pada system ini terdapat beberapa sub menuutama yaitu :

1) Halaman Utama 2) Menu Utama :

a) Form Domain Order b) Form Hosting Order c) Form Confirmation d) Check Refund e) Pricing

(52)

4.3.1 Menu Utama Aplikasi Dohose

Gambar 4.1 ini merupakan sebuah proses awal masuk ke dalam menu utama.

Gambar 4.1 Form Menu Dohose

Gambar 4.1 menunjukkan tampilan atau halaman utama pada aplikasi Dohose yang meliputi Domain Order, Hosting Order, Confirmation, Check Refund, dan Pricing. User dapat memilih menu sesuai yang diinginkan.

Adapun script untuk menampilkan menu tersebut adalah sebagai berikut :

package org.smn.dohose;

import android.app.AlertDialog; import android.app.ListActivity;

import android.content.DialogInterface; import android.content.Intent;

import android.content.DialogInterface.OnClickListener; import android.os.Bundle;

import android.view.Menu;

import android.view.MenuInflater; import android.view.MenuItem; import android.view.View;

import android.widget.ListView;

public class Main extends ListActivity {

/** Called when the activity is first created. */ public void onCreate(Bundle icicle) {

super.onCreate(icicle);

(53)

String[] listItems = new String[] { "Domain Order", "Hosting Order", "Confirmation", "Check Refund" , "Pricing" }; MyArrayAdapter adapter = new MyArrayAdapter(this, listItems);

setListAdapter(adapter); }

@Override

public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.layout.menu, menu);

menu.findItem(R.id.menu_about).setIcon(android.R.drawable.ic_menu_

public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()) {

public void onDialogAbout() {

AlertDialog.Builder builder = new AlertDialog.Builder(this);

public void onBackPressed() {

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setMessage("Are you sure you want to exit?") .setCancelable(false)

(54)

DialogInterface.OnCli

AlertDialog alert = builder.create(); alert.show();

public void goSendEmail(String email) {

Intent i = new Intent(Intent.ACTION_SEND); i.setType("message/rfc822");

i.putExtra(Intent.EXTRA_EMAIL, new String[] { email.trim() });

protected void onListItemClick(ListView l, View v, int position, long id) {

super.onListItemClick(l, v, position, id); // Get the item that was clicked

Object o = this.getListAdapter().getItem(position); String pilihan = o.toString();

(55)

4.3.2 Halaman Domain Order

Gambar 4.2 ini merupakan tampilan menu domain order yang keluar setelah pengguna menjalankan aplikasi Dohose dan memilih menu Domain Order. Pada halaman ini terdapat satu form untuk nama domain dan pilihan ekstensi domain.

Gambar 4.2. Halaman Domain Order

(56)

Adapun script untuk menampilkan menu tersebut adalah sebagai berikut :

public class ViewOrderDomain extends Activity { static final int DIALOG_LOADING_ID = 0; private EditText txtDomainName;

private Button btnNext; private String url =

"http://api.sembilanmedia.com/whois.php"; private String status,suffix;

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

setContentView(R.layout.domainlayout); txtDomainName = (EditText)

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

//@Override

public void onItemSelected(AdapterView<?>

parentView, View selectedItemView, int position, long id) {

Object item =

parentView.getItemAtPosition(position);

suffix = item.toString();

(57)

//@Override public void

onNothingSelected(AdapterView<?> arg0) {

// TODO Auto-generated method stub }

@SuppressWarnings( { "unchecked" }) public void postRequest() {

Log.d("getRequest", url);

HttpClient client = new DefaultHttpClient(); HttpPost request = new HttpPost(url);

try {

@SuppressWarnings("rawtypes") List post = new ArrayList(1);

post.add(new

AlertDialog domainStatus = new AlertDialog.Builder(ViewOrderDomain.this).create(); onClick(DialogInterface dialog, int which) {

(58)

domainStatus.setMessage("Domain\n"+txtDomainName.getTe xt().toString()+suffix+"\nIs Not Available");

domainStatus.setButton("OK",new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int which) {

btnNext.setVisibility(View.INVISIBLE); return ; }

}); }

domainStatus.show(); }

} catch (Exception ex) {

Log.d("HTTPRequest", ex.toString()); }

} }

4.3.3. Halaman Contact Form

Gambar 4.3 ini merupakan tampilan contact form dohose yang keluar setelah pengguna menjalankan aplikasi dohose. Pada halaman ini terdapat beberapa form diantaranya adalah first name, last name, company, email, address country, postal code, city, province, phone, password.

(59)

Menu ini akan tampil ketika pengguna melakukan order domain dan hosting maupun hanya melakukan order hosting saja, fungsinya adalah data pelanggan untuk digunakan sebagai catatan juga digunakan sebagai domain

profile atau lebih sering disebut whois domain.

Adapun script untuk menampilkan menu tersebut adalah sebagai berikut :

package org.smn.dohose;

public class ViewOrderForm extends Activity { private String url =

"http://api.sembilanmedia.com/addclient.php";

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

setContentView(R.layout.orderform);

Bundle extras = getIntent().getExtras();

(60)

findViewById(R.orf.ed

txtEmail = (EditText) findViewById(R.orf.editEmail); txtAlamat = (EditText) findViewById(R.orf.editAlamat); txtKota = (EditText) findViewById(R.orf.editKota); txtPropinsi = (EditText)

findViewById(R.orf.editPropinsi);

txtKodePos = (EditText) findViewById(R.orf.editKodepos); //txtNegara = (EditText) findViewById(R.orf.editNegara); txtPhone = (EditText) findViewById(R.orf.editTelepon); txtPassword = (EditText)

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(

spinner.setAdapter(adapter);

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

//@Override

public void onItemSelected(AdapterView<?>

parentView, View selectedItemView, int position, long id) {

Object item =

// TODO Auto-generated method stub public void nextStep(View view) {

postRequest(); }

@SuppressWarnings( { "unchecked" }) public void postRequest() {

Log.d("getRequest", url);

HttpClient client = new DefaultHttpClient(); HttpPost request = new HttpPost(url);

try {

@SuppressWarnings("rawtypes") AlertDialog txtResponse = new AlertDialog.Builder(ViewOrderForm.this).create();

(61)

//post.add(new BasicNameValuePair("uid", jresult = new JSONObject(result);

if(jresult.getString("result").equals("error")){ onClick(DialogInterface dialog, int which) {

return ; Completed\n Your Client Id =

"+jresult.getString("clientid"));

(62)

public void onClick(DialogInterface dialog, int which) {

Intent i = new Intent(ViewOrderForm.this, pickPackage.class);

i.putExtra("domainOrder", domainOrder);

i.putExtra("clientID", clientID);

startActivity(i); txtResponse.show();

} catch (Exception ex) {

Log.d("HTTPRequest", ex.toString()); }

4.3.4. Menu Hosting Or der

Gambar 4.4 merupakan tampilan dari menu hosting order yang keluar setelah pengguna menjalankan aplikasi dohose. Pada halaman ini terdapat beberapa form diantaranya adalah nama domain, pilihan paket hosting, dan termin

atau jangka waktu penyewaan hosting.

Dalam menu hosting order ini pengguna akan memilih pilhan paket hosting yang diinginkannya adapun diantaranya adalah paket wado, kitetsu, yubashiri, meitou, shuusui dimana setiap paket mempunyai feature yang berbeda dari segi bandwidth dan space.

(63)

Adapun untuk pilihan termin atau jangka waktu pembayaran yaitu mulai dari monthly (bulanan), quarterly (3 bulanan), semi-annually (6 bulanan), dan

annually (1 tahunan). Yang dimaksudkan untuk lama penyewaan hingga melakukan pembaharuan atau renewal. Kemudian ketika order selesai dilakukan maka pengguna akan mendapatkan nomer invoice atau tagihan untuk sebagai catatan dan detail dari pemesanan akan langsung dikirimkan ke email pengguna. Adapun script untuk menampilkan menu tersebut adalah sebagai berikut :

package org.smn.dohose;

public class ViewOrderHosting extends Activity { static final int DIALOG_LOADING_ID = 0; private EditText txtDomainName;

private Button BtnSend; private String url =

"http://api.sembilanmedia.com/addorderhosting.php"; private String

hasil,paket,termin,InvoiceID,clientID,uid; private JSONObject jhasil;

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

setContentView(R.layout.orderhosting); txtDomainName = (EditText)

findViewById(R.orh.editDomain);

(64)

uid =

spinner1.setOnItemSelectedListener(new OnItemSelectedListener() {

public void onItemSelected(AdapterView<?>

parentView, View selectedItemView, int position, long id) {

Object item =

// TODO Auto-generated method stub

ArrayAdapter<CharSequence> adapter1 = ArrayAdapter.createFromResource(

spinner2.setOnItemSelectedListener(new OnItemSelectedListener(){

//@Override

public void onItemSelected(AdapterView<?>

parentView, View selectedItemView, int position, long id) {

Object item =

(65)

}

@SuppressWarnings( { "unchecked" }) public void postRequest() {

Log.d("getRequest", url);

HttpClient client = new DefaultHttpClient(); HttpPost request = new HttpPost(url);

try {

@SuppressWarnings("rawtypes") AlertDialog txtResponse = new AlertDialog.Builder(ViewOrderHosting.this).create();

List post = new ArrayList(1);

post.add(new BasicNameValuePair("uid",

hasil = HTTPRequest.request(response); Log.d("HTTPRequest", hasil.toString());

jhasil = new JSONObject(hasil);

if(jhasil.getString("result").equals("error")){ onClick(DialogInterface dialog, int which) {

BtnSend.setVisibility(View.INVISIBLE); Completed\n Your Invoice id : "+InvoiceID+"\n Note Your Invoice ID for confirmation");

txtResponse.setButton("OK",new DialogInterface.OnClickListener(){

public void onClick(DialogInterface dialog, int which) {

(66)

4.3.5 For m Confirmation

Gambar 4.5 merupakan halaman confirmation. Dimana dalam form terdapat Nama, invoice id, nama pemilik akun, dan bank tujuan yang berfungsi untuk konfirmasi pembayaran setelah melakukan transfer. Dan ditujukan kepada billing department dalam hal ini form akan langsung merubah kedalam bentuk format email yang siap dikirim.

Gambar 4.5. Halaman Confirmation

package org.smn.dohose;

import android.app.Activity; import android.view.View;

import android.widget.EditText; import android.widget.Spinner; import android.os.Bundle; import android.content.Intent;

public class Confirmation extends Activity { @Override

public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

setContentView(R.layout.confirmation); }

public void sendEmail(View button) { final EditText nameField = (EditText) findViewById(R.conf.editNama);

String nama = nameField.getText().toString(); final EditText invoiceField = (EditText)

(67)

Strin

g invoice =

invoiceField.getText().toString();

final Spinner ListBank = (Spinner) findViewById(R.conf.PilihBank);

String pilihbank =

ListBank.getSelectedItem().toString();

final EditText namaRekField = (EditText) findViewById(R.conf.editNamaRek);

String namarek = namaRekField.getText().toString();

final EditText emailField = (EditText) findViewById(R.conf.editEmail);

String email = emailField.getText().toString(); final EditText jumlahTransField = (EditText) findViewById(R.conf.editJumlahTransfer);

String jumlahTransfer = jumlahTransField.getText().toString();

String message = formatMessage(nama, invoice, pilihbank, namarek, email, jumlahTransfer);

SendisiMessage (message); }

protected String formatMessage(String nama, String invoice, String pilihbank, String namarek, String email,

String jumlahTransfer){ String strMessage =

getResources().getString(R.string.messagebody_format);

String mailMsg = String.format(strMessage, nama, invoice, pilihbank, namarek, email,

jumlahTransfer);

return mailMsg; }

public void SendisiMessage(String message) {

Intent messageIntent = new Intent(android.content.Intent.ACTION_SEND);

Gambar

Gambar 2.1 Contoh Instalasi ADT Plugin
Gambar 2.2 Menghubungkan Eclipse Dengan Android SDK
Gambar 2.4 Field Membuat AVD
Gambar 2.5 Emulator Android
+7

Referensi

Dokumen terkait

Digunakan pengaduk jenis turbin, karena turbin memiliki range volume yang besar dan dapat digunakan untuk kecepatan putaran yang cukup tinggi. Data pengaduk diperoleh

Beberapa tahapan partisipasi masyarakat dalam penggunaan anggaran dana desa (Add) yaitu; tahap pertama masyarakat dapat berpartisipasi dalam perencanaan pembangunan

Dari hasil analisis yang diperoleh mengenai pengaruh Flipped Classroom untuk meningkatkan kemampuan berpikir kreatif ditinjau dari gaya belajar kelas VIII SMP N 2 Air Hitam

Dengan adanya Undang-Undang Nomor 36 tahun 2009 tentang Kesehatan menghendaki pemerintah, dalam hal ini oleh Badan Pengawasan Obat dan Makanan (BPOM), dapat berupaya

Pengaruh Konsentrasi Minyak Cengkeh (Eugenia aromatica) Terhadap Kelangsungan Hidup Ikan Nila (Oreochromis sp) pada Proses Transportasi.. Jurnal Media

Beberapa skema pada Teknik RGB seperti 24- Hours Microphysics, dan Day Convective Storms menunjukkan jenis awan yang menutupi wilayah Jakarta adalah awan konvektif yaitu

adalah jumlah jumlah oksigen oksigen yang yang dibutuhkan dibutuhkan untuk untuk mengoksidasi mengoksidasi zat-zat zat-zat organik dalam 1 liter contoh air. Uji

Dapat menyebutkan dan mampu menerangkan konsep disain grafik (Filosofi Desain, Prinsip Desain Grafik, Pembuatan User Interface, Teknik Koding, Tipografi, fonts, Warna,