BAB II
LANDASAN TEORI

2.1	  		Sejarah Telkom
	PT Telekomunikasi Indonesia Tbk., yang selanjutnya disebut TELKOM atau Perseroan, merupakan perusahaan informasi dan komunikasi (InfoCom) serta penyedia jasa dan jaringan telekomunikasi secara lengkap (full service and network provider) yang terbesar di Indonesia. 
	TELKOM menyediakan jasa telepon tetap kabel (fixed wire line), jasa telepon tetap nirkabel (fixed wireless), jasa telepon bergerak (mobile service), data & internet serta jasa multimedia lainnya, dan network & interkoneksi, baik secara langsung maupun melalui perusahaan asosiasi. 
	Pada akhir September 2005, Perseroan menjadi pemegang saham mayoritas di 9 (sembilan) anak perusahaan, termasuk di PT Telekomunikasi Selular (Telkomsel), yang memiliki pangsa pasar terbesar dalam industri selular di Indonesia dengan EBITDA (perolehan laba sebelum bunga) margin sebesar 72%, merupakan salah satu yang tertinggi di dunia. 
	Kepemilikan saham TELKOM saat ini dimiliki oleh pemerintah RI sebesar 51,19% dan oleh publik 48,81%. Sebagian dimiliki oleh investor asing sebesar 45,58% dan sisanya oleh investor lokal sebesar 3,23% dengan kapitalisasi pasar untuk saham TELKOM saat ini berkisar 15 % dari total kapitalisasi pasar di BEJ. 
	TELKOM mencatatkan sahamnya di bursa efek dalam dan luar negeri yaitu Bursa Efek Jakarta (BEJ), Bursa Efek Surabaya (BES), New York Stock Exchange (NYSE), London Stock Exchange (LSE) dan Tokyo Stock Exchange (TSE) (Public Offering Without Listing/POWL). 
2.2			Perkembangan Teknologi Informasi
		Telepon selular atau yang lebih sering disebut Handphone merupakan media yang sangat praktis untuk melakukan komunikasi di manapun user berada tanpa dibatasi oleh ruang, waktu, dan panjang kabel. Kondisi seperti ini yang mendorong produsen Telepon Selular untuk mengeluarkan produk baru dengan berbagai macam teknologi baru yang semakin memberi kemudahan dan kenyamanan pemakai dalam berkomunikasi ataupun mengakses informasi.
		Fungsi Telepon Selular pada masa kini tidak hanya sebagai alat komunikasi praktis saja. Fungsi Telepon Selular memang sangat bervariasi tergantung pada model yang tiap waktunya selalu berkembang.
		Fungsi Handphone selain sebagai alat komunikasi juga memiliki fungsi-fungsi lain yang sangat bervariasi di antaranya adalah :
1)	Digunakan sebagai media untuk menyimpan informasi
2)	Membuat daftar pekerjaan atau perencanaan pekerjaan
3)	Mencatat appointment (janji pertemuan) dan dapat disertakan reminder (pengingat waktu)
4)	Kalkulator untuk perhitungan dasar sederhana
5)	Mengirim dan menerima e-mail
6)	Mencari informasi (berita, hiburan, dan informasi lain) dari internet
7)	Memainkan permainan-permainan sederhana 
8)	Integrasi ke peralatan lain, seperti PDA, MP3 Player, dan GPS (Global Positioning System)

2.3			Teknologi SMS (Short Message Service)
		SMS merupakan salah satu fitur messaging yang ditetapkan oleh standar ETSI (European Telecommunication Standard Institute) yang merupakan badan pembuat spesifikasi untuk GSM. SMS adalah aplikasi ponsel yang menyediakan layanan untuk mengirim dan menerima pesan pendek berupa huruf dan angka. Aplikasi ini hanya terbatas pada pengiriman dan penerimaan data berupa teks. Beberapa jaringan yang dapat digunakan untuk mengirimkan SMS antara lain PDC (Personal Digital Cellular), CDMA (Code Division Multiple Access), GSM (Global System Mobile). Beberapa jaringan ini berkomunikasi melaui sejumlah protokol seperti SMPP (Short Message Peer -To - Peer  ), UCP (Universal Computer Protocol). HTTP (Hypertext   Transfer Protocol), dan SMTP (Simple Mail Transport Protocol). (Oetomo & Handoko, 2003)
 
2.4			Cara Kerja SMS (Short Message Service)
		Pada saat mengirim pesan SMS dari ponsel (mobile originated) ke ponsel tujuan (mobile terminated) dengan menggunakan jaringan wireless GSM, sebenarnya pesan tersebut tidak langsung dikirimkan ke ponsel tujuan akan tetapi dikirimkan terlebih dahulu ke SMS Center (SMSC) operator GSM, baru kemudian pesan tersebut diteruskan ke ponsel tujuan (mobile terminated). Dapat diartikan bahwa SMS Center (SMSC) dalam hal ini bertindak sebagai sistem simpan dan teruskan (store and forward) untuk pesan pendek. Jaringan wireless akan menangani pengiriman pesan pendek antara SMSC. Ada beberapa karakteristik pesan SMS yang penting, yaitu :
a)	Pesan SMS yang dikirim dijamin sampai atau tidak sama sekali, artinya jika terjadi kegagalan sistem atau hal lain yang menyebabkan pesan tersebut tidak diterima, maka akan diberikan informasi (report) yang menyatakan bahwa pesan SMS gagal dikirim.
b)	Berbeda dengan fungsi Call (pemanggilan), sekalipun saat mengirim pesan SMS ponsel tujuan (mobile terminated) sedang tidak aktif, bukan berarti SMS gagal dikirim. Namun SMS akan masuk ke dalam antrian selama belum mengalami time-out, dan SMS akan segera dikirim jika ponsel tujuan (mobile terminated) aktif. (Oetomo dan Handoko, 2003)
 
2.5		AT Command
		AT Command adalah perintah-perintah yang digunakan untuk berkomunikasi dengan serial port, dengan AT Command ini dapat diketahui vendor dari ponsel yang digunakan, kekuatan sinyal, pembacaan pesan pada SIM Card dan juga mengirim serta mendeteksi pesan yang masuk.
		Perintah-perintah AT Command yang dimasukkan ke port dimulai dengan kata AT, lalu diikuti oleh karakter lainnya yang memiliki fungsi-fungsi yang unik. Misalnya ATE1 digunakan untuk menyatakan status port, jika output “OK” maka kondisi port tersebut siap untuk dipakai berkomunikasi.
		Perintah-perintah AT Command biasanya disediakan oleh vendor alat komunikasi, jika tidak ada maka dapat mendownloadnya dari internet. Koneksi jika sudah tidak dipakai lagi dilakukan penutupan kembali, agar port/modem tersebut dapat digunakan untuk keperluan yang lain. Beberapa AT Command yang penting untuk digunakan dalam SMS yaitu sebagai berikut :
	AT 		: untuk mengecek apakah HP telah terhubungi
	AT + CMGF	: untuk menetapkan format mode dari terminal
	AT + CSCS	: untuk menetapkan jenis encoding
	AT + SNMI	: untuk mendeteksi pesan SMS baru masuk secara               otomatis
	AT + CMGL	: untuk membuka daftar SMS baru yang ada pada SIM card
	AT + CMGS	: untuk mengirim SMS
	AT + CMGC	: untuk memeriksa SMS
	AT + CMGD	: untuk menghapus SMS
		AT Command biasanya diikuti oleh data I/O yang diwakili oleh unit-unit PDU, disamping untuk SMS sebenarnya masih ada banyak AT Command yang lain. (Wahana Komputer, 2005)

2.6		Definisi Sistem, Informasi, dan Sistem Informasi
	Sistem adalah suatu jaringan kerja dari prosedur-prosedur yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu kegiatan atau untuk menyelesaikan suatu sasaran yang tertentu.
	Informasi adalah data yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi yang menerimanya.
	Sistem Informasi adalah suatu sistem di dalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi harian, mendukung operasi, bersifat manajerial dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan.
	Sistem informasi memiliki beberapa keutamaan utama, yaitu :
•	Melaksanakan komputasi numerik, bervolume besar, dan dengan kecepatan tinggi.
•	Menyediakan komunikasi dalam organisasi atau antar organisasi yang murah, akurat, dan cepat.
•	Menyimpan informasi dalam jumlah yang sangat besar dalam ruang yang kecil tetapi mudah diakses.
•	Memungkinkan pengaksesan informasi yang sangat banyak di seluruh dunia dengan cepat dan murah.
•	Meningkatkan efektivitas dan efisiensi orang-orang yang bekerja dalam kelompok, dalam suatu tempat, atau pada beberapa lokasi.
•	Menyajikan informasi dengan jelas yang menggugah pikiran manusia.
•	Mengotomasi proses-proses bisnis yang semiotomatis dan tugas-tugas yang dikerjakan secara manual.
•	Mempercepat pengetikan dan penyuntingan.
•	Pembiayaan yang jauh lebih murah daripada pengerjaan secara manual.
	Dalam suatu sistem informasi terdapat komponen-komponen seperti perangkat keras (hardware), perangkat lunak (software) atau program, prosedur (aturan), orang, basis data (database), serta jaringan komputer dan komunikasi data. Pada prakteknya, tidak semua sistem informasi mencakup keseluruhan komponen tersebut. Komponen-komponen yang terlibat tergantung pada bentuk sistem informasi yang digunakan, yaitu sederhana atau lebih kompleks.

2.7		Database	
	Database adalah kumpulan data tentang suatu benda atau kejadian yang saling berhubungan satu sama lain, sedangkan data merupakan fakta yang mewakili suatu objek seperti manusia, hewan, peristiwa, konsep, keadaan, dan sebagainya, yang dapat dicatat dan mempunyai arti yang implisit.
	Database merupakan komponen utama sistem informasi karena semua informasi untuk pengambilan keputusan berasal dari data di database.
	Pengelolaan database dapat dilakukan secara manual atau dengan komponen database berbasis komputer, dimana dapat dikelola baik oleh sekumpulan program aplikasi untuk suatu kepentingan atau oleh Sistem Manajemen Basis Data atau Database Management System (DBMS). DBMS adalah kumpulan program yang digunakan untuk membuat dan mengelola database. Gabungan antara database dan perangkat lunak DBMS termasuk didalamnya program aplikasi yang dibuat dan bekerja dalam satu sistem, selanjutnya disebut Sistem Database.
	Bahasa database (database language) adalah bahasa pada sistem database untuk melakukan pendefinisian dan manipulasi database. Berdasarkan fungsinya, bahasa database mempunyai tiga komponen utama, yaitu :
1.	DDL (Data Definition Language)
DDL berfungsi untuk menspesifikasikan skema atau struktur database. Hasil pernyataan DDL adalah himpunan definisi data yang disimpan secara khusus di kamus data (data dictionary atau data directory). Dengan  DDL, dimungkinkan untuk membuat dan menghancurkan objek-objek database (database/schema, domain, table, view, dan index).
Contoh bentuk-bentuk pernyataan DDL antara lain :
CREATE nama_objek (untuk membuat suatu objek pada database), ALTER nama_objek (untuk menambah suatu objek pada database), DROP nama_objek (untuk menghapus suatu objek pada database).

2.	DML (Data Manipulation Language)
DML berisi sekumpulan operasi manipulasi data di database. DML disebut bahasa query ke database, yaitu pernyataan untuk meminta informasi. sebagai bagian dari DML untuk pengambilan informasi dari database. DML mendefinisikan kalimat pengambilan, penyisipan, pembaruan, dan penghapusan data.
Contoh bentuk-bentuk pernyataan DML antara lain :
SELECT (untuk query atau meminta informasi dari database), INSERT (untuk menyisipkan data di tabel pada suatu database), UPDATE (untuk memperbarui data di tabel pada suatu database), DELETE (untuk menghapus data di tabel pada suatu database).
3.	DCL (Data Control Language)
DCL merupakan sub bahasa untuk mengendalikan struktur internal database. DCL digunakan untuk menyesuaikan sistem agar efisien. Perintah-perintah DCL bergantung pada vendor, namun pada intinya hanya terdapat dua perintah DCL, yaitu :
1)	Grant
Pernyataan yang digunakan untuk memberikan wewenang pada objek-objek database untuk pemakai-pemakai spesifik.
2)	Revoke
Pernyataan yang digunakan untuk mencabut semua atau beberapa wewenang pemakai pada objek-objek database.

2.8		Visual Basic 6.0
		Microsoft Visual Basic 6.0 adalah suatu bahasa pemrograman yang bersifat object oriented. Microsoft Visual Basic 6.0 menyediakan fasilitas yang memungkinkan untuk menyusun sebuah program dengan memasang objek-objek grafis dalam sebuah form Visual Basic 6.0 dengan berawal dari bahasa pemograman BASIC (Beginners All-Purpose Symbolic Intruction Code).
2.8.1		IDE Visual Basic   
		Sebelum menggunakan Visual Basic sebagai program visual, terlebih dahulu masuk ke dalam IDE (Integrated Development Environment) karena menghubungkan beberapa fungsi seperti editing, compiling, dan debugging dengan cara yang umum digunakan. Visual Basic 6 menggunakan model MDI (Multiple Document Interface). Berikut ini adalah gambar yang menunjukkan bagian-bagian dan nama-nama jendela yang dapat tampil pada IDE Visual Basic.

gambar 2.1 IDE Visual Basic dengan jendela-jendela yang terbuka
      		Tampilan inilah yang disebut dengan lingkungan Integrated Development Environment (IDE) dengan tampilan jendela-jendela yang terbuka. Adapun jendela-jendela tersebut adalah :
1.	Menu Bar, digunakan untuk memilih tugas-tugas tertentu seperti menyimpan project dan membuka project.
2.	Main Toolbar, digunakan untuk melakukan tugas-tugas tertentu dengan cepat.
3.	Jendela Project, jendela ini berisi gambaran dari semua modul yang terdapat dalam aplikasi yang dibuat.programmer dapat menggunakan icon Toggle Folders untuk menampilkan modul-modul dalam jendela tersebut secarai group atau berurut berdasarkan nama. Dapat juga menggunakan Ctrl+R untuk menampilkan jendela project.
4.	Jendela Form Designer, jendela ini merupakan tempat untuk merancang user interface dari aplikasi.
5.	Jendela Toolbox,  jendela ini berisi komponen-komponen yang dapat digunakan untuk mengembangkan user interface.
6.	Jendela Code, merupakan tempat untuk menulis Coding. Jendela ini dapat ditampilkan dengan menggunakan kombinasi Shift-F7.
7.	Jendela Properties, merupakan daftar properti-properti object yang sedang terpilih. 
8.	Jendela Color Palette, adalah fasilitas cepat untuk mengubah warna suatu object.
9.	Jendela Form Layout, akan menunjukkan bagaimana form bersangkutan ditampilkan ketika runtime.

2.8.2 	Toolbox 
      		Jendela Toolbox merupakan jendela yang sangat penting. Dari jendela ini dapat diambil komponen-komponen (object) yang akan ditanamkan pada form untuk membentuk user interface. Adapun bentuk ToolBox adalah seperti gambar 2.2.

gambar 2.2 Toolbox Visual Basic 6 dengan semua kontrol intrinsic
     		Adapun secara garis besar fungsi dari masing-masing intrinsik kontrol pada toolbox adalah sebagai berikut :
1.	Pointer bukan merupakan suatu kontrol, gunakan icon ini ketika memilih kontrol yang sudah berada pada form.
2.	Label, menampilkan teks yang tidak dapat diedit oleh user
3.	Textbox, Area yang mendukung untuk memasukkan dan mengedit teks
4.	Commond Button, Untuk membuat suatu aksi saat objek ini diklik
5.	Option Button, Kontrol option button ini merupakan bagian dari option group dengan option button lainnya. Menampilkan beberapa pilihan dimana user hanya dapat memilih satu. 
6.	ChekBox Menampilkan pilihan true/false atau yes/no.
7.	 ComboBox, Merupakan kombinasi text box dengan list box. Memberi kesempatan pada user untuk mengetikkan sebuah pilihan atau memilih item dari drop down
8.	List Box, untuk menampilkan daftar item di mana user dapat memilih darinya.
9.	Frame, dapat digunakan sebagai wadah control
10.	Image, menampilkan Bitmap, ikon, file JPG atau GIF dan yang lainnya seperti command button saat diklik
11.	Line, untuk menambahkan garis pada form
12.	Picture Box, menampilkan bitmap, atau windows metafile, file JPG atau GIF. Juga merupakan teks atau gambar seperti wadah visual intik control lain. 
13.	OLE Container, untuk menempelkan data ke dalam aplikasi Visual Basic
14.	Shape, menambahkan rectangle, square, ellips atau circle ke dalam form, frame atau picturebox
15.	Scroll bar Horizontal dan Vertical, dapat digunakan untuk menambah scroll bars ke control yang tidak otomatis mendukungnya. 
16.	Timer, mengeksekusi event timer dalam interval waktu tertentu
17.	File list box, menampilkan dan memberi kesempatan pada user untuk memilih file dari sebuah daftar
18.	Direktori list box, menampilkan dan memberi kesempatan pada user untuk memilih folder dan path
19.	Drive list box, Menampilkan dan memberi kesempatan pada user untuk memilih drive
20.	Data, dapat digunakan untuk menghubungkan dengan sebuah database dan menampilkan informasinya pada sebuah form.

2.8.3		Tipe Variabel 
     		Variabel adalah suatu tempat dalam memori komputer yang diberi nama (sebagai pengenal) dan dialokasikan untuk menampung data. Sesuai data yang ditampung, variabel harus mempunyai tipe data yang sesuai dengan isinya.  Penggunaan variabel yang bertingkat prosedur hanya dikenal dalam prosedur tersebut. Variabel-variabel ini sering dikenal dengan variabel lokal. Variabel lokal dapat di deklarasikan dengan menggunakan kata kunci Dim atau Static. 
Contoh :  Dim Angka As Integer
                Static Angka As Integer
		Nilai-nilai dalam variabel lokal yang dideklarasikan dengan kata kunci static berlaku saat aplikasi dijalankan, sedangkan nilai-nilai dalam variabel lokal yang dideklarasikan dengan kata kunci Dim dalam prosedur hanya berlaku saat prosedur tersebut dieksekusi.
      		Tipe data yang disediakan Visual Basic 6.0, yaitu tipe Currency, Decimal, Object dan Variant. Variant merupakan tipe variabel yang istimewa karena dapat berubah dari satu tipe ke tipe yang lain, sesuai dengan evaluasi ekspresi oleh Visual Basic 6.0. Jenis tipe data dapat dilihat pada tabel 2.1.
Tabel 2.1 Tipe Data
Tipe Data	Ukuran Storage	Jangkauan	
Byte	1 byte	0 s/d 255	
Boolean	2 byte	True atau False	
Integer	2 byte	-32,768 s/d 32767	
Long	4 byte	-2,147,483,648 s/d 2,147,483,647	
Single	4 byte	-3.402823E38 s/d -1.401298E-45 (-)
1.401298E-45 s/d 3.402823E38 (+)	
Double	8 byte	-1.79769313486232E308 s/d
 -4.94065645841247E-324 (-)	
Currency	8 byte	-922,337,203,685,477.5808 s/d
 922,337,203,685,477.5807	
Decimal	14 byte	+/- 79,228,162,514,264,337,593,543,950,335	
Date	8 byte	1 Januari 100 s/d 31 Desember 9999	
Object 	4 byte	Mengacu pada objek tertentu	
String (panjang variabel)	10 byte + panjang string	0 sampai lebih kurang 2 milyar	
String (panjang tetap)	Panjang dari string	1 sampai lebih kurang 65,400	
Variant (dengan angka)	16 byte	Sembarang angka sampai jangkauan jenis Double	
Variant (dengan karakter)	22 byte + panjang string	Sama dengan jangkauan variable String	

2.8.4		Operator Pada Visual Basic 6.0 dan Urutan Operasinya.
      		Visual Basic 6.0 menyediakan operator aritmatika, komperasi dan logika, salah satu hal yang harus dipahami adalah tata urutan operasi dari masing-masing operator tersebut sehingga mampu membuat ekspresi yang akan menghasilkan nilai yang benar. Jenis Operator pada Visual Basic 6.0 dan urutan operasi dari atas ke bawah dapat dilihat  pada tabel 2.2.
Tabel 2.2 Operator pada Visual Basic 6.0
dan urutan operasi dari atas ke bawah
Aritmatika	Komparasi	Logika	
Pangkat (^)	Sama (=)	Not	
Negatif (-)	Tidak sama (<>)	And	
Kali dan Bagi (*, /)	Kurang dari (<)	Or	
Pembagian bulat (\)	Lebih dari (>)	Xor	
Sisa bagi (Mod)	Kurang dari atau sama (<=)	Eqv	
Tambah dan Kurang (+, -)	Lebih dari atau sama (>=)	Imp	
Penggabungan String (&)	Like		

2.8.5		Deklarasi Variabel
      		Setiap variabel yang digunakan harus dideklarasikan dengan perintah Option Explicit dan deklarasi variabel pada Visual Basic 6.0 dapat dilakukan dengan keyword yang ada pada tabel 2.3.
Tabel 2.3 Keyword pada deklarasi variabel
Keyword	Digunakan pada	
Public	Berlaku pada level modul	
Private	Berlaku pada level modul	
Dim	Berlaku pada level modul dan level procedure	
Static	Berlaku pada level procedure	

2.9			Microsoft Access
      		Microsoft Access merupakan System Management Database Relational (RDBMS), karena dapat mengatur data tentang bidang subjek yang berbeda ke dalam tabel-tabel. Kemudian bisa membuat hubungan di antara tabel. Pendekatan ini memudahkan membawa data yang terkait bila dibutuhkan. Dengan membentuk hubungan di antara tabel-tabel terpisah, bukannya menyimpan semua informasi dalam satu tabel besar, berarti dapat menghindari duplikasi banyak data, menghemat ruang penyimpanan dalam komputer dan memaksimalkan kecepatan dan akurasi kerja data.
      	Microsoft Access membantu mengelola database dengan cara menyediakan struktur efisien untuk menyimpan dan mengambil informasi. Tempat untuk menyusun tentang setiap subjek yang akan dilacak di sebut tabel, dan setiap kategori fakta yang di kumpulkan dalam tabel disebut field. Microsoft Access secara otomatis dapat menghasilkan sebuah form, dan cukup memasukan data dalam form ini. Setelah memasukan beberapa data, dapat meminta Microsoft Access untuk menampilkan bagian tertentu dari informasi menggunakan prosedur yang disebut find, sort atau query. Microsoft Access juga membantu mencetak hanya bagian informasi yang ingin dilihat dalam sebuah laporan. Setiap saat dapat membentuk tampilan atau menyunting isi sembarang bagian dari database.

2.10	Regulasi Tarif dan Denda
•	Tarif
Pada Sistem Informasi Tagihan Rekening Telepon Rumah melalui SMS di Telkom SOE ini terdapat tabel dengan nama TARIF yang mana berisi tarif umum yang berlaku sama untuk semua pelanggan Telkom. Tarif ini berupa Abonemen sebesar Rp 20.600 dan PPN sebesar 10 % dari total tagihan yang akan dibayar. 
•	Denda
Selain tarif terdapat juga denda. Pelanggan harus membayar denda jika pelanggan membayar tagihan rekening telepon tidak tepat waktu atau melewati batas tanggal pembayaran. Batas tanggal pembayarannya adalah tanggal 20. Jika pelanggan melakukan pembayaran lebih dari tanggal 20 maka akan terkena denda dengan ketentuan sebagai berikut :
•	Jika tidak membayar selama 1 - 10 hari dari batas tanggal pembayaran maka akan terkena denda sebesar 5 % dari total tagihan yang akan dibayar.
•	Jika tidak memmbayar selama 10 - 40 hari dari batas  tanggal pembayaran maka akan terkena denda sebesar 10 % dari total tagihan yang akan dibayar.
•	Jika tidak membayar selama 40 hari dan terhitung selama 3 bulan (misalnya mei, juni, juli) berturut-turut pelanggan tidak membayar tagihan rekening telepon maka akan dilakukan pencabutan.