BAB 3 ANALISIS DAN PERANCANGAN
Perancangan program aplikasi dalam skripsi ini menggunakan aturan waterfall. Metode
ini
terdiri
dari
lima
tahapan
yaitu,
analisis,
perancangan,
pengkodean/pembuatan, percobaan/implementasi dan perawatan. Tahap analisis, perancangan dan pembuatan akan dibahas dalam Bab 3 ini, sedangkan tahap percobaan atau implementasi akan dilanjutkan di Bab 4. Perawatan tidak dibahas dalam makalah ini karena akan berjalan secara berkala selama program digunakan.
3.1
Analisis Sistem yang Sedang Berjalan
3.1.1 Sejarah Umum Perusahaan PT Visi Teknologi Indonesia adalah perusahaan swasta nasional, yang bergerak di bidang penyediaan jasa multimedia dan teknologi baik dalam bentuk multimedia content, interactive games dan supplies. Kantor PT. Visi Teknologi Indonesia beralamat di Jalan Lapangan Bola No. 1D Kebon Jeruk, Jakarta Barat, 11530. PT. Visi Teknologi Indonesia pertama didirikan pada bulan Januari 2004 dengan bidang usaha dalam media iklan dalam ruang dengan nama product On Screen Advertisement System (OSA System). OSA system merupakan Digital Signboard dengan menggunakan plasma TV sebagai media iklan. Pada bulan April 2004. PT. Visi Teknologi Indonesia menjalin kontrak eksklusif dengan PT. Hero Supermarket Tbk untuk mengimplementasikan OSA system di Giant Hypermarket, sebagai Pilot Project pemasangan pertama kali adalah Giant Mega Bekasi.
43
44
Pada Maret 2006, PT. Visi Teknologi Indonesia melakukan kerjasama dengan Gesturetek yang merupakan pioneer dalam pengembangan game-game interaktif berbasis Gesture tubuh manusia, untuk memasarkan dan mempromosikan produkproduk Gesturetek di Indonesia. Produk-produk Gesturetek yang ada saat ini yaitu : GroundFX, Gestpoint, GestXtreme, ScreenXtreme dan Airpoint Sytem. Kemudian pada Juli 2009,PT Visi Teknologi Indonesia melakukan interaksi dengan hardware baru yakni multitouch, akan tetapi karena keterbatasan SDK yang ada maka pengembangan multitouch tidak cukup berkembang hingga tahun 2010 ini.
3.1.2 Gambaran Umum Perusahaan PT. Visi Teknologi yang bergerak dalam bidang jasa memiliki visi dan misi, visi dari PT. Visi Teknologi Indonesia yaitu memberikan pelayanan terbaik dengan teknologi yang handal dan interaktif guna mewujudkan citra terbaik dan struktur usaha yang kokoh dan handal melalui kerja sama jaringan mitra usaha yang terpercaya. Sedangkan untuk misi dari PT. Visi Teknologi Indonesia yaitu a. Membangun sistem berbasis teknologi mutakhir. b. Menyediakan jasa dengan pelayanan terbaik dan teknologi terdepan. c. Menciptakan keuntungan d. Mewujudkan kesejahteraan para pengelola, mitra usaha dan masyarakat
45
Struktur organisasi dalam PT. Visi Teknologi Indonesia dapat dilihat pada Gambar 3.1 yang ada di bawah ini
Gambar 3.1 Struktur Organisasi PT. Visi Teknologi Indonesia
46
Deskripsi tugas dari masing-masing bagian di dalam PT. Visi Teknologi Indonesia : 1) Direktur Operasional Direktur operasional bertempat di kantor dari PT. Visi Teknologi Indonesia. Tugas utama dari direktur operasional adalah memberikan visi, kepemimpinan, misi, tujuan dan sasaran yang ingin dicapai perusahaan. Selain itu direktur operasional bertugas untuk mengawasi operasional dari PT. Visi Teknologi Indonesia. 2) Manager Operasional Tugas utama dari manager operasional adalah memastikan system perusahaan dan setiap bagian dari Visi Teknologi Indonesia berjalan dengan baik menuju dengan visi perusahaan. Manager operasional bertindak lebih ke arah ke bawah, sehingga setiap bagian dapat leluasa untuk melaporkan dan menangani masalah yang terjadi. Manager operasional bertanggung jawab dengan direktur operasional. 3) Bagian Keuangan Bagian keuangan bertugas mengatur data keuangan perusahaan balik aliran dana masuk maupun keluar. Bagian keuangan juga mengatur aliran dana baik dalam kas kecil ataupun kas besar. Selain itu, bagian keuangan juga bertanggung jawab atas aliran dana dari Bank. Bagian keuangan memiliki subdivisi akuntan yang memproses semua data keuangan. 4) Bagian Pemasaran Bagian pemasaran dibagi menjadi dua sub divisi yaitu manajer marketing dan staf marketing. Tugas dari manajer marketing adalah mendiskusikan projek yang ada dengan bagian administrasi di mana projek yang baru akan berjalan ditangani semua oleh manajer marketing terutama dengan klien penting. Untuk staf marketing
47
melakukan cek penyelesaian projek dan finishing projek untuk dibicarakan dengan bagian admin sebelum menuju ke lapangan. 5) Bagian Administrasi Bagian administrasi mengatur segala persoalan yang ada sebelum projek ataupun sesudah projek. Bagian administrasi dibagi menjadi 4 sub divisi yaitu bagian peralatan atau teknisi di mana bagian ini bertugas mengatur semua hal yang berhubungan dengan perlengkapan teknis dan perlengkapan elektronik yang umum. Bagian selanjutnya adalah bagian gudang yang bertugas mengatur dan mendata barang yang keluar atau masuk baik peralatan kecil atau peralatan berat. Bagian hardware bertugas seperti bagian peralatan, yang membedakan adalah bagian ini mengatur tentang peralatan yang berhubungan dengan software dan tergolong peralatan berat seperti touch screen, projector, lcd dan multitouch table. Bagian ini bekerjasama dengan bagian software di mana bagian software membuat aplikasi yang berkaitan dengan hardware yang ada.
3.1.3 Masalah yang Dihadapi Perusahaan Sehubungan dengan tugas dari PT. Visi Teknologi Indonesia adalah untuk menyediakan jasa teknologi baik hardware maupun software khususnya untuk multimedia
seperti
presentasi,
sehingga
sebuah
tantangan
untuk
perusahaan
menyediakan suatu aplikasi yang bisa berguna untuk membantu presentasi perlu diciptakan. Sebelumnya aplikasi yang dipakai adalah virtual keyboard di mana aplikasi ini terkadang dirasa cukup dikenal. Oleh karena itu sekarang PT. Visi Teknologi Indonesia
48
membutuhkan suatu aplikasi yang baru dan cocok untuk membantu memudahkan presentasi. Masalah yang dihadapi oleh PT. Visi Teknologi Indonesia adalah tidak adanya materi aplikasi yang bisa menggantikan dan keterbatasan resource sebab teknologi multitouch ini masih baru dan belum banyak yang menguasai. Sehingga PT. Visi Teknologi Indonesia kesulitan dalam menemukan pengganti keyboard.
3.1.4 Usulan Pemecahan Masalah Melihat permasalahan yang dihadapi oleh PT. Visi Teknologi Indonesia sekarang ini maka penulis mengusulkan pemecahan masalah dengan merancang program aplikasi yang dapat mengenali gerakan tangan pada layar multitouch sehingga user bisa seolaholah menulis pada layar tersebut.. Untuk itu, penulis menggunakan metode pattern recognize di mana inputan yang masuk akan diproses dengan metode Douglas-Peucker untuk melakukan pendekatan inputan dan dengan bantuan metode poligonal penulis bisa mengenali bentuk yang dimasukkan sebagai input. Kemudian dilakukan pengenalan dengan contour moments sehingga alat bisa mengetahui apa yang membedakan bentuk itu. Alasan kenapa menggunakan metode Douglas-Peucker adalah karena metode ini cukup banyak digunakan sebagai peminimalan kurva yang pada kasus ini berupa titik dari inputan dan metode ini metode yang efisien sampai sekarang. Untuk penggunaan metode poligonal adalah demi kejelasan dari bentuk yang ingin dikenali agar nantinya tidak menjadi rancu dengan bentuk yang lain. Metode poligonal ini nantinya akan didukung dengan beberapa metode lain dalam prosesnya.
49
3.2
Perancangan Program Aplikasi Untuk merancang program aplikasi pengenalan gerakan (gesture) pada
multitouch penulis menggunakan bahasa C# pada Windows Operating System karena berbentuk Desktop application. Untuk data yang digunakan, penulis menggunakan data pola abjad dan data pattern suatu garis dari openCV sehingga program aplikasi yang dibentuk dapat dengan mudah mengolah data yang diinput pada layar multitouch. Output dari program aplikasi ini adalah handwriting application yang bisa berfungsi sebagai pengganti keyboard dengan cukup menulis seperti menulis tangan.
3.2.1 Gambaran Umum Perancangan Perancangan program aplikasi pengenalan gerakan pada multitouch secara garis besar dibagi menjadi beberapa tahap : 1. Pengkoneksian antara hardware dan software melalui TUIO socket 2. Penentuan titik input pada layar dan peminimalan titik input dengan metode Douglas-Peucker 3. Perancangan pola pengenalan bentuk berupa garis 4. Perancangan pengenalan bentuk abjad melalui bentuk garis
50
3.2.2
Aplikasi TUIO connection Hardware yang digunakan adalah multitouch di mana membutuhkan koneksi
antara hardware dan software. Untuk itu digunakan TUIO socket yang bagannya bisa dilihat seperti pada Gambar 3.2 di bawah ini.
Gambar 3.2 Rancangan Kerja TUIO
TUIO (Tabel-Top User Interface Objects) adalah sebuah protokol sederhana namun serbaguna yang dirancang khusus untuk memenuhi kebutuhan yang nyata atas meja user interface. Terinspirasi oleh gagasan yang saling berhubungan berbagai permukaan interface interaktif yang ada seperti reacTable atau AudioTouch. TUIO
51
protokol yang telah dilaksanakan menggunakan OpenSound Pengendalian dan karena itu dapat digunakan pada platform apapun yang mendukung protokol ini. Langkah pertama penjelasan dari bagan di atas adalah data TUIO (OSC) dikirim melalui simulator atau Touchlib, kemudian FLOSC gateway mengubah data OSC (UDP) menjadi bentuk XML (TCP) kemudian client C# menerima data memakai XMLsocket dan menguraikannya agar menjadi bentuk seperti yang diaplikasikan.
3.2.3 Penentuan dan Peminimalan Input dengan metode Douglas-Peucker Pada perancangan program aplikasi sebelumnya dijelaskan koneksi antara hardware dan software, sekarang yang menjadi masalah adalah penentuan input dan peminimalan input. Input yang terdeteksi ke dalam multitouch lebih dikenal dengan sebutan bloob. Bloob terbentuk dari sentuhan permukaan sensor dengan jari atau objek. Pada gesture bloob yang terdeteksi berupa garis di mana sebenarnya garis-garis ini berupa titik-titik yang terhubung.Titik input yang didapat jumlahnya banyak dan itu membuat memori aplikasi menjadi berat oleh karena itu digunakan metode DouglasPeucker untuk meminimalkan titik tersebut. Hal pertama yang perlu dilakukan adalah mendiskripsikan algortima pendekatan dari dua titik. Ide utamanya adalah menentukan nilai dominan antara dua titik tersebut di mana nilai maksimum kurva disimpan. Di mana nilai maksimum itu dicapai dengan rumusan seperti di bawah ini k=
′ "
" " /
Dalam kasus khusus yang berbeda, rumus yang dipakai berbeda, dengan kurva bersudut tajam, yaitu
52
ci (1))= Kasu us lainnya yaitu y pada kurva k dengann gradien saama tetapi sudut s yang tajam t c contoh seperrti pada kasuus lingkaran
Di mana m L Langkah selanjutnya adaalah menentuukan nilai inndek hi seperrti cim < cim – 1 <..< cihi >cihi – 1 nilai dari Cihi beerdasarkan pada p nilai pooin kurva kee i, di mana nilainya berrubah d dari -1 (gariis lurus) ke 1 (sudut tajaam).
3 3.2.4
Pera ancangan Poola Pengenaalan Garis Hal pertama yanng dilakukaan dalam peengenalan bentuk adalaah mendifiniisikan
p pola dari garis yangg sudah diiminimalkann menjadi pola-pola khusus. Coontoh p pembentuka an pola khusuus untuk kassus ini dapat dilihat padaa Gambar 3.33 seperti berrikut
Gam mbar 3.3 Poola Garis
Setiaap pola yangg terbentuk menjadi dassar dari suattu bentuk (sshape) yang akan d dibentuk meelalui gesturre. Langkah selanjutnyaa adalah mennghitung pergerakan gaaris di m mana pergerrakannya dappat dihitung dengan rum mus berikut
53
…(3.1) If p = q = 0, maka bisa mendapatkan area α dari R di mana jika hal tersebut dinormalisasi maka menghasilkan gerakan normal yang dapat diuraikan seperti berikut. …(3.2) Di mana bila α00 = 1. Untuk p+q ≥ 2 pusat gerakan normal akan menjadi μ
…(3.3)
Lalu dengan memakai metode Green’s yang seperti di bawah ini.
Di mana b adalah nilai batas dari daerah R, dan mengikuti dari (3.1) maka akan menjadi .
,
0
Sehingga, ,
0,
,
1/
1 .
Momen dari (3.1) menjadi bisa dihitung dan hasilnya akan menjadi seperti, 1/
1
.
…(3.4)
Jika border dari batas b mengandung nilai n, pi = (xi, yi), 0 ≤ i ≤ n, p0 = pn akan mengikuti pola
Di mana bi(t), t [0,1] didefinisikan sebagai
54
1 Sehingga (3.4) dapat dijabarkan menjadi ∑
1/
1
.
…(3.5)
Setelah perhitungan anomalisasi dilakukan maka (3.5) akan menjadi
Lalu dengan anomalisasi terpusat dan anomalisasi terhadap moment hingga ordo 3 maka didapat seperti berikut 1 2 1 6 1 6 1 12 1 24 1 12 1 20
2
2
55
1 60
3
2
3
2
3 1 60 3 1 20
2
3
2
2
2
2
2
3
Maka setelah perhitungan selesai momen dari inputan dan garis berikut arah dari garis akan tersimpan ke dalam sistem dan menjadi dasar acuan dalam pembentukan abjad.
3.2.5 Perancangan Pola Pengenalan Bentuk Dalam pengenalan bentuk yang menjadi dasar adalah rancangan sebelumnya yaitu pola pengenalan garis, bentuk abjad yang ada jika dilihat sebenarnya bisa berupa pola-pola garis yang banyak dan menjadi satu, seperti contoh abjad Z, abjad Z sebenarnya diklasifikasikan sebagai pola garis (c-g-c) seperti dalam Gambar 3.2. Pola
56
garis yang ada dimodulkan sehingga menjadi bentuk abjad, berikut listing bentuk dari abjad Tabel 3.1 Pola Abjad dengan Pola Garis Abjad
Pola Garis
Abjad
Pola Garis
A
g-e-c
B
b-c-h-e-d
C
d-a-c
D
a-c-a-d
E
a-c-c-c
F
a-c-c
G
b-d-a-c-b-c
H
a-c-a
I
a
J
a-d
K
a-h-e
L
a-c
M
a-e-g-a
N
a-e-g-a
O
c-e-a-h-d-f- P
a-c-a-d
b-g Q
c-e-a-h-d-f- R
a-c-a-d-e
b-g-e S
d-a-c-a-d
T
a-c
U
a-c-b
V
e-g
W
e-g-e-g
X
h-e
Y
h-e-a
Z
c-g-c
Seperti yang terlihat dalam Tabel 3.1, dalam beberapa kasus misal dalam kasus D dan P, keduanya memiliki pola yang sama, untuk menghindari kesalahan maka sedikit menggunakan programming ekstra pada kasus tersebut. Begitu juga dengan beberapa abjad yang bisa terbentuk dari pola lain seperti X, X bisa terbentuk dari pola (g-f)
57
ataupun yang lain. Untuk kasus seperti itu diciptakan beberapa pola dengan hasil yang sama agar dicapai pengenalan yang mendekati serupa dan bisa berjalan dengan mudah bagi orang awam.
3.2.6
Perancangan Tampilan Layar Program Aplikasi ini hanya menggunakan satu tampilan layar karena pada
dasarnya program ini akan diintegrasikan dengan program multimedia lain di mana full list program dari program tersebut adalah menampilkan foto dan video beserta dengan notes yang bisa kita edit dan tentunya dalam pengeditan itu tidak lagi menggunakan keyboard virtual tetapi menggunakan aplikasi pengenalan bentuk (multitouch handwriting) ini. Gambar dari program multimedia dengan virtual keyboardnya terlihat pada Gambar 3.4. Sedangkan untuk gambar rancangan dari multitouch handwriting application dapat terlihat pada Gambar 3.5.
58
Gam mbar 3.4 Gaambar Multtimedia App plication
Gambar G 3.55 Rancangan n Multitoucch Handwrittting Appliccation
59
Seperti yang terlihat pada Gambar 3.5 menu hanya terdiri dari satu form yakni form utama, di mana pada form utama terdapat dua elemen area yakni text area beserta gesture area dengan color cube. Text area adalah tempat di mana hasil inputan gesture akan ditampilkan. Format dari text area berupa plain text tanpa scrool. Untuk gesture area adalah area di mana inputan dari user berupa gesture dilakukan, dan inputan tersebut yang nantinya diproses sesuai dengan metode yang ada untuk menghasilkan output dalam bentuk teks ke dalam text area. Sebagai penanda kesuksesan suatu gesture dapat dilihat dari cube, di mana warna dari cube akan berubah jika terjadi kecocokan gerakan dengan pola yang ada.