BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain...

30
5 BAB II LANDASAN TEORI 2.1. Konsep Dasar Program Pengenalan wajah adalah salah satu teknologi biometrik yang telah banyak diaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan wajah menggunakan sebuah kamera untuk menangkap wajah seseorang kemudian dibandingkan dengan wajah yang sebelumnya tersimpan didalam database tertentu. Pengenalan wajah melibatkan banyak variabel, misalnya citra sumber, citra hasil pengolahan citra, citra hasil ekstraksi dan data profil seseorang. Dibutuhkan juga alat pengindra berupa sensor kamera dan metode untuk menentukan apakah citra yang ditangkap oleh webcamera tergolong wajah manusia atau bukan, sekaligus untuk menentukan informasi profil yang sesuai dengan citra wajah yang dimaksud. 2.1.1. Computer vision Computer Vision didefinisikan sebagai salah satu objek yang diamati atau diobservasi, gambar yang diperoleh dapat diperoleh dari beberapa sumber seperti video, scanner, atau digital image (Zhu, 2008).

Transcript of BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain...

Page 1: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

5

BAB II

LANDASAN TEORI

2.1. Konsep Dasar Program

Pengenalan wajah adalah salah satu teknologi biometrik yang telah banyak

diaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan

sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan wajah menggunakan

sebuah kamera untuk menangkap wajah seseorang kemudian dibandingkan dengan

wajah yang sebelumnya tersimpan didalam database tertentu.

Pengenalan wajah melibatkan banyak variabel, misalnya citra sumber, citra hasil

pengolahan citra, citra hasil ekstraksi dan data profil seseorang. Dibutuhkan juga alat

pengindra berupa sensor kamera dan metode untuk menentukan apakah citra yang

ditangkap oleh webcamera tergolong wajah manusia atau bukan, sekaligus untuk

menentukan informasi profil yang sesuai dengan citra wajah yang dimaksud.

2.1.1. Computer vision

Computer Vision didefinisikan sebagai salah satu objek yang diamati atau

diobservasi, gambar yang diperoleh dapat diperoleh dari beberapa sumber seperti

video, scanner, atau digital image (Zhu, 2008).

Page 2: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

6

Menurut Zhu secara umum bidang dalam computer vision dapat dibagi menjadi

1. Recognition

Merupakan permasalahan mendasar dari computer vision yaitu

mengenali apakah didalam sebuah image terdapat objek-objek dan aktivitas-

aktivitas tertentu, bagi komputer permasalahan ini merupakan hal yang tidak

mudah bentuk mengenali secara langsung untuk mengenali sutatu objek dan

aktivitas tertentu.

2. Motion Tracking

Berkaitan dengan gerakan yang akan diamati yang mana image diolah

merupakan dari sebuah kegiatan tertentu atau pergerakan dari sebuah objek

yang telah dikenali, dalam tahap ini objek tersebut tentunya telah dikenali

terlebih dahulu, sehingga objek yang diamati pergerakannya berfokus pada

objek itu sendiri. Contohnya pergerakan mobil, pergerakan manusia

3. Scene Recontruction

Pada bagian ini, berkaitan dengan mengatur urutan image menjadi

sebuah grafik video setelah diketahui tindakan apa yang dilakukan oleh

masing-masing gambar. Merupakan proses kelanjutan dari bagian motion

tracking. Banyak digunakan pada permainan-permainan komputer yang

dinamis untuk memperkecil ukuran program sebagian respon dari program.

Page 3: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

7

2.1.2 Eigenface

Kata Eigenface sebenarnya berasa dari bahasa jerman yang dimana dari kata

“eigenwert” dimana kata tersebut terdiri dari 2 suku kata “eigen” artinya karakteristik

dan “wert” artinya nilai.

Menurut Hanif (Al-Fattah.H, 2006) Eigenface adalah salah satu algoritma

pengenalan pola wajah yang berdasarkan pada Principle Component Analysis (PCA).

Prinsip dasar dari pengenalan wajah adalah dengan mengutip informasi wajah

tersebut kemudian di-encode dan dibandingkan dengan hasil encode yang

sebelumnya dilakukan.

Dalam metode eigenface, decoding dapat dilakukan dengan cara menghitung

eigenvector, kemudian direpresentasikan dalam sebuah matriks dalam yang

berukuran besar, eigenvector dapat juga dikatakan sebagai karakteristik wajah oleh

karena itu metode ini disebut dengan eigenface, setiap wajah direpresentasikan dalam

sebuah kombinasi linear eigenface, metode eigenface pertama kali dikembangkan

oleh Matthew turk dan Alex pentland dari vision and modeling group, the media

Laboratory, Massachusetts Institue Of Technology pada tahun 1987 dan kemudian

metode ini berhasil disempurnakan lagi oleh matthew turk pada tahun 1991.

Algoritma eigenface secara keseluruhan cukup sederhana image matriks (Γ)

direpresentasikan ke dalam sebuah him-punan matriks (Γ1, Γ2,.......,ΓM). Cari nilai rata-

rata (Ψ) dan gunakan untuk mengektraksi eigenvector (v) dan eigenvalue (λ) dari

Page 4: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

8

himpunan matriks. Gunakan nilai eigenvector untuk mendapatkan eigenface dari

image apabila ada sebuah image baru atau test face (Γnew) yang ingin dikenali, proses

yang sama juga diberlakukan untuk image (Γnew), untuk mengektraksi eigenvector (v)

dan eigenvalue (λ), kemudian cari nilai eigenface dari image test face (Γnew) setelah

itu barulah image baru (Γnew) memasuki tahapan pengenalan dengan menggunakan

metode euclidean distance.

2.1.3. Software Development Life Cycle

Software Develoment Life Circle (SDLC) merupakan siklus

pengembangan aplikasi yang meliputi prosedur dan langkah-langkah yang

membimbing suatu proyek secara teknis dari awal sampai akhir. Secara garis besar

tahapan dibagi menjadi empat kegiatan utama, yaitu analisis, desain, impelemtasi,

dan perawatan. Software yang dikembangkan berdasarkan SDLC akan

menghasilkan sistem dengan kualitas yang tinggi, memenuhi harapan

penggunanya, tepat dalam waktu dan biaya, bekerja dengan efektif dan efisien dalam

infrastruktur teknologi informasi yang ada atau yang direncanakan, serta murah

dalam perawatan dan pengembangan lebih lanjut (Pressman, 2005)

Menurut Pressman, SDLC memiliki banyak bentuk model, salah satu

yang terkenal dan sering dipakai adalah model waterfall. Model waterfall diagram

prosesnya mirip dengan air terjun yang bertingkat yang meliputi tahapan - tahapan

sebagai berikut :

Page 5: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

9

1. Perancangan Sistem ( Engineering Sistem )

Perancangan sistem diperlukan untuk bagian dari suatu sistem yang

lebih besar nantinya Pembuatan sebuah piranti lunak dapat dimulai

dengan melihat dan mencari apa yang dibutuhkan oleh sistem. Dari

kebutuhan sistem tersebut akan diterapkan kedalam piranti lunak yang

dibuat

2. Analisa kebutuhan piranti lunak ( Software Requitment Analysis )

Merupakan proses pengumpulan kebutuhan piranti lunak. Untuk

memahami dasar dari program yang akan dibuat, seorang analisis harus

mengetahui ruang lingkup informasi, fungsi-fungsi yang dibutuhkan,

kemampuan kinerja yang ingin dihasilkan dan perancangan antarmuka

pemakai piranti lunak tersebut.

3. Perancangan ( Design )

Perancangan piranti lunak terbagi atas 4 tahapan penting, yaitu:

Struktur data, arsitektur piranti lunak, detil prosedur, dan karakteristik

user interface

4. Pengkodean ( Coding )

Pengkodean piranti lunak merupakan proses penulisan kedalam

bahasa pemograman agar piranti lunak tersebut dapat digunakan oleh

mesin.

Page 6: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

10

5. Pengujian ( Testing )

Proses ini akan menguji kode program yang telah dibuat dengan

memfokuskan pada bagian dalam piranti lunak. Tujuannya untuk

memastikan bahwa semua pernyataan telah diuji dan memastikan juga

bahwa input yang digunakan akan menghasilkan output yang sesuai. Pada

tahap ini pengujian ini dibagi menjadi dua bagian, pengujian internal dan

pengujian eksternal. Pengujian internal

bertujuan menggambarkan bahwa semua statement sudah dilakukan

pengujian, sedangkan pengujian eksternal bertujuan untuk menemukan

kesalahan serta memastikan output yang dihasilkan sesuai dengan yang

diharapkan

6. Pemeliharaan ( Maintenance )

Proses ini dilakukan setelah piranti lunak telah digunakan oleh user.

Suatu Perubahan akan dilakukan jika terdapat kesalahan dan

penyesuaian akan perubahan kebutuhan yang diinginkan user.

(Sumber Pressman, 2005) Gambar II.1 Model Waterfall

Page 7: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

11

2.1.4. .Net Framework

.Net Framwork adalah suatu komponen windows yang terintegrasi yang

dibuat dengan tujuan untuk mensupport pengembangan berbagai macam aplikasi

serta untuk dapat menjalankan berbagai macam aplikasi generasi mendatang

termasuk pengembangan aplikasi Web Service XML.

.Net Framework di design untuk dapat memenuhi beberapa tujuan berikut ini :

a. Untuk menyediakan environment kerja yang konsisten bagi

bahasa pemrograman yang berorientasi objek (object-oriented programming -

OOP) baik kode objek itu di simpan dan di eksekusi secara lokal, atau

dieksekusi secara lokal tapi didistribusikan melalui internet atau di eksekusi

secara remote.

b. Untuk menyediakan environment kerja di dalam mengeksekusi kode yang

dapat meminimaliasi proses software deployment dan menghindari konflik

penggunaan versi software yang di buat.

c. Untuk menyediakan environment kerja yang aman dalam hal

pengeksekusian kode, termasuk kode yang dibuat oleh pihak ketiga (third

party).

d. Untuk menyediakan envirotment kerja yang dapat mengurangi masalah pada

persoalan performa dari kode atau dari lingkungan interpreter-nya.

Page 8: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

12

e. Membuat para developer lebih mudah mengembangkan berbagai macam jenis

aplikasi yang lebih bervariasi, seperti aplikasi berbasis windows dan aplikasi

berbasis web.

f. Membangun semua komunikasi yang ada didalam standar industri untuk

memastikan bahwa semua kode aplikasi yang berbasis .Net Framework dapat

berintegrasi dengan berbagai macam kode aplikasi lain.

Sebagai salah satu sarana untuk dapat memenuhi tujuan di atas, maka

dibuatlah berbagai macam bahasa pemrograman yang dapat digunakan dan

dapat berjalan di atas platform .Net Framework seperti bahasa C#, VB.NET, J#,

Perl .NET dan lain-lain. Masing-masing bahasa tersebut mempunyai kelebihan

dan kekurangannya masing- masing, namun yang pasti, apapun bahasa

pemrograman yang digunakan, semuanya akan dapat saling berkomunikasi dan

saling compatible satu dengan yang lainnya dengan bantuan .Net Framework.

2.1.4.1. Arsitektur .Net Framework

.Net Framework terdiri dari dua buah komponen utama, yaitu Common

Language Runtime (CLR), dan .Net Framework Class Library atau kadang juga

sering disebut dengan Base Class Library.

Common Language Runtime adalah pondasi utama dari Framework .Net. CLR

merupakan komponen yang bertanggung jawab terhadap berbagai macam hal, seperti

bertanggung jawab untuk melakukan management memory, melakukan eksekusi

Page 9: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

13

kode, melakukan verifikasi terhadap keamanan kode, menentukan hak akses dari

kode, melakukan kompilasi kode, dan berbagai layanan system lainnya. Dengan

adanya fungsi CLR ini, maka aplikasi berbasis .NET biasa juga disebut dengan

managed code, sedangkan aplikasi di luar itu biasa disebut dengan un-managed code.

Berikut ini beberapa hal yang disediakan oleh pondasi utama Common

Langugae Runtime ( CLR ) :

1. Dapat lebih menyederhanakan proses pengembangan aplikasi.

2. Memungkinkan adanya variasi dan integrasi dari berbagai bahasa

pemrograman yang ada di lingkungan .Net Framework.

3. Keamanan dengan melakukan identing pada kode aplikasi.

4. Bersifat assembly pada saat proses deployment / kompilasi.

5. Melakukan Versioning sebuah komponen yang bisa didaur ulang.

6. Memungkinkan pengguanaan kembali kode, dengan adanya sifat

inheritance

7. Melakukan pengaturan / manajemen tentang lifetime sebuah objek

8. Melakukan penganalisaan objek-objek secara otomatis.

9. CLR akan melakukan kompilasi kode-kode aplikasi kita menjadi

bahasa assembly MSIL (Microsoft Intermediate Language). Proses

Page 10: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

14

kompilasi ini sendiri dilakukan oleh komponen yang bernama Just In

Time (JIT). JIT hanya akan mengkompilasi metode- metode yang

memang digunakan dalam aplikasi, dan hasil kompilasi ini sendiri di

chace di dalam mesin dan akan dikompile kembali jika memang ada

perubahan pada kode aplikasi kita.

.NET Framework Class Library atau sering juga disebut Base Case Library

(BCL) adalah koleksi dari reusable types yang sangat terintegrasi secara melekat

dengan CLR. Class library bersifat berorientasi terhadap objek yang akan

menyediakan types dari fungsi-fungsi managed code.

Hal ini tidak hanya berpengaruh kepada kemudahan dalam hal penggunaan,

tetapi juga dapat mengurangi waktu yang diperlukan pada saat eksekusi. Dengan

sifat tersebut, maka komponen pihak ketiga akan dengan mudah diaplikasikan ke

dalam aplikasi yang dibuat.

Dengan adanya BCL ini, maka kita bisa menggunakan .Net Framework

untuk membuat berbagai macam aplikasi, seperti :

1. Aplikasi Console

2. Aplikasi Berbasis Windows ( Windows Form )

3. Aplikasi ASP.Net ( Berbasis Web )

4. Aplikasi Web Services XML

5. Aplikasi berbasis Windows Services.

Page 11: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

15

Jika kita membuat sekumpulan Class untuk membuat aplikasi berbasis

windows, maka Class-Class itu bisa kita gunakan untuk jenis aplikasi lain, seperti

aplikasi berbasis web (ASP.NET).

2.1.4.2. Keuntungan .Net Framework

Berikut ini adalah beberapa keuntungan yang didapat jika menggunakan .Net

Framework :

a. Mudah

Kemudahan di sini lebih ke arah pada kemudahan bagi para

developer untuk membuat aplikasi yang dijalankan pada lingkungan

.Net Framework. Beberapa hal yang merepotkan developer pada saat

membuat aplikasi, telah di hilangkan atau di ambil alih

kemampuannya oleh . N e t Framework, misalnya masalah lifetime

sebuah objek yang biasanya luput dari perhatian developer pada saat

proses pembuatan aplikasi. Masalah ini telah ditangani dan diatur

secara otomatis oleh .Net Framework melalui komponen yang

bernama Garbage Collector yang bertanggung jawab untuk mencari

dan membuang objek yang sudah tidak terpakai secara otomatis.

Page 12: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

16

b. Efisien

Kemudahan pada saat proses pembuatan aplikasi, akan

berimplikasi terhadap efisiensi dari suatu proses produktivitas, baik

efisien dalam hal waktu pembuatan aplikasi atau juga efisien dalam

hal lain, seperti biaya (cost).

c. Konsisten

Kemudahan-kemudahan pada saat proses pembuatan aplikasi,

juga bisa berimplikasi terhadap konsistensi pada aplikasi yang kita

buat. Misalnya, dengan adanya BCL, maka kita bisa menggunakan

objek atau Class yang dibuat untuk aplikasi berbasis windows pada

aplikasi berbasis web. Dengan adanya kode yang bisa dintegrasikan

ke dalam berbagai macam aplikasi ini, maka konsistensi kode-kode

aplikasi kita dapat terjaga.

d. Produktivitas

Semua kemudahan-kemudahan di atas, pada akhirnya akan

membuat produktivitas menjadi lebih baik. Produktivitas naik,

terutama produktivitas para developer, akan berdampak pada

meningkatnya produktivitas suatu perusahaan.

Page 13: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

17

2.2. Peralatan Pendukung ( Tools System )

2.2.1. Open Cv

OpenCV adalah suatu library gratis yang dikembangkan oleh developer-

developer Intel Corporation. Library ini terdiri dari fungsi-fungsi computer vision

dan API (Aplication Programming Interface) untuk image processing high level

maupun low level dan sebagai optimasi aplikasi realtime. OpenCV sangat disarankan

untuk programmer yang akan berkutat pada bidang computer vision, karena

library ini mampu menciptakan aplikasi yang handal, kuat dibidang digital

vision, dan mempunyai kemampuan yang mirip dengan cara pengolahan visual pada

manusia,

Karena library ini bersifat cuma-cuma dan sifatnya yang open source, maka

dari itu OpenCV tidak dipesan khusus untuk pengguna arsitektur Intel, tetapi

dapat dibangun pada hampir semua arsitektur Saat ini para developer dari

Intel Corporation telah membuat berbagai macam versi, yaitu:

a. Open CV untuk bahasa pemrograman C/C++

b. Open CV untuk bahasa pemrograman (masih dalam tahap

pengembangan)

c. Open CV untuk bahasa pemrograman java

Untuk bahasa pemrograman C# dan java, karena masih dalam tahap

pengembangan, maka kita membutuhkan library lain sebagai pelengkap kekurangan

Page 14: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

18

yang ada, namun untuk bahasa pemrograman C/C++ tidak memerlukan library

lainnya untuk pemrosesan pada computer vision.

2.2.1.1. Fitur

Berikut ini adalah fitur-fitur yang terdapat pada library Open CV :

1. Manipulasi data gambar (alokasi memori, melepaskan memori, kopi

gambar, setting serta konversi gambar)

2. Image/Video I/O (Bisa menggunakan camera yang sudah didukung

oleh library ini)

3. manipulasi matrix dan vektor serta terdapat juga routines linear

algebra (products, solvers, eigenvalues, SVD)

4. Image processing dasar (filtering, edge detection, pendeteksian tepi,

sampling dan interpolasi, konversi warna, operasi morfologi,

histograms, image pyramids)

5. Analisi struktural

6. Kalibrasi kamera

7. Pendeteksian gerak

8. Pengenalan objek

Page 15: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

19

9. Basic GUI (Display gambar/video, mouse/keyboard kontrol,

scrollbar)

10. Image Labelling (line, conic, polygon, text drawing)

2.2.2 Emgu CV

Emgu CV merupakan lintas platform, yang memungkinkan para programmer

memanggil fungsi dalam intel opencv image processing library agar dapat digunakan

pada bahasa compatible .NET C#, VB, dan lainnya.

Keuntungan menggunakan library Emgu cv adalah :

1. Emgu Cv seluruhnya dibuat berdasarkan bahasa C#, namun dapat

digunakan oleh bahasa pemrograman yang lain seperti VB.NET, C++,

dan IronPython.

2. Dalam image processing, image class menggunakan generic parameter

yaitu Color dan Depth.

3. Setelah melakukan proses pada image, emguCV secara otomatis akan

melakukan dispose image

Serialisasi XML, dapat digunakan apabila program dikerjakan WCF

(Windows Communication Foundation), akan digunakan dalam layanan

web, dan membutuhkan pengembalian nilai dalam bentuk image <Tcolor,

Depth> sebagai parameter. Ini juga dapat berguna untuk penggunaan

Page 16: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

20

perangkat lunak pengamatan jarak jauh yang menggunakan kelas capture

untuk menangkap gambar dari cameraEmgu cv memiliki 2 layer, layer 1

berisi function, structure, dan enumeration mappings yang secara

langsung merefleksikan yang ada di opencv, sementara layer 2 berisi class

yang merupakan keuntugan .NET world

Gambar II.2 Struktur Emgu CV

Page 17: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

21

2.2.3 XML ( Extensible Markup Language )

XML (eXtensible Markup Language) merupakan bahasa web turunan dari

SGML (Standard Generalized Markup Language) yang ada sebelumnya.

XML hampir sama dengan HTML, dimana kedua-duanya diturunkan dari SGML.

Secara sederhana XML adalah suatu bahasa yang digunakan untuk mendeskripsikan

dan memanipulasi dokumen secara terstruktur. Secara teknis XML didefinisikan

sebagai suatu bahasa meta-markup yang menyediakan format tertentu untuk

dokumen-dokumen yang menyediakan format tertentu untuk dokumen-dokumen

yang mempunyai data terstruktur. Bahasa Markup adalah mekanisme untuk

mengenal suatu struktur didokumen

Gambar II.3 Sruktur dokumen XML

Gambar II.4 File XML

Page 18: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

22

2.2.3.1 Tujuan XML

Pada saat kita memakai XML aplikasi A dapat menerima XML-tagged data dari

aplikasi B dan sebaliknya, keduanya tidak perlu mengetahui bagaimana cara kerja

sistem bila organisasi aplikasi A mempunyai kesepakatan untuk berbisnis dengan

organisasi aplikasi B maka organisasi A tidak perlu menulis kode untuk

menukar informasi dengan sistem aplikasi B. Tetapi yang penting adalah bagaimana

memvalidasi dokumen yang dipertukarkan.

Sehingga tujuan desain XML dapat dirinci sebagai berikut :

1. XML harus dapat digunakan secara langsung di Internet

2. XML harus mendukung secara luas berbagai aplikasi

3. XML harus kompatibel dengan SGML sebagaipendahuluannya.

4. Program yang memproses dokumen XML harus mudah dibuat.

Singkatnya tujuan dari XML secara umum adalah memungkinkan SGML

untuk membantu, menerima dan memproses pada program web, dimana cara ini

sekarang dapat dilakukan dengan HTML. XML dibuat untuk memudahkan

pelaksanaan dan interoperability dengan SGML dan HTML. Suatu XML

menggambarkan sebuah kelas dari obyek data yang disebut dokumen XML yang

disimpan pada komputer, dan menggambarkan sebagian tentang program

yang memproses object tersebut.

Page 19: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

23

2.2.4 Database

Basis data (atau database) adalah kumpulan informasi yang disimpan di dalam

komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program

komputer untuk memperoleh informasi dari basis data tersebut. Database digunakan

untuk menyimpan informasi atau data yang terintegrasi dengan baik di dalam komputer.

Untuk mengelola database diperlukan suatu perangkat lunak yang disebut DBMS

(Database Management System). DBMS merupakan suatu sistem perangkat

lunak yang memungkinkan user (pengguna) untuk membuat, memelihara, mengontrol,

dan mengakses database secara praktis dan efisien. Dengan DBMS, user akan lebih

mudah mengontrol dan memanipulasi data yang ada. Sedangkan RDBMS atau

Relationship Database Management System merupakan salah satu jenis DBMS yang

mendukung adanya relationship atau hubungan antar tabel. Di samping RDBMS,

terdapat jenis DBMS lain, misalnya Hierarchy DBMS, Object Oriented DBMS, dsb.

Didalam Mysql ada beberapa istilah yang menjadi dasar bagi pengguana Mysql

dibawah ini adalah beberapa istilah yang terdapat pada pada Mysql :

1. Table

Sebuah table merupakan kumpulan data (nilai) yang

diorganisasikan kedalam basis record dan kolom (field). Masing –

masing kolom memiliki nama yang spesifik dan unik yang dimana

biasanya menjadi inisial bagi basis data.

Page 20: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

24

2. Field

Field merupakan kolom dari sebuah table. Field memiliki

ukuran type data tertentu yang menentukan bagaimana nanti datanya

tersimpan.

3. Record

Field merupakan sebuah kumpulan nilai yang terkait.

4. Key

Key merupakan suatu field yang dapat dijadikan kunci dalam

operasi table. Dalam konsep database, key memiliki beberapa jenis

diantaranya primary key, foreign key, composite key, dll.

Dalam konsep database, urutan atau hirearki database sangatlah penting. Urutan

hierarki database digambarkan dalam gambar sbb :

Didalam Mysql juga terdapat fitur – fitur yang dapat digunakan dibawah ini

beberapa fitur – fitur tsb :

1. Relational Database System ( RDS )

Seperti halnya software database lain yang ada di pasaran, MySQL

termasuk RDBMS

2. Arsitektur Client – Sever

Page 21: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

25

MySQL memiliki arsitektur client-server dimana server database MySQL

terinstal di server. Client MySQL dapat berada di komputer yang sama

dengan server, dan dapat juga di komputer lain yang berkomunikasi dengan

server melalui jaringan bahkan internet.

3. Mengenal Perintah SQL Standar SQL (Structured Query Language)

Merupakan suatu bahasa standar yang berlaku di hampir semua software

database. MySQL mendukung SQL versi SQL:2003.

4. Mendukung sub select

Mysql mendukung sub select mulai versi 4.1 Mysql telah mendukung select

dalam select ( sub select ).

5. Mendukung views

Mysql mendukung views sejak versi 5.0.

6. Mendukung Stored Prosedured ( SP )

Mysql mendukung SP sejak versi 5.0.

7. Mendukung Triggers

MySQL mendukung trigger pada versi 5.0 namun masih terbatas.

Pengembang MySQL berjanji akan meningkatkan kemampuan trigger pada

versi 5.1

Page 22: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

26

8. Mendukung Replication

9. Mendukung Transaksi

10. Mendukung Foreign Key

Gambar II.5 Hierarki Database

Page 23: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

27

2.2.5 HIPO

HIPO adalah paket yang berisi sebuah set paket diagram secara grafis

menjelaskan fungsi sebuah sistem dari tingkatan umum ke tingkatan khusus. Saat

ini HIPO juga telah digunakan sebagai alat bantu untuk merancang dan

mendokumentasikan siklus pengembangan sistem.

Bagian – bagian HIPO adalah sebagai berikut :

a. Index Program

Merupakan nomor acuan yang menunjukan nama suatu program.

b. Nama Program

Merupakan nama layar dialog atau nama suatu program.

c. Escape Program

Merupakan nomor layar dialog sebelumnya yang akan dituju balik.

Page 24: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

28

Gambar II.6 Simbol HIPO ( Hierachy Plus Input-Process-Output )

Sasaran HIPO :

a. Untuk menyediakan suatu struktur guna memahami fungsi dari sistem.

b. Untuk lebih menekankan fungsi-fungsi yang harus diselesaikan oleh

program.

c. Untuk menyediakan penjelasan yang jelas dari input dan output pada

masing-masing tingkatan dari HIPO. Untuk menyediakan output yang tepat

dan sesuai dengan kebutuhan pemakai

2.2.6 Flowchart

Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan

hubungan antar proses beserta instruksinya. Gambaran ini dinyatakan dengan simbol

Page 25: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

29

maka dengan demikian setiap simbol menggambarakan proses tertentu sedangkan

hubungan antar proses digambarkan dengan garis penghubung flowchart, ini

merupakan langkah awal pembuatan program, dengan adanya flowchart urutan pose

kegiatan menjadi lebih jelas.

Jika ada penambahan proses maka dapat dilakukan lebih mudah setelah

flowchart selesai disusun, selanjutnya programmer ( pemrogram )

menterjemahkannya ke bentuk program dengan bahasa pemrograman simbol –

simbol flowchart.

Flowchart disusun dengan simbol – simbol, simbol ini dipakai sebagai alat

bantu menggambarakan proses di dalam program, berikut adalah simbol – simbol

yang dipakai antara lain :

a. Flow Direction Symbol

Yaitu simbol yang digunakan untuk menghubungkan antara simbol yang satu

dengan simbol yang lain. Simbol ini disebut juga connecting life

Page 26: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

30

b. Terminator simbol

Yaitu simbol untuk permulaan (start) atau akhir (stop) dari sutau kegiatan

c. Connector symbol

Yaitu simbol keluar – masuk atau penyambungan proses dalam lembar halaman /halaman yang sama

d. Connector Symbol

Yaitu simbol keluar – masuk atau penyambungan proses dalam lembar halaman /halaman yang berbeda

e. Processing Symbol

Simbol yang menunjukan pengolahan yang dilakukan oleh komputer

Page 27: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

31

f. Simbol Manual Operation

Simbol yang menunjukan pengolahan yang tidak dilakukan oleh komputer

g. Simbol Decision

Simbol pemilihan proses berdasarkan kondisi yang ada

h. Simbol Input – Output

Simbol yang menyatakan proses input – output tanpa tergantung dengan jenisperalatanya

i. Simbol Manual Input

Simbol untuk pemasukan data secara manual On-line Keyboard

Page 28: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

32

j. Simbol Preparation

Simbol untuk mempersiapkan penyimpanan yang akan digunakan sebagai tempatpengolahan didalam storage

k. Simbol Predifine Proses

Simbol untuk suatu pelaksanaan suatu bagian (sub-program)/procedure

l. Simbol Display

Simbol yang menyatakan peralatan output yang digunakan yaitu layar, plotter,printer dan sebagainya

m. Simbol Disk and Online Storage

Simbol yang menyatakan input yang berasal dari disk atau disimpan ke disk

Page 29: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

33

Kaidah – kaidah pembuatan flowchart :

Dalarn pembuatan flowchart tidak ada rumus atau patokan yang bersifat

mutlak Karena flowchart merupakan gambaran hasil pernikiran dalam

menganalisa suatu masalah dengan komputer. Sehingga flowchart yang

dihasilkan dapat bervariasi antara satu pemrograrn dengan pemrograrn lainnya.

Namun secara garis besar, setiap pengolahan selalu terdiri dari tiga

bagian utarna, yaitu;

1. Input berupa bahan mentah

2. Proses pengolahan

3. Output berupa jadi bahan

Untuk pengolahan data dengan komputer, dapat dirangkum urutan dasar

untuk pemecahan suatu masalah, yaitu :

a. START : berisi instruksi untuk persiapan perlatan yang

diperlukan sebelum menangani pemecahan masalah

b. READ : berisi instruksi untuk mernbaca data dari suatu peralatan

input

c. PROCESS : berisi kegiatan yang berkaitan dengan pernecahan

persoalan sesuai dengan data yang dibaca.

d. END : Mengakhiri kegiatan pengolahan

Page 30: BAB II LANDASAN TEORI - repository.bsi.ac.id filediaplikasikan dalam sistem keamanan selain pengenalan retina mata, pengenalan sidik jari dan iris mata, dalam aplikasinya sendiri pengenalan

34

2.2.7 Dll Fixer

Dll Fixer merupakan sebuah program yang dapat digunakan unntuk

menyempurnakan atau memperbaiki Dll files (Dynamic-Link-Library). Dll fixer juag

dapat digunakan dalam memperbaiki kerusakan yang sering terjadi pada registry

berikut ini adalah beberapa keuntungan dari program menggunakan Dll Fixer :

1. Menyelesaikan masalah .dll yang rusak ataupun corrupt dan memastikan

program berjalan dengan baik

2. Memperbaiki dan membersihkan registry yang corrupt atau rusak

3. Pengoptimalan pada performance komputer

4. Mencegah terjadinya crash pada aplikasi.