bab ii new

Upload: satria-berkata

Post on 08-Jan-2016

229 views

Category:

Documents


0 download

TRANSCRIPT

BAB IITINJAUAN PUSTAKA

2.1 Phylum MolluscaMollusca [moluska] adalah phylum avertebrata yang bilateral simetris, tidak bersegmen sebagian besar hidup dalam air; selom terdapat pada ruang sekitar jantung dan di dalam ginjal serta gionad. Ciri khasnya bertubuh lunak dengan kepala Beranterior (pada Bivalvia rudimeter); biasanya dengan lidah parut (radula), kaki ventral besar berotot (pada sefalopoda termodifikasi menjadi tangan); dengan visera biasanya dalam punuk sebelah dosral kaki. Lapisan luar punuk viseral di sebut mantel, biasanya tertutup oleh cangkang. Mantel mengelilingi rongga mantel yang biasanya mengandung insang (Knenidia), anus dan bukaan ginjal serta saluran reproduksi. Terdapat jantung, sirkulasi sering kali mencakup komponen terbuka (hemoseo) dan komponen tertutup. Sistem saraf terdiri atas tali saraf dan ganglion perkembangan sebagian besar dengan pembelahan spiral, seringkali dengan larva trokofor. Mencakup Amphineura (chiton), Gastropoda (Siput), Scaphopoda, Bivalvia (kerang dan sebagainya) dan Cephalopoda (gurita, Cumi-cumi). Ada sekitar 80.000 jenis yang masih hidup dan terdapat juga fosil di zaman kambrium (M.Abercrombie,dkk.1997:416).

2.1.1 Kelas GastropodaGastropoda mrupakan kelas dari Phylum Mollusca yang memiliki anggota terbesar dan sebagian besar hidup di laut walaupun ada beberapa spesies yang hidup di air tawar. Bahkan bekicot yang merupakan salah satu anggotanya hidup di darat.Sebagian besar Gastropoda terlindung dalam cangkang tunggal yang berbentik spiral tempat hewan itu dapat memasukkan tubuhnya apabila ada ancaman. Cangkang tersebut umumnya berbentuk kerucut. Gastropoda bergerak dengan cara merangkak secara perlahan membentuk gerakan seperti riak dari kaki yang memanjang. Cangkang Gastropoda terdiri dari tiga lapisan, yaitu periostrakum yang tipis, prismatik yang mengandung kalsium karbonat, dan nakreas yang mengkilat.Sebagian yang hidup di darat tidak memiliki insang khusus sehingga untuk bernapas menggunakan lapisan rongga mantel yang berfungsi sebagai paru-paru dan dapat mempertukarkan udara pernapasan dengan udara luar. Contoh Gastropoda antara lain : bekicot (Achatina fulica) dan Nudibranchia (sea slug) (http://www.galeripustaka.com/2014/02/klasifikasi-Mollusca.html).

2.1.2 Kelas CephalopodaAnggota Cephalopoda dirancang untuk dapat bergerak cepat sebagai suatu adaptasi yang berhubungan dengan cara maknnya sebagai karnivora. Gurita dan cumi-cumi menggunakan rahangnya yang mirip paruh untuk menggigit mangsanya, kemudian menyuntikkan racun untuk melumpuhkan mangsanya. Mulut Cephalopoda terletak di pusat dari beberapa tentakel panjang.Mantel berfungsi menutupi massa viseral, tetapi cangkang menjadi tereduksi dan berubah menjadi cangkang internal (seperti cumi-cumi) atau hilang sama sekali (seperti pada gurita). Natutilus merupakan satu kelompok kecil cephaloda yang bercangkang diluar.Cumi-cumi bergerak cepat, tetapi dengan cara mundur. Air ditarik masuk ke dalam rongga mantelnya, kemudian menembakkan aliran air melalui sifon keluar mengarah ke anterior. Hewan ini bergerak dengan cara mengarahkan sifon ke arah yang berbeda. Sedangkan gurita tidak berenang seperti cumi-cumi, sebagian besar hidup di dasar laut, bergerak dan merangkak untuk mencari kepiting dan makanan lainnya.Cephalopoda merupakan satu-satunya Mollusca dengan sistem sirkulasi tertutup. Sistem saraf sudah berkembang baik dengan otak yang kompleks. Cumi-cumi dan gurita juga GANTI DENGAN OBJEK PENELEITIAN PUNYA ICHA -- > MASALAH KULIT JANGAN ASAL COPY PASTE YANG NEGRTI AJA YANG DI TULIS YANG NGAK NGERTI NGAK USAH memiliki organ indra yang berkembang dengan baik (http://www.galeripustaka.com/2014/02/klasifikasi-Mollusca.html).

2.1.3 Kelas Bilvalvia

Anggota kelas ini meliputi remis, tiram dan kerang hijau. Bilvalvia memiliki cangkang yang agak pipih dan pertemuan kedua cangkang itu di bagian dorsal. Pada bagian pertemuan cangkang tersebut terdapat otot aduktor yang sangat kuat menarik kedua cangkang tersebut supaya cangkang dapat menutup untuk melindungi tubuh hewan berbadan lunak itu.Insang berfungsi sebagai tempat pertukaran gas dan untuk makan, insang terletak di rongga mantel. Bilvalvia merupakan pemakan suspensi karena radula telah hilang. Bilvalvia juga tidak memiliki kepala yang jelas. Remis merupakan salah satu contoh Bilvalvia kecil. Oleh karena itu, remis mensekresikan benang kuat yang dapat mengikat tubuhnya ke batu, dok kapal atau cangkang hewan (http://www.galeripustaka.com/2014/02/klasifikasi-Mollusca.html).

2.1.4 Kelas AmphineuraSalah satu hewan pada kelas ini adalah Chitonyang merupakan hewan laut dengan bentuk oval dan cangkang terbagi menjadi delapan lempengan dorsal, tetapi tubuhnya tidak bersegmen. Chitonbiasanya melekat di batuan sepanjang pantai. Kakinya berfungsi sebagai mangkuk penyedot yang kuat melekat pada batuan sehingga sulit untuk dilepaskan. Selain itu, Chitonjuga menggunakan kakinya untuk merangkak secara perlahan-lahan di atas permukaan batu. Chiton menggunakan radualnya untuk memotong dan menelan alga (http://www.galeripustaka.com/2014/02/klasifikasi-Mollusca.html).

2.1.5 Kelas ScaphopodaHewan dari kelas ini umumnya bercangkang seperti kerucut atau tanduk. Kedua ujung cangkang berlubang. Kaki terdapat di daerah mulut. Tubuhnya diselubungi mantel yang berfungsi untuk membantu bernapas. Contoh Dentalium entale (D.A Pratiwi.dkk. 2012:222)

2.2 Perangkat MobilePerangkat mobile memiliki banyak jenis dalam hal ukuran, desain dan layout. Akan tetapi, memiliki kesamaan karakteristik yang sangat berbeda dari sistem desktop. Menurut Jeni (2010) terdapat beberapa karakteristik dari perangkat mobile, diantaranya yaitu :a. Ukuran yang kecilPerangkat mobile memiliki ukuran yang kecil. Konsumen menginginkan perangkat yang terkecil untuk kenyamanan dan mobilitasnya.b. Memori yang kecilPerangkat mobile juga memiliki memori yang kecil, yaitu primary (Random Acces Memori (RAM)) dan secondary (disk). Pembatasan ini adalah salah satu faktor yang mempengaruhi penulisan program untuk berbagai jenis dari perangkat mobile. Dengan pembatasan jumlah memori, pertimbangan-pertimbangan khusus harus diambil untuk memelihara pemakaian dari sumber daya yang mahal.c. Keterbatasan daya proses Sistem mobile tidaklah setangguh desktop. Ukuran, teknologi serta biaya adalah beberapa faktor yang mempengaruhi status dari sumber daya dalam perbedaaan ini. Seperti harddisk dan RAM, Selain itu perangkat mobile menghabiskan sedikit daya dibandingkan dengan mesin desktop. d. Konsumsi daya yang rendahPerangkat ini harus menghemat daya karena mereka berjalan pada keadaan dimana daya yang disediakan dibatasi oleh baterai-baterai.e. Kuat dan dapat diandalkanKarena perangkat mobile selalu dibawa kemana saja, mereka harus cukup kuat untuk menghadapi benturan-benturan dan sesekali tetesan-tetesan air.f. Konektifitas yang terbatasPerangkat mobile memiliki bandwith rendah. Namun dalam perkembangannya yang semakin pesat, perangkat ini sudah memiliki konektifitas yang lebih cepat.

2.3 Android Operating System (OS)2.3.1 Sejarah AndroidPada awal mulanya Android Inc, merupakan sebuah perusahaan software kecil yang didirikan pada bulan Oktober 2003 di Palo Alto, California, USA. Didirikan oleh beberapa senior di beberapa perusahaan yang berbasis Information Technologi (IT) dan Communication; Andy Rubin, Rich Miner, Nick Sears dan Chris White. Menurut Rubin, Android Inc didirikan untuk mewujudkan mobile device yang lebih peka terhadap lokasi dan preferensi pemilik. Dengan kata lain, Android Inc, ingin mewujudkan mobile device yang lebih mengerti pemiliknya.Konsep yang dimiliki Android Inc, ternyata menggugah minat Google untuk memilikinya. Pada bulan Agustus 2005, akhirnya Android Inc diakuisisi oleh Google Inc. Seluruh sahamnya dibeli oleh Google. Banyak yang memperkirakan nilai pembelian Android Inc oleh Google adalah sebesar USD 50 juta. Saat itu banyak yang berspekulasi, bahwa akuisisi ini adalah langkah awal yang dilakukan Google untuk masuk ke pasar mobile phone. Andy Rubin, Rich Miner, Nick Sears dan Chris White tetap di Android Inc yang dibeli Google, sehingga akhirnya mereka semua menjadi bagian dari raksasa Google dansejarah Android. Saat itulah mereka mulai menggunakan Platform Linux untuk membuat sistem operasi bagi mobile phone.Saat ini terdapat dua jenis distributor sistem operasi ini didunia. Pertama yang mendapat dukungan penuh dariGoogleatau Google Mail Service (GMS), dan yang kedua adalah yang benar-benar bebas distribusinya tanpa dukungan langsung dariGoogleatau dikenal dengan Open Handset Distribution(OHD). Sistem operasi ini membuka pintu para developer untuk mengambangkan softwareini dengan Android Software Development Kit (SDK), menyediakantool dan Application Programming Interface (API) yang dibutuhkan untuk memulai mengembangkan aplikasi pada Platform Androidmenggunakan pemrograman Java.Hal ini membuka kesempatan bagi para penggemaropen sourceuntuk ikut terjun mengembangkan sistem operasi Android. Kemudian mulai bermunculan berbagai komunitas yang membangun dan berbagi sistem Android berbasis firmware dengan sejumlah penyesuaian dan fitur-fitur tambahan, seperti FLAC lossless audio dan kemampuan untuk menyimpan download aplikasi pada microSD card. Komunitas tersebut sering memperbaharui paket-paket firmware dan menggabungkan elemen-elemen fungsi Android yang belum resmi diluncurkan dalam suatu firmware.Pada bulan September 2007Googlemulai mengajukan hak paten aplikasi telepon seluler. Disusul dengan dikenalkannya perangkat selulerAndroidyang pertama pada tahun 2008, yaituHTC Dream. Perangkat ini menggunakan sistem operasiAndoroid versi 1.0.Hadirnya HTC Dream telah mendorong perusahaan-perusahaan perangkat keras lainnya untuk ikut menggunakan sistem operasi Android. Dan kemudian pada tahun 2008 terdapat beberapa perusahaan yang ikut bergabung dalam Android Arm Holdings yaitu Atheros Communications diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp, dan Vodafone Group Plc.Saat ini sistem operasi Android menjadi pilihan yang menguntungkan bagi banyak vendor smartphone karena memiliki biaya lisensi yang lebih murah dan sifatnya yang semi-open source. Selain itu Android tentunya juga akan support dengan berbagai layanan dari Google.

2.3.2 Perkembangan versi OS AndroidKeunikan dari nama sistem operasi Android adalah dengan menggunakan nama makanan hidangan penutup (Dessert). Selain itu juga nama-nama OS Android memiliki huruf awal berurutan sesuai abjad; Cupcake, Donut, Eclair, Froyo, Gingerbread, HoneyComb, Ice Cream, Jelly Bean, dan Kitket.Namun juru bicara Google, Randall Sarafa enggan memberi tahu alasannya. Sarafa hanya menyatakan bahwa pemberian nama-nama itu merupakan hasil keputusan internal dan Google memilih tampil sedikit ajaib dalam hal ini.1. Android BetaPertama kali dirilis pada 5 November 2007, kemudian pada 12 November 2007 SDK dirilis oleh Google.2. Android 1.0 AstroPertama kali dirilis pada 23 September 2008. Sebenarnya Android versi pertama ini akan dinamai dengan nama Astro tapi karena alasan hak cipta dan trademark nama Astro tidak jadi disematkan pada versi pertama dari OS Android ini. HTC Dream adalah ponsel pertama yang menggunakan OS ini.3. Android 1.1 BenderPertama kali dirilis pada 9 Februari 2009. Versi Android kedua ini juga mengalami masalah penamaan yang sama dengan versi pertamanya. Pada awalnya Android ini akan diberi nama Bender akan tetapi karena alasan melanggar trademark, nama Bender tidak jadi disematkan pada versi Android ini. Awalnya versi OS Android ini dirilis untuk perangkat T-Mobile G1 saja. Versi ini merupakan update untuk memperbaiki beberapa bugs, mengganti API dan menambahkan beberapa fitur.4. Android 1.5 CupcakePertama kali dirilis pada 30 April 2009. Mulai dari versi Android ini penamaan menggunakan nama makanan pencuci mulut (dessert) mulai digunakan, karena ini merupakan versi yang ketiga maka penamaan diawali dengan huruf C dan jadilah Cupcake menjadi nama resmi dari versi OS Android ketiga ini. OS ini berbasiskan pada kernel Linux 2.6.27 dan menambahkan beberapa update serta UI baru dari versi Android sebelumnya. Mulai terdapat widget yang dapat dibesar kecilkan. Kemudian ditambah kemampuan untuk meng-upload video dan gambar ke Youtube dan Picasa.

5. Android 1.6 DonutDirilis pertama kali pada 15 September 2009. Terdapat peningkatan pada fitur pencarian dan UI yang lebih user friendly. Pada versi ini juga sudah mendukung teknologi CDMA/EVDO, 802.1x, VPNs. Kemudian support layar dengan resolusi Wide Video Graphics (WVGA).6. Android 2.0/2.1 clairDirilis pertama kali pada 9 Desember 2009. Terjadi penambahan fitur untuk pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP, digital Zoom, dan Bluetooth 2.1. Beberapa versi update diantaranya Android v.2.0 kemudian v2.0.2 dan terakhir v.2.1.7. Android 2.2 Froyo (Froze Yoghurt)Android versi ini dirilis pertama kali pada 20 Mei 2010 dengan smartphone Google Nexus One sebagai perangkat mobilenya. Pada versi ini sudah support terhadap Adobe Flash Player 10.1. Peningkatan pada kecepatan membuka dan menutup aplikasi, serta penggunaan SD Card sebagai tempat penyimpanan aplikasi. Ketika Android Froyo hadir mulai muncul banyak diskusi yang membahas mengenai persaingan antara Android dengan iOS yang akan semakin ketat di masa yang akan datang. Beberapa versi update yang dirilis antara lain Android v.2.2.1 hingga v.2.2.3.8. Android 2.3 GingerbreadPertama kali diperkenalkan pada 6 Desember 2010. Terjadi banyak peningkatan pada versi Android yang satu ini dibandingkan dengan versi sebelumnya. Dirancang untuk memaksimalkan kemampuan aplikasi dan game. Serta mulai digunakannya Near Field Communication (NFC). Perbaikan terhadap dukungan layar resolusi Wide Extended Graphics Array (WXGA) dan di atasnya. Sampai saat ini Android Gingerbread merupakan versi Android yang memiliki pengguna terbanyak dibandingkan dengan seri Android lainnya, yaitu mencapai 65% dari seluruh versi Android yang dirilis.9. Android 3.0/3.1 HoneycombPertama kali diperkenalkan pada 22 Februari 2011 dan Motorola Xoom adalah yang pertama kali menggunakannya. Android versi ini merupakan OS yang didesain khusus untuk pengoptimalan pengunaan pada tablet PC.10. Android 4.0 ICS (Ice Cream Sandwidch)Pertama kali dirilis pada 19 Oktober 2011. Secara teori semua perangkat seluler yang menggunakan versi Android sebelumnya, Gingerbread, dapat di-update ke Android Ice Cream Sandwich.11. Android versi 4.1 (Jelly Bean)Android Jelly Bean yang diluncurkan pada acara Google I/O lalu membawa sejumlah keunggulan dan fitur baru. Penambahan baru diantaranya meningkatkan input keyboard, desain baru fitur pencarian, UI yang baru dan pencarian melalui Voice Search yang lebih cepat. Tak ketinggalan Google Now juga menjadi bagian yang diperbarui. Google Now memberikan informasi yang tepat pada waktu yang tepat pula. Salah satu kemampuannya adalah dapat mengetahui informasi cuaca, lalu-lintas, ataupun hasil pertandingan olahraga. Sistem operasi Android Jelly Bean 4.1 muncul pertama kali dalam produk tablet Asus, yakni Google Nexus 7.12. Android versi 4.2, 4.3 (Jelly Bean)Pertama kali dikenalkan melalui LG Google Nexus 4. Fitur photo sphere untuk panaroma, daydream sebagai screensaver, power control, lock screen widget, menjalankan banyak user (dalam tablet saja), widget terbaru. Android 4.2.13. Android versi 4.4 (Kitkat)Android terbaru dengan nama Android KitKat telah resmi dirilis oleh Google pada bulan Oktober 2013.Beberapa fitur Android KitKat yang diklaim lebih baik dari Android sebelumnya adalah terdapat fasilitas Could Printing, dimana pengguna dapat Printing secara nirkabel, desain icon dan thema yang lebih unik dan realistic serta tampilan interface yang sangat halus, mendengarkan perintah suara dari Google Now tanpa menguras daya baterai, navigasi dan status bar yang mengalami pembaruan dan penguna dapat akses kamera langsung pada saat layar masih terkunci.

TAMBAH LOLLIPOP

2.3.3 Android Software Development Kit (Android SDK)Android SDK merupakan tools bagi para programmer yang ingin mengembangkan aplikasi berbasis Google Android. Android SDK mencakup seperangkat alat pengembangan yang komprehensif. Android SDK terdiri dari debugger, libraries, handset emulator, dokumentasi, contoh kode dan tutorial. Integrated Eevelopment Environment (IDE) yang didukung secara resmi adalah Eclipse 3.2 atau lebih dengan menggunakan plugin Android Development Tools (ADT), dengan ini pengembang dapat menggunakan teks editor untuk mengedit file Java dan Extensible Markup Language (XML) serta menggunakan peralatan command line untuk menciptakan, membangun, melakukan debug aplikasi Android dan pengendalian perangkat Android.

2.3.4 Dalvik Debug Monitor Server (DDMS) DDMS merupakan tools debugging pada Android yang menyediakan pengambilan gambar layar pada device, informasi thread dan heap pada device, logcat untuk melihat informasi tentang proses yang sedang berjalan, melihat pesan error yang dikirimkan, warning, proses, panggilan masuk dan Short Message Service (SMS), data lokasi, dan lainnya. DDMS diintegrasikan ke dalam Eclipse dan juga terdapat dalam directori /tools/ pada Android SDK.

2.3.5 Android Development Tools (ADT)ADT adalah plugin untuk Eclipse yang didesain untuk pengembangan aplikasi Android. ADT memungkinkan Eclipse untuk digunakan dalam membuat aplikasi Android baru, membuat user interface, menambahkan komponen berdasarkan framework API Android, debug aplikasi, dan pemaketan aplikasi Android.

2.3.6 Arsitektur AndroidGoogle sebagai pencipta Android yang kemudian diasuh oleh Open Handset Alliance mengibaratkan Android sebagai sebuah tumpukan software. Setiap lapisan dari tumpukan ini menghimpun beberapa program yang mendukung fungsi-fungsi spesifik dari sistem operasi. Tumpukan paling bawah adalah kernel. Google menggunakan kernel Linux versi 2.6 untuk membangun Android, yang mencakup memori management, security setting, power management, dan beberapa driver hardware. Bertempat di Level yang sama dengan library adalah lapisan runtime yang mencakup serangkaian inti library Java. Dengannya, para programmer dapat mengembangkan aplikasi untuk Android menggunakan bahasa pemrograman Java. Lapisan selanjutnya adalah application framework, yang mencakup program untuk mengatur fungsi-fungsi dasar smartphone.

Gambar 2.1 Android System Architecture(http://www.tutorialspoint.com)

1. Linux KarnelAndroid dibangun di atas Kernel Linux 2.6. Namun secara keseluruhan Android bukanlah Linux, karena dalam Android tidak terdapat paket standar yang dimiliki oleh Linux lainnya. Linux merupakan sistem operasi terbuka yang handal dalam manajemen memori dan proses. Oleh karenanya pada Android hanya terdapat beberapa service yang diperlukan seperti keamanan, manajemen memori, manajemen proses, jaringan dan driver. Kernel Linux menyediakan driver display, camera, keypad, WiFi, flash memori, audio, dan Communication Interprocess (IPC) untuk mengatur aplikasi dan lubang keamanan.

2. LibrariesAndroid menggunakan beberapa paket pustaka yang terdapat pada C/C++ dengan standar Berkeley Software Distribution (BSD) hanya setengah dari yang aslinya untuk tertanam pada kernel Linux. Beberapa pustaka diantaranya:a) Media Library untuk memutar dan merekam berbagai macam format audio dan video.b) Surface Manager untuk mengatur hak akses layer dari berbagai aplikasi.c) Graphic Library termasuk didalamnya Scene Graph Library (SGL) dan Open Graphics Library (OpenGL), untuk tampilan 2D dan 3D.d) SQLite untuk mengatur relasi database yang digunakan pada aplikasi.e) Supplemental Security Income (SSI) dan WebKit untuk browser dan keamanan internet. 3. Android RuntimePada Android tertanam paket pustaka inti yang menyediakan sebagian besar fungsi Android. Inilah yang membedakan Android dibandingkan dengan sistem operasi lain yang juga mengimplementasikan Linux. Android Runtime merupakan mesin virtual yang membuat aplikasi Android menjadi lebih tangguh dengan paket pustaka yang telah ada. Dalam Android Runtime terdapat 2 bagian utama yaitu Core Libraries dan Dalvik Virtual Machine.4. Application FrameworkKerangka aplikasi menyediakan kelas-kelas yang dapat digunakan untuk mengembangkan aplikasi Android. Selain itu, juga menyediakan abstraksi generik untuk mengakses perangkat, serta mengatur tampilan user interface dan sumber daya aplikasi. Bagian terpenting dalam kerangka aplikasi Android adalah sebagai berikut:a) Activity ManagerBerfungsi untuk mengontrol siklus hidup aplikasi dan menjaga keadaan Backstack untuk navigasi penggunaan.b) Content ProvidersBerfungsi untuk merangkum data yang memungkinkan digunakan oleh aplikasi lainnya, seperti daftar nama.c) Resuource ManagerUntuk mengatur sumber daya yang ada dalam program. Serta menyediakan akses sumber daya di luar kode program, seperti karakter, grafik, dan file layout.d) Location ManagerBerfungsi untuk memberikan informasi detail mengenai lokasi perangkat Android berada.e) Notification ManagerMencakup berbagai macam peringatan seperti, pesan masuk, janji, dan lain sebagainya yang akan ditampilkan pada status bar. 4. Application LayerPuncak dari diagram arsitektur Android adalah lapisan aplikasi dan widget. Lapisan aplikasi merupakan lapisan yang paling tampak pada pengguna ketika menjalankan program. Pengguna hanya akan melihat program ketika digunakan tanpa mengetahui proses yang terjadi dibalik lapisan aplikasi. Lapisan ini berjalan dalam Android runtime dengan menggunakan kelas dan service yang tersedia pada framework aplikasi.Lapisan aplikasi Android sangat berbeda dibandingkan dengan sistem operasi lainnya. Pada Android semua aplikasi, baik aplikasi inti (native) maupun aplikasi pihak ketiga berjalan di atas lapisan aplikasi dengan menggunakan pustaka Application Programming Interface (API) yang sama.

2.4 Eclipse Integrated Development Environment (IDE)Menurut Nasruddin (2012) Eclipse adalah sebuah IDE untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse:1. Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.2. Multi-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.3. Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, tes perangkat lunak, pengembangan web, compiler beberapa bahasa peomgraman seperti Java, C, Ruby dan lain sebagainya.4. Perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya.Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in. Eclipse dibuat dari kerja sama antara perusahaan-perusahaan anggota Eclipse Foundation (beserta individu-individu lain). Banyak nama besar yang ikut dalam Eclipse Foundation, termasuk International Business Machines (IBM), BEA, Intel, Nokia, Borland. Eclipse bersaing langsung dengan Netbeans IDE. Plugin tambahan pada Eclipse jauh lebih banyak dan bervariasi dibandingkan IDE lainnya.1. IntelliJ IDEA (commercial, free 30-day trial)2. Oracle JDeveloper (free)3. Xinox JCreator (ada versi berbayar maupun free)Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat lunak IBM Visual Age for Java 4.0. Produk ini diluncurkan oleh IBM pada tanggal 5 November 2001, yang menginvestasikan sebanyak US$40 juta untuk pengembangannya. Semenjak itu konsorsium Eclipse Foundation mengambil alih untuk pengembangan Eclipse lebih lanjut dan pengaturan organisasinya. Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP:1. Core platform2. OSGi3. Standard Widget Toolkit (SWT)4. Jface5. Eclipse WorkbenchSecara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java, dan Plug-in Development Environment (PDE) untuk mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java. Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++ terdapat plug-in CDT (C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat Diagram UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai dengan keinginannya. Salah satu situs yang menawarkan plug-in secara gratis seperti Eclipse downloads by project.Sejak tahun 2006, Eclipse Foundation mengkoordinasikan peluncuran Eclipse clipse secara rutin dan simultan yang dikenal dengan nama Simultaneous Release. Setiap versi peluncuran terdiri dari Eclipse Platform dan juga sejumlah proyek yang terlibat dalam proyek Eclipse. Tujuan dari sistem ini adalah untuk menyediakan distribusi Eclipse dengan fitur-fitur dan versi yang terstandarisasi. Hal ini juga dimaksudkan untuk mempermudah deployment dan maintenance untuk sistem enterprise, serta untuk kenyamanan. Peluncuran simultan dijadwalkan pada bulan Juni setiap tahunnya.

2.5 Java Platform AndroidJava platform Android merupakan salah satu perkembangan edisi Java yang digunakan dalam membuat aplikasi perangkat mobile dengan basis sistem operasi Android. Hal ini dikarenakan terdapat class yang memudahkan perancangan seperti class app, view, widget dan sebagainya. Selain hal tersebut, kombinasi dari Java API (Application Programming Interface) dan JVM (Java Virtual Machine) memudahkan aplikasi dijalankan pada perangkat mobile. Platform Java Android mirip dengan Java2 Standart Edition (J2SE) dikarenakan struktur perintah untuk kondisi dan perulangan, tipe variabel yang dapat digunakan dan operator yang digunakan hampir sama. Platform ini dapat dikatakan merupakan pengembangan dari J2SE yang ditetapkan untuk aplikasi mobile yang berbeda dari J2ME (Java 2 Micro Edition), karena file yang dihasilkan berextensi .apk bukan .jar. (Ineu Fajri Pratiwi:2012)

2.6 Metode String MatchingString matching merupakan pencocokan string dengan dasar kemiripan dan segi penulisannya (jumlah karakter, susunan karakter dan dokumen). Tingkat kemiripan ditentukan dengan jauh tidaknya beda penulisan dua buah string yang dibandingkan tersebut dan nilai tingkat kemiripan ini ditentukan oleh programmer (Edy, 2011).Operasi mengubah string ini bisa berupa mengubah suatu huruf ke huruf yang lain, menghapus satu huruf dari string, atau memasukkan satu huruf ke dalam string. Operasi-operasi ini digunakan untuk menghitung jumlah perbedaan yang diperlukan GANTI DENGAN ALGORITMA PUNYA ICHA YAAAA untuk pertimbangan kecocokan suatu string dengan string sumber. Jumlah perbedaan tersebut diperoleh dari penjumlahan semua pengubah yang terjadi dari masing-masing operasi. Penggunaan perbedaan tersebut diaplikasikan dalam berbagai macam algoritma diantaranya Hamming, Levenstein, Damerau-levenstein, Jaro-winker, dan lain-lain. Operasi perhitungan tersebut meliputi tiga opearasi string yaitu operasi penghapusan, penyisipan dan penggantian (Benardino,2009).

2.7 Algoritma Levenstein DistanceAlgoritma Levenstein Distance, Merupakan algoritma pencarian jumlah perbedaan string yang ditemukan oleh Vladimir Levenstein, seorang ilmuwan Rusia, pada tahun 1965. Algoritma ini digunakan secara luas dalam berbagai bidang, misalnya mesin pencari, pengecek ejaan (spell checking), pengenal pembicaraan (speech recognition), pengucapan dialek, analisis Deoxyribonucleic acid (DNA), pendeteksi pemalsuan, dan lain-lain. Algoritma ini menghitung jumlah operasi string menjadi string yang lain ( Benardino,2009).Pada dasarnya, algoritma ini menghitung jumlah minimum pentransformasian suatu string menjadi string lain yang meliputi penggantian, penghapusan, dan penyisipan. Algoritma ini digunakan untuk mengoptimalkan pencarian tersebut karena sangat tidak efisien jika dilakukan pencarian setiap kombinasi operasi-operasi string tersebut. Oleh karena itu, algoritma ini tergolong program dinamis dalam pencarian nilai minimal tersebut. Antony susanto dan henky honggo (2013) menjelaskan fungsi dari algoritma levenstein distance yaitu:1. Misalkan kata pertama adalah source =s, dan kata kedua adalah target = t.2. Tentukan n sebagai panjang dari s.3. Tentukan m sebagai panjang dari t.4. Jika , return m dan stop.5. Jika , return n dan stop.6. Buat matriks yang berisi 0 sampai m baris dan 0 sampai n kolom.7. Periksa setiap karakter dari dan dari .8. Jika sama dengan , maka , jika berbeda maka c9. Tentukan sel d[i,j] dari matriks yang sama dengan angka terendah dari:a. b. c. 10. Setelah selesai, maka jarak akan didapatkan dari sel d[n,m].Flowchart dari algoritma levenshtein distance dapat di lihat pada lampiran2.8 Data Flow Diagram(DFD)DFD adalah suatu model logika data atau proses yang dibuat untuk menggambarkan asal data dan tujuan data yang keluar dari sistem. DFD sering digunakan untuk menggambarkan suatu sistem yang telah ada atau sistem baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik tempat data tersebut mengalir atau tempat data tersebut akan disimpan.DFD merupakan alat yang digunakan pada metodologi pengembangan sistem yang terstruktur. Kelebihan utama pendekatan aliran data yang dimaksud adalah sebagai berikut :a. Kebebasan dari menjalankan implementasi teknis sistem.b. Pemahaman lebih jauh mengenai keterkaitan satu sama lain dalam sistem dan subsistem.c. Mengkomunikasi pengetahuan sistem yang ada dengan pengguna melalui diagram alir.d. Menganalisis sistem yang diajukan untuk menentukan apakah data dan proses yang diperlukan sudah ditetapkan.e. Membedakan sistem dari lingkungannya dengan menempatkan batas-batas nya.DFD terdiri dari context diagram dan diagram rinci (DFD Level led). Context diagram berfungsi memetakan model lingkungan (mengambarkan hubungan antara entitas luar, masukan, dan keluaran sistem), yang direpresentasikan dengan lingkaran tunggal yang mewakili keseluruhan sistem. DFD Level led menggambarkan sistem sebagai jaringan kerja antara fungsi yang berhubungan satu sama lain dengan aliran dan penyimpanan data, model ini hanya memodelkan sistem dari sudut pandang fungsi.Pada DFD Level ed akan terjadi penurunan Level . Penurunan Level yang lebih rendah harus mampu merepresentasikan proses tersebut ke dalam spesifikasi proses yang jelas. Jadi, dalah DFD Level ed dapat dimulai dari DFD Level 0 kemudian turun ke DFD Level 1 dan seterusnya. Setiap penurunan hanya dilakukan bila perlu. Aliran data yang masuk dan keluar pada suatu proses di Level x harus berhubungan dengan aliran data yang masuk dan keluar pada Level x+1 yang mendefinisakan proses pada Level x tersebut. Proses yang tidak dapat diturunkan/dirinci lagi dikatakan primitif secara fungsional dan disebut sebagai proses primitif.

Table 2.1 Komponen DFD menurut Yourdan dan DeMarcoSIMBOLNAMAKETERANGAN

TERMINATORTerminator dapat berupa orang, sekelompok orang, organisasi, perusahaan/departemen yang berada diluar sistem yang akan dibuat, diberi nama yang berhubungan dengan sistem tsb dan biasanya menggunakan kata benda.

PROSESKomponen proses menggambarkan transformasi input menjadi output. Penamaan proses disesuaikan dengan proses/kegiatan yang sedang dilakukan

DATA STOREKomponen ini digunakan untuk membuat model sekumpulan paket data dan diberi nama dgn kata benda bersifat jamak

ALUR DATAAlur data digunakan untuk menerangkan perpindahan data / paket datadari satu bagian ke bagian lainnya.

2.9 Flowchat Flowchart adalah penyajian yang sistematis tentang proses dan logika dari kegiatan penanganan informasi atau penggambaran secara grafik dari langkah-langkah dan urut-urutan prosedur dari suatu program. Flowchart menolong analis dan programmer untuk memecahkan masalah kedalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternatif-alternatif lain dalam pengoperasian.System flowchart adalah urutan proses dalam system dengan menunjukkan alat media input, output serta jenis media penyimpanan dalam proses pengolahan data.Program flowchart adalah suatu bagan dengan simbol-simbol tertentu yang menggambarkan urutan proses secara mendetail dan hubungan antara suatu proses (instruksi) dengan proses lainnya dalam suatu programPedoman-Pedoman Dalam Membuat FlowchartJika seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti :1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri ke kanan.2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya.3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja, misalkan Melakukan penggandaan diri.5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.6. Lingkup dan range dari aktifitas yang sedang digambarkan harus ditelusuri dengan hati-hati. Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem.7. Gunakan simbol-simbol flowchart yang standar.Tabel 2.2 Simbol Simbol Standart FlowchartSIMBOLNAMAFUNGSI

TERMINATORPermulaan/Akhir Program

GARIS ALIRArah Aliran Program

PREPARATIONProses inisialisasi/ pemberian harga awal

PROSESProses perhitungan/ proses pengolahan data

INPUT/OUTPUT DATAProses input/output data, parameter, informasi

PREDEFINED PROSES (SUB PROGRAM)Permulaan sub program/ proses menjalankan sub program

DECISIONPerbandingan pernyataan penyeleksian data yang memberikan pilihan untuk langkah selanjtnya

ON PAGECONNECTORPenghubungan bagian bagian flowchat yang ber

OFF PAGECONNETORPenghubungan bagian bagian flowchart yang berada pada halaman berbeda