6 bab 2 - library.binus.ac.idlibrary.binus.ac.id/ecolls/ethesisdoc/bab2/2008-1-00338-if-bab 2.pdf8...
TRANSCRIPT
7
BAB 2
LANDASAN TEORI
2.1 Analisis
Menurut McLeod (2001, p190) analisis sistem merupakan penelitian
atas sistem yang telah ada dengan tujuan merancang sistem baru atau
diperbaharui. Di dalam tahap analisis sistem, seorang sistem analis terus bekerja
sama dengan manajer, dan komite pengarah SIM yang terlibat dalam titik-titik
penting.
Langkah-langkah anlisis sistem yang diungkapkan oleh Jogianto (1990,
p130) antara lain :
1. Mengidentifikasi masalah.
2. Memahami kerja dari sistem yang telah ada.
3. Menganalisa sistem.
4. Membuat laporan hasil analisis.
2.2 Aplikasi
Aplikasi adalah suatu subkelas perangkat lunak komputer yang
memanfaatkan kemampuan komputer langsung untuk melakukan suatu tugas
yang diinginkan pengguna. Biasanya dibandingkan dengan perangkat lunak
sistem yang mengintegrasikan berbagai kemampuan komputer, tapi tidak secara
langsung menerapkan kemampuan tersebut untuk mengerjakan suatu tugas yang
8
menguntungkan pengguna. Contoh utama perangkat lunak aplikasi adalah
pengolah kata, lembar kerja, dan pemutar media.
Beberapa aplikasi yang digabung bersama menjadi suatu paket kadang
disebut sebagai suatu paket atau suite aplikasi (application suite). Contohnya
adalah Microsoft Office dan OpenOffice.org, yang menggabungkan suatu
aplikasi pengolah kata, lembar kerja, serta beberapa aplikasi lainnya. Aplikasi-
aplikasi dalam suatu paket biasanya memiliki antarmuka pengguna yang
memiliki kesamaan sehingga memudahkan pengguna untuk mempelajari dan
menggunakan tiap aplikasi. Sering kali, mereka memiliki kemampuan untuk
saling berinteraksi satu sama lain sehingga menguntungkan pengguna.
Contohnya, suatu lembar kerja dapat dibenamkan dalam suatu dokumen
pengolah kata walaupun dibuat pada aplikasi lembar kerja yang terpisah.
Aplikasi dapat digolongkan menjadi beberapa kelas, antara lain :
1. Perangkat lunak perusahaan (enterprise)
2. Perangkat lunak infrastruktur perusahaan
3. Perangkat lunak informasi kerja
4. Perangkat lunak media dan hiburan
5. Perangkat lunak pendidikan
6. Perangkat lunak pengembangan media
7. Perangkat lunak rekayasa produk
9
2.3 Interaksi Manusia dan Komputer
2.3.1 Definisi Interaksi Manusia dan Komputer
IMK adalah suatu ilmu yang mempelajari bagaimana seorang
manusia berinteraksi dengan komputer atau pengaruh komputer dalam
pengembangan untuk berinteraksi dengan manusia (Shneiderman 1998,
p10).
Dalam merancang suatu sistem yang interaktif, diperlukan
perancangan model yang memiliki sifat user friendly agar dapat
berinteraksi dengan baik. Menurut Shneiderman (1998, p15) ada lima
kriteria yang harus dipenuhi yaitu :
1. Waktu belajar
Berapa lama waktu yang diperlukan bagi pengguna untuk dapat
mempelajari serta bagaimana menggunakan perintah yang
berhubungan dengan tugas.
2. Kecepatan dalam menyajikan informasi
Berapa lama waktu yang diperlukan sampai tugas diselesaikan
3. Tingkat kesalahan
Berapa banyak dan apa jenis dari kesalahan yang dibuat pengguna
sewaktu melaksanakan tugas.
4. Daya ingat
Seberapa baik pengguna memelihara pengetahuan masalah setelah satu
jam, satu hari, satu minggu.
10
5. Kepuasan subjektif
Seberapa banyak pengguna menyukai aspek sistem yang berbeda.
2.3.2 Antarmuka Pengguna
Antarmuka pengguna merupakan bagian dari sistem komputer
yang memungkinkan manusia berinteraksi dengan komputer. Menurut
Pressman (1992, p457) antarmuka pengguna adalah bagian dari program
yang mengadakan interaksi dengan pengguna.
Semua yang ditampilkan di layar dibaca dalam dokumentasi atau
manipulasi dengan keyboard atau mouse adalah bagian dari user interface.
Sebagian besar program komputer yang dibuat oleh manusia memiliki
user interface sebagai penghubung antara pengguna program dengan
program aplikasinya. Para pengembang program aplikasi harus
memperhatikan dengan baik perancangan user interface aplikasinya.
Menurut Shneiderman (1998, p74) ada delapan aturan emas
dalam perancangan antarmuka pengguna (user interface) antara lain:
a. Berusaha untuk konsisten
Semua urutan aksi harus konsisten dalam situasi yang sama, seperti
pemakaian istilah, warna, tampilan dan jenis huruf yang sama.
b. Memungkinkan pengguna menggunakan shortcut
Terkadang pengguna menginginkan agar jumlah interaksi yang
dilakukan dikurangi untuk meningkatkan kepraktisannya. Penggunaan
11
shortcut dapat dilakukan untuk mengatasi hal tersebut dan
meningkatkan kecepatan tampilan.
c. Memberikan umpan balik yang informatif
Memberikan respon yang sesuai dengan aksi yang dilakukan
pengguna, sehingga dapat membantu pengguna untuk mengerti sistem
yang telah dibuat dalam suatu aplikasi.
d. Merancang dialog yang memberikan keadaan akhir
Urutan aksi harus diatur menjadi bagian awal, tengah, dan akhir. Hal
ini dilakukan agar pengguna mengetahui bahwa sekelompok tindakan
telah dilakukan sehingga memberikan kepuasan pada pengguna dan
memberikan kesiapan untuk melakukan tindakan selanjutnya.
e. Memberikan pecegahan kesalahan dan penanganan kesalahan secara
sederhana.
Sistem harus dirancang sedemikian rupa agar tidak membuat
kesalahan yang serius. Jika terjadi kesalahan, sistem harus mendeteksi
dan menawarkan mekanisme penanganan yang sederhana dan mudah
dimengerti.
f. Memungkinkan memberikan aksi yang mudah
Aksi harus bisa dibalik untuk mengurangi kegelisahan dari pengguna
jika dia menjelajah ke bagian yang tidak dikenal. aksi harus bisa
dibalik. Hal ini dapat mengurangi kegelisahan pengguna, karena
kesalahan yang dilakukan oleh pengguna dapat diperbaiki.
12
g. Mendukung pusat kendali internal.
Pengguna harus merasa menguasai sistem dan sistem bekerja sesuai
dengan keinginannya. Kesulitan memperoleh informasi yang penting
atau informasi yang diinginkan akan memberikan ketidakpuasan bagi
pengguna.
h. Mengurangi beban ingatan jangka pendek
Manusia memiliki ingatan yang terbatas oleh karena itu aplikasi harus
dibuat sedemikian rupa agar pengguna tidak terlalu banyak
menyimpan memori.
2.3.3 Pedoman Penggunaan Warna
Tampilan warna sangat mempengaruhi penggunanya,
pengaruhnya dapat berupa pengaruh baik ataupun buruk. Oleh karena itu,
penggunaan warna harus diperhatikan dengan baik pula agar dapat
memberikan pengaruh yang baik. Menurut Shneiderman (1998, p398),
dampak dari penggunaan warna antara lain:
a. Menyejukkan atau menyilaukan mata.
b. Membuat tampilan lebih menarik.
c. Memungkinkan perbedaan yang halus pada tampilan yang kompleks.
d. Menekankan pada pengelompokan informasi secara logikal.
e. Dapat menarik perhatian pada pesan peringatan.
13
f. Menimbulkan reaksi emosional yang kuat berupa sukacita,
kegembiraan, ketakutan atau kemarahan.
2.4 Rekayasa Piranti Lunak
2.4.1 Definisi Piranti Lunak
Menurut Pressman (2001, p6), piranti lunak dapat diartikan
sebagai berikut:
a. Perintah-perintah dalam suatu program komputer yang jika dijalankan
akan memberikan fungsi dan hasil yang diinginkan.
b. Struktur-struktur data yang membuat program dapat memanipulasi
data.
c. Dokumen yang menggambarkan operasi dan penggunaan program.
d. Piranti lunak memiliki karakteristik yang berbeda dengan piranti
keras.
2.4.2 Karakteristik Piranti Lunak
Menurut Pressman (2001, p6), piranti lunak merupakan elemen
sistem yang bersifat logik, bukan bersifat fisik. Beberapa karateristiknya
adalah:
a. Piranti lunak dapat dikembangkan dan direkayasa, bukan dirakit
seperti piranti keras. Meskipun ada persamaan pengertian antara kedua
14
istilah tersebut, pada dasarnya mempunyai aktivitas yang berbeda di
mana kualitas yang baik dapat dicapai jika desainnya juga baik.
b. Piranti lunak tidak mudah rusak. Hal ini berbeda dengan piranti keras
yang mempunyai tingkat kerusakan yang tinggi. Pada piranti keras
apabila terjadi kerusakan maka harus diganti, tetapi pada piranti lunak
jika terjadi kerusakan dapat diperbaiki melalui software maintenance
(pemeliharaan piranti lunak). Kesalahan yang terjadi pada piranti
lunak, biasanya terpusat pada saat proses menterjemahkan program ke
bahasa mesin dan pada saat merancang.
c. Pada dasarnya perancangan piranti lunak dibuat sebagai komponen
yang dapat dirakit ulang.
2.4.3 Definisi Rekayasa Piranti Lunak
Rekayasa piranti lunak adalah penerapan dan pemakaian prinsip
rekayasa dalam rangka mendapatkan piranti lunak ekonomis yang
terpercaya dan bekerja secara efisien pada mesin komputer (Pressman
2001, p20).
Rekayasa piranti lunak mencakup tiga elemen yang mampu
mengontrol proses perkembangan piranti lunak, yaitu:
a. Metode
Metode merupakan cara-cara teknis membangun piranti lunak yang
terdiri dari perancangan proyek dan estimasi, analisis kebutuhan
15
sistem dan piranti lunak, perancangan struktur data, arsitektur
program, prosedur algoritma, pengkodean, pengujian dan
pemrograman.
b. Alat-alat bantu
Alat-alat bantu menyediakan dukungan otomatis atau semi otomatis
untuk metode-metode seperti Computer Aided Software Engineering
(CASE) yang mengkombinasikan piranti lunak dan piranti keras dan
software engineering database (tempat penyimpanan yang
mengandung informasi yang penting tentang analisis, perancangan,
pembuatan program, dan pengujian) untuk pengembangan piranti
lunak yang sejalan dengan Computer Aided Design/Engineering
(CAD/E) untuk piranti keras.
c. Prosedur-prosedur
Prosedur-prosedur untuk menghubungkan alat-alat bantu dengan
metode. Tujuan dari prosedur yaitu untuk mendapatkan piranti lunak
yang efisien, berguna dan ekonomis.
2.4.4 Daur Hidup Pengembangan Piranti Lunak
Metode The Classic Life Cycle atau metode yang biasanya
disebut Waterfall Model (Model Air Terjun). Menurut Pressman (2001,
pp28-29), tahapan-tahapan yang terdapat dalam metode ini adalah, yaitu:
16
• Analisis dan rekayasa sistem (system engineering and modeling)
Dalam tahap ini, pekerjaan dimulai dengan menetapkan kebutuhan-
kebutuhan piranti lunak untuk semua elemen sistem, karena piranti
lunak adalah bagian dari yang penting dari sebuah sistem. Peninjauan
dalam tahap ini penting karena piranti lunak harus dapat berinteraksi
dengan elemen-elemen lainnya seperti piranti keras, manusia, dan
basis data.
• Analisis kebutuhan piranti lunak (software requirements analysis)
Dalam tahap ini, seorang analis piranti lunak harus menganalisis
kebutuhan agar dapat mengetahui seluruh informasi, fungsi, performa
dan antarmuka yang dibutuhkan agar dapat digunakan sebagai dasar
sistem yang akan dibangun.
• Perancangan (design)
Dalam tahap ini, perancangan terhadap piranti lunak dilakukan.
Perancangan piranti lunak merupakan sebuah proses yang terdiri atas
beberapa langkah yang difokuskan pada empat perlengkapan program
yang berbeda yaitu struktur data, arsitektur piranti lunak, representasi
antar muka, dan prosedur yang detail.
• Pembuatan program (coding)
Dalam tahap ini, hasil perancangan diterjemahkan ke dalam bentuk
yang dapat dimengerti oleh mesin/komputer.
17
• Pengujian (testing)
Dalam tahap ini, pengujian terhadap program yang telah selesai
dilakukan. Proses pengujian difokuskan pada logika dalam program
dari piranti lunak untuk memastikan bahwa semua kode program telah
diuji. Tujuan dilaksanakannya pengujian ini untuk menemukan
kesalahan dan juga untuk memastikan bahwa piranti lunak yang telah
dibuat telah sesuai dengan yang diinginkan.
• Pemeliharaan (maintenance)
Dalam tahap ini dilakukan pemeliharaan terhadap piranti lunak yang
telah dibuat. Pemeliharaan dilakukan dengan mengecek apakah ada
kesalahan-kesalahan setelah sistem dijalankan, dan setiap kesalahan
harus diperbaiki. Selain itu juga dilakukan pengecekan apakah piranti
lunak ini dapat beradaptasi dengan segala perubahan yang ada, baik
dari segi kebutuhan sistem maupun pengaruh dari luar sistem.
Gambar 2.1 Diagram Classic Life Cycle
18
2.5 Unified Modelling Language (UML)
2.5.1 Definisi Unified Modelling Language
UML adalah sebuah bahasa grafis untuk memvisualisasikan,
mendefinisikan, merancang, dan mendokumentasikan unsur-unsur dari
sistem piranti lunak. UML yang pada umumnya digunakan untuk
membuat rancangan dari sistem, mencakup hal-hal yang berhubungan
dengan konsep seperti proses bisnis dan fungsi sistem, dan hal-hal yang
berhubungan dengan unsur-unsur kongkrit seperti class, skema basis data,
serta komponen perangkat lunak yang dapat digunakan kembali (Booch,
1999, p13).
UML merupakan bahasa pemodelan dimana unsur-unsur dan
aturan-aturan yang dimilikinya berfokus pada representasi konseptual dan
fisikal dari sistem. Unsur-unsur dan aturan-aturan tersebut dapat
digunakan untuk merancang dan membaca model objek, namun mereka
tidak dimaksudkan untuk memberitahu pengguna bagaimana merancang
sebuah model yang baik. Unsur-unsur UML terdiri dari :
• Objek, yang merupakan abstraksi dari elemen-elemen model.
• Hubungan, yang menjadi alat penyatu bagi objek-objek yang ada.
• Diagram, yang mengelompokkan objek-objek dan hubungannya dalam
kelompok-kelompok diagram yang mudah dibaca.
19
2.5.2 Use Case Diagram
Use case Diagram adalah sebuah diagram yang diperkenalkan
untuk memvisualisasikan use case (Fowler, 2000, p41). Use case
menjelaskan segala hal yang diinginkan oleh pengguna dari sebuah sistem.
Use case adalah sekelompok scenario yang memiliki sebuah tujuan
bersama bagi pengguna. Dalam UML, sebuah use case selalu dimulai dari
sebuah aktor (Fowler, 2000, p40).
Sebuah format yang mudah untuk membuat sebuah use case
adalah dengan menjelaskan skenario utamanya sebagai sebuah urutan
langkah-langkah dan alternatif langkah-langkah sebagai variasi dari urutan
tersebut. Ada banyak variasi dalam menjelaskan isi dari sebuah use case
namun UML tidak menspesifikasikan standard tertentu.
Setiap use case menjelaskan langkah-langkah yang harus
dikerjakan untuk mendapatkan fungsi dari use case tersebut. Diagram use
case yang merupakan bagian dari UML ini, diidentifikasikan untuk sebuah
sistem dan mencakup :
• Aktor
Aktor mewakili setiap orang atau segala sesuatu yang harus
berinteraksi dengan sebuah sistem. Aktor dapat memasukkan data ke
sebuah sistem dan menerima informasi dari sebuah sistem. Contoh
aktor adalah sesesorang, perangkat lunak, peralatan perangkat keras,
20
ataupun jaringan. Jadi aktor tidak harus selalu manusia, walaupun
aktor diwakili sebagai sebuah figure dalam diagram use case.
Aktor merupakan bagian eksternal dari sebuah sistem dan tidak akan
pernah menjadi bagian dari sistem tersebut. Seseorang dapat diwakili
oleh beberapa aktor karena orang tersebut mempunyai beberapa peran
berbeda terhadap sebuah sistem dan beberapa orang dapat diwakili
dengan aktor yang sama karena mereka semua mempunyai peran yang
sama terhadap sistem tersebut. Aktor menyelesaikan atau melakukan
langkah-langkah dalam use case. Aktor dapat terlibat dalam banyak
use case dan sebaliknya, sebuah use case dapat dilakukan oleh
beberapa aktor.
Gambar 2.2 Contoh Aktor
• Hubungan
Dalam use-case model, ada beberapa jenis hubungan yang dapat
digambarkan, diantaranya adalah Communicate-Association yang
menggambarkan adanya interaksi antara use-case dan actor. Interaksi
ini ditandai dengan mengirimkan sinyal atau informasi satu sama lain.
21
Gambar 2.3 Contoh Notasi Communicate Association
Gambar 2.4 Contoh Use Case Diagram
2.5.3 Activity Diagram
Activity diagram menggambarkan urutan kegiatan di mana
diagram ini mendukung tingkah laku kondisional dan paralel (Fowler,
22
2000, p129). Activity diagram mengijinkan kita untuk memilih urutan
untuk melakukan sesuatu. Activity diagram hanya menyatakan aturan
urutan yang harus kita ikuti. Hal ini adalah kunci perbedaan antara sebuah
activity diagram dan sebuah flowchart. Umumnya, flowchart terbatas pada
proses-proses sekuensial, sedangkan activity diagram dapat menangani
proses-proses yang parallel.
Gambar 2.5 Contoh Activity Diagram
2.5.4 Class Diagram
Class Diagram dibuat untuk menyediakan sebuah gambaran atau
pandangan dari beberapa atau semua class dalam sebuah model. Sebuah
diagram class menjelaskan tipe-tipe objek yang berada dalam sebuah
23
sistem dan berbagai macam hubungan statik di antara mereka (Fowler,
2000, p49). Class diagram memperlihatkan sekelompok class, interface,
serta kolaborasi dan hubungan mereka (Booch, 1999, p105).
Salah satu detail-detail yang paling penting dapat dijelaskan
pada atribut dan method class adalah visibility. Visibility sebuah fitur
menjelaskan apakah sebuah class dapat digunakan oleh class lain. Dalam
UML, ada tiga macam visibility :
1. Public
Class yang diluar class dengan visibility ini, dapat menggunakan fitur-
fiturnya. Simbol yang digunakan adalah simbol +.
2. Protected
Semua turunan class ini dapat menggunakan fitur-fitur dari class ini.
Simbol yang digunakan adalah simbol #.
3. Private
Hanya class ini sendiri yang dapat menggunakan fitur-fiturnya.
Simbol yang digunakan adalah simbol -.
Notasi-notasi yang terdapat dalam class diagram :
a. Class
Class merupakan sebuah deskripsi dari sekumpulan object yang
berbagi attribute, operation, dan hubungan yang sama. Sebuah class
dapat mengimplementasikan satu atau lebih interface.
24
Gambar 2.6 Contoh Class
b. Attribute
Merupakan property dari class yang berisi tipe data yang dimiliki oleh
instance suatu class.
c. Operation
Merupakan kegiatan-kegiatan yang akan dilakukan oleh suatu class.
d. Aggregation
Menggambarkan hubungan antara dua atau lebih objek, dimana salah
satu objek merupakan bagian dari objek lainnya.
e. Composition
Composition adalah strong aggregation. Pada composition, objek
“bagian” tidak dapat berdiri sendiri tanpa object “keseluruhan”. Jadi
mereka terkait kuat satu dengan lainnya.
f. Multiplicity
Merupakan sebuah spesifikasi tentang rentang kardinalitas yang
diizinkan untuk dimiliki oleh sebuah object. Sebuah multiplicity dapat
berisi : exactly one(1), optional/zero or one (0..1), many/zero or more
25
(0..n), one or more (1..n), an exact number (n), ataupun numerically
specified (m..n).
Gambar 2.7 Contoh Multiplicity
Gambar 2.8 Contoh Class Diagram
2.5.5 Interaction Diagram
Menurut Fowler (2000, p67), Interaction Diagram
menggambarkan interaksi yang terdiri dari sekumpulan object-object dan
hubungan-hubungannya, termasuk pesan-pesan yang dikirim diantara
26
kedua object tersebut. Notasi-notasi yang digunakan dalam Diagram
Interaksi :
a. Object
Merupakan entitas yang mempunyai identity, state, dan behaviour.
Digambarkan berupa kotak-kotak yang terletak di sebelah atas
diagram. Object diawali dengan “:”(tanda titik dua), dan nama object
berada di depan (sebelum) “:“(tanda titik dua) berada. Object dan
nama object digaris bawahi dari awal hingga akhir.
Gambar 2.9 Contoh Object pada Sequence Diagram
Menurut Conallen, object terdiri dari 3 jenis stereotype :
i. Boundary object
Menggambarkan interface antara aktor dan sistem
Gambar 2.10 Contoh Boundary Object
27
ii. Entity object
Hal–hal yang dideskripsikan pada use case dan bertahan terus
dalam sistem
Gambar 2.11 Contoh Entity Object
iii. Control object
Menggambarkan aktivitas atau proses yang dilakukan oleh sistem.
Gambar 2.12 Contoh Control Object
b. Lifeline
Digambarkan berupa garis vertikal dari setiap object yang
menunjukkan lamanya pemakaian object dalam interaksi
c. Message
Digambarkan berupa panah antara dua object yang berguna untuk
menjelaskan interaksi atau proses yang terjadi antara dua object
tersebut. Setiap message dapat disertai message name atau juga
argumennya dan informasi control.
28
d. Focus of Control
Digambarkan sebagai sebuah persegi panjang pipih yang terdapat
diatas lifeline, menggambarkan periode waktu bagi sebuah object
untuk melakukan sebuah aksi.
Gambar 2.13 Contoh Focus Of Control pada Sequence Diagram
e. Condition
Kondisi yang menandakan kapan sebuah message harus dikirim
(misalnya, [Data Exist]. Message tersebut hanya akan dikirim jika
kondisi benar.
Gambar 2.14 Contoh Condition pada Sequence Diagram
29
f. Self Call
Menggambarkan message yang dikirim oleh suatu object ke object itu
sendiri. Digambarkan berupa panah yang menunjuk kembali ke object
yang sama.
Gambar 2.15 Contoh Self-Call pada Sequence Diagram
g. Return Message
Merupakan sebuah hasil (output) yang dikirim oleh sebuah object
kepada object lain yang mengirimkan message padanya. Return
Message digambarkan sebagai sebuah anak panah putus–putus
diantara lifeline dari dua buah object. Return message adalah notasi
yang opsional sehingga dapat digambarkan bila dengan
menggambarkannya akan memperjelas sequence diagram.
Gambar 2.16 Contoh Return pada Sequence Diagram
30
2.5.5.1 Sequence Diagram
Sequence diagram memperlihatkan interaksi-interaksi
antar objek yang terjadi dalam sebuah scenario. Diagram
sequence dalam UML menambahkan dimensi waktu pada
interaksi antar objek (Schmuller, 1999, p108).
Secara grafis, sebuah sequence diagram adalah sebuah
tabel yang memperlihatkan objek-objek yang diatur sepanjang
garis horizontal, dengan pertambahan waktu sepanjang garis
vertikal (Booch et.al., 1999, p245).
Gambar 2.17 Contoh Sequence Diagram
31
2.6 State Trantition Diagram (STD)
2.6.1 Definisi State Trantition Diagram (STD)
Menurut Pressman (2001, p302), STD mengindikasikan
bagaimana sebuah sistem berperilaku sebagai sebuah konsekuensi dari
kejadian (event) eksternal. Untuk itu, STD mewakili sejumlah mode dari
behavior yang disebut sebagai kondisi (state) dari sistem dan cara dalam
perubahan yang dihasilkan dari satu kondisi ke kondisi lainnya.
Menurut Pressman (2001, p317), State Transition Diagram
adalah model behavior yang mendasarkan pada pengertian dari kumpulan
kondisi sistem. Model behavior adalah sebuah prinsip operasional untuk
seluruh metode analisis kebutuhan. STD mewakili behavior dari sebuah
sistem dengan menggambarkan kondisinya dan kejadian yang
menyebabkan perubahan kondisi suatu sistem.
Simbol-simbol atau properti dari STD yang sering digunakan :
a. State, disimbolkan dengan segi empat.
State adalah kumpulan keadaan atau atribut yang memberi perincian
seseorang atau benda pada waktu dan kondisi tertentu. Contohnya
seperti proses user mengisi password, menentukan instruksi
berikutnya.
Simbol state:
32
b. Transition State
Merupakan simbol yang menyatakan suatu perubahan dari suatu
keadaan ke keadaaan lain (perubahan suatu state).
Disimbolkan dengan :
c. Condition
Condition adalah suatu kejadian pada lingkungan eksternal yang dapat
dideteksi oleh sistem. Contohnya adalah sebuah sinyal, interrupt atau
data. Hal ini akan menyebabkan perubahan terhadap state dari state
menunggu X ke state menunggu Y atau memindahkan aktivitas X ke
aktivitas Y.
d. Action
Action adalah yang dilakukan sistem bila terjadi perubahan state atau
merupakan reaksi terhadap kondisi. Aksi akan menghasilkan keluaran
atau tampilan.
Gambar 2.18 State Transition Diagram (STD)
33
2.7 Pemrograman Java
2.7.1 Pengertian Java
Menurut Hermawan (2006) Java adalah bahasa pemrograman
berorientasi objek yang dikembangkan oleh Sun Microsystem sejak tahun
1991. Bahasa ini dikembangkan dengan model yang mirip bahasa C++
dan Smalltalk, namun dirancang agar lebih mudah dipakai dan platform
independent, yaitu dapat dijalankan di berbagai jenis sistem operasi dan
arsitektur komputer. Bahasa ini juga dirancang untuk pemrograman di
internet, sehingga dirancang agar aman dan juga portabel.
2.7.2 Sejarah Perkembangan Java
Bahasa pemrograman Java pertama lahir dari The Green Project,
yang berjalan selama 18 bulan, dari awal tahun 1991 hingga musim panas
1992. Proyek tersebut belum menggunakan versi yang dinamakan Oak.
Proyek ini dimotori oleh Patrick Naughton, Mike Sheridan, James Gosling
dan Bill Joy, beserta sembilan pemrogram lainnya dari Sun Microsystems.
Versi awal Java ditahun 1996 sudah merupakan versi release
sehingga dinamakan Java Versi 1.0. Java versi ini menyertakan banyak
paket standar awal yang terus dikembangkan pada versi selanjutnya, yaitu:
• java.lang: Peruntukan kelas elemen-elemen dasar.
34
• java.io: Peruntukan kelas input dan output, termasuk penggunaan
berkas.
• java.util: Peruntukan kelas pelengkap seperti kelas struktur data dan
kelas kelas penanggalan.
• java.net: Peruntukan kelas TCP/IP, yang memungkinkan berkomunikasi
dengan komputer lain menggunakan jaringan TCP/IP.
• java.awt: Kelas dasar untuk aplikasi antarmuka dengan pengguna
(GUI).
• java.applet: Kelas dasar aplikasi antar muka untuk diterapkan pada
penjelajah web.
2.7.3 Kelebihan dan Kekurangan Java
Kelebihan Java dibandingkn dengan bahasa pemprograman yang
lain :
• Multiplatform
Kelebihan utama dari Java ialah dapat dijalankan di beberapa sistem
operasi komputer, sesuai dengan prinsip tulis sekali, jalankan di mana
saja. Dengan kelebihan ini pemrogram cukup menulis sebuah program
Java dan dikompilasi (diubah, dari bahasa yang dimengerti manusia
menjadi bahasa mesin / bytecode) sekali lalu hasilnya dapat dijalankan
di atas beberapa platform tanpa perubahan.
35
Kelebihan ini memungkinkan sebuah program berbasis java
dikerjakan diatas operating system Linux tetapi dijalankan dengan
baik di atas Microsoft Windows. Platform yang didukung sampai saat
ini adalah Microsoft Windows, Linux, Mac OS dan Sun Solaris.
Penyebanya adalah setiap sistem operasi menggunakan programnya
sendiri-sendiri (yang dapat diunduh dari situs Java) untuk
meninterpretasikan bytecode tersebut.
• OOP (Object Oriented Programming)
Pemrogram Berorientasi Objek yaitu semua aspek yang terdapat di
Java adalah Objek. Java merupakan salah satu bahasa pemrograman
berbasis oebjek secara murni. Semua tipe data diturunkan dari kelas
dasar yang disebut Object. Hal ini sangat memudahkan pemrogram
untuk mendesain, membuat, mengembangkan dan mengalokasi
kesalahan sebuah program dengan basis Java secara cepat, tepat,
mudah dan terorganisir. Kelebihan ini menjadikan Java sebagai salah
satu bahasa pemograman termudah, bahkan untuk fungsi fungsi yang
advance seperti komunikasi antara komputer sekalipun.
• Perpustakaan Kelas Yang Lengkap
Java terkenal dengan kelengkapan library/perpustakaan (kumpulan
program program yang disertakan dalam pemrograman java) yang
sangat memudahkan dalam penggunaan oleh para pemrogram untuk
36
membangun aplikasinya. Kelengkapan perpustakaan ini ditambah
dengan keberadaan komunitas Java yang besar yang terus menerus
membuat perpustakaan-perpustakaan baru untuk melingkupi seluruh
kebutuhan pembangunan aplikasi.
• Bergaya C++
Memiliki sintaks seperti bahasa pemrograman [C++] sehingga
menarik banyak pemrogram C++ untuk pindah ke Java. Saat ini
pengguna Java sangat banyak, sebagian besar adalah pemrogram C++
yang pindah ke Java. Universitas-universitas di Amerika juga mulai
berpindah dengan mengajarkan Java kepada murid-murid yang baru
karena lebih mudah dipahami oleh murid dan dapat berguna juga bagi
mereka yang bukan mengambil jurusan komputer.
• Pengumpulan Sampah Otomatis
Memiliki fasilitas pengaturan penggunaan memori sehingga para
pemrogram tidak perlu melakukan pengaturan memori secara langsung
(seperti halnya dalam bahasa C++ yang dipakai secara luas).
Kekurangan Java dibandingkn dengan bahasa pemprograman
yang lain :
37
• Tulis sekali, perbaiki di mana saja
Masih ada beberapa hal yang tidak kompatibel antara platform satu
dengan platform lain. Untuk J2SE, misalnya SWT-AWT bridge yang
sampai sekarang tidak berfungsi pada Mac OS X.
• Mudah didekompilasi
Dekompilasi adalah proses membalikkan dari kode jadi menjadi kode
sumber. Ini dimungkinkan karena koe jadi Java merupakan bytecode
yang menyimpan banyak atribut bahasa tingkat tinggi, seperti nama-
nama kelas, metode, dan tipe data. Hal yang sama juga terjadi pada
Microsoft .NET Platform. Dengan demikian, algoritma yang
digunakan program akan lebih sulit disembunyikan dan mudah
dibajak/direverse-engineer.
• Penggunaan memori yang banyak
Penggunaan memori untuk program berbasis Java jauh lebih besar
daripada bahasa tingkat tinggi generasi sebelumnya seperti C/C++ dan
Pascal (lebih spesifik lagi, Delphi dan Object Pascal). Biasanya ini
bukan merupakan masalah bagi pihak yang menggunakan teknologi
terbaru (karena trend memori terpasang makin murah), tetapi menjadi
masalah bagi mereka yang masih harus berkutat dengan mesin
komputer berumur lebih dari 4 tahun.
38
2.8 Sistem Basis Data
2.8.1 Definisi Sistem Basis Data
Sistem Basis Data adalah sistem penyimpanan data secara
komputerisasi. Menurut Connoly (2002, p14), database merupakan
sebuah kumpulan dari data yang berhubungan secara logical yang dapat
digunakan secara bersama-sama, dan sebuah deskripsi dari data tersebut
dirancang untuk mendapatkan informasi yang diperlukan dari sebuah
organisasi.
Basis data adalah sekumpulan elemen-elemen data logis yang
digabungkan. Sebuah basis data menggabungkan record yang disimpan
sebelumnya dalam file-file terpisah ke dalam sebuah kelompok elemen-
elemen data umum yang menyediakan data untuk banyak aplikasi. Data
yang disimpan dalam basis data berdiri sendiri, terpisah dari program
aplikasi yang menggunakan data tersebut dan dari tipe alat penyimpanan
dimana data itu disimpan.
Tujuan dari sistem basis data secara keseluruhan adalah untuk
melakukan perawatan informasi dan menyajikan kapan saja dibutuhkan.
SQL (Static Query Language) adalah bentuk biasa untuk melakukan suatu
perubahan dan atau untuk membuat perintah query yang interaktif dari
sebuah aplikasi database seperti Microsoft Access, Oracle, atau Microsoft
SQL Server.
39
Sistem basis data terdiri dari :
a. Field, merupakan unit terkecil dalam suatu record yang membentuk
suatu atribut dari record yang merupakan suatu data.
b. Record, merupakan kumpulan dari field-field yang saling berkaitan.
c. File, merupakan kumpulan dari record-record yang membentuk suatu
kesatuan data yang sejenis.
2.8.2 MySQL
MySQL adalah sebuah perangkat lunak sistem manajemen basis
data SQL (bahasa Inggris: database management system) atau DBMS
yang multithread, multi-user, dengan sekitar 6 juta instalasi di seluruh
dunia. MySQL AB membuat MySQL tersedia sebagai perangkat lunak
gratis dibawah lisensi GNU General Public License (GPL), tetapi mereka
juga menjual dibawah lisensi komersial untuk kasus-kasus dimana
penggunaannya tidak cocok dengan penggunaan GPL.
MySQL sangat populer dalam aplikasi web seperti MediaWiki
(perangkat lunak yang dipakai Wikipedia dan proyek-proyek sejenis) dan
PHP-Nuke dan berfungsi sebagai komponen basis data dalam LAMP.
Popularitas sebagai aplikasi web dikarenakan kedekatannya dengan
popularitas PHP, sehingga seringkali disebut sebagai Dynamic Duo.
Untuk melakukan administrasi dalam basis data MySQL, dapat
menggunakan modul yang sudah termasuk yaitu command-line (perintah:
40
mysql dan mysqladmin). Juga dapat diunduh dari situs MySQL yaitu
sebuah modul berbasis grafik (GUI): MySQL Administrator dan MySQL
Query Browser. Selain itu terdapat juga sebuah perangkat lunak gratis
untuk administrasi basis data MySQL berbasis web yang sangat populer
yaitu phpMyAdmin. Untuk perangkat lunak untuk administrasi basis data
MySQL yang dijual secara komersial antara lain: MySQL front, Navicat
dan EMS SQL Manager for MySQL.
2.9 Eclipse
2.9.1 Pengertian Eclipse
Eclipse adalah sebuah IDE (Integrated Development
Environment) untuk mengembangkan perangkat lunak dan dapat
dijalankan di semua platform (platform-independent). Berikut ini adalah
sifat-sifat dari Eclipse, yaitu :
• Multi-platform
Target sistem operasi Eclipse adalah Microsoft Windows, Linux,
Solaris, AIX, HP-UX dan Mac OS X.
• Mulit-language
Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi
Eclipse mendukung pengembangan aplikasi berbasis bahasa
41
pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan
lain sebagainya.
• Multi-role
Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa
digunakan untuk aktivitas dalam siklus pengembangan perangkat
lunak, seperti dokumentasi, test perangkat lunak, pengembangan web,
dan lain sebagainya.
2.9.2 Sejarah Eclipse
Eclipse awalnya dikembangkan oleh IBM untuk menggantikan
perangkat lunak IBM Visual Age for Java 4.0. Produk ini diluncurkan
oleh IBM pada tanggal 5 November 2001, yang menginvestasikan
sebanyak US$ 40 juta untuk pengembangannya. Semenjak itu konsursium
Eclipse Foundation mengambil alih untuk pengembangan Eclipse lebih
lanjut dan pengaturan organisasinya.
Eclipse pada saat ini merupakan salah satu IDE favorit
dikarenakan gratis dan open source, yang berarti setiap orang boleh
melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari
Eclipse yang membuatnya populer adalah kemampuannya untuk dapat
dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.
42
2.10 XAMPP
XAMPP adalah aplikasi web server gratis yang multiplatform yang
terdiri atas Apache HTTP Server, MySQL database, dan penerjemah untuk
script yang ditulis dalam bahasa pemrograman PHP dan Perl. Nama XAMPP
adalah singkatan dari X (untuk sistem operasi yang berbeda), Apache, MySQL,
PHP and Perl.
Program ini dipublikasikan dibawah lisensi GNU General Public
License dan bersifat gratis, dan sebagai web server yang mudah digunakan untuk
aktifitas halaman web yang dinamis. Saat ini, XAMPP dapat digunakan pada
sistem operasi Microsoft Windows, Linux, Sun Solaris and Mac OS X, dan biasa
digunakan untuk proyek pembuatan website.
Umumnya, pembuat XAMPP hanya berencana sebagai alat untuk
pengembangan yang mengijinkan pembuat website dan pembuat program
menguji pekerjaan mereka di komputer mereka sendiri tanpa harus terhubung ke
internet. Dalam pelaksanaannya, XAMPP seringkali digunakan sebagai Web
Server di WWW (World Wide Web). XAMPP juga mendukung pembuatan dan
perubahan database di MySQL dan SQLite.
2.11 Short Message Service (SMS)
2.11.1 Pengenalan Short Message Service
SMS adalah suatu teknologi yang memungkinkan untuk
mengirim maupun menerima pesan antar telepon bergerak / ponsel
43
(Yunianto 2006, p71). Teknologi baru ini pertama kali diperkenalkan
pada tahun 1992 oleh ETSI (European Telecommunication Standarts
Institute) (Zakaria 2006, p2). SMS sebetulnya hanya layanan tambahan
terhadap dua layanan utama (voice dan switched data) dalam sistem
jaringan GSM (Global System for Mobile Communication). Namun
teknologi SMS saat ini sudah sangat berkembang, tidak hanya digunakan
pada sistem jaringan GSM, melaikan juga dugunakan pada sistem
jaringan CDMA, TDMA, bahkan pada sistem telepon rumah (fixed
phone).
Sebagaimana namanya, SMS berarti layanan pesan pendek,
maka besar data yang dapat ditampung oleh SMS ini sangatlah terbatas.
Untuk satu SMS yang dikirimkan, hanya dapat menampung paling besar
140 bites atau sekitar 1120 bites. Atau dengan kata lain, untuk satu SMS
hanya dapat berisi paling banyak 160 karakter untuk karakter latin, dan
70 karakter untuk karakter non-latin seperti Jepang maupun Cina.
Dan jika ada SMS yang jumlah karakternya lebih dari 160
karakter, maka berarti ponsel tersebut akan memecah SMS tersebut
menjadi SMS-SMS kecil sebesar 160 karakter, kemudian ponsel
penerima akan menggabungkan beberapa SMS-SMS kecil tersebut
menjadi satu SMS.
44
Berikut ini jenis data yang dapat dibawa oleh SMS yaitu :
• Pesan text
• Ringtone ponsel
• Gambar (Wallpaper, logo operator, maupun animasi)
• Bisnis Card seperti Vcards
• Konfigurasi WAP
Menurut Zakaria (2006, p5) keberhasilan dan kepopuleran SMS
saat ini lebih disebabkan oleh :
1. Harga per kiriman tetap/konstan
Apabila beban telepon/percakapan bervariasi, maka beban biaya
kiriman SMS tetap. Seperti kita ketahui biaya percakapan telepon
selular khususnya GSM sangat tinggi sekali.
2. Keamanan dan kesopanan
Apabila kita hendak menggunakan telepon selular di tempat umum,
maka berbicara menggunakannya dirasakan tidak sopan dan kurang
aman. Namun sebaliknya berkirim pesan menggunakan SMS
dirasakan lebih sopan dan privacy lebih terjaga.
3. Tidak mengganggu penerima
Seperti halnya e-mail, SMS sebagai alat komunikasi tidak
mengganggu penerima, karena penerima bisa memutuskan kapan dan
dimana dia akan menjawab pesan tersebut.
45
4. Handal (reliable)
Jaringan GSM secara umum diakui kehandalannya dalam
mengirimkan data, dan SMS mewarisi kehandalan tersebut.
2.11.2 Mekanisme Kerja SMS
Ketika SMS dikirim ke suatu nomer, SMS tersebut tidak
langsung dikirim ke nomer tersebut, melaikan akan masuk terlebih
dahulu ke SMS Center (SMSC) operator telepon yang digunakan. SMSC
sendiri dapat diartikan sebagai sebuah server yang bertanggung jawab
pada proses pengiriman SMS pada suatu operator. Setelah SMS tersebut
masuk ke SMSC, kemudian barulah diteruskan ke nomer tujuan SMS
tersebut. Bila nomer tujuan sedang offline, SMSC akan menyimpan SMS
tersebut untuk sementara waktu, hingga nomer tujuan online. Stelah
menerima SMS, nomer tujuan akan mengirimkan laporan ke SMSC
bahwa SMS telah berhasil diterima.
Menurut Yunianto (2006, p72) mekanisme kerja pengiriman
SMS dapat dibagi menjadi tiga macam, yaitu :
• Pengiriman SMS dalam satu operator (Intra-Operator SMS)
PonselNomer
PengirimSMS
SMSCNomer
PengirimSMS
PonselNomer
PenerimaSMS
SMS
DeliveryReport
StatusReport
SMS
DeliveryReport
Gambar 2.19 Mekanisme intra-operator SMS
46
SMS yang dikirimkan oleh nomer pengirim akan dimasukkan terlebih
dahulu ke dalam SMSC operator nomer pengirim, kemudian SMSC
tersebut akan mengirimkan ke nomer yang dituju secara langsung.
Nomer penerima akan mengirimkan delivery rteport yang menyatakan
bahwa SMS telah diterima kepada SMSC. SMSC kemudian
meneruskan report tersebut kepada nomer pengirim SMS, disertai
status report dari proses pengiriman SMS tersebut.
• Pengiriman SMS antar operator yang berbeda (Inter-Operator SMS)
PonselNomer
PengirimSMS
SMSCNomer
PengirimSMS
PonselNomer
PenerimaSMS
SMS
DeliveryReport
StatusReport
SMS
DeliveryReport
SMSCNomer
PengirimSMS
Gambar 2.20 Mekanisme inter-operator SMS
Selain masuk ke SMSC operator pengirim, SMS yang dikirimkan akan
diteruskan oleh SMSC operator pengirim ke SMSC operator penerima
SMS, kemudian baru diteruskan ke nomer tujuan. Delivery report
yang dihasuilkanpun harus melewati mekanisme yang sama sebelum
diterima oleh nomer pengirim.
• Pengiriman SMS dari suatu operator suatu negara ke negara lain (SMS
Internasional)
47
Mekanisme yang terjadi tidak jauh berbeda dengan mekanisme pada
inter-operator SMS. Perbedaannya hanya pada SMSC nomer
penerima, yang tentu saja adalah SMSC operator luar negeri, dan
penambahan kode negara pada nomer tujuan.
2.11.3 Implementasi Teknologi SMS
Selain digunakan sebagai media pengiriman pesan singkat, SMS
secara umum telah dikembangkan untuk :
1. Sistem pemilihan (polling) dan jajak pendapat (voting)
2. Pengiriman banyak serentak (broadcasting)
a. Pengumuman (announcer)
b. Peringatan (warning)
c. Pengingat (reminder)
d. Penerus pesan (forwarder)
3. Alat kontrol aktivasi (remote controller activation)
4. Penjawab umpan balik otomatis (auto responder)
a. Informasi (info)
b. Pendaftaran bertingkat (cascading digital sign)
c. Pendaftaran tersusun (smart tag digital sign)
5. Perangkat penguji jaringan (tester)
a. Flood SMS/SMS Bomb
b. Floating SMS
48
Teknologi SMS juga telah dikembangkan untuk mengirimkan
gambar dan suara bersamaan dengan SMS, teknologi ini dikenal dengan
EMS (Enchanced Message Service), MMS (Multimedia Message Service)
dan SmartMessaging, dan telah mendukung pertukaran data terdefinisi
melalui konsep OTA (Over-The-Air), seperti bertukar data buku telepon
(PhoneBook), bertukar jadwal (note, schedule, reminder), dan secara
terbatas bertukar nada dering (ring tones).
2.12 SMS Gateway
2.12.1 Pengenalan SMS Gateway
Gateway menurut kamus Inggris-Indonesia diartikan sebagai
pintu gerbang. Namun pada dunia komputer, gateway berarti jempatan
penghubung antar satu sistem dengan sistem lain yang berbeda, sehingga
dapat terjadi pertukaran data antar sistem tersebut. Dengan demikian
SMS gateway dapat diartikan sebagai suatu penghubung untuk lalu lintas
data-data SMS, baik yang dikirim maupun yang diterima (Yunianto, 2006
p75).
Pada awalnya, SMS gateway dibutuhkan untuk menjembatani
antar SMSC. Hal ini dikarenakan SMSC yang dibangun oleh perusahaan
yang berbeda memiliki protokol komunikasi sendiri yang bersifat pribadi.
Sebagai contoh, Nokia memiliki protokol SMSC yang disebut dengan
CIMD, sedangkan CMG memiliki protokol yang disebut dengan EMI.
49
SMS gateway ini kemudian ditempatkan diantara kedua SMSC berbeda
tersebut, yang berfungsi sebagai relay bagi keduanya, yang kemudian
akan menterjemahkan data dari protokol SMSC satu ke protokol SMSC
lainnya yang dituju.
SMSC 1 SMSGateway SMSC 2
SMSCProtokol 1
SMSCProtokol 2
Gambar 2.21 Ilustrasi SMS gateway
Namun dengan seiring perkembangan teknologi komputer, baik
software mauipun hardware, dan perkembangan teknologi komunikasi,
SMS gateway tidak lagi dimaksudkan sebagaimana ilistrasi di atas. Saat
ini masyarakat lebih mengartikan SMS gateway sebagai suatu jembatan
komunikasi yang menghubungkan perangkat komunikasi (handphone)
dengan perangkat komputer, yang menjadikan aktifitas SMS menjadi
lebih mudah dan menyenangkan.
Dan pengertian SMS gateway saat ini adalah sebuah program
yang mengkomunikasikan antar sistem operasi komputer, dengan
perangkat komunikasi yang terpasang untuk mengirim atau menerima
SMS (Yonianto, 2006 p76).
Aplikasi SMSGateway
PerangkatKomunikasi
Gambar 2.22 Aplikasi SMS gateway
50
2.12.2 Perangkat Komunikasi
Perangkat komunikasi yang dimaksud di sini adalah perangkat
yang dapat digunakan untuk mengirim atau menerima SMS. Perangkat-
perangkat tersebut antara lain :
• Telepon seluler (Handphone)
Apapun tipe handphone yang digunakan, bisa dipastikan memiliki
feature untuk SMS, baik yang menggunakan teknologi GSM maupun
CDMA. Namun bukan berarti ponsel-ponsel tersebut dapat digunakan
sebagai piranti SMS gateway. Agar dapat terhubung ke komputer,
ponsel harus memiliki fasilitas koneksi ke perangkat lain, baik dengan
kabel, bluetooth, maupun infrared.
• GSM Modem
GSM Modem adalah sebuah modem wireless yang bekerja dengan
jaringan GSM. Fungsi dari GSM modem ini hampir sama dengan
modem biasa, bedanya terletak pada media yang digunakan untuk
transfer data. Bila modem biasa menggunakan kabel telepon untuk
transfer data, GSM modem menggunakan gelombang radio sebagai
medianya.
• GPRS Modem
GPRS modem memiliki funsi yang mirip dengan GSM modem.
Perbedaan paling mendasar adalah dengan adanya tambahan dukungan
51
untuk teknologi GPRS pada transmisi datanya. Kecepatan SMS pada
GPRS modem lebih cepat dibanding dengan GSM modem. Selain itu
GPRS modem lebih bermanfaat untuk mengirim atau menerima MMS.
Namun sayangnya tidak semua operator menyediakan layanan
pengiriman SMS melalui GPRS.
2.12.3 Media Koneksi
Media koneksi adalah media yang dapat digunakan untuk
mengirimkan data dari perangkat komunikasi ke komputer atau
sebaliknya (Yunianto, 2006 p77). Media-media tersebut diantaranya
adalah :
• Kabel Data
Ada banyak jenis dan tipe kabel data yang dapat digunakan untuk
menghubungkan sebuah ponsel dengan komputer, hal ini tergantung
tipe dan merk ponsel tersebut.
• Bluetooth
Bluetooth adalah sebuah standar spesifikasi yang mendefinisikan
bagaimana atarperangkat (telepon, komputer, PDA atau perangkat
digital lainnya) dapat saling berkomunikasi, dan berhubungan tanpa
melalui kabel (wireless).
52
Media yang dipakai dalam transmisi datanya adalah gelombang radio
yang berjalan pada frekwensi ISM 2,4 GHz. ISM (Industrial
Scientific and Medical) merupakan frekwensi bebas yang
diperuntukkan untuk keperluan industri, ilmu pengetahuan, dan
medis. Jarak maksimal untuk komunikasi dengan menggunakan
teknologi bluetooth adalah 100 meter.
• Infrared Data Association (IrDA)
IrDA adalah sebuah organisasi nonprofit yang dibentuk untuk
membuat sebuah standar teknologi transmisi data tanpa kabel dengan
sinar infra merah sebagai medianya.
Prinsip kerjanya, sebuah tranceiver IrDA akan mengirimkan pulsa
infra merah dalam bentuk kerucut dengan sudut berkisar antara15
hingga 30 derajat dari titik tengah. Gelombang infra merah yang
digunakan oleh IrDA adalah gelombang dengan panjang gelombang
antara 0,85 hingga 0,90 mikro meter. Secara umum jarak maksimal
perangkat IrDA agar dapat nerkomunikasi adalah sepanjang 1 meter
tanpa penghalang.
2.12.4 Tools SMS Gateway
Saat ini banyak Tool-tool SMS gateway yang bersifat open
source, beberapa diantaranya adalah sebagai berikut :
53
• Kannel
Kannel adalah tool SMS gateway yang sangat terkenal dan handal
yang bersifat open dan free. Awalnya kannel ditunjukkan untuk WAP
gateway, namun dikembangkan menjadi SMS gateway. Kannel dapat
digunakan untuk koneksi ke SMSC operator, dapat juga menggunakan
GSM modem sebagai SMSC virtual. Untuk digunakan sebagai wap
atau SMS gateway, dibutuhkan sebuah halaman web sebagai interface-
nya, karena kannel tidak memiliki aplikasi yang dapat digunakan
langsung dalam console.
• Gnokii
Dengan menggunakan gnokii anda dapat langsung mengirim SMS,
membaca SMS, maupun operasi pengelolaan ponsel seperti
memasukkan ringtone, wallpaper, membaca phonebook dan lainnya
secara langsung, baik melalui console maupun aplikasi grafis yang
telah disediakan gnokii.
• jSMSEngine
jSMSEngine adalah tool SMS gateway yang ditulis dengan bahasa
pemrograman Java. Selain mirip dengan Gnokii, perangkat yang
didukung oleh tool ini adalah ponsel dengan teknologi GSM dan GSM
modem. Karena telah menggunakan bahasa Java, maka tool ini dapat
54
digunakan oleh semua sistem operasi yang telah mendukung Java,
baik Linux, Windows maupun yang lainnya.
• Smslink
SMS gateway yang dibuat oleh Philippe Andersson ini, terinspirasi
oleh sebuah aplikasi standalone yang dibuat dengan Delphi oleh Nico
Rotty. Mirip dengan Gnokii, smslink juga menyediakan perintah
console dan daemon yang dapat digunakan untuk mengoperasikan
SMS gateway. Bedanya, tool ini sepenuhnya menggunakan AT
Command, sehingga lebih diarahkan pada perangkat-perangkat GSM.
Selain itu, tool ini tidak mampu menangani kirim logo, wallpaper atau
ringtone ke perangkat GSM tersebut.