BAB 2 LANDASAN TEORI
2.1
Teori Umum 2.1.1
Multimedia Menurut, Vaughan (2011, hal 1), Multimedia adalah gabungangabungan dari teks, gambar, grafis, suara, animasi dan video yang dimanipulasi secara digital. Interactive multimedia merupakan suatu kondisi ketika pengguna dapat melihat dan memiliki kontrol penuh terhadap elemen-elemen multimedia yang ada. Elemen-elemen multimedia tersebut antara lain : a. Teks (Text) Menurut Hofstetter (2001, hal 16-18), menggunakan teks merupakan cara yang efektif untuk mengkomunikasikan ide-ide dan menyediakan instruksi-instruksi untuk user. Jenis teks yang digunakan, antara lain : -
Printed Text Teks yang sudah tercetak pada kertas. Agar printed text dapat dikenali oleh mesin harus terlebih dulu mengubah teks kedalam format yang dapat dibaca oleh mesin. Caranya dengan mengetikkan printed text ke dalam text editor atau word processor, misalnya Microsoft Word, Notepad, dan lain lain.
7
8
-
Electronic Text Merupakan teks yang dapat dibaca oleh komputer dan dapat dikirimkan secara elektronik melalui jaringan.
-
Hypertext Hypertext adalah teks yang memiliki hubungan dengan objek tertentu. Misalnya, ketika melihat sebuah teks yang mempunyai link dan user meng-klik teks tersebut, maka saat itu juga akan diarahkan ke lokasi objek yang disimpan dalam link tersebut.
-
Scanned Text Suatu teks yang tercetak pada kertas (printed text), yang dapat dibaca dan diubah menjadi bentuk yang dapat dibaca oleh mesin.
b. Suara (Sound) Menurut Vaughan (2011, hal 104), suara memberikan kenikmatan ketika mendengarkan musik, aksen yang memberikan efek khusus atau mempengaruhi suasana hati. Suara juga dapat memberikan perbedaan antara presentasi multimedia biasa dengan presentasi professional yang spektakuler. Menurut Hofstetter ( 2001, hal 22-23), ada beberapa jenis suara dengan format file sebagai berikut : -
Waveform Audio Didapat dari hasil perekekaman suara yang kita dengar. Setiap suara mempunyai suatu bentuk gelombang yang
9
mendeskripsikan frekuensi, amplitudo, dan harmoni dari suara. Biasanya mempunyai extension .wav -
File MP3 MP3 adalah format file audio yang menggunakan MPEG audio
codec
(pemampatan)
untuk
melakukan
encode/compress
dan decode / decompress music yang
direkam. MP3 dapat mengkompresi track audio CD menjadi ukuran yang lebih kecil. c. Grafik (Graphics) Menurut Hofstetter (2001, hal 18), suatu gambar lebih memiliki arti dari 1000 kata. Gambar merupakan representasi objek, bisa berupa dua dimensi atau tiga dimensi yang digunakan untuk penyampaian informasi. Gambar dapat berupa icon, gabungan teks, dan mempresentasikan menu yang dapat dipilih. Jenis-jenis Grafik : -
Bitmaps Gambar yang disimpan sebagai satuan set pixel yang sesuai dengan grid titik yang ada pada layar komputer.
-
Vector Images Biasanya disimpan sebagai satu set persamaan matematika yang disebut algoritma yang menentukan kurva, garis, dan bentuk dalam gambar.
10
-
Clip art Merupakan sekumpulan gambar yang disimpan dalam suatu tempat, yang berguna untuk menghemat waktu pada saat membuat aplikasi multimedia, dibandingkan harus membuat gambar sendiri.
-
Digitized Pictures Gambar-gambar yang dapat dikenali oleh komputer (video capture board) yang memberikan kemungkinan untuk menghubungkan video kamera dan sebagainya ke komputer dan mengambil frame secara langsung ke dalam bentuk bitmaps yang dapat digunakan dalam aplikasi multimedia.
-
Hyperpictures Hyperpictures adalah bagian-bagian dari gambar-gambar yang digunakan sebagai pemicu
untuk menggerakkan
event-event pada aplikasi multimedia. d. Animasi (Animation) Menurut Vaughan (2011, hal 140), animasi membuat sebuah presentasi yang sebelumnya statis menjadi kelihatan lebih hidup, karena animasi adalah perubahan visual yang dari waktu ke waktu dan dapat menambah daya besar untuk proyek-proyek multimedia.
11
Menurut Hofstetter (2001,hal 26), animasi merupakan salah satu pengunaan komputer untuk membuat gerakan-gerakan pada layar. -
Frame Animation Frame animation merupakan cara membuat benda bergerak dengan menampilkan serangkaian pra-gambar yang di sebut frame, dimana objek yang ditampilkan berada di lokasi yang berbeda di layar. Rangkaian frame yang
bergerak
melalui
sebuah
proyektor
film
membutuhkan sekitar 24 frame per detik. -
Vector Animation Vector Animation adalah garis yang memiliki posisi awal, arah, dan ukuran. Dapat membuat benda-benda bergerak dengan memvariasikan tiga parameter untuk segmen garis yang mendefinisikan objek.
-
Computational Animation Computational Animation memungkinkan pengguna untuk dapat memindahkan objek di layar hanya dengan memvariasikan koordinat x dan y-nya. Dimana koordinat x menentukan posisi horizontal objek, yaitu seberapa lebar layar, sedangkan koordinat y menentukan posisi vertikal, yaitu seberapa jauh tinggi layar.
12
-
Morphing Morphing merupakan cara untuk mentransisikan satu bentuk ke bentuk yang lain dengan menampilkan serangkaian frame sehingga menciptakan gerakan halus sebagai bentuk pertama untuk mengubah dirinya ke bentuk yang lain.
e. Video Menurut Hofstetter (2001, hal 24), video merupakan salah satu sumber daya yang penting karena dapat membuat suatu aplikasi multimedia menjadi kaya dan hidup. Digital video adalah tipe video yang biasa digunakan sebagai objek dari aplikasi multimedia.
Merupakan media
penyimpanan video yang paling menjanjikan dan menarik, karena dapat disimpan dalam file pada hard disk, CD-ROM, ataupun DVD.
Dapat
disajikan
melalui
jaringan
komputer,
dan
mengurangi kebutuhan untuk rekaman video dan video disc player, dapat di akses secara acak dari frame dan membiarkan pengguna untuk dapat memutar klip tertentu. 2.1.2
Interaksi Manusia dan Komputer (IMK) Menurut Dastbaz (2002, hal 107), Interaksi Manusia dan Komputer merupakan ilmu yang mempelajari perangkat komputer yang merespon tindakan-tindakan manusia yang dimengerti oleh komputer secara kompleks. Proses interaksi itu dipengaruhi oleh kinerja tugas bersama antara manusia dan mesin, struktur komunikasi manusia dan
13
mesin, serta desain mesin yang digunakan untuk sosialisasi maupun sebuah organisasi. Menurut Shneiderman dan Plaisant (2010, hal 32), 5 faktor manusia terukur (Measureable Human Factors) dalam IMK, yaitu : -
Time to Learn Seberapa lama semua pengguna dapat mengerti dan mempelajari bagaimana menggunakan rangkaian perintah yang ada dalam aplikasi tersebut.
-
Speed of performance Seberapa lama waktu untuk dapat menjalankan perintah-perintah sesuai yang diberikan.
-
Rate of Errors by Users Seberapa banyak kesalahan yang dapat dilakukan oleh manusia pada saat menjalankan perintah-perintah sesuai yang diberikan, juga berlaku pada seberapa lama waktu yang digunakan untuk memperbaiki kesalahan tersebut.
-
Retention Over Time Seberapa baik pengguna dapat mengingat pengetahuan mereka, terkait erat dengan waktu untuk mempelajari, dan frekuensi penggunaan dimana hal ini memainkan peranan yang sangat penting.
-
Subjective Satisfaction Seberapa besar pengguna menyukai aspek-aspek yang ada pada antarmuka.
14
Menurut Shneiderman dan Plaisant (2010, hal 88-89), terdapat 8 aturan emas (Eight Golden Rules) yang digunakan dalam perancangan antarmuka pemakai (user-interface), yaitu : a. Berusaha untuk konsisten Konsistensi
harus
diterapkan
dalam
hal
warna,
layout,
penggunaan huruf capital, dan font. b. Menyediakan usability universal Mengenali perbedaan tingkatan pengguna novice dan expert. c. Memberikan umpan balik yang informatif Untuk setiap tindakan pengguna, harus ada umpan balik dari sistem. d. Merancang dialog yang memberikan penutupan / keadaan akhir Umpan balik yang informatif dalam penyelesaian sebuah tindakan akan memberi sebuah kepuasan. e. Memberikan pencegahan kesalahan dan penanganan yang sederhana Sebisa mungkin, rancang sistem agar pengguna tidak akan membuat kesalahan yang serius. Jika pengguna membuat kesalahan, antarmuka harus bisa mendeteksi kesalahan tersebut dan memberikan petunjuk perbaikan yang sederhana, membangun dan spesifik. f. Memungkinkan pembalikan aksi yang mudah Fitur ini memberikan rasa lega pada pengguna, karena mereka tahu kesalahan yang mereka lakukan dapat dikembalikan.
15
g. Mendukung pusat kendali internal (internal locus of control) Pemakai yang berpengalaman biasanya menginginkan dapat menguasai sistem, dan sistem tersebut dapat merespon perintahperintah yang mereka berikan. Jadi pemakai memegang penuh kendali sistem, baik dalam mengambil suatu keputusan maupun dalam mengambil sebuah tindakan. h. Mengurangi beban ingatan jangka pendek Keterbatasan pemrosesan informasi dalam ingatan jangka pendek pada manusia memerlukan tampilan yang sederhana dan tindakan yang berurutan. 2.1.3 Perangkat Lunak Menurut Pressman (2010, hal 3), perangkat lunak memiliki dua macam kegunaan, yaitu sebagai ‘produk’
dan sebagai ‘sarana untuk
menghasilkan produk’. Perangkat lunak yang digunakan sebagai ‘produk’ membantu perangkat keras mewujudkan potensinya untuk melakukan proses komputasi,
serta
untuk
menghasilkan,
mengelola,
memperoleh,
memodifikasi, menampilkan, atau mengirim informasi. Lalu, sebagai ‘sarana untuk menghasilkan produk’, perangkat lunak bertindak sebagai dasar dari pengaturan komputer (misalnya sistem operasi), komunikasi dari informasi (misalnya networks), pembuatan dan pengawasan program lainnya (misalnya software tools dan environment).
16
Menurut Pressman (2010, hal 4-7), perangkat lunak memiliki karakteristik yang berbeda daripada perangkat keras, yaitu sebagai berikut: -
Perangkat lunak dibangun dan dikembangkan, tidak diproduksi (manufactured).
-
Perangkat lunak tidak akan “habis” atau menjadi usang, karena adanya perawatan yang memungkinkan pengembangan lebih lanjut.
-
Kebanyakan perangkat lunak dibuat menurut pemesanan (custom built).
2.1.4
Rekayasa Perangkat Lunak Menurut Pressman (2010, hal 13-15), rekayasa perangkat lunak adalah pembentukan dan penggunaan prinsip-prinsip rekayasa yang teruji untuk memperoleh perangkat lunak yang ekonomis, handal dan bekerja secara efisien pada mesin yang nyata (dikutip dari Fritz Bauer, 1968). Dalam pengembangannya, rekayasa perangkat lunak memiliki lapisan proses sebagai berikut : 1. Lapisan proses (process) : proses rekayasa perangkat lunak diumpamakan seperti sebuah lem yang merekatkan lapisanlapisan teknologi yang lain, serta memungkinkan untuk pengembangan perangkat lunak yang rasional dan tepat. Lapisan proses mendefinisikan sebuah kerangka kerja (framework) yang harus ditetapkan untuk penyampaian yang efektif dari teknologi rekayasa perangkat lunak.
17
2. Lapisan metode (method) : memberikan cara teknis “bagaimana dan tujuan” dalam membuat perangkat lunak. Yang didalamnya termasuk
komunikasi,
analisis
kebutuhan,
perancangan,
pembangunan program, pengujian, dan dukungan (support). 3. Lapisan alat bantu (tools) : lapisan alat bantu yang menyediakan dukungan untuk pelaksanaan lapisan proses dan metode.
Gambar 2.1 Lapisan Rekayasa Perangkat Lunak (Pressman, 2010, hal 14) Waterfall Model menyarankan pendekatan yang sistematik dan sekuensial dalam pengembangan perangkat lunak yang dimulai dari spesifikasi kebutuhan pelanggan dan dilanjutkan dengan perencanaan (planning), pemodelan (modelling), konstruksi (construction), dan pemeliharaan (deployment). Kerangka kerja umum untuk proses rekayasa perangkat lunak meliputi lima kegiatan, yaitu : 1) Komunikasi : sebelum pekerjaan teknis dapat dimulai, sangatlah penting untuk berkomunikasi dan berkolaborasi dengan pelanggan
18
dan stakeholders lainnya. Dengan maksud untuk mengerti tujuan stakeholders untuk proyek dan untuk mengumpulkan apa saja yang dibutuhkan untuk membantu memperjelas fitur-fitur perangkat lunak dan fungsinya. 2) Perencanaan : pengerjaan sebuah proyek perangkat lunak sangatlah kompleks, pada tahap perencanaan ini
dihasilkan
“peta” untuk membantu mengarahkan tim dalam mengerjakan proyek tersebut. “Peta” itu disebut software project plan, yang menjelaskan bagaimana rekayasa perangkat lunak bekerja dengan menggambarkan tugas-tugas teknis yang harus dilakukan, resiko yang mungkin terjadi, sumber daya yang akan dibutuhkan, dan jadwal kerja. 3) Pemodelan : software engineer membuat model agar dapat mengerti persyaratan perangkat lunak yang dibutuhkan dan desain yang memenuhi persyaratan. 4) Pembangunan : program yang sudah di desain diterjemahkan ke dalam bahasa pemrograman yang sudah ditentukan dan pengujian dilakukann untuk mengungkap kesalahan dalam kode. 5) Penyebaran : perangkat lunak dikirim ke pelanggan, yang nantinya akan mengevaluasi produk dan memberikan umpan balik berdasarkan evaluasi.
19 Com m unic a t ion proje c t init ia t ion re quire m e nt ga t he ring
Planning estimating scheduling tracking
Mode ling analysis design
Const r uc t ion code t est
De ploy m e nt de liv e ry s upport f e e dba c k
Gambar 2.2 Waterfall Model (Pressman, 2010, hal 39)
2.1.5
Unified Modeling Language (UML) Menurut Whitten, Bentley (2007, hal 371), Unified Modeling Language adalah suatu kumpulan dari konvensi pemodelan yang digunakan untuk menentukan atau menggambarkan sebuah sistem software dalam peristilahan (terminologi) objek . a. Use Case Diagram Menurut
Whitten, Bentley (2007, hal 246), Use Case
Diagram menggambarkan sistem sebagai kumpulan dari use-case, aktor (user), dan hubungan antar keduanya. Use case diagram menampilkan setiap fungsi dari sistem yang ada, seperti kegiatan bisnis dalam bentuk elips, aktor, dan pengguna sistem yang berinteraksi dengan fungsi tersebut. -
Use-Case Use-case adalah serangkaian langkah-langkah atau perilaku yang saling berhubungan, baik otomatis atau manual, dengan tujuan untuk menyelesaikan suatu kegiatan bisnis tunggal. Use case menggambarkan fungsi sistem dari sudut pandang pengguna eksternal dalam
20
sebuah cara dan peristilahan (terminologi) yang mereka pahami. Use-case direpresentasikan secara grafik dengan elips mendatar dengan nama dari use-case yang muncul di atas, bawah, atau di dalam elips. Sebuah use-case mewakili satu tujuan dari sistem dan menggambarkan serangkaian aktifitas dan interaksi pengguna dalam menyelesaikan tujuannya.
Gambar 2.3 Contoh Model Diagram Use-Case (Whitten, Bentley, 2007, hal 246)
-
Pelaku (Actor) Pelaku adalah segala sesuatu yang dibutuhkan untuk berinteraksi dengan sistem untuk bertukar informasi. Use-case dimulai atau dipicu oleh pengguna eksternal,
21
yaitu actor. Actor memulai kegiatan sistem dalam sebuah use-case, untuk tujuan menyelesaikan beberapa tugas bisnis, yang menghasilkan sesuatu yang memiliki nilai ukur. Seorang actor mewakilkan suatu peran yang dipenuhi dengan user yang berinteraksi dengan sistem dan tidak dimaksudkan untuk menggambarkan satu individu atau jabatan. Actor digambarkan secara grafis sebagai stick figure yang diberi label nama peran yang dimainkan oleh actor itu. -
Hubungan (Relationship) Hubungan digambarkan sebagai garis yang saling menghubungkan antar dua simbol. Arti dari hubungan tersebut berbeda-beda tergantung dari bagaimana garis tersebut
digambarkan
dan
tipe
simbol
apa
yang
dihubungkan. Berikut ini penjelasan dari hubunganhubungan yang dapat ditemukan pada sebuah use-case diagram : •
Associations : hubungan antara pelaku dengan usecase dimana interaksi terjadi diantara keduanya.
22
Gambar 2.4 Contoh Hubungan Asosiasi (Whitten, Bentley 2007, hal 248) •
Extends : Hubungan antara extensions use-case dan use-case
yang
diperluas
disebut
extends
relationship. Extension use-case adalah use-case yang terdiri dari langkah yang diekstrasi dari use case yang lebih kompleks untuk menyederhanakan masalah dari use-case
itu dan memperluas
fungsinya.
Gambar 2.5 Contoh Hubungan Extends (Whitten, Bentley, 2007, hal 249)
23
•
Uses atau Includes : Merupakan sebuah use-case yang mengurangi redundansi antara dua atau lebih use-case
lainnya
dengan
mengkombinasikan
langkah yang sama yang ditemukan dalam usecase tersebut.
Gambar 2.6 Contoh Hubungan Uses (Whitten,Bentley, 2007, hal 249) •
Depends on : sebuah relasi diantara use-case yang menunjukan kalau satu use-case tidak bisa dilakukan hingga use-case lainnya telah dilakukan.
Gambar 2.7 Contoh Hubungan Depends On (Whitten, Bentley, 2007, hal 250)
24
•
Inheritance : aktor-aktor lain dapat mewarisi interaksi dari aktor abstrak yang baru untuk mengurangi komunikasi redundan dengan sistem. Inheritance relationship digambarkan dengan garis tipe panah.
Gambar 2.8 Contoh Hubungan Asosiasi (Whitten, Bentley, 2007, hal 250)
Use-Case Narrative Menurut Whitten, Bentley (2007, hal 256), sangatlah baik untuk mendokumentasikan narratives secara high-level agar cepat mendapatkan pengertian dari suatu event dari sistem. Gambar 2.9 mewakilkan apa saja yang terdapat dalam use-case narrative untuk Member Services System’s Place New Order use case.
25
Gambar 2.9 Versi Pengembangan dari Place New Order Use-Case Narratives (Whitten, Bentley, 2007, hal 259-260)
26
Berikut penjelasan dari Gambar 2.9 : 1. Use-case
name
:
nama
use-case
yang
merepresentasikan tujuan dari use-case. 2. Primary
business
actor
:
stakeholder
yang
mendapatkan keuntungan dari pengeksekusian usecase. 3. Preconditon : keadaan dari sistem sebelum use-case dapat dijalankan. 4. Typical course of events : urutan normal dari aktivitas yang dijalankan dari pelaku dan sistem untuk menyelesaikan
use-case
serta
terdapat
interaksi
diantara keduanya. 5. Alternate courses : jalan alternatif dari kegiatan usecase diluar aktivitas biasanya. 6. Postcondition : keadaan sistem setelah use-case selesai dijalankan. b. Class Diagram Menurut Whitten, Bentley ( 2007, hal 400), Class diagram adalah gambar grafis mengenai struktur obyek statis dari suatu sistem, menunjukan kelas-kelas obyek yang menyusun sebuah sistem dan juga hubungan antara kelas obyek tersebut. Terdiri dari elemen sebagai berikut, yaitu nama kelas, atribut (ciri khas dan pembeda dengan objek lainnya), dan perilaku/metode(aksi yang dapat dilakukan oleh objek).
27
Cara bagaimana atribut dan metode diaskses oleh kelas lain didefinisikan dengan visibility. UML menyediakan tiga tingkat dari visibility : 1. Public – ditandai dengan simbol “+” 2. Protected – ditandai dengan simbol “#” 3. Private – ditandai dengan simbol “-”
Gambar 2.10 Class Diagram (Whitten, Bentley 2007, hal 374)
Class diagram digunakan untuk menggambarkan obyek dan hubungan diantaranya. Pada diagram akan terdapat hubungan sebagai
berikut,
yaitu
hubungan
multiplicity,
hubungan
generalisasi/spesialisasi, dan hubungan agregasi. Berikut langkah yang dilakukan dalam membuat class diagram : 1. Mengidentifikasi hubungan (asosiasi) dan multiplicity : pada langkah ini, dilakukan identifikasi hubungan yang ada di antara obyek dan kelompok serta ditambahkan
28
multiplicity untuk memperjelas hubungan antar objek tersebut. 2. Mengidentifikasi setelah
hubungan
mengidentifikasi
multiplicity,
harus
generalisasi/spesialisasi hubungan
(asosiasi)
ditentukan
:
dan
hubungan
generalisasi/spesialisasi-nya. Hubungan
generalisasi/spesialisasi
adalah
sebuah
hubungan yang terdiri dari supertype class (abstrak atau induk) dan subtype class (anak atau konkret). Supertype class biasanya umum karena di dalamnya terdiri dari atribut umum dan behavior. Subtype class biasanya khusus, di dalamnya berisi atribut dan behavior unik dari sebuah objek tetapi dia mewarisi atribut dan behavior dari supertype class. 3. Mengidentifikasi hubungan agregasi : pada langkah ini ditentukan apakah ada hubungan agregasi atau komposisi dasar. Agregasi adalah hubungan unik dimana satu objek adalah bagian dari objek lain. Misalnya ada dua objek A dan B, objek B terdapat di dalam A, tetapi jika objek A hilang,
objek
B
tetap
ada.
Hubungan
ini
tidak
mengimplikasikan pewarisan, dalam hal ini objek B tidak mewarisi behavior
atau atribut objek A. Contohnya
seperti objek ruang kelas yang di dalamnya terdapat objek meja dan kursi, tetapi meja dan kursi tetap ada bila tidak
29
ada
ruang
kelas.
Sedangkan
hubungan
komposisi
sebaliknya, objek B akan hilang bila objek A hilang, misalnya pada objek kampus terdapat objek mata kuliah, mata kuliah akan hilang apabila kampus tersebut tidak ada. 4. Menyiapkan class diagram : model ini merefleksikan hubungan objek/kelas dan multiplicity yang diidentifikasi pada langkah 1, hubungan generalisasi/spesialisasi yang ditemukan pada langkah 2, dan hubungan agregasi yang ditemukan pada langkah 3.
Gambar 2.11 Objek Asosiasi Kelas dan Multiplicity (Whitten, Bentley 2007, hal 377)
30
c.
Sequence Diagram Menurut Whitten, Bentley (2007, hal 659), Sequence Diagram merupakan diagram UML yang memodelkan logika dari use-case dengan menggambarkan cara objek berinteraksi dengan pesan-pesan
dalam
suatu
rangkaian
waktu.
Mereka
menggambarkan bagaimana pesan-pesan dikirim dan diterima diantara objek-objek tersebut dan dalam urutan seperti apa.
Gambar 2.12 Contoh Model Sequence Diagram (Whitten, Bentley, 2007, hal 659)
Gambar 2.13 mengillustasikan contoh sequence diagram beserta beberapa catatan, yaitu: 1. Actor : actor berinteraksi dengan user interface ditunjukan dengan simbol actor.
31
2. Interface class : kotak yang menunjukan kode class dari user interface. Tanda titik dua (:) merupakan notasi standar sequence diagram untuk menunjukan “instance” dari class. Untuk menghindari kebingungan tentang jenis class
apakah
ini,
maka
diberikan
catatan
berupa
<
> 3. Controller class : setiap use-case akan memiliki satu atau lebih controller class yang digambarkan dengan notasi yang sama sesuai dengan interface class dan dicatat dengan <> 4. Entitiy class : tambahkan kotak untuk setiap entitas yang perlu berkolaborasi di setiap rangkaian langkah. Tanda titik dua (:) menandakan sebuah object instance. 5. Messages : tanda panah mendatar menunjukan pesan yang dikirim ke class. Setiap pesan memanggil behavior dari class yang ditunjuk. Ketentuan penulisan dari pesan dimulai dengan huruf pertama menggunakan lowercase dan kata selanjutnya dimulai dengan uppercase serta tanpa menggunakan spasi. 6. Activation bars : bar
yang ditetapkan atas lifeline
menunjukan periode waktu dimana setiap object instance ada, dan mengindikasikan lifetime objek pada RAM. 7. Return message : tanda panah mendatar dan putus-putus, setiap behavior harus mengembalikan sesuatu, paling tidak
32
pesan true/false yang menunjukan apakah behavior tersebut berhasil. 8. Self-call : sebuah objek yang dapat memanggil methodnya sendiri. 9. Frame : berupa kotak yang dapat digunakan untuk menyertakan satu atau lebih pesan untuk membagi sequence. 2.1.6
Database Menurut Conolly dan Begg (2010, hal 65), database merupakan sekumpulan data yang secara logika saling berhubungan beserta deskripsinya, didesain untuk memenuhi informasi yang diperlukan oleh suatu organisasi. Database adalah tempat penyimpanan data tunggal, memungkinkan untuk berukuran besar, dan digunakan secara bersamaan oleh banyak departemen dan pengguna. Database tidak lagi hanya dimiliki oleh satu departemen namun juga merupakan sumber data bersama. Database tidak hanya memegang data dari suatu organisasi, namun juga memiliki deskripsi dari data itu sendiri. Informasi yang dimiliki suatu organisasi, harus memperkenalkan entity, attribute, dan relationship. Entity adalah objek yang jelas (orang, tempat, benda, konsep, atau event) dalam suatu organisasi yang disajikan dalam database. Attribute adalah properti yang menjelaskan objek yang ingin disimpan, dan relationship adalah hubungan antara entity.
33
Database menyajikan entity, attribute, dan logical relationship (hubungan logikal) antara entity. Dengan kata lain, database memiliki data yang berhubungan secara logikal. DBMS adalah sistem software yang memungkinkan pengguna untuk mendefinisikan, membuat, merawat, dan mengatur akses ke database. DBMS menyediakan fasilitas berikut: a. DDL (Data Definition Language) DDL mengizinkan pengguna untuk menentukan tipe data dan struktur serta batasan dari data untuk disimpan ke dalam database. b. DML (Data Manipulation Language) Merupakan kumpulan perintah yang mengizinkan pengguna untuk memasukan, merubah, menghapus, dan mengambil kembali data dari database.
2.2
Teori Khusus 2.2.1
Flash & Actionscript 3.0 Menurut Vaughan (2011, hal 230) flash terfokus pada isi web yang
mempunyai
unsur
yang
kaya
akan
multimedia.
Dengan
menggunakan flash player plug-in, flash memberikan lebih dari sekedar halaman HTML statis sederhana. Menurut
Grossman
dan
sHuang
(2006,
http://www.adobe.com/devnet/actionscript/articles/actionscript3_overvie w.html), Actionscript 3.0 adalah bahasa pemrograman yang berorientasi objek, yang menandakan langkah penting dalam evolusi kemampuan
34
flash player. Motivasi penggunaan Actionscript 3.0 adalah untuk membuat bahasa yang secara ideal cocok untuk membangun aplikasi internet dengan cepat. Actionscript 3.0 didesain dengan tujuan berikut: -
Safety: mendukung keamanan developer sehingga dapat menulis code yang jelas dan mudah dipelihara.
-
Simplicity: memudahkan developer untuk membaca atau menulis program tanpa mencari keterangan dari reference manual secara terus menerus.
-
Performance: memungkinkan developer untuk menulis program kompleks yang mempunyai performa yang efisien dan responsif.
-
Compatibility: menyediakan kecocokan dan sesuai dengan standar industri.
2.2.2
Augmented Reality Menurut Maad (2010, hal 3), Augmented Reality adalah sistem yang menampilkan dunia nyata bersama dengan objek virtual komputer, yang terlihat berdampingan dalam ruang yang sama dan memiliki sifatsifat berikut: ‐
Menggabungkan objek virtual dan objek nyata dalam dunia nyata
‐
Bersifat interaktif secara real time
‐
AR menyatukan objek nyata dan virtual
‐
Diterapkan untuk semua indra pengguna Selain itu, AR memperkaya dunia nyata dengan informasi virtual.
Hal ini membuat pengguna dapat menggunakan objek atau berkolaborasi
35
dengan orang lain di dunia nyata ketika dia secara bersamaan memperlihatkan dan berinteraksi dengan informasi virtual. Pada akhirnya, AR menampilkan dunia yang lebih alami dan luas untuk mengatur informasi yang akan digambarkan, dibandingkan dengan aplikasi desktop biasa. AR menyajikan solusi alternatif untuk tantangan sekarang, yaitu mengenai tampilan dari berbagai koordinat yang ditanamkan untuk penggambaran informasi. Menurut Hohl (2009, hal 20), sistem AR memerlukan syarat secara metodikal dan teknologikal. Tujuan metodikal dari penggunaan sistem AR adalah menyediakan dukungan yang cost-efficient dan luas sepanjang tahap perencanaan (desain arsitektural dan perencanaan utama, persiapan dalam dokumen pembangunan, perawatan dan pelayanan. Secara metodikal sistem AR yang sukses harus cocok dengan berbagai pengaturan dan menggunakan perangkat lunak standar atau paling tidak standar interface. Ada tiga syarat teknikal paling penting yaitu: Flexible, modular, in particular, mobile hardware, berjalan dengan run-time yang baik dan sistem performa yang baik, dan integrasi teknologikal ke planning tools yang baik. Menurut
Maad (2010, hal 59-60),
ketika user berinteraksi
dengan sistem AR dengan menggunakan marker di dunia nyata, marker ini akan dilacak oleh sistem lalu menempatkan grafik komputer dengan acuan dari posisi marker itu sendiri. User dapat menggerakkan objek virtual yang berpadu dengan dunia nyata hanya dengan manipulasi dari
36
marker. Pergerakan dari kamera atau pergerakan marker akan memungkinkan user untuk melakukan perbesaran atau perkecilan, atau menentukan posisi yg tepat dari sudut pandang user. 2.2.3 FLARToolkit Menurut
Koyama
(n.d,
http://www.libspark.org/wiki/
saqoosha/FLARToolKit/en), FLARToolkit adalah aplikasi non komersial di bawah lisensi GPL. Aplikasi ini merupakan versi ActionScript 3 dari ARToolkit. Sebenarnya, FLARToolkit dibuat berdasarkan NyARToolkit, versi Java dari ARToolkit. FLARToolkit mengenal marker dari gambar input, dan menghitung orientasi dan posisinya di dunia tiga dimensi. FLARToolkit membutuhkan 3D Engine untuk flash, bisa berupa: Papervision3D, Away3D, Sandy, atau Alternativa3D. 2.2.4
Papervision3D Menurut Ulloa (2006, http://blog.papervision3d.org/page/23/), Papervision3D adalah 3D engine untuk flash dengan performa yang tinggi. Papervision3D memiliki fitur-fitur seperti linear texture mapping, rendering dengan kecepatan dan kualitas yang dioptimalisasi, dan juga didesain agar terlihat sederhana dan mudah digunakan. Papervision3D dirilis dibawah MIT Open Source license, yang berarti penggunaannya gratis untuk seluruh keperluan komersil.
2.2.5
COLLADA (.dae 3D File Format) Menurut anonym (n.d, http://www.khronos.org/), COLLADA
TM
mendefinisikan sebuah skema berbasis XML untuk membuatnya mudah untuk mengangkut aset 3D antara aplikasi, yang memungkinkan
37
bermacam-macam
alat-alat
pemrosesan
pembuatan
dan
isi
3D,
digabungkan ke alur pipa produksi. Bahasa menengah ini menyediakan pengkodean adegan visual yang komprehensif meliputi: geometri, shaders dan effects, fisika, animasi, kinematika, dan bahkan beberapa versi representasi asset yang sama. Menurut
Barnes
dan
Finch
www.khronos.org/files/collada_spec_1_4.pdf),
(2008,
http://
dokumen
yang
menggunakan skema COLLADA, yang berisi elemen XML, yang valid menurut skema COLLADA, disebut COLLADA instance document. Extensi dari file berbasis dokumen ini adalah .dae (Digital Asset Exchange) 2.2.6
PHP Menurut Welling dan Thomson (2009, hal 2-3), PHP adalah bahasa server-side scripting yang
didesain secara spesifik untuk web.
Di dalam halaman HTML, kode PHP dapat di-embed yang nantinya akan dieksekusi setiap waktu halaman web tersebut dikunjungi. Kode PHP diterjemahkan di web server dan mengolah HTML atau output lain yang pengunjung telah masukkan input sebelumnya. PHP adalah produk Open Source, yang berarti source code-nya dapat diakses dan digunakan, diubah, dan didistribusi kembali tanpa perlu
membayar.
PHP
awalnya singkatan dari Personal Home Page tetapi diubah menjadi PHP Hypertext
Preprocessor.
38
2.2.7 MySQL Menurut Welling dan Thomson (2009, hal 4), MySQL (dilafalkan My-Ess-Que-Ell) adalah relational database management system (RDBMS) yang sangat cepat dan bagus. Database memungkinkan data disimpan, dicari, disortir, dan diambil secara efisien. MySQL server mengatur akses ke data untuk memastikan banyak pengguna dapat bekerja dengan data tersebut secara bersamaan, untuk menyediakan akses data yang cepat, dan memastikan hanya orang yang memiliki ijin yang bisa mengaksesnya. Karena itu, MySQL adalah server yang bisa digunakan banyak pengguna dan banyak proses.