2.1 Teori Umum - BAB 2 LANDASAN TEORI

44
9 BAB 2 LANDASAN TEORI 2.1 Teori Umum Pada bagian ini dikemukakan beberapa teori-teori yang mendasari penelitian terutama dalam pengembangan aplikasi. 2.1.1 Smartphone Menurut Schmidt, Peters, Scheel, Camtepe, dan Albayrak (2009:2), smartphone adalah istilah yang digunakan untuk mendeskripsikan suatu mobile device yang menggabungkan sebagian besar fungsi yang dimiliki oleh sebuah mobile phone, Personal Digital Assistant (PDA), dan Personal Computer (PC). Smartphone adalah sebuah mobile phone yang dibangun di atas mobile operating system. Operating system yang umum digunakan adalah Symbian, Blackberry, Android, iOS, Palm OS, Windows, Bada. Modern Smartphone saat ini telah menggabungkan berbagai fungsi yang telah menjadikannya sebagai sebuah teknologi dengan kemampuan komputasi dan connectivity yang lebih maju daripada mobile phone. Berbagai fungsi tersebut diantaranya adalah touchscreen, portable media player, Global Positioning System (GPS), QWERTY keyboard dan Wireless Fidelity (Wi-Fi).

Transcript of 2.1 Teori Umum - BAB 2 LANDASAN TEORI

9

BAB 2

LANDASAN TEORI

2.1 Teori Umum

Pada bagian ini dikemukakan beberapa teori-teori yang mendasari

penelitian terutama dalam pengembangan aplikasi.

2.1.1 Smartphone

Menurut Schmidt, Peters, Scheel, Camtepe, dan Albayrak

(2009:2), smartphone adalah istilah yang digunakan untuk

mendeskripsikan suatu mobile device yang menggabungkan sebagian

besar fungsi yang dimiliki oleh sebuah mobile phone, Personal Digital

Assistant (PDA), dan Personal Computer (PC).

Smartphone adalah sebuah mobile phone yang dibangun di atas

mobile operating system. Operating system yang umum digunakan adalah

Symbian, Blackberry, Android, iOS, Palm OS, Windows, Bada. Modern

Smartphone saat ini telah menggabungkan berbagai fungsi yang telah

menjadikannya sebagai sebuah teknologi dengan kemampuan komputasi

dan connectivity yang lebih maju daripada mobile phone. Berbagai fungsi

tersebut diantaranya adalah touchscreen, portable media player, Global

Positioning System (GPS), QWERTY keyboard dan Wireless Fidelity

(Wi-Fi).

10

Menurut Welsh dan France (2012), dengan bimbingan dan

pengawasan yang memadai, smartphone dapat digunakan dengan cara

yang positif untuk meningkatkan pengalaman siswa dalam lapangan kerja

geografi. Sifat multi-tasking dan portable yang terdapat pada smartphone

menjadikannya sebagai sebuah perangkat alat koleksi data yang ideal.

Potensi pendidikan yang ditawarkan oleh smartphone kemungkinan akan

meningkat dari waktu ke waktu karena prosesor dalam perangkat menjadi

lebih powerful dan karena pengembang perangkat lunak memperpanjang

kuantitas serta tersedianya berbagai varian aplikasi yang dapat di-

download. Staff dan siswa harus bereksperimen untuk mengeksplorasi

kemungkinan yang smartphone tawarkan untuk kerja lapangan, meskipun

hal ini mungkin memerlukan perubahan dalam kebijakan sekolah dalam

kaitannya dengan penggunaan lapangan kerja.

2.1.2 Multimedia

Multimedia terdiri dari 2 kata yaitu multi dan media, dimana multi

yang berarti banyak, majemuk dan beraneka ragam, sedangkan media

yang berarti perantara atau penghubung. Multimedia adalah kombinasi

teks, foto, seni, suara, animasi, dan video yang disampaikan kepada kita

melalui komputer atau peralatan manipulasi elektronik dan digital yang

lain (Vaughan, 2011:1). Penggabungan berbagai elemen multimedia,

seperti penggabungan gambar dan animasi, penambahan sound effect,

video, dan penambahan informasi tekstual dapat menciptakan interpretasi

dan imajinasi tersendiri dalam pikiran masing-masing orang. Ketika Anda

11

mengizinkan pengguna akhir dari proyek multimedia untuk mengontrol

apa dan kapan elemen-elemen tersebut akan dikirimkan, maka

multimedia dapat dikatakan sebagai multimedia interaktif.

2.1.2.1 Elemen-elemen Multimedia

Menurut Vaughan (2011:11), multimedia terdiri atas lima

elemen, yaitu :

1. Teks

Teks adalah gabungan dari kata dan simbol dalam bentuk

apapun, baik secara lisan maupun tulisan, dan merupakan sistem

komunikasi yang paling sering digunakan. Teks merupakan salah

satu cara penyampaian informasi yang sangat sederhana, sehingga

dalam penyampaiannya harus memperhatikan keakuratan dan

kepadatan dalam kata-kata tertentu yang dipilih.

Teks juga memiliki beberapa komponen penting, seperti

typeface dan font. Typeface adalah sekelompok karakter yang

mencakup berbagai macam size dan style, sedangkan font adalah

kumpulan karakter dengan satu size dan style yang merupakan

bagian dari typeface tertentu (Vaughan, 2011:22).

2. Suara

Suara merupakan elemen multimedia yang paling

inderawi, yang berarti “perkataan” yang memiliki makna dalam

bahasa apa saja, mulai dari bisikan sampai teriakan (Vaughan,

2011:104). Suara adalah getaran yang merambat melalui udara

12

yang akan menghasilkan gelombang tekanan, yang ditangkap oleh

gendang telinga manusia, dan dimengerti sebagai informasi.

Jenis suara yang sering digunakan dalam produksi

multimedia adalah MIDI (Musical Instrument Digital Interface)

dan digital audio. MIDI merupakan jenis suara yang biasa

digunakan untuk instrumen-instrumen musik dan merupakan

standar komunikasi yang telah berkembang pada awal tahun 1980-

an yang menggunakan alat seperti penyintesis (synthesizer) untuk

menghasilkan musik yang nantinya akan diolah di komputer.

Digital audio merupakan suatu data yang merepresentasikan suara

dan disimpan dalam bentuk angka-angka yang dikenal sebagai

sample. Format yang sering digunakan oleh suara digital adalah

MP3 atau WAV.

3. Gambar

Gambar adalah salah satu elemen multimedia yang juga

tidak jarang digunakan dalam menyampaikan informasi. Biasanya

suatu pesan atau informasi dapat disampaikan hanya dengan

menggunakan gambar. Gambar itu sendiri merupakan representasi

grafis dan visual. Gambar dapat berbentuk kecil, besar, atau

bahkan dalam layar penuh. Gambar juga berwarna, dapat dibentuk

atau ditempatkan secara acak pada layar.

4. Animasi

Animasi mampu mengubah sebuah presentasi statis

menjadi hidup. Animasi merupakan perubahan visual sepanjang

13

waktu dan memberikan kekuataan besar pada proyek multimedia

dan halaman pada sebuah website (Vaughan, 2011:140). Banyak

aplikasi multimedia, baik dalam Macintosh maupun Windows,

yang menyediakan peranti animasi. Animasi dapat dilakukan

karena adanya fenomena biologi yang disebut persistensi

penglihatan dan fenomena psikologi yang disebut phi (Vaughan,

2011:141). Animasi tidak hanya sekedar wipe, fade, dan zoom.

Contoh animasi lainnya bisa dicontohkan seperti objek yang

bergerak melintasi atau bergerak kedalam atau keluar pada layar,

bola dunia yang memutar, dan lainnya. Jadi animasi dalam

multimedia sebenarnya merupakan penggunaan komputer untuk

menciptakan perpindahan pada layar.

5. Video

Menurut Vaughan (2011:164), video digital merupakan

bagian penting multimedia yang paling memikat, dan merupakan

peranti powerful yang membawa pengguna komputer lebih dekat

ke dunia nyata. Dari semua elemen multimedia, video menempati

tuntutan performa tertinggi dalam komputer dan untuk memori

dan penyimpanannya.

2.1.2.2 Interactive Multimedia

Menurut Vaughan (2011:1), ketika suatu multimedia dapat

berinteraksi dengan end-user (pengguna atau pengamat

multimedia), maka multimedia ini disebut sebagai interactive

14

multimedia. Jika interactive multimedia tersusun menjadi sebuah

struktur yang didalamnya terdapat elemen-elemen yang saling

berhubungan, dan struktur tersebut dapat dinavigasi oleh end-

user, maka interactive multimedia tersebut disebut hypermedia.

Menurut Dastbaz (2003:56), sebuah sistem multimedia

interaktif membutuhkan sebuah pendekatan yang rinci dan

terencana dengan baik terhadap isu-isu integritasi media.

Penanganan pencampuran dari berbagai media seperti teks, suara,

gambar, animasi, dan video menyajikan desainer dengan sebuah

tantangan dalam hal video dan manajemen aset suara serta

manajemen sinkronisasi dalam desain.

2.1.2.3 Tujuan Multimedia

Pada masa sekarang ini, seiring dengan berkembangnya

teknologi multimedia, maka multimedia mulai merambah dan

memberikan pengaruh yang cukup berarti dalam berbagai bidang

kehidupan dan sekarang multimedia telah menjadi unsur yang

sangat penting dalam sebuah komunikasi.

Menurut Dastbaz (2003:9-16) ada beberapa bidang yang

telah menerapkan multimedia ke dalamnya, yaitu :

1. Pendidikan

2. Pelatihan

3. Penyampaian berita, Penyiaran, dan Periklanan

4. Aplikasi Bisnis dan Komersial

15

2.1.3 Interaksi Manusia dan Komputer (IMK)

Karray et al. (2008:138) mendefinisikan interaksi manusia dan

komputer sebagai sebuah desain yang harus dihasilkan sesuai pengguna,

mesin dan layanan yang dibutuhkan untuk mencapai suatu kinerja

tertentu baik dalam kualitas dan optimalitas layanan.

Menurut Shneiderman (2010:32), terdapat lima faktor manusia

yang dapat dijadikan sebagai pusat pengevaluasian, yaitu :

1. Waktu belajar

Waktu yang diperlukan oleh seorang pengguna (user) untuk

mempelajari bagaimana cara menggunakan perintah yang relevan

untuk melakukan suatu tugas.

2. Kecepatan Kinerja

Waktu yang diperlukan untuk mengerjakan suatu tugas.

3. Tingkat kesalahan user

Berapa banyak kesalahan dan kesalahan apa saja yang bisa terjadi

saat user mengerjakan tugas.

4. Daya ingat

Bagaimana kemampuan user dalam mempertahankan

pengetahuannya setelah jangka waktu tertentu. Ingatan dapat

dihubungkan dengan waktu belajar dan frekuensi penggunaan

memegang peranan penting.

5. Kepuasan subjektif

Seberapa besar ketertarikan dan kepuasan pemakai terhadap berbagai

aspek sistem.

16

2.1.3.1 Konsep Perancangan Antarmuka Pemakai

Menurut Shneiderman (2010:88-89) terdapat delapan

aturan emas (Eight Golden Rules) yang digunakan untuk

merancang antarmuka pemakai (user interface) yang baik dan

user friendly, yaitu :

1. Berusaha untuk konsisten

Berusaha konsisten dalam berbagai keadaan, baik dalam

pembuatan prompts, menus, dan help screen, warna serta

jenis tulisan.

2. Menyediakan penggunaan universal

Perancangan aplikasi dilakukan dengan mengetahui

perbedaan dari pengguna sehingga aplikasi dapat

digunakan oleh semua kategori pengguna baik yang sudah

ahli maupun pengguna pemula. Sehingga memungkinkan

semua pengguna untuk menggunakan aplikasi.

3. Memberikan umpan balik yang informatif

Untuk setiap tindakan pengguna harus ada sistem umpan

balik. Untuk aksi yang kecil dan sering terjadi, respon

dapat bersifat sederhana. Sedangkan untuk aksi yang besar

dan jarang terjadi, respon harus lebih besar dan bersifat

detail.

4. Merancang dialog untuk menghasilkan keadaan akhir

Urutan aksi yang ada harus diatur menjadi bagian awal,

pertengahan, dan akhir. Pada bagian akhir ada suatu

17

umpan balik informatif yang memberikan pengguna

kepuasan penyelesaian, rasa lega, dan keyakinan pada user

karena telah menyelesaikan aksinya.

5. Memberikan pencegahan dan penanganan kesalahan yang

sederhana

Merancang sistem sehingga pengguna tidak membuat

kesalahan yang serius. Jika pengguna membuat kesalahan,

antarmuka harus mendeteksi kesalahan dan menawarkan

instruksi sederhana, berguna, dan spesifik untuk

pemulihan.

6. Memungkinkan pembalikan aksi yang mudah

Sebisa mungkin aksi harus dapat dibalikkan. Sehingga

dapat mengurangi kecemasan pengguna karena fitur ini

memungkinkan user untuk mengembalikan keadaan

seperti sebelum dilakukan kesalahan.

7. Menunjang pusat kendali internal

User menjadi pengendali sistem, sedangkan sistem akan

merespon tindakan yang dilakukan user. Peran user dalam

sistem adalah sebagai inisiator bukan responden.

8. Mengurangi beban ingatan jangka pendek

Keterbatasan manusia dalam mengolah informasi dalam

jangka waktu pendek memerlukan sesuatu yang dapat

ditampilkan namun disimpan dalam bentuk sederhana,

seperti penggunaan tampilan yang sederhana,

18

penggabungan beberapa tampilan yang bisa disatukan,

mengurangi frekuensi pergerakan window, dan

memberikan latihan yang cukup untuk kode, mnemonik,

dan urutan aksi.

2.1.3.2 Storyboard

Menurut Dastbaz (2003:134), storyboard adalah sebuah

teknik atau metode yang digunakan untuk memvisualisasikan

antarmuka pengguna (user interface) sebelum memulai

implementasi sistem, guna memperoleh umpan balik (feedback)

dari client dan user. Storyboard merupakan serangkaian sketsa

dari apa yang akan dibuat dan menggambarkan isi dari urutan

layar multimedia. Storyboard memiliki peranan penting dalam

pengembangan multimedia dimana biasanya digunakan sebagai

alat bantu pada tahapan perancangan multimedia.

2.1.4 Rekayasa Piranti Lunak

Definisi Rekayasa Piranti Lunak adalah pembentukan dan

penggunaan prinsip-prinsip rekayasa untuk mendapatkan software

ekonomis yang handal dan bekerja secara efisien pada mesin yang

sesungguhnya (Pressman, 2010:1).

19

2.1.4.1 Waterfall Model

Menurut Pressman (2010:39-41), Waterfall model

terkadang disebut juga sebagai classic life cycle. Waterfall model

melakukan pendekatan secara sistematis dan sequential dalam

proses pengembangan sebuah software yang dimulai dari level

kebutuhan sistem dan melalui tahapan communication, planning,

modeling, construction, dan deployment.

Gambar 2.1 Waterfall Model

Berikut adalah penjelasan dari tahapan-tahapan tersebut :

1. Communication

Pada tahapan ini dilakukan proses analisis terhadap

kebutuhan software, dan proses pengumpulan data dengan

melakukan pertemuan dengan customer, maupun

mengumpulkan data-data tambahan baik yang ada di jurnal,

artikel, maupun internet.

Communication

Planning

Deployment

Construction

Modeling

20

2. Planning

Proses planning merupakan lanjutan dari proses

communication. Pada tahap ini, pengembang software

membuat perkiraan waktu yang diperlukan, serta melakukan

penjadwalan untuk menyelesaikan tahap-tahap pembuatan

software sesuai dengan waktu yang telah diperkirakan.

3. Modeling

Pada tahap ini, syarat kebutuhan akan diterjemahkan ke

sebuah perancangan software yang dapat diperkirakan

sebelum dibuat coding. Proses ini berfokus pada rancangan

struktur data, arsitektur software, representasi interface, dan

detail (algoritma) prosedural.

4. Construction

Construction merupakan proses membuat code. Coding atau

pengkodean merupakan penerjemahan desain dalam bahasa

yang bisa dikenali oleh komputer atau mesin. Setelah

pengkodean selesai, maka akan dilakukan testing terhadap

sistem yang telah dibuat. Testing ini dilakukan dengan

tujuan untuk menemukan kesalahan-kesalahan terhadap

sistem tersebut untuk kemudian dilakukan perbaikan.

5. Deployment

Setelah melakukan analisis, desain, dan pengkodean maka

sistem yang sudah jadi akan digunakan oleh user. Pada

tahap ini, pengembang software menyediakan software yang

21

menyediakan fungsi dan fitur yang bermanfaat, serta

menyediakan dokumentasi untuk semua fitur dan fungsi.

Pada tahap ini juga akan dilakukan acceptance test yang

dilakukan dengan tujuan untuk mendapatkan umpan balik

terhadap software yang telah dibuat yang berujung pada

pemodifikasian fungsi dan fitur, serta pemeliharaan secara

berkala.

2.1.5 UML (Unified Modelling Language)

Menurut Whitten dan Bentley (2007:371), Unified Modelling

Language (UML) adalah suatu kumpulan aturan pemodelan yang

digunakan untuk menentukan dan menggambarkan sebuah sistem

perangkat lunak yang berhubungan dengan objek.

2.1.5.1 Use Case Diagrams

Menurut Whitten dan Bentley (2007:246-250), use case

diagram menggambarkan interaksi antara sistem, sistem eksternal

dan pengguna. Dengan kata lain, secara grafis menggambarkan

siapa yang akan menggunakan sistem dan dengan cara apa

pengguna mengharapkan untuk berinteraksi dengan sistem.

Use Case diagram memiliki dua elemen penting yaitu

aktor dan skenario. Aktor adalah user yang berperan dalam

sebuah sistem untuk pertukaran informasi. Skenario adalah urutan

22

langkah-langkah yang menjelaskan interaksi antara user dengan

sistem.

Gambar 2.2 Contoh Use Case Diagram

Ada beberapa macam dari relationship yang digunakan

dalam use case (Whitten dan Bentley, 2007:248):

1. Associations

Associations menggambarkan interaksi antara use cases

dengan aktor. Associations digambarkan dengan simbol

garis dengan atau tanpa panah.

Gambar 2.3 Contoh Associations Relationship

Sistem

Use Case 1

Use Case 2

Use Case 3 Aktor

23

Associations dengan anak panah yang berasal dari aktor

menunjuk ke use cases menandakan bahwa use cases dipicu

oleh tindakan aktor. Sedangkan associations tanpa panah

menandakan interaksi antara use cases dengan aktor

penerima.

2. Extends

Extends digunakan ketika fungsi dari sebuah use cases

terdiri dari beberapa tahap. Dengan extends, use cases

tersebut akan menghasilkan use cases baru yang mewakili

fungsi tertentu. Use cases hasil dari extends disebut

extension use case.

Gambar 2.4 Contoh Extends Relationship

3. Uses/Includes

Uses/Includes digunakan ketika terdapat dua atau lebih use

cases yang melakukan langkah yang sama. Langkah yang

sama tersebut baiknya dipisahkan menjadi use cases berbeda

yang disebut abstract use case untuk mengurangi

24

redundancy pada use cases. Hubungan antara abstract use

case dengan use cases disebut uses/includes relationship.

Memesan Barang

Mengubah Data

Pribadi

Melakukan Login

«uses»

«uses»

Gambar 2.5 Contoh Uses/Includes Relationship

4. Depends On

Depends On digunakan ketika terdapat hubungan

ketergantungan antara satu use cases dengan use cases

lainnya, dimana suatu use cases tidak dapat dilakukan

sebelum use cases lain dilakukan.

Gambar 2.6 Contoh Depends On Relationship

5. Inheritance

Inheritance digunakan ketika terdapat dua atau lebih aktor

yang melakukan use cases yang sama. Untuk

25

menyederhanakan rancangan diagram diperlukan aktor

abstrak. Aktor abstrak ini memiliki langkah yang dimiliki

aktor lain.

Gambar 2.7 Contoh Inheritance Relationship

2.1.5.2 Class Diagrams

Menurut Whitten dan Bentley (2007:400), class diagram

menggambarkan struktur sistem suatu objek. Diagram ini

menampilkan class-class objek yang sistemnya tersusun seperti

hubungan antara class-class objek. Class diagram dapat

digunakan untuk menampilkan kombinasi dari :

1. Struktur kelas turunan

2. Struktur paket

3. Enkapsulasi state termasuk agregasi

4. Kelas asosiasi

26

Gambar 2.8 Contoh Class Diagram

Notasi – notasi yang terdapat di dalam class diagram

adalah sebagai berikut:

1. Kelas

Setiap kelas digambarkan deangan sebuah kotak yang

terbagi menjadi tiga bagian, yaitu nama kelas, atribut kelas,

dan operasi kelas.

2. Visibility

Visibility berfungsi untuk menentukan apakah atribut atau

operasi dari suatu kelas dapat digunakan oleh kelas lainnya

atau tidak. Terdapat tiga visibility dalam class diagram yang

dapat dilihat pada tabel berikut:

27

Tabel 2.1 Tabel Visibility pada Class Diagram

Visibility Simbol Keterangan

Private -

Atribut dan operasi hanya

dapat digunakan oleh kelas itu

sendiri.

Protected #

Atribut dan operasi hanya

dapat digunakan oleh kelas itu

sendiri dan kelas turunannya.

Public +

Atribut dan operasi dapat

digunakan oleh semua kelas

yang berhubungan.

3. Asosiasi

Asosiasi digunakan untuk menggambarkan adanya

hubungan antara kelas dengan kelas lainnya sehingga

membuat kelas – kelas yang terhubung dapat saling

mengirimkan pesan.

Gambar 2.9 Contoh Asosiasi

Gambar 2.9 menjelaskan bahwa Lecturer mengajar Class

atau Class diajar oleh Lecturer.

28

4. Multiplicity

Multiplicity merupakan istilah yang digunakan untuk

menentukan kardinalitas banyaknya kelas yang berhubungan

dengan kelas yang dimaksud. Terdapat empat jenis

multiplicity, yaitu exactly one (1), zero or one (0..1), zero or

more (0..*), one or more (1..*).

Gambar 2.10 Contoh Multiplicity

Gambar 2.10 menjelaskan bahwa Lecturer dapat mengajar

satu atau banyak Class dan Class hanya dapat diajar oleh

satu Lecturer.

5. Generalisasi

Generalisasi menggambarkan hubungan antara superclass

dan subclass, dimana superclass merupakan bentuk umum

dari subclass dan subclass adalah bentuk spesifik dari

superclass. Sehingga superclass memiliki semua properti

yang dimiliki oleh subclass. Generalisasi menunjukan

adanya inheritance pada class diagram.

29

Gambar 2.11 Contoh Generalisasi

6. Agregasi

Agregasi adalah tipe hubungan yang unik dimana satu objek

merupakan bagian dari objek lain. Dalam agregasi dikenal

istilah whole/part relationship. Sifat agregasi adalah

asimetris jadi Kelas A merupakan bagian dari Kelas B,

tetapi Kelas B bukan bagian dari A.

Gambar 2.12 Contoh Agregasi

7. Komposisi

Komposisi bisa disebut strong aggregation sehingga dalam

hubungan antar kelas lebih terikat kuat dibandingkan

agregasi. Dimana Kelas A merupakan bagian dari Kelas B,

tetapi Kelas B tidak akan ada jika Kelas A tidak ada.

30

Gambar 2.13 Contoh Komposisi

2.1.5.3 Sequence Diagrams

Menurut Whitten dan Bentley (2007:394-396), sequence

diagram secara grafis menggambarkan bagaimana objek

berinteraksi satu sama lain melalui pesan dalam eksekusi sebuah

use case atau operasi. Diagram ini menggambarkan langkah-

langkah pesan yang dikirim dan diterima antar objek dalam suatu

urutan waktu.

Gambar 2.14 Contoh Sequence Diagram

31

Elemen – elemen yang terdapat dalam sequence diagram

adalah sebagai berikut:

1. Aktor

Aktor pada sequence diagram memiliki simbol yang sama

seperti yang digunakan pada use case diagram. Di sini aktor

juga berperan sebagai pengguna yang berinteraksi dengan

sistem.

2. Sistem

Sistem disimbolkan dengan sebuah persegi panjang yang

mewakili kelas – kelas pada class diagram.

:Sistem

Gambar 2.15 Sistem

3. Lifeline

Lifeline disimbolkan dengan garis putus – putus yang berada

di bawah simbol aktor dan sistem, menandakan mulainya

sebuah rangkaian proses.

4. Activation Bars

Activation bar disimbolkan dengan persegi panjang pada

lifeline yang menandakan periode waktu dimana sistem aktif

berinteraksi.

32

Gambar 2.16 Activation Bars

5. Input Messages

Input messages disimbolkan dengan tanda panah horizontal

yang berasal dari aktor menuju sistem berisi method dari

setiap sistem.

Gambar 2.17 Input Messages

6. Output Messages

Output messages disimbolkan dengan tanda panah

horizontal putus – putus yang berasal dari sistem menuju

aktor berisi jawaban dari sistem atas input messages yang

dikirim.

Gambar 2.18 Output Messages

33

7. Frame

Frame merupakan sebuah kotak yang digunakan untuk

menyatukan satu atau lebih message dalam pecahan

rangkaian proses. Frame dapat menunjukan adanya

perulangan (loop), seleksi (alternative), dan pilihan

(optional).

Gambar 2.19 Frame

2.1.5.4 Activity Diagrams

Menurut Whitten dan Bentley (2007:390-394), activity

diagram adalah sebuah diagram yang menggambarkan secara

grafis aliran sequential dari sebuah kegiatan atau proses bisnis,

langkah-langkah sebuah use case atau logika perilaku objek

(metode).

opt

34

Gambar 2.20 Contoh Activity Diagram

Elemen – elemen yang terdapat dalam activity diagram:

Tabel 2.2 Tabel Elemen pada Activity Diagram

Initial State

Simbol yang digunakan untuk

menandakan dimulainya proses.

Action State

Simbol yang digunakan untuk

menandakan suatu aktivitas. Semua

aktivitas pada diagram berdasarkan

urutan action state.

Simbol yang digunakan untuk

menandakan jalur dari sebuah

aktivitas ke aktivitas selanjutnya.

35

Control Flow

Decision/Merge

1. Decision

Menandakan kondisi untuk

memilih salah satu alur

aktivitas.

2. Merge

Menandakan penggabungan alur

aktivitas yang dipisahkan oleh

decision.

Fork/Join

1. Fork

Menandakan adanya dua atau

lebih action state yang jalan

bersamaan.

2. Join

Menandakan berakhirnya proses

parallel.

Final State

Simbol yang digunakan untuk

menandakan berakhirnya proses.

2.1.6 XML (Extensible Markup Language)

36

XML adalah markup language untuk dokumen yang berisi

informasi terstruktur. Informasi terstruktur berisi baik konten (kata-kata,

gambar, dll) dan beberapa indikasi dari peran apa yang dimainkan konten

(misalnya, konten dalam bagian judul memiliki arti yang berbeda dari

konten dalam sebuah catatan kaki, yang berarti sesuatu yang berbeda dari

konten dalam sebuah caption gambar atau konten dalam tabel). Hampir

semua dokumen memiliki beberapa struktur. Sebuah markup language

adalah mekanisme untuk mengidentifikasi struktur dalam dokumen.

Spesifikasi XML mendefinisikan cara standar untuk menambahkan

markup ke dokumen (Walsh, 1998).

2.2 Teori Khusus

2.2.1 Android

Android adalah sebuah mobile operating system yang merupakan

modifikasi dari operating system Linux. Menurut Rubin (2007), Android

merupakan platform pertama yang benar-benar terbuka dan lengkap

untuk mobile device. Android juga memungkinkan pengembangan semua

software yang dibutuhkan untuk menjalankan sebuah mobile phone tanpa

adanya keterbatasan kepemilikan yang dapat menghambat inovasi mobile

phone tersebut.

Menurut Barathi et al. (2010), Android berbasis pada Kernel

Linux dan memiliki beberapa ciri khas yang menarik. Android tidak

membedakan antara aplikasi inti telepon dan pihak ketiga aplikasi.

Semuanya bisa dibangun untuk memiliki akses yang sama ke kapabilitas

37

telepon yang menyediakan pengguna dengan spektrum yang luas dari

aplikasi dan layanan. Android memecahkan hambatan untuk membangun

aplikasi baru dan inovatif. Misalnya, pengembang dapat menggabungkan

informasi dari web dengan data pada mobile phone individu - seperti

kontak pengguna, kalender, atau lokasi geografis - untuk memberikan

pengguna pengalaman yang lebih relevan.

Menurut Lee (2011:2), Android adalah sebuah platform yang

bersifat open source dan tersedia secara bebas bagi produsen untuk

melakukan customization. Android sendiri dapat mendukung berbagai

macam fitur, antara lain :

1. Storage, menggunakan SQLite sebagai data storage.

2. Connectivity, yang telah mendukung GSM/EDGE, IDEN, CDMA,

EV-DO, UMTS, Bluetooth, WiFi, LTE, dan WiMAX

3. Perpesanan Instan (Mesagging), yang telah mendukung SMS dan

MMS.

4. Web browser, berdasar pada WebKit, yang bekerja sama dengan

Chrome V8 JavaScript engine.

5. Media support, telah mendukung berbagai media : H.263, H.264

(baik 3GP maupun MP4), MPEG-4 SP, AMR, AMR-WB, AAC, HE-

AAC, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, dan BMP.

6. Hardware support, diantaranya accelerometer sensor, camera, digital

compass, proximity sensor, dan GPS.

7. Multi-touch, mendukung multi-touch screens.

8. Multi-tasking, mendukung multi-tasking application.

38

9. Flash support, Android 2.3 telah mendukung Flash 10.1.

10. Tethering, adalah kemampuan untuk melakukan sharing terhadap

jaringan internet sebagai wireless fidelity (WiFi).

Android juga menyediakan Android Market yang adalah tempat

dimana para developer mempublikasikan aplikasi yang dibuatnya.

Dengan adanya fitur Android Market, user lebih mudah mengakses

aplikasi mulai dari games hingga tools untuk smartphone. Dengan

menyediakan platform pengembangan yang terbuka, Android

menawarkan kemampuan pada para developer untuk membangun aplikasi

yang inovatif.

2.2.2 Arsitektur Android

Android memiliki banyak komponen dalam arsitektur

pembangunannya, berikut ini merupakan gambaran arsitektur Android

yang terbagi menjadi beberapa layer (Safaat, 2012:6):

39

Gambar 2.21 Arsitektur Android

2.2.2.1 Applications

Pada layer ini terdapat beberapa aplikasi awal yang berasal

dari setiap pabrikan seperti email client, program SMS, browser,

dll. Semua aplikasi tersebut dibuat dengan bahasa Application

Programming Interface (API) libraries yang sama.

2.2.2.2 Application Framework

Application Framework menyediakan semua kelas yang

digunakan dalam pembuatan aplikasi Android. Dan juga

merupakan sebuah gambaran umum untuk akses perangkat keras

serta manajemen user interface dan application resource.

Arsitektur aplikasi dirancang supaya kita dengan mudah dapat

menggunakan kembali komponen yang sudah digunakan (reuse).

2.2.2.3 Libraries

Pada layer ini Android menyertakan kumpulan core library

C/C++ seperti libc dan Secure Sockets Layer (SSL) yang

digunakan oleh berbagai komponen Android. Penjelasan library

lainnya adalah sebagai berikut:

1. M

edia Library untuk memainkan audio dan video.

2. S

urface manager untuk menyediakan pengaturan tampilan.

40

3. S

cene Graph Library (SGL) dan Open Graphics Library

(OpenGL) untuk kemampuan menampilkan grafik dua dan

tiga dimensi.

4. S

QLite untuk dukungan dalam database.

5. S

SL dan WebKit terintegrasi dengan web browser dan

security.

2.2.2.4 Android Runtime

Layer ini terdiri dari core libraries dan Dalvik Virtual

Machine (DVM) yang merupakan sebuah engine untuk

menjalankan bebagai aplikasi pada Android. Core libraries

menyediakan berbagai fungsionalitas yang ada pada Java

libraries. Sedangkan DVM adalah sebuah virtual machine

berbasis register yang menjalankan fungsi threading dan low-

level memory untuk memastikan agar device dapat menjalankan

aplikasi secara efisien.

2.2.2.5 Linux Kernel

Android menggunakan Linux Kernel 2.6 yang berfungsi

sebagai core system service seperti keamanan, manajemen

memori, manajemen proses, network, dan driver model.

41

2.2.3 Fundamental Aplikasi

Terdapat empat jenis komponen pada aplikasi Android (Safaat,

2012:9), yaitu:

1. A

ctivities

Suatu activity akan menyajikan user interface kepada pengguna

sehingga pengguna dapat melakukan interaksi. Sebuah aplikasi

Android bisa jadi hanya memiliki satu activity, tetapi umumnya

aplikasi memiliki banyak activity tergantung pada tujuan aplikasi

dan design dari aplikasi tersebut. Untuk pindah dari satu activity

ke activity lain dapat dilakukan dengan satu event, misalnya click

tombol atau memilih opsi. Secara hirarki sebuah windows activity

dinyatakan dengan method Activity.setContentView().

2. S

ervice

Service tidak memiliki Graphic User Interface (GUI), tetapi

service berjalan secara background, sebagai contoh saat media

player sedang memainkan lagu dari list yang ada, media player

akan memiliki dua atau lebih activity yang memungkinkan

pengguna untuk memilih lagu atau menulis sms saat dimana lagu

tetap dimainkan. Untuk menjaga lagu tetap dimainkan itu, activity

player dapat menjalankan service. Service dijalankan pada thread

utama dari proses aplikasi.

42

3. B

roadcast Receiver

Broadcast receiver berfungsi menerima dan bereaksi untuk

menyampaikan notifikasi seperti low battery. Aplikasi juga dapat

menginisiasi broadcast misalnya memberikan informasi pada

aplikasi lain bahwa ada data yang telah diunduh ke perangkat dan

siap untuk digunakan.

4. C

ontent Provider

Content Provider membuat kumpulan aplikasi data secara spesifik

sehingga bisa digunakan oleh aplikasi lain. Data disimpan dalam

file sistem seperti database SQLite. Content provider

menyediakan cara untuk mengakses data yang dibutuhkan oleh

suatu activity.

2.2.4 Perangkat Ajar

Berdasarkan hasil penelitian sebelumnya, tidak diragukan lagi

bahwa perangkat ajar dapat membantu guru dan siswa dalam proses

belajar mengajar (Legowo, et al, 2011). Perangkat ajar membuat siswa

dapat lebih mudah memahami materi pelajaran yang disampaikan.

Perangkat ajar juga memungkinkan penyampaian materi yang lebih

interaktif dan menarik kepada para siswa. Perangkat ajar mudah

digunakan dan memiliki tampilan yang menarik bagi siswa, sehingga

disukai oleh para siswa.

43

Perangkat ajar merupakan suatu media yang dapat digunakan

untuk menyampaikan materi bagi seorang pengajar kepada siswa.

Perangkat ajar dapat berupa buku, papan tulis, komputer. Perangkat ajar

yang memanfaatkan komputer untuk menyampaikan bahan-bahan yang

akan diajarkan biasa disebut Computer Aided Instruction (CAI).

Penyampaian materi umumnya dirancang dalam bentuk multimedia agar

lebih memudahkan siswa dalam memahami baik dalam bentuk aplikasi

desktop maupun berbasis web. Tujuan dari pembuatan perangkat ajar

antara lain untuk meningkatkan semangat belajar siswa sehingga

penyerapan materi semakin cepat dan siswa tidak merasa jenuh. Suatu

bentuk perangkat ajar dapat digunakan untuk mendukung pengajaran dan

pelatihan namun perangkat ajar bukanlah penyampaian materi yang

utama, karena dibutuhkan pula seorang pendamping atau guru dalam

mempelajari suatu materi agar siswa tidak salah menafsirkan suatu

pelajaran (Perangkat Ajar, 2010).

2.2.5 Simulasi

Menurut Law & Kelton (2000:1), simulasi adalah teknik yang

menggunakan komputer untuk meniru atau mengimitasi suatu operasi

dari berbagai fasilitas atau proses dari dunia nyata. Proses atau fasilitas

tersebut biasanya disebut sistem, dan untuk mempelajarinya secara ilmiah

kita biasanya menggunakan serangkaian asumsi mengenai bagaimana

sistem tersebut bekerja. Asumsi ini dapat berbentuk hubungan matematis

atau logika.

44

Berdasarkan hasil penelitian Liao dan Chen (2007) menunjukkan

bahwa instruksi simulasi komputer berdampak positif pada pembelajaran

siswa. Banyak pendidik yang telah menempatkan usaha yang luar biasa

dalam merancang cara baru menggunakan teknologi komputer di dalam

kelas, dengan harapan bahwa teknologi tersebut akan meningkatkan

prestasi akademik siswa secara dramatis.

2.2.6 Kurikulum Tingkat Satuan Pendidikan

Menurut Dunia Pendidikan (2009), Kurikulum Tingkat Satuan

Pendidikan (KTSP) adalah sebuah kurikulum operasional pendidikan

yang disusun oleh dan dilaksanakan di masing-masing satuan pendidikan

di Indonesia. KTSP secara yuridis tercantum dalam Undang-Undang

Nomor 20 Tahun 2003 tentang Sistem Pendidikan Nasional dan Peraturan

Pemerintah Republik Indonesia Nomor 19 Tahun 2005 tentang Standar

Nasional Pendidikan. Penyusunan KTSP telah dimulai pada tahun ajaran

2007/2008 dengan mengacu pada Standar Isi (SI) dan Standar

Kompetensi Lulusan (SKL) untuk pendidikan dasar dan menengah.

KTSP terdiri atas tujuan pendidikan tingkat satuan pendidikan, struktur

dan muatan KTSP, kalender pendidikan, dan silabus.

2.2.7 Kimia

Menurut Jesperen (2012:2), kimia dapat didefinisikan sebagai

studi mengenai komposisi, sifat, dan transformasi materi. Semuanya

termasuk dalam semua bahan kimia yang membentuk hal-hal nyata dalam

45

dunia kita. Dalam studi, kimiawan mencari jawaban atas pertanyaan-

pertanyaan mendasar tentang bagaimana komposisi zat mempengaruhi

sifat-sifatnya. Dengan pengetahuan yang datang dengan kemungkinan

merancang bahan dengan karakteristik khusus yang dimaksud. Yang

mendasari semua ini adalah mencari pengetahuan tentang cara struktur

materi pada tingkat atom berkaitan dengan perilaku zat yang kita amati

melalui indera.

Menurut Lischer (2009), kimia bukanlah sesuatu yang mudah

untuk didefinisikan agar dapat mencakup semua ruang lingkup dari ilmu

kimia. Secara singkat dapat dikatakan bahwa kimia adalah sebuah studi

mengenai materi dan perubahan yang menyertainya. Dari definisi

tersebut, ruang lingkup ilmu kimia dapat didefinisikan secara lebih rinci,

yaitu mengenai susunan, struktur, sifat, dan perubahan materi serta energi

yang menyertainya.

Sebagai suatu studi, kimia memiliki sebuah objek studi yang

terinci. Objek studi dari ilmu kimia itu sendiri adalah zat kimia (chemical

substance). Zat kimia bukanlah sesuatu yang abstrak dan berbahaya.

Istilah zat kimia mencakup pada segala materi yang ada di alam semesta

ini. Semua materi yang kita sentuh, atau hirup saat ini merupakan suatu

zat kimia. Oleh karena begitu luasnya cakupan dari zat kimia ini, maka

satu-satunya tempat dimana kita tidak dapat menemukan zat kimia di

dalam alam semesta ini adalah di dalam ruang hampa.

Zat kimia dapat diklasifikasikan kedalam unsur dan senyawa.

Unsur adalah zat kimia yang tidak dapat diuraikan menjadi zat lain yang

46

lebih sederhana. Contoh unsur adalah besi, emas, alumunium, dan

oksigen. Saat ini dikenal tidak kurang dari 114 jenis unsur dan masih

mungkin akan bertambah. Sementara itu, senyawa adalah zat yang terdiri

dari dua atau lebih unsur melalui perikatan kimia yang tersusun dengan

perbandingan tetap. Meskipun senyawa terbentuk oleh perikatan kimia

dari dua atau lebih jenis unsur, senyawa memiliki sifat tertentu yang

berbeda dari sifat penyusunnya.

Tidak semua zat kimia terdiri dari zat tunggal. Bahkan

kebanyakan dari materi yang kita kenal merupakan suatu campuran dari

dua atau lebih zat. Campuran itu dapat berupa larutan, suspensi ataupun

koloid. Karena dalam perkembangannya, kebanyakan dari zat yang kita

kenal itu merupakan sebuah campuran.

Berikut adalah materi-materi kimia yang diajarkan pada tingkat

SMA sesuai dengan standard KTSP 2006 :

1. Struktur Atom

2. Sistem Periodik Unsur

3. Ikatan Kimia

4. Termokimia

5. Laju Reaksi

6. Kesetimbangan

7. Larutan

8. Sistem Koloid

9. Zat Radio Aktif

10. Kimia Unsur

47

11. Redoks dan Elektrokimia

12. Stoikiometri

13. Kimia Organik

2.2.8 Eclipse

Menurut Lee (2011:7), Eclipse adalah pengembangan sebuah

software yang bersifat multi-language yang terdiri dari Integrated

Development Environment (IDE) dan sistem extensible plug-in. Eclipse

dapat mengembangkan berbagai jenis aplikasi dengan menggunakan

bahasa Java, Ada, C, C++, COBOL, Python, dan lain-lainnya.

Eclipse adalah sebuah komunitas bagi individu dan organisasi

yang ingin berkolaborasi secara commercially-friendly perangkat lunak

open source. Proyek perusahaan terfokus pada membangun sebuah

platform pengembangan terbuka terdiri dari extensible framework, tools

dan runtimes untuk membangun, menyebarkan dan mengelola perangkat

lunak (Eclipse, 2012).

Eclipse Foundation adalah perusahaan non profit independent,

perusahaan didukung anggota yang menjalankan proyek Eclipse dan

membantu mengolah open source community dan sebuah ekosistem yang

erat kaitannya dengan pemenuhan produk dan jasa.

Proyek Eclipse awalnya diciptakan oleh IBM pada bulan

November 2001 dan didukung oleh persatuan vendor perangkat lunak.

Eclipse merupakan aplikasi Integrated Development Environment (IDE)

48

yang memperbolehkan pengembang aplikasi menambahkan

fungsionalitas dengan mudah dalam bentuk plugin.

Seperti yang telah diketahui Android dikembangkan

menggunakan Java. Telah banyak beredar Java IDE seperti JBuilder dan

NetBeans. Namun Open Handset Alliance dan Google telah memilih

menggunakan Eclipse sebagai Java IDE dalam pengembangan Android.

Berikut ini dijelaskan mengapa Eclipse direkomendasikan sebagai Java

IDE untuk aplikasi Android (DiMarzio, 2008:11):

1. S

esuai dengan karakteristik Android yang terbuka bagi para

pengembang, Eclipse merupakan salah satu yang memiliki fitur

lengkap dan gratis dari semua Java IDE yang ada. Eclipse juga sangat

mudah digunakan dengan waktu pembelajaran yang minimal.

2. O

pen Handset Alliance telah merilis plugin Android untuk Eclipse

sehingga memungkinkan untuk membuat proyek Android yang

spesifik, melakukan kompilasi, dan menggunakan Android Emulator

untuk melakukan debug.

2.2.9 Android Software Development Kit (SDK)

Android SDK adalah tools API, sample code, dan dokumentasi

yang diperlukan untuk memulai mengembangkan aplikasi pada platform

Android. Sebagai platform aplikasi-netral, Android memberi kesempatan

untuk membuat aplikasi yang dibutuhkan yang bukan merupakan aplikasi

49

bawaan smartphone. Beberapa fitur penting yang terdapat pada Android

(Safaat, 2012:5) adalah:

1. A

pplication Framework untuk pergantian komponen dan reusable.

2. D

VM dioptimalkan untuk perangkat mobile.

3. I

ntegrated browser berdasarkan engine open source WebKit.

4. G

rafis yang dioptimalkan dan didukung oleh libraries grafis 2D dan 3D

berdasarkan spesifikasi OpenGL 1.0.

5. S

QLite untuk menyimpan data.

6. M

edia Support yang mendukung audio, video, dan gambar (MPEG4,

H.254, MP3, AAC, AMR, JPG, PNG, GIF), GSM Telephony.

7. B

luetooth, EDGE, 3G, dan WiFi.

8. K

amera, GPS, kompas, dan accelerometer.

9. I

ntegrated Development Environment (IDE) yang lengkap dan kaya

50

termasuk perangkat emulator, tools untuk debugging, profil dan

kinerja memori, dan plugin.

2.2.10 Android Development Tools (ADT)

ADT adalah sebuah plugin yang dirancang untuk menyediakan

serangkaian tools yang terintegrasi dengan Eclipse IDE. ADT

menyediakan banyak fitur yang memudahkan pengembangan aplikasi

Android secara cepat. ADT juga menyediakan akses GUI untuk beberapa

command line pada SDK tools sehingga mempercepat prototyping,

designing, dan pembangunan user interface aplikasi.

Berikut ini dijelaskan fitur – fitur penting Eclipse dan ADT

(Android Developer Tools, 2012):

1. P

embuatan, pengembangan, packaging, instalasi, dan debbugging

projek Android yang terintegrasi.

ADT mengintegrasikan banyak development workflow tasks pada

Eclipse, sehingga memudahkan pengembangan yang cepat dan

pengujian untuk aplikasi Android yang dibuat.

2. I

ntegrasi tools SDK

Banyak tools SDK yang terintegrasi pada menu – menu Eclipse ataua

sebagai bagian dari proses background yang dijalankan ADT.

3. B

ahasa pemrograman Java dan XML editors

51

Editor bahasa pemrograman Java mengandung fitur – fitur IDE

seperti syntax checking, auto-completion, dan dokumentasi

framework API Android. XML editor berguna untuk mengubah file

XML Android dalam bentuk graphical layout sehingga hanya perlu

dilakukan drag dan drop.

4. D

okumentasi untuk Framework API Android

Mengakses dokumentasi dengan hovering di atas kelas, metode, atau

variabel.

2.2.11 LibGDX

LibGDX adalah sebuah framework pembangunan game Java yang

menyediakan API terpadu yang bekerja di semua platform yang

mendukung. Framework menyediakan lingkungan untuk rapid

prototyping dan fast iterations. Alih-alih menyebarkan ke Android / iOS /

Javascript setelah setiap perubahan kode, anda dapat menjalankan dan

debug permainan anda pada desktop. Fitur desktop JVM seperti kode

hotswapping mengurangi waktu iterasi anda yang cukup besar (Zechner,

2012).

Proyek LibGDX adalah cross-platform library pengembangan

game yang ditulis dalam Java dengan beberapa kode JNI untuk

pelaksanaan hungry sections. Ringkasan ini menghilangkan perbedaan

antara menulis desktop dan game Android berbasis OpenGL. Aplikasi

52

dapat ber-prototype dan dikembangkan sepenuhnya pada desktop, maka

hanya 6 baris kode yang diperlukan untuk menjalankan aplikasi Anda

pada Android. Mengembangkan lebih efisien menggunakan alat desktop

yang kuat seperti HotSwap, tanpa perlu menunggu aplikasi Anda akan di-

deploy ke sebuah perangkat setiap kali dijalankan (LibGDX, 2012).