7 BAB 2 TINJAUAN PUSTAKA 2.1 Teori yang

advertisement
BAB 2
TINJAUAN PUSTAKA
2.1 Teori yang berkaitan dengan Database
2.1.1 Data
Kata “data” biasanya merujuk pada kumpulan fakta yang perlu diolah
sedemikian rupa menjadi sebuah informasi. Data dapat berupa suatu katakata, keadaan, gambar, suara, angka, dan simbol-simbol lainnya yang dapat
digunakan sebagai bahan untuk melihat lingkungan kejadian atau suatu
konsep yang dapat dimengerti.
Banyak ragam yang mendefinisikan data, sebagai berikut:
Menurut Kamus Besar Bahasa Indonesia (KBBI), Data adalah (1)
keterangan yang benar dan nyata; (2) keterangan atau bahan nyata yang
dapat dijadikan dasar kajian (analisis atau kesimpulan).
Menurut sifatnya data dapat dibagi menjadi dua, yaitu data kualitatif
dan kuantitatif. (1) Data kualitatif adalah data yang dikategorikan menurut
kualitas obyek yang dipelajari. (2) Data kuantitatif adalah data yang
memiliki harga yang berubah-ubah dan bersifat variabel.
Menurut sumbernya data dibagi menjadi dua, yaitu data intern dan
data ekstern. (1) Data intern adalah data yang bersumber dari dalam suatu
instansi (organisasi atau lembaga). (2) Data ekstern adalah data yang
bersumber dari luar instansi.
Menurut jenisnya data dibagi menjadi dua, yaitu data kontinu dan
data diskrit. (1) Data kontinu adalah data yang diperoleh dari hasil
pengukuran. (2) Data diskrit yaitu data yang diperoleh dari hasil
perhitungan.
7
8
Disimpulkan bahwa pada dasarnya data adalah kumpulan fakta yang
mengandung sebuah informasi yang membantu dalam menarik suatu
keputusan.
2.1.2 Database
Sudah bukan hal yang asing dalam pemakaian dan penerapan basis
data di kehidupan masa kini. Sebagian besar dari segala sisi aktivitas
kehidupan
menerapkan
penggunaan
basis
data,
seperti
transaksi
pembayaran, peminjaman atau penyewaan barang, pendataan barang,
asuransi dan belajar di perguruan pun menggunakan basis data di
dalamnya.
Basis data atau pangkalan data atau dalam bahasa asing disebut
dengan Database adalah informasi - informasi yang tersimpan di dalam
komputer secara rapih dan teratur sehingga dapat diolah menggunakan
program komputer secara sistematis untuk memperoleh kumpulan basis
data tersebut.
Untuk mempermudah dalam mengelola basis data, diperlukan
perangkat lunak yang disebut DBMS (Database Management System) yang
dirancang untuk dapat membuat, mengontrol, dan mengakses basis data
secara praktis dan efisien. Sehingga mempermudah pengguna untuk dapat
mengontrol dan memanipulasi data.
9
Urutan atau hirarki basis data sangat penting, seperti yang
digambarkan sebagai berikut :
Gambar 2.1 Urutan Basis Data
2.1.3 Database Management System (DBMS)
Untuk mempermudah dalam pengolahan basis data, diperlukan
perangkat lunak yang disebut DBMS (Database Management System).
Menurut Connolly dan Begg (2010: p66) “DBMS is a software system that
enables user to define, create, maintain, and control access to the
database.”. Sistem Manajemen Basis Data merupakan seperangkat
program yang memungkinkan pengguna untuk menyimpan, memodifikasi
dan mengekstrak informasi dari sebuah basis data. Selain itu juga dapat
mengakses, menambah, dan menganalisis data yang disimpan di suatu
aplikasi terintegritas.
DBMS ini menyediakan metode untuk menjaga integritas data yang
tersimpan, sistem keamanan dan memulihkan data jika terjadi kegagalan
sistem. DBMS memungkinkan pengguna mengakses output data dalam
bentuk laporan dan juga termasuk komponen grafis yang memungkinkan
pengguna mengakses informasi dalam bentuk grafis dan diagram.
10
DBMS berfungsi membantu dalam mengatur sebuah basis data dan
DBMS harus mendukung Structured Query Language (SQL). SQL
mempunyai standar bahasa sebagai berikut:
1. Data Definition Language (DDL)
Menurut Connolly dan Begg (2010: p92), DDL adalah
bahasa yang memungkinkan DBA (Database Administrators)
atau pengguna untuk menggambarkan dan memberi nama entitas,
atribut, dan hubungan yang diperlukan dalam basis data. Contoh
dari DDL seperti CREATE, DROP, ALTER, dan RENAME.
2. Data Manipulation Language (DML)
Menurut Connolly dan Begg (2010: p92), DML adalah
bahasa yang menyediakan kumpulan dari metode untuk
mendukung operasi manipulasi data pada basis data. Contoh dari
DML seperti SELECT, INSERT, DELETE, dan UPDATE.
Dengan menggunakan SQL, maka memudahkan pengguna mengatur
sebuah basis data kecil maupun yang besar.
2.1.3.1 Komponen dari DBMS
Menurut Connolly dan Begg (2010: p68) sebuah DBMS
mempunyai lima komponen penting dalam mengatur basis data,
lima komponen tersebut adalah :
1. Hardware (Perangkat Keras)
Merupakan tempat berjalannya sebuah aplikasi dan
DBMS.
2. Software (Perangkat Lunak)
Merupakan
semua
komponen
seperti
DBMS,
aplikasi, sistem operasi, dan perangkat lunak jaringan.
11
3. Data
Merupakan jembatan antara mesin dan manusia.
Data adalah suatu komponen yang penting dalam DBMS.
4. Procedures (Prosedur)
Merupakan merupakan tata cara dan aturan – aturan
dalam mengatur sebuah basis data.
5. People (Manusia)
Merupakan manusia yang berhubungan dengan basis
data. Pada people terdapat 4 pengelompokan sesuai
dengan tanggung jawabnya, yaitu :
a. Data Adminstrators dan Database Adminstrators
Data Administrators (DA) merupakan manusia yang
bertanggung jawab dalam konsep dan logika sebuah basis
data, termasuk tata cara mengolah, mengembangkan, dan
memelihara sebuah basis data. Berbeda dengan Database
Administrators
yang
bertanggung
jawab
dalam
pelaksanaan fisik sebuah basis data termasuk kontrol
keamanan, integritas, dan pemeliharaan dari sistem
operasional.
b. Database Designers
Database designers terbagi atas 2, yaitu logical dan
physical database designers. Logical database designers
bertanggung jawab dalam perancangan sebuah basis data,
seperti rancangan tabel, atribut, dan relasi dalam DBMS.
Physical database designers bertanggung jawab dalam
menyatakan konsep yang telah dirancang di DBMS.
12
c. Application Developers
Ketika sebuah basis data sudah dirancang dan
dilaksanakan dalam sebuah aplikasi, maka Application
Developers bertanggung jawab dalam pelaksanaan aplikasi
kepada End User.
d. End User
Merupakan pengguna dari sebuah aplikasi. End User
dikelompokan menjadi dua, yaitu pengguna yang tidak
menguasai DBMS (Naive User) dan pengguna yang
menguasai DBMS (Sophisticated User).
Demikianlah komponen – komponen dalam basis data yang
saling mendukung dalam mencapai tingkat kesuksesan mengatur
basis data secara maksimal.
2.1.3.2 Fungsi DBMS
Sebuah DBMS mempunyai fungsi mengatur sebuah basis data
dalam banyak hal. Berikut fungsi - fungsi DBMS menurut Connolly
dan Begg (2010: p99) :
1. Data Storage, Retrieval, and Update
DBMS
menyimpan,
berfungsi
membantu
mengambil,
dan
pengguna
memperbaharui
dalam
data
kedalam basis data.
2. User-accessible Catalog
DBMS dilengkapi dengan katalog yang berisi
deskripsi data yang tersimpan dan dapat digunakan oleh
pengguna.
13
3. Transaction Support
DBMS
berfungsi
membantu
pengguna
dalam
melakukan transaksi-transaksi yang dibutuhkan.
4. Concurrency Control Services
DBMS
berfungsi
memberikan
mekanisme
dan
menjaminnya dalam pembaharuan data di sebuah basis
data ketika banyak pengguna melakukan pembaharuan
basis data secara bersamaan.
5. Recovery Services
DBMS
berfungsi
memberikan
layanan
untuk
melakukan recovery (pengembalian keadaan) apabila
sebuah basis data mengalami kerusakan.
6. Authorization Service
DBMS berfungsi memberikan hak akses pengguna
dalam pengoperasian basis data.
7. Support for Data Communication
DBMS berfungsi mendukung komunikasi data,
dimana data dapat terintegritas dibanyak perangkat lunak.
8. Intergrity Services
DBMS berfungsi memberikan data yang ada pada
basis data secara benar.
9. Services to Promote Data Independence
DBMS berfungsi menyediakan data yang mandiri
atau independence untuk mendukung sebuah program.
14
10. Utility Services
Sebuah DBMS berfungsi memberikan utilitas-utilitas
yang mempermudah pengguna dalam pengoperasian basis
data,
seperti
import,
export,
monitoring,
analysis,
indexing, dan editing records.
Fungsi – fungsi tersebut harus ada dalam sebuah DBMS untuk
mempermudah pengguna dalam mengatur sebuah basis data.
2.1.3.3 Keuntungan dan Kerugian DBMS
Dalam penggunaan DBMS terdapat keuntungan dan kerugian
bagi pengguna DBMS, menurut Connolly dan Begg (2010: p77)
sebagi berikut :
•
Keuntungan :
1. Control of Data Redundancy, mengurangi dan mengontrol
data yang berulang dalam penyimpanan data.
2. Data Consistency, menyimpan data hanya sekali dalam basis
data, lalu untuk selanjutnya apabila ada pembaharuan
(update), nilai dari data tersebut akan berubah. Dengan
demikian membuat data hanya memiliki satu nilai.
3. More Information From the Same Amount of Data,
memperoleh informasi tambahan dari data yang sama.
4. Sharing of Data, memungkinkan penggunaan basis data
secara bersama-sama (banyak pengguna).
5. Improved Data Integrity, menjamin basis data mengarah
pada kebenaran dan data yang pasti.
6. Improved Security, membatasi hak akses atau otoritas
pengguna.
15
7. Enforcement of Standart, membuat segala sesuatunya sesuai
dengan standar yang telah ditetapkan.
8. Economy of Scale, menyatukan beberapa operasi perusahaan
yang memungkinkan aplikasi memperoleh data pada sumber
data yang sama. Hal tersebut dapat menghemat biaya.
9. Balance of Conflicting Requirements, memenuhi kebutuhan
sebuah perusahaan dalam pengolahan data.
10. Improved
Data
Accessibility
and
Responsiveness,
memungkinkan data dapat diakses dan diatur sesuai dengan
kebutuhan pengguna.
11. Increased Productivity, memungkinkan mengurangi waktu
pengoperasian basis data, maka perusahaan mendapat waktu
yang
lebih
banyak
dalam
berfokus
meningkatkan
penghasilan.
12. Improved
Maintenance
Meningkatkan
Through
pemeliharaan
Data
sistem
Independence.
melalui
data
independence.
13. Increased Concurrency, mencegah terjadinya kehilangan
informasi pada saat pengaksesan basis data secara
bersamaan oleh banyak pengguna.
14. Improve Backup and Recovery Services, menyimpan data
pada jangka waktu tertentu dan dapat mengembalikan
keadaan data apabila terjadi kerusakan pada basis data.
•
Kekurangan :
1. Complexity, rumit dalam merancang dan membangun
sebuah program dengan DBMS.
2. Size, semakin banyak program yang bersangkutan dengan
DBMS, maka akan memakan memori yang cukup banyak.
16
3. Cost of DBMSs, biaya yang dikeluarkan untuk membeli
DBMS cukup mahal.
4. Additional hardware cost, biaya perangkat keras sebagai
penunjang sistem DBMS relatif mahal.
5. Cost of Conversion, biaya yang dikeluarkan untuk
mengkonversikan aplikasi yang sudah ada agar dapat
menggunakan DBMS dan perangkat keras yang baru
mengeluarkan biaya sangat mahal.
6. Performance, tidak semua aplikasi dapat melakukan
performa yang sangat baik.
7. Higher Impact of a Failure, semua pengguna dan aplikasi
bergantung terhadap ketersediaan DBMS yang ada sehingga
apabila tejadi proses kegagalan pada suatu komponen dapat
menghambat operasi yang sedang berjalan.
2.1.4 SQL
SQL (Structured Query Language) merupakan bahasa pemrograman
yang digunakan untuk manajemen data dalam DBMS.
Dimulai oleh
peneliti IBM bernama Dr. Edgar F. Codd, yang merancang bahasa
prototype sederhana yang disebut SQUARE, kemudian berkembang
menjadi SEQUEL (Structured English Query Language) dan karena
permasalahan penamaan, IBM mengubahnya menjadi SQL.
SQL biasanya berupa perintah sederhana yang berisi untuk
memanipulasi data seperti update data, atau mengambil data dari basis
data. Beberapa sistem manajemen basis data relasional umum yang
menggunakan SQL adalah: Oracle, Sybase, Microsoft SQL Server, Access,
Ingres, dan lain-lain. SQL juga menjadi standar untuk sistem manajemen
basis data relasional oleh ANSI (American National Standards Institute).
Perintah SQL biasa juga dikenal dengan sebutan query.
17
Perintah atau instruksi SQL dapat dikelompokkan berdasarkan jenis
dan fungsinya. Terdapat dua jenis perintah dasar SQL : Data Definition
Language (DDL) dan Data Manipulation Language (DML).
2.1.5 SQLite
SQLite merupakan proyek dari D.Richard Hipp yang bersifat public
domain pada tahun 2000. SQLite adalah sebuah DBMS yang memiliki
ukuran relatif kecil.
Menurut Michael Owens (2006: p2) “SQLite is quite versatile. It is a
database, a programming library, and a command-line tool, as well an
excellent learning tool that provides a good introduction to relational
databases.”. Pada jaman ini SQLite mempunyai bagian yang terpenting
dalam kemajuan sistem operasi di sebuah hand phone yang umumnya
mempunyai memori kecil.
SQLite mempunyai beberapa fitur yang mendukung tugasnya sebagai
DBMS, antara lain :
1. Zero Configuration, SQLite mempunyai pengaturan yang mudah
dimengerti bagi programmer.
2. Portability,
mudah
dalam
penggunaannya.
SQLite
dapati
dijalankan pada beberapa sistem operasi, seperti : Windows,
Linux, Unix, Mac OS.
3. Compactness, SQLite dirancang untuk bersifat tidak melibatkan
server eksternal dan mempunyai kecepatan yang tinggi dalam
memproses sebuah data.
4. Simplicity, SQLite mudah berkerja sama dengan banyak bahasa
pemprogaman, seperti : Perl, Python, Ruby, Tcl/Tk, Java, PHP,
Visual Basic, ODBC, Delphi, Microsoft.NET, Smalltalk, Ada,
Objective C, Eiffel, Rexx, Lisp, Scheme, Lua, Pike, Objective
Camel, Qt, WxWindows, dan REALBASIC.
18
5. Flexibility, SQLite memudahkan dalam menghubungkan relasi
basis data dengan perangkat lunak yang dibuat.
6. Liberal Licensing, SQLite merupakan public domain, yang
membuat programmer gratis dalam menggunakan SQLite.
7. Reliability, SQLite dirancang agar mudah dipelajari, mudah untuk
dikembangkan, mudah diakses, dan mudah untuk ditemukan.
8. Convenience, SQLite mempunyai dynamic typing dan conflict
resolution untuk membantu programmer.
Fitur
tersebut
yang
mendukung
banyak
programmer
tetap
menggunakan SQLite sampai hari ini.
2.2 Teori yang Terkait Tema Penelitian (Tematik)
2.2.1 Personal Financial Planning (Perencanaan Keuangan Pribadi)
Setiap orang mempunyai uang untuk memenuhi kebutuhannya oleh
sebab itu dibutuhkannya perencanaan keuangan pribadi. Menurut Jack R.
Kapoor, Les R. Dlabay, Robert J. Hughes (2012: p2) “ Personal financial
planning is the process of managing your money to achieve personal
economic satisfaction.”.
Menurut Jack R. Kapoor, Les R. Dlabay, Robert J. Hughes (2012: p2)
Perencanaan keuangan pribadi mempunyai beberapa keuntungan, sebagai
berikut :
•
Meningkatkan efektivitas dalam mendapat, menggunakan, dan
menjaga sumber daya keuangan dalam hidup.
•
Meningkatkan
kontrol
dalam
urusan
keuangan
dengan
menghindari hutang yang berlebihan.
•
Meningkatkan kemampuan diri sendiri dalam perencanaan
keuangan yang diatur dengan baik dan efektif.
•
Perasaan bebas dari kecemasan dalam pengaturan keuangan.
19
Dengan membuat perencanaan keuangan pribadi, uang dapat
berfungsi secara maksimal dalam kehidupan.
Dalam perencanaan keuangan pribadi ada beberapa proses yang harus
dilakukan agar mendapat hasil yang maksimal. Proses tersebut sebagai
berikut :
Gambar 2.2 The Financial Planning Process (Dlabay dan Hughes, 2012: p3)
1. Membuat
perencanaan
keuangan
pribadi
dengan
melihat
bagaimana kondisi keuangan sekarang bedasarkan data – data
yang ada.
2. Menyusun sasaran yang ingin dicapai untuk kedepannya.
3. Menyusun rencana yang harus dilakukan dalam mencapai sasaran.
4. Melihat dampak negatif dan positif dari rencana yang telah
tersusun.
20
5. Melaksanakan rencana tersebut dalam mengelola keuangan yang
sedang berjalan.
6. Menarik sebuah kesimpulan dari rencana yang dibuat dan hasil
pelaksanaannya, lalu kembali ke langkah awal dengan data – data
yang baru dan kesimpulan sebagai bahan pertimbangan.
Proses tersebut akan selalu berputar selama mengelola keuangan.
2.2.2 Interaksi Manusia dan Komputer (IMK)
Ilmu IMK merupakan hal yang penting dalam pembuatan sebuah
aplikasi, karena ilmu IMK memberikan standar perancangan User Interface
(UI) pada sebuah aplikasi. Menurut Ben Shneiderman and Catherine
Plaisant (2004: p12) Effective interfaces generate positive feelings of
success, competence, mastery, and clarity in the user community.
Dalam perancangan UI ada lima hal yang harus diperhatikan agar UI
dapat dikatakan standar, hal tersebut sebagai berikut :
•
Time to learn. Berapa lama waktu yang diperlukan, untuk
seseorang mempelajari sebuah program atau aplikasi.
•
Speed of performance. Berapa lama waktu yang diperlukan, untuk
sebuah program atau aplikasi beroperasi sesuai yang diinginkan
pengguna.
•
Rate of errors by users. Berapa persentase pengguna melakukan
kesalahan dalam pengoperasian program atau aplikasi. Berapa
lama waktu yang diperlukan, untuk memperbaiki kesalahan yang
telah terjadi.
•
Retention over time. Bagaimana tingkat kesulitan bagi pengguna
untuk mengingat prosedur sebuah program atau aplikasi.
•
Subjective satisfaction. Berapa besar kepuasan pengguna dalam
mengoperasikan program atau aplikasi tersebut.
21
Ada delapan prinsip dalam membuat design UI, yang umumnya
disebut "eight golden rules”. Delapan prinsip ini sangat membantu bagi
designer untuk membuat UI sebuah program atau aplikasi yang sukses,
efektif, menarik dan informatif., berikut merupakan "eight golden rules” :
1. Strive for Consistency. Konsisten dalam prompt, menu, serta layar
bantuan.
2. Enable
frequent users
to
use
shortcuts.
Memungkinkan
penggunaan jalan singkat bagi pengguna.
3. Offer Informative feedback. Membuat sistem yang menyediakan
umpan balik (feedback) dari segala tindakan pengguna.
4. Design Dialogs to yield closure. Rangkaian tindakan harus
tersusun secara rapih dan jelas dengan melakukan pengelompokan
dalam sebuah proses.
5. Prevent Errors. Membuat sistem dapat melakukan pengecekan
secara cepat dan tepat, sehingga memperkecil kesalahan fatal
untuk pengguna.
6. Permit easy reversal of actions. Memungkinkan kembali kepada
keadaan sebelumnya sebagai antisipasi kesalahan pengguna.
7. Support internal locus of control. Sistem dapat dikendalikan oleh
pengguna dengan mudah dan cepat.
8. Reduce
short
term
memory.
Sistem
dibuat
agar
tidak
membebankan ingatan pengguna.
2.2.3 UML
Menurut Whitten Bentley (2007: p371) UML atau Unified Modeling
Language adalah satu set dari ketentuan modeling yang digunakan untuk
menspesifikasi atau mendeskripsikan sebuah sistem software dalam suatu
kondisi dari objek. UML digunakan untuk visualisasi, merancang, dan
22
mendokumentasikan sistem perangkat lunak, sama seperti seorang arsitek
bangunan yang membuat blueprints untuk membangun sebuah gedung,
arsitek perangkat lunak membuat diagram UML untuk membantu
developer dalam proses pembuatan perangkat lunak. Dengan mengerti kosa
kata yang ada pada UML, akan membantu developer memahami sistem
yang akan dipergunakan dalam pembuatan perangkat lunak.
UML dikembangkan pada pertengahan tahun 1990 dengan feedback
yang sangat banyak dari komunitas pengembangan perangkat lunak. Pada
tahun 1997, UML versi 1.0 diajukan kepada Object Management Group.
UML versi 1.0 tersebut kemudian direvisi menjadi versi 1.1 pada akhir
tahun 1997. Saat kini UML sudah mencapai versi 2.4.1 dan memiliki
banyak diagram, namun dalam penelitian ini, diagram yang akan digunakan
adalah :
1) Use Case Diagram
2) Activity Diagram
3) Class Diagram
2.2.3.1 Use Case Diagram
Menurut
Whitten
Bentley
(2007:
p246)
Use
Case
menggambarkan interaksi antara sistem, eksternal sistem dan user.
Dengan kata lain, Use Case Diagram adalah gambaran dari semua
Use Case yang ada dan bagaimana itu semua dapat berhubungan.
Pada umumnya Use Case Diagram, terdapat empat elemen
yang digunakan dalam pembuatan diagram tersebut, yaitu :
1) Use Case
Use Case menggambarkan interaksi pengguna dengan
sistem, biasanya Use Case digambar berbentuk oval.
23
Gambar 2.3 Use Case Symbol (Whitten Bentley, 2007: p246)
2) Actors
Actors menggambarkan orang atau organisasi yang
berhubungan
langsung
dengan
sistem
tersebut
untuk
pertukaran informasi. Actors digambarkan dengan figur orang.
Gambar 2.4 Actors Symbol (Whitten Bentley, 2007: p247)
3) Relationships
Relationships adalah sebuah garis yang menghubungkan
Actors dengan Use Case pada saat terjadi interaksi diantara
keduanya. Relationships digambarkan dengan garis.
Gambar 2.5 Relationships Symbol (Whitten Bentley, 2007:
p248)
24
4) System Boundary
System Boundary merupakan kotak yang mengelilingi
Use Case yang berguna sebagai penanda untuk ruang lingkup
sistem tersebut.
Berikut adalah contoh Use Case Diagram secara
keseluruhan :
Gambar 2.6 Contoh Use Case Diagram (Whitten Bentley,
2010: p246)
2.2.3.2 Activity Diagram
Menurut Whitten Bentley (2007: p390) Activity Diagram
melukiskan sebuah arus proses, langkah – langkah, dan logika dari
sistem yang sedang berjalan tersebut. Activity Diagram mirip
dengan flowchart, namun bedanya adalah Activity Diagram dapat
memperlihatkan alur yang sedang terjadi bersamaan.
Komponen dari Activity Diagram adalah:
1) Initial Node, berbentuk titik hitam yang menggambarkan
awal mula dari sistem.
25
2) Action, yang direpresentasikan dengan persegi panjang
yang kedua ujungnya melengkung. Action digunakan
menggambarkan pekerjaan yang dilakukan oleh sistem
perangkat lunak.
3) Flow, yang berbentuk anak panah. Flow digunakan untuk
menunjukan alur kontrol dari sistem.
4) Decision, yang berbentuk seperti wajik dengan satu alur
masuk dan dua atau lebih alur keluar. Alur keluar
ditentukan dengan kondisi tertentu.
5) Merge, yang berbentuk seperti wajik dengan dua atau
lebih alur masuk dan satu alur keluar. Merge digunakan
untuk menggabungkan alur sebelumnya yang terpisah oleh
decision.
6) Fork, yang berbentuk bar hitam dengan satu alur masuk
dan dua atau lebih alur keluar. Fork menggambarkan
perpecahan proses yang berlangsung bersamaan.
7) Join, yang berbentuk bar hitam dengan dua atau lebih alur
masuk dan satu alur keluar. Join menggambarkan
menyatunya proses yang telah dipisah oleh fork.
8) Activity Final, yang berbentuk titik hitam dengan
dikelilingi oleh lingkaran hitam kecil di luarnya. Activity
Final digunakan untuk menggambarkan akhir dari sistem.
26
Berikut adalah contoh dari Activity Diagram:
Gambar 2.8 Activity Diagram (Whitten Bentley, 2010: p392)
2.2.3.3 Class Diagram
Menurut Whitten Bentley (2007: p400) Class Diagram
merupakan diagram sistem struktur obyek. Class Diagram
digunakan untuk memodelkan hubungan antar kelas, dan kelaskelas yang telah bergabung menjadi package.
Komponen pada Class Diagram adalah :
1) Class Name, yang terletak pada bagian atas. Merupakan
nama dari kelas tersebut.
2) Class Attribute, yang terletak pada bagian tengah.
Merupakan sesuatu yang umum dan merupakan bagian
dari kelas tersebut
27
3) Class Operation, yang terletak pada bagian bawah.
Merupakan obyek yang dapat dilakukan oleh kelas,
biasanya diimplementasikan sebagai metode dari kelas
tersebut.
Selain itu juga, dalam pembuatan Class Diagram terdapat
visibility yang berguna sebagai penentu apakah attribute dari sebuah
kelas bisa digunakan oleh kelas lainnya atau tidak. Visibility
tersebut adalah :
1) Public, ditandai dengan simbol (+) yang berarti bahwa
attribute atau operation dari kelas ini dapat digunakan
oleh kelas lainnya.
2) Private, ditandai dengan simbol (-) yang berarti bahwa
attribute atau operation dari kelas ini hanya dapat
digunakan oleh dirinya sendiri saja.
3) Protected, ditandai dengan simbol (#) yang berarti bahwa
attribute atau operation dari kelas ini dapat digunakan
oleh kelas itu sendiri dan sub-classnya.
4) Package, ditandai dengan simbol (~) yang berarti bahwa
attribute atau operation dari kelas ini dapat digunakan
oleh kelas itu sendiri dan kelas lainnya yang berada di
package yang sama.
28
Berikut adalah contoh dari Class Diagram :
Gambar 2.8 Contoh Class Diagram (Whitten Bentley, 2010:
p651)
2.2.4 State Transition Diagram (STD)
Menurut Jibitesh Mishra, Ashok Mohanty (2011: p82) State
Transition Diagram berfungsi menyampaikan perilaku yang tergantung
pada waktu di sebuah sistem. STD dibuat berdasarkan proses bisnis yang
ada dengan tujuan memperjelas penggambaransebuah sistem berjalan dan
melakukan proses.
Beberapa komponen – komponen dari STD adalah :
1. State
State menggambarkan suatu keadaan pada suatu waktu tertentu.
Gambar 2.9 Bentuk State
2. Perubahan State
Perubahan state menunjukan arah perpindahan dari state satu ke state
lainnya.
29
Gambar 2.10 Bentuk Perubahan State
2.2.5 Android
Menurut Meng Lee (2011: p2) Android adalah sistem operasi untuk
mobile yang berbasiskan oleh Linux yang telah termodifikasi. Pada awal
mulanya sistem operasi Android ini dikembangkan oleh perusahaan yang
bernama Android. Namun ditahun 2005, Google membeli saham
perusahaan Android dan mengambil alih kegiatan pengembangan sistem
operasi tersebut dengan tujuan untuk memasukkan sistem operasi Android
ke pasar mobile phone.
Keunggulan utama menggunakan Android adalah sistem operasi
tersebut menawarkan kemudahan dalam pengembangan aplikasinya.
Seseorang hanya perlu membuat aplikasi untuk Android, lalu aplikasi
tersebut dapat dipergunakan pada berbagai devices yang memiliki sistem
operasi Android.
2.2.5.1 Versi-Versi Android
Menurut Meng Lee (2011: p2) Android telah mengalami
banyak pembaharuan versi semenjak pertama kali diluncurkan.
Berikut adalah versi-versi dari Android :
30
Tabel 2.1 Tabel Versi Android
Sumber : Meng Lee (2011: p2)
Menurut official website dari Android, terdapat juga dua versi
Android yang lebih baru dari data yang diatas, yaitu :
Tabel 2.2 Tabel Lanjutan Versi Android
Android Version
Code Name
4.0.3 - 4.0.4
Ice Cream Sandwich
4.1.x - 4.3
Jelly Bean
Sumber : developer.android.com/about/dashboards/index.html
2.2.5.2 Fitur Sistem Operasi Android
Menurut Meng Lee (2011: p3) Android adalah sistem operasi
open source dan bebas terbuka bagi developer untuk melakukan
customization, sehingga tidak diperlukan pengaturan tetap untuk
perangkat keras maupun perangkat lunak yang akan dipergunakan.
Namun Android sendiri memiliki fitur-fitur seperti :
31
1. Storage
Dipergunakan basis data SQL Lite sebagai tempat untuk
menampung data-data pengguna.
2. Connectivity
Mendukung jaringan GSM/EDGE, IDEN, CDMA, EVDO, `UMTS, Bluetooth, WiFi, LTE, dan WiMAX.
3. Messaging
Dapat melakukan SMS (Short Message Service) dan
MMS (Multimedia Message Service).
4. Web Browser
Berlandaskan pada open-source WebKit dan Chrome V8
JavaScript engine.
5. Media Support
Mendukung berbagai jenis media untuk foto dan video
seperti : H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC,
HE-AAC, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF,
dan BMP.
6. Hardware Support
Sensor getaran, kamera, kompas digital, pendeteksi
obyek terdekat tanpa adanya kontak fisik, dan GPS (Global
Positioning System).
7. Multi-touch
Mendukung multi-touch screens. Dalam arti dapat
menggunakan 2 jari atau lebih dalam penggunaannya.
32
8. Multi-tasking
Mendukung multi-tasking application. Dalam arti dapat
menggunakan lebih dari 1 aplikasi.
9. Flash Support
Android 2.3 mendukung Flash 10.1
10. Tethering
Mendukung pembagian koneksi internet sebagai hotspot.
2.2.5.3 Arsitektur Android
Menurut Meng Lee (2011: p4), sistem operasi Android dibagi
menjadi lima bagian dalam empat lapisan utama, yaitu :
Gambar 2.11 Arsitektur dari Android (Meng Lee, 2011: p3)
a) Linux Kernel
Ini merupakan dasar dari Android. Lapisan ini berisikan
semua drivers tingkatan rendah untuk segala komponen
perangkat keras pada device Android.
33
b) Libraries
Disini berisi semua kode yang memberikan fitur utama
pada sistem operasi Android.
c) Android Runtime
Android Runtime berada pada lapisan yang sama dengan
libraries,
memberikan
inti
dari
libraries
yang
memperbolehkan developer untuk membuat aplikasi Android
dengan menggunakan bahasa pemrograman Java. Selain itu
juga terdapat Dalvik virtual machine, yang memungkinkan
untuk mengoptimalkan battery-powered mobile devices
dengan memori dan CPU yang terbatas.
d) Application Framework
Memperlihatkan berbagai kemampuan dari sistem
operasi Android kepada para developer aplikasi agar mereka
dapat menggunakannya dalam pembuatan aplikasi tersebut.
e) Application
Pada lapisan teratas ini, dapat ditemukan aplikasi
bawaan yang terdapat pada device android (seperti contacts,
browser), serta aplikasi-aplikasi yang diunduh dan di-install
dari Android Market.
2.2.6 Java
Menurut Harvey M. Deitel dan Paul J. Deitel (2005: p2) “Java is a
powerful computer programming language that fun for novices and
appropriate for experienced programmers to building substantial
information system.”. Java merupakan sebuah bahasa pemrograman yang
mempunyai banyak kelebihan. Java diperkenalkan oleh Sun Microsystems
pada tahun 1990.
34
Pada tahun 1998, Java 2 lahir sebagai platform kedua dari Java. Java
biasanya digunakan untuk mengembangkan dalam ruang lingkup enterprise
program. Hal itu dikarenakan, Java dapat dijalankan diberbagai sistem
operasi seperti Windows, Linux, dan Unix.
Dalam memprogram sebuah aplikasi dengan basis Java , ada dua hal
yang penting yaitu Java SE Java Runtime Enivrontment (JRE) dan Java SE
Development Kit (JDK) :
•
JDK merupakan kumpulan perkakas yang mendukung dalam
pembuatan program berbasis Java. JDK dapat melakukan
compiler dan debugger yang dibutuhkan programmer Java.
•
JRE merupakan kumpulan dari Java Application Programming
Interface (API), Java Virtual Machine (JVM), dan Class Library
Java. Dimana API adalah kumpulan application and applets Java
dan JVM berfungsi sebagai compile source code ke java bytecode.
JRE digunakan untuk menjalankan program berbasis Java.
Berdasarkan kegunaanya pemrograman Java dikelompokkan menjadi
tiga yaitu, J2SE (Java2 Standard Edition), J2ME (Java2 Micro Edition),
dan J2EE (Java2 Enterprise Edition) :
•
J2SE merupakan kumpulan library yang membantu dalam
pengembangan aplikasi desktop.
•
J2ME merupakan kumpulan library yang membantu dalam
pengembangan
aplikasi pada perangkat kecil dengan jumlah
memory yang relatif sedikit sepeti smartphone dan PDA.
•
J2EE merupakan kumpulan library yang membantu dalam
pengembangan aplikasi berbasis client or server dalam ruang
lingkup enterprise.
2.2.7 XML
Extensible Markup Language (XML) is a simple, very flexible text
format derived from SGML (ISO 8879). Pada tahun 1998, XML 1.0
direkomendasikan secara resmi oleh World Wide Web Consortium (W3C).
35
XML adalah bahasa markup yang menyerupai Hyper Text Markup
Language (HTML) akan tetapi XML dan HTML mempunyai tujuan
pengembangan yang berbeda. XML diciptakan untuk menyusun,
menyimpan dan menyalurkan data antar aplikasi dan HTML diciptakan
untuk web browser menampilkan informasi.
XML mempunyai struktur bahasa yang mudah dikenal karena bahasa
XML dapat dibuat sendiri sesuai dengan kebutuhan. XML 1.0 dilengkapi
dengan DTD ( Document Type Definition) untuk mempermudah aplikasi
membaca stuktur hiraki penulisan XML. DTD biasanya terletak pada
bagian atas penulisan arsip XML.
XML mempunyai kelebihan dalam mengirimkan data, dimana data
dapat dikirim dan diterima pada aplikasi yang mempunyai platform
berbeda. Contohnya, XML dapat mengenal antara platform Java dan
platform .NET .
2.3 Hasil Penelitian atau Produk Sebelumnya
Untuk mendukung materi, maka digunakan e-journal yang berisikan materi
hasil penelitian atau produk sebelumnya. Berikut ini e-journal yang digunakan :
1. e-journal yang dibuat oleh Himawan Ariefianto, Mohamad Dani, dan
Asep Nugraha dengan judul “Perancangan dan Implementasi Aplikasi
Pemesanan Makanan dan Minuman berbasis Client Server dengan
Platform Android (2012)”.
e-journal ini berisi mengenai cara-cara yang digunakan dalam
merancang aplikasi Android yang berbasis Client Server dengan
bantuan jaringan kecil seperti Wi-fi agar data-data dari aplikasi pada
Android tersebut dapat terhubungkan ke komputer yang berada pada
jaringan yang sama. Dengan adanya aplikasi ini, dapat memudahkan
rumah makan yang menggunakan aplikasi tersebut, dimana proses
pemesanan makanan tidak lagi memerlukan alat tulis dan juga dapat
36
meminimalkan kemungkinan terjadinya hilangnya data pesanan dari
customer.
2. e-journal yang dibuat oleh Lifrandi Agan dan Petrus Santoso dengan
judul “Pembuatan Aplikasi Cek Tagihan Listrik berbasis Android
(2013)”.
e-journal ini berisi mengenai cara-cara yang digunakan dalam
merancang aplikasi online pada Android. Dengan adanya aplikasi ini,
dapat
memudahkan
pengguna
untuk
melakukan
pengecekan
penggunaan listrik secara berkala tanpa harus membuka website PLN
dan juga dapat melihat grafik pemakaian listrik sehingga dapat
mengetahui pada saat kapan pemakaian listrik yang paling tinggi.
3. e-journal yang dibuat oleh Suhas Holla dan Mahima M. Katti dengan
judul “Android Based Mobile Application Development and its Security
(2012)”.
e-journal ini berisi mengenai sedikit sejarah perkembangan dari
Android beserta keamanannya. Jurnal ini menjelaskan tingkatan
sekuritas keamanan pada Android, sehingga diharapkan dapat
membantu developer dalam meningkatkan keamanan dalam membuat
suatu aplikasi serta membantu pengguna untuk lebih mengerti
keamanan pada aplikasi pada Android agar tidak terjadi hal-hal yang
tidak diinginkan.
Download