BAB II LANDASAN TEORI 2.1 Konsep Aplikasi PLN Smart Service Berbasis Mobile Aplikasi PLN Smart Service Berbasis Mobile ini adalah aplikasi yang bertujuan untuk memudahkan masyarakat dalam mengetahui informasi tentang Ketenagalistrikan dikota Tanjungpinang dan juga membantu PLN dalam meningkatkan kinerja dan pegabdian kepada masyarakat Tanjungpinang. Aplikasi ini dapat di unduh melalui Play Store, sehingga diharapkan masyarakat yang ingin mengetahui informasi tentang PLN Tanjungpinang hanya tinggal mengunduh aplikasi ini dan memasangnya di ponsel berbasis android. Sehingga masyarakat tidak perlu susah lagi mencari informasi tentang PLN Tanjungpinang. 2.2 Aplikasi PLN Smart Service Berbasis Mobile Aplikasi PLN Smart Service Berbasis Mobile yang akan kita gunakan berbasis mobile android, aplikasi mobile android haruslah memiliki beberapa karakteristik diantaranya : 1. Sederhana : Aplikasi yang digunakan haruslah sederhana, mudah untuk dimengerti dan tidak memberikan unsur kebingungan bagi pengguna (user). 2. Mudah digunakan : Aplikasi yang akan kita buat nantinya haruslah memiliki kemudahan dalam penggunaannya (user friendly). Suatu aplikasi yang baik yaitu aplikasi yang memberikan kemudahan bagi penggunanya. 9 10 3. Murah : Aplikasi yang dibangun haruslah terjangkau dengan pengguna aplikasi itu sendiri. 4. Berorientasi pada kepentingan user : Aplikasi yang dibangun harus sesuai dengan keinginan pengguna. Kemampuan aplikasi haruslah beracuan kepada fungsi dari aplikasi tersebut. 2.3 PT PLN (PERSERO) Berawal di akhir abad ke 19, perkembangan ketenagalistrikan di Indonesia mulai ditingkatkan saat beberapa perusahaan asal Belanda yang bergerak di bidang pabrik gula dan pabrik teh mendirikan pembangkit listrik untuk keperluan sendiri. Antara tahun 1942-1945 terjadi peralihan pengelolaan perusahaan- perusahaan Belanda tersebut oleh Jepang, setelah Belanda menyerah kepada pasukan tentara Jepang di awal Perang Dunia II. Proses peralihan kekuasaan kembali terjadi di akhir Perang Dunia II pada Agustus 1945, saat Jepang menyerah kepada Sekutu. Kesempatan ini dimanfaatkan oleh para pemuda dan buruh listrik melalui delegasi Buruh/Pegawai Listrik dan Gas yang bersama-sama dengan Pimpinan KNI Pusat berinisiatif menghadap Presiden Soekarno untuk menyerahkan perusahaan-perusahaan tersebut kepada Pemerintah Republik Indonesia. Pada 27 Oktober 1945, Presiden Soekarno membentuk 11 Jawatan Listrik dan Gas di bawah Departemen Pekerjaan Umum dan Tenaga dengan kapasitas pembangkit tenaga listrik sebesar 157,5 MW. Pada tanggal 1 Januari 1961, Jawatan Listrik dan Gas diubah menjadi BPU-PLN (Badan Pimpinan Umum Perusahaan Listrik Negara) yang bergerak di bidang listrik, gas dan kokas yang dibubarkan pada tanggal 1 Januari 1965. Pada saat yang sama, 2 (dua) perusahaan negara yaitu Perusahaan Listrik Negara (PLN) sebagai pengelola tenaga listrik milik negara dan Perusahaan Gas Negara (PGN) sebagai pengelola gas diresmikan. Pada tahun 1972, sesuai dengan Peraturan Pemerintah No.17, status Perusahaan Listrik Negara (PLN) ditetapkan sebagai Perusahaan Umum Listrik Negara dan sebagai Pemegang Kuasa Usaha Ketenagalistrikan (PKUK) dengan tugas menyediakan tenaga listrik bagi kepentingan umum. Seiring dengan kebijakan Pemerintah yang memberikan kesempatan kepada sektor swasta untuk bergerak dalam bisnis penyediaan listrik, maka sejak tahun 1994 status PLN beralih dari Perusahaan Umum menjadi Perusahaan Perseroan (Persero) dan juga sebagai PKUK dalam menyediakan listrik bagi kepentingan umum hingga sekarang. 12 2.4 PT PLN (PERSERO) AREA TANJUNGPINANG PT PLN (Persero) Area Tanjungpinang yang memiliki 9 kantor Rayon, terdiri dari Rayon Kota Tanjungpinang, Rayon Bintan Center, Rayon Kijang, Rayon Tanjung Uban, Rayon Belakang Padang, Rayon Tanjung Balai Karimun, Rayon Tanjung Batu, Rayon Dabo Singkep, Rayon Ranai sedang berusaha untuk mewujudkan visi perusahaan, yaitu “Menjadi perusahaan kelas dunia yang tumbuh, berkembang, unggul dan terpercaya”, melalui pelaksanaan dua misi utama. Misi pertama adalah “Melakukan Bisnis Kelistrikan yang berorientasi pada kepuasan pelanggan, karyawan, pemilik dan akrab lingkungan”. Sedangkan misi kedua adalah “Menjadikan tenaga listrik untuk meningkatkan kualitas kehidupan masyarakat dan mendorong pertumbuhan ekonomi”. Dengan pelaksanaan visi dan misi tersebut diatas, diharapkan PT PLN (Persero) Area Tanjungpinang dapat menyelenggarakan usaha penyediaan tenaga listrik bagi kepentingan umum dalam jumlah dan mutu yang memadai serta memupuk keuntungan dan melaksanakan penugasan dari pemerintah di bidang ketenagalistrikan dalam rangka menunjang pembangunan nasional dengan menerapkan prinsip-prinsip Perseroan Terbatas. 2.5 Konsep Permodelan Sistem Bagan adalah alat bantu yang berbentuk grafik yang sifatnya umum, yaitu dapat digunakan pada semua metodologi yang ada. Pada penyusunan laporan skripsi ini penulis menggunakan alat-alat bantu sebagai berikut : 13 1. Bagan Alir (Flowchart) Flowchart adalah bagan alir yang menunjukkan dan menjelaskan sistem informasi yang terdapat didalam program atau prosedur secara tepat dan logis berdasarkan logika. Flowchart memiliki beberapa simbol dan fungsi. 2. Unified Modeling Language ( UML ) UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented).UML sendiri juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen komponen yang diperlukan dalam sistem software.UML terdiri atas beberapa diagram, yaitu : a. Diagram Use Case Diagram Use Case menggambarkan apa saja aktifitas yang dilakukan oleh suatu sistem dari sudut pandang pengamatan luar. yang menjadi persoalan itu apa yang dilakukan bukan bagaimana melakukannya.Diagram Use Case dekat kaitannya dengan kejadian-kejadian. Kejadian (skenario) merupakan contoh apa yang terjadi ketika seseorang berinteraksi dengan sistem. b. Class Diagram Class diagram digunakan untuk menampilkan kelas-kelas dan paket-paket di dalam system. Class diagram memberikan gambaran system secara statis dan relasi antar mereka. Biasanya, dibua beberapa class diagram untuk system tunggal. Beberapa diagram akan menampilkan subset dari kelas-kelas dan relasinya. Dapat 14 dibuat beberapa diagram sesuai dengan yang diinginkan untuk mendapatkan gambaran lengkap terhadap system yang dibangun. Class diagram adalah alat perancangan terbaik untuk tim pengembang. Diagram tersebut membantu pengembang mendapatkan struktur system sebelum kode ditulis, dan membantu untuk memastikan bahwa system adalah desain terbaik. c. Activity Diagram Activity diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Activity diagram merupakan state diagram khusus, di mana sebagian besar state adalah action dan sebagian besar transisi ditrigger oleh selesainya state sebelumnya (internal processing). Oleh karena itu activity diagram tidak menggambarkan behaviour internal sebuah sistem (dan interaksi antar subsistem) secara eksak, tetapi lebih menggambarkan proses-proses dan jalur-jalur aktivitas dari level atas secara umum. d. Sequence Diagram Suatu sequence diagram adalah suatu penyajian perilaku yang tersusun sebagai rangkaian langkah-langkah percontohan dari waktu ke waktu. Sequence diagram digunakan untuk menggambarkan arus pekerjaan, pesan yang sampaikan dan bagaimana elemen-elemen di dalamnya bekerja sama dari waktu ke waktu untuk mencapai suatu hasil. Masing – masing urutan elemen 15 diatur di dalam suatu urutan horisontal, dengan pesan yang disampaikan dibelakang dan didepan diantara elemen-elemen. 2.6 Konsep Basis Data “Basis Data terdiri dari 2 kata yaitu Basis adalah markas atau gudang dan Data adalah refresentasi fakta dunia nyata yang mewakili suatu objek”1. Jadi Basis Data merupakan gudang data terorganisasi yang berhubungan sehingga mudah disimpan, dimanipulasi, serta di panggil kembali dengan cepat dan mudah oleh pengguna. Suatu basis data dibuat dan digunakan untuk mengatasi permasalahan yang ada pada saat penggunaan data. Permasalahan tersebut antara lain : 1. Redudansi dan konsistensi data. 2. Kesulitan pengaksesan data. 3. Isolasi data untuk standarisasi. 4. Banyak pemakai (multiple user). 5. Masalah keamanan (security). 6. Masalah integrasi (integration). 7. Masalah kebebasan data (independence). Pelaksanaan penggunaan database tidak dilakukan oleh pemakai secara langsung, tetapi memerlukan suatu sistem atau perangkat lunak yang dapat mengatur dan mengelola data, perangkat lunak ini disebut Database Management System (DBMS), yaitu suatu sistem pengelolaan sekumpulan data yang saling berkaitan antara data yang satu dengan data yang lainnya. 1 Fathansyah, Buku Teks Komputer Basis Data, hal 2, 2004. 16 2.7 Desain Basis Data Sistem Basis data (database) adalah suatu pengorganisasian sekumpulan data yang saling terkait sehingga memudahkan aktivitas untuk memperoleh informasi. Merancang basis data merupakan hal sangat penting dalam perancangan suatu sistem. Kesulitan utama dalam merancang suatu basis data adalah bagaimana cara merancang suatu basis data yang dapat memuaskan keperluan saat ini dan masa yang akan datang. Elemen-elemen data dalam suatu basis data harus dapat dipergunakan untuk pembuatan keluaran (output), sesuai dengan yang diinginkan. Untuk menghasilkan keluaran yang baik, juga diperlukan masukan (input) yang baik. Hasil pemasukan data ini akan disimpan atau direkam dalam basis data. 17 2.7.1 Model ERD (Entity Relationship Diagram) ERD adalah suatu model jaringan/penggambaran himpunan entitas dan himpunan relasi yang dilengkapi dengan atribut-atribut yang mempresentasikan seluruh fakta dari dunia nyata yang ditinjau kemudian disimpan didalam sistem secara abstrak. Berikut adalah komponen-komponen dari ERD: 1. Entitas Entitas adalah sarana yang digunakan oleh bisnis untuk menyimpan data. Biasanya digambarkan dengan simbol persegi panjang, ada juga yang menggambarkan dengan simbol persegi panjang dengan sudut tumpul. Macam-macam entitas adalah sebagai berikut : 1. Entitas induk : adalah entitas utama, bercirikan dapat membedakan tiap record hanya dengan sebuah primary key. 2. Entitas asosiatif adalah entitas yang menerima primary key nya lebih dari satu entitas lain (induk). 3. Entitas supertipe adalah entitas yang menyimpan atribut yang umum bagi atau lebih subtipe entitas. Biasanya primary key dari entitas supertipe akan turun menjadi foreign key pada entitas subtipe. 18 4. Entitas subtipe : adalah entitas yang beberapa atribut umumnya diletakkan pada supertipe entitas. Biasanya ada foreign key dari entitas supertipe. 2. Atribut Atribut adalah sifat atau karakteristik deskriktif entitas. Biasanya juga disebut sebagai elemen, sifat, dan bidang. Beberapa atribut dapat dikelompokkan secara logika menjadi superatribut yang disebut compound attribute atau atribut gabungan, yaitu atribut yang terdiri dari atribut-atribut lain. Contoh paling mudah adalah superatribut nama yang terdiri dari atribut nama depan dan atribut nama belakang. 3. Key Key adalah atribut atau kelompok atribut, yang mewakili nilai unik untuk tiap entitas. Jenis-jenis key adalah sebagai berikut: 1. Concatenated key adalah kelompok atribut yang secara unik mengidentifikasi entitas. 2. Candidate key adalah kandidat untuk menjadi identifier utama pada entitas. 3. Primary key 19 adalah candidate key yang paling umum digunakan untuk mengidentifikasi secara unik entitas tunggal. 4. Alternate key adalah candidate key yang tidak terpilih menjadi primary key. 5. Subsetting criteria adalah atribut yang nilai terbatasnya membagi entitas menjadi subset. 6. Foreign key adalah primary key pada satu entitas yang diserahkan ke entitas lain untuk mengidentifikasikan contoh hubungan. 4. Hubungan dan kardinalitas Hubungan menggambarkan relasi entitas dengan entitas lainnya. Kardinalitas menetapkan jumlah minimun dan maksimum kemunculan satu entitas untuk kemunculan tunggal entitas yang berkaitan. Jenis kardinalitas antara lain: 1. One to one 2. One to many 3. Many to many 20 2.7.2 Teknik Normalisasi Normalisasi merupakan proses pengelompokan data elemen menjadi tabel-tabel yang menunjukkan entiti dan relasinya. Sebelum mengenal lebih jauh mengenai normalisasi, ada beberapa konsep yang perlu diketahui yaitu : a. Attribute Key Setiap file selalu terdapat kunci dari file atau satu set field yang dapat mewakili record. b. Candidate Key Candidate key adalah satu atribut atau satu set minimal atribut yang mengidentifikasi secara unik suatu kejadian spesifik dari entiti dan Candidate key tidak boleh berisi atribut dari tabel yang lain. c. Primary Key Primary key adalah satu atribut atau satu set minimal atribut yang tidak hanya mengidentifikasi secara unik suatu kejadian spesfik, tetapi dapat juga mewakili setiap kejadian dari entiti. d. Alternative Key Setiap atribut dari candidate key yang tidak terpilih menjadi primary key, maka atribut-atribut tersebut dinamakan alternative key. e. Foreign Key Foreign key merupakan sembarang atribut yang menunjuk kepada primary key pada tabel yang lain. Foreign key akan terjadi pada suatu relasi yang memiliki kardinalitas one to many (satu ke banyak) atau 21 many to many (banyak ke banyak). Foreign key biasanya selalu diletakkan pada tabel atau relasi mengarah ke banyak. 2.8 Teori Bahasa Basis Data (SQLite) SQLite adalah sebuah pustaka perangkat lunak yang berfungsi untuk menyimpan database dan bersifat embedded, SQLite merupakan kombinasi dari SQL interface dan menggunakan memory yang sangat sedikit sehingga memiliki kecepatan yang sangat cepat untuk mengakses database yang telah dibuat menggunakan SQLite ini. SQLite di android termasuk dalam Android runtime, sehingga setiap versi dari android dapat membuat database menggunakan SQLite. Untuk membuat dan membuka database menggunakan SQLite dilakukan dengan 2 cara, diantaranya : 1. Meng-create database sendiri, mendefinisikan tabelnya, index serta datanya menggunakan sintax SQL. 2. Meng-create database, mendifinisikan tabel, index serta datanya menggunakan SQLite manager atau menggunakan addons browser Mozilla Firefox dengan cara meng-install-nya melalui addons Mozila Firefox. 2.9 Sistem Operasi Sistem Operasi atau Operating System adalah seperangkat program yang berfungsi untuk mengelola sumber daya perangkat keras atau hardware dan menyediakan layanan umum untuk aplikasi perangkat lunak atau software. System 22 operasi terbagi menjadi dua diantaranya : sistem operasi berbasis desktop / komputer dan sistem operasi berbasis mobile / ponsel. Sistem operasi berbasis mobile / ponsel adalah suatu system operasi yang mengontrol sistem dan kinerja pada perangkat mobile, sistem operasi mobile atau lebih dikenal dengan mobile operating system memiliki beberapa system operasi, diantaranya : 1. Blackberry OS adalah sebuah sistem operasi yang dikembangkan oleh perusahaan telekomunikasi asal kanada Reserch in Motion (RIM). Operating system ini hanya digunakan di ponsel Blackberry. 2. iOS adalah sebuah sistem operasi yang dikembangkan oleh perusahaan multinasional Apple Inc yang berbasis di California amerika Serikat. Operating system ini hanya digunakan di ponsel Apple. 3. Symbian OS adalah sebuah sistem operasi yang dikembangkan oleh perusahaan independen Symbian Foundation. 4. Windows Phone OS adalah sebuah sistem operasi yang dikembangkan oleh perusahaan Microsoft. 5. Android OS adalah sebuah sistem operasi yang dikembangkan oleh perusahaan multinasional Google Inc yang didukung oleh Open Handset Aliance (OHA). 2.10 Sistem Operasi Android Sistem operasi android merupakan salah satu sistem operasi perangkat mobile yang tergolong masih baru dan sangat berkembang. Android dikembangkan dengan berbasis java. Android adalah sistem operasi berbasis 23 Linux yang dirancang untuk perangkat seluler layar sentuh dan sistem operasi ini bersifat Open Source artinya semua orang bisa mengembangkan sendiri aplikasi sesuai dengan keinginanya. Android memungkinkan penggunanya untuk memasang aplikasi pihak ketiga, baik aplikasi yang didapat dari Play Store maupun aplikasi APK buatan sendiri. Android mengeluarkan beberapa versi, diantaranya : 1. Android versi 1.5 ( Cupcake ) dirilis 30 April 2009. 2. Android versi 1.6 ( Donut ) dirilis 15 September 2009. 3. Android versi 2.0-2.1 ( Éclair ) dirilis 26 Oktober 2009. 4. Android versi 2.2 ( Froyo ) dirilis 20 Mei 2010. 5. Android versi 2.3-2.3.2 ( Gengerbread ) dirilis 6 Desember 2010. 6. Android versi 2.3.3-2.3.7 ( Gengerbread ) dirilis 9 Februari 2011. 7. Android versi 3.1 ( Honeycomb ) dirilis 10 Mei 2011. 8. Android versi 3.2 ( Honeycomb ) dirilis 15 Juli 2011. 9. Android versi 4.0.3-4.0.4 ( Ice Cream Sandwich ) dirilis 16 Desember 2011. 10. Android versi 4.1.x ( Jelly Bean ) dirilis 09 Juli 2012. 11. Android versi 4.2.x ( Jelly Bean ) dirilis 13 Nopember 2012. 12. Android versi 4.3 ( Jelly Bean ) dirilis 24 Juli 2013. 13. Android versi 4.4 ( Kitkat ) dirilis Oktober 2013. 24 Gambar 2.1 Sistem Operasi Android Kitkat 2.11 Perangkat Lunak Dalam pembuatan skripsi ini software-software yang digunakan adalah sebagai berikut : 1. Aplikasi Java 2. Eclipse 3. SQLite Manager Mozilla 2.11.1 Aplikasi Java Aplikasi Java merupakan aplikasi yang digunakan untuk melihat multimedia, Rich Internet Aplication, dan streaming video dan audio pada komputer web browser atau perangkat mobile yang menggunakan kode javascript, aplikasi Java hampir sama dengan aplikasi flash player. 25 Gambar 2.2 Aplikasi Java 2.11.2 Eclipse Eclipse adalah sebuah IDE ( Integrated Development Environtment ) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform – independent). Eclipse dikembangkan menggunakan bahasa pemograman java, akan tetapi eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lain seperti C/C++, Cobol, Python, Perl, PHP dan lain sebagainya. Eclipse pada awalnya dikembangkan oleh IBM, kemudian pada tanggal 5 Nopember 2001 pengembangan eclipse diambil alih oleh konsorsium Eclipse Foundation. 26 Pada saat ini, eclipse merupakan salah satu IDE favorit karena gratis dan bersifat open source. Selain itu, kelebihan dari eclipse yang membuatnya semakin popular adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan membuat komponen yang disebut plug-in. Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plugin-nya diimplementasikan dalam bahasa pemrograman Java. Eclipse sudah memiliki beberapa versi, diantaranya : 1. Eclipse Europa Packages (2007 - v 3.3) 2. Eclipse Ganymede Packages (2008 - v 3.4) 3. Eclipse Ganymede SR1 Packages (v 3.4.1) 4. Eclipse Ganymede SR2 Packages (v 3.4.2) 5. Eclipse Galileo Packages (2009 - v 3.5) 6. Eclipse Galileo SR1 Packages (v 3.5.1) 7. Eclipse Galileo SR2 Packages (v 3.5.2) 8. Eclipse Helios Packages (2010 - v 3.6) 9. Eclipse Helios SR1 Packages (v 3.6.1) 10. Eclipse Helios SR2 Packages (v 3.6.2) 11. Eclipse Indigo Packages (2011 - v 3.7) 12. Eclipse Indigo SR1 Packages (v 3.7.1) 13. Eclipse Indigo SR2 Packages (v 3.7.2) 27 14. Eclipse Juno Packages (2012 - v 4.2) 15. Eclipse Juno SR1 Packages (2012 - v 4.2.1) 16. Eclipse Juno SR2 Packages (2013 - v 4.2.2) Berikut adalah lembar kerja pada eclipse : Gambar 2.3 Gambar Kerja Eclipse 2.11.3 SQLite Manager Mozilla SQLite Manager Mozilla merupakan sebuah tools atau perangkat untuk memanipulasi dan membuat database SQLite. SQLite Manager Mozilla merupakan addons dari peramban internet atau lebih dikenal sebagai browser Mozilla Firefox, jadi untuk mendapatkan perangkat ini pengguna hanya tinggal meng-install nya saja melalui menu tools >> addons >> get addons di browser Mozilla Firefox secara gratis. Dengan menggunakan tools ini pengguna dapat dengan mudah membuat dan 28 memanipulasi database SQLite tanpa harus membuatnya menggunakan syntax SQL. Berikut adalah lembar kerja SQLite Manager Mozilla : Gambar 2.4 SQLite Manager Mozilla