PENDAHULUAN LANDASAN TEORI ANALISIS DAN PERANCANGAN SISTEM IMPLEMENTASI DAN PENGUJIAN SISTEM KESIMPULAN DAN SARAN ANALISIS DAN PERANCANGAN SISTEM

BAB I PENDAHULUAN

Bab i menguraikan latarbelakang permasalahan, merumuskan inti permasalahan, mencari solusi atas masalah tersebut, mengidentifikasi masalah tersebut, menentukan maksud dan tujuan, kegunaan penelitian, pembatasan masalah, metode penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ii menguraikan bahan-bahan kajian, konsep dasar, dan teori dari para ahli yang berkaitan dengan penelitian. Meninjau permasalahan dan hal-hal yang berguna dari penelitian-penelitian dan sintesis serupa yang pernah dikerjakan sebelumnya dan menggunakannya sebagai acuan pemecahan masalah pada penelitian ini.

BAB III ANALISIS DAN PERANCANGAN SISTEM

Bab iii menguraikan hasil analisis dari objek penelitian untuk mengetahui hal atau masalah apa yang timbul dan mencoba memecahkan masalah tersebut dengan mengaplikasikan perangkat-perangkat dan pemodelan yang digunakan.

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM

Bab iv menguraikan tentang perancangan solusi beserta implementasinya dari masalah-masalah yang telah dianalisis. Pada bagian ini juga akan ditentukan bagaimana sistem dirancang, dibangun, diuji dan disesuaikan dengan hasil penelitian.

BAB V KESIMPULAN DAN SARAN

Bab v menguraikan tentang kesimpulan dari hasil penelitian beserta saran untuk pengembangan selanjutnya. 7

BAB II LANDASAN TEORI

II.1 Tentang PT. Astria Mandiri

PT. Astria Mandiri adalah perusahaan yang bergerak dalam bidang instalatir listrik, billing management, PPOB dan pengadaan jasa. Nama Perusahaan : PT. Astria Mandiri Lokasi : Kp. Hegarsari RT 03RW 10 Desa. Talagasari Garut

II.2 Struktur Organisasi Perusahaan

Berikut ini adalah struktur organisasi PT. Astria Mandiri yang dapat dilihat pada Gambar II.1 Struktur Organisasi Perusahaan. Gambar II.1 Struktur Organisasi Perusahaan Bagian pencatatan meter listrik dapat dilihat pada Gambar II.2 Organisasi Kerja Bagian Pencatatan Meter berikut : Gambar II.2 Organisasi Kerja Bagian Pencatatan Meter II.3 Struktur Kode RBM Rute Baca Meter Kode RBM atau kode rute baca meter merupakan pengkodean untuk pegawai dalam melakukan baca meter pelanggan. Dalam hal ini kode RBM diperlukan bagi petugas sebagai “surat jalan” dalam melakukan pencatatan meter listrik. Kode RBM terdiri tujuh digit tiga digit pertama merupakan kode wilayah, tiga digit selanjutnya merupakan kode petugas tidak sama dengan nomor induk pegawai, didapat dari data PLN sebelumnya dan satu digit terakhir merupakan hari baca meter. Adapun contoh dari kode RBM beserta penjelasannya adalah sebagai berikut : Kode wilayah kode petugas kode hari Tabel II.1 Kode Wilayah Kode Wilayah DDA Leles DDB Limbangan DDC Samarang Tabel II.2 Kode Petugas 2 digit pertama kode Keterangan 1 digit berikutnya Keterangan BL Limbangan A Petugas ke-1 SA Sami Jaya B Petugas ke-2 NJ Nanjung Sari C Petugas ke-3 CD Cikondang D Petugas ke-4 BN Banyuresmi E Petugas ke-5 CS Cisaat F Petugas ke-6 KD Kadungora G Petugas ke-7 LW Leuwigoong H Petugas ke-8 MG Leles J Petugas ke-9 SM Samarang K Petugas ke-10 TR Tarogong L Petugas ke-11 M Petugas ke-12 Tabel II.3 Kode Hari Kode Keterangan A Hari ke-1 B Hari ke-2 C Hari ke-3 D Hari ke-4 E Hari ke-5

II.4 Jangka Waktu Pembacaan Meter

Jangka waktu pekerjaan catat meter adalah 5 hari kalender, sesuai pada tabel dibawah ini: Tabel II.4 Jangka Waktu Cater Tanggal Awal Baca Akhir Baca Evaluasi Koreksi Akhir Bulan Billing Upload Sorek 25 29 30 31 1 24 28 29 30 1 23 27 28 29 1 Tanggal Awal Baca Akhir Baca Evaluasi Koreksi Akhir Bulan Billing Upload Sorek 22 26 27 28 1

II.5 Sistem Informasi

Sistem adalah kumpulan dari komponen-komponen peralatan model requirements, function dan interface. Sistem informasi merupakan kombinasi teratur apapun dari sumber daya manusia, hardware, software, data, dan jaringan. Daur hidup suatu sistem meliputi [5]: 1. Investigasi 2. Analisis 3. Desain 4. Implementasi 5. Pemeliharaan

II.5.1 Komponen Sistem Informasi

Sistem informasi terdiri dari komponen-komponen yang disebutnya dengan istilah blok bangunan building block, yaitu blok masukan input block, blok model model block, blok keluaran output block, blok teknologi technology block, blok basis data database block dan blok kendali controls block. Sebagai suatu sistem, keenam blok tersebut masing-masing saling berinteraksi satu dengan yang lainnya membentuk satu kesatuan untuk mencapai sasarannya [6]. . . . . . . pemakai pemakai pemakai pemakai pemakai pemakai input model output teknologi dasar data kendali Gambar II.3 Blok Sistem Informasi yang Berinteraksi [6] Blok Masukan Input mewakili data yang masuk ke dalam sistem informasi. Input disini termasuk metode-metode dan media untuk menangkap data yang akan dimasukkan, yang dapat berupa dokumen-dokumen dasar. Blok Model Blok ini terdiri dari kombinasi prosedur, logika dan model matematika yang akan memanipulasi data input dan data yang tersimpan di basis data dengan cara yang sudah tertentu untuk menghasilkan keluaran yang diinginkan. Blok Keluaran Produk dari sistem informasi adalah keluaran yang yang merupakan informasi yang berkualitas dan dokumentasi yang berguna untuk semua tingkatan manajemen serta semua pemakai sistem. Blok Teknologi Teknologi merupakan “kotak alat” tool-box dalam sistem informasi. Teknologi digunakan untuk menerima input, menjalankan model, menyimpan dan mengakses data, menghasilkan dan mengirimkan keluaran dan membantu pengendalian dari sistem secara keseluruhan. Teknologi terdiri dari 3 bagian utama, yaitu teknisi humanware atau brainware, perangkat lunak software dan perangkat keras hardware. Teknisi dapat berupa orang-orang yang mengetahui teknologi dan membuatnya dapat beroperasi. Misalnya teknisi adalah operator komputer, pemrogram, operator pengolah data, spesialis telekomunikasi, analis sistem, penyimpanan data dan lain sebagainya. Blok Basis Data Basis data database merupakan kumpulan dari data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinya. Data perlu disimpan di dalam basis data untuk keperluan penyediaan informasi lebih lanjut. Data di dalam basis data perlu diorganisasikan sedemikian rupa, supaya informasi yang dihasilkan berkualitas. Organisasi basis data yang baik juga berguna untuk efisiensi kapasitas penyimpanan. Basis data diakses atau dimanipulasi dengan menggunakan perangkat lunak paket yang disebut dengan DBMS Database management System. Blok Kendali Banyak hal yang dapat merusak sistem informasi, seperti halnya bencana alam, api, temperatur, air, debu, kecurangan-kecurangan, kegagalan-kegagalan sistem itu sendiri, kesalahan-kesalahan, ketidak efisienan, sabotase dan lain sebagainya. Beberapa pengendalian perlu dirancang dan diterapkan untuk meyakinkan bahwa hal-hal yang dapat merusak sistem dapat dicegah ataupun bila terlanjur terjadi kesalahan-kesalahan dapat cepat langsung diatasi.

II.6 Android

Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware, dan aplikasi. Android adalah sistem operasi untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka bagi para pengembang untuk membuat aplikasi mereka sendiri. Pada awalnya dikembangkan oleh Android Inc, sebuah perusahaan pendatang baru yang membuat perangkat lunak untuk ponsel yang kemudian dibeli oleh Google Inc. Untuk pengembangannya, dibentuklah Open Handset Alliance OHA, konsorsium dari 34 perusahaan perangkat keras, perangkat lunak, dan telekomunikasi termasuk Google, HTC, Intel, Motorola, Qualcomm, T-Mobile, dan Nvidia [7].

II.6.1 Android Life Cycle

Aplikasi android terdiri dari beberapa fungsi dasar seperti mengedit catatan, memutar file musik, membunyikan alarm, atau membuka kontak telepon. Fungsi-fungsi tersebut dapat diklasifikasikan ke dalam empat komponen android yang berbeda seperti ditunjukkan pada , klasifikasi tersebut berdasarkan kelas- kelas dasar java yang digunakan [9]. Tabel II.5 Komponen Aplikasi Android Functionality Java Base Class Examples Focused thing a user can do Activity Edit a note, play a game Background process Service Play music, update weather icon Receive messages BroadcastReceiver Trigger alarm upon event Store and retrieve data ContentProvider Open a phone contact Setiap aplikasi pasti menggunakan minimal satu dari komponen tersebut, akan tetapi terdapat beberapa komponen yang mengharuskan mencantumkan specified permission sebelum digunakan seperti komponen Service, BroadcastReceiver. ContentProvider [9]. Android memiliki paradigma pemrograman lain tidak seperti paradigma pemrograman biasa di mana aplikasi yang dijalankan pada fungsi main, sistem android menjalankan kode dalam method Activity dengan menerapkan metode callback tertentu yang sesuai dengan tahap tertentu dari siklus hidup. Setiap aplikasi yang berjalan dalam sistem operasi android memiliki siklus hidup yang berbeda dengan aplikasi desktop atau web. Hal ini dikarenakan aplikasi mobile memiliki tingkat interupsi proses yang lumayan tinggi seperti ketika handling panggilan masuk aplikasi diharuskan menghentikan proses sementara. Penerapan siklus hidup juga berguna untuk memastikan aplikasi tidak menghabiskan sumber daya baterai pengguna [8]. Gambar II.4 Siklus Hidup Android [8] Terdapat beberapa state dalam siklus hidup android yang terjadi seperti diilustrasikan pada Gambar II.4 Siklus Hidup Android [8], akan tetapi hanya beberapa dari state tersebut yang menjadi statis diantaranya :

1. Resumed

Resumed terjadi ketika aplikasi berjalan setelah state paused . State ini akan menjalankan perintah program yang ditulis pada method onResume Google Inc, 2014.

2. Paused

Dalam keadaan ini aktivitas yang terjadi dihentikan secara sementara tetapi masih terlihat oleh pengguna karena terdapat proses yang memiliki prioritas lebih tinggi seperti panggilan telepon. Aplikasi tidak dapat menjalankan perintah apapun ataupun menampilkan apapun dalam state ini Google Inc, 2014.

3. Stopped

Dalam keadaan ini, aplikasi benar-benar tidak ditampilkan dan tidak terlihat oleh pengguna tetapi masih meninggalkan service dibackground Google Inc, 2014. State lain seperti Created dan Started bersifat sementara dan sistem dengan cepat menjalankan state berikutnya dengan memanggil metode life cycle callback berikutnya. Artinya, setelah sistem OnCreate dipanggil, dengan cepat sistem akan memanggil method OnStart, krmudian diikuti oleh onResume Schwarz, Dutson, Stelee, To, 2013.

II.6.2 Fitur

Android memiliki beberapa fitur utama yang sering digunakan dalam proses pembangunan aplikasi diantaranya adalah: 1. Multi-proses dan App Widgets Sistem operasi android tidak melarang prosesor menjalankan lebih dari satu aplikasi dalam satu waktu. Sistem operasi android dapat mengatur aplikasi dan thread yang berjalan secara multitasking. Keuntungan yang didapat adalah ketika aplikasi berjalan dan berinteraksi dengan pengguna di layer depan sistem operasi, proses dari aplikasi lain dapat berjalan untuk melakukan pembaruan informasi. Sebagai contoh misalnya ketika pengguna memainkan game, proses lain dapat berjalan di belakang aplikasi seperti memeriksa harga saham dan memunculkan peringatan [8]. App Widgets adalah mini aplikasi yang dapat embedded dalam aplikasi seperti home screen. App widgets dapat menjalankan proses request seperti musik streaming atau mendeteksi suhu ruangan secara background [8]. Multi-proses dapat memberikan manfaat berupa user experience yang lebih banyak, namun penggunaan fitur tersebut dapat menghabiskan banyak energi baterai jika penggunaan tidak benar [9]. 2. Touch Gestures dan Multi-touch Touchscreen adalah user interface intuitif yang digunakan banyak smartphone di dunia. Dengan fitur ini interaksi dapat dibuat lebih mudah karena cukup dengan menggunakan jari tangan. Multi-touch adalah kemampuan yang dapat melakukan tracking lebih dari satu tangan dalam satu waktu, Fitur ini sering digunakan untuk interaksi memperbesar atau memutar objek. Selain itu pengembang dapat membuat interaksi baru dengan memanfaatkan fitur tersebut [9]. 3. Hard dan Soft Keyboard Salah satu fitur pada perangkat smartphone adalah tombol fisik dan non fisik, tombol fisik digunakan untuk navigasi pendukung dalam pengoperasian android.. Pengembang aplikasi tidak perlu secara manual untuk mengintegrasikan tombol tersebut dalam aplikasi. Tombol non fisik adalah tombol yang dibuat oleh sistem operasi seperti keyboard virtual, dan tombol navigasi aplikasi [9].

II.6.3 Prinsip Desain

Android memiliki beberapa prinsip desain yang dapat menjadi acuan dalam membuat desain aplikasi android diantaranya adalah 1. Multiple Assets Android mendukung jutaan smartphone, tablet dan perangkat lain dalam berbagai ukuran layar dan ukuran, untuk itu Multiple Assets sangat disarankan digunakan untuk mengatasi fragmentasi pada android. Seperti ilustrasi pada Gambar II.5 Klasifikasi Ukuran Ikon, android menciptakan beberapa klasifikasi ukuran icon yaitu MDPI, HDPI, XHDPI, XXHDPI dan XXXHDPI. MDPI dan HDPI dikhususkan untuk icon yang akan digunakan pada device berukuran smartphone sedangkan untuk XHDPI, XXHDPI dan XXXHDPI digunakan pada device berukuran tablet [10]. Gambar II.5 Klasifikasi Ukuran Ikon 2. Touch Feedback Touch Feedback dalam android digunakan sebagai respon setiap objek yang ditekan pengguna. Hal ini bertujuan untuk memberi tahu pengguna objek mana yang berinteraksi dengan pengguna [10]. Gambar II.6 Touch Feedback 3. Pattern Gesture Touch gesture berguna untuk meningkatkan experience pengguna dalam menggunakan aplikasi. Terdapat beberapa gesture yang didukung oleh android diataranya adalah [10]: 1. Touch Touch adalah gesture default sebagai event untuk item tertentu yang paling sering digunakan dalam perangkat android, hampir seluruh kontrol utama aplikasi ini menggunakan touch. 2. Long Press Biasanya digunakan untuk seleksi data , dengan gesture ini dimungkinkan untuk memilih satu atau lebih item dalam sebuah tampilan dan menjalankan suatu fungsionalitas tertentu [10]. 3. Swipe Or Drag Swipe adalah menyentuh sebuah titik pada layar dan menggerakkan jari yang tetap tersentuh pada layar ke titik lain pada layar. Swipe biasanya dilakukan untuk kebutuhan berpindah layar atau tergantung dari aplikasi. Swipe dapat dilakukan dari dan ke arah mana saja [10]. 4. Double Touch Pada Smartphone dan tablet android, melakukan dua kali tapping secara berturut-turut pada satu obyek, fungsinya berbeda dengan double klik mouse komputer. Pada Android, teknik ini biasanya dipakai untuk melakukan zoom in dan zoom out atau memperbesar memperkecil sebuah obyek gambar [10]. 5. Pinch Open Teknik lain yang biasa digunakan adalah dengan menggunakan dua jari, di mana kedua jari tersebut menyentuh dua titik pada layar yang terpisah di mana ujung dari dua jari tersebut tidak bersentuhan, kemudian kedua jari tersebut sambil tetap menyentuh layar bergerak saling mendekati. Teknik ini digunakan untuk membuka aplikasi tertentu [10]. 6. Pinch Close Teknik Pinch Close adalah kebalikan dari Pinch Open di mana spread dilakukan dengan berawal dari dua jari yang bersentuhan pada ujungnya dan ditempelkan sebuah titik yang sama pada layar, kemudian kedua jari tersebut bergerak memisahkan atau menjauhi satu sama lain Gerakan ini untuk menutup layar [10].

II.7 Web Services

Web service merupakan suatu komponen software yang merupakan selfcontaining, aplikasi modular self-describing yang dapat dipublikasikan, dialokasikan, dan dilaksanakan pada web. Web service adalah teknologi yang mengubah kemampuan internet dengan menambahkan kemampuan transactional web, yaitu kemampuan web untuk saling berkomunikasi dengan pola program-to- program P2P. Fokus web selama ini didominasi oleh komunikasi program-to- user dengan interaksi business-to-consumer B2C, sedangkan transactional web akan didominasi oleh program-to-program dengan interaksi business-to-business. Gambar 1 merupakan blok bangunan web service yang mana menyediakan fasilitas komunikasi jarak jauh antara dua aplikasi yang merupakan layer arsitektur web service. 1. Layer 1 : Protokol internet standar yang digunakan sebagai sarana transportasi adalah HTTP dan TCPIP. 2. Layer 2 : Simple Object Access Protocol SOAP berbasiskan XML dan digunakan untuk pertukaran informasi antar sekelompok layanan. 3. Layer 3 : Web service Definition Language WSDL digunakan untuk mendiskripsikan attribute layanan. 4. Layer 4 : Universal Description, Discovery and Integration, yang mana merupakan direktori pusat untuk deskripsi layanan. Gambar II.7 Blok Bangunan Web Service

II.8 JavaScript Object Notation JSON

JSON JavaScript Object Notation adalah format pertukaran data yang ringan, mudah dibaca dan ditulis oleh manusia, serta mudah diterjemahkan dan dibuat generate oleh komputer. Format ini dibuat berdasarkan bagian dari Bahasa Pemprograman JavaScript, Standar ECMA-262 Edisi ke-3 - Desember 1999. JSON merupakan format teks yang tidak bergantung pada bahasa pemprograman apapun karena menggunakan gaya bahasa yang umum digunakan oleh programmer keluarga C termasuk C, C++, C, Java, JavaScript, Perl, Python dll. Oleh karena sifat-sifat tersebut, menjadikan JSON ideal sebagai bahasa pertukaran-data [12]. JSON terbuat dari dua struktur [12] : 1. Kumpulan pasangan namanilai. Pada beberapa bahasa, hal ini dinyatakan sebagai objek object, rekaman record, struktur struct, kamus dictionary, tabel hash hash table, daftar berkunci keyed list, atau associative array. 2. Daftar nilai terurutkan an ordered list of values. Pada kebanyakan bahasa, hal ini dinyatakan sebagai larik array, vektor vector, daftar list, atau urutan sequence. Struktur-struktur data ini disebut sebagai struktur data universal. Pada dasarnya, semua bahasa pemprograman moderen mendukung struktur data ini dalam bentuk yang sama maupun berlainan. Hal ini pantas disebut demikian karena format data mudah dipertukarkan dengan bahasa-bahasa pemprograman yang juga berdasarkan pada struktur data ini [12]. JSON menggunakan bentuk sebagai berikut [12] : Objek adalah sepasang namanilai yang tidak terurutkan. Objek dimulai dengan { kurung kurawal buka dan diakhiri dengan } kurung kurawal tutup. Setiap nama diikuti dengan : titik dua dan setiap pasangan namanilai dipisahkan oleh , koma. Gambar II.8 Objek JSON Larik adalah kumpulan nilai yang terurutkan. Larik dimulai dengan [ kurung kotak buka dan diakhiri dengan ] kurung kotak tutup. Setiap nilai dipisahkan oleh , koma. Gambar II.9 Array JSON Nilai value dapat berupa sebuah string dalam tanda kutip ganda, atau angka, atau true atau false atau null, atau sebuah objek atau sebuah larik. Struktur- struktur tersebut dapat disusun bertingkat. Gambar II.10 Value JSON String adalah kumpulan dari nol atau lebih karakter Unicode, yang dibungkus dengan tanda kutip ganda. Di dalam string dapat digunakan backslash escapes \ untuk membentuk karakter khusus. Sebuah karakter mewakili karakter tunggal pada string. String sangat mirip dengan string C atau Java. Gambar II.11 String JSON Angka adalah sangat mirip dengan angka di C atau Java, kecuali format oktal dan heksadesimal tidak digunakan. Gambar II.12 Number JSON Spasi kosong whitespace dapat disisipkan di antara pasangan tanda-tanda tersebut, kecuali beberapa detil encoding yang secara lengkap dipaparkan oleh bahasa pemprograman yang bersangkutan.

II.9 Global Positioning System GPS

Global Positioning System adalah sistem navigasi berbasis satelit terdiri dari jaringan 24 satelit ditempatkan ke orbit oleh Departemen Pertahanan Amerika Serikat yang pertama kali diperkenalkan mulai tahun 1978. Layanan GPS dahulu hanya dipergunakan untuk keperluan militer namun mulai terbuka untuk publik. 24 satelit GPS tersebut berada sekitar 12.000 mil di atas bumi bergerak mengelilingi bumi 12 jam dengan kecepatan 7.000 mil per jam. Satelit GPS berkekuatan energi sinar matahari, memiliki baterai cadangan untuk menjaga agar tetap berjalan pada saat gerhana matahari atau pada saat tidak ada energi matahari dan memiliki roket penguat kecil pada masing-masing satelit agar dapat mengorbit tepat pada tempatnya. Satelit-satelit GPS harus selalu berada pada posisi orbit yang tepat untuk menjaga akurasi data yang dikirim ke GPS receiver, sehingga harus selalu dipelihara agar posisinya tepat. Posisi satelit-satelit tersebut selalu dipantau oleh stasiun pengendali. Stasiun-stasiun pengendali di bumi ada di Hawaii, Ascension Islan, Diego Garcia, Kwajalein dan Colorado Spring. Untuk dapat mengetahui posisi seseorang maka diperlukan alat yang diberi nama GPS receiver yang berfungsi untuk menerima sinyal yang dikirim dari satelit GPS. GPS receiver mengambil informasi tersebut dan melakukan perhitungan triangulation untuk menentukan lokasi pengguna dengan tepat. GPS receiver membandingkan waktu sinyal dikirim dengan waktu sinyal tersebut diterima untuk mengetahui jarak satelit. Dengan mengetahui jarak tersebut, GPS receiver dapat melakukan perhitungan dan menentukan posisi pengguna dan menampilkan dalam peta elektronik. Setelah menentukan posisi pengguna, selanjutnya GPS dapat menghitung informasi lain, seperti kecepatan, arah yang dituju, jalur, tujuan perjalanan, jarak tujuan, matahari terbit dan matahari terbenam dan masih banyak lagi. Satelit GPS sangat presisi dalam mengirim informasi karena satelit tersebut menggunakan jam atom. Jam atom yang ada pada satelit merupakan partikel atom yang diisolasi, sehingga dapat menghasilkan jam yang akurat dibandingkan dengan jam biasa. Keistimewaan GPS adalah mampu bekerja dalam berbagai kondisi cuaca, siang atau malam. Keakuratan sebuah perangkat GPS bisa mencapai 15 meter, bahkan model terbaru yang dilengkapi teknologi Wide Area Augmentation System WAAS keakuratannya sampai 3 meter. Karena GPS bekerja mengandalkan satelit, maka penggunaannya disarankan di tempat terbuka. Penggunaan di dalam ruangan, atau di tempat yang menghalangi arah satelit di angkasa, maka GPS tidak akan bekerja secara akurat dan maksimal. Perhitungan waktu yang akurat sangat menentukan akurasi perhitungan untuk menentukan informasi lokasi. Semakin banyak sinyal satelit yang dapat diterima maka akan semakin presisi data posisi yang dihasilkan. Selain itu, ketinggian juga mempengaruhi proses kerja GPS, karena semakin tinggi maka semakin bersih atmosfer, sehingga gangguan semakin sedikit [3].

II.10 GPS Photo Tagging Geotagging

GPS Photo Tagging juga dikenal sebagai geotagging, merupakan proses penambahan informasi posisi data GPS Latitude, Longitude, Altitude dalam sebuah foto digital. Ponsel-ponsel berkamera yang memiliki GPS receiver internal umumnya memiliki fitur ini. Mekanisme GPS PhotoTagging adalah pada saat sebuah foto diambil menggunakan kamera digital atau ponsel yang memiliki fitur geotagging, kamera atau ponsel tersebut mencatat lebih banyak informasidata dibandingkan dengan sebuah foto yang diambil dengan kamera biasa. Informasi tersebut termasuk waktu dan data ketika sebuah foto diambil, orientasi dari kamera portrait atau landscape, apakah menggunakan lampu flash dan detil kamera lainnya yang digunakan seperti Apertur, Exposure, dan Local Length. Semua data ini disimpan pada suatu tempat yang disebut EXIF Headers. EXIF Exchangeable Image File Format headers berisi petunjuk foto dengan data yang dapat dibaca oleh aplikasi manajemen foto atau sebuah situs foto tertentu. Selain itu, EXIF Headers juga menyediakan sebuah ruang untuk mengisi koordinat Longitude, Latitude, dan Altitude [3].

II.11 EXIF Headers

Data EXIF Exchangeable Image File Format adalah data yang disimpan oleh kamera digital pada sebuah image yang berisi informasi mengenai kondisi dan setting kamera digital pada waktu dilakukan pemotretan. EXIF dikembangkan oleh Japanese Electronics Industry Development Association JEIDA sebagai upaya untuk mempermudah dan membuat standar pertukaran data antara perangkat lunak pengolah gambarcitra digital dan perangkat keras seperti kamera, serta didukung oleh hampir seluruh kamera digital. Informasi umum yang bisa didapatkan dari EXIF sebuah foto digital adalah antara lain [3]: 1. Tanggal dan jam berapa sebuah foto dibuat. 2. Merk, tipe kamera, dan jenis lensa yang dipakai untuk memotret foto. 3. Resolusi dari kamera yang digunakan untuk mengambil gambar. Digunakan atau tidaknya fitur flash pada kamera. 4. Lokasi foto tersebut diambil, jika kamera yang digunakan mendukung GPS.

II.12 EXIF Interface Android Class

Kelas ExifInterface adalah salah satu kelas dalam pemrograman android yang dapat digunakan untuk membaca dan menulis informasi tag Exif pada file yang berformat JPEG. Berikut adalahTabel II.6 Tag EXIF informasi Exif yang dapat diambil [20]. Tabel II.6 Tag EXIF No. Tagging Keterangan 1 TAG_APERTURE Type is String. 2 TAG_DATETIME Type is String. 3 TAG_DATETIME_DIGITIZED Type is String. 4 TAG_EXPOSURE_TIME Type is String. 5 TAG_FLASH Type is int. 6 TAG_FOCAL_LENGTH Type is rational. No. Tagging Keterangan 7 TAG_GPS_ALTITUDE The altitude in meters based on the reference in TAG_GPS_ALTITUDE_REF. 8 TAG_GPS_ALTITUDE_REF 0 if the altitude is above sea level. 9 TAG_GPS_DATESTAMP Type is String. 10 TAG_GPS_LATITUDE String 11 TAG_GPS_LATITUDE_REF Type is String. 12 TAG_GPS_LONGITUDE String 13 TAG_GPS_LONGITUDE_REF Type is String. 14 TAG_GPS_PROCESSING_METHOD Type is String. 15 TAG_GPS_TIMESTAMP Type is String. 16 TAG_IMAGE_LENGTH Type is int. 17 TAG_IMAGE_WIDTH Type is int. 18 TAG_ISO Type is String. 19 TAG_MAKE Type is String. 20 TAG_MODEL Type is String. 21 TAG_ORIENTATION Type is int. 22 TAG_SUBSEC_TIME Type is int. 23 TAG_SUBSEC_TIME_DIG Type is int. 24 TAG_SUBSEC_TIME_ORIG Type is int. 25 TAG_WHITE_BALANCE Type is int.

II.13 Google Geocoding

Google Maps sudah memiliki fitur yang cukup lengkap, termasuk mencari lokasi kota pada peta geocoding. Geocoding adalah proses menemukan koordinat geografis, yaitu bujur dan lintang, dari data geografis lain, misalnya alamat. Fitur geocoding dapat dimanfaatkan untuk menambahkan informasi latitude dan longitude pada foto yang tidak memiliki data geotagging [3].

II.14 Structure Analysis and Design

Structured analysis and design adalah pendekatan sistem analisis dan desain sistem informasi secara hierarki. SADM diproduksi untuk CCTA, kantor pemerintah Inggris yang berkaitan dengan penggunaan teknologi di pemerintahan dari tahun 1980 dan seterusnya [13].

II.14.1 Diagram Konteks

Diagram Konteks adalah data flow diagram tingkat atas DFD Top Level, yaitu diagram yang paling tidak detail, dari sebuah sistem informasi yang menggambarkan aliran-aliran data ke dalam dan ke luar sistem dan ke dalam dan ke luar entitas-entitas eksternal. CD menggambarkan sistem dalam satu lingkaran dan hubungan dengan entitas luar. Lingkaran tersebut menggambarkan keseluruhan proses dalam sistem [14].

II.14.2 Data Flow Diagram

Data Flow Diagram DFD adalah representasi grafik dari sebuah sistem. DFD menggambarkan komponen-komponen sebuah sistem, aliran-aliran data di mana komponen-komponen tersebut, dan asal, tujuan, dan penyimpanan dari data tersebut. DFD terdiri dari empat komponen utama diantaranya adalah : 1. Entitas. 2. Proses. 3. Data Store. 4. Data Flow. DFD dapat dikatakan merupakan breakdown dari diagram konteks. Analisis mengenai sistem yang lebih detail dapat dilakukan dengan melakukan breakdown pada DFD level 1, 2 dan seterusnya. Berikut adalah Tabel II.7 Simbol Diagram Konteks dan DFD [14]. Tabel II.7 Simbol Diagram Konteks dan DFD [14]

II.14.3 Spesifikasi Proses

Spesifikasi Proses adalah tabel yang berisi keterangan atau deskripsi dari semua proses yang terdapat pada DFD. Logika proses yang ditulis pada spesifikasi proses harus dituliskan secara jelas baik menggunakan bahasa deskriptif atau pseudecode tetapi tidak boleh mengkombinasikan kedua bahasa tersebut [14]. Berikut adalah Tabel II.8 Contoh Spesifikasi Proses [14] Tabel II.8 Contoh Spesifikasi Proses [14] No Proses Keterangan 1. No Proses Menyatakn no proses Nama Proses Menyatakan nama proses Source Sumber Menyatakan sumber data input menuju proses Input menyatakan isi data yang masuk ke proses Output menyatakan informasi yang keluar dari proses Destination menatakan tujuan informasi output dari Simbol Nama Simbol Fungsi Entitas Luar Menggambarkan entitas eksternal yang berhubungan dengan sistem Sistem Konteks Proses DFD Menggambarkan proses yang ada dalam suatu sistem Aliran DataInformasi Menggambarkan aliran data antar proses, data store dan entitas luar Data Storage Mengambarkan tempat penyimpanan data di dalam sistem No Proses Keterangan proses Logika Proses menyatakan algoritma dari proses

II.14.4 Kamus Data

Kamus data adalah tabel yang berisi deskripsi dari data yang mengalir pada DFD, Penjelasan struktur data dapat berupa field tiap data harus sama dengan yang sudah dimodelkan di ERD [14]. Berikut adalah Tabel II.9 Contoh Kamus Data [14]. Tabel II.9 Contoh Kamus Data [14] Nama aliran data Data Siswa Nama dari data yang digunakan Where usedHow used Daftar pada poin proses apa data digunakan Keterangan Uraian singkat dari data yang digunakan Struktur Data Daftar komponen data yang ada pada data yang digunakan Deskripsi Jenis data dalam representasi komputer untuk masing- masing data.

II.15 Object Oriented Analysis Design

Konsep OOAD mencakup analisis dan desain sebuah sistem dengan pendekatan objek, yaiut analisis berorientasi objek OOA dan desain berorientasi objek OOD. OOA adalah metode analisis yang memerika requirement syaratkeperluan yang harus dipenuhi sebuah sistem dari sudut pandang kelas- kelas dan objek-objek yang ditemui dalam ruang lingkup sistem. Sedangkan OOD adalah metode untuk mengarahkan arsitektur software yang didasarkan pada manipulasi objek-objek sistem atau subsistem [15].

II.15.1 Unified Modelling Language UML

Unified Modeling Language UML adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek OO. UML merupakan standar yang relatif terbuka yang dikontrol oleh Object Management Group OMG, sebuah konsorsium terbukayang terdiri dari banyak perusahaan. OMG dibentuk untuk membuat standar-standar yang mendukung interoperabilitas, khususnya interoperabilitas sistem berorientasi objek. OMG mungkin lebih dikenal dengan standar-standar CORBA Common Object Request Broker Architecture [16]. UML terdiri dari 13 jenis diagram resmi seperti tertulis dalam Tabel II.10 Jenis Diagram Resmi UML [16] Tabel II.10 Jenis Diagram Resmi UML [16] Diagram Kegunaan Activity Behavior prosedural dan paralel Class Class, fitur, dan hubungan-hubungan Communication Interaksi antar objek; penekanan pada jalur Component Struktur dan koneksi komponen Composite structure Dekomposisis runtime sebuah class Deployment Pemindahan artifak ke node Interaction overview Campuran sequence dan activity diagram Object Contoh konfigurasi dari contoh-contoh Package Struktur hirarki compile-time Sequence Interaksi antar objek; penekanan pada sequence State machine Bagaimana event mengubah objek selama aktif Timing Interaksi antar objek; penekanan pada timing Use case Bagaimana pengguna berinteraksi dengan sebuah sistem Diagram Structure Diagram Class Diagram Composite Structur Diagram Object Diagram Component Diagram Deployment Diagram Package Diagram Activity Diagram Use Case Diagram State Machine Diagram Sequence Diagram Communication Diagram Interaction Overview Diagram Timing Diagram Interaction Diagram Behavior Diagram Gambar II.13 Klarifikasi Jenis Diagram UML [16] Adapun penjelasan dari Class Diagram, Use Case Diagram dan Sequence Diagram adalah sebagai berikut [16]: 1. Class Diagram Class diagram mendeskripsikan jenis-jenis objek dalam sistem dan berbagai macam hubungan statis yang terdapat di antaranya. Class diagram juga menunjukan properti dan operasi sebuah class dan batasan-batasan yang terdapat dalam hubungan-hubungan objek tersebut. Kotak-kotak yang terdapat di dalam diagram merupakan class, yang dibagi menjadi tiga bagian : nama class cetak tebal, atributnya dan operasinya. a. Properti Properti mewakili fitur-fitur struktural dari sebuah class. Properti merupakan sebuah konsep tunggal, tetapi tampak seperti dua notasi yang sedikit berbeda: atribut dan asosiasi. b. Atribut Notasi atribut mendeskripsikan properti dengan sebaris teks di dalam kotak class tersebut. c. Operasi Operasi merupakan suatu kegiatan yang dimengerti sebuah class untuk dilakukan. Operasi secara jelas berhubungan dengan metode dalam sebuah class. 2. Use Case Diagram Use case diagram menampilkan aktor, use case dan hubungan antar keduanya : a. Aktor mana yang menggunakan use case mana b. Use case mana yang memasukkan use case lain 3. Sequence Diagram Sebuah sequence diagram secara khusus menjabarkan behaviour sebuah skenario tunggal. Diagram tersebut menunjukkan sejumlah objek contoh dan pesan-pesan yang melewati objek-objek ini di dalam use case. 4. Activity Diagram Activity diagram adalah teknik untuk menggambarkan logika prosedural, proses bisnis, dan jalur kerja. dalam beberapa hal, diagram ini seperti sebuah diagram alir, tetapi perbedaan prinsip antar diagram ini dan notasi diagram alir adalah diagram ini mendukung behaviour paralel.

II.16 Entity Relationship Diagram

Entity Relationship Diagram ERD adalah sekumpulan cara atau peralatan untuk mendeskripsikan data-data atau objek-objek yang dibuat berdasarkan dan berasal dari dunia nyata yang disebut entitas entity serta hubungan relationship antar entitas-entitas tersebut dengan menggunakan beberapa notasi [17]. Komponen-komponen pembentuk ERD dapat di lihat pada Tabel II.11 Komponen-komponen ERD [17]. Tabel II.11 Komponen-komponen ERD [17] Notasi Komponen Keterangan Entitas Individu yang mewakili suatu objek dan dapat dibedakan dengan objek yang lain Notasi Komponen Keterangan Atribut Properti yang dimiliki oleh suatu entitas, dimana dapat mendeskripsikan karakteristik darri entitas tersebut Relasi Menunjukkan hubungan diantara sejumlah entitas yang berbeda Relasi 1 : 1 Relasi yang menunjukkan bahwa setiap entitas pada himpunan entitas pertama berhubungan dengan paling banyak satu entitas pada himpunan entitas kedua Relasi 1 : N Relasi yang menunjukkan bahwa hubungan antara entitas pertama dengan entitas kedua adalah satu banding banyak atau sebaliknya. Setiap entitas dapat berelasi dengan banyak entitas pada himpunan entitas yang lain Relasi N : N Hubungan ini menunjukkan bahwa setiap entitas yang pertama dapat berhubungan dengan banyak entitas pada himpunan entitas yang kedua, demikian juga sebaliknya

II.17 Java

Java menurut definisi dari Sun adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada komputer standalone ataupun pada lingkungan jaringan. Java dikembangkan pada bulan Agustus 1991, dengan nama semula Oak. Pada Januari 1995, karena nama Oak dianggap kurang komersial, maka diganti menjadi Java. Pada Desember 1998, Sun memperkenalkan nama “Java 2” J2 sebagai generasi kedua dari java platform. Konvensi nama baru ini diterapkan untuk semua edisi Java yaitu Standard Edition J2SE, Enterprise Edition J2EE, dan Micro Edition J2ME [18]. Ada tiga platform Java yang masing-masing diarahkan untuk tujuan tertentu dan untuk lingkungan komputasi yang berbeda-beda: 1. Standard Edition J2SE : J2SE merupakan inti dari bahasa pemrograman Java. J2SE didesain untuk jalan pada komputer desktop dan komputer workstations. 2. Enterprise Edition J2EE: Dengan built-in mendukung untuk servlets. JSP, dan XML, edisi ini ditujukan untuk aplikasi berbasis server. 3. Micro Edition J2ME : Didesain untuk piranti dengan memori terbatas, layar display terbatas dan power pemrosesan yang juga terbatas.

II.17.1 Kelebihan Java

Adapun beberapa kelebihan dari bahasa pemrograman Java adalah sebagai berikut [18] :

1. Sederhana dan Ampuh

Java dirancang untuk mudah dipelajari, terutama bagi programmer yang telah mengenal CC++ akan mudah sekali untuk berpindah ke Java. Pemakai dapat belajar membuat program dengan Java secara cepat jika telah memahami konsep dasar pemrograman berorientasi objek. Java tidak memiliki hal-hal yang mengejutkan dan aneh. Java memberi anda kemampuan untuk menuangkan semua ide, karena bahasa pemrograman ini bukan merupakan scripting language bahasa naskah yang menghilangkan kemampuan kita untuk berinovasi, tetapi dengan cara berorientasi objek yang mudah dan jelas.

2. Aman

Java dirancang sebagai bahasa pemrograman yang handal dan aman. Aplikasi-aplikasi yang dibangun dengan bahasa Java sangat handal dengan manajemen memori yang bagus. Aplikasi Java juga dikenal sangat secure, yaitu kasus-kasus seperti buffer everflow yang umumnya menjadi lubang keamanan aplikasi-aplikasi berbasis CC++ tidak terjadi di Java, karena pengaturan securitynya yang bagus.

3. Berorientasi Objek

Paradigma pemrograman berorientasi objek merupakan paradigma pemrograman masa depan. Java merupakan bahasa pemrograman berorientasi objek. Java bukan turunan langsung dari bahasa pemrograman manapun, juga sama sekali tidak kompetibel dengan semuanya. Java memiliki keseimbangan, Java secara cepat jika telah memahami konsep dasar pemrograman berorientasi objek. Java tidak memiliki hal-hal yang mengejutkan dan aneh. Java memberi anda kemampuan untuk menuangkan semua ide, karena bahasa pemrograman menyediakan mekanisme peng-class-an sederhana, dengan model antar muka dinamik yang intuitif hanya jika diperlukan.

4. Kokoh

Java membatasi anda dari beberapa hal kunci supaya anda dapat menemukan kesalahan lebih cepat saat mengembangkan program. Java langsung memeriksa program saat anda menuliskannya, dan sekali lagi ketika program di jalankan. Karena Java adalah bahasa yang sangat ketat dalam hal tipe data dan deklarasi, banyak kesalahan umum terjadi saat kompilasi. Hal ini akan lebih menghemat waktu jika dibandingkan dengan keharusan menjalankan program terlebih dahulu dan memeriksa semua bagian program untuk melihat ketidakcocokan dinamis selama program berjalan. Ini adalah contoh di mana Java lebih luwes dan kokoh dari beberapa bahasa lain, tetapi dengan imbalan yang layak untuk kelebihan itu.

5. Interaktif

Java memiliki beberapa kemampuan yang memungkinkan program melakukan beberapa hal pada saat bersamaan, tanpa harus kesulitan menangani proses yang akan terjadi selanjutnya. Jalinan program-program Java yang mudah digunakan memungkinkan kita untuk memikirkan pembuatan perilaku khusus, tanpa harus mengintegrasikan perilaku tersebut dengan model pemrograman global yang mengatur perulangan kejadian.

6. Netral terhadap Berbagai Arsitektur

Java telah mengambil beberapa keputusan yang sulit dalam pembuatan bahasa Java dan bagaimana program dijalankan, jadi anda dapat sepenuhnya percaya “tulis sekali, jalan di mana saja, kapan saja, selamanya”.

7. Terintrepentasi dan Berkinerja Tinggi

Java dilengkapi keajaiban lintas platform yang luar biasa dengan kompilasi ke dalam representasi langsung yang disebut kode-byte Java Java byte- code, yang dapat diterjemahkan oleh sistem manapun yang memilki program Java didalamnya. Java, bagaimanapun dirancang untuk tetap berkinerja baik pada CPU yang tidak terlalu kuat. Walaupun Java merupakan bahasa terinterpretasi, kodekode Java telah dirancang dengan hati-hati sehingga mudah diterjemahkan ke dalam bahasa asli suatu mesin untuk menghasilkan kinerja yang tinggi. Sistem program Java yang melakukan optimasi tepat waktu tersebut tidak kehilangan keuntungan dari program yang netral terhadap platform. “lintas platform be rkinerja tinggi” bukan sekedar omong-kosong. Dalam aplikasi Java .class merupakan Java bytecode yang berjalan di atas jvm Java Virtual Machine, yang kemudian jvm-lah yang akan menginterpresentasikan kode-kode tersebut ke kode native atau kode mesin dari arsitektur yang bersangkutan. Hal sangat menarik karena urusan arsitektur mesin bukan jadi masalah bagi programmer tapi menjadi urusan kompiler pada bahasa pemrograman Java.

II.18 Processor Hypertext Protocol PHP

PHP adalah bahasa server-side –scripting yang menyatu dengan HTML untuk membuat halaman web yang dinamis. Karena PHP merupakan server-side- scripting maka sintaks dan perintah-perintah PHP akan diesksekusi diserver kemudian hasilnya akan dikirimkan ke browser dengan format HTML. Dengan demikian kode program yang ditulis dalam PHP tidak akan terlihat oleh user sehingga keamanan halaman web lebih terjamin. PHP dirancang untuk membuat halaman web yang dinamis, yaitu halaman web yang dapat membentuk suatu tampilan berdasarkan permintaan terkini, seperti menampilkan isi basis data ke halaman web [19].

II.19 MySQL

MySQL adalah salah satu jenis database server yang sangat terkenal dan banyak digunakan untuk membangun aplikasi web yang menggunakan database sebagai sumber dan pengolahan datanya. MySQL dikembangkan oleh perusahaan swedia bernama MySQL AB yang pada saat ini bernama Tcx DataKonsult AB sekitar tahun 1994-1995, namun cikal bakal kodenya sudah ada sejak tahun 1979. Awalnya Tcx merupakan perusahaan pengembang software dan konsultan database, dan saat ini MySQL sudah diambil alih oleh Oracle Corp. Kepopuleran MySQL antara lain karena MySQL menggunakan SQL sebagai bahasa dasar untuk mengakses databasenya sehingga mudah untuk digunakan, kinerja query cepat, dan mencukupi untuk kebutuhan database perusahaan-perusahaan yang berskala kecil sampai menengah, MySQL juga bersifat open source tidak berbayar. MySQL merupakan database yang pertama kali didukung oleh bahasa pemrograman script untuk internet PHP dan Perl. MySQL dan PHP dianggap sebagai pasangan software pembangun aplikasi web yang ideal. MySQL lebih sering digunakan untuk membangun aplikasi berbasis web, umumnya pengembangan aplikasinya menggunakan bahasa pemrograman script PHP [19].

II.20 Haversine

Metode Haversine digunakan untuk menghitung jarak antara titik di permukaan bumi menggunakan garis lintang longitude dan garis bujur lattitude sebagai variabel inputan. Haversine formula adalah persamaan penting pada navigasi, memberikan jarak lingkaran besar antara dua titik pada permukaan bola bumi berdasarkan bujur dan lintang . Dengan mengasumsikan bahwa bumi berbentuk bulat sempurna dengan jari-jari R 6.367,45 km, dan lokasi dari 2 titik di koordinant bola lintang dan bujur masing-masing adalah lon1, lat1, dan lon2, lat2, maka rumus Haversine dapat ditulis dengan persamaan sebagai berikut [21]: Gambar II.14 Rumus Haversine Keterangan: x = Longitude Lintang y = Lattitude Bujur d = Jarak R = Radius Bumi = 6371 km 1 derajat = 0.0174532925 radian Contoh Perhitungan Haversine Formula Lokasi 1: lon1= 119.800801, lat1= -0.790175 Lokasi 2: lon2= 119.8428 , lat2= -0.8989 lat1 = -0.790175 0.0174532925 radian = -0.013791155 radian lon = 119.800801 0.0174532925 radian = 2.090918422 radian lat2 = -0.8989 0.0174532925 radian = -0.01569 radian lon2 = 119.8428 0.0174532925 radian= 2.091651 radian x = lon2-lon1 cos lat1+lat22 = 2.091651-2.090918422 cos -0.013791155 + -0.015692 = 0.0007329412 y = lat2-lat1 = -0.01569- -0.013791155 = -0.001897609 d = sqrt xx + yy R = sqrt0.0007329412 0.0007329412 + -0.001897609 - 0.001897609 6371 = sqrt 0.0000041381 6371 =12.96012927km 39

BAB III ANALISIS DAN PERANCANGAN SISTEM

III.1 Analisis Sistem Analisis sistem bertujuan untuk mengidentifikasikan permasalahan- permasalahan yang terdapat pada sistem serta menentukan kebutuhan-kebutuhan dari sistem yang dibangun. Analisis tersebut meliputi analisis masalah, analisis aplikasi sejenis, analisis arsitektur sistem, analisis kebutuhan non fungsional dan analisis data. III.1.1 Analisis Masalah Dalam menjaga kepercayaan pelanggan terhadap kinerja petugas pencatat meter listrik di lapangan perlunya pengawasan terhadap petugas, akan tetapi pengawasan terhadap petugas tidaklah mudah karena terdapat beberapa masalah. Masalah-masalah tersebut diantaranya adalah: 1. Masih minimnya pemanfaatan teknologi dalam membangun sebuah aplikasi pada device petugas. 2. Tidak adanya sarana pengawasan pada device yang dibekali kepada petugas pencatat meter listrik ketika berada dilapangan. III.1.2 Analisis Arsitektur Analisis arsitektur sistem bertujuan untuk mengidentifikasi arsitektur yang akan dibangun berdasarkan dua subsistem web dan mobile. 1. Web Platform web adalah salah satu subsistem yang dipilih untuk pembangunan dari perangkat lunak ini. Pengguna perangkat lunak platform ini yaitu administrator. Administrator bertugas untuk mengolah data. Berikut adalah Gambar III.1 Arsitektur Perangkat Lunak pada Platform Web. Gambar ini menggambarkan secara keseluruhan arsitektur sistem pada platform web. Gambar III.1 Arsitektur Perangkat Lunak pada Platform Web Berikut adalah deskripsi dari Gambar III.1 Arsitektur Perangkat Lunak pada Platform Web : a. Sub sistem web admin melakukan request permintaan data ke server melalui jaringan internet b. Server menerima request permintaan data dan mengambil data sesuai permintaan dari database. c. Server mengirimkan data yang diminta melalui jaringan internet ke komputer admin. 2. Mobile Platform mobile adalah salah satu subsistem yang dipilih untuk pembangunan dari perangkat lunak ini. Arsitektur perangkat lunak pada platform mobile mengambarkan bagaimana perangkat lunak saling berinteraksi seperti diilustrasikan pada Gambar III.2 Arsitektur Perangkat Lunak pada Platform Mobile. Gambar tersebut menggambarkan keseluruhan arsitektur sistem pada platform mobile. Gambar III.2 Arsitektur Perangkat Lunak pada Platform Mobile Berikut adalah deskripsi dari Gambar III.2 Arsitektur Perangkat Lunak pada Platform Mobile: a. Perangkat mobile pengguna melakukan request data ke server melalui API b. Server menerima request data dari server dan menentukan jenis request yang diminta c. Jika server menerima permintaan lokasi maka permintaan data akan diteruskan ke server google place. d. Jika server menerima permintaan data maka server akan mengambil data yang ada di database e. Setelah server menerima data yang diminta data tersebut akan dikembalikan dalam bentuk JSON untuk diproses perangkat mobile pengguna. Arsitektur sistem yang digambarkan pada Gambar III.2 Arsitektur Perangkat Lunak pada Platform Mobile merupakan penggambaran sistem berdasarkan perspektif dua subsistem, sedangkan pada Gambar III.3 Arsitektur Sistem Keseluruhan menggambarkan arsitektur sistem dari perspektif secara keseluruhan. Gambar III.3 Arsitektur Sistem Keseluruhan III.1.3 Spesifikasi Kebutuhan Perangkat Lunak Spesifikasi kebutuhan perangkat lunak terbagi kedalam dua kebutuhan yaitu kebutuhan non fungsional dan fungsional. Kebutuhan fungsional dapat dilihat pada Tabel III.1 Spesifikasi Kebutuhan Fungsional. Tabel III.1 Spesifikasi Kebutuhan Fungsional Kode SKPL Spesifikasi Kebutuhan Perangkat Lunak SKPL-F-001 Subsistem mobile menyediakan fasilitas bagi pengguna untuk login kedalam sistem SKPL-F-002 Subsistem mobile menyediakan fasilitas bagi pengguna untuk mengirim data pencatatan meter listrik SKPL-F-003 Subsistem mobile menyediakan fasilitas bagi pengguna untuk menampilkan lokasi pengguna dan informasi geotagging pada saat pecatatan meter listrik SKPL-F-004 Subsistem mobile menyediakan fasilitas bagi pengguna untuk menampilkan notifikasi dari administrator SKPL-F-005 Subsistem mobile menyediakan fasilitas bagi pengguna untuk menampilkan riwayat pencatatan meter listrik SKPL-F-006 Subsistem mobile menyediakan fasilitas bagi pengguna untuk setting profile pengguna SKPL-F-007 Subsistem web menyediakan fasilitas login kedalam sistem untuk Kode SKPL Spesifikasi Kebutuhan Perangkat Lunak administrator Kebutuhan non fungsional pada perangkat lunak yang dibangun dapat dilihat pada Tabel III.2 Spesifikasi Kebutuhan Non Fungsional. Tabel III.2 Spesifikasi Kebutuhan Non Fungsional Kode SKPL Spesifikasi Kebutuhan Perangkat Lunak SKPL-NF-001 Sistem yang dibangun memiliki dua subsistem yaitu web dan mobile SKPL-NF-002 Sistem yang dibangun minimal menggunakan sistem operasi android versi 4.0 Ice Cream Sandwich SKPL-NF-003 Sistem yang dibangun menggunakan perangkat kamera SKPL-NF-004 Sistem dibangun dengan spesifikasi hardware yang memenuhi standar minimum kebutuhan SKPL-NF-005 Desain user interface pada perangkat lunak yang akan dibangun mengacu kepada design guidelines android dari google III.1.4 Analisis Kebutuhan Non Fungsional Analisis kebutuhan non fungsional pada sistem ini meliputi analisis perangkat lunak, analisis perangkat keras dan perangkat pikir. 1. Product Requirement Berikut adalah kebutuhan non fungsional berdasarkan klasifikasi product requirement. a. SKPL-NF-001 Sistem yang dibangun memiliki dua subsistem yaitu web dan mobile. b. SKPL-NF-002 Sistem yang dibangun minimal menggunakan sistem operasi android versi 4.0 Ice Cream Sandwich dan dibangun dengan kebutuhan perangkat lunak minimum a Sistem Operasi platform bebas b Web server XAMPP versi 1.1.7 ke atas sebagai web server c Kode editor berupa Notepad++ d Integrated development environment IDE berupa Android Studio. e Android Development Tools versi 23.0.0 sebagai plugins Android Studio. f Android Software Development Kit sebagai framework android c. SKPL-NF-003 Sistem yang dibangun menggunakan perangkat kamera d. SKPL-NF-004 Sistem dibangun dengan spesifikasi hardware yang memenuhi standar minimum kebutuhan seperti: a Komputer dengan VGA on board 512 MB b Layar dengan resolusi 1024x600 c Komputer dengan ram 2 GB d Perangkat android dengan ram 512 e Device android dengan resolusi 320x480 2. Organisational Requirement Berikut adalah kebutuhan non fungsional berdasarkan klasifikasi Organisational Requirement yaitu SKPL-NF-005 Desain user interface pada perangkat lunak yang akan dibangun mengacu kepada design guidelines android dari google 3. Analisis Pengguna Analisis pengguna sistem dimaksudkan untuk mengetahui siapa saja pengguna yang terlibat dalam menjalankan sistem, sehingga dapat diketahui tingkat dan pemahaman pengguna. Berdasarkan prosedur yang sedang berjalan, pengguna yang terlibat dalam sistem yaitu petugas dan administrator. Tabel III.3 Analisis Pengguna No Pengguna Karakteristik 1. Petugas a. Dapat mengoperasikan smartphone b. Memiliki pengalaman menggunakan internet 2. Administrator a. Dapat mengoperasikan komputer dan smartphone No Pengguna Karakteristik b. Memiliki pengalaman menggunakan internet c. Dapat menggunakan browser seperti Mozila Firefox, Google Chrome dan Internet Explorer d. Memahami tentang office application Spesifikasi pengguna yang terlibat dalam sistem yang akan dibangun dapat dideskripsikan sebagai berikut: 1. Petugas yang bertanggung jawab dalam melakukan proses baca meter. Tabel III.4 Analisis Pengguna Petugas Pengguna Petugas Tanggung Jawab Melakukan proses baca meter Hak Akses Melakukan baca meter, melihat photo tagging stand meter, melihat notifikasi, melihat riwayat Tingkat Keterampilan a. Memiliki kemampuan dalam mengoperasikan smartphone b. Memiliki kemampuan dalam menggunakan internet Pengalaman a. Pernah mengakses internet b. Pernah mengoperasikan smartphone 2. Administrator yang bertanggung jawab dalam melakukan pengawasan proses baca meter petugas dan melakukan pengolahan data petugas, data pelanggan, data pemberitahuan dan laporan. Tabel III.5 Analisis Pengguna Administrator Pengguna Administrator Tanggung Jawab Melakukan pengawasan proses baca meter petugas dan melakukan pengolahan data petugas, data pelanggan, data pemberitahuan dan laporan. Hak Akses Mengedit baca meter, melihat baca meter, Pengguna Administrator menghapus baca meter, menambah data petugas, mengedit data petugas, melihat data petugas, menghapus data petugas, menambah data pelanggan, mengedit data pelanggan, melihat data pelanggan, menghapus data pelanggan, menambah data pemberitahuan, mengedit data pemberitahuan, melihat data pemberitahuan, menghapus data pemberitahuan, mendownload laporan. Tingkat Keterampilan a. Memiliki kemampuan dalam mengoperasikan komputer dan smartphone b. Memiliki kemampuan dalam menggunakan internet Pengalaman a. Pernah mengakses internet b. Pernah mengelola data berbasis web Setelah dilakukan analisis, dapat disimpulkan bahwa pengguna pada sistem yang akan dibangun hanya petugas sebagai pengguna mobile dan administrator telah memenuhi syarat untuk menjalankan aplikasi yang akan dibangun ini. III.1.5 Analisis Data III.1.5.1 Struktur Data JSON Analisis data yang digunakan dalam penelitian ini adalah Object Relational Mapping ORM. Object relational mapping melakukan pemetaan terhadap tabel-tabel pada basis data relasional dengan suatu class entitas yang ada pada bahasa pemrograman berorientasi objek. Pemetaan yang dilakukan ORM akan membutuhkan suatu jembatan berupa format data JSON yang dapat menghubungkan ORM dengan database fisik yang ada pada server. Struktur format data JSON yang digunakan pada penelitian ini terbagi menjadi tiga yaitu data objek, data array dan data null. a. Data Objek Format pada Tabel III.6 Struktur JSON Data Objek digunakan ketika data yang diterima dari server merupakan data tunggal atau berupa satu objek Tabel III.6 Struktur JSON Data Objek Struktur data objek { “key” : “value” } b. Data Array Format pada Tabel III.7 Struktur JSON Data Array digunakan ketika data yang diterima dari server merupakan data tunggal atau berupa satu objek Tabel III.7 Struktur JSON Data Array Struktur data array { result : value, item : [{ key : value },{ key : value }] } c. Data Null Format pada Tabel III.8 Struktur JSON Data Null digunakan ketika data yang diterima dari server merupakan data tunggal atau berupa satu objek Tabel III.8 Struktur JSON Data Null Struktur data null { result : value, message : value, status_code:value } III.1.5.2 Entity Relational Diagram ERD Entity Relationship Diagram ERD adalah sekumpulan cara atau peralatan untuk mendeskripsikan data-data atau objek-objek yang dibuat berdasarkan dan berasal dari dunia nyata yang disebut entitas entity serta hubungan relationship antar entitas-entitas tersebut dengan menggunakan beberapa notasi. Adapun ERD yang akan dirancang adalah sebagai berikut : Baca Meter Petugas Pelanggan Pemberitahuan melakukan 1 N memiliki memiliki 1 N 1 N nip password_petugas nama_petugas kode_rbm id_bacameter nip nilai_kwh foto_kwh tgl_cater koordinat_x koordinat_y idpel idpel nama_pelanggan alamat_pelanggan nomor_rt nomor_rw golongan_tarifdaya kode_rbm nomor_meter_kwh koordinat_x koordinat_y id_notif isi_notif tgl_notif waktu_notif nip Kode RBM memiliki kode_rbm 1 1 keterangan Gambar III.4 Entity Relationship Diagram ERD III.1.6 Analisis Kebutuhan Fungsional Analisis kebutuhan fungsional sistem yang akan dibahas pada penelitian ini terbagi menjadi dua bagian yaitu Analisis Kebutuhan Fungsional Web dan Analisis Kebutuhan Fungsional Mobile. III.1.6.1 Analisis Kebutuhan Fungsional Web Analisis Kebutuhan Fungsional Web ini meliputi Diagram Konteks, DFD yang terbagi menjadi beberapa level dan Spesifikasi proses yang berfungsi untuk menjelaskan aliran data yang diproses. 1. Diagram Konteks Diagram Konteks adalah diagram yang menggambarkan secara umum yang menjadi masukan, proses dan keluaran yang terjadi pada sebuah sistem. Berikut adalah Gambar III.5 Diagram Konteks untuk perangkat lunak yang akan dibangun. Administrator Sub Sistem Mobile Sistem Astria Mandiri Web Data Login Admin Data Baca MeterGeotagging Data RBM Data Petugas Data Pelanggan Data Pemberitahuan Data Laporan Info Login Admin Info Baca MeterGeotagging Info RBM Info Petugas Info Pelanggan Info Pemberitahuan Laporan Data Request Baca MeterGeotagging Data Request Petugas Data Request Pelanggan Data Request Pemberitahuan Info Baca MeterGeotagging Info Petugas Info Pelanggan Info Pemberitahuan Gambar III.5 Diagram Konteks 2. DFD Level 1 Berikut adalah Gambar III.4 DFD Level 1 dari perangkat lunak yang akan dibangun. 1 Login Admin 2 Pengolahan Baca Meter Geotagging 4 Pengolahan Pelanggan 3 Pengolahan Petugas 6 Pengolahan Pemberitahuan 5 Pengolahan Laporan Administrator Sub Sistem Mobile Info Baca MeterGeotagging Data Petugas Info Petugas Data Pelanggan Info Pelanggan Data Laporan Laporan tbl_admin Data Login Admin Data Login Admin tbl_bacameter Data Login Admin Info Login Admin Data Baca MeterGeotagging Data Baca MeterGeotagging tbl_petugas Data Petugas Data Petugas tbl_pelanggan Data Pelanggan Data Pelanggan Data Baca MeterGeotagging Data Baca MeterGeotagging Data Pemberitahuan tbl_notifikasi Data Pemberitahuan Data Pemberitahuan Data Baca MeterGeotagging Info Pemberitahuan 7 Penyajian Data Web Services Data Baca MeterGeotagging Data Baca MeterGeotagging Data Petugas Data Petugas Data Pelanggan Data Pelanggan Data Pemberitahuan Data Pemberitahuan Info Baca MeterGeotagging Info Petugas Info Pelanggan Info Pemberitahuan Data Request Baca MeterGeotagging Data Request Petugas Data Request Pelanggan Data Request Pemberitahuan 8 Tambah RBM Data RBM Info RBM tbl_rbm Data RBM Data RBM Gambar III.4 DFD Level 1 3. DFD Level 2 Login Admin Berikut adalah Gambar III.5 DFD Level 2 Login Admin dari perangkat lunak yang akan dibangun. 1.1 Validasi Administrator 1.2 Gagal Login tbl_admin Data Login Admin Info Login Admin Valid Tidak Valid Info Gagal Login Admin Data Login Admin Data Login Admin Data Login Admin Tidak Tersedia Gambar III.5 DFD Level 2 Login Admin 4. DFD Level 2 Pengolahan Baca MeterGeotagging Berikut adalah Gambar III.6 DFD Level 2 Pengolahan Baca MeterGeotagging dari perangkat lunak yang akan dibangun. Administrator 2.1 Edit Baca Meter Geotagging 2.2 Lihat Baca Meter Geotagging 2.3 Hapus Baca Meter Geotagging tbl_bacameter Data Baca MeterGeotagging Info Baca MeterGeotagging Berubah Data Baca MeterGeotagging Data Baca MeterGeotagging Berubah 2.4 Cari Baca Meter Geotagging Data Baca MeterGeotagging Info Baca MeterGeotagging yang Dilihat Data Baca MeterGeotagging yang Dilihat Data Baca MeterGeotagging Info Baca MeterGeotagging Terhapus Data Baca MeterGeotagging Data Baca MeterGeotagging Terhapus Data Baca MeterGeotagging Info Baca MeterGeotagging yang Dicari Data Baca MeterGeotagging Data Baca MeterGeotagging yang Dicari Gambar III.6 DFD Level 2 Pengolahan Baca MeterGeotagging 5. DFD Level 2 Pengolahan Petugas Berikut adalah Gambar III.7 DFD Level 2 Pengolahan Petugas dari perangkat lunak yang akan dibangun. 3.1 Tambah Petugas Administrator 3.2 Edit Petugas 3.3 Lihat Petugas 3.4 Hapus Petugas tbl_petugas Data Petugas Info Petugas Berubah Data Petugas Data Petugas Berubah 3.5 Cari Petugas Data Petugas Info Petugas yang Dilihat Data Petugas yang Dilihat Data Petugas Info Petugas Terhapus Data Petugas Data Petugas Terhapus Data Petugas Info Petugas yang Dicari Data Petugas Data Petugas yang Dicari Data Petugas Info Petugas Bertambah Data Petugas Data Petugas Bertambah Gambar III.7 DFD Level 2 Pengolahan Petugas 6. DFD Level 2 Pengolahan Pelanggan Berikut adalah Gambar III.8 DFD Level 2 Pengolahan Pelanggan dari perangkat lunak yang akan dibangun. 4.1 Tambah Pelanggan Administrator 4.2 Edit Pelanggan 4.3 Lihat Pelanggan 4.4 Hapus Pelanggan tbl_pelanggan Data Pelanggan Info Pelanggan Berubah Data Pelanggan Data Pelanggan Berubah 4.5 Cari Pelanggan Data Pelanggan Info Pelanggan yang Dilihat Data Pelanggan yang Dilihat Data Pelanggan Info Pelanggan Terhapus Data Pelanggan Data Pelanggan Terhapus Data Pelanggan Info Pelanggan yang Dicari Data Pelanggan Data Pelanggan yang Dicari Data Pelanggan Info Pelanggan Bertambah Data Pelanggan Data Pelanggan Bertambah Gambar III.8 DFD Level 2 Pengolahan Pelanggan 7. DFD Level 2 Pengolahan Laporan Berikut adalah Gambar III.9 DFD Level 2 Pengolahan Laporan dari perangkat lunak yang akan dibangun. Administrator 5.1 Lihat Laporan 5.2 Cetak Laporan tbl_bacameter Data Laporan Info Laporan yang Dilihat Data Baca MeterGeotagging Laporan Data Baca MeterGeotagging Data Baca MeterGeotagging Gambar III.9 DFD Level 2 Pengolahan Laporan 8. DFD Level 2 Pengolahan Pemberitahuan Berikut adalah Gambar III.10 DFD Level 2 Pengolahan Pemberitahuan dari perangkat lunak yang akan dibangun. 6.1 Tambah Pemberitahuan Administrator 6.2 Edit Pemberitahuan 6.3 Lihat Pemberitahuan 6.4 Hapus Pemberitahuan tbl_notifikasi Data Pemberitahuan Info Pemberitahuan Berubah Data Pemberitahuan Data Pemberitahuan Berubah 6.5 Cari Pemberitahuan Data Pemberitahuan Info Pemberitahuan yang Dilihat Data Pemberitahuan yang Dilihat Data Pemberitahuan Info Pemberitahuan Terhapus Data Pemberitahuan Data Pemberitahuan Terhapus Data Pemberitahuan Info Pemberitahuan yang Dicari Data Pemberitahuan Data Pemberitahuan yang Dicari Data Pemberitahuan Info Pemberitahuan Bertambah Data Pemberitahuan Data Pemberitahuan Bertambah Gambar III.10 DFD Level 2 Pengolahan Pemberitahuan 9. DFD Level 2 Penyajian Data Web Services Berikut adalah Gambar III.11 DFD Level 2 Penyajian Data Web Services dari perangkat lunak yang akan dibangun. Sub Sistem Mobile 7.1 Request Data Baca MeterGeotagging 7.2 Request Data Petugas 7.4 Request Data Pemberitahuan 7.3 Request Data Pelanggan tbl_bacameter tbl_petugas tbl_pelanggan tbl_notifikasi Data Request Baca MeterGeotagging Info Baca MeterGeotagging Data Baca MeterGeotagging Data Baca MeterGeotagging Data Petugas Data Petugas Data Request Petugas Info Petugas Data Pelanggan Data Pelanggan Data Request Pelanggan Info Pelanggan Data Pemberitahuan Data Pemberitahuan Data Request Pemberitahuan Info Pemberitahuan Gambar III.11 DFD Level 2 Penyajian Data Web Services 10. Spesifikasi Proses Level 1 Tambah RBM Spesifikasi proses pada Tabel III.9 Spesifikasi Proses Level 1 Tambah RBM digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 1 Tambah RBM. Tabel III.9 Spesifikasi Proses Level 1 Tambah RBM No Proses Keterangan 1. No Proses 8 Nama Proses Tambah RBM Source Sumber Administrator Input Data RBM Output Info RBM Bertambah Destination Administrator Logika Proses 1. Administrator memilih tambah RBM 2. Sistem menampilkan form penambahan data RBM 3. Jika administrator memilih simpan maka sistem akan menyimpan data RBM yang telah ditambahkan ke database No Proses Keterangan 4. Jika administrator memilih batal maka tambah RBM akan dibatalkan 11. Spesifikasi Proses Level 2 Login Admin Spesifikasi proses pada Tabel III.10 Spesifikasi Proses Level 2 Login Admin digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 2 Login Admin. Tabel III.10 Spesifikasi Proses Level 2 Login Admin No Proses Keterangan 1. No Proses 1.1 Nama Proses Validasi Source Sumber Administrator Input Data Login Admin Output Info Login Admin Valid Destination Administrator Logika Proses 1. Administrator mengisi form dengan data login admin 2. Sistem akan memeriksa data login admin yang dimasukan 3. Jika data login valid maka akan menampilkan halaman utama administrator 2 No Proses 1.2 Nama Proses Gagal Login Source Sumber Administrator Input Data Login Admin Output Info Gagal Login Admin Destination Administrator Logika Proses 1. Administrator mengisi form dengan data login admin 2. Sistem akan memeriksa data login admin yang dimasukan 3. Jika data login tidak valid maka akan menampilkan pesan “username atau password salah” 12. Spesifikasi Proses Level 2 Pengolahan Baca MeterGeotagging Spesifikasi proses pada Tabel III.11 Spesifikasi Proses Leve 2 Pengolahan Baca MeterGeotagging digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 2 Pengolahan Baca MeterGeotagging. Tabel III.11 Spesifikasi Proses Leve 2 Pengolahan Baca MeterGeotagging No Proses Keterangan 1. No Proses 2.1 Nama Proses Edit Baca MeterGeotagging Source Sumber Administrator Input Data Baca MeterGeotagging Output Info Baca MeterGeotagging Berubah Destination Administrator Logika Proses 1. Administrator memilih edit baca metergeotagging 2. Sistem menampilkan form pengubahan data baca metergeotagging 3. Jika administrator memilih simpan maka sistem akan menyimpan data baca metergeotagging yang telah diubah ke database 4. Jika administrator memilih batal maka edit baca metergeotagging akan dibatalkan 2. No Proses 2.2 Nama Proses Lihat Baca MeterGeotagging Source Sumber Administrator Input Data Baca MeterGeotagging Output Info Baca MeterGeotagging yang Dilihat Destination Administrator Logika Proses 1. Administrator memilih lihat baca metergeotagging 2. Sistem menampilkan detail data baca metergeotagging yang dipilih dari database 3. No Proses 2.3 Nama Proses Hapus Baca MeterGeotagging Source Sumber Administrator Input Data Baca MeterGeotagging No Proses Keterangan Output Info Baca MeterGeotagging Terhapus Destination Administrator Logika Proses 1. Administrator memilih hapus baca metergeotagging 2. Sistem menampilkan konfirmasi penghapusan data baca metergeotagging dari database 3. Jika administrator memilih ya maka sistem akan menghapus data baca metergeotagging dari database 4. Jika administrator memilih tidak maka sistem akan membatalkan proses penghapusan data 4. No Proses 2.4 Nama Proses Cari Baca MeterGeotagging Source Sumber Administrator Input Data Baca MeterGeotagging Output Info Baca MeterGeotagging yang Dicari Destination Administrator Logika Proses 1. Administrator memasukkan data baca metergeotagging yang akan dicari 2. Jika data yang dicari ada maka sistem akan menampilkan data tersebut 3. Jika data yang dicari tidak ada maka sistem akan menampilkan pesan data tidak ditemukan atau tersedia 13. Spesifikasi Proses Level 2 Pengolahan Petugas Spesifikasi proses pada Tabel III.12 Spesifikasi Proses Level 2 Pengolahan Petugas digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 2 Pengolahan Petugas. Tabel III.12 Spesifikasi Proses Level 2 Pengolahan Petugas No Proses Keterangan 1. No Proses 3.1 Nama Proses Tambah Petugas Source Sumber Administrator No Proses Keterangan Input Data Petugas Output Info Petugas Bertambah Destination Administrator Logika Proses 1. Administrator memilih tambah petugas 2. Sistem menampilkan form penambahan data petugas 3. Jika administrator memilih simpan maka sistem akan menyimpan data petugas yang telah ditambahkan ke database 4. Jika administrator memilih batal maka tambah petugas akan dibatalkan 2. No Proses 3.2 Nama Proses Edit Petugas Source Sumber Administrator Input Data Petugas Output Info Petugas Berubah Destination Administrator Logika Proses 1. Administrator memilih edit petugas 2. Sistem menampilkan form pengubahan data petugas 3. Jika administrator memilih simpan maka sistem akan menyimpan data petugas yang telah diubah ke database 4. Jika administrator memilih batal maka edit petugas akan dibatalkan 3. No Proses 3.3 Nama Proses Lihat Petugas Source Sumber Administrator Input Data Petugas Output Info Petugas yang Dilihat Destination Administrator Logika Proses 1. Administrator memilih lihat petugas 2. Sistem menampilkan detail data petugas yang dipilih dari database 4. No Proses 3.4 Nama Proses Hapus Petugas No Proses Keterangan Source Sumber Administrator Input Data Petugas Output Info Petugas Terhapus Destination Administrator Logika Proses 1. Administrator memilih hapus petugas 2. Sistem menampilkan konfirmasi penghapusan data petugas dari database 3. Jika administrator memilih ya maka sistem akan menghapus data petugas dari database 4. Jika administrator memilih tidak maka sistem akan membatalkan proses penghapusan data 5. No Proses 3.5 Nama Proses Cari Petugas Source Sumber Administrator Input Data Petugas Output Info Petugas yang Dicari Destination Administrator Logika Proses 1. Administrator memasukkan data petugas yang akan dicari 2. Jika data yang dicari ada maka sistem akan menampilkan data tersebut 3. Jika data yang dicari tidak ada maka sistem akan menampilkan pesan data tidak ditemukan atau tersedia 14. Spesifikasi Proses Level 2 Pengolahan Pelanggan Spesifikasi proses pada Tabel III.13 Spesifikasi Proses Level 2 Pengolahan Pelanggan digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 2 Pengolahan Pelanggan. Tabel III.13 Spesifikasi Proses Level 2 Pengolahan Pelanggan No Proses Keterangan 1. No Proses 4.1 No Proses Keterangan Nama Proses Tambah Pelanggan Source Sumber Administrator Input Data Pelanggan Output Info Pelanggan Bertambah Destination Administrator Logika Proses 1. Administrator memilih tambah pelanggan 2. Sistem menampilkan form penambahan data pelanggan 3. Jika administrator memilih simpan maka sistem akan menyimpan data pelanggan yang telah ditambahkan ke database 4. Jika administrator memilih batal maka tambah pelanggan akan dibatalkan 2. No Proses 4.2 Nama Proses Edit Pelanggan Source Sumber Administrator Input Data Pelanggan Output Info Pelanggan Berubah Destination Administrator Logika Proses 1. Administrator memilih edit pelanggan 2. Sistem menampilkan form pengubahan data pelanggan 3. Jika administrator memilih simpan maka sistem akan menyimpan data pelanggan yang telah diubah ke database 4. Jika administrator memilih batal maka edit pelanggan akan dibatalkan 3. No Proses 4.3 Nama Proses Lihat Pelanggan Source Sumber Administrator Input Data Pelanggan Output Info Pelanggan yang Dilihat Destination Administrator Logika Proses 1. Administrator memilih lihat pelanggan 2. Sistem menampilkan detail data pelanggan yang dipilih dari database No Proses Keterangan 4. No Proses 4.4 Nama Proses Hapus Pelanggan Source Sumber Administrator Input Data Pelanggan Output Info Pelanggan Terhapus Destination Administrator Logika Proses 1. Administrator memilih hapus pelanggan 2. Sistem menampilkan konfirmasi penghapusan data pelanggan dari database 3. Jika administrator memilih ya maka sistem akan menghapus data pelanggan dari database 4. Jika administrator memilih tidak maka sistem akan membatalkan proses penghapusan data 5. No Proses 4.5 Nama Proses Cari Pelanggan Source Sumber Administrator Input Data Pelanggan Output Info Pelanggan yang Dicari Destination Administrator Logika Proses 1. Administrator memasukkan data pelanggan yang akan dicari 2. Jika data yang dicari ada maka sistem akan menampilkan data tersebut 3. Jika data yang dicari tidak ada maka sistem akan menampilkan pesan data tidak ditemukan atau tersedia 15. Spesifikasi Proses Level 2 Pengolahan Laporan Spesifikasi proses pada Tabel III.14 Spesifikasi Proses Level 2 Pengolahan Laporan digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 2 Pengolahan Laporan. Tabel III.14 Spesifikasi Proses Level 2 Pengolahan Laporan No Proses Keterangan 1. No Proses 5.1 Nama Proses Lihat Laporan Source Sumber Administrator Input Data Laporan Output Info Laporan yang Dilihat Destination Administrator Logika Proses 1. Administrator memilih lihat laporan 2. Sistem menampilkan detail data laporan yang dipilih dari database 2. No Proses 5.2 Nama Proses Cetak Laporan Source Sumber Administrator Input Data Baca MeterGeotagging Output Laporan Destination Administrator Logika Proses 1. Administrator memilih cetak laporan 2. Sistem mencetak laporan yang dipilih dari database 16. Spesifikasi Proses Level 2 Pengolahan Pemberitahuan Spesifikasi proses pada Tabel III.15 Spesifikasi Proses Level 2 Pengolahan Pemberitahuan digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 2 Pengolahan Pemberitahuan. Tabel III.15 Spesifikasi Proses Level 2 Pengolahan Pemberitahuan No Proses Keterangan 1. No Proses 6.1 Nama Proses Tambah Pemberitahuan Source Sumber Administrator Input Data Pemberitahuan Output Info Pemberitahuan Bertambah Destination Administrator Logika Proses 1. Administrator memilih tambah pemberitahuan No Proses Keterangan 2. Sistem menampilkan form penambahan data pemberitahuan 3. Jika administrator memilih simpan maka sistem akan menyimpan data pemberitahuan yang telah ditambahkan ke database 4. Jika administrator memilih batal maka tambah pemberitahuan akan dibatalkan 2. No Proses 6.2 Nama Proses Edit Pemberitahuan Source Sumber Administrator Input Data Pemberitahuan Output Info Pemberitahuan Berubah Destination Administrator Logika Proses 1. Administrator memilih edit pemberitahuan 2. Sistem menampilkan form pengubahan data pemberitahuan 3. Jika administrator memilih simpan maka sistem akan menyimpan data pemberitahuan yang telah diubah ke database 4. Jika administrator memilih batal maka edit pemberitahuan akan dibatalkan 3. No Proses 6.3 Nama Proses Lihat Pemberitahuan Source Sumber Administrator Input Data Pemberitahuan Output Info Pemberitahuan yang Dilihat Destination Administrator Logika Proses 1. Administrator memilih lihat pemberitahuan 2. Sistem menampilkan detail data pemberitahuan yang dipilih dari database 4. No Proses 6.4 Nama Proses Hapus Pemberitahuan Source Sumber Administrator Input Data Pemberitahuan Output Info Pemberitahuan Terhapus Destination Administrator No Proses Keterangan Logika Proses 1. Administrator memilih hapus pemberitahuan 2. Sistem menampilkan konfirmasi penghapusan data pemberitahuan dari database 3. Jika administrator memilih ya maka sistem akan menghapus data pemberitahuan dari database 4. Jika administrator memilih tidak maka sistem akan membatalkan proses penghapusan data 5. No Proses 6.5 Nama Proses Cari Pemberitahuan Source Sumber Administrator Input Data Pemberitahuan Output Info Pemberitahuan yang Dicari Destination Administrator Logika Proses 1. Administrator memasukkan data pemberitahuan yang akan dicari 2. Jika data yang dicari ada maka sistem akan menampilkan data tersebut 3. Jika data yang dicari tidak ada maka sistem akan menampilkan pesan data tidak ditemukan atau tersedia 17. Spesifikasi Proses Level 2 Penyajian Data Web Services Spesifikasi proses pada Tabel III.16 Spesifikasi Proses Level 2 Penyajian Data Web Services digunakan untuk menggambarkan proses model aliran yang terdapat pada DFD Level 2 Penyajian Data Web Services. Tabel III.16 Spesifikasi Proses Level 2 Penyajian Data Web Services No Proses Keterangan 1. No Proses 7.1 Nama Proses Request Data Baca MeterGeotagging Source Sumber Sub Sistem Mobile Input Data Request Baca MeterGeotagging Output Info Baca MeterGeotagging No Proses Keterangan Destination Sub Sistem Mobile Logika Proses 1. Sub Sistem Web melakukan request data baca metergeotagging 2. Sistem memvalidasi request 3. Jika request valid sistem akan mengirim data request baca metergeotagging 4. Jika request tidak valid sistem akan mengirim hasil null 2. No Proses 7.2 Nama Proses Request Data Petugas Source Sumber Sub Sistem Mobile Input Data Request Petugas Output Info Petugas Destination Sub Sistem Mobile Logika Proses 1. Sub Sistem Web melakukan request data petugas 2. Sistem memvalidasi request 3. Jika request valid sistem akan mengirim data request petugas 4. Jika request tidak valid sistem akan mengirim hasil null 3. No Proses 7.3 Nama Proses Request Data Pelanggan Source Sumber Sub Sistem Mobile Input Data Request Pelanggan Output Info Pelanggan Destination Sub Sistem Mobile Logika Proses 1. Sub Sistem Web melakukan request data pelanggan 2. Sistem memvalidasi request 3. Jika request valid sistem akan mengirim data request pelanggan 4. Jika request tidak valid sistem akan mengirim hasil null 4. No Proses 7.4 Nama Proses Request Data Pemberitahuan Source Sumber Sub Sistem Mobile Input Data Request Pemberitahuan No Proses Keterangan Output Info Pemberitahuan Destination Sub Sistem Mobile Logika Proses 1. Sub Sistem Web melakukan request data pemberitahuan 2. Sistem memvalidasi request 3. Jika request valid sistem akan mengirim data request pemberitahuan 4. Jika request tidak valid sistem akan mengirim hasil null 18. Kamus Data Berikut adalah Tabel III.17 Kamus Data yang mendeskripsikan kamus data yang digunakan pada pembangunan perangkat lunak. Tabel III.17 Kamus Data Nama Aliran Data Data Login Admin Where UsedHow Used Proses 1 input, Proses 1.1 input, Proses 1.2 input Keterangan Data ini berisiikan data validasi dan gagal login yang terdiri dari Username dan pasword Deskripsi Data ini digunakan administrator untuk login Struktur Data username+password username password {huruf} {password} Huruf Password [A-Z|0-9|a-z|Symbol] [A-Z|a-z|0-9] Nama Aliran Data Data Baca MeterGeotagging Where UsedHow Used Proses 2 input, Proses 2.1 input, Proses 2.2 input, Proses 2.3 input , Proses 2.4 input Keterangan Data ini berisiikan data baca metergeotagging untuk pengolahan data baca metergeotagging Deskripsi Data ini digunakan administrator untuk melakukan pengolahan data baca metergeotagging Struktur Data Id_bacameter+nip+nilai_kwh+foto_kwh+tgl_cater+koordinat_x+koordi nat_y+idpel Id_bacameter nip nilai_kwh foto_kwh tgl_cater koordinat_x koordinat_y idpel {angka} {huruf} {angka} {huruf} {date} {angka} {angka} {huruf} Angka Huruf Date [0-9] [A-Z|0-9|a-z|Symbol] [0-9||-|.] Nama Aliran Data Data Petugas Where UsedHow Used Proses 3 input, Proses 3.1 input, Proses 3.2 input, Proses 3.3 input , Proses 3.4 input Keterangan Data ini berisiikan data petugas untuk pengolahan data petugas Deskripsi Data ini digunakan administrator untuk melakukan pengolahan data petugas Struktur Data Nip+nama_petugas+password_petugas+kode_rbm Nip nama_petugas password_petugas kode_rbm {huruf} {huruf} {huruf} {huruf} Huruf [A-Z|0-9|a-z|Symbol] Nama Aliran Data Data Pelanggan Where UsedHow Used Proses 4 input, Proses 4.1 input, Proses 4.2 input, Proses 4.3 input , Proses 4.4 input Keterangan Data ini berisiikan data pelanggan untuk pengolahan data pelanggan Deskripsi Data ini digunakan administrator untuk melakukan pengolahan data pelanggan Struktur Data Idpel+nama_pelanggan+alamat_pelanggan+nomor_rt+nomor_rw+golon gan_tarif+daya+kode_rbm+nomor_meter_kwh+koordinat_x+koordinat_ y Idpel nama_pelanggan alamat_pelanggan nomor_rt {huruf} {huruf} {huruf} {huruf} nomor_rw golongan_tarif daya kode_rbm nomor_meter_kwh koordinat_x koordinat_y {huruf} {huruf} {angka} {huruf} {angka} {angka} {angka} Huruf Angka [A-Z|0-9|a-z|Symbol] [0-9] Nama Aliran Data Data Laporan Where UsedHow Used Proses 5 input, Proses 5.1 input, Proses 5.2 input output Keterangan Data ini berisiikan data laporan untuk pengolahan data laporan Deskripsi Data ini digunakan administrator untuk melakukan pengolahan data laporan Struktur Data Id_bacameter+nip+nilai_kwh+foto_kwh+tgl_cater+koordinat_x+koordi nat_y+idpel Id_bacameter nip nilai_kwh foto_kwh tgl_cater koordinat_x koordinat_y idpel {angka} {huruf} {angka} {huruf} {date} {angka} {angka} {huruf} Angka Huruf Date [0-9] [A-Z|0-9|a-z|Symbol] [0-9||-|.] Nama Aliran Data Data Pemberitahuan Where UsedHow Used Proses 6 input, Proses 6.1 input, Proses 6.2 input, Proses 6.3 input , Proses 6.4 input Keterangan Data ini berisiikan data pemberitahuan untuk pengolahan data pemberitahuan Deskripsi Data ini digunakan administrator untuk melakukan pengolahan data pemberitahuan Struktur Data Id_notif+isi_notif+tgl_notif+waktu_notif+nip Id_notif isi_notif tgl_notif waktu_notif nip {angka} {huruf} {date} {time} {huruf} Angka Huruf Date Time [0-9] [A-Z|0-9|a-z|Symbol] [0-9||-|.] [0-9|:] Nama Aliran Data Data RBM Where UsedHow Used Proses 8 input Keterangan Data ini berisiikan data RBM untuk tambah data RBM Deskripsi Data ini digunakan administrator untuk melakukan tambah data RBM Struktur Data kode_rbm+keterangan kode_rbm keterangan {huruf} {huruf} Huruf [A-Z|0-9|a-z|Symbol] Nama Aliran Data Data Request Baca MeterGeotagging Where UsedHow Used Proses 7input, Proses 7.1input output, Proses 7.2 input output, Proses 7.3 input output, Proses 7.4 input output Deskripsi Data ini berisiikan data baca metergeotagging untuk data request dari api server Struktur Data Id_bacameter+nip+nilai_kwh+foto_kwh+tgl_cater+koordinat_x+koordi nat_y+idpel Id_bacameter nip nilai_kwh foto_kwh tgl_cater koordinat_x koordinat_y idpel {angka} {huruf} {angka} {huruf} {date} {angka} {angka} {huruf} Angka Huruf [0-9] [A-Z|0-9|a-z|Symbol] Date [0-9||-|.] Nama Aliran Data Data Request Petugas Where UsedHow Used Proses 7input, Proses 7.1input output, Proses 7.2 input output, Proses 7.3 input output, Proses 7.4 input output Deskripsi Data ini berisiikan data petugas untuk data request dari api server Struktur Data Nip+nama_petugas+password_petugas+kode_rbm Nip nama_petugas password_petugas kode_rbm {huruf} {huruf} {huruf} {huruf} Huruf [A-Z|0-9|a-z|Symbol] Nama Aliran Data Data Request Pelanggan Where UsedHow Used Proses 7input, Proses 7.1input output, Proses 7.2 input output, Proses 7.3 input output, Proses 7.4 input output Deskripsi Data ini berisiikan data pelanggan untuk data request dari api server Struktur Data Idpel+nama_pelanggan+alamat_pelanggan+nomor_rt+nomor_rw+golon gan_tarif+daya+kode_rbm+nomor_meter_kwh+koordinat_x+koordinat_ y Idpel nama_pelanggan alamat_pelanggan nomor_rt nomor_rw golongan_tarif daya kode_rbm nomor_meter_kwh koordinat_x koordinat_y {huruf} {huruf} {huruf} {huruf} {huruf} {huruf} {angka} {huruf} {angka} {angka} {angka} Huruf Angka [A-Z|0-9|a-z|Symbol] [0-9] Nama Aliran Data Data Request Pemberitahuan Where UsedHow Used Proses 7input, Proses 7.1input output, Proses 7.2 input output, Proses 7.3 input output, Proses 7.4 input output Deskripsi Data ini berisiikan data pemberitahuan untuk data request dari api server Struktur Data Id_notif+isi_notif+tgl_notif+waktu_notif+nip Id_notif isi_notif tgl_notif waktu_notif nip {angka} {huruf} {date} {time} {huruf} Angka Huruf Date Time [0-9] [A-Z|0-9|a-z|Symbol] [0-9||-|.] [0-9|:] III.1.6.2 Analisis Kebutuhan Fungsional Mobile 1. Diagram Use Case Diagram Use Case merupakan pemodelan untuk menggambarkan kelakuan behavior perangkat lunak yang akan dibuat. Berikut adalah Gambar III.12 Diagram Use Case. Garis keterhubungan yang dimiliki use case Send data via API dan Retrieve data via API tidak digambarkan untuk mempermudah pembacaan diagram. Gambar III.12 Diagram Use Case 2. Definisi Aktor Pada ini diisi dengan daftar actor dan deskripsi role untuk actor tersebut. Deskripsi role harus menjelaskan wewenang pada role tersebut dalam perangkat lunak. Bisa dibuat dalam bentuk Tabel III.18 Definisi Aktor berikut: Tabel III.18 Definisi Aktor No Actor Deskripsi 1 Pengguna Actor dengan role ini memiliki wewenang untuk menggunakan fungsionalitas pada level user interface. 2 Sub Sistem Web Actor dengan role ini memiliki wewenang sebagai penyedia API jembatan sumber data dan berjalan secara background. 3. Definisi Use Case Pada Tabel III.19 Definisi Use Case berisi daftar use case dan deskripsi singkat mengenai use case tersebut. Tabel III.19 Definisi Use Case No Use Case Deskripsi 1 Login System menampilkan form login untuk pengguna yang terdiri dari nip dan password 2 Create Baca Meter System menampilkan form baca meter untuk pengguna yang terdiri dari isi id pelanggan, isi nilai kwh dan ambil foto stand meter 3 Add Id Pelanggan Sistem menampilkan form untuk memilih atau mencari id pelanggan 4 Add Nilai Kwh System menampilkan form untuk mengisi nilai kwh 5 Take Photo by Camera System memanggil fungsi camera yang ada pada device pengguna 6 View Geotagging System menampilkan peta dan data geotagging 7 View Notifikasi System dapat menampilkan notifikasi 8 View Riwayat System menampilkan data riwayat 9 Setting Profile System menyediakan setting dari profile pengguna 4. Skenario Use Case Skenario yang dibuat ditujukan untuk beberapa use case utama, yang menggambarkan urutan interaksi actor dengan use case tersebut, dari awal sampai akhir. a. Skenario Use Case Login Berikut adalah Tabel III.20 Requirement A.1 yang menjelaskan kebutuhan dari use case login dan Tabel III.21 Use Case Skenario Login yang menjelaskan skenario dari use case login. Tabel III.20 Requirement A.1 Requirement A.1 Data login terdiri dari nip dan password. Tabel III.21 Use Case Skenario Login Use Case Name Login Related Requirements Requirement A.1 Goal Context Melakukan login kedalam perangkat lunak Preconditions Form login perangkat lunak ditampilkan Successful End Condition Menampilkan activity utama perangkat lunak Failed End Condition Menampilkan pesan kesalahan login Primary Actor Pengguna Trigger Pengguna menekan tombol login Main Flow Step Action 1 Sistem menampilkan form login perangkat lunak 2 Pengguna mengisi data login 3 Pengguna menekan tombol login 4 Sistem melakukan validasi field login 5 Sistem melakukan autentikasi data login 6 Sistem menampilkan activity utama perangkat lunak Extension Step Branching Action 4.1 nip dan password kosong 4.2 nip dan password terisi 5.1 nip dan password tidak terdaftar 5.2 nip dan password tidak valid. b. Skenario Use Case Create Baca Meter Berikut adalah Tabel III.22 Requirement A.2 yang menjelaskan kebutuhan dari use case create baca meter dan Tabel III.23 Skenario Use Case Create Baca Meter yang menjelaskan skenario dari use case create baca meter. Tabel III.22 Requirement A.2 Requirement A.2 Data masukan terdiri dari isi id pelanggan, ambil foto stand meter dan isi nilai kwh. Tabel III.23 Skenario Use Case Create Baca Meter Use Case Name Create Baca Meter Related Requirements Requirement A.2 Goal Context Mengirim data baca meter Preconditions Form baca meter ditampilkan Successful End Condition Menampilkan pesan data sukses terkirim Failed End Condition Menampilkan pesan data gagal terkirim Primary Actor Pengguna Trigger Pengguna memilih menu baca meter. Main Flow Step Action 1 Sistem menampilkan form baca meter 2 Pengguna mengisi data sesuai Tabel III.22 Requirement A.2 3 Pengguna menekan tombol send 4 Sistem melakukan validasi masukan pengguna 5 Menampilkan pesan data sukses terkirim Extension Step Branching Action 4.1 Data masukan kosong 4.2 Data masukan terisi c. Skenario Use Case Add Id Pelanggan Berikut adalah Tabel III.24 Skenario Use Case Add Id Pelanggan yang menjelaskan skenario dari use case add id pelanggan. Tabel III.24 Skenario Use Case Add Id Pelanggan Use Case Name Add Id Pelanggan Related Requirements - Goal Context Data id pelanggan Preconditions Activity id pelanggan perangkat lunak ditampilkan Successful End Condition Menampilkan activity form id pelanggan Failed End Condition Activity form id pelanggan gagal ditampilkan Primary Actor Pengguna Trigger Pengguna memilih data id pelanggan. Main Flow Step Action 1 Pengguna memilih menu id pelanggan 2 Sistem menampilkan form id pelanggan 3 Pengguna memilih id pelanggan 4 Sistem memvalidasi id pelanggan yang dipilih 5 Sistem menampilkan form baca meter yang telah teisi id pelanggan Extension Step Branching Action 2.1 Sistem gagal menampilkan form 2.2 Sistem berhasil menampilkan form 4.1 Jika jarak id pelanggan dengan lokasi petugas lebih dari 10 meter, sistem tidak dapat melanjutkan ke take foto by camera 4.2 Jika jarak id pelanggan dengan lokasi petugas kurang dari 10 meter, sistem dapat melanjutkan ke take foto by camera d. Skenario Use Case Take Photo by Camera Berikut adalah Tabel III.25 Skenario Use Case Take Photo by Camera yang menjelaskan skenario dari use case take photo by camera. Tabel III.25 Skenario Use Case Take Photo by Camera Use Case Name Take Photo by Camera Related Requirements - Goal Context Melakukan pengambilan take photo Preconditions Form baca meter ditampilkan Successful End Condition Photo berhasil diambil Failed End Condition Photo tidak berhasil diambil Primary Actor Pengguna Trigger Pengguna memilih diambil Included Case - Main Flow Step Action 1. Sistem menampilkan activity camera 2. Pengguna memilih take photo 3. Sistem mengambil gambar dari camera 4. Sistem mengedit hasil foto crop Extension Step Branching Action 3.1 Sistem gagal mengambil gambar 3.2 Sistem berhasil mengambil gambar. e. Skenario Use Case Add Nilai Kwh Berikut adalah Tabel III.26 Skenario Use Case Add Nilai Kwh yang menjelaskan skenario dari use case add nilai kwh. Tabel III.26 Skenario Use Case Add Nilai Kwh Use Case Name Add Nilai Kwh Related Requirements - Goal Context Data nilai kwh Preconditions Activity nilai kwh perangkat lunak ditampilkan Successful End Condition Menampilkan activity form nilai kwh Failed End Condition Activity form nilai kwh gagal ditampilkan Primary Actor Pengguna Trigger Pengguna mengisi data nilai kwh. Main Flow Step Action 1 Pengguna memilih menu nilai kwh 2 Sistem menampilkan form nilai kwh 3 Pengguna mengisi nilai kwh Extension Step Branching Action 2.1 Sistem gagal menampilkan form 2.2 Sistem berhasil menampilkan form f. Skenario Use Case View Geotagging Berikut adalah Tabel III.27 Skenario Use Case View Geotagging yang menjelaskan skenario dari use case view geotagging. Tabel III.27 Skenario Use Case View Geotagging Use Case Name View Geotagging Related Requirements - Goal Context Data photo dan lokasi ditampilkan Preconditions Activity view geotagging perangkat lunak ditampilkan Successful End Condition Menampilkan marker lokasi pelanggan pada peta Failed End Condition Peta lokasi pelanggan gagal ditampilkan Primary Actor Pengguna Trigger Pengguna memilih tombol geotagging perangkat lunak. Main Flow Step Action 1 Pengguna memilih tombol geotagging perangkat lunak. 2 Sistem menampilkan peta lokasi pelanggan 3 Sistem menampilkan data photo dan lokasi dari stand meter pelanggan Extension Step Branching Action 2.1 Sistem gagal menampilkan peta lokasi pelanggan. 2.2 Sistem berhasil menampilkan peta lokasi pelanggan. g. Skenario Use Case View Notifikasi Berikut adalah Tabel III.28 Skenario Use Case View Notifikasi yang menjelaskan skenario dari use case view notifikasi. Tabel III.28 Skenario Use Case View Notifikasi Use Case Name View Notifikasi Related Requirements - Goal Context Data notifikasi ditampilkan Preconditions Activity view notifikasi perangkat lunak ditampilkan Successful End Condition Menampilkan data notifikasi Failed End Condition Data notifikasi gagal ditampilkan Primary Actor Pengguna Trigger Pengguna memilih tombol notifikasi perangkat lunak. Main Flow Step Action 1 Pengguna memilih tombol notifikasi perangkat lunak. 2 Sistem menampilkan data notifikasi Extension Step Branching Action 2.1 Sistem gagal menampilkan data notifikasi. 2.2 Sistem berhasil menampilkan data notifikasi. h. Skenario Use Case View Riwayat Berikut adalah .Tabel III.29 Skenario Use Case View Riwayat yang menjelaskan skenario dari use case view riwayat. Tabel III.29 Skenario Use Case View Riwayat Use Case Name View Riwayat Related Requirements - Goal Context Data riwayat ditampilkan Preconditions Activity view riwayat perangkat lunak ditampilkan Successful End Condition Menampilkan data riwayat Failed End Condition Data riwayat gagal ditampilkan Primary Actor Pengguna Trigger Pengguna memilih tombol riwayat perangkat lunak. Main Flow Step Action 1 Pengguna memilih tombol riwayat perangkat lunak. 2 Sistem menampilkan data riwayat Extension Step Branching Action 2.1 Sistem gagal menampilkan data riwayat. 2.2 Sistem berhasil menampilkan data riwayat. i. Skenario Use Case Setting Profile Berikut Tabel III.30 Skenario Use Case adalah yang menjelaskan skenario dari use case setting profile. Tabel III.30 Skenario Use Case Setting Profile Use Case Name Ganti Password Related Requirements - Goal Context Update password pengguna Preconditions Successful End Condition Password pengguna berhasil diganti. Failed End Condition Password pengguna tidak berhasil diganti. Primary Actor Pengguna Trigger Pengguna memilih tombol ganti password Main Flow Step Action 1. Sistem menampilkan halaman setting profile 2. Sistem menampilkan kolom ganti password profile 3. Pengguna mengganti password profile 4. Sistem mengvalidasi masukan pengguna 5. Sistem menampilkan pesan berhasil Extension Step Branching Action 4.1 masukan tidak diterima. 4.2 masukan diterima 5. Diagram Activity Activity diagram menjelaskan aliran kerja aktor pada perangkat lunak yang akan dibangun a. Activity Diagram Login Berikut adalah Gambar III.13 Activity Diagram Login yang menggambarkan activity diagram login. Gambar III.13 Activity Diagram Login b. Activity Diagram Create Baca Meter Berikut adalah Gambar III.14 Activity Diagram Create Baca Meter yang menggambarkan activity diagram create baca meter. Gambar III.14 Activity Diagram Create Baca Meter c. Activity Diagram Add Id Pelanggan Berikut adalah Gambar III.15 Activity Diagram Add Id Pelanggan yang menggambarkan activity diagram add id pelanggan. Gambar III.15 Activity Diagram Add Id Pelanggan d. Activity Diagram Take Photo by Camera Berikut adalah Gambar III.16 Activity Diagram Take Photo by Camera yang menggambarkan activity diagram take photo by camera. Gambar III.16 Activity Diagram Take Photo by Camera e. Activity Diagram Add Nilai Kwh Berikut adalah Gambar III.17 Activity Diagram Add Nilai Kwh yang menggambarkan activity diagram add nilai kwh. Gambar III.17 Activity Diagram Add Nilai Kwh f. Activity Diagram View Geotagging Berikut adalah Gambar III.18 Activity Diagram View Geotagging yang menggambarkan activity diagram view geotagging. Gambar III.18 Activity Diagram View Geotagging g. Activity Diagram View Notifikasi Berikut adalah Gambar III.19 Activity Diagram View Notifikasi yang menggambarkan activity diagram view notifikasi. Gambar III.19 Activity Diagram View Notifikasi h. Activity Diagram View Riwayat Berikut adalah Gambar III.20 Activity Diagram View Riwayat yang menggambarkan activity diagram view riwayat. Gambar III.20 Activity Diagram View Riwayat i. Activity Diagram Setting Profile Berikut adalah Gambar III.21 Activity Diagram Ganti yang menggambarkan activity diagram ganti password. Gambar III.21 Activity Diagram Ganti Password 6. Diagram Class Gambar III.22 Diagram Class 7. Diagram Sequence Sequence diagram digunakan untuk menggambarkan arus pekerjaan, pesan yang di sampaikan dan bagaimana elemen-elemen di dalamnya bekerja sama dari waktu ke waktu untuk mencapai suatu hasil. a. Sequence Diagram Login Pengguna Berikut adalah Gambar III.23 Sequence Diagram Login Pengguna yang menggambarkan sequence diagram login pengguna. Gambar III.23 Sequence Diagram Login Pengguna b. Sequence Diagram Create Baca Meter Berikut adalah Gambar III.24 Sequence Diagram Create Baca Meter yang menggambarkan sequence diagram baca meter. Gambar III.24 Sequence Diagram Create Baca Meter c. Sequence Diagram Add Id Pelanggan Berikut adalah Gambar III.25 Sequence Diagram Add Id Pelanggan yang menggambarkan sequence diagram add id pelanggan. Gambar III.25 Sequence Diagram Add Id Pelanggan d. Sequence Diagram Take Photo by Camera Berikut adalah Gambar III.26 Sequence Diagram Take Photo by Camera yang menggambarkan sequence diagram take photo by camera. : Pengguna BacaMeterActivity 1 : onCreate 2 : tap button add photo 3 : onActivityResult 4 : performCrop 5 : message 6 : createImageFile 7 : createImageFileCrop Gambar III.26 Sequence Diagram Take Photo by Camera e. Sequence Diagram Add Nilai Kwh Berikut adalah Gambar III.27 Sequence Diagram Add Nilai Kwh yang menggambarkan sequence diagram add nilai kwh. Gambar III.27 Sequence Diagram Add Nilai Kwh f. Sequence Diagram View Geotagging Berikut adalah Gambar III.28 Sequence Diagram View Geotagging yang menggambarkan sequence diagram view geotagging. Gambar III.28 Sequence Diagram View Geotagging g. Sequence Diagram View Notifikasi Berikut adalah Gambar III.29 Sequence Diagram View Notifikasi yang menggambarkan sequence diagram view notifikasi. Gambar III.29 Sequence Diagram View Notifikasi h. Sequence Diagram View Riwayat Berikut adalah Gambar III.30 Sequence Diagram View Riwayat yang menggambarkan sequence diagram view riwayat. Gambar III.30 Sequence Diagram View Riwayat i. Sequence Diagram Setting Profile Berikut adalah Gambar III.31 Sequence Diagram Setting Profile yang menggambarkan sequence diagram setting profile. Gambar III.31 Sequence Diagram Setting Profile III.1.7 Perancangan Sistem III.1.7.1 Perancangan Data Berikut adalah perancangan data dari perangkat lunak yang dibangun 1. Diagram Relasi Berikut adalah Gambar III.32 Diagram Relasi dari perangkat lunak yang dibangun. Gambar III.32 Diagram Relasi 2. Struktur Tabel Berikut adalah struktur table dari perangkat lunak yang dibangun a. Tabel tbl_admin Berikut adalah Tabel III.31 Struktur Tabel tbl_admin yang mendeskripsikan tabel admin. Nama tabel : tbl_admin Tempat penyimpanan : harddisk Tabel III.31 Struktur Tabel tbl_admin Nama Field Tipe Data Panjang Kunci Keterangan ID_ADMIN Int 5 Primary key not null, auto increment NAMA Varchar 100 not null USERNAME Varchar 100 not null Nama Field Tipe Data Panjang Kunci Keterangan PASSWORD Varchar 100 not null LEVEL Varchar 100 not null b. Tabel tbl_bacameter Berikut adalah Tabel III.32 Struktur Tabel tbl_bacameter yang mendeskripsikan tabel admin. Nama tabel : tbl_bacameter Tempat penyimpanan : harddisk Tabel III.32 Struktur Tabel tbl_bacameter Nama Field Tipe Data Panjang Kunci Keterangan ID_BACAMETER Int 11 Primary key not null, auto increment NIP Varchar 100 Foreign key `ni p’ References ` bandungf_astriamandiridb`.`tbl_petugas` `nip` on delete cascade on update cascade not null NILAI_KWH Int 11 not null FOTO_KWH varchar 100 not null TGL_CATER varchar 100 not null KOORDINAT_X Double not null KOORDINAT_Y Double not null IDPEL varchar 100 Foreign key `idpel References ` bandungf_astriamandiridb `.`tbl_pelanggan` `idpel` on delete cascade on update cascade not null c. Tabel tbl_petugas Berikut adalah Tabel III.33 Struktur Tabel tbl_petugas yang mendeskripsikan tabel admin. Nama tabel : tbl_petugas Tempat penyimpanan : harddisk Tabel III.33 Struktur Tabel tbl_petugas Nama Field Tipe Data Panjang Kunci Keterangan NIP varchar 20 primary key not null NAMA_PETUGAS varchar 100 not null PASSWORD_PETUGAS varchar 100 not null KODE_RBM varchar 20 Foreign key `kode_rbm’ References ` not null Nama Field Tipe Data Panjang Kunci Keterangan bandungf_astriamandiridb `.`tbl_rbm` `kode_rbm` on delete cascade on update cascade d. Tabel tbl_pelanggan Berikut adalah Tabel III.34 Struktur Tabel tbl_pelanggan yang mendeskripsikan tabel admin. Nama tabel : tbl_pelanggan Tempat penyimpanan : harddisk Tabel III.34 Struktur Tabel tbl_pelanggan Nama Field Tipe Data Panjang Kunci Keterangan IDPEL varchar 100 primary key not null NAMA_PELANGGAN varchar 100 not null ALAMAT_PELANGGAN varchar 100 not null NOMOR_RT varchar 20 not null NOMOR_RW varchar 20 not null GOLONGAN_TARIF varchar 20 not null DAYA int 11 not null KODE_RBM varchar 20 Foreign key `kode_rbm’ References ` bandungf_astriamandiridb `.`tbl_rbm` `kode_rbm` on delete cascade on update cascade not null NOMOR_METER_KWH double not null KOORDINAT_X double not null KOORDINAT_Y double not null e. Tabel tbl_notifikasi Berikut adalah Tabel III.35 Struktur Tabel tbl_notifikasi yang mendeskripsikan tabel admin. Nama tabel : tbl_notifikasi Tempat penyimpanan : harddisk Tabel III.35 Struktur Tabel tbl_notifikasi Nama Field Tipe Data Panjang Kunci Keterangan ID_NOTIF Int 11 Primary key not null, auto increment ISI_NOTIF Varchar 200 not null Nama Field Tipe Data Panjang Kunci Keterangan TGL_NOTIF Date not null WAKTU_NOTIF Time not null NIP Varchar 20 Foreign key `nip’ References ` bandungf_astriamandiridb `.`tbl_petugas` `nip` on delete cascade on update cascade not null f. Tabel tbl_rbm Berikut adalah Tabel III.36 Struktur Tabel tbl_rbm yang mendeskripsikan tabel admin. Nama tabel : tbl_rbm Tempat penyimpanan : harddisk Tabel III.36 Struktur Tabel tbl_rbm Nama Field Tipe Data Panjang Kunci Keterangan KODE_RBM varchar 20 Primary key not null KETERANGAN varchar 200 not null III.1.7.2 Perancangan Arsitektur Menu Perancangan arsitektur menyediakan software engineer satu gambaran dari stuktur menu program atau blueprint dari perangkat lunak yang akan dibuat. Tujuan perancangan ini adalah untuk membangun struktur program secara moduler dan menggambarkan hubungan kendali diantara modul program. Berikut adalah gambaran perancangan arsitektural menu. 1. Perancangan Arsitektur Menu Web Berikut adalah Gambar III.33 Perancangan Arsitektur Menu Web yang mengambarkan arsitektur menu web. Login Pengolahan Data Petugas Pengolahan Data Pelanggan Pengolahan Pemberitahuan Pengolahan Laporan Pengolahan Baca Meter Geotagging Aplikasi Astria Mandiri Logout Pengolahan Data RBM Gambar III.33 Perancangan Arsitektur Menu Web 2. Perancangan Arsitektur Menu Mobile Berikut adalah Gambar III.34 Perancangan Arsitektur Menu Mobile yang mengambarkan arsitektur menu mobile. Login Geotagging Pemberitahuan Riwayat Setting Profile Baca Meter Aplikasi Astria Mandiri Add Id Pelanggan Add Nilai KwH Add Photo Logout Gambar III.34 Perancangan Arsitektur Menu Mobile III.1.7.3 Perancangan Antar Muka 1. Perancangan Antarmuka Web a. Perancangan Antarmuka Login Admin Berikut adalah Gambar III.35 Perancangan Antarmuka Login Admin yang mengambarkan rancangan antarmuka login admin. Gambar III.35 Perancangan Antarmuka Login Admin b. Perancangan Antarmuka Pengolahan Baca MeterGeotagging Berikut adalah Gambar III.36 Perancangan Antarmuka Pengolahan Baca MeterGeotagging yang mengambarkan rancangan antarmuka pengolahan baca metergeotagging. Gambar III.36 Perancangan Antarmuka Pengolahan Baca MeterGeotagging c. Perancangan Antarmuka Pengolahan Petugas Berikut adalah Gambar III.37 Perancangan Antarmuka Pengolahan Petugas yang mengambarkan rancangan antarmuka pengolahan petugas. Gambar III.37 Perancangan Antarmuka Pengolahan Petugas d. Perancangan Antarmuka Pengolahan Pelanggan Berikut adalah Gambar III.38 Perancangan Antarmuka Pengolahan Pelanggan yang mengambarkan rancangan antarmuka pengolahan pelanggan. Gambar III.38 Perancangan Antarmuka Pengolahan Pelanggan e. Perancangan Antarmuka Pengolahan Pemberitahuan Berikut adalah Gambar III.39 Perancangan Antarmuka Pengolahan Pemberitahuan yang mengambarkan rancangan antarmuka pengolahan pemberitahuan. Gambar III.39 Perancangan Antarmuka Pengolahan Pemberitahuan f. Perancangan Antarmuka Pengolahan Laporan Berikut adalah Gambar III.40 Perancangan Antarmuka Pengolahan Laporan yang mengambarkan rancangan antarmuka pengolahan laporan. Gambar III.40 Perancangan Antarmuka Pengolahan Laporan g. Perancangan Antarmuka Edit Baca Meter Berikut adalah Gambar III.41 Perancangan Antarmuka Edit Baca Meter yang mengambarkan rancangan antarmuka edit baca meter. Gambar III.41 Perancangan Antarmuka Edit Baca Meter h. Perancangan Antarmuka Lihat Baca Meter Berikut adalah Gambar III.42 Perancangan Antarmuka Lihat Baca Meter yang mengambarkan rancangan antarmuka lihat baca meter. Gambar III.42 Perancangan Antarmuka Lihat Baca Meter i. Perancangan Antarmuka Hapus Baca Meter Berikut adalah Gambar III.43 Perancangan Antarmuka Hapus Baca Meter yang mengambarkan rancangan antarmuka hapus baca meter. Gambar III.43 Perancangan Antarmuka Hapus Baca Meter j. Perancangan Antarmuka Tambah Petugas Berikut adalah Gambar III.44 Perancangan Antarmuka Tambah Petugas yang mengambarkan rancangan antarmuka tambah petugas. Gambar III.44 Perancangan Antarmuka Tambah Petugas k. Perancangan Antarmuka Edit Petugas Berikut adalah Gambar III.45 Perancangan Antarmuka Edit Petugas yang mengambarkan rancangan antarmuka edit petugas. Gambar III.45 Perancangan Antarmuka Edit Petugas l. Perancangan Antarmuka Lihat Petugas Berikut adalah Gambar III.46 Perancangan Antarmuka Lihat Petugas yang mengambarkan rancangan antarmuka lihat petugas. Gambar III.46 Perancangan Antarmuka Lihat Petugas m. Perancangan Antarmuka Hapus Petugas Berikut adalah Gambar III.47 Perancangan Antarmuka Hapus Petugas yang mengambarkan rancangan antarmuka hapus petugas. Gambar III.47 Perancangan Antarmuka Hapus Petugas n. Perancangan Antarmuka Tambah Pelanggan Berikut adalah Gambar III.48 Perancangan Antarmuka Tambah Pelanggan yang mengambarkan rancangan antarmuka tambah pelanggan. Gambar III.48 Perancangan Antarmuka Tambah Pelanggan o. Perancangan Antarmuka Edit Pelanggan Berikut adalah Gambar III.49 Perancangan Antarmuka Edit Pelanggan yang mengambarkan rancangan antarmuka edit pelanggan. Gambar III.49 Perancangan Antarmuka Edit Pelanggan p. Perancangan Antarmuka Lihat Pelanggan Berikut adalah Gambar III.50 Perancangan Antarmuka Lihat Pelanggan yang mengambarkan rancangan antarmuka lihat pelanggan. Gambar III.50 Perancangan Antarmuka Lihat Pelanggan q. Perancangan Antarmuka Hapus Pelanggan Berikut adalah Gambar III.51 Perancangan Antarmuka Hapus Pelanggan yang mengambarkan rancangan antarmuka hapus pelanggan. Gambar III.51 Perancangan Antarmuka Hapus Pelanggan r. Perancangan Antarmuka Tambah Pemberitahuan Berikut adalah Gambar III.52 Perancangan Antarmuka Tambah Pemberitahuan yang mengambarkan rancangan antarmuka tambah pemberitahuan. Gambar III.52 Perancangan Antarmuka Tambah Pemberitahuan s. Perancangan Antarmuka Edit Pemberitahuan Berikut adalah Gambar III.53 Perancangan Antarmuka Edit Pemberitahuan yang mengambarkan rancangan antarmuka edit pemberitahuan. Gambar III.53 Perancangan Antarmuka Edit Pemberitahuan t. Perancangan Antarmuka Lihat Pemberitahuan Berikut adalah Gambar III.54 Perancangan Antarmuka Lihat Pemberitahuan yang mengambarkan rancangan antarmuka lihat pemberitahuan. Gambar III.54 Perancangan Antarmuka Lihat Pemberitahuan u. Perancangan Antarmuka Hapus Pemberitahuan Berikut adalah Gambar III.55 Perancangan Antarmuka Hapus Pemberitahuan yang mengambarkan rancangan antarmuka hapus pemberitahuan. Gambar III.55 Perancangan Antarmuka Hapus Pemberitahuan v. Perancangan Antarmuka Tambah RBM Berikut adalah Gambar III.56 Perancangan Antarmuka Tambah RBM yang mengambarkan rancangan antarmuka tambah rbm. Gambar III.56 Perancangan Antarmuka Tambah RBM 2. Perancangan Antarmuka Mobile a. Perancangan Antarmuka Splashscreen Berikut adalah Gambar III.57 Perancangan Antarmuka Splashscreen yang mengambarkan rancangan antarmuka splashscreen. Gambar III.57 Perancangan Antarmuka Splashscreen b. Perancangan Antarmuka Login Pengguna Berikut adalah Gambar III.58 Perancangan Antarmuka Login Pengguna yang mengambarkan rancangan antarmuka login pengguna. Gambar III.58 Perancangan Antarmuka Login Pengguna c. Perancangan Antarmuka Halaman Utama Pengguna Berikut adalah Gambar III.59 Perancangan Antarmuka Halaman Utama Pengguna yang mengambarkan rancangan antarmuka halaman utama pengguna. Gambar III.59 Perancangan Antarmuka Halaman Utama Pengguna d. Perancangan Antarmuka Baca Meter Berikut adalah Gambar III.60 Perancangan Antarmuka Baca Meter yang mengambarkan rancangan antarmuka baca meter. Gambar III.60 Perancangan Antarmuka Baca Meter e. Perancangan Antarmuka Geotagging Berikut adalah Gambar III.61 Perancangan Antarmuka Geotagging yang mengambarkan rancangan antarmuka geotagging. Gambar III.61 Perancangan Antarmuka Geotagging f. Perancangan Antarmuka Notifikasi Berikut adalah Gambar III.62 Perancangan Antarmuka Notifikasi yang mengambarkan rancangan antarmuka notifikasi. Gambar III.62 Perancangan Antarmuka Notifikasi g. Perancangan Antarmuka Riwayat Berikut adalah Gambar III.63 Perancangan Antarmuka Riwayat yang mengambarkan rancangan antarmuka riwayat. Gambar III.63 Perancangan Antarmuka Riwayat h. Perancangan Antarmuka Pilih Id Pelanggan Berikut adalah Gambar III.64 Perancangan Antarmuka Pilih Id Pelanggan yang mengambarkan rancangan antarmuka pilih id pelanggan. Gambar III.64 Perancangan Antarmuka Pilih Id Pelanggan i. Perancangan Antarmuka Ambil Photo Berikut adalah Gambar III.65 Perancangan Antarmuka yang mengambarkan rancangan antarmuka ambil photo. Gambar III.65 Perancangan Antarmuka Ambil Photo j. Perancangan Antarmuka Catat Kwh Meter Berikut adalah Gambar III.66 Perancangan Antarmuka yang mengambarkan rancangan antarmuka catat kwh meter. Gambar III.66 Perancangan Antarmuka Catat Kwh Meter k. Perancangan Antarmuka Setting Profile Berikut adalah Gambar III.67 Perancangan Antarmuka Setting Profile yang mengambarkan rancangan antarmuka setting profile. Gambar III.67 Perancangan Antarmuka Setting Profile III.1.7.4 Perancangan Pesan Perancangan pesan pada perangkat lunak yang dibangun terbagi menjadi dua perancangan pesan web dan perancangan pesan mobile. 1. Perancangan Pesan Web Berikut adalah perancangan pesan web pada perangkat lunak yang dibangun. Gambar III.68 Perancangan Pesan Web 2. Perancangan Pesan Mobile Berikut adalah perancangan pesan mobile pada perangkat lunak yang dibangun. Gambar III.69 Perancangan Pesan Mobile III.1.7.5 Jaringan Semantik Jaringan Semantik merupakan gambaran pengetahuan grafis yang menunjukkan hubungan antar objek lingkaran dan garis yang menggambarkan formasi antarobjek tersebut. Adapun jaringan semantik untuk perangkat yang dibangun sebagai berikut. H01 H02 H03 H04 H05 H06 H21 H22 H23 H31 H32 H33 H34 H41 H42 H43 H44 H51 H52 H53 H54 P01 P03 P04 P05 P06 P07 P03 P02 P04 P05 P02 P03 P02 P03 P04 P05 P06 P06 P06 P04 P05 H07 P08 P09 P11 P11 P12 P12 P13 P13 P02 P10 Gambar III.70 Jaringan Semantik Web M01 M02 M03 M04 M05 M06 M07 P01 M41 M42 M43 P02 P03 P04 P08 P05 P06 P09 M08 P10 Gambar III.71 Jaringan Semantik Mobile 117

BAB IV IMPLEMENTASI DAN PERANCANGAN SISTEM

Tahap implementasi dan pengujian sistem mendeskripsikan implementasi dan pengujian sistem terhadap perangkat lunak yang sudah di analisis pada bab sebelumnya.

IV.1 Implementasi Sistem

Tahap implementasi sistem merupakan tahap penterjemahan perancangan berdasarkan hasil analisis ke dalam suatu bahasa pemrograman tertentu serta penerapan perangkat lunak yang dibangun pada lingkungan yang sesungguhnya.

IV.1.1 Lingkungan Implementasi

Lingkungan implementasi menjelaskan kebutuhan sistem yang disarankan dalam lingkungan implementasi, kebutuhan ini terbagi menjadi tiga yaitu hardware, software dan server. Berikut adalah lingkungan implementasi dari aplikasi photo tagging untuk petugas pencatat meter listrik. 1. Spesifikasi Kebutuhan Hardware Berikut adalah spesifikasi hardware yang digunakan untuk menggunakan sistem. Tabel IV.1 Kebutuhan Minimum Hardware Sub sistem web Sub sistem mobile Processor core i3 2.30 Ghz Android 5.0 Lollipop Harddisk 500 GB TFT LCD RAM DDR3 2GB 5 Megapixels Camera Resolution Rear VGA 128 MB Jaringan GSM CDMA Resolusi layar 1366x768 Pixel Data Koneksi HSDPA EVDO Koneksi Internet A-GPS Support 2. Spesifikasi Kebutuhan Software Berikut adalah spesifikasi software yang digunakan untuk menggunakan sistem. Tabel IV.2 Kebutuhan Minimum Software Sub sistem web Sub sistem mobile Sistem Operasi Windows 7 32 bit Sistem Operasi Android 5.0 Lollipop Web Browser Mozilla Firefox 20.0, Google Chrome 30.0.1750.154 3. Spesfikasi Kebutuhan Server Berikut adalah spesifikasi server yang digunakan untuk menggunakan sistem. Tabel IV.3 Kebutuhan Spesifikasi Server Sub sistem web Web Space 500 MB Bandwidth 50 GB Bulan MySQL Database 5.1 5.5 PHP 5.2 5.3 CPanel 11.x Apache 2.x mod_deflate

IV.1.2 Implementasi Data

Implementasi basis data merupakan implementasi berdasarkan perancangan basis data yang dibuat sebelumnya. Secara fisik implementasi database ini menggunakan MySql 5.0.10. Berikut adalah sintaks pembangun dari database digunakan. 1. Pembuatan Database CREATE DATABASE original_astriamandiri