[3] bab 2 - bina nusantara | library & knowledge...
TRANSCRIPT
BAB 2
LANDASAN TEORI
2.1 Sistem Pengenalan (Recognition System)
Mengutip dari buku Pattern Recognition and Machine Learning yang ditulis oleh Bishop,
Christopher (2006) yang diterbitkan di Berlin, Jerman, bahwa:
“Sistem pengenalan adalah suatu tindakan di mana sistem berusaha mengidentifikasi dan
menganalisis suatu tindakan yang kemudian akan dikenali oleh sistem itu sendiri dengan
menampilkan hasil analisisnya.”
Konstantinos Koutroumbas dan Sergios Theodoridis pun menjabarkan beberapa contoh sistem
pengenalan yang ada pada buku terbitan Boston-Academic Press tahun 2008, antara lain:
Pengenalan Tulisan Tangan (Handwriting Recognition), di mana sistem berusaha
untuk mengenali tulisan tangan manusia agar dapat ditanggapi dengan baik oleh
komputer.
Gambar 2.1 Salah Satu Contoh Aplikasi Pengenalan Tulisan Tangan
(http://www.mobileread.com/forums/attachment.php?attachmentid=12127&d=12078815
31)
Pengenalan Pola (Pattern Recognition), di mana sistem berusaha untuk mengenali
pola tindakan manusia berupa gerak-gerik dari manusia agar dapat dimengerti dan
dianalisis oleh komputer.
Gambar 2.2 Salah Satu Contoh Pengenalan Pola
(http://www.huliq.com/files/imagecache/article_main/Visual%20pattern%20recognition
%20search%20engine%20for%20the%20iPhone%20180408.jpg)
Pengenalan Gambar (Image Recognition), di mana sistem berusaha untuk mengenali
suatu gambar atau foto dengan menganalisis keseluruhan pola gambar yang ada agar
dapat dikenali oleh komputer.
Gambar 2.3 Salah Satu Contoh Pengenalan pada Gambar
(http://www.jens-langner.de/lrecog/images/lrecog1b.jpg)
Pengenalan Suara (Speech Recognition), di mana sistem berusaha untuk mengenali
suara atau vokal yang ada dengan menganalisis suara tersebut agar dapat dikenali
oleh komputer.
Gambar 2.4 Salah Satu Contoh Aplikasi Pengenalan Suara
(http://llt.msu.edu/vol8num3/review1/pic4.jpg)
Pengenalan Wajah (Face Recognition), di mana sistem berusaha untuk mengenali
wajah seseorang dengan menganalisis pola-pola dan bentuk wajah yang nantinya
dapat dikenali oleh komputer.
Gambar 2.5 Salah Satu Contoh Aplikasi Pengenalan Wajah
(http://togaptar.files.wordpress.com/2010/04/face-recognition.jpg)
2.2 System Development Life Cycle (SDLC)
Mengutip dari buku Software Engineering: Seventh Edition karangan Roger S. Pressman
yang diterbitkan oleh McGraw-Hill, pengertian dari SDLC adalah:
“System Development Life Cycle atau Siklus Hidup Pengembangan Sistem adalah proses
perancangan sistem serta metodologi yang digunakan untuk mengembangkan sistem-
sistem tersebut.”
Dalam penelitian skripsi ini, penulis menggunakan proses Waterfall Model sebagai pola
pengembangan sistem. Definisi yang diartikan oleh Roger S. Pressman dalam bukunya Software
Engineering: Seventh Edition dijelaskan bahwa:
“Waterfall Model sebuah proses perancangan yang secara berurutan dan sering
digunakan dalam proses pengembangan perangkat lunak.”
Langkah-langkahnya dapat dilihat pada Gambar 2.6.
Gambar 2.6 Proses Metode Waterfall
(Gambar diambil berdasarkan penjabaran Roger S. Pressman pada buku Software
Engineering: Seventh Edition)
2.3 Use Case Diagram
Use Case Diagram akan memberikan penjelasan secara fungsional mengenai sistem yang
dirancang dan dikembangkan dan juga menjelaskan proses-proses yang dapat dilakukan oleh
pengguna dilihat dari sudut pandang si pengguna itu sendiri. Berdasarkan pengertian dari buku
Software Engineering: Seventh Edition karangan Roger S. Pressman maka Use Case dapat
didefinisikan sebagai berikut:
“Sebuah Use Case menggambarkan bagaimana seorang user berinteraksi dengan sistem
dengan mendefinisikan langkah-langkah yang diperlukan untuk mendapatkan hasil yang
spesifik.”
Gambar 2.7 Elemen-elemen Utama pada Diagram Use Case
(http://atlas.kennesaw.edu/~dbraun/csis4650/A&D/UML_tutorial/images/actor.jpg)
Pada Use Case Diagram, figur utama direpresentasikan sebagai seorang aktor yang
diasosiasikan dengan satu kategori dari user atau dengan elemen interaksi lainnya. Tapi untuk
sistem yang kompleks biasanya memiliki lebih dari satu aktor.
Kemudian pada Use Case Diagram, sebuah Use Case digambarkan dengan bentuk oval.
Aktor dihubungkan dengan Use Case yang berhubungan melalui garis-garis.
2.4 Sequence Diagram
Sequence Diagram digunakan untuk menunjukkan komunikasi yang dinamis antar objek
selama proses eksekusi sebuah tugas. Ini menunjukkan bahwa perintah yang bersifat sementara
pada suatu pesan dikirim antar objek untuk menyelesaikan tugas tersebut.
Mengacu pada penjelasan Sequence Diagram, Roger S. Pressman menjabarkan elemen-
elemen yang terdapat pada Sequence Diagram pada buku Software Engineering: Seventh
Edition, antara lain:
Aktor (User): subjek yang berinteraksi dengan sistem.
Objek: objek atau komponen pada suatu sistem.
Separator: batas antara subsistem.
Message: prosedur pesan atau proses antar objek atau elemen
komponen.
Return Message: pesan balik antar objek.
2.5 Class Diagram
Class Diagram digunakan untuk melakukan permodelan pada kelas, termasuk atribut,
operasi dan hubungan mereka dan asosiasi dengan kelas-kelas lainnya. Definisi Class Diagram
pun kembali diperjelas lewat definisi yang ada pada buku Software Engineering: Seventh Edition
karangan Roger S. Pressman sebagai berikut:
“Class Diagram menyediakan sebuah pandangan yang statis dan struktural pada sebuah
sistem. Ini tidak menunjukkan komunikasi yang dinamis antar objek kelas-kelas pada
diagram.”
Gambar 2.8 Struktur Class Diagram
Elemen utama pada Class Diagram adalah kotak yang digunakan untuk merepresentasikan
kelas-kelas dan interface. Setiap kotak dibagi menjadi bagian-bagian horisontal.
Bagian paling atas menyatakan nama kelas tersebut.
Bagian tengah menyatakan daftar atribut-atribut yang dimiliki oleh kelas tersebut. Sebuah
atribut menunjuk pada suatu objek yang dikenali oleh kelas tersebut.
Dan bagian paling bawah menyatakan operasi-operasi yang dilakukan oleh kelas tersebut.
Sebuah operasi menunjuk pada apa yang bisa dilakukan oleh objek-objek dari kelas tersebut.
Lalu terdapat juga hubungan antar class antara lain:
Asosiasi, yaitu hubungan statis antar class. Umumnya menggambarkan class yang
memiliki atribut berupa class lain, atau class yang harus mengetahui eksistensi class lain.
Panah navigability menunjukkan arah query antar class.
Agregasi, yaitu hubungan yang menyatakan bagian (“terdiri atas..”).
Pewarisan, yaitu hubungan hirarkis antar class. Class dapat diturunkan dari class lain dan
mewarisi semua atribut dan metode class asalnya dan menambahkan fungsionalitas baru,
sehingga ia disebut anak dari class yang diwarisinya. Kebalikan dari pewarisan adalah
generalisasi.
Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari satu class
kepada class lain.
2.6 Activity Diagram
Activity Diagram menggambarkan perilaku dinamis dari sebuah sistem atau bagian dari
sebuah sistem melalui aliran kontrol antar proses yang ditampilkan oleh sistem.
Roger S. Pressman menjabarkan komponen yang terdapat pada Activity Diagram pada buku
Software Engineering: Seventh Edition, antara lain:
Node Awal: titik awal mulainya aktivitas.
Activity Box: berisi proses yang terjadi.
Decision: sebuah logika di mana terdapat dua operasi untuk
menentukan suatu keputusan
Concurrent Activity: beberapa kegiatan yang terjadi secara
bersamaan atau parallel.
Node Akhir: akhir dari aktivitas.
2.7 Interaksi Manusia dan Komputer (IMK)
Berdasarkan jurnal yang ditulis oleh Dr. Reinhard Oppermann pada tahun 2001 yang
berjudul User-interface design, bahwa:
“Interaksi Manusia dan Komputer (IMK) adalah ilmu yang berhubungan dgn
perancangan, evaluasi, dan implementasi sistem komputer interaktif untuk digunakan
oleh manusia, serta studi fenomena-fenomena besar yang berhubungan dengannya.”
IMK berfokus pada perancangan dan evaluasi user interface. User interface adalah
bagian sistem komputer yang memungkinkan manusia berinteraksi dengan komputer.
Tujuan dari merancang sebuah user interface adalah sebagai berikut:
• penentuan sasaran masyarakat pemakai dan tugas-tugasnya sangat penting
• desain yang baik bagi komunitas yang satu bisa tidak sesuai bagi komunitas lainnya
• desain yang efisien bagi sekumpulan tugas dapat tidak efisien bagi kumpulan lainnya
Dalam merancang sebuah user interface digunakanlah delapan aturan emas perancangan
antarmuka pengguna. Shneiderman mengemukakan 8 (delapan) aturan yang dapat digunakan
sebagai petunjuk dasar yang baik untuk merancang suatu user interface.
Delapan aturan ini disebut dengan Eight Golden Rules of Interface Design yang telah dijabarkan
oleh Shneiderman, yaitu:
Konsistensi
Konsistensi dilakukan pada urutan tindakan, perintah, dan istilah yang digunakan
pada prompt, menu, serta layar bantuan.
Memungkinkan pengguna untuk menggunakan shortcut
Ada kebutuhan dari pengguna yang sudah ahli untuk meningkatkan kecepatan
interaksi, sehingga diperlukan singkatan, tombol fungsi, perintah tersembunyi, dan
fasilitas makro.
Memberikan umpan balik yang informatif
Untuk setiap tindakan operator, sebaiknya disertakan suatu sistem umpan balik.
Untuk tindakan yang sering dilakukan dan tidak terlalu penting, dapat diberikan
umpan balik yang sederhana. Tetapi ketika tindakan merupakan hal yang penting,
maka umpan balik sebaiknya lebih substansial. Misalnya muncul suatu suara ketika
salah menekan tombol pada waktu input data atau muncul pesan kesalahannya.
Merancang dialog untuk menghasilkan suatu penutupan
Urutan tindakan sebaiknya diorganisir dalam suatu kelompok dengan bagian awal,
tengah, dan akhir. Umpan balik yang informatif akan memberikan indikasi bahwa
cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan
berikutnya.
Memberikan penanganan kesalahan yang sederhana
Sedapat mungkin sistem dirancang sehingga pengguna tidak dapat melakukan
kesalahan fatal. Jika kesalahan terjadi, sistem dapat mendeteksi kesalahan dengan
cepat dan memberikan mekanisme yang sedehana dan mudah dipahami untuk
penanganan kesalahan.
Mudah kembali ke tindakan sebelumnya
Hal ini dapat mengurangi kekuatiran pengguna karena pengguna mengetahui
kesalahan yang dilakukan dapat dibatalkan, sehingga pengguna tidak takut untuk
mengeksplorasi pilihan-pilihan lain yang belum biasa digunakan.
Mendukung pusat kendali internal
Pengguna ingin menjadi pengontrol sistem dan sistem akan merespon tindakan yang
dilakukan pengguna daripada pengguna merasa bahwa sistem mengontrol pengguna.
Sebaiknya sistem dirancang sedemikan rupa sehingga pengguna menjadi inisiator
daripada responden.
Mengurangi beban ingatan jangka pendek
Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana atau banyak
tampilan halaman yang sebaiknya disatukan, serta diberikan cukup waktu pelatihan
untuk kode, mnemonic, dan urutan tindakan.
2.8 Pengenalan Tulisan Tangan (Handwriting Recognition)
Seperti yang telah dijelaskan pada Bab 1, bahwa engenalan tulisan tangan merupakan
sebuah aplikasi yang dapat mengubah tulisan tangan berupa teks biasa menjadi sebuah struktur
data yang bisa secara otomatis diproses dan dimengerti oleh komputer. Aplikasi ini dapat juga
digunakan untuk mengembangkan metode interaksi pengguna komputer dan antarmuka dengan
mengenali gerak-gerik dari pola penulisan tangan yang menunjukkan pelaksanaan dari perintah
sistem operasi tersebut.
Berdasarkan survei yang dilakukan oleh IEEE (Institute of Electrical and Electronics
Engineers) bertajuk IEEE Transaction on Pattern Analysis and Machine Intelligence pada tahun
2000, ada berbagai upaya dalam membangun sebuah pengenalan tulisan tangan untuk
matematika. Upaya ini ternyata kurang berhasil karena sebuah himpunan matematika yang
dipertimbangkan telah dibatasi. Untuk membangun suatu pengenalan tulisan tangan yang baik
untuk matematika, maka diperlukan pengetahuan yang baik dan meluas dalam bidang
matematika, terutama pemahaman dalam bidang pengenalan karakter dan ekspresi matematika
itu sendiri.
Dengan cara ini, akurasi pengenalan tulisan tangan dalam bidang matematika dapat
ditingkatkan menjadi lebih baik lagi sehingga nantinya interaksi antara manusia dan komputer
dapat berjalan dengan baik.
2.9 Identifikasi Karakteristik Matematika
Kata "matematika" berasal dari bahasa Yunani Kuno μάθημα (máthēma), yang
berarti pengkajian, pembelajaran, ilmu, yang ruang lingkupnya menyempit, dan arti teknisnya
menjadi "pengkajian matematika", bahkan demikian juga pada zaman kuno. Berdasarkan salah
satu artikel pada situs http://mathworld.wolfram.com/ yang ditulis oleh Eric Weisstein bahwa:
“Notasi matematika adalah suatu sistem yang simbolik yang merepresentasikan objek-
objek yang digunakan pada matematika, ilmu-ilmu fisik, teknik dan ekonomi.”
Sebagian notasi matematika terkesan sulit untuk dipahami karena begitu kompleks baik dari segi
bentuk maupun definisinya itu sendiri dari setiap notasi matematika yang ada. Beberapa notasi
matematika utama meliputi:
Teks, contohnya angka 1, 2, 3, 10, 20, 100 dan seterusnya dan juga huruf a/A sampai
dengan z/Z.
Operator, contohnya +, -, x, : dan lain-lain.
2.10 Ekspresi Persamaan Matematika
Ekspresi sangatlah bervariasi dari segi kompleksitas sehingga akan lebih baik dalam
menentukan bagaimana masing-masing teknik visualisasi pengenalan mempengaruhi
kemampuan subjek untuk melihat dan memperbaiki kesalahan dari pengenalan itu sendiri.
Berdasarkan jurnal yang berjudul Semantics Engineering with PLT Redex yang ditulis oleh
Findler Felleisen pada tahun 2009, maka ekspresi persamaan matematika dibagi menjadi 4,
antara lain:
Ini adalah contoh ekspresi yang sederhana. Tipe ekspresi ini merupakan polynomial yang
sederhana yang dirancang agar lebih mudah untuk dikenali dan tidak terlalu banyak
memakan ruang.
5x + 3y − 2z + w = 0
3x − 5y + z − 4w = 5
7x − y + 3z − 2w = −6
x − 2y + 7z − 2w = 2
Ekspresi ini dirancang sehingga subyek harus menulis urutan ekspresi secara vertikal
(seolah-olah bekerja secara simultan sebagai sebuah persamaan), yang secara khusus
menilai keefektifan dari teknik itu sendiri.
Untuk ekspresi yang compact, pengguna menulis suatu persamaan matematika yang lebih
terstruktur seperti di mana superscripts ditampilkan sehingga akan ada lebih banyak
simbol. Divisi baris juga digunakan dalam ekspresi untuk membuat mereka lterlihat
lebih compact. Ekspresi ini dirancang untuk membantu pengujian yang pada pengguna
dalam tingkat frustasi dan gangguan akibat perubahan mendadak dalam mengkonversi
simbol matematika yang disesuaikan.
Ekspresi yang panjang dirancang untuk menguji gangguan pada pengguna karena mereka
menulis di layar dan harus menggunakan scroll bar secara horisontal untuk
memberikan ruang bagi seluruh ekspresi.
2.11 Bahasa Pemrograman LaTex
Berdasarkan situs resmi dari LaTex (http://www.latex-project.org/), berikut penjelasan
singkat mengenai LaTex.
“LaTeX adalah sebuah sistem typesetting yang berkualitas tinggi, tetapi juga mencakup
fitur yang dirancang untuk memproduksi dokumentasi secara teknis dan ilmiah. LaTeX
adalah standar de facto untuk berkomunikasi dan mempublikasikan dokumen ilmiah.
LaTeX tersedia sebagai perangkat lunak bebas.”
Gambar 2.9 Salah Satu Contoh Rangkaian Coding dari Program LaTex dan Output yang
Dihasilkan (http://www.latex-project.org/)
Fitur-fitur yang disediakan pada LaTex antara lain:
Typesetting untuk artikel, jurnal, laporan teknis, buku, dan slide presentasi.
Kontrol atas dokumen besar berisi sectioning, referensi silang, tabel dan gambar.
Typesetting untuk formula matematika.
Multi-Lingual Typesetting.
Menggunakan font PostScript atau Metafont.
2.12 Bahasa Pemrograman MathML
MathML (Mathematical Markup Language) merupakan salah satu program pembelajaran
yang digunakan dalam bidang matematika.
Berdasarkan situs http://www.w3.org (W3C Recommendation), dijelaskan bahwa:
“MathML merupakan aplikasi berbasis XML yang digunakan untuk menggambarkan
notasi matematika dan menangkap kedua struktur dan konten.”
Dijelaskan pula bahwa, MathML dapat digunakan untuk encode baik notasi matematika
dan konten matematis.
Sekitar 38 buah dari tag MathML menggambarkan struktur notasi secara abstrak,
sementara yang lain sekitar 170 buah memberikan cara yang jelas dalam menentukan makna
yang dimaksudkan dari sebuah ekspresi matematika itu sendiri.
Gambar 2.10 Salah Satu Contoh Rangkaian Coding dari Program MathML
(http://www.w3.org)