BAB 2 LANDASAN TEORI
2.1
Teori Umum 2.1.1 Pengertian sistem Suatu system dapat diartikan sebagai suatu kumpulan atau variabel yang terorganisir dan saling tergantung satu sama lain. Secara umum pengertian system merupakan kumpulan dari elemen-elemen yang berinteraksi untuk mencapai tujuan tertentu. Hitesh Gupta (2011,p11) Sistema dalah pengelompokan komponen yang teratur yang saling dihubungkan bersama sesuai dengan rencana untuk mencapai tujuan tertentu. Elemen-elemen dari system yaitu : • Output dan input • Proses • Umpan balik • Kontrol • Lingkungan • Batasan dan antarmuka
2.1.2
Pengertian Informasi Informasi didefinisikan sebagai hasil dari pengolahan data dalam suatu bentuk yang dapat dipahami. Berguna dan lebih berarti bagi penerimanya. Informasi merupakan data yang telah diolah untuk digunakan dalam proses pengambilan keputusan. Hannif al-fatta (2007, p9) Informasi adalah data yang telah diolah menjadi suatu bentuk yang penting bagi si penerima dan mempunyai nilai yang nyata yang dapat dirasakan dalam keputusan-keputusan yang sekarang atau keputusan-keputusan yang akan datang. Hannif al-fatta (2007,p9) ”Mc Leod (1995) mengatakan bahwa informasi adalah data yang telah diproses, atau data yang memiliki arti”.
5
6
2.1.3
Konsep Dasar Sistem Informasi Sistem informasi dapat dikatakan sebagai suatu kumpulan dari variabel-variabel yang terorganisir yang menyediakan informasi yang bermanfaat bagi penggunanya. Hitesh Gupta (2011,p19) Sistem informasi dikategorikan untuk menyoroti peran utama masing-masing dalam operasi dan manajemen bisnis.
Gambar 2.1 Is environment Sumber : Hitesh Gupta (2011,p21)
2.1.4
Pengertian Data Hitesh Gupta (2011,p8) Data adalah aliran fakta-fakta mentah dan angka yang terkait dengan orang, tempat, kejadian atau hal-hal, yang dapat di representasikan dengan menggunakan angka, huruf atau simbol. Data adalah kumpulan informasi yang diperoleh dari suatu hasil pengamatan. Data dapat berupa angka atau lambang. Selain itu, data merupakan sesuatu yang belum mempunyai arti bagi penerimanya dan masih memerlukan pengolahan.
7
Gambar 2.2 skema data Sumber: Hitesh Gupta(2011,p8)
2.1.5
Pengertian Database Elmasri, Ramez (2011, p4) Database adalah kumpulan data yang saling berhubungan. Database memiliki beberapa sifat implisit, yaitu : • Database merepresentasikan beberapa aspek dai dunia nyata yang disebut miniworld atau universe of discourse (UoD). • Database dibuat, didesain dan dimasukan data untuk tujuan yang spesifik
Gambar 2.3 spesifikasi database Sumber: Elmasri, Ramez(2011, p7)
Data model adalah kumpulan dari konsep yang dapat digunakan untuk menjelaskan struktur dari sebuah database. Ada beberapa kategori dalam data model, yaitu :
8
- Conceptual data model : model yang dibuat berdasarkan anggapan bahwa dunia nyata terdiri dari kolesi obyek-obyek yang dinamakan entitas serta hubungan
(relationship).
Conceptual
data
model
biasanya
direpresentasikan dalam bentuk entity relationship diagram. - Physycal data model : model yang menggunakan sejumlah tabel untuk menggambarkan data serta hubungan antara data-data.
2.1.6
Teori Interaksi Manusia dan Komputer 2.1.6.1
Pengertian Interaksi Manusia dan Komputer Fokus interaksi manusia dan komputer merupakan interaksi satu atau lebih users dengan satu atau lebih komputer.Insap Santoso (2006, p5) Interaksi manusia komputer adalah sebuah disiplin ilmu yang mempelajari perancangan, implementasi, dan evaluasi sistem komputasi interaktif dan berbagai aspek terkait.
2.1.6.2
Pengertian User Interface Antar muka (User Interface) sanagat diperlukan dalam suatu pembuata sistem. Dengan adanya antar muka, diharapkan pengguna akan mudah memahami apa yang harus dilakukan dan menghindari terjadinya kebingungan saat menggunakan sistem. Pressman (2010, p312) Desain user interface adalah menciptakan sebuah media komunikasi yang efektif antara manusia dengan komputer.
Gambar 2.4 Proses User Interface Sumber: Pressman (2010, p319)
9
Terdapat langkah-langkah dalam pembuatan antar muka (User Interface): 1. Interface analysis and modeling Interface analysis berfokus pada user untuk berinteraksi dengan sistem. Kemudian dianalisis untuk mendefinisikan satu set objek dan aksi interface. Informasi yang dikumpulkan digunakan untuk membuat model analisis untuk interface. 2. Interface design Interface design mendefinisikan satu set obyek dan aksi interfaceyang memungkinkan user untuk melakukan semua tugas desain tata letak. 3. Interface construction Interface construction biasanya dimulai dengan membuat sebuah prototype yang memungkinkan skenario penggunaan untuk dievaluasi
dan
digunakan
untuk
menyelesaikan
konstruksiinterface. 4. Interface validation Setelah pembuatan prototype, interface validation berfokus pada evaluasi secara keseluruhan untuk menentukan kemampuan interface untuk menjalankan setiap perintah berjalan dengan benar dan sejauh mana interface mudah digunakan dan mudah dipelajari serta memenuhi kebutuhan user.
Dalam perancangan user interface, harus memenuhi delapan aturan emas. Shneiderman and Plaisant (2005, p74) Adapun delapan aturan emas tersebut sebagai berikut: 1. Berusaha untuk konsisten Rangkaian aksi yang konsisten harus digunakan dalam keadaan seperti pada prompts, menus, dan layar help serta perintah yang konsisten.
10
2. Menyediakan universal usability Universal usability mengacu pada desain informasi dan komunikasi produk dan layanan yang dapat digunakan oleh semua kalangan user. 3. Memberikan umpan balik yang informatif Untuk setiap aksi yang dilakukan, hendaknya selalu tersedia fasilitas umpan balik agar pengguna mengerti apa yang telah dilakukannya. 4. Merancang dialog yang memberikan penutupan Urutan aksi hendaknya dibagi ke dalam kelompok dengan awal, tengah, dan akhir. Ketika telah mencapai bagian akhir, hendaknya user diberitahu melalui umpan balik. Tanpa adanya dialog untuk mencapai keadaan akhir maka pengguna akan menjadi bingung. 5. Menawarkan penanganan kesalahan sederhana Sebisa mungkin, desainlah sistem sehingga pengguna tidak dapat melakukan kesalahan yang serius. Jika kesalahan dibuat, sistem harus mampu mendeteksi kesalahan dan membantu memberikan solusi untuk penanganan kesalahan. 6. Memungkinkan pembalikan aksi yang mudah Fitur ini mengurangi kecemasan, karena user tahu bahwa kesalahan dapat dibatalkan sehingga akan mendorong eksplorasi fungsi-fungsi lainnya. 7. Mendukung pusat kendali internal Dengan pengaturan yang menyeluruh, user dapat menggunakan sistem sesuai kebutuhan mereka dan menggunakan sistem lebih maksimal. 8. Mengurangi beban ingatan jangka pendek Keterbatasan manusia dalam mengolah informasi dalam jangka waktu yang pendek harus diperhatikan dalam membuat tampilan sehingga tidak menyulitkan user.
11
2.1.7
Teori SoftwareDevelopment 2.1.7.1
Metode Perancangan SDLC Sommervile (2011, p30) SDLC merupakan kepanjangan dari Software Development Life Cycle, dan pada dasarnya didefinisikan sebagai
metodologi
atau
model
yang
digunakan
untuk
mengembangkan sistem komputer. Tanpa SDLC, sistem komputer tidak akan menemui tingkat kebutuhan pengguna atau jika tidak sesuai dengan kebutuhan, ada kecenderungan over budget pada proyek. Untuk mencipatakan keseimbangan antara efisiensi dan efektifitas pengeluaran pada sistem komputer, SDLC telah digunakan dan telah menjadi standar industri dari tahun ke tahun. Salah satu model dalam SDLC adalah Waterfall Model, atau biasa dikenal dengan nama Linear Model. Sommervile (2011,p30) Waterfall model menunjukkan sistematis, pendekatan sekuensial untuk pengembangan perangkat lunak yang diawali dengan persyaratan
spesifikasi
pelanggan
dan
berkembang
perencanaan, pemodelan, konstruksi, dan penyebaran.
Gambar 2.5 Proses Waterfall Model Sumber: Sommervile (2011, p30)
melalui
12
Sommervile (2011, p31) Adapun tahap-tahap dalam proses waterfall model adalah sebagai berikut: 1. Requirements analysis and definition Proses ini menentukan dan menemukan layanan sistem, kendala, dan tujuan yang ditetapkan dari konsultasi dengan pengguna sistem.
Kemudian
didefinisikan
secara
rinci
dan
menggunakannya sebagai spesifikasi sistem. 2. System and software design Proses ini menetapkan rencana untuk pengerjaan software yang meliputi tugas-tugas teknis yang akan dilakukan, resiko yang mungkin terjadi, sumber-sumber yang dibutuhkan, hasil yang akan dibuat, serta jadwal pengerjaannya. 3. Implementation and Unit Testing Pada proses ini, desain perangkat lunak di bentuk menjadi bagian-bagian program atau unit-unit program. Unit testing berfungsi unuk mencari tahu apakah setiap unit program sudah memenuhi spesifikasi yang dibutuhkan. 4. Integration and System Testing unit program individu atau program yang terintegrasi dan diuji sebagai sistem yang lengkap untuk memastikan bahwa persyaratan perangkat lunak telah dipenuhi. setelah pengujian, sistem perangkat lunak yang telah melewati proses ini akan dikirimkan ke pelanggan 5. Operation and maintenance Ini adalah fase terpanjang dalam life cycle. sistem terinstal dan mulai
digunakan.
Pemeliharaan
melibatkan
pengoreksian
kesalahan yang tidak ditemukan pada tahap-tahap awal dari life cycle, meningkatkan implementasi unit sistem dan meningkatkan layanan sistem untuk menemukan kebutuhan-kebutuhan baru.
13
2.1.7.2 Data Flow Diagram Pressman (2010, p187) Data FlowDiagram(DFD) adalah diagram yang menggambarkan aliran data yang sedang berjalan yang meliputi input-proses-output dari suatu sistem. Model aliran data pertama disebut dengan DFD level 0 atau context diagram yang merupakan gambaran sistem secara keseluruhan
Gambar 2.6 Data Flow Diagram Sumber: Pressman (2010, p188)
2.1.7.3 Diagram Aliran Dokumen (DAD) Menurut Mulyadi (2001,pp58-63), diagram aliran dokumen adalah suatu model yang menggambarkan aliran dokumen dan proses untuk mengolah dokumen dalam suatu proses. Berikut ini adalah tabel yang menjelaskan komponenkomponen dari diagram aliran dokumen : Simbol
Keterangan Dokumen Simbol
ini
digunakan
untuk
menggambarkan semua jenis dokumen, yang
merupakan
formulir
untuk
14
Simbol
Keterangan merekam data terjadinya suatu transaksi. Keputusan Simbol ini menggambarkan keputusan yang
harus
dibuat
dalam
proses
pengolahan data. Keputusan yang dibuat ditulis dalam simbol. Garis Alir Simbol ini menggambarkan arah proses pengolahan data. Persimpangan Garis Alir Jika dua garis alir bersimpangan, untuk menunjukkan arah masing-masing garis, salah
satu
garis
dibuat
sedikit
melengkung tepat pada persimpangan kedua garis tersebut. Pertemuan Garis Alir Simbol ini digunakan jika dua garis alir bertemu dan salah satu garis mengikuti garis lainnya. Proses Simbol ini untuk menunjukkan tempattempat dalam sistem informasi yang mengolah atau mengubah data yang diterima menjadi data yang mengalir
15
Simbol
Keterangan keluar. Nama pengolahan data ditulis didalam simbol.
Mulai / Berakhir (terminal) Simbol ini untuk menggambarkan awal dan akhir suatu sistem akuntansi Tabel 2.1 Tabel Simbol-simbol Diagram Aliran Dokumen Sumber :Mulyadi(2001). Sistem Akuntansi. Salemba Empat. Jakarta
2.1.7.4 Entity Relationship Diagram Connolly and Begg (2005, p445) Seringkali lebih mudah untuk memvisualisasikan sebuah sistem yang kompleks dibanding menerjemahkan deskripsi tekstual panjang mengenai spesifikasi kebutuhan
user.
Diagram(ERD)
Kita
untuk
menggunakan merepresentasikan
Entity
Relationship
entitas-entitas
dan
bagaimana mereka berelasi dengan satu sama lain dengan lebih mudah. Sepanjang fase desain database, kami merekomendasikan ERD harus digunakan kapan saja dibutuhkan untuk membantu membangun sebuah gambaran mengenai bagian dari perusahaan yang kita modelkan.
2.2
Teori Khusus 2.2.1
Pengertian Android Lee (2011,p2) Android adalah sebuah mobile operating system yang berasal dari versi linux yang telah dimodifikasi. Android merupakan open source, dan tidak ada pengaturan hardware dan software yang tetap, jadi android dapat di atur sesuai kebutuhan pengguna. Karena dari itu android didukung beberapa fitur, diantaranya :
16
1. Storage : Menggunakan SQLite untuk penyimpanan data 2. Connectivity : Mendukung GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, WiFi, LTE, WiMAX 3. Messaging : Mendukungsms and mms 4. Web Browser : berdasar pada open-source webkit, dan dengan chrome's v8 javascript engine 5. Media support : Terdiri dari pendukung beberapa media seperti AAC, HE-AAC, MPEG-4 SP, AMR, AMR-WB, WAV, MP3, JPG, PNG 6. Hardware Support : accelerometer censor, camera, digital compass, proximity sensor, GPS 7. Multi-touch : Mendukung multi-touch screens 8. Multi-tasking : Mendukung multi-tasking applications 9. Flash support 10. Tethering :Memungkinkan untuk sharing internet (wireless hotspot).
2.2.1.1 Architecture Android Android OS pada umumnya dibagi menjadi 5 bagian yang didalamnya terdapat 4 layer utama.
Gambar 2.7 Android Architecture Sumber: Lee (2011, p3)
17
1.
Linux kernel Pada kernel ini berisi semua perangkat drivers low-level yang berfungsi sebagai pendukung komponen perangkat keras dari perangkat android.
2.
Libraries Pada layer ini berisi semua code yang menyediakan fitur-fitur utama pada sebuah android os. Contoh :library pada SQLite yang menyediakan pendukung basis data, jadi sebuah aplikasi dapat menggunakan library pada SQLite untuk penyimpanan data.
3.
Android runtime Berada dalam satu layer dengan libraries. Android runtime menyediakan set dari core libraries yang memungkinkan pengembang untuk membuat aplikasi android menggunakan bahasa pemrograman java.
4.
Application framework Memaparkan
berbagai
kemampuan
os
android
untuk
pengembang aplikasi sehingga kita dapat membuat aplikasi android. 5.
Applications Pada top layer, anda akan menemukan aplikasi yang dikirimkan dengan perangkat android. Setiap aplikasi ditulis berada pada lapisan ini.
Arsitektur pada Android mendorong konsep penggunaan kembalikomponen, memungkinkan untuk mempublikasikan dan berbagi activities,layanan, dan data dengan aplikasi lainnya. Reto Meier (2010, p15) Berikut layanan-layanan aplikasi yang menjadi pilar arsitektur darisemua aplikasi
18
1.
Activity Manager Digunakan untuk mengontrol daur hidup dariaktivitas, termasuk manajemen aktivitas stack.
2.
Views Digunakan untuk membangun userinterfaces untuk aktivitas.
3.
Notification Manager Menyediakan mekanisme yang konsisten dan tidak mengganggu untuk memberitahu user.
4.
Content Providers Membiarkan aplikasi berbagi data.
5.
Resource Manager Mendukung non-code resources seperti strings dan grafis.
2.2.2 Pengertian Java Balagurusamy (2009,p23) Java adalah Bahasa pemrograman berorientasi objek. Kita dapat mengembangkan dua tipe dari pemrograman java, yaitu: •
Stand-alone applications
•
Web applets
Stand-alone applications adalah program yang ditulis dalam java untuk melaksanakan tugas-tugas tertentu pada computer lokal (sendiri). Sebuah stand-alone applications dalam java programing di eksekusi dalam dua langkah, yaitu : 1. Compiling source code ke dalam byte code menggunakan java compiler 2. Menjalankan program byte code menggunakan java interpreter Applet adalah program java yang dikembangkan untuk aplikasi internet. Applet terdapat pada server yang dapat di unduh melalui internet dan dijalankan pada client menggunakan browser yang memungkinkan java.
19
Gambar 2.8 using java Sumber :Balagurusamy (2009,p24)
2.2.3
Pengertian PHP Conolly (2005, p1014) PHP Hypertext Preprocessoratau yang biasa disebut dengan PHP adalah sebuah bahasa pemograman open source yang berbasis server side. PHP dirancang secara khusus untuk mengisi kesenjangan antara website statis dan website dinamis. PHP mampu berintegrasi dengan berbagai macam jenis database, salah satunyadan yang paling umum adalah MySQL.
2.2.4
Pengertian MySQL Gilmore (2010, p477) MySQL adalah sebuah relasional database server yang menawarkan berbagai macam mekanisme dalam pengolahan data yang dikenal dengan storage engines.Sheldon and Moes (2005 ,p8) MySQL sama seperti sistem DBMS lainnya, seperti Oracel, DB2, dan SQL Server. Memungkinkan untuk mengakses, memanipulasi, melindungi, dan memelihara metadata yang diperlukan untuk mendefinisikan data yang disimpan.
20
2.2.5
Pengertian CSS Shelly (2010, p11) Cascading Style Sheets (CSS) Memungkinkan untuk menentukan style berbagai elemen halaman web. Style adalah aturan yang menentukan tampilan dari elemen halaman web. Style sheet adalah suatu seri aturan yang menetukan style untuk halaman web atau website secara keseluruhan. Dengan style sheet dapat mengubah tampilan dari halaman web dengan mengubah karakteristik-karakteristik seperti font family, font size, margin, spesifikasi link,dan juga elemen-elemen visual seperti warna dan border. CSS tidak digunakan untuk menambahkan konten ke dalam website. CSS hanya membuat konten menjadi lebih menarik.
2.2.6
Pengertian JSON Zakas (2011,p691) JavaScript Object Notation (JSON) merupakan bagian dari javascript, yang memanfaatkan beberapa pola yang ada di dalam java script untuk mewakili data terstruktur. JSON merupakansebuah format data bukan programming language. JSON bukan merupakan bagian dari JavaScript meskipun JSON dan JavaScript saling berbagi syntax. JSON merupakan parsers yang tersedia di banyak Bahasa pemrograman.