BAB II LANDASAN TEORI
Dalam membangun aplikasi ini, menerangkan definisi Rekayasa Perangkat Lunak, Unified Modeling Language, Smart Card, teori dasar VB.Net, teori dasar MySQL serta perangkat lain yang berkaitan dengan pokok permasalahan yang diangkat dalam penelitian.
2.1
REKAYASA PERANGKAT LUNAK
2.1.1
Pengertian Rekayasa Perangkat Lunak
Rekayasa
perangkat
lunak
(software
engineering)
merupakan
pembangunan dengan menggunakan prinsip atau konsep rekayasa dengan tujuan menghasilkan perangkat lunak yang bernilai ekonomi yang dipercaya dan bekerja secara efisien menggunakan mesin (Rosa A.S. M. Shalahuddin, Modul Pembelajaran Rekayasa Perangkat Lunak (Terstruktur dan Berorientasi Objek), 2011:4). Rekayasa perangat lunak lebih fokus pada praktek pengembangan perangkat lunak dan mengirimkan perangkat lunak yang bermanfaat kepada pelanggan. Sedangkan ilmu komputer lebih fokus pada teori dan konsep dasar perangkat komputer. Kriteria rekayasa perangkat lunak adalah sebagai berikut: •
Dapat terus dipelihara setelah perangkat lunak selesai dibuat seiring berkembangnya teknologi dan lingkungan (maintainability).
•
Dapat diandalkan dengan proses bisnis yang dijalankan dan perubahan yang terjadi (dependability dan robust).
7
8
•
Efisien dari segi sumber daya dan penggunaan.
•
Kemampuan untuk dipakai sesuai dengan kebutuhan (usability). Rekayasa perangkat lunak dapat dikategorikan menjadi tiga buah kategori
umum tanpa melihat area dari aplikasi, ukuran proyek perangkat lunak, atau kompleksitas perangkat lunak yang akan di buat. Setiap tahapan dialamatkan pada satu atau lebih pertanyaan yang akan diajukan sebelumnya. 1. Tahapan pendefinisian fokus pada “What” yang artinya harus mencari tahu atau mengidentifikasi informasi apa yang harus diproses, seperta apa fungsi dan perfomansi yang diinginkan, seperti perilaku sistem yang diinginkan apa kriteria validasi yang dibutuhkan untuk mendefinisikan sistem. 2. Tahapan pengembangan yang fokus dengan “How” yang artinya selama tahap pengembangan perangkat lunak seorang perekayasa perangkat lunak (software engineer) berusaha untuk mendefinisikan bagaimana data distrukturkan
dan
bagaimana
fungsi-fungsi
yang
dibutuhkan
diimplementasikan di dalam arsitektur perangkat lunak, bagaimaan detail prosedural dimplementasikan, bagaimana karakter antarmuka tampilan, bagaimana desain ditranslasikan ke bahasa pemrograman, dan bagaimana pengujian akan dijalankan. 3. Tahapan
pendukung
(support
pashe)
fokus
pada
perubahan
yang
terasosiasikan pada perbaikan kesalahan (error), adaptasi yang dibutuhkan pada lingkungan perangkat lunak yang terlibat, dan perbaikan yang terjadi akibat perubahan pelanggan (customer). Fase pendukung terdiri dari empat tipe perubahan antara lain: a. Koreksi (correction), pemeliharaan dengan melakukan perbaikan terhadap kecacatan perangkat lunak. b. Adaptasi (adaptation), pemeliharaan adaptasi merupakan tahap untuk memodifikasi
perangkat
lunak
guna
mengakomodasi
perubahan
lingkungan luar di mana perangkat lunak dijalankan. c. Perbaikan (enhancement), pemeliharaan perfektif atau penyempurnaan melakukan ekstensi atau penambahan pada kebutuhan fungsional sebelumnya.
9
d. Pencegahan (prevention), pemeliharaan pencegahan (preventive) atau sering
disebut
juga
dengan
rekayasa
ulang
sistem
(software
reengineering) harus dikondisikan untuk mampu melayani kebutuhan pemakainya (user).
2.1.2
Proses Rekayasa Perangkat Lunak
Perkembangan teknologi informasi saat ini sangat mempermudah dan mempercepat proses rekayasa perangkat lunak dengan adanya bermacam-macam tools desain, tools pengembangan seperti IDE (Integrated Development Environment), application framework, dan lain-lain. Rekayasa perangkat lunak terdiri dari beberapa kegiatan yang harus dilakukan. Jika tahapan-tahapan tersebut tidak dilalui dengan baik, hampir bisa dipastikan perangkat lunak yang dihasilkan tidak akan mempunyai kualitas yang baik. Proses perangkat lunak (software process) adalah sekumpulan aktifitas yang memiliki tujuan untuk mengembangkan atau mengubah perangkat lunak. Secara umum proses perangkat lunak terdiri dari: •
Pengumpulan Spesifikasi (Specification) Mengetahui apa saja yang harus dapat dikerjakan sistem perangkat lunak dan batasan pengembangan perangkat lunak.
•
Pengembangan (Development) Pengembangan perangkat lunak untuk menghasilkan sistem perangkat lunak.
•
Validasi (Validation) Memeriksa apakah perangkat lunak sudah memenuhi keinginan pelanggan.
•
Evolusi (Evolution) Mengubah pelanggan.
perangkat
lunak
untuk
memenuhi
perubahan
kebutuhan
10
2.1.3
Model Waterfall
Pada rekayasa perangkat lunak, banyak model yang telah dikembangkan untuk membantu proses pengembangan perangkat lunak. Salah satu model yang sangat populer dan digunakan sampai saat ini adalah model waterfall atau sering disebut juga model sekuensial linier.
Gambar 2.1
Model waterfall
Sebuah pendekatan kepada pengembangan perangkat lunak yang sistematik dan sekuensial yang mulai pada tinggkat dan kemajuan sistem pada seluruh communication, planning, modeling, construction, deployment (Roger S. Pressman, Ph.D. , Software Engineering : A Practitioner’s Approach 7th ed, 2010:41). Dimodelkan setelah siklus rekayasa konvensional, model sekuensial linier melingkupi aktivitas-aktivitas sebagai berikut : 1. Communication Karena perangkat lunak selalu merupakan bagian dari sebuah sistem yang lebih besar, kerja dimulai dengan membangun syarat dari semua elemen sistem dan mengalokasikan beberapa subset dari kebutuhan ke perangkat lunak tersebut. 2. Planning Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khususnya pada perangkat lunak. Untuk memahami sifat program yang dibangun, perekayasaan perangkat lunak (analisis) harus memahami domain informasi, tingkah laku, unjuk kerja dan antar muka yang diperlukan.
11
3. Modeling Desain perangkat lunak sebenarnya adalah proses multi langkah yang berfokus pada empat atribut sebuah program yang berbeda: struktur data, arsitektur perangkat lunak, representasi interface, dan detail (algorima) prosedural. Proses desain menerjemahkan syarat/kebutuhan ke dalam sebuah representasi perangkat lunak yang dapat diperkirakan demi kualitas sebuah representasi perangkat lunak yang dapat diperkirakan demi kualitas sebelum dimulai
pemunculan
kode.
Sebagaimana
persyaratan,
desain
didokumentasikan dan menjadi bagian dari konfigurasi perangkat lunak. 4. Construction Desain harus diterjemahkan kedalam bentuk mesin yang bisa dibaca. Langkah pembuatan kode melakukan tugas ini. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis. Proses pengujian berfokus pada logika internal perangkat lunak, memastikan bahwa semua peryataan di uji, dan eksternal fungsional yaitu mengarahkan pengujian untuk menemukan kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktul yang sesuai dengan hasil yang dibutuhkan. 5. Deployment Perangkat lunak akan mengalami perubahan setelah disampaikan kepada pelanggan (perkecualian yang mungkin adalah perangkat lunak yang dilekatkan). Perubahan akan terjadi karena kesalahan-kesalahan ditentukan, karena perangkat lunak harus disesuaikan untuk mengakomodasi perubahanperubahan di dalam ling-kungan eksternalnya (contohnya perubahan yang dibutuhkan sebagai akibat dari perangkat peripheral atau sistem operasi yang baru), atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja. Pemeliharaan perangkat lunak mengaplikasikan lagi setiap tahap program sebelumnya dan tidak membuat yang baru lagi.
12
2.2
2.2.1
UNIFIED MODELING LANGUAGE
Defenisi Dan Sejarah UML
Unified Modeling Language (UML) adalah keluarga notasi grafis yang didukung oleh meta-model tunggal, yang membantu pendeskripsian dan desain sistem perangkat lunak, khususnya sistem yang dibangun menggunakan pemrograman berorientasi objek (OO) (Martin Fowler, UML Distilled 3th ED. , Panduan Singkat Bahasa Pemodelan Objek Standar, 2005:1). Sebuah bahasa yang berdasarkan grafik atau gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pegembangan software berabasis OO (Object-Oriented). UML memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema basis data, dan komponen-komponen yang diperlukan dalam sistem software. Pendekatan analisa dan rancangan dengan menggunakan model OO mulai diperkenalkan sekitar pertengahan 1970 hingga akhir 1980 dikarenakan pada saat itu aplikasi software sudah meningkat dan mulai komplek. Jumlah yang menggunakan metoda OO mulai diaplikasikan antara 1989 hingga 1994, seperti halnya oleh Grady Booch dari Rational Software Co., dikenal dengan OOSE (Object-Oriented Software Engineering), serta James Rumbaugh dari General Electric, dikenal dengan OMT (Object Modelling Technique). Kelemahan saat itu disadari oleh Booch maupun Rumbaugh adalah tidak adanya standar penggunaan model berbasis OO, ketika mereka bertemu ditemani rekan lainnya Ivar Jacobson dari Objectory mulai mendiskusikan untuk mengadopsi masing-masing pendekatan metoda OO untuk membuat suatu model bahasa yang seragam yang disebut UML (Unified Modeling Language) dan dapat digunakan oleh seluruh dunia. Secara resmi UML dimulai pada bulan oktober 1994, ketika Rumbaugh dan Boch bergabung untuk membuat sebuah project pendekatan metoda yang
13
seragam dari masing-masing metoda mereka. Saat itu baru dikembangkan draf metoda UML version 0.8 dan diselesaikan serta release pada bulan Oktober 1995. Bersamaan dengan saat itu, Jacobson bergabung dan UML tersebut di perkaya ruang lingkupnya dengan metoda OOSE sehingga muncul release version 0.9 pada bulan Juni 1996. Hingga saat ini sejak Juni 1998 UML version 1.3 telah di perkaya dan direspons oleh OMG (Object Management Group), Anderson Consulting, Ericsson, Platinum Technology, ObjectTime Limited, dll. UML adalah standar dunia yang dibuat oleh Object Management Group (OMG), sebuah badan yang bertugas mengeluarkan standar-standar teknologi objectoriented dan sorftware component.
2.2.2
Konsep Dasar UML
Pada UML 2.3 terdiri dari 13 macam diagram yang dikelompokkan daalm 3 kategori. Pembagian kategori dan macam-macam diagram tersebut dapat dilihat pada gambar dibawah.
Gambar 2.2
Diagram UML
14
Berikut ini penjelasan singkat dari pembagian kategori tersebut. •
Structure diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan suatu struktur statis dari sistem yang dimodelkan.
•
Behavior diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan kelakuan sistem atau rangkaian perubahan yang terjadi pada sebuah sistem.
•
Interaction diagrams yaitu kumpulan diagram yang digunakan untuk menggambarkan interaksi sistem dengan sistem lain maupun interaksi atarsubsistem pada suatu sistem. Untuk mengusai UML sebenarnya cukup dua hal yang perlu diperhatikan,
yaitu mengusai pembuatan diagram UML dan mengusai langkah-langkah dalam analisa dan pengembangan dengan UML.
2.2.3
Diagram Kelas
Diagram kelas mendeskripsikan jenis-jenis objek dalam sistem dan berbagai macam hubungan statis yang terdapat di antara mereka (Martin Fowler, UML Distilled 3th ED. , Panduan Singkat Bahasa Pemodelan Objek Standar, 2005: 53). Diagram kelas juga menunjukkan properti dan operasi sebuah kelas dan batasan-batasan yang terdapat dalam hubungan-hubungan objek tersebut. Kelas memiliki tiga area pokok : 1. Nama (dan stereotype) 2. Atribut 3. Metoda Atribut dan metoda dapat memiliki salah satu sifat berikut : − Private, tidak dapat dipanggil dari luar kelas yang bersangkutan − Protected, hanya dapat di panggil oleh kelas yang bersangkutan dan anakanak yang mewarisinya − Public, dapat dipanggil oleh siapa saja
15
Gambar 2.3
Diagram kelas
Kelas dapat merupakan implementasi dari sebuah interface, yaitu kelas abstrak yang hanya memiliki metoda. Interface tidak dapat langsung diinstansiasikan, tetapi harus diimplementasikan dahulu menjadi sebuah kelas. Dengan demikian interface mendukung resolusi metoda pada saat run-time. Hubungan Antar Kelas 1. Asosiasi, yaitu hubungan statis antar kelas. Umumnya menggambarkan kelas yang memiliki atribut berupa kelas lain, atau kelas yang harus mengetahui eksistensi kelas lain. Panah navigability menunjukkan arah query antar kelas. 2. Agregasi, yaitu hubungan yang menyatakan bagian. 3. Pewarisan, yaitu hubungan hirarki antar kelas. Kelas dapat diturunkan dari kelas lain dan mewarisi semua atribut dan metoda kelas asalnya dan menambahkan fungsionalitas baru, sehingga ia di sebut anak dari kelas yang diwarisinya. Kebalikan dari pewarisan adalah generalisasi. 4. Hubungan dinamis, yaitu rangkaian pesan (message) yang di-passing dari satu kelas kepada kelas lain. Hubungan dinamis dapat digambarkan dengan menggunakan sequence diagrams.
16
Gambar 2.4
2.2.4
Hubungan antar kelas
Diagram Objek
Diagram objek merupakan sebuah gambaran tentang objek-objek dalam sebuah sistem pada satu titik waktu. Karena lebih menonjolkan perintah-perintah daripada kelas, diagram objek lebih sering disebut sebagai sebuah diagram perintah.
Gambar 2.5
Diagram objek
17
2.2.5
Diagram Komponen
Diagram komponen di buat untuk menunjukkan organisasi dan ketergantungan di antara kumpulan komponen dalam sebuah sistem. Diagram komponen fokus pada komponen sistem yang dibutuhkan dan ada di dalam sistem. Diagram komponen juga dapat digunakan untuk memodelkan hal-hal berikut: •
Source code program perangkat lunak
•
Komponen executable yang dilepas ke user
•
Basis data secara fisik
•
Sistem yang harus beradaptasi dengan sistem lain
•
Framework sistem
2.2.6
Composite Structure Diagrams
Composit struktur diagrams adalah jenis diagram struktur statis, yang menunjukkan struktur internal kelas dan kolaborasi struktur ini menjadi mungkin. Diagram ini dapat mencakup komponen internal, port dimana bagian berinteraksi satu sama lain atau sebagai contoh kelas berinteraksi dengan bagian-bagian dan dengan dunia luar, dan konektor antara bagian atau port. Struktur komposit adalah seperangkat elemen yang saling berkolaborasi saat runtime untuk mencapai beberapa tujuan. Setiap elemen memiliki peran didefinisikan dalam kolaborasi ini.
18
Gambar 2.6
2.2.7
Composit struktur diagrams
Package Diagrams
Package diagrams merupakan kumpulan dari kelas. Penggambaran package diagrams mirip dengan simbol folder dalam Microsoft Windows. Salah satu manfaat package adalah kemampuannya untuk digunakan pada komponen lainnya. Dalam menggunakan package sistem lain dikenal dua istilah yaitu: 1. Import Package: Meminjam package lain yang bertipe public. 2. Access Package: seperti import hanya saja tipe package berubah menjadi private.
2.2.8
Deployment Diagrams
Deployment diagrams menunjukkan konfigurasi komponen dalam proses eksekusi
aplikasi.
Deployment
diagrams
juga
dapat
digunakan
untuk
memodelkan hal-hal berikut: •
Sistem tambahan (embedded system) yang menggambarkan rancangan device, node, dan hardware.
•
Sistem client/server
•
Sistem terdistribusi murni
•
Rekayasa ulang aplikasi
19
2.2.9
Use Case Diagrams
Diagram use case merupakan pemodelan untuk kelakuan (behavior) sistem informasi yanag akan dibuat. Use case mendeskripsikan sebuah interaksi antara satu atau lebih aktor dengan sistem informasi yang akan dibuat. Secara kasar, use case digunakan untuk mengetahui fungsi apa saja yang ada di dalam sebuah sistem informasi dan siapa saja yang berhak menggunakan fungsi-fungsi itu. Syarat penamaan pada use case adalah nama didefinisikan sesimpel mungkin dan dapat dipahami. Ada dua hal utama pada use case yaitu pendefinisian apa disebut aktor dan use case. •
Aktor merupakan orang, proses, atau sistem lain yang berinteraksi dengan sistem informasi yang akan dibuat di luar sistem informasi yang akan dibuat itu sendiri, jadi walaupun simbol dari aktor adalah gambar orang, tapi aktor belum tentu merupakan orang.
•
Use case merupakan fungsionalitas yang disediakan sistem sebagai unit-unit yang saling bertukar pesan antar unit atau aktor.
Gambar 2.7
Use case diagrams
20
2.2.10
Activity Diagrams
Activity diagrams menggambarkan workflow (aliran kerja) atau aktivitas dari sebuah sistem atau proses bisnis. Yang perlu diperhatikan disini adalah bahwa diagram aktivitas menggambarkan aktivitas sitem bukan apa yang dilakukan aktor, jadi aktivitas yang dapat dilakukan oleh sistem. Diagram aktivitas juga banyak digunakan untuk mendefinisikan hal-hal berikut: •
Rancangan proses bisnis di mana setiap urutan aktivitas yang digambarkan merupakan proses bisnis sistem yang didefinisikan.
•
Urutan atau pengelompokan tampilan dari sistem/user interface di mana setiap aktivitas dianggap memiliki sebuah rancangan antarmuka tampilan
•
Rancanan pengujian di mana setiap aktivitas dianggap memerlukan sebuah pengujian yang perlu didefinisikan kasus ujinya. Diagram aktivitas menggunakan segiempat dengan sudut membulat untuk
menggambarkan aktivitas. Decision digunakan untuk menggambarkan behaviour pada kondisi tertentu. Untuk mengilustrasikan proses-proses paralel (fork dan join) digunakan titik sinkronisasi yang dapat berupa titik, garis horizontal atau vertikal.
21
Gambar 2.8
2.2.11
Diagram aktivitas
Sequence Diagrams
Sequence diagrams menggambarkan kelakuan objek pada use case dengan mendeskripsikan waktu hidup objek dan message yang dikirimkan dan diterima antara objek. Oleh karena itu untuk menggambar sequence diagrams maka harus diketahui objek-objek yang terlibat dalam sebuah use case beserta metode-metode yang dimiliki kelas yang diinstansiasi menjadi objek itu. Banyaknya sequence diagrams yang harus digambar adalah sebanyak pendefinisian use case yang memiliki proses sendiri atau yang penting semua use case yang telah didefinisikan interaksi jalannya pesan sudah dicakup pada
22
sequence diagrams sehingga semakin banyak use case yang didefinisikan maka sequence diagrams yang harus dibuat juga semakin banyak. Masing-masing objek, termasuk aktor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Pada fase desain berikutnya, message akan dipetakan menjadi operasi/metoda dari kelas. Activation bar menunjukkan lamanya eksekusi sebuah proses, biasanya diawali dengan diterimanya sebuah message.
Gambar 2.9
2.2.12
Sequence diagrams
Communication Diagrams
Diagram komunikasi menggambarkan interaksi antar objek/bagian dalam bentuk urutan pengiriman pesan. Diagram komunikasi merepsentasikan informasi yang di peroleh dari diagram kelas, diagram sekuen, dan diagram use case untuk mendeskripsikan gabungan antara struktur statis dan tingkah laku dinamis dari suatu sistem. Diagram komunikasi mengelompokkan pada kumpulan sequence diagrams menjadi sebuah diagram. Dalam diagram komunikasi yang dituliskan
23
adalah operasi/metode yang dijalankan antar objek yang satu dan objek lainnya secara keseluruhan, oleh karena itu dapat diambil dari jalannya interaksi pada semua sequence diagrams. Penomoran metode dapat dilakukan berdasarkan urutan dijalankannya metode/operasi di antara objek yang satu dengan objek lainnya atau objek itu sendiri.
2.2.13
Timing Diagrams
Timing diagrams merupakan diagram yang fokus pada penggambaran terkait batasan waktu. Timing diagaram digunakan
untuk menggambarkan
tingkah laku sistem dalam periode waktu tertentu. Timing diagrams biasanya digunakan untuk mendeskripsikan operasi dari alat digital karena menggambaran secara visual akan lebih mudah dipahami daripada dengan kata-kata.
2.2.14
Interaction Overview Diagrams
Interaction overview diagrams mirip dengan diagram aktivitas yang berfungsi untuk menggambarkan sekumpulan urutan aktivitas. Interaction Overview diagrams adalah bentuk aktivitas diagram yang setiap titik merepresentasikan diagram interaksi. Interaksi diagram dapat meliputi sequence diagrams, diagram komunikasi, intraction overview diagrams, dan timing diagrams. Hampir semua notasi pada interaction overview diagrams sama dengan notasi pada diagram aktivitas. Sebagai contoh initial, final, decision, merge, fork, dan join nodes sama seperti pada diagram aktivitas. Tambahan pada interaction overview adalah interaction occurrence dan interaction element. •
Interaction Occurrence
24
Interaction occurrence atau kejadian interaksi adalah referensi untuk diagram interaksi yang ada. Sebuah interation occurrence ditunjukkan sebagai frame referensi (frame dengan tulisan “ref” di pojok kiri atas). Nama diagram yang sedang direferensikan ditunjukkan pada tengah frame. •
Interaction Element Interaction element atau elemen interaksi mirip interaction occurrence. Perbedaannya adalah di dalam interaction element menampilkan isi diagram yang direferensikan secara langsung, sedangkan interaction occurrence hanya menampilkan nama diagram yang direferensikan.
2.3
2.3.1
MySQL
Sejarah MySQL
MySQL dikembangkan oleh sebuah perusahaan Swedia bernama MySQL AB, yang kala itu bernama TcX DataKonsult AB, sejak sekitar 1994–1995, meski cikal bakal kodenya bisa disebut sudah ada sejak 1979. Tujuan mula-mula TcX membuat MySQL pada waktu itu juga memang untuk mengembangkan aplikasi Web untuk klien—TcX adalah perusahaan pengembang software dan konsultan database. Kala itu Michael Widenius, atau “Monty”. MySQL versi 1.0 dirilis Mei 1996 secara terbatas kepada empat orang. Baru di bulan Oktober versi 3.11.0 dilepas ke publik. Versi publik pertama, yang hanya berjalan di Linux dan Solaris. Versi awal MySQL ini, meski sudah bisa di pakai untuk aplikasi Web sederhana belum memadai sama sekali untuk aplikasi bisnis. Contohnya, JOIN sederhana sudah ada, tapi tidak ada HAVING baru di bulan Desember ditambahkan. Sudah ada tipe data TIMESTAMP dan kolom autoupdate, tapi tidak ada system-generated number (Sequence) baru di akhir
25
1996 juga ditambahkan modifier kolom AUTO_INCREMENT. Sudah ada LIMIT tapi GROUP BY dan ORDER BY memiliki keterbatasan. Barulah di versi-versi akhir 3.22 sepanjang 1998 – 1999 MySQL menjadi semakin popular dan dilirik orang karena stabilitasnya sudah baik dan kecepatannya meningkat. MySQL sudah tersedia di berbagai platform, termasuk windows.
2.3.2
Memahami Basis Data MySQL
MySQL adalah perangkat lunak sistem manajemen basis data atau Database Management System (DBMS) yang multithread dan multi-user. MySQL tersedia sebagai perangkat lunak gratis di bawah lisensi General Public Licencse (GPL). MySQL merupakan turunan dari salah satu konsep utama di dalam basis data SQL (Structured Query Language). SQL dapat digunakan untuk mendefinisikan struktur data, memodifikasi data pada basis data, menspesifikasi batasan keamanan (security), hingga ke pemeliharaan kinerja basis data dan pengaturan pemrosesan pada CPU secara pararel (Adi Nugroho, ST., MSI. Konsep Pengembangan Sistem Basis Data, 2004:242). Kehandalan suatu sistem basis data (DBMS) dapat diketahui dari cara kerja optimizer-nya dalam melakukan perintah-perintah SQL, yang di buat oleh user maupun programprogram aplikasinya Basis data secara sederhana, dapat di sebut sebagai gudang data. Secara teori, basis data adalah kumpulan data atau informasi yang kompleks, data-data tersebut di susun menjadi beberapa kelompok dengan tipe data yang sejenis (disebut tabel), dimana setiap datanya dapat saling berhubungan satu sama lain atau dapat berdiri sendiri, sehingga mudah diakses (Bunafit Nugroho, Panduan Lengkap Menguasai Perintah SQL, 2007:1) .
26
2.3.3
Basis data Server MySQL
MySQL merupakan basis data server yang awalnya hanya berjalan pada sistem Unix dan Linux. Seiring berjalannya waktu dan banyaknya perminat yang menggunakan basis data ini, MySQL merilis versi yang dapat di instal pada hampir semua platform, termasuk Windows. Perbedaan MySQL dan SQL, SQL Merupakan kependekan dari kata ”Structured Query Language”. Jadi SQL adalah bahasa permintaan yang melekat pada satu basis data atau Database Management System tertentu, sedangkan MySQL merupakan basis data servernya. Dengan kata lain, MySQL merupakan DBMS-nya dan SQL adalah perintah atau bahasa yang melekat didalamnya.
2.3.4
Memahami Perintah SQL
SQL merupakan sebuah bahasa permintaan yang melekat pada suatu DBMS termasuk MySQL. Perintahnya dapat disebut dengan query. Dalam penggunaanya, perintah SQL dikategorikan menjadi tiga sub perintah, yaitu DDL (Data Definition Language), DML (Data Manipulation Language), dan DCL (Data Control Language).
2.3.4.1
Data Definition Language (DDL)
Data Definition Language (DDL) merupakan sub bahasa SQL yang digunakan untuk membangun kerangka basis data. Ada tiga perintah termasuk dalam DDL, yaitu: •
CREATE: Perintah ini digunakan untuk membuat, termasuk diantaranya membuat basis data baru, tabel baru, view baru, dan kolom
27
•
ALTER: Perintah ini digunakan untuk mengubah struktur tabel yang telah dibuat. Perkerjaannya mencakup mengganti nama tabel, menambah kolom, mengubah kolom, menghapus kolom, maupun memberikan atribut pada kolom.
• 2.3.4.2
DROP: Perintah ini digunakan untuk menghapus basis data dan tabel. Data Manipulation Language (DML)
Data Manipulation Language (DML) merupakan sub bahasa SQL yang digunakan untuk memanipulasi data dalam basis data yang telah terbuat. Perintah yang digunakan, di antaranya: •
INSERT: Perintah ini digunakan untuk mengambil data atau memasukkan data baru ke dalam tabel. Penggunaannya setelah basis data dan tabel selesai dibuat.
•
SELECT:
Perintah
ini
digunakan
untuk
mengambil
data
atau
menampilkan data dari satu tabel atau beberapa tabel dalam relasi. Data yang diambil dapat ditampilkan dalam layar promt MySQL secara langsung maupun ditampilkan pada tampilan aplikasi. •
UPDATE: Perintah ini digunakan untuk memperbaharui data lama menjadi data terkini. Jika memiliki data yang salah atau kurang up to date dengan kondisi sekarang, maka dapat diubah isi datanya menggunakan perintah UPDATE.
•
DELETE: Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data yang di hapus merupakan data yang sudah tidak diperlukan lagi. Pada saat menghapus data, perintah yang telah dijalankan tidak dapat digagalkan, sehingga data yang telah hilang tidak dapat dikembalikan lagi.
28
2.3.4.3
Data Control Language (DCL)
Data Control Language (DCL) merupakan sub bahasa SQL yang digunakan untuk melakukan pengontrolan data dan server basis datanya. Perintah DCL, di antaranya: •
GRAND: Perintah ini digunakan untuk memberikan hak/izin akses oleh administrator (pemilik utama) server kepada user (pengguna biasa). Hak akses tersebut berupa hak membuat (CREATE), mengambil (SELECT), menghapus (DELETE), mengubah (UPDATE) , dan hak khusus berkenaan dengan sistem basis datanya.
•
REVOKE: Perintah ini memiliki kegunaan terbalik dengan GRAND, yaitu untuk menghilangkan atau mencabut hak akses yang telah diberikan kepada user oleh administrator.
2.4
2.4.1
MICROSOFT VISUAL BASIC.NET
Mengenal Visual Basic .NET
Visual Basic .NET adalah teknologi pemrograman Microsoft yang dapat digunakan untuk membuat aplikasi di lingkungan kerja berbasis Windows (Dhewiberta Hardjono, Pemprograman Visual Basic.Net 2005, 2006). Aplikasi form Web ASP .NET, layanan Web XML dan aplikasi mobil seperti Windows Mobile (Pocket PC) dan smart divice berbasis Windows CE lainnya, Visual Basic .NET dibangun diatas .NET Framework.
29
2.4.2
DotNET Framework
Microsoft pertama kali mengumumkan platform .NET pada tahun 1999. Teknologi .NET awalnya ditempatkan sebagai dasar membangun dan menggunakan layanan web Extensible Markup Language (XML). Layanan web XML memungkinkan berbagai jenis aplikasi-aplikasi Windows based atau Web based yang berjalan pada bebagai jenis sistem komputer dapat mengambil data dari berbagai jenis server melalui internet. Contoh–contoh protokol standar tersebut adalah: SOAP, HTTP, dan SMTP. Melalui protokol tersebut, layanan web XML dimungkinkan untuk menampilkan data melalui internet dengan perubahan kecil pada kode atau tanpa perubahan. Platform Microsoft .NET adalah model yang dapat digunakan untuk pengembangan aplikasi yang dapat dibuat dan dijalankan tanpa peduli apa device yang digunakan, koordinasi antar aplikasi, juga dimungkinkan tanpa peduli lokasi di local harddisk, local area network, atau di internet. .NET Framework sebenarnya terdiri dari dua komponen utama yaitu CLR (Common Language Runtime) dan FCL (Framework Class Library).
2.4.2.1
Common Language Runtime
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 kode, melakukan verifikasi terhadap keamanan kode, menentukan hak akses dari kode, melakukan kompilasi kode, dan berbagai layanan sistem 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. CLR akan melakukan kompilasi kodekode aplikasi kita menjadi bahasa assembly MSIL (Microsoft Intermediate
30
Language). Proses kompilasi ini sendiri dilakukan oleh komponen yang bernama Just In Time (JIT).
Gambar 2.10 Common Language Runtime
2.4.2.2
.NET Framework Class Library
.NET Framework Class Library atau sering juga disebut Base Case Library (BCL) adalah koleksi dari reusable tipe yang sangat banyak dan terintegrasi secara melekat dengan CLR. Kumpulan class library ini sangat berguna untuk pengembangan aplikasi karena developer tidak perlu membuat semuanya dari awal karena sudah disediakan oleh .NET, seperti kelas untuk membuat aplikasi berbasis windows, kelas untuk membuat objek-objek koleksi, kelas untuk koneksi dengan basis data (ADO.NET), kelas untuk mengembangkan aplikasi berbasis web, kelas WPF (Windows Presentation Foundation), dan masih banyak lagi.
31
2.4.3
Integrated Development Environmet
Integrated Development Environment (IDE) adalah sebutan untuk lingkungan pengembangan suatu bahasa pemrograman, dalam artian umum ialah interface dari bahasa pemrograman tersebut. Selain interface, IDE juga memiliki tool-tool yang membantu pengembangan seperti debugger. Beberapa tool yang terdapat pada IDE adalah: •
General IDE Tools General IDE Tools menyediakan interface dan kelengkapannya yag dapat digunakan oleh semua bahasa pemrograman pendukungnya seperti start page, tombol-tombol navigasi, web browser, auto hide, commond windows, dan tabbed document.
•
Application Template Application Template menyediakan informasi penuntun bagi pengembangan arsitektural bahasa pemrograman untuk merangkai programnya sehingga tidak terjadi kesalahan konsep desain pada bahasanya
•
Edit Tools Edit Tools menyediakan tools pembatu untuk membangun desain bahasa pemrograman serperti: code editor, HTML designer, CSS editor, XML editor, dan object browser.
•
Debug Tools Debug Tools memberikan kemampuan debugger yang terintegrasi, untuk men-debug desain bahasa yang telah dibangun
•
Deployment Tools Deployment Tools menyediakan fungsi deployment yang tersedia untuk mendeploy desain bahasa yang telah selesai di-debug menjadi Windows Installer atau Merge Modul.
•
Macro and Automation Object Model Tools
32
Macro and Automation Object Model Tools menyediakan informasi tentang pencatatan makro dan peningkatan model objek automaton selama proses pembuatan desain 2.5
SMART CARD
Smart card didefinisikan sebagai sebuah kartu dengan IC (Integrated Circuit) yang tertanam didalamnya, di mana IC tersebut digunakan untuk melakukan proses
informasi, juga memiliki media penyimpanan dengan
kapasitas tertentu http://en.wikipedia.org/wiki/Contactless_smart_card .
2.5.1
Sejarah Smart Card
Perkembangan smart card di mulai pada awal tahun 50-an di Amerika Serikat. Kartu pembayaran pertama yang di pergunakan untuk umum dikeluarkan oleh Dinner Club pada tahun 50-an. Kemajuan yang sangat besar di dalam mikroelektronika
pada
tahun
1970-an
memungkinkan
integrasi
tempat
penyimpanan data dan logika untuk melakukan proses di atas chip. Gagasan rangkaian terintegrasi pada satu kartu identitas ke dalam satu aplikasi penyimpanan dipatenkan oleh penemu Jerman Jurgen Dethloff dan Helmut Grotrupp pada permulaan tahun 1968. Permohonan paten serupa diikuti oleh Kunitaka Arimura di Jepang pada tahun 1970. Terobosan terbesar smart card secara luas terjadi pada tahun 1984, dimana French PTT(Postal and Telecomunication Services Agency) sukses menggunaan percobaan telephone card, yang digunakan oleh penduduk Perancis sebagai alat pembayaran telepon.
33
2.5.2
Jenis-jenis Smart Card
Secara umum ada 3 jenis smart card yang digunakan: 1. Memory Card, ini adalah jenis pertama yang dikenal orang dan digunakan pertama kali untuk kartu telepon. Jenis kartu ini meyimpan data yang telah dipreload oleh manufakturnya, kemudian mesin pembaca akan mengurangi isi variabel yang disimpannya. 2. Microprosessor Card, kartu jenis ini dapat di program dengan bebas untuk keperluan apa saja. Hal ini dimungkinkan dengan adanya mikroprosesor dalam chip. 3. Contactless Card, kartu jenis ini mentransfer data tanpa ada kontak elektrik antara kartu dan terminalnya.
2.5.3
MIFARE 1K
Pembuatan uang digital ini menggunakan smart card MIFARE 1K dengan teknologi contactless yang memiliki kemampuan menyimpan transaksi tanpa melakukan pengolahan data. Contactless smart card berkomunikasi dengan reader dan Radio Frequency Identification (RFID). Keuntungan menggunakan contacless smart card bekerja lebih praktis, terutama untuk transaksi yang membutuhkan proses cepat. Contactless smart card dalam pengoperasiannya tanpa menggunakan baterai, memiliki induktor yang build-in untuk menangkap sinyal frekuensi radio, dan menggunakannya sebagai sumber tenaga pada IC. MIFARE 1K menggunakan Standard ISO 14443 Type A, dengan frekuensi 13.56 MHz dan memiliki kapasitas penyimpanan 1024 byte. MIFARE 1K terdiri dari 16 sektor, masing-masing sektor berisi 4 blok dan mempunyai kapasitas 16 byte/blok. Sektor kartu terbagi menjadi 2 bagian yaitu blok 0 - 2 sebagai blok data dan blok 3 untuk sektor trailer digunakan untuk keamanan dan pengkondisian sektor, masing-masing sektor diproteksi oleh dua key berbeda (key
34
A dan key B) (http://www.nxp.com/documents/data_sheet/MF1S503x.pdf ,page 8 - 14).
Gambar 2.11 Struktur sektor dan block
2.5.4
Keamanan Kartu
Pada kartu Mifare 1K dilengkapi dengan kemanan: 1. Login yang memiliki 2 key. 2. Akses kondisi yang digunakan untuk mengkondisikan kartu sesuai dengan kebutuhan sistem, pada akses kondisi terdapat 2 pengkondisian : a. Akses kondisi Sector Trailer b. Akses kondisi Data Block Penulisan login dan akses kondisi akan di masukkan di blok 3 yang disebut dengan sector trailer.
35
Tabel 2.1
Sector trailer
Penulisan data blok dan sector trailer didefinisikan oleh 3 bits (lihat table 2.2) dimana penempatanya inverted dan non-inverted (lihat gambar 2.13). Setelah akses kondisi sector trailer dan data blok ditentukan di setiap bits. Bits-bits tersebut akan dirubah ke dalam hexadecimal dan akan ditulis ke dalam kartu sebagai akses kondisi kartu.
Tabel 2.2
Pengunaan akses bits untuk setiap sektor
Gambar 2.12 Penempatan akses bits dalam sector trailer
36
2.5.4.1
Akses Kondisi Sector Trailer
Akses kondisi sector trailer untuk mengkondisikan key A dan key B serta akses bits. Otorisasi pengunaan key di tentukan dalam akses kondisi sector trailer pada awal register kartu.
Tabel 2.3
2.5.4.2
Tabel pengkondisian untuk sektor trailer
Akses Kondisi Data Blok
Akses kondisi data blok digunakan untuk mengkondisikan blok pada setiap sektor. Akses kondisi pada data blok (blok 0…2) untuk baca dan tulis tergantung kebutuhan sistem yang akan dibuat. •
Read/write : Pengoperasian untuk baca dan tulis
•
Value block : Penambahan untuk nilai operasi increment, decrement, transfer dan restore. Contoh seperti penulisan 001 hanya dapat membaca dan decrement,
sedangkan untuk 110 increment dapat dilakukan menggunakan key B.
37
Tabel 2.4
2.6
Akses kondisi untuk data blok
CARD READER
ACR120 merupakan produk dari Advanced Card System Ltd. Card reader dikembangkan untuk kebutuhan teknologi contactless card yang berjalan pada frekuensi 13,56 MHz, dengan jarak operasi maksimum ± 5 cm (tergantung tipe tag yang di pakai). Adapun jenis kartu (tag) yang dapat dibaca oleh card reader ini antara lain Mifare 1K yang memenuhi standar ISO 14443 sebagai contactless card. Terdapat 4 part pada ISO 14443 : − Part 1: Physical characteristics − Part 2: Radio frequency power and signal interface − Part 3: Initialization and anticollision − Part 4: Transmission protocol Cara kerja tag tidak memiliki energi, dimana card reader akan memodulasi medan magnet melalui antena yang terdapat di dalam card reader dan akan di terima oleh chip kartu serta mengirimkan sinyal kembali. Data yang diterima reader akan diteruskan menuju host komputer atau server basis data. Data yang masuk pada host komputer akan diolah sesuai dengan program aplikasi yang ada di komputer.
38
Reader yang digunakan oleh RFID memiliki bagian antena berfungsi untuk transmisi frekuensi. RF modul yang mengatur frekuensi dan control modul memproses data.
Gambar 2.13 Mifare dan Card Reader
Proses pembacaan kartu dimulai dari kartu membaca serial number kartu jika ada banyak kartu maka akan di pilih salah satu oleh card reader. Selanjutnya akan otentikasi terhadap kartu. Selelah login berhasil maka dapat dilakukan proses pengolahan kartu dari membaca kartu, menulis kartu, increment, decrement, copy.
Gambar 2.14 Alur dan pemetaan fungsi card reader
39
Proses komunikasi antara kartu dan dan card reader mempunyai proses struktur pesan, dibawah ini struktur pesan:
1. Login Komunikasi pesan antara kartu dan card reader untuk login kedalam sektor kartu.
Tabel 2.5 Command CMD L
Struktur pesan login
DATA Sector (1 byte) Keytype (1 byte) AA otentikasi menggunakan keytpe A BB otentikasi menggunakan keytpe B Key (6 byte)
Answer ANS L : login sukses N : no TAG F : login fail, key wrong E : invalid key format
DATA None None None None
2. Select Komunikasi pesan antara kartu dan card read untuk menentukan kartu.
Tabel 2.6 Command CMD S
DATA None
Struktur pesan select Answer ANS None N : No TAG
DATA TAG Type Identification (1 byte) None
40
3. Read Komunikasi pesan antara kartu dan card read untuk membaca kartu.
Tabel 2.7 Command CMD r : read block rv : read value block re : read reader EEPROM
Struktur pesan read Answer ANS None
DATA Block Block register (1 byte)
N : no TAG
DATA read block : Data (16 byte) read value : Value (4 byte) None
I : no value block None F : read failure None 4. Write Komunikasi pesan antara kartu dan card read untuk menulis kartu.
Tabel 2.8 Command CMD w : write block
DATA block (1 byte)
Struktur pesan write Answer ANS None
data (16 byte)
wv : write value block
block (1 byte) value (4 byte)
X : unable to read after write U : read after write error N : no TAG F : write failure
DATA write block : menulis data (16 byte) write value : menulis value (4 byte) None None None None
41
5. Increment Komunikasi pesan antara kartu dan card read untuk menulis nilai kartu.
Tabel 2.9 Command CMD +
Struktur pesan increment
DATA block (1 byte) value (4 byte) 32 Bit value
Answer ANS None X : unable to read after increment N : no TAG I : no value block none F : increment failure
DATA new value (4 byte)
None
None
6. Decrement Komunikasi pesan antara kartu dan card read untuk mengurangi value kartu.
Tabel 2.10 Struktur pesan decrement Command CMD -
DATA block (1 byte) value (4 byte) 32 Bit value
Answer ANS None X : unable to read after decrement N : no TAG I : no value block F: decrement failure E : decrement failure, empty
DATA new value (4 byte) None None None None None
7. Turn On/Off Antenna Power Komunikasi pesan antara kartu dan card read untuk power on/off antena.
Tabel 2.11 Struktur pesan turn on/off antenna power Command CMD Poff Pon
DATA None None
Answer ANS P
DATA None
42
8. Read/Write User Port Komunikasi pesan antara kartu dan card read untuk read/write port.
Tabel 2.12 Struktur pesan read/write user port Command CMD Pr Pw
DATA None data (1 byte)
Answer ANS
DATA user port state (1 byte)
9. GetID Komunikasi pesan antara kartu dan card read untuk get ID reader.
Tabel 2.13 Struktur pesan getID Command CMD g
2.6.1
DATA None
Answer ANS None
DATA Station ID (1 byte)
API Card Reader
2.6.1.1
ACR120 Open
Berfungsi untuk membuka port. Declare Function ACR120_Open Lib "ACR120.DLL" (ByVal ReaderPort As PORTS, ByVal BaudRate As BAUDRATES) As Short
Tabel 2.14 Deskripsi ACR120 Open Parameter
Deskripsi
Reader Port
Membuka port koneksi
Baut Rate
Port baut rate
43
2.6.1.2
ACR120 Close
Berfungsi untuk menutup port. Declare Function ACR120_Close Lib "ACR120.DLL" (ByVal hReader As Short) As Short
Tabel 2.15 Deskripsi ACR120 Close Parameter
Deskripsi
hReader
Menutup port koneksi
Baut Rate
Port baut rate
2.6.1.3
ACR120 Select
Berfungsi memilih TAG dan mengambil SN. Declare Function ACR120_Select Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByRef pHaveTag As Boolean, ByRef pTag As Byte, ByRef pSN As Byte) As Short
Tabel 2.16 Deskripsi ACR120 Select Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Station ID dari ACR 120 reader
pHaveTAG
Membaca apakah ada TAG
pTAG
Membaca isi TAG
pSN
Membaca SN Kartu
44
2.6.1.4
ACR120 Login
Berfungsi untuk login kedalam sektor. Declare Function ACR120_Login Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal sector As Byte, ByVal keyType As KEYTYPES, ByVal storedNo As Integer, ByRef pKey As Byte) As Short
Tabel 2.17 Deskripsi ACR120 Login Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Station ID dari ACR 120 reader
Sektor
Menentukan sektor
keyType
Menentukan Tipe key
StoredNo
Menentukan no dari key yang akan digunakan
pKey
2.6.1.5
Login Key
ACR 120 Read
Membaca blok dimana login dalam sektor. Declare Function ACR120_Read Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal block As Byte, ByRef pBlockData As Byte) As Short
Tabel 2.18 Deskripsi ACR120 Read Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Station ID dari ACR 120 reader
Block
Menentukan blok yang akan di baca
45
Lanjutan tabel 2.18 pBlockData
2.6.1.6
Isi data yang dibaca
ACR120 Read Value
Berfungsi untuk membaca value blok. Declare Function ACR120_ReadValue Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal block As Byte, ByRef pValueData As Integer) As Short
Tabel 2.19 Deskripsi ACR120 Read Value Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Station ID dari ACR 120 reader
Block
Menentukan value blok yang akan di baca
pValueData
2.6.1.7
Isi value data yang dibaca
ACR120 Write
Berfungsi menulis kedalam blok. Declare Function ACR120_Write Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal block As Byte, ByRef pBlockData As Byte) As Short.
Tabel 2.20 Deskripsi ACR120 Write Parameter
Deskripsi
hReader
Menghandle ACR120 reader
46
Lanjutan tabel 2.20 stationID
Station ID dari ACR 120 reader
Block
Menentukan blok yang akan ditulis
pBlockData
16 byte data yang akan ditulis
2.6.1.8
ACR120 Write Value
Berfungsi untuk menulis value kedalam blok. Declare Function ACR120_WriteValue Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal block As Byte, ByVal valueData As Integer) As Short
Tabel 2.21 Deskripsi ACR120 Write Value Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Station ID dari ACR 120 reader
Block
Menentukan blok yang akan ditulis
valueData
value data yang akan ditulis
2.6.1.9
ACR120 Decrement
Berfungsi mengurangi value blok. Declare Function ACR120_Dec Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal block As Byte, ByVal value As Integer, ByRef pNewValue As Integer) As Short
47
Tabel 2.22 Deskripsi ACR120 Decrement Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Statiton ID dari ACR 120 reader
Block
Menentukan blok yang akan dikurangi
Value
Mengurangi value
pNewValue
Update value sesudah dikurangi
2.6.1.10 ACR120 Increment
Berfungsi mengambah value blok. Declare Function ACR120_Inc Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal block As Byte, ByVal value As Integer, ByRef pNewValue As Integer) As Short
Tabel 2.23 Deskripsi ACR120 Increment Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Station ID dari ACR 120 reader
Block
Menentukan blok yang akan ditambah
Value
Menambah value
pNewValue
Update value sesudah ditambah
2.6.1.11 ACR120 Power
Berfungsi untuk power on/off antena Declare Function ACR120_Power Lib "ACR120.DLL" (ByVal hReader As Short, ByVal stationID As Byte, ByVal bOn As Boolean) As Short
48
Tabel 2.24 Deskripsi ACR120 Power Parameter
Deskripsi
hReader
Menghandle ACR120 reader
stationID
Station ID dari ACR 120 reader
bOn
Turn on (true) or off (false)
2.6.1.12 ACR120 GetID
Berfungsi untuk menentukan station ID raeder Declare Function ACR120_GetID Lib "ACR120.DLL" (ByVal hReader As Short, ByRef pNumID As Byte, ByRef pStationID As Byte) As Short
Tabel 2.25 Deskripsi ACR120 GetID Parameter
Deskripsi
hReader
Menghandle ACR120 reader
pNumID
Number station ID
pStationID
Isi station ID