APLIKASI TRANSAKSI PEMBELIAN BARANG PADA MINIMARKET DENGAN MEMPERGUNAKAN PONSEL BERBASIS SISTEM OPERASI ANDROID PURCHASE TRANSACTION APPLICATION IN MINIMARKET BY USING ANDROID PHONE BASED OPERATING SYSTEM Tugas Akhir Oleh: Fathia Mohamad Fadilah Aazhar NIM : 49013011 PROGRAM STUDI DIPLOMA IV TEKNIK ELEKTRO SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG 2014 APLIKASI TRANSAKSI PEMBELIAN BARANG PADA MINIMARKET DENGAN MEMPERGUNAKAN PONSEL BERBASIS SISTEM OPERASI ANDROID Oleh: Fathia Mohamad Fadilah Azhar Tugas Akhir ini telah diterima dan disahkan sebagai persyaratan untuk memperoleh gelar SARJANA SAINS TERAPAN di PROGRAM STUDI DIPLOMA 4 TEKNIK ELEKTRO SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG Bandung, 27 Maret 2014 Disetujui oleh : Pembimbing, Dr. Ir. Aciek Ida Wuryandari KATA PENGANTAR Bismillaahirrahmaanirrahiim. Puji syukur kehadirat Allah SWT. Tuhan semesta alam yang memberikan kemudahan dalam setiap kesulitan yang dihadapi, atas segala rahmat dan karuniaNya yang melimpah ruah pada kami hingga saat ini. Karena dengan izin dan berkahNya lah saya mampu menyelesaikan Laporan Tugas Akhir dengan judul Aplikasi Transaksi Pembelian Barang Pada Minimarket Bagi Konsumen Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android”. Tugas Akhir ini disusun untuk memenuhi syarat kelulusan pendidikan di Program Studi Diploma IV Teknik Elektro Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung. Saya menyadari bahwa laporan ini tidak diselesaikan hanya dengan memanfaatkan kemampuan saya saja. Oleh karena itu saya mengucapkan terima kasih kepada: 1. Orang tua dan keluarga yang selalu memberikan doa serta dukungan yang tiada henti. 2. Ibu Dr.Ir. Aciek Ida Wuryandari dan Bapak Reza Darmakusum, S.T., M.T. selaku pembimbing dan asisten pembimbing yang telah memberikan bimbingan, dukungan dan kontribusi terbaik sejak awal pengerjaan Tugas Akhir hingga laporan ini terselesaikan. 3. Koordinator Tugas Akhir yang telah memberikan pengarahan kepada kami dalam persyaratan yang harus dilakukan pada Tugas Akhir. 4. Seluruh dosen Program Studi Diploma IV Teknik Elektro Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung yang telah mengajar dan memberikan ilmunya kepada saya selama masa perkuliahan. 5. Seluruh staf Tata Usaha Program Studi Diploma IV Teknik Elektro Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandun, yang telah memberikan kemudahan kepada kami dalam hal administrasi. 6. Seluruh rekan-rekan 2013 Program Studi Diploma IV Teknik Elektro Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung yang telah memberikan semangat, bersama-sama menuntut ilmu selama satu tahun ini dan menjadi teman dikala susah ataupun senang. 7. Seluruh pihak yang telah memberikan bantuan, semangat, motivasi, hiburan, serta keyakinan yang tidak dapat kami tuliskan satu per satu pada laporan ini. Atas sumbangsih dan pengorbanan mereka, kami sampaikan jazaakumullaahu khairan katsiran. Semoga Allah SWT membalas semua kebaikan yang telah diberikan. Kami menyadari bahwa laporan ini masih jauh dari sempurna. Karena itu, kami mengharapkan saran dan kritik yang bersifat membangun guna memperbaiki isi laporan ini. Semoga laporan ini bermanfaat bagi siapapun yang membacanya. Bandung, Maret 2014 Fathia M. Fadilah ABSTRAK APLIKASI TRANSAKSI PEMBELIAN BARANG PADA MINIMARKET DENGAN MEMPERGUNAKAN PONSEL BERBASIS SISTEM OPERASI ANDROID Oleh Fathia Mohamad Fadilah Azhar NIM : 49013011 PROGRAM STUDI DIPLOMA 4 TEKNIK ELEKTRO Seiring dengan berkembangnya fungsi ponsel dewasa ini, selain sebagai alat komunikasi juga sebagai perangkat yang fungsinya hampir sama seperti personal computer yaitu memiliki kemampuan untuk melihat informasi di internet, melihat dan mengolah informasi lokasi peta, membuat dan mengolah dokumen serta belanja online sampai melakukan transaksi perbankan. Ponsel pintar saat ini sudah memiliki sistem operasi yang canggih dan beberapa diantaranya bisa ditanam aplikasi yang dibuat oleh developer dengan mengikuti aturan dan mekanisme yang diberikan oleh vendor sistem operasi di perangkat mobile. Aplikasi sistem informasi untuk sebuah minimarket pun sudah mampu dijalankan dalam setiap jenis ponsel pintar (smartphone). Hal ini menjadi salah satu efisiensi proses belanja yang biasanya dilakukan oleh konsumen untuk membeli sebuah atau beberapa barang kebutuhannya. Dengan adanya aplikasi minimarket ini, konsumen tidak perlu jalan-jalan untuk melihat-lihat barang yang akan dibeli, konsumen mendapatkan data barang hanya dengan mengakses aplikasi minimarket melalui ponsel pintarnya dari mulai nama barang – stok barang – masa kadaluarsa sampai dengan harga barang tersebut. Hal lain yang mempengaruhi efisiensi adalah mekanisme pembayaran yang bisa dilakukan melalui pembayaran elektronik, voucher belanja digital untuk meminimalisir penggunaan kertas voucher sampai dengan permintaan untuk mengirimkan barang yang dibeli kepada konsumen. Semua hal mekanisme minimarket yang terdapat di dalam ponsel pintar perlu dibangun dengan standar prosesnya dari mulai penjualan barang, supply barang, jasa pengiriman, stok barang, sampai kepada manajemen pegawai minimarket. Kata kunci: Android, Minimarket, pembayaran elektronik, jasa pengiriman, supply chain, manajemen stok, manajemen pegawai. ABSTRACT PURCHASE TRANSACTION APPLICATION IN MINIMARKET BY USING ANDROID PHONE BASED OPERATING SYSTEM Oleh Fathia Mohamad Fadilah Azhar NIM : 49013011 APPLIED SCIENCE IN ELECTRICAL ENGINEERING STUDY PROGRAM Along with the development of today's mobile phone functionality , as well as a communication device that functions much like a personal computer which has the ability to look at information on the internet , viewing and processing location of maps information, create and process documents as well as online shopping to conduct banking transactions. Smart phones now have sophisticated operating system and some of them can be grown applications created by developers to follow the rules and mechanisms provided by the operating system vendor in the mobile device . Application of information systems for a mini market had been able to run in any kind of smart phones . It became one of the efficiency of the shopping process that is usually done by the consumer to purchase an item or multiple needs. With the application of this mini market, consumers do not need the streets to see the items to be purchased , the consumer gets the data item just by accessing the mini market applications through smart phones from start to name things - stocks - shelf life up to the price of the goods. Another thing that affects the efficiency is a payment mechanism that can be done through electronic payment , digital shopping vouchers to minimize the use of paper vouchers to the request to send the items purchased to consumers . All things mini market mechanisms contained in the smart phone needs to be built with i standard process from start to sale of goods , supply of goods , services delivery , inventory , employee management to the mini market . Keywords: Android, electronic payments, management, employee management. ii delivery, supply chain, stock DAFTAR ISI KATA PENGANTAR ................................................................................................ iii DAFTAR ISI ............................................................................................................... iii BAB I Pendahuluan .............................................................................................. 1 1.1 Latar Belakang .............................................................................................. 1 1.2 Rumusan Masalah ......................................................................................... 2 1.3 Batasan Masalah ........................................................................................... 2 1.4 Tujuan ........................................................................................................... 3 1.5 Metodologi Pengembangan Perangkat Lunak .............................................. 3 1.6 Sistematika Penyusunan Laporan ................................................................. 6 BAB II Tinjauan Pustaka ....................................................................................... 8 2.1 Zurmo ............................................................................................................ 8 2.2 Barcode Scanner System ............................................................................... 9 2.3 Android ......................................................................................................... 9 2.5.1 Linux 2.6 Kernel ................................................................................. 10 2.5.2 Android Framework ........................................................................... 11 2.5.3 Application Framework ...................................................................... 11 2.5.4 Application ......................................................................................... 12 2.4 Protokol HTTP ............................................................................................ 13 2.5 API (Web Service) ....................................................................................... 13 2.6 Unified Modeling Language (UML) ........................................................... 13 2.7 SQLite ......................................................................................................... 14 2.8 Java.............................................................................................................. 15 BAB III Analisis .................................................................................................... 17 3.1 Analisis As Is System................................................................................... 17 3.2 Analisis To Be System ................................................................................. 18 3.2.1 Analisis Sistem Secara Keseluruhan .................................................. 18 3.2.2 Analisis Komponen Aplikasi .............................................................. 18 iii 3.2.2.1 Analisis Barcode ............................................................................ 18 3.2.2.2 Analisis Komunikasi Data ............................................................. 19 3.2.3 Proses Bisnis ....................................................................................... 22 3.2.3.1 Bisnis Rules ................................................................................... 22 3.2.3.2 Pemodelan Proses To Be System.................................................... 22 3.2.4 Perilaku Aktor dengan Sistem ............................................................ 23 3.2.4.1 Identifikasi Aktor ........................................................................... 23 3.3 Analisis Kebutuhan Hardware dan Software.............................................. 24 3.3.1 Kebutuhan Development .................................................................... 24 3.3.2 Kebutuhan Operasional ...................................................................... 25 BAB IV 4.1 Perancangan ............................................................................................ 27 Perancangan Komunikasi Data ................................................................... 27 4.1.1 Application Layer ............................................................................... 27 4.1.2 Transport Layer .................................................................................. 28 4.1.3 Internet Layer ..................................................................................... 28 4.1.4 Network Interface Layer ..................................................................... 28 4.2 Perancangan Database ................................................................................ 29 4.2.1 4.3 BAB V 5.1 ER Client (Android) ........................................................................... 29 Perancangan User Interface ........................................................................ 30 Implementasi ........................................................................................... 31 Implementasi Aplikasi ................................................................................ 31 BAB VI PENUTUP ................................................................................................... 34 6.1 Kesimpulan ..................................................................................................... 34 6.2 Saran ................................................................................................................ 34 DAFTAR PUSTAKA ................................................................................................ 35 iv BAB I Pendahuluan 1.1 Latar Belakang Dalam kehidupan sehari-hari manusia melakukan kegiatan berbelanja untuk memenuhi kebutuhannya. Dengan semakin berkembangnya teknologi, berbelanja dapat dilakukan dimana saja dan kapan saja, misalkan dengan mendatangi sebuah mini market ataupun melalui online shop dengan mempergunakan perangkat komputer. Namun seringkali konsumen masih menganggap metode tersebut masih kurang praktis karena proses transaksi yang lama, seperti harus menunggu kasir untuk melakukan pengecekan harga dan jumlah barang yang telah dibeli oleh konsumen ataupun proses antrian yang lama saat di kasir. Persaingan bisnis yang semakin pesat menuntut para pengusaha untuk menciptakan keungulan dari produk serta mempelajari tingkah laku konsumen. Salah satu keunggulan yang dapat dilakukan para pengusaha adalah dengan melakukan bisnis dengan memanfaatkan teknologi yang sedang berkembang. Disamping hal tersebut, proses transaksi pembelian barang sudah bias dilakukan secara online. Untuk cara pembayarannya pun beragam. Mulai dari membayar secara tunai, pembayaran melalui kartu ATM, hingga pembayaran dengan mempergunakan sistem voucer belanja digital (e-payment). Sudah kita ketahui bahwa perkembangan teknologi seluler saat ini semakain pesat. Hanya dengan sebuah telepon seluler kini kita dapat melakukan banyak hal, seperti sebagai sarana hiburan, jejaring social ataupun sebagai media untuk mendapatkan dan mengolah informasi. Salah satu sistem operasi yang saat ini semakin berkembang adalah Android. Dengan semakin berkembangnya perangkat Android serta teknologi yang menyertainya akan 1 BAB I Pendahuluan 2 semakin berpengaruh pada perkembangan aplikasi mobile. Perkembangan aplikasi mobile tersebut akhirnya memberikan dampak pada berbagai bidang kehidupan kita. Salah satunya adalah bidang perdagangan. Berdasarkan fakta-fakta di atas, maka pada Tugas Akhir ini akan dibuatlah aplikasi transaksi pembelian barang di sebuah mini market dengan mempergunakan smart phone Android. Aplikasi ini diharapkan dapat membantu untuk mengurangi proses yang menyita waktu saat melakukan transaksi dan pembayaran barang di kasir pada sebuah mini market. 1.2 Rumusan Masalah Berdasarkan latar belakang yang telah dijelaskan permasalahan yang didefinisikan adalah: 1. Bagi konsumen di mini market belum adanya informasi dan perangkat yang dapat dipergunakan untuk menampilkan daftar barang beserta harga dari produk yang di jual di mini market tersebut. 2. Belum adanya mekanisme yang dapat mempermudah dan meminimalisir proses transaksi di kasir pada sebuah mini market. 3. Masih sedikit aplikasi yang bersifat mobile (handphone) yang bisa dipergunakan untuk melakukan transaksi yang bersifat online. 1.3 Batasan Masalah Batasan masalah untuk pengerjaan Tugas Akhir ini adalah: 1. Aplikasi yang dibuat bisa dipergunakan di dalam mini market, ataupun ketika konsumen berada di luar mini market tersebut (online transaction). Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB I Pendahuluan 2. 3 Ponsel yang mendukung aplikasi hanya dibuat untuk ponsesl dengan sistem operasi Android. 3. Proses pembayaran barang yang dibeli secara tunai, harus menyetorkan uang saat berada dikasir ataupun ketika proses cash on delivery. 4. Proses pembayaran barang yang mempergunakan sistem e-payment harus memiliki saldo minimal untuk melakukan transaksi. 1.4 1. Tujuan Memberikan visualisasi dari produk-produk yang dijual pada sebuah mini market. 2. Memfasilitasi konsumen untuk dapat melakukan proses transaksi di kasir yang lebih cepat dan efisien. 3. Memfasilitasi konsumen untuk dapat melakukan proses transaksi pembelian barang di mini market secara online. 1.5 Metodologi Pengembangan Perangkat Lunak Dalam pengembangan sistem ini digunakan metodologi Waterfall yang di-customize (Laplante, 2007). Customize yang dimaksud adalah tidak semua dari metodologi waterfall digunakan, hanya yang sesuai dengan kebutuhan sistem yang digunakan. Ada 5 tahapan yang dilakukan, yaitu inisiasi, analisis, perancangan, implementasi, dan pengujian. Tahapan-tahapan tersebut dikerjakan secara sequential. Gambaran dari metodologi waterfall yang digunakan dapat dilihat pada Gambar 1. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB I Pendahuluan 4 Inisiasi Analisis Perancangan Implementasi Pengujian Gambar 1 Siklus Metodologi Waterfall 1. Inisiasi Deskripsi : Mengenal sistem yang sedang berjalan beserta masalahnya, dan mendefinisikan sistem baru yang akan dibangun Kegiatan yang akan dilakukan : a. Mendefinisikan masalah pada sistem yang berjalan saat ini b. Mendefinisikan tujuan dibuatnya sistem c. Mendefinisikan sistem yang akan dibuat d. Membuat ruang lingkup sistem 2. Analisis Deskripsi : Menganalisis terhadap problem yang ada dalam sistem yang sudah ada dan analisis terhadap sistem yang akan dibangun serta kebutuhannya. Kegiatan yang akan dilakukan : a. Memotret perilaku sistem yang sudah ada (as is system) b. Analisis gambaran umum proses yang akan ada pada to be system Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB I Pendahuluan c. Analisis komponen-komponen yang akan digunakan untuk to be system d. Analisis proses bisnis, mendefinisikan bisnis rules, asumsi yang digunakan 5 dan aktor yang akan dilibatkan pada to be system e. Analisis perilaku aktor pada to be system dengan menggunakan use case model f. Analisis kebutuhan software dan hardware baik untuk kebutuhan development juga untuk kebutuhan operasional g. Membuat requirement untuk sistem yang akan dibuat 3. Perancangan Deskripsi : Mengubah kebutuhan-kebutuhan yang telah didefinisikan pada proses analisis menjadi representasi dalam bentuk software. Kegiatan yang akan dilakukan : a. Membuat model data b. Mengidentifikasi kelas-kelas yang akan digunakan dalam sistem yang akan dibuat dan dimodelkan menggunakan class diagram c. Memodelkan interaksi objek d. Membuat rancangan user interface 4. Implementasi Tujuan : Mengimplementasikan hasil analisis dan perancangan menjadi sebuah software. Kegiatan yang akan dilakukan : a. Implementasi model data b. Membuat GUI c. Implementasi model class 5. Pengujian Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB I Pendahuluan 6 Tujuan : Menguji kesesuaian produk dengan tujuan awal. Kegiatan yang akan dilakukan : Membuat Test Case 1.6 Sistematika Penyusunan Laporan Laporan Tugas Akhir ini terdiri atas beberapa bagian sebagai berikut: BAB I Pendahuluan Bab ini membahas mengenai latar belakang, rumusan masalah, batasan masalah, tujuan, metodologi pengembangan perangkat lunak serta sistematika penyusunan laporan. BAB II Tinjauan Pustaka Bab ini membahas mengenai studi pustaka yang berhubungan dengan pengerjaan tugas akhir ini, yaitu OpenCRX, Barcode Scanner System, Android, Protokol HTTP, API(Web Service), UML, SQLite, Java. BAB III Analisis Sistem Bab ini membahas mengenai analisis perilaku sistem dari sistem yang berjalan saat ini (as is system), serta analisis komponen, bisnis proses, keterkaitan aktor dengan sistem, kebutuhan hardware & software dari sistem yang akan dibangun (to be system). BAB IV Perancangan Bab ini membahas mengenai perancangan kebutuhan perangkat lunak untuk aplikasi yang meliputi perancangan database, perancangan class diagram, perancangan user interce, perancangan data yang akan dikirim, dan arsitektur software. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB I Pendahuluan 7 BAB V Implementasi Bab ini membahas mengenai proses implementasi dari hasil analisis dan perancangan yang telah dikerjakan sebelumnya serta memperlihatkan screen shoot dari aplikasi yang dibuat dan pengujian modul-modul berdasarkan fungsionalitas yang terdapat pada aplikasi. BAB VI Penutup Bab ini membahas mengenai kesimpulan dari keseluruhan pembangunan aplikasi, ketercapaian tujuan, disertai saran dari penyusun yang ditujukan bagi pihak-pihak yang ingin melakukan pembelajaran yang sama atau pun hampir sama bagi mereka yang memerlukan terkait dengan kandungan dari laporan tugas akhir ini. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka Dalam pengembangan sistem ini diperlukan beberapa teori untuk mendukung prosesproses pengembangannya. Berikut ini adalah teori-teori dasar yang digunakan dalam melakukan pengembangan sistem. 2.1 Zurmo Zurmo merupakan aplikasi terbuka Pelanggan Relationship Management ( CRM ) aplikasi yang ditulis dalam PHP menggunakan jQuery , Yii Framework, dan RedBeanPHP . Ya , kita tahu ada banyak aplikasi CRM di luar sana . Mengapa aplikasi CRM lain ? Melalui bertahun-tahun kami di industri CRM , kita masih melihat perusahaan berjuang untuk menerapkan aplikasi CRM . Tujuan kami dengan Zurmo adalah untuk memberikan , aplikasi CRM yang mudah digunakan mudah menyesuaikan yang dapat disesuaikan untuk setiap kasus penggunaan bisnis . Kami telah mengambil perawatan khusus untuk memikirkan banyak kasus penggunaan yang berbeda dan telah merancang sebuah sistem yang kami percaya memberikan tingkat fleksibilitas yang tinggi , meliputi berbagai kasus penggunaan di luar kotak . Kami tidak memiliki satu juta fitur . Kita tidak pernah bisa mengalahkan pemain yang ada dalam perang fitur . Namun mengingat perusahaan berakhir hanya menggunakan beberapa fitur , kami tidak berpikir itu benar-benar penting . Apa yang kita miliki sejauh ini adalah awal dari sebuah berkualitas tinggi alat otomatisasi tenaga penjualan . Menantikan saat kami terus melakukan perbaikan . Dari perspektif teknis , kami sangat gembira . Kami telah memutuskan untuk membangun Zurmo pada tiga kerangka pembangunan yang mengagumkan , Yii , 8 BAB II Tinjauan Pustaka 9 RedBeanPHP , dan jQuery . Dengan hampir semangat keagamaan untuk pengujian , Anda akan menemukan bahwa obsesi kita dengan pembangunan berbasis tes berarti aplikasi yang lebih stabil. 2.2 Barcode Scanner System Barcode adalah representasi informasi indeks database dari suatu barang/produk yang dapat dibaca oleh mesin/alat. Indeks database akan memuat deskripsi informasi yang dibutuhkan (contoh: jenis produk, harga, dan lain-lain) dari sistem database yang ada. Barcode scanner adalah alat yang digunakan untuk membaca kode-kode berbentuk garis-garis vertikal (disebut dengan Barcode) yang terdapat pada kebanyakan produk-produk consumer good. Sebenarnya, kode barcode ini mengumpulkan data dalam lebar (garis) dan spasi garis paralel dan dapat disebut simbologi linear atau 1D (1 dimensi). 2.3 Android Android adalah suatu sistem operasi yang dikeluarkan oleh Google Inc. di bawah koordinasi Open Handset Alliance, yang bersifat Open Source (Felker & Dobbs, 2011). Selain sebagai sistem operasi, Android terdiri atas middleware dan beberapa key application dengan menyediakan SDK (Software Development Kit) sebagai tools dan API untuk membuat ataupun mengembangkan aplikasi platform-Android menggunakan bahasa pemrograman Java. Gambar 11 merupakan architecture diagram dari Android platform. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka 10 Gambar 2 Architecture Diagram Android Platform 2.5.1 Linux 2.6 Kernel Android dibuat dengan open-source kernel linux 2.6 yang menyediakan banyak fiturfitur utama dari sebuah sistem operasi yang bersifat Open-Source untuk mengembangkan sistem operasi Android maupun untuk mengembangkan aplikasi berbasis Android. Kernel ini dapat disebut juga sebagai abstraksi utama yang menghubungkan hardware dan software stack untuk kemudian dikembangkan kembali sebagai suatu rangka utuh sistem operasi di dalam smart phone Android. Berikut adalah fitur utama dari kernel Linux 2.6: a. Security Model: menyediakan kebutuhan keamanan antara aplikasi dan sistem operasi Android b. Memory Management: menangani manajemen memori pada aplikasi dan services yang sedang berjalan c. Process Management: mengelola proses secara baik yang diperlukan oleh aplikasi atau services untuk berjalan di dalam sistem operasi Android dengan mengalokasikan resources yang sesuai pada aplikasi atau service d. Network Stack: menangani segala hal tentang komunikasi jaringan Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka e. 11 Driver Model – yang menangani agar semua mobile driver hardware dapat menyesuaikan dengan ketentuan Linux 2.5.2 Android Framework Setelah fitur-fitur utama dibuat menggunakan kernel Linux 2.6, kerangka utuh dari sistem operasi Android mulai dikembangkan secara menyeluruh pada setiap bagian yang harus ada dalam sebuah sistem operasi pada smart phone Android. Output dari hasil pengembangan tersebut adalah adanya Android run time yang dibangun dari Java core library dan Dalvik virtual machine, sehingga aplikasi yang memerlukan beberapa run time java dapat dijalankan dan Dalvik virtual machine yang membuat suatu aplikasi berbasis java dapat dijalankan dengan penggunaan memori yang minimum; Libraries – yang menyediakan beberapa library yang terdiri atas System C library (standar library C yang bersifat embedded terhadap Linux-based device), Media Library (berbasiskan PacketVideo OpenCORE yang mendukung beberapa tipe media files, yaitu MPEG4, H.264, MP3, AAC, AMR, JPG, dan PNG), Surface Manager (mengelola suatu akses untuk kebutuhan gambar 2D atau 3D terhadap beberapa aplikasi yang sedang dijalankan), LibWebCore (web browser engine), SGL (2D Graphics engine), 3D libraries (OpenGL ES 3D hardware acceleration), FreeType (bitmap dan vector unit rendering), dan SQLite (powerful lightweight relational database). 2.5.3 Application Framework Android telah menyediakan beberapa interface untuk mengembangkan aplikasi berbasis Android. Beberapa fungsi telah dikelompokkan dalam sebuah package dengan kegunaannya masing-masing untuk mengolah resources yang terdapat di dalam sistem operasi Android dengan berbagai fiturnya yang telah disebutkan dalam Android Framework. Bagian dari interface API Android: a. Activity Manager – mengelola lifecycle dari aplikasi. b. Resources Manager – menyediakan akses untuk berbagai resources di Android, contoh hak akses untuk menggunakan GPS Receiver. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka 12 c. View System – menyediakan beberapa hal tentang UI untuk membuat aplikasi. d. Content Providers – menyediakan akses untuk sharing data di daftar contacts. e. Notification Manager – menyediakan alert messages untuk kebutuhan aplikasi. 2.5.4 Application Aplikasi berbasis Android dibuat dengan bahasa pemrograman Java, SDK Android akan mengemban tugas untuk compile dan convert aplikasi menjadi Android Package (apk). Kemudian instalasi akan dilakukan oleh keseluruhan kemampuan Android-Device menjadi aplikasi berbasis Android. Struktur aplikasi berbasis Android sebagai berikut: a. Activities: direpresentasikan sebagai tempat menyimpan UI untuk kebutuhan aplikasi terhadap suatu form yang memiliki layout tertentu. Suatu aplikasi dapat memiliki banyak activities dan tidak diperkenankan jika suatu aplikasi tidak memiliki activity. b. Services: berjalan dalam suatu background untuk melakukan suatu operasi yang relatif panjang waktunya, contohnya pada saat aplikasi menjalankan music player. Ketentuan lainnya adalah service tidak diperkenankan untuk menyediakan UI. c. Content Providers: direpresentasikan sebagai bagian yang menyediakan hak akses ke dalam database SQLite baik itu akses untuk web, maupun lokal akses. d. Broadcast Receivers: direpresentasikan sebagai bagian yang menyediakan pesan atau data untuk kebutuhan aplikasi lain. Contohnya suatu aplikasi memakan energi baterai yang sangat maksimal sehingga baterai cepat habis, maka aplikasi yang sedang berjalan akan melakukan broadcast Receiver untuk menginformasikan bahwa baterai akan habis atau kondisi baterai saat ini sudah mencapai 30%. e. Intent: direpresentasi sebagai pemanggil activity, baik itu di dalam awal saat aplikasi berjalan maupun pada saat aplikasi sedang berjalan. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka 13 2.4 Protokol HTTP Protokol HTTP adalah suatu protokol jaringan yang terletak di lapisan aplikasi dalam 7 Layer OSI model (Tanenbaum, 2003). Protokol ini mengatur pesan yang dikirimkan oleh client kepada server, sehingga server mengembalikan nilai dari pesan yang telah dikirimkan oleh client. Karena protokol ini bekerja di lapisan aplikasi, maka digunakan dalam world wide web (www) pada browser. Setiap interaksi yang terjadi antara client dan server terdiri atas satu permintaan yang memiliki format ASCII oleh client kemudian respon yang dikirim oleh server yang memiliki format RFC 822 (RFC 822 adalah suatu format teks internet standar dari ARPA). Client dan server harus mematuhi ketentuan protokol ini. 2.5 API (Web Service) Web service adalah suatu sistem perangkat lunak yang dirancang untuk mendukung interoperabilitas dan interaksi antar sistem pada suatu jaringan. Web service digunakan sebagai suatu fasilitas yang disediakan oleh suatu web site untuk menyediakan layanan (dalam bentuk informasi) kepada sistem lain, sehingga sistem lain dapat berinteraksi dengan sistem tersebut melalui layanan-layanan (service) yang disediakan oleh suatu sistem yang menyediakan web service. Web service menyimpan data informasi dalam format XML atupun JSON, sehingga data ini dapat diakses oleh sistem lain walaupun berbeda platform, sistem operasi, maupun bahasa compiler. 2.6 Unified Modeling Language (UML) Unified Model Language (UML) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis Object Oriented (OO) (Larman, 2004). UML sendiri juga memberikan standar penulisan sebuah sistem yang meliputi konsep bisnis proses, penulisan class–class dalam Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka 14 bahasa program yang spesifik, skema database, dan komponen–komponen yang diperlukan di dalam sistem. UML adalah sebuah bahasa standar untuk melakukan pengembangan sebuah software yang dapat menyampaikan bagaimana membuat dan membentuk modelmodel, UML tidak hanya merupakan sebuah bahasa pemrograman visual saja, namun juga dapat secara langsung dihubungkan ke berbagai bahasa pemrograman seperti JAVA, C++, Visual Basic atau bahkan dihubungkan langsung ke dalam sebuah object-oriented database. 2.7 SQLite SQLite merupakan suatu database engine yang memiliki banyak kelebihan dalam hal mengoperasikannya untuk mengolah database (About: SQLite). SQLite adalah database yang cukup terkenal untuk membuat aplikasi standalone, mobile maupun aplikasi client server. Tidak seperti database engine pada umumnya, SQLite dapat beroperasi tanpa menjalankan server terlebih dahulu. Kelebihan database engine SQLite 3 antara lain : a. Zero-Configuration. SQLite tidak perlu dilakukan instalasi sebelum menggunakannya, tidak ada prosedur instalasi khusus seperti database engine pada umumnya. b. Serverless. SQLite tidak bekerja menggunakan proses server yang terpisah untuk mengakses database, tetapi langsung membaca dari disk ke dalam database file. c. Single Database File. Database SQLite adalah file database tunggal. Sehingga mampu mengubah apapun isi dari database file tersebut. Database file dapat berlokasi di mana saja dalam suatu direktori. Sehingga database file tersebut dapat dengan mudah di-share dengan user lainnya. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka d. 15 Stable Cross-Platform Database File. Database file ini mampu dibaca dengan arsitektur yang berbeda artinya big-endian, little-endian maupun 32-bit, 64-bit tidak masalah. Sehingga database engine ini stabil dalam segala jenis platform sistem operasi. e. Compact. Pada saat pengoperasian database engine SQLite, fitur-fitur yang diperlukan pada saat query atau membuat tabel akan disesuaikan sesuai dengan kebutuhan tertentu, sehingga menghemat library pada database engine SQLite dan semakin efisiensi pada saat kompilasi DDL maupun DML. f. Manifest typing. Database engine pada umumnya adalah untuk setiap kolom yang telah didefinisikan tipe datanya maka nilai dari setiap data dalam kolom tersebut haruslah bertipe data yang sesuai. Akan tetapi pada database engine SQLite tiap tipe data adalah milik satu data tertentu tidak menjadi milik satu kolom yang telah didefinisikan. g. Variable-length records. Database engine SQLite menentukan panjang atau ukuran bukan dari ukuran kolom yang telah ditentukan tetapi menentukan dari tiap data yang ada pada kolom, jadi database file yang terbentuk berukuran kecil dan cepat untuk diakses. 2.8 Java Java merupakan suatu teknologi platform yang mendukung pemrograman dengan konsep object oriented tentunya dengan bahasa pemrograman Java (Java: Wikipedia Ensiklopedia Bebas). Secara praktis, teknologi java ini terdiri atas VM dan kumpulan library yang mengijinkan segalah file system, networks, graphical user interfaces (GUI) dan lainnya untuk menjalankan program yang dibuat dengan teknologi Java. Istilah VM disini adalah virtual machine yang biasa dikenal dengan JRE (Java Runtime Environment). Java SE dikenal sebagai Java 2 Platform Standard Edition atau J2SE dari versi 1.2 sampai versi 1.5. Penamaan “SE” digunakan untuk membedakan platform dasar dari Java EE dan Java ME. Sedangkan penamaan “2” dalam kata J2SE pada awalnya Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB II Tinjauan Pustaka 16 ditujukan untuk menekankan perubahan besar yang diperkenalkan dalam versi 1.2 namun dilepas di versi 1.6. Konvensi penamaan telah diubah beberapa kali sepanjang sejarah versi Java. Mulai dengan J2SE 1.4 (Merlin), Java SE telah dikembangkan di bawah Java Community Process. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis Analisis sistem adalah salah satu tahap dalam metodologi pengambangan perangkat lunak yang berguna untuk mendapatkan pemahaman tentang prosesproses yang terjadi, keterkaitan antar proses, aliran data, user serta perilaku sistem baik itu dari sistem yang berjalan saat ini (as is system) dan juga dari sistem yang akan dibangun (to be system). Tahap analisis ini menghasilkan list functional requirement. 3.1 Analisis As Is System Saat ini sudah ada aplikasi Mini Market yang tersedia, tapi masih berbentuk web based ataupun desktop based. Salah satunya adalah aplikasi Mini Market Management System yang telah dibuat oleh Batch 6 Program Diploma IV Teknik Elektro Institut Teknologi Bandung. Pada aplikasi tersebut ada beberapa actor yang terlibat, mulai dari General Manager, Accounting, Purchasing, Inventory Management dan Cashier. Apabila di gambarkan dalam bentuk diagram adalah sebagai berikut. Gambar 3 Pemodelan Proses Bisnis As Is System 17 BAB III Analisis 18 3.2 Analisis To Be System 3.2.1 Analisis Sistem Secara Keseluruhan Aplikasi Minimarket Android merupakan sistem yang menyediakan fitur daftar barang yang ada di minimarket, selain itu juga menyediakan kantong belanjaan berbentuk digital serta dengan ditambahkannya fitur transaksi untuk mempermudah proses pembayaran di kasir. Proses transaksinya bisa dilakukan pada saat konsumen melakukan pembelian barang di minimarket ataupun pembelian barang secara online. Untuk ilustrasinya adalah sebagai berikut, pertama-tama konsumen diharuskan mendaftarkan dirinya terlebih dahulu sebelum dapat mempergunakan aplikasi. Setelah konsumen tersebut terdaftar, maka terlebih dahulu harus login ke dalam aplikasi dengan menginputkan username dan password yang telah dibuat sebelumnya. Apabila telah masuk ke dalam aplikasi, konsumen disuguhkan beberapa menu, yakni menu lihat daftar barang yang ada pada mini mart, proses pengecekan harga barang dengan mempergunakan barcode, memilih barang dan memasukkannya ke dalam keranjang digital serta proses pembayaran transaksi. Metoda dalam pembayaran transaksi bisa dilakukan dengan 2 cara, yakni dengan pembayaran tunai (cash) atau dengan mempergunakan sistem voucer (e-payment). 3.2.2 Analisis Komponen Aplikasi 3.2.2.1 Analisis Barcode Bagian ini membahas jenis pengkodean barcode yang berada pada setiap produk yang dijual di minimarket. Untuk kode barcode yang dipergunakan adalah EAN-13. Kode Barcode EAN-13 membagi kelompok dalam empat bagian, tiga angka untuk kelompok pertama, empat angka untuk kelompok kedua, dan lima angka untuk kelompok ketiga serta satu angka untuk kelompok keempat. Tiga digit pertama mewakili Negara dimana barcode dikeluarkan, masing-masing Negara berbeda angka (nomor kodenya). Nomor 899 diberikan untuk Indonesia. Tidak ada Negara lain di Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis 19 dunia yang akan memakai angka 899 kecuali Indonesia, angka ini biasanya dikenal sebagai flag sehingga tidak mungkin ada nomor yang dikeluarkan di dua Negara terpisah dengan nomor yang sama. Hal ini diatur oleh suatu lembaga EAN International, kalau di Indonesia diatur oleh lembaga GS1 Indonesia. Keempat digit kode berikutnya adalah untuk perusahaan pengguna (manufacture number). Jika perusahaan disebut “ABC” diterbitkan dengan nomor perusahaan “5522”, semua hal yang ditandainya harus mempunyai barcode yang dimulai dengan tujuh angka “8995522”. Karena tidak ada perusahaan Indonesia lainnya yang akan diterbitkan dengan nomor “5522”, maka hal ini tidak akan ada angka duplikasi. Susunan lima digit berikutnya mewakili kode produk dan dialokasikan oleh perusahaan untuk produk-produk unik. Perusahaan harus secara mutlak memastikan bahwa mereka tidak pernah menerbitkan nomor yang sama dua kali. Untuk melengkapi kode EAN 13 (13 digit), sebuah Check Digit tercantum pada angka terakhir sesudah 12 digit terpasang. Check digit disusun secara aritmatik dari dua belas digit pertama. Check digit digunakan oleh barcode reader (alat baca barcode) untuk memastikan agar dibaca secara akurat. Reader (alat baca) barcode akan membaca keseluruh tiga belas digit dari kanan ke kiri (sebaliknya), menyusun dari keduabelas pertama angka berapa yang seharusnya menjadi digit ketigabelas dan jika hitungan ini benar, maka reader akan menganggap bahwa keseluruhan kode telah dibaca dengan benar. 3.2.2.2 Analisis Komunikasi Data Dalam kinerjanya, fungsi, dan peran aplikasi dibagi kedalam dua sisi, yaitu client dan server. Segala bentuk permintaan terhadap penyedia services pada resource services akan diemban oleh sisi client, sedangkan untuk segala bentuk penyedia services maupun data akses kepada peminta services akan diemban oleh sisi server. Aplikasi dalam smart phone platform Android adalah suatu bentuk sisi client dan adapun sisi Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis 20 server yang utamanya berisi sumber daya data untuk kebutuhan para pengguna aplikasi. Protokol HTTP yang telah ada dalam Tinjauan Pustaka merupakan suatu dasar teori dari salah satu mekanisme dalam layer aplikasi. Protokol yang diambil untuk mendefinisikan mekanisme komunikasi data dalam lingkup aplikasi adalah protokol TCP/IP. Hal ini dilakukan karena dalam protokol TCP/IP dimungkinkannya komunikasi yang dilakukan antar devices dalam konteks client-server berbeda platform. Android merupakan platform yang tidak dapat dijadikan server karena peruntukannya adalah hanya untuk mengembangkan aplikasi dengan environment smart phone Android. Perbedaan jika menggunakan acuan 7 layer OSI model dengan TCP/IP model adalah terdapat pada layer presentation, session, network, data link, dan physical. Hal ini secara fungsional sudah ditangani secara baik dan efisien oleh TCP/IP model. Selain lebih sederhana, model TCP/IP juga dapat dijalankan pada berbagai jenis jaringan internet untuk jenis media transmisi manapun. Pada Gambar 4 dapat dilihat perbedaan antara OSI layer dengan TCP/IP. Gambar 4 Perbedaan Osi Model Dengan Tcp/Ip Model Mekanisme komunikasi data dalam lingkup aplikasi dapat mengikuti pembagian yang telah ada dalam TCP/IP model (Tabel 1) Tabel 1 Pembagian Layer dalam TCP/IP Model Layer Application Layer Deskripsi Pada layer ini ada beberapa protokol untuk mengatur kebutuhan pengiriman dan penerimaan e-mail, file transfer, dan sebagainya, tetapi pada lingkup aplikasi hanya akan menggunakan protokol HTTP untuk Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis 21 Layer Transport Layer Internet Layer Network Interface Layer Deskripsi menyediakan akses dan transaksi data: a. HTTP port 80 Merupakan protokol world wide web Terdiri atas dua macam, yaitu TCP dan UDP. Kelemahan dari UDP jika diimplementasikan dalam lingkup aplikasi adalah ketika ada data yang tidak terkirim pada server, sisi client tidak akam melakukan pengiriman ulang data kembali dan data yang tidak terkirim akan sangat berpengaruh pada database aplikasi. Maka yang akan digunakan adalah protokol TCP (Transmission Control Protocol). Dalam layer ini, pengiriman harus menjadi suatu bungkusan atau paket yang dikirimkan pada alamat IP yang tepat (IP server) dari IP yang dimiliki oleh client yang harus melewati beberapa router pada kenyataannya karena adanya pengaruh provider internet/ wifi profider. Layer ini bertanggung jawab dalam pengiriman data kedalam penerimaan data dari media fisik. Dalam konteks aplikasi, data yang akan dikirimkan dari sisi client dan data yang akan diterima oleh server. Lalu data yang akan dikirimkan oleh server dan data yang akan diterima oleh client. Gambar berikut menjelaskan komunikasi yang dilakukan ponsel Android dengan server Mini Market. JSON MiniMarket RESPONSE REQUEST GET POST PUT DELETE Gambar 5 Komunikasi data antara Android dengan Server Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis 3.2.3 3.2.3.1 22 Proses Bisnis Bisnis Rules Tabel 2 merupakan bisnis rules dalam Aplikasi Mini Market. Tabel 2 Bisnis Rule Mini Market No. R1 R2 R3 R4 R5 R6 R7 3.2.3.2 Rules Aplikasi Mini Market dapat digunakan pada ponsel ber-OS Android an memiliki fitur kamera dan internet. Pengguna Aplikasi Mini Market minimal mampu mengoperasikan ponsel ber-OS Android. Semua pengguna harus memiliki akun di aplikasi terlebih dahulu. Untuk mendapatkan akun, pengguna harus mendaftarkan e-mail, username, password, full name, gender, address, date of birth. E-mail dan username harus unik. Jumlah karakter untuk username dan password minimal 6 karakter, tidak boleh mengandung „ ‟ (spasi) ataupun simbol-simbol lain. Untuk sign in, user harus mengisi user name dan password-nya Pemodelan Proses To Be System Gambar 6 merupakan model proses dari aplikasi. Gambar 6 Pemodelan Proses To Be System Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis 23 Gambar 7 merupakan model proses dari Aplikasi Minimarket Android untuk costumer Start Splash screen Login T F Input username, password, email, name, address Input username & password Register F T Home Logout Product Cart Show product Pay Transaction Profile See Profile Choose product Add to cart T F Gambar 7 Pemodelan Proses Aplikasi Minimarket untuk Costumer 3.2.4 3.2.4.1 Perilaku Aktor dengan Sistem Identifikasi Aktor Tabel 3 merupakan definisi dari aktor yang berinteraksi dengan aplikasi. Tabel 3 List of Actor No. A1 Aktor Costumer Definisi Aktor dan kebutuhannya Orang yang menggunakan aplikasi di ponselny untuk mendapat informasi daftar barang di minimarket. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis No. A2 3.3 3.3.1 Aktor Cashier 24 Definisi Aktor dan kebutuhannya Bagian pada minimarket yang bertugas melakukan pengecekan transaksi pembayaran yang dilakukan costumer. Analisis Kebutuhan Hardware dan Software Kebutuhan Development Android telah memiliki beberapa versi mulai dari Android versi 1.1, Android versi 1.5 (Cupcake), Android versi 1.6 (Donut), Android versi 2.1 (Eclair), Android versi 2.2 (Froyo), Android versi 2.3 (Gingerbread), Android versi 3.0 (Honeycomb), Android versi 4.0 (Ice Cream Sandwitch), Android versi 4.1 (Jelly Bean), dan Android versi 4.4 (KitKAt). Setiap versi dari Android tersebut sudah terdapat pada Android SDK. Untuk versi Android yang dipergunakan pada proses pengembangan aplikasi yakni versi Android 4.0 keatas. Android merupakan java based application sehingga developing-nya dapat dilakukan pada multi platform, yakni dapat berjalan pada sistem operasi Windows, Mac OS, dan Linux. Android telah men-support Windows untuk versi Windows XP 32 bit, Windows Vista 32 dan 64 bit, Windows 7 32 dan 64 bit, Mac OS versi 10.5.8 ke atas dan pada Linux yang memiliki GNU C Library versi 2.7 ke atas. Untuk dapat developing pada Android diperlukan sebuah IDE (Integrated Development Environment) yakni Eclipse IDE. Eclipse yang telah support Android adalah Eclipse versi Galileo ke atas. Setelah itu diperlukan sebuah plugins agar Andoid dapat berjalan pada Eclipse IDE yakni ADT (Android Development Tool). Android dikembangkan dengan bahasa pemrograman Java, sehingga diperlukan sebuah JVM (Java Virtual Machine), yang dimana JVM tersebut terdapat pada JDK (Java Development Kit). Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis 25 Pada sisi database, Android telah built-in database SQLite. SQLite telah mendukung sistem operasi Windows, Mac OS, dan Linux. Database lainnya yang diperlukan yakni MySQL database. Agar dapat menjalankan aplikasi Android pada perangkat komputer tentunya memerlukan sebuah emulator Android. Emulator Android tersebut sudah terdapat pada Android SDK. Untuk proses input terhadap emulator tersebut dapat mempergunakan keyboard dan juga mouse. A. Kebutuhan Software Tabel 4 merupakan spesifikasi kebutuhan software untuk development aplikasi. Tabel 4 Spesifikasi Kebutuhan Software untuk Development Sistem Operasi Database Engine Development Kit IDE ADT plugins Windows XP 32 bit, Windows Vista 32/64 bit, Windows 7 32/64 bit, Mac OS versi 10.5.8 ke atas, Linux MySQL 5.0, SQLite JDK 1.6, Android SDK Eclipse Kepler ADT 21.1.0 B. Kebutuhan Hardware Tabel 5 merupakan spesifikasi kebutuhan hardware untuk development aplikasi. Tabel 5 Spesifikasi Kebutuhan Hardware untuk Development Processor RAM Hard disk VGA Card Input 2 Ghz 4 GB 4 GB of free space 128 MB Keyboard, Mouse 3.3.2 Kebutuhan Operasional Android dibangun dengan arsitektur ARM (Advanced RISC Machine). Virtual machine yang dipergunakan oleh Android berbeda dengan Java. Apabila pada Java mempergunakan Java Virtual Machine, pada Android mempergunakan Dalvik Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB III Analisis 26 Virtual Machine. Jumlah RAM minimal yang dimiliki oleh sebuah perangkat Android adalah 128 MB. Android pun telah men-support media penyimpanan eksternal berupa Micro SD. Untuk sisi layar, resolusi standar yang dipergunakan oleh Android adalah HVGA (320x480). Versi minimal Android yang dipergunakan adalah Android versi 4.0 (Ice cream Sandwitch) dikarenakan adanya banyak peningkatan performa hardware, proses serta banyaknya fitur baru dibandingkan dengan Android versi sebelumnya. Jaringan yang telah di-support oleh Android adalah jaringan GSM dan CDMA. Dari pernyataan-pernyataan di atas, dapat disimpulkan bahwa spesifikasi minimal yang diperlukan untuk sebuah smart phone Android adalah seperti pada Tabel 6. Tabel 6 Spesifikasi Smart phone untuk Operasional Sistem Operasi Android versi Chipset Memory Display Camera Network SD Card Android 4.0.0 (Ice Cream Sandwitch) ARM 128 MB RAM; 256 MB Flash HVGA (320 pixel x 480 pixel) 1,3 Mega Pixels GSM/CDMA 2 GB Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android 27 BAB IV Perancangan 4.1 Perancangan Komunikasi Data Yang telah dilakukan pada analisis komunikasi data telah adanya pembagian layer pada TCP/IP model yang akan diterapkan dalam konteks aplikasi. Maka selanjutnya adalah menjelaskan setiap kerangka pada layer dalam TCP/IP model sehingga sesuai dengan konteks aplikasi yang dibuat. 4.1.1 Application Layer Dalam layer ini, akan menggunakan port HTTP (Hyper Text Transfer Protocol) untuk melakukan koneksi pada protokol ini (Tabel 9). Tabel 9 Protokol dan Port Protokol HTTP Port 80 Method yang akan digunakan serta deskripsinya dalam protokol HTTP dapat dilihat pada Tabel 10. Tabel 10 Method Yang Akan Digunakan Method POST Deskripsi Digunakan pada saat: a. Sign up Spesifikasi data yang akan dikirimkan pada saat membuat akun baru. Parameter : e-mail, username, password, full name, gender, address, date of birth b. Sign in Spesifikasi data yang akan dikirimkan pada saat user melakukan sign in. Parameter : username, password c. Transaction Spesifikasi data yang akan dikirimkan pada saat costumer melakukan transaksi. Parameter : user id, barcode id, item qty 27 BAB VII Penutup Method GET 28 Deskripsi Digunakan pada saat: a. See List Barang Spesifikasi data yang akan diterima pada saat user melihat daftar barang. 4.1.2 Transport Layer Mempergunakan protokol TCP. State – state yang dilakukan oleh TCP pada saat melakukan koneksi yaitu : a. Listen menunggu connection request dari client. b. Syn-Sent client telah mengirim paket synchronous dan acknowledgment ke TCP Server , kemudian client menunggu paket synchronous dan acknowledgment balasan dari Server. c. Syn-Received menunggu dari TCP Client untuk mengembalikan state acknowledgment setelah mengirim state acknowledgment ke TCP Client. d. Established koneksi telah dibangun, client server siap untuk mengirim dan menerima data. e. Time-wait merupakan waktu yang diperlukan untuk memastikan TCP menerima state acknowledgment pada saat menghentikan koneksi. 4.1.3 Internet Layer Berkaitan dengan IP pada client dan IP pada server. 4.1.4 Network Interface Layer Misalkan sebagai contoh pada proses Sign in. Sisi client akan mengirimkan parameter username dan password. Selanjutnya apabila data dengan username dan password tersebut ditemukan pada database. Maka data tersebut akan di-encode dengan mempergunakan JSON (JavaScript Object Notation). Kemudian data yang telah di-encode tersebut akan dikirimkan kepada client yang melakukan request sebelumnya. Selama data yang dikirimkan tidak bernilai null, pada sisi client akan Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB VII Penutup 29 melakukan proses decode terhadap data tersebut agar mendapatkan nilai data yang sebenarnya. JSON decode telah tersedia pada OS Android. 4.2 Perancangan Database 4.2.1 ER Client (Android) Gambar 8 berikut adalah gambaran rancangan database minimarket yang berada di perangkat Android (SQLite). goods_no goods_barcode Goods trasaction_id goods_category Transaction goods_barcode goods_name goods_id goods_price Gambar 8 ER Diagram Aplikasi Minimart Android Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB VII Penutup 4.3 30 Perancangan User Interface Gambar 10 berikut adalah hierarki User Interface untuk Aplikasi MiniMarket Aplikasi MiniMart Android Splash Screen Register Login Home Screen Product Cart Profile View Product Payment View Profile Add Product To Cart Logout Edit Profile Gambar 10 Hierarki User Interface Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB VII Penutup 31 BAB V Implementasi Tahap implementasi adalah tahap mengintegrasikan sistem yang telah dirancang melalui tahap analisis dan perancangan yang menghasilkan model Aplikasi Mini Mart dengan adanya spesifikasi proses untuk tiap kebutuhan, sehingga aplikasi tersebut dapat diterapkan pada smart phone Android sebagai sisi client yang terintegrasi dengan website yang menyediakan kebutuhan yang terkait dengan database melalui suatu webserver tertentu. Selain itu, komunikasi data yang terjadi diantara dua sisi tersebut melalui protokol HTTP yang telah disediakan oleh protokol TCP family. 5.1 Implementasi Aplikasi Gambar 11 sampai Gambar 18 merupakan screen shoot Aplikasi Mini Market yang telah diimplementasikan. Gambar 11 Splash screen Gambar 12 Welcome Screen Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB VII Penutup 32 Gambar 13 Menu Login Gambar 14 Menu Register Gambar 15 Main Menu Gambar 16 Menu Product Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB VII Penutup Gambar 17 Barcode Reader 33 Gambar 18 Menu Cart Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB VII Penutup 34 BAB VI PENUTUP 6.1 Kesimpulan Dari penelitian tugas akhir yang dilakukan tentang aplikasi pembelian barang pada minimarket dengan mempergunakan perangkat Android ini dapat disimpulkan beberapa hasil dari penelitian ini, yaitu sebagai berikut : 1. Aplikasi minimarket dapat berjalan di platform Android dan berintegrasi dengan database server minimarket sehingga dapat memfasilitasi pemilik minimarket untuk melakukan pengecekan kondisi stok dan data kepegawai melalui perangkat bergerak. 2. Dengan adanya pengembangan Aplikasi Minimart berbasis platform Android, dapat mempermudah proses pembelian barang di minimarket bagi konsumen. 6.2 Saran Untuk dapat lebih meningkatkan performa dan kualitas dari aplikasi ini, disarankan pihak pengembang dapat mengembangkan aplikasi ini dengan mempertimbangkan hal-hal di bawah ini: 1. Integrasi dengan bank-bank untuk proses transaksi pembayaran. 2. Penambahan fitur untuk proses pembayaran rekening lain, seperti pembayaran rekening listrik, rekening telepon maupun pembayaran PDAM. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android BAB VII Penutup 35 DAFTAR PUSTAKA About: SQLite. (n.d.). Retrieved March 27, 2011, from SQLite: http://www.sqlite.org/ alasan-os-android-kuasai-dunia: detikInet. (2011, Februari 3). Retrieved February 24, 2014, from detikInet: http://www.detikinet.com/read/2011/02/03/103133/1559587 /317/8-alasan-os-android-kuasai-dunia Felker, D., & Dobbs, J. (2011). Android Application Development for Dummies. Wiley Publishing Inc. Grady, B. (1999). The Unified Modelling Language User Guide. Addison Wesley Longman. Java: Wikipedia Ensiklopedia Bebas. (n.d.). Retrieved Maret 27, 2011, from Wikipedia Ensiklopedia Bebas: http://id.wikipedia.org/java Larman, C. (2004). Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Third edition. New Jersey: Pentice Hall PTR. Tanenbaum, A. S. (2003). Computer Networks, Fourth Edition. Pretice Hall. Aplikasi Transaksi Pembelian Barang Pada Minimarket Dengan Mempergunakan Ponsel Berbasis Sistem Operasi Android