6
BAB 2 LANDASAN TEORI
2.1
Sistem Informasi Sistem adalah serangkaian atau tatanan elemen-elemen yang diatur untuk mencapai tujuan yang telah ditentukan sebelumnya melalui pemrosesan informasi (Pressman, 2001, p276). Sistem informasi dapat dijelaskan secara teknis sebagai sebuah kumpulan komponen yang saling terkait yang mengumpulkan, mengambil, memproses, menyimpan dan mendistribusikan informasi untuk mendukung pengambilan keputusan, koordinasi, dan kontrol di dalam sebuah organisasi. Komponen-komponennya dapat berupa perangkat keras (hardware), perangkat lunak (software), manusia, data dan prosedur. Menurut O’Brien (2003, p11), Sebuah sistem memiliki tiga komponen atau fungsi dasar, yaitu : − Input, meliputi elemen-elemen yang ditangkap dan dirangkai untuk dimasukkan ke dalam sistem komputer untuk diproses lebih lanjut. Biasanya dapat berupa perintah dari keyboard, mouse, data, dll. − Processing, meliputi proses perubahan yang mengubah sebuah input menjadi sebuah output. − Output, meliputi pemindahan elemen-elemen yang telah dihasilkan dari sebuah proses perubahan untuk tujuan akhir yang diinginkan. Biasanya dapat berupa informasi dalam bentuk yang beragam, seperti angka biner, karakter, dan gambar.
7 2.2
Internet
2.2.1
Pengertian Internet Internet berasal dari kata Interconnection Networking yang disebut juga sebagai
cyber space. Internet merupakan rangkaian komputer yang berhubung menerusi beberapa rangkaian. Internet adalah sistem komputer umum, yang terhubung secara global dan menggunakan TCP/IP sebagai protokol pertukaran paket (packet switching communication protocol). (Wikipedia, 2007). Internet merupakan jaringan terbesar yang dibentuk oleh interkoneksi antara jaringan komputer maupun komputer tunggal yang ada diseluruh dunia, baik melalui saluran telepon, satelit, maupun sistem telekomunikasi lainnya. Koneksi tersebut juga digunakan untuk saling melakukan komunikasi antara individu-individu dalam suatu institusi, misalnya melalui electronic mail (email), transfer file data, forum diskusi, dan lain-lain. Keuntungan yang didapatkan dari adanya internet adalah: •
Pengurangan biaya Penggunaan internet dapat membantu mengurangi biaya dalam bidang penjualan dan pemasaran yang biasanya harus ditangani oleh seorang operator telepon dan kebutuhan untuk mencetak serta menyebarkan berbagai macam bahan yang digunakan sebagai media promosi.
•
Kemampuan Internet menyediakan kesempatan bagi produk dan jasa baru, termasuk juga untuk mengeksploitasikan pasar baru.
8 •
Keuntungan yang kompetitif Perusahaan memiliki peluang untuk mendapat keuntungan dalam berkompetisi dengan perusahaan lain, karena melalui penggunaan internet maka perusahaan dapat lebih cepat dalam memperkenalkan kemampuan atau produknya.
•
Penyempurnaan komunikasi Dengan menggunakan internet, komunikasi yang tercipta antara pelanggan, karyawan, penyuplai, dan penyalur akan lebih mudah dan lancar.
•
Kontrol Internet
akan
membuat
penelitian
pasar
menjadi
lebih
baik
dengan
memperhatikan sikap para pelanggan. •
Perbaikan pelayanan terhadap pelanggan Menyediakan tempat untuk menampung serta menjawab pertanyaan-pertanyaan dari para pelanggan, baik tentang informasi barang maupun jasa.
2.2.2 World Wide Web (WWW) Web merupakan suatu sistem yang dapat menyebabkan pertukaran data didalam internet menjadi lebih mudah dan efisien. Komponen dasar web : Web server, yaitu sebuah atau seperangkat komputer yang digunakan untuk menyimpan dan mendistribusikan data kekomputer lain (yang meminta informasi) melalui jaringan internet.
9 Web browser, merupakan suatu software yang dijalankan pada komputer pemakai/client yang meminta informasi dari web server dan kemudian menampilkan informasi yang diterima sesuai dengan data file itu sendiri. Untuk dapat mengakses suatu web, sesorang membutuhkan komputer dan web browser serta modem yang terpasang. Modem merupakan sebuah piranti yang digunakan untuk mengubah sinyal komputer kedalam bentuk suara dan gambar ataupun sebaliknya, sehingga komputer dapat saling berkomunikasi satu sama lain melalui saluran telepon. Setelah web browser dijalankan, komputer diarahkan agar melakukan dialing kepihak penyelenggara layanan internet. Kemudian browser diberi alamat website dan web server akan memberikan respon dengan mengirim sebuah halaman informasi yang dapat berupa teks dengan berbagai ukuran dan gaya, dan dapat pula disertai dengan gambar ataupun grafik lainnya. Gambar atau teks tertentu akan bergaris bawah atau ditonjolkan (highlight), yang menunjukkan tersedia informasi yang lebih detail.
2.2.3 Hypertext Markup Language (HTML) HTML merupakan suatu sistem yang dapat digunakan untuk menciptakan suatu halaman ataupun dokumen yang ditampilkan melalui jaringan web. Dokumen HTML dapat dibuat dengan menggunakan text editor standar, misalnya notepad atau textpad, tetapi akan jauh lebih mudah jika menggunakan editor yang dirancang khusus untuk pembuatan halaman HTML, seperti Microsoft Frontpage dan Macromedia Dreamweaver.
10
2.2.4 Hypertext Transfer Protocol (HTTP) Dalam pengoperasiannya, jaringan internet menggunakan suatu set protokol yang bertugas untuk mengontrol dan mengarahkan data didalam suatu jaringan secara keseluruhan. Protokol ini disebut sebagai Transfer Control Protocol (TCP). Beberapa contoh dari protokol ini adalah File Transfer Protocol (FTP), Simple Mail Protocol (SMTP), dan Hypertext Transfer Protocol (HTTP). Protokol HTTP digunakan dalam world wide web untuk melakukan transfer dan juga memproses file HTML sehingga dapat diakses oleh setiap komputer didunia.
2.2.5 Uniform Resource Locator (URL) Kunci utama dari penggunaan browser agar dapat bekerja dengan berbagai sistem yang berbeda didalam internet adalah penggunaan Uniform Resource Locator (URL). URL merupakan suatu standar yang digunakan untuk menampilkan informasi yang memuat tentang jenis isi, nama file, letak file, lokasi komputer, serta jenis protokol internet yang digunakan untuk mengakses file tersebut. Jaringan internet sangat besar dan merupakan interkoneksi yang terdistribusi sehingga diperlukan url untuk menstandarkan keanekaragaman tersebut.
2.3
Pengembangan Sistem
2.3.1
Rekayasa Piranti Lunak Software Engineering berhubungan dengan teori, metode, serta alat yang
dibutuhkan dalam membangun suatu rekayasa software (piranti lunak) yang
11 digunakan dalam rangka mendapatkan software yang ekonomis, terpercaya dan mampu bekerja secara efisien pada mesin atau komputer. Proses pembangunan software merupakan himpunan dari segala aktivitas, dan dari hubungan aktivitas-aktivitas tersebut dihasilkan suatu produk software. Salah satu model dari proses pengembangan software adalah model linear sekuensial (the Waterfall Model Approach), dimana setiap tahap harus diselesaikan terlebih dahulu sebelum menjalankan tahap berikutnya dalam pengembangan software.
Gambar 2.1 The Waterfall Model (Pressman, 2001)
Penjelasan setiap tahap yang ada dalam proses pengembangan software melalui waterfall model adalah sebagai berikut :
12 •
Requirements Definition Merupakan proses rekayasa awal dalam pengembangan software. Pada tahap ini dilakukan proses identifikasi setiap pernasalahan yang dihadapi dalam proses pengembangan software.
•
Spesification Phase Merupakan proses yang bertujuan untuk menganalisis sistem beserta permasalahan yang telah diidentifikasi agar dapat diketahui lebih jelas mengenai sistem informasi yang dapat diusulkan.
•
System and Software Design Merupakan proses yang dilakukan setelah mendapatkan hasil analisa sistem. Proses design memuat hubungan fungsi dari komponen-komponen sistem yang ada, misalnya struktur data, arsitektur software, prosedur detail, dan sebagainya.
•
Implementation and Unit Testing Merupakan proses penggunaan modul-modul program yang sudah dibuat. Proses ini dilakukan secara bertahap dengan melakukan pengetesan terhadap setiap modul tersebut secara terpisah.
•
Integration and System Testing Merupakan pengintegrasian setiap modul kedalam sistem, dan pada tahap ini dilakukan pengetesan terhadap sistem tersebut.
•
Acceptance Testing Setelah dilakukan pengetesan terhadap program yang telah dibuat, dapat diketahui apakah program tersebut dapat berjalan dengan baik serta melihat
13 kesalahan dan kekurangan yang masih terdapat pada program tersebut dan kemudian segera dilakukan perbaikan atau penyesuain terhadap kesalahan tersebut. •
Operations and Maintenance Setelah implementasi dilakukan, maka perlu dilakukan proses operasi atau pemeliharaan sistem secara berkala, yang dilakukan untuk menjaga kualitas dan kemampuan sistem yang berkaitan dengan perubahan lingkungan yang terjadi.
2.3.2
Alat-alat Pengembangan Sistem
2.3.2.1 PHP PHP yang merupakan singkatan dari Hypertext Preprocessor adalah bahasa skrip yang terintegrasi dengan HTML yang bersifat open source dan server-side yang digunakan untuk menciptakan halaman web yang dinamis. Ia merupakan bahasa berbentuk skrip yang ditempatkan dalam server dan diproses di server. Hasilnyalah yang dikirimkan ke klien, tempat pemakai menggunakan browser, dengan sintak-sintak yang mudah digunakan dan modul-modul library yang banyak dan kuat, yang dapat menciptakan datadriven website yang kuat untuk e-commerce, portal komintas dan aplikasi berbasis web lainnya. Secara khusus, PHP dirancang untuk membentuk web dinamis. Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini.
14 Pada prinsipnya PHP mempunyai fungsi yang sama dengan skrip-skrip seperti ASP (active server page), coldfusion ataupun perl. Kelahiran PHP bermula saat Rasmus Lerdirf membuat sebuah skrip Perl yang dapat mengamati siapa saja yang melihat-lihat daftar riwayat hidupnya pada tahun 1994. skrip-skrip ini selanjutnya dikemas menjadi tool yang disebut Personal Home Page. Paket inilah yang menjadi cikal bakal PHP. Pada tahun 1995, Rasmus menciptakan PHP/FI versi 2. Pada versi inilah pemrogram dapat menempelkan kode terstruktur dalam tag HTML. Menarik sekali, kode PP dapat juga bisa berkomunikasi dengan basis data dan melakukan perhitungan-perhitungan yang kompleks sambil jalan. Pada saat ini PHP cukup popular sebagai piranti pemrograman web, terutama di lingkungan LINUX. Walaupun demikian, PHP juga dapat berfungsi pada server-server berbasis UNIX, Windows NT, dan Macintosh. Menurut informasi yang ditulis PHP Manual, pada Januari 2001 terdapat lebih dari 5.100.000 situs web yang menggunakan PHP. Menurut Abdul Kadir (2000, p6 ) pada awalnya, PHP dirancang untuk diintegrasikan dengan web server Apache. Namun belakangan PHP juga dapat bekerja dengan web server seperti PWS (Personal Web Server), IIS (Internet Information Server), dan Xitami. PHP merupakan singkatan dari Hyper Preprocessor, yakni instruksi atau perintah pemrograman berbasis web yang bisa disisipkan dalam dokumen HTML, sebagai skrip pendukung yang ada di lingkungan server (server side HTML embedded scripting)
15 2.3.2.2 Macromedia Dreamweaver MX2004 Dreamweaver dikenal sebagai perangkat lunak yang mempunyai editor HTML yang paling dinamis. Dengan bantuan editor HTML ini, kita dapat menciptakan dan mengembangkan halaman web powerful yang berisi animasi, grafik, dan script yang kompleks. Selain fasilitas hand-coding HTML, Dreamweaver juga dilengkapi dengan fitur editor visual yang memungkinkan kita untuk menciptakan halaman web tanpa menulis sebaris perintah pun. Kita juga dapat menampilkan semua elemen dan aset serta halaman web kita hanya dengan drag and drop elemen tersebut dari beberapa menu dan panel yang tersedia. Menurut Evans (2004, p7) dalam buku Macromedia Studio MX 2004 Bible, dijelaskan bahwa Macromedia Dreamweaver MX 2004 adalah sebuah program profesional untuk mendesain dan mengembangkan web secara profesional. Program ini mampu untuk mendesain, membuat, mengatur website dan aplikasi internet dengan visual desain tools dan coding yang dapat dimodifikasi dengan mendukung teknologi untuk website statis atau aplikasi web berbasis server.
2.3.2.3 Audacity Audacity merupakan suatu software digital audio editor yang menggunakan grafic user interface. Audacity dapat dijalankan pada berbagai macam operating system dan merupakan freeware, yang berarti dapat didownload secara gratis.
16 2.4
Database
2.4.1 Pengertian Database Menurut Conolly (2002,p14) database merupakan suatu kumpulan data atau file yang terintegrasi dan dirancang untuk memenuhi kebutuhan informasi suatu organisasi. Menurut Date (2000,p10) database adalah koleksi dari data yang tetap digunakan dengan sistem aplikasi dari beberapa organisasi. Database merupakan sekumpulan data yang bersifat persistent, yaitu data yang berbeda dengan lainnya dan biasanya merupakan data yang bersifat sementara, dimana kumpulan data tersebut dapat digunakan oleh sistem-sistem aplikasi perusahaan. Menurut McLeod (1995,p324) database adalah suatu kumpulan data komputer yang terintegrasi, diorganisasikan dan disimpan dengan suatu cara yang memudahkan pengambilan data kembali (retrieval).
2.4.2
MySQL
MySQL pertama kali mulai dikembangkan oleh TcX pada tahun 1996. MySQL dibuat atas dasar kebutuhan akan struktur database penghubung yang dapat menangani data dalam jumlah yang besar pada hardware yang relatif murah. Menurut Maslakowski (2000,p10), MySQL merupakan database yang bersifat open source, enterprise-level, multithreaded, dan fleksibel. MySQL dibuat berdasarkan Database Management System (DBMS) yang disebut mSQL. Database ini cepat, dapat dipercaya, dan sangat fleksibel.
17 Selain merupakan database penghubung yang tercepat, performa MySQL juga memimpin hampir diseluruh kategori software database dan karena bersifat open source maka tidak perlu membayar lisensi untuk penggunaannya. MySQL sering dianggap sebagai SQL, bahasa query terstruktur yang dikembangkan IBM. MySQL merupakan sistem database yang menggunakan SQL untuk memanipulasi, membuat dan menampilkan data.
Database
Table Column
Table
Table
Column
Row
Field
Field
Gambar 2.2 The Anatomy of a Database (Maslakowski, 2000, p11)
Menurut Maslakowski (2002,p12), enterprise merupakan area dalam dunia bisnis dimana terdapat sistem interaksi yang luas antara satu dan lainnya dalam menyelesaikan suatu tujuan. Karakteristik dari suatu aplikasi enterprise-level adalah : Dapat digunakan oleh lebih dari satu orang dalam satu waktu.
18 Harus memiliki keamanan. Dalam melakukan transaksi dengan informasi yang bersifat mission-critical (misi kritis) hanya orang yang berkepentingan saja yang dapat memiliki hak akses terhadap transaksi tersebut. Harus bersifat fleksibel, dalam arti dapat digunakan disetiap platform, dapat merubah source code, atau menambahkan fitur tertentu. Database dalam enterprise level harus dapat saling bekerjasama.
2.5
Sistem Telepon Sistem telepon (Anonymous, 2007) merupakan sistem komunikasi yang mampu menyediakan komunikasi suara dua-arah (full-duplex) antara dua ataupun lebih unit telepon. Sistem telepon terdiri atas unit telepon, yang mana terdiri dari unit penerima suara (receiver) dan unit pengirim suara (transceiver). Unit telepon tersebut, bersama dengan unit telepon lainnya yang berdekatan tersambung ke suatu stasiun lokal. Selanjutnya stasiun-stasiun lokal tersebut tersambung ke stasium utama. Pada stasiun-stasiun tersebut terjadi mekanisme swtiching yang memungkinkan seseorang untuk memanggil (dial) pihak yang dituju, dimana akan terjadi pemilihan (switching) jalur yang akan dilalui sampai dengan tujuan.
2.5.1
Operasi telepon (Call Flow) Operarasi telepon dimulai ketika seseorang mengangkat gagang telepon, kemudian central office mendeteksi status on-hook (telepon tertutup) berubah ke status off-hook ( telepon terangkat). Kemudian central office mengirimkan nada panggil (dial tone) ke telepon tersebut dan sirkuit pada jaringan digunakan untuk
19 mengenali adanya nomor yang ditekan (baik pulse maupun DTMF). Segera setelah central office mendapatkan nomor pertama, nada panggil diberhentikan. Setelah semua nomor ditekan, komponen dalam jaringan telepon membuat koneksi ke pihak yang dituju dan ringing voltage generator dihubungkan untuk membuat telepon yang dituju berdering (dengan asumsi tidak sibuk). Ketika pihak yang dituju mengangkat, pihak central office untuk telepon tersebut mendeteksinya dan memutuskan ringing voltage generator. Lalu sirkut audio untuk kedua telepon yang berpartisipasi dihubungkan dan percakapan dapat dimulai. (Schweber, 1991)
2.5.2
PSTN (Public Switched Telephone Network) Sistem komunikasi konvensional atau yang dikenal dengan Public Switched Telephone Network (PSTN) telah berkembang sejak ditemukannya transmisi suara melalui kawat pada tahun 1876 oleh Alexander Graham Bell, yang dikenal dengan ring-down circuit. Ring-down circuit berarti tidak ada pemanggilan (dialing) nomor, namun menggunakan sebuah kawat fisik untuk menghubungkan dua devices. Secara mendasar, seseorang mengangkat telepon dan orang lain berada diujung lainnya (tidak ada ringing). Sistem ini kemudian berkembang dari transmisi suara satu arah, dimana hanya satu user dapat berbicara, menjadi transmisi suara bi-directional (duaarah), yang memungkinkan kedua user dapat berbicara. Untuk memindahkan suara sepanjang kawat diperlukan kabel fisik antar tiap lokasi dimana user ingin melakukan panggilan.
20 Proses pemasangan kabel diantara perangkat yang memerlukan akses telepon sangat tidak efisien, memerlukan biaya yang besar dan sulit untuk diimplementasikan. Karena itu, dikenalkanlah penggunaan switch, dimana tiap pengguna telepon hanya membutuhkan satu kabel yang terhubung secara terpusat ke kantor switch. Pada awalnya, seorang operator telepon berperan sebagai switch. Operator ini bertanya kepada pemanggil mengenai lokasi panggilan yang dituju kemudian secara manual menghubungkan kedua jalur suara. Sistem telepon terus berkembang dan hingga saat ini, switch dengan operator manusia telah diganti dengan switch elekronik maupun softswitch. Ada 2 tipe signaling dalam PSTN (Davidson, 2006): 1. User-to-network signaling: komunikasi antara end user dengan PSTN. Umumnya, jika menggunakan twisted copper pair sebagai media transport, user terhubung ke PSTN melalui analog Intergrated Services Digital Network (ISDN), atau melalui TI carrier. Metode signaling yang paling umum digunakan dalam komunikasi analog user-to-network adalah
Dual Tone
Multi-Frequency (DTMF). DTMF dikenal sebagai in-band signaling karena tone (nada) dibawa melalui jalur voice. ISDN menggunakan metode signaling yang lain, yaitu out-of-band, dimana signal dikirim melalui channel terpisah dari voice. Channel dimana voice, data, fax dibawa dikenal dengan bearer (atau B channel) sebesar 64kbps.
21 Channel dimana signal dibawa dikenal dengan data atau control channel (D channel). Out-of-band signaling memiliki keuntungan antara lain : multiplex mengurangi bandwith, in-band signaling memiliki masalah lost tones, yang terjadi ketika signaling dibawa melalui jalur voice yang mengakibatkan hilangnya nada dan sulit mengakses voice mail. 2. Network-to-network signaling : komunikasi antara switches di PSTN. Komunikasi
network-to-network
biasanya
dibawa
melalui
media
transmisi T1/E1 carrier melalui twisted pair. TI adalah link transmisi digital dengan 1.544 Mbps yang biasanya digunakan di Amerika Utara dan Jepang, sedangkan E1 adalah link transmisi 2.048 Mbps yang umumnya digunakan di Eropa. Metode in-band signaling yang umumm digunakan dalam network-tonetwork signaling
adalah Multi-Frequency (MF). Network-to-network
signaling juga menggunakan out-of-band signaling yang dikenal dengan Signaling System 7 (SS7). SS7 digunakan untuk melakukan out-bandsignaling pada PSTN sehingga meningkatkan service PSTN antara lain : mengatur pembuatan call, pertukaran informasi, routing, operasi, billing, dan service Intelligent Network.
22 2.5.3
Packet Telephony (Packet Switched Network) Mekanisme switching pada sistem telepon dibagi dua, yaitu circuit switched dan packet switched. Circuit switched network adalah jaringan yang mempunyai saluran terdedikasi yang dialokasikan selama beberapa saat selama transmisi data (percakapan), dimana jalur tersebut tidak bisa digunakan oleh host lain selama belum didealokasikan. Pada circuit switched, host yang akan mengirim data serta yang menerima data akan membuka jalur data yang hanya dipakai oleh pengirim dan penerima. Jalur data tersebut akan ditutup bila transmisi data tersebut telah selesai. Jaringan telepon konvensional (PSTN) menggunakan mekanisme circuit switching. Packet switched network adalah jaringan-jaringan yang dihubungkan oleh router, di mana setiap host yang terhubung dalam jaringan tersebut, secara teori, dapat mengirimkan paket data kepada host yang lain. Paket tersebut berisi alamat yang dituju, dan router meneruskan paket tersebut ke alamat yang dituju tersebut. Protokol packet switched ini membagi data menjadi paket-paket sebelum dikirim. Protokol ini menggunakan prinsip multiplexing, di mana paketpaket tersebut dapat melalui jalur-jalur yang berbeda bersama paket-paket yang berasal dari data lain untuk sampai di tujuan. Begitu sampai di tujuan, paketpaket tersebut akan dirangkai kembali menjadi data asli. Sebuah host dapat membuka banyak sesi sekaligus dan mengirimkan data-data dari sesi berlainan tersebut melalui satu jalur yang sama. Keunggulan packet switched dibandingkan dengan circuit switched adalah lebih hemat bandwidth dan efisien, karena jalur data tersebut dapat dipakai oleh banyak transmisi data, serta tidak perlu membuka koneksi jalur jika
23 tidak ada pengiriman atau penerimaan data. Sistem komunikasi internet telephony atau VoIP menggunakan mekanisme packet switching.
2.5.4
PBX (Private Branch Exchange) PBX (Private Branch Exchange) atau biasa disebut phone switch (Anonymous, 2007b) adalah perangkat yang menghubungkan telepon-telepon dalam suatu jaringan lokal dengan jaringan telepon umum. Fungsi utama dari PBX adalah untuk mengatur panggilan yang datang ke extension atau cabang tertentu sesuai dengan yang dituju dalam jaringan lokal tersebut, dan untuk membagi saluran telepon di antara semua extension. Extension adalah sebuah nama atau nomor yang merepresentasikan user dari PBX ini. Saat ini, telah banyak fitur-fitur lain yang dimiliki PBX, antara lain seperti automated greetings untuk pemanggil, koneksi ke voice mail, automatic call distribution(ACD), telekonferensi, dan lainnya. Salah satu keuntungan utama dari PBX adalah mengurangi local loops yang
diperlukan
dari
central
office
switch
PSTN.
Gambar
berikut
memperlihatkan perbandingan antara menggunakan line individual dari PSTN atau menggunakan PBX untuk meminimalisasi jumlah line (trunk) dari PSTN.
24
Gambar 2.3 PXB Call System (Anonymous, 2007b)
Trunk adalah sebuah nama atau nomor yang merepresentasikan server lain atau PBX lain yang akan dihubungi oleh PBX ini. Keuntungan lain dari memiliki PBX sendiri adalah control seperti setup. Misalnya jika ingin menambah user baru, mengubah fitur, atau memindahkan user ke lokasi baru, maka tidak perlu menghubungi carrier PSTN. Namun sistem PBX menambah level kompleksitas yang lain karena harus melakukan konfigurasi dan maintain call routing pada PBX.
2.5.5
Open Source Open source software (Wikipedia, 2007b) adalah software komputer yang source codenya disertakan sehingga dapat dibaca oleh siapa pun. Hal ini berarti, seseorang bebas untuk menggunakan, mengganti, mengembangkan dan mendistribusikan kembali software tersebut.
25 2.6
Call Center Sebuah Call Center (Anonymous, 2007g) adalah kantor terpusat yang digunakan untuk menerima dan mentransmisi banyaknya panggilan telepon. Sebuah Call Center diterapkan pada perusahaan guna memberikan pelayanan kepada customer yang ingin mendapatkan suatu informasi melalui telepon. Sebuah Call Center yang baik mampu memberikan pelayanan untuk menjawab 80% dari panggilan telepon dalam 20 detik, atau tidak lebih dari 3% panggilan telepon yang ditutup oleh customer karena ketidaksabaran. Beberapa teknologi pada Call Center adalah sebagai berikut (Anonymous, 2007g):
2.6.1
Automatic Call Distribution (ACD) Sebuah Automatic Call Distribution (ACD) adalah sebuah alat atau sistem yang mendistribusikan panggilan telepon masuk ke sebuah spesifik group yang terdiri dari beberapa operator. Nantinya, panggilan telepon ini akan ditujukan ke operator yang sedang aktif dan diharapkan dapat diangkat secepat mungkin. Pada sistem ACD diperlukan suatu software yang digunakan untuk memberikan suatu kondisi atau cara pengaturan bagaimana ACD menangani panggilan telepon yang masuk.
2.6.2
Interactive Voice Response (IVR) Pada sistem telepon, Interactive Voice Response (IVR) adalah sebuah teknologi telepon yang menyediakan komputer untuk mendeteksi suara dan tekanan nada menggunakan panggilan normal telepon. Sistem IVR dapat merespon dengan merekam suara terlebih dahulu dan menghasilkan suara ke
26 penelepon secara langsung. Sistem IVR dapat digunakan untuk mengontrol hampir semua fungsi terhubung, yang dapat dibagi kedalam sebuah rangkain dari menu pilihan. Biasanya gagasan sistem IVR yang berskala baik menjadi pemeliharaan panggilan dalam jumlah yang banyak. Seorang penelepon menekan angka sebuah nomor telepon yang mana dijawab dengan sebuah sistem IVR. Sistem IVR menjalankan sebuah applikasi yang mana mengikat pada nomor yangg diputar DNIS (Dialed Number Information Service). Sebagai bagian dari applikasi, merekam sebelumnya filefile suara atau dengan dinamis menghasilkan text menjadi cara berbicara suara untuk menjelaskan pilihan-pilahan yang tersedia bagi penelepon. Penelepon diberikan pilihan untuk memilih pilihan menggunakan bunyi DTMF atau katakata yg diucapkan. Pengenalan cara berbicara dengan normal digunakan untuk menerima interaksi yang lebih komplek dan menyederhanakan struktur menu applikasi. Sistem IVR digunakan untuk menerima panggilan dalam jumlah tinggi, mengurangi biaya dan memperbanyak pengalaman pelanggan. Contoh dari applikasi IVR secara umum adalah Telephone Banking, Televoting dan transaksi Credit Card. Perusahaan-perusahaan besar menggunakan pelayanan IVR untuk memperpanjang waktu operasi dari bisnis. Kegunaan dari VUI (Voice User Interface) didesign sesuai dengan pengalaman pelanggan dari hubungan jaringan. Ini berhubungan dengan penetrasi yang tinggi dari telepon selular. Call center menggunakan sistem IVR untuk mengenali dan membagi penelepon-penelepon. Kemampuan untuk mengenali pelanggan memberikan
27 kemampuan menyesuaikan pelayanan menurut profile pelanggan. Ini juga memberikan pilihan dari memilih pelayanan secara otomatis. Informasi dapat diberikan kepada penelepon yang memberikan pilihan seperti: menunggu diantrian, memilih pelayanan secara otomatis atau meminta panggilan kembali. Kegunaan dari CTI (Computer Telephone Intergration) akan membolehkan sistem IVR untuk melihat CLI (Calling Line ID) pada sebuah database jaringan dan mengenali penelepon. Apabila CLI tidak tersedia, penelepon dapat ditanya untuk mengenali mereka sendiri dengan metode-metode lain seperti PIN atau password. Kegunaan dari DNIS (Dialled Number Information Services) yaitu menjamin applikasi yang benar dan bahasa dieksekusi oleh sistem IVR. 2.6.3
Voicemail Voicemail adalah sebuah sistem penanganan pesan-pesan telepon untuk banyak operator yang terpusat. Voicemail dapat menggantikan fungsi mesin penjawab yang harus dipasang pada setiap telepon. Beberapa keunggulan voicemail adalah: 1. menjawab beberapa panggilan telepon pada waktu yang bersamaan. 2. menyimpan pesan suara yang masuk dalam masing-masing inbox operator yang disertakan dengan nomor telepon. 3. memungkinkan user untuk mengirimkan pesan yang diterima menuju voice mailbox lainnya. 4. mengirim pesan ke satu atau lebih voice mailbox. 5. membuat panggilan telepon untuk memberitahu user bahwa ada pesan baru yang diterima pada mailbox.
28 2.6.4
Voice Over Internet Protocol (VoIP) Voice over Internet Protocol (VoIP) atau IP Telephony (Raharja, 2004) adalah teknologi yang memanfaatkan Internet Protocol untuk menyediakan komunikasi voice jarak jauh secara elektronis dan realtime. VoIP sebenarnya adalah aplikasi internet biasa seperti halnya world wide web (www) dan email. Infrastruktur internet dibutuhkan agar dapat menggunakan atau menyediakan layanan VoIP. VoIP (Jackson, 2007) adalah suatu metoda untuk membawa komunikasi dua arah melalui Internet Protocol yang berbasiskan jaringan. VoIP (Porter, 2006) adalah fungsi atau layanan yang memungkinkan komunikasi audio jarak jauh melalui sarana telekomunikasi berbasiskan Internet Protocol (IP). VoIP secara umum merupakan wujud dari layanan telepon dengan menggunakan sistem komunikasi packet switched. Untuk menyediakan layanan telepon konvensional, diperlukan sebuah protokol yang mampu membangun sebuah sesi komunikasi antar pengguna. Protokol ini disebut juga signaling protocol atau call-control protocol. Ketika sebuah sesi komunikasi telah terbuka, maka ada protokol lain yang bekerja untuk mengantarkan
data-data
suara
yang
telah
dipaketkan
sehingga
dapat
direkonstruksi dengan baik pada tujuannya. Protokol ini disebut dengan media transfer protocol. Terdapat juga protokol-protokol lain untuk mendukung optimasi dari layanan VoIP, yang sifatnya opsional dan penggunaanya bergantung dari kebutuhan.
29 2.6.5
Virtual Queue Virtual Queuing adalah sebuah konsep yang digunakan pada call center yang digabungkan dengan fungsi Automatic Call Distributor (ACD) untuk memberikan antrian secara First In, First Out sampai ada operator yang tersedia. Dari sisi customer, apabila tidak ada virtual queue, mereka hanya mempunya dua pilihan yaitu menunggu hingga operator tersedia, atau menutup dan menelpon kembali. Dari sisi call center, antrian yang panjang menghasilkan banyaknya panggilan
yang
tidak
terjawab,
panggilan
yang
berulang-ulang
dan
ketidakpuasan pelanggan.
2.7
Signaling Protocol Signaling Protocol dalam VoIP digunakan untuk membangun atau memutuskan sesi komunikasi, menyimpan informasi mengenai letak user, dan menegosiasikan kapabilitas. Protokol-protokol yang umum dipakai dalam VoIP adalah SIP, H.323, dan MGCP. Protokol yang dirancang dan diimplementasikan dalam penulisan skripsi ini adalah protokol SIP, dengan alasan sebagai berikut (Raharja, 2004): 1. Mudah diimplementasikan. Membangun jaringan VoIP berbasiskan komponenkomponen SIP lebih mudah karena software yang digunakan banyak yang berlisensi open source dan mudah diperoleh serta status produksinya setara dengan komersil. 2. Mudah untuk mengimplementasikan fitur-fitur baru dan digabungkan dengan layanan lainnya seperti Free Mail.
30 3. Mampu bekerja untuk user agent yang berada dibelakang NAT (Network Address Translation) atau common firewall dengan relatif mudah. 4. Kualitas suara dan sebagian besar penggunaan bandwidth diserahkan pada peerto-peer. 5. Telah terbukti cukup baik untuk beberapa VoIP Service Provider, seperti VoIP Rakyat dan VoIP Marsinah.
2.7.1
Signaling Session Initiation Protocol (SIP)
2.7.1.1 Pengenalan SIP SIP (Session Initiation Protocol) atau dikenal juga dengan IETF RFC 3261 (Anonymous, 2005d) didesain sebagai protokol multimedia yang dapat memanfaatkan kegunaan dari arsitektur aplikasi internet yang sudah ada. Sebagai sebuah protokol panggil, SIP hanya mengatur bagaimana cara membangun dan menutup sebuah sesi komunikasi. SIP menggunakan protokol lainnya dari IETF untuk mengatur semua aspek dalam VoIP dan sesi komunikasi, seperti RTP untuk media transfer, SDP untuk menentukan cara berkomunikasi, URL untuk pengalamatan, Domain Name System (DNS) untuk menentukan suatu alamat, dan Telephony Routing Over (TRIP) untuk pengaturan jalur panggilan. SIP (Raharja, 2004) adalah sebuah signaling protocol (application-layer control) untuk menciptakan, mengatur dan menghentikan sesi komunikasi multimedia antara dua atau lebih peserta. Sesi komunikasi ini meliputi internet multmedia conference, internet telephone calls dan distribusi multimedia. SIP bukan media transfer protocol, sehingga SIP tidak membawa paket suara atau video. SIP memanfaatkan RTP (Real Time Protocol) untuk media transfer.
31 2.7.1.2 Fungsi SIP 1. Call initiation : membangun sebuah sesi komunikasi dan mengundang user lain untuk bergabung di dalam sesi komunikasi. 2. Call modification : bila perlu, SIP dapat memodifikasi sesi komunikasi. 3. Call terminaton : menutup sesi komunikasi. 4. Presence : mengetahui status user dan mengumumkan status user pada user lain, online, away atau busy (Raharja, 2004)
2.7.1.3 Komponen SIP Pada SIP, terdapat beberapa komponen, yaitu SIP server yang meliputi proxy server, register server, dan redirect server, serta SIP user agent. 2.7.1.3.1
User Agent (UA) User Agent merupakan komponen SIP yang memulai, menerima,dan
menutup sesi komunikasi. User Agent ini dibagi menjadu dua jenis yaitu (Raharja,2004): 1. User Agent Client (UAC),yaitu User Agent yang memulai sesi komunikasi. UAC menginisialisasi SIP request dan menerima SIP response. User Agent Client dapat berupa software pada komputer atau softphone (X-Lite, SJPhone, Windows Messenger) dan berupa hardware atau hardphone (IP Phone, USB Phone). Ada 2 tipe komunikasi antara 2 User Agent : a) Client / Server Client melakukan request atas service dan resource tertentu, dan server memenuhi request dengan me-respon request yang diterima. Client bisa
32 terputus dari server, namun server selalu aktif dan menunggu request dari client. b) Peer-to-peer (P2P) P2P berbeda dari client / server, karena user yang berhubungan sama-sama bisa memulai sesi dan mengirim request satu dengan lainnya. Tiap user menyediakan service dan resource, sehingga bila satu tidak aktif, yang lain bisa terhubung untuk mengakses resource dan bertukar pesan. Dalam hal ini, user agent dapat bertindak sebagai client maupun server dan dianggap sebagai peers. 2. User Agent Server (UAS),yaitu User Agent yang menerima atau menanggapi sesi komunikasi. UAS menerima SIP request dan mengirim kembalik SIP response. Baik kedua jenis UA tersebut dapat menutup sesi komunikasi.
2.7.1.3.2
Proxy server Proxy server merupakan komponen penengah antar user agent,
bertindak sebagai server dan client yang menerima request message dari user agent dan menyampaikan pada user agent lainnya.
33
Gambar 2.4 Cara kerja SIP pada Mode Proxy (Anonymous, 2007e) Request yang diterima dapat dilayani sendiri atau disampaikan (forward) pada proxy lain atau server lain. Proxy server menterjemahkan dan/atau menulis ulang request message sebelum menyampaikan pada user agent tujuan atau proxy lain. Proxy server juga bertugas menyimpan data hasil sesi komunikasi yang terjadi antara UAC dan UAS. Proxy server merupakan pusat komunikasi yang dapat dicapai oleh user agent secara langsung. Ketika user agent mengirimkan pesan “INVITE”, maka proxy server akan mencari alamat IP dari alamat yang dipanggil oleh pesan tersebut ke database dan meneruskan pesan “INVITE” tersebut ke alamat yang dipanggil berdasarkan alamat IP yang didapat (Johnston, 2004).
34 2.7.1.3.3
Redirect server Redirect server merupakan komponen yang menerima request message
dari user agent, memetakan alamat SIP user agent atau proxy tujuan kemudian menyampaikan hasil pemetaan kembali pada user agent pengirim (UAC). Tidak seperti proxy server, redirct server tidak menyimpan data hasil sesi komunikasi antara User Agent Client (UAC) dan User Agent Sender (UAS) setelah pemetaan disampaikan pada UAC. Redirect server juga tidak dapat memulai inisiasi request message.
Gambar 2.5 Cara kerja SIP pada Ridirect Mode (Anonymous, 2007e)
Redirect server berfungsi sebagai perantara dan menbelokkan panggilan, bilamana alamat yang dipanggil oleh user agent tidak terdapat pada proxy server tersebut, melainkan pada proxy server yang lain. Bila redirect server berhasil mendapatkan alamat yang dipanggil pada proxy server lain, maka alamat tersebut
35 kana dikirimkan kembali user agent untuk selanjutnya memakai alamat itu untuk menghubungi pihak yang dipanggil. Bila alamat yang dituju tidak dapat dicari oleh registar server, maka registar server akan menolak permintaan “INVITE” dari user agent dengan mengirimkan paket “CANCEL” (Johnston, 2004).
2.7.1.3.4
Registar server Registar server merupakan komponen yang menerima request message
REGISTER. Registar menyimpan database user untuk otentikasi dan lokasi sebenarnya (berupa IP dan port) agar pengguna yang terdaftar dapat dihubungi oleh komponen SIP lainnya. Registar server berfungsi menerima autentikasi dari user agent dengan menerima paket “REGISTER” dan membalas dengan pesan “OK” bila berhasil dan “CANCEL” bila gagal. User agent maupun proxy server lain dapat melakukan registrasi pada registar server. Ketika registrasi dilakukan oleh proxy server, maka proxy server tersebut dianggap sebagai client oleh registar server. Dengan demikian, proxy server itu dapat
melakukan panggilan ke SIP server lainnya bila terdapat
panggilan yang dialamatkan kesana (Johnston, 2004).
2.7.1.4 Media Gateway Media gateway adalah komponen SIP yang berfungsi untuk menjembatani protokol yang berbeda, dalam hal ini SIP dengan protokol lainnya seperti H.323, MGCP, maupun dengan telepon alalog (PSTN). Umumnya Media gateway
36 dipakai untuk menghubungkan antara SIP dengan PSTN. Ada 2 tipe interface yang terdapat dalam media gateway yaitu: •
FXO (Foreign Exchange Office) : interface yang menggantikan telepon analog untuk hubungan ke PSTN atau ke PBX.
•
FXS (Foreign Exchange Subcriber) : interface yang menggantikan PSTN untuk hubungan ke peralatan seperti telepon analog, modem, fax, dan lainlain.
2.7.1.5 Cara Kerja SIP Setiap komponen SIP mempunyai alamat SIP, dengan format: [sip:]<username@host>. Contohnya: sip:
[email protected]. Cara kerja dari SIP adalah sebagai berikut: pemanggil (UAC) dan penerima (UAS) dikenali dari alamat SIP-nya. Ketika melakukan panggilan, pemanggil (UAC) pertama-tama menentukan server yang tepat dan mengirimkan request message. Operasi SIP yang paling biasa digunakan adalah INVITE. Namun panggilan ini tidak langusng mencapai penerima, melainkan dapat membentuk rantai dari proxy server yang saling melemparkan panggilan untuk mencapai si penerima. Message pada SIP dapat dikirimkan dengan menggunakan TCP ata UDP. TCP menyediakan transportasi data yang terkontrol dan terjamin, tetapi lebih lambat dibandingkan dengan UDP yang tidak memperhatikan error. Pengiriman message dengan TCP baik untuk digunakan pada jaringan dengan kecepatan tinggi seperti LAN, ADSL, VSAT, dan sebagainya. Namun pada kenyataannya,
37 pengiriman message ini umumnya menggunakan UDP yang lebih cepat, dan penanganan error dilakukan pada layer atas. Message pada SIP berbasis teks standar dan menggunakan karakter ISO 10646 dengan enkoding UTF-8 (Anonymous, 2005e). Setiap baris harus diakhiri dengan CRLF (Carriage Return-Line Feed). Hampir semua sintaks dari message ini serupa dengan yang ada pada HTTP. Message ini dapat berupa request message (untuk melakukan panggilan atau meminta layanan) atau dapat berupa response message (merespon panggilan atau layanan).
Gambar 2.6 Sesi Komunikasi SIP (Anonymous, 2007e)
2.7.1.6 Struktur Request Message Format dari sebuah request message adalah: Metoda
URI pengirim
Versi SIP
38 Metoda: 1. INVITE – mengundang user agent lain untuk bergabung dalama sebuah sesi komunikasi. 2. ACK – untuk komfirmasi bahwa user agent telah menerima pesan terakhir dari serangkaian pesan INVITE. 3. BYE – untuk mentup sesi. 4. CANCEL – membatalkan INVITE. 5. OPTIONS – meminta informasi tentang kemampuan server. 6. REGISTER – registrasi di registar server. 7. INFO – digunakan untuk membawa pesan informasi lainnya, seperti informasi inline DTMF. URI (Uniform Resource Identifier) pengirim merupakan alamat URL dari pengguna atau layanan berasal. Sedangkan versi SIP adalah versi yang digunakan pada saat melakukan layanan. Contoh sebuah request message: INVITE sip:
[email protected] SIP/2.0
2.7.1.7 Struktur Response Message Format dari sebuah response message adalah: Versi SIP
Kode Status
Informasi tambahan
Kode status (dengan awalan tertentu) dan artinya: 1. 1xx – Informational Message
39 2. 2xx – Successful Response 3. 3xx – Redirection Response 4. 4xx – Request Failure Response 5. 5xx – Server Failure Response 6. 6xx – Global Failures Response Contoh sebuah response message: SIP/2.0 200 OK 2.7.1.8 Protokol Pendukung SIP SIP tidak menyediakan fungsi yang diperlukan untuk mengirim single-media atau multimedia sepanjang network, atau services untuk program komunikasi. Melainkan SIP merupakan komponen yang bekerjasama dengan protokol lain untuk mengirim data, mengatur media streaming, menghubungkan ke PSTN, dan service lainnya. Protokol-protokol pendukung SIP antara lain (Johnston, 2004): 2.7.1.8.1
Session Description Protocol (SDP)
Session Description Protocol (SDP) atau ERTF RFC 2327 digunakan untuk mengirim deskripsi informasi yang penting ketika mengirim data multimedia sepanjang network. Selama inisiasi sesi, SDP menyediakan informasi mengenai jenis multimedia yang di-request user agent dan informasi lain yang penting untuk mengirim data ini. SDP adalah protokol berbasis teks yang menyediakan informasi pada pesan yang dikirim dalam paket UDP.
2.7.1.8.2
Real-time Transport Protocol (RTP)
Real-time Transport Protocol (RTP) atau IETF RFC 3550 merupakan protokol yang berfungsi untuk mengatur pengiriman data real-time seperto audio, video,
40 simulasi data melalui UDP. RTP ini secara spesifik menyediakan cara untuk membawa bagian audio atau media lain dari komunikasi VoIP. Walaupun RTP berjalan pada UDP, namun RTP menyediakan reliability dari data yang dikirim antar user agent.
2.7.2
Protokol Signaling H.323 H.323 (Wikipedia, 2007a)
adalah sebuah protokol signaling yang
direkomendasi oleh ITU Telecommunication Standardization Sector (ITU-T) sebagai protokol yang menyediakan komunikasi audio-visual session pada setiap paket network. Protokol ini dipublikasikan oleh ITU pada November 1996 dengan kemampuan videocenderencing pada suatu Local Area Netwok (LAN), dan diadaptasi sebagai pentransmitter komunikasi suara melalui jaringan IP. Selama bertahun-tahun, H.323 terus dikembangkan dan direvisi dengan peningkatan teknologi yang membuat baik fungsi suara maupun video. Protokol H.323 jug mendukung protokol-protokol ITU-T lainnya, seperti H.225.0, H.245, H.450, H.235, H.239, H.460. H.323 dapat menjalankan codec yang ditetapkan oleh ITU-T maupun codec lainnya, antara lain: •
Video codecs: H.261, H.263, H.264,
•
Audio codecs: G.711, G.729, G.729a, G.723.1, G.726
•
Text codecs: T.140
41
Gambar 2.7 H.323 Stack (Anonymous, 2007c)
2.7.2.1 Komponen H.323 Ada 7 jenis komponen pada protokol H.323 (anonymous, 2007d), antara lain 1. Terminal H.323 terminal adalah titik akhir pada LAN yang berkomunikasi secara dua arah dengan terminal H.323 lainnya 2. Gateway Gateway berfungsi mentranslasikan antara terminal H.323 pada LAN dengan terminal dengan standar ITU-T lainnya. 3. Gatekeeper Gatekeeper berfungsi sebagai bandwidth management, yang mengatur total limit bit yang dipakai pada waktu ada dua atau lebih telepon yang
42 terhubung. Apabila sudah mencapai limit, maka panggilan telepon baru akan ditolak. 4. Multpoint Control Unit (MCU) MCU adalah sebuah titik akhir pada LAN yang memberikan kemampuan kepada tiga atau lebih terminal dan gateway untuk berpartisipasi pada sebuah multipoint conference. 5. Multipoint Controller Multipoint controller berfungsi untuk menggabungkan beberapa resouce seperti video multicasting. 6. Multipoint Processor Multipoint prosesor adalah sebuah hardware dan komponen software pada H.323 yang menggabungkan, menukar, dan memproses audio, video dan data flow pada multipoint conference. 7. H.323 Proxy H.323 proxy server adalah sebuah proxy yang di disign secara spesifik untuk protokol H.323 yang meneliti paket antara dua endpoint.
2.7.2.2 H.323 Annex H.323 Annex merupakan bagian dari standarisasi yang rekomendasikan, antara lain: 1. Annex A –Mandatory H.245 messages 2. Annex B –Procedures for layered video codecs 3. Annex C –H.323 on ATM 4. Annex D –Fax
43 5. Annex E –UDP for Call Signaling 6. Annex F –Simple Endpoint Type (SET) 7. Annex G –Text telephony 8. Annex I –Error prone channels(dalam tahan perkembangan) 9. Annex J –Secure SET 10. Annex K –HTTP-based service control 11. Annex L –Stimulus control protocol 12. Annex M.x –Tunneling of various protocols within H.323 13. Annex N –QoS (dalam tahan perkembangan) 14. Annex O –Use of DNS (dalam tahan perkembangan) 15. Annex P –Modem over IP 16. Annex Q –Far-end camera control 17. Annex R –Robustness
2.7.3
Inter-Asterisk eXchange protocol (IAX) IAX didesign untuk memberikan kontrol dan tranmisi data voip antara serverserver Asterisk. Tujuan utama dari IAX adalah 1. meminimalisasi penggunaan bandwidth baik untuk kontrol maupun media transmisi 2. menghindari masalah pada NAT (Network Address Translation) dengan menggunakan
UDP
information dan data.
transport
protocol
pada
pengiriman
signaling
44 2.7.3.1 Proses Kerja IAX
Gambar 2.8 Proses Kerja IAX Pada pembentukan sebuah percakapan telepon pada IAX, terbagi menjadi 3 tahap: 2.7.3.1.1
Call Setup Sebuah terminal memulai koneksi dan mengirim sebuah pesan baru.
Terminal yang dituju membalas dengan pesan “ACCEPT” dan penelpon juga membalas dengan sebuah “ACK”. Selanjutnya terminal penerima telepon memberikan signal “RINGING” dan penelpon membalas dengan “ACK” sebagai tanda konfirmasi penerimaan pesan. Akhirnya, penerima telepon menerima
45 panggilan dengan sebuah pesan “ANSWER” dan penelpon membalas dengan “ACK”.
2.7.3.1.2
Media atau Data Flow
M frame dan F frame dikirim pada kedua arah beserta data audio. 2.7.3.1.2.1 F Frame F Frame atau Full Frame adalah satu-satunya frame yand ditranmisikan secara reliable. Artinya, penerima harus membalas dengan ACK setelah penerimaan data. Tabel 2.1 F Frame
Arti dari setiap kolom pada tabel diatas adalah: 1. F : digunakan untuk menandakan apakah menggunakan Full frame atau tidak. Bernilai 1 jika menggunakan Full Frame and 0 jika tidak menggunakan Full frame. 2. Source Call Number: sebuah 15-bit unsigned integer yang digunakan untuk menandai jalur media endpoint pada host sumber.
46 3. R : bernilai 1 jika frame ini ditranmisikan kembali dan bernilai 0 jika pembentukan transmisi. 4. Destination Call Number : nomor telepon yang dituju. 5. Timestamp o sello de tiempo – untuk menandai waktu dari setiap paket. 6. OSeqno: Outbound stream sequence number.OSeqno, selalu dimulai dari 0. 7. ISeqno: sama seperti OSeqno, kecuali Isegno menggunakan track dalam mengurutkan inbound media frames. 8. Frame Type 9. C: bernilai 0 atau 1. 10. Subclass: tipe subclass dari message. 11. Data: data yang dikirim dalam format binary.
2.7.3.1.2.2 M Frame M Frame atau Mini Frame digunakan untuk mengirim media dengan minimal protokol terlebih dahulu. M Frame tidak ditransmisikan secara reliable, yang berarti jika ada frame yang hilang, maka frame tidak akan ditransmisikan ulang.
47 Tabel 2.2 M Frame
Arti dari setiap kolom pada tabel diatas adalah: 1. F : digunakan untuk menandakan apakah menggunakan Mini frame atau tidak. Bernilai 1 jika menggunakan Mini Frame and 0 jika tidak. 2. Source Call Number: sebuah 15-bit unsigned integer yang digunakan untuk menandai jalur media endpoint pada host sumber. 3. Timestamp : untuk menandai waktu dari setiap paket. 4. Data: data yang dikirim dalam format binary.
2.7.3.1.3
Call Teardown
Pemutusan telepon dengan mengirimkan pesan “HANG UP” dan dibalas dengan “ACK”.
2.8
Codec-Decoder (Codec) Codec-Decoder atau Codec merupakan sebuah teknik untuk memetakan suara analog yang telah disamplingkan ke dalam bentuk digital. Agar dapat melewati jalur packet switch dengan baik, VoIP membutuhkan proses coder dan decoder. Proses ini mengkonversi sinyal audio menjadi data digital yang dipadatkan
48 (kompresi) yang kemudian dikirim melalui jalur internet. Di sisi penerima, data dikembangkan lagi (dikompresi), dan diubah menjadi sinyal analog. Konversi codec bekerja dengan cara memotong bagian sinyal (sampling) audio dalam jumlah tertentu per detiknya. Jika data hasil kompresi berhasil diterima di sisi lain, proses selanjutnya adalah perakitan ulang. Data yang dirakit tidak selengkap data saat pertama kali dikirim, ada beberapa bagian yang hilang. Akan tetapi bagian yang hilang sangat kecil sehingga tidak terdeteksi oleh telinga manusia. Codec mempengaruhi kebutuhan bandwidth untuk VoIP, semakin kecil bitrate sinyal digital yang dihasilkan codec, maka semakin baik codec tersebut. Namun perhitungan matematis yang dilakukannya menjadi semakin rumit dan ini mempengaruhi kualitas suara setelah di-decode (Raharja, 2004). Kualitas suara biasa dihitung dengan metoda MOS (Mean Opinion Score). Metoda ini memberi nilai rata-rata kualitas suara antara 1 sampai 5 dimana 1 artinya buruk dan 5 artinya baik. Pada tabel disajikan perbandingan antar codec dari beberapa segi, yaitu bandwidth, MOS, algoritma, kompleksitas, dan delay.
Tabel 2.3 Audio Codec (Anonymous, 2007f) CODEC
Algoritma
Kbit/s
MOS
Delay(ms)
G.711
PCM
64
4.3
0.125
G.721
ADPCM
32
G.722
7khz audio-coding
64
49 G.726
ADPCM
32
4.0
0.125
G.728
LD-CELP
16
4.0
0.625
GSM
RPE_LTP
13
3.7
20
G.729
CSA-CELP
8
4.0
15
G.723.1
ACELP
6.3
3.8
37.5
Dod LPC-10
2.4
Sintesis
22.5
Us FS1015 DVI
ADPCM
L16
Uncompressed
32 audio 128
data samples
Codec menentukan jumlah bandwidth yang akan terpakai untuk data suara saja. Codec juga menentukan periode sampling untuk setiap paket yang dikeluarkan untuk dikirim. Sampling adalah pengukuran suara analog dan diterjemahkan ke nilai digital pada setiap interval waktu tertentu. Makin baik codec melakukan sampling, makin efisien juga jalur yang digunakan. Kualitas akhir suara juga harus diperhatikan agar tidak sekedar cepat, codec juga harus menghasilkan sinyal audio yang baik. Codec juga bekerja menggunakan algoritma tertentu untuk membantunya memecah, mengurutkan, mengkompresi, dan merakit ulang audio data yang ditransmisikan. Salah satu algoritma yang populer digunakan dalam teknologi VoIP adalah CS-ACELP (Conjugate-Structure Algebraic Code-Excited Linear Prediction).
50 2.9
Sotfswitch Asterisk Dalam proses komunikasi VoIP, sebuah “kantor pusat” dibutuhan VoIP untuk menampung data alamat IP dan nomor telepon yang teregistrasi kepadanya. “Kantor pusat “ itu dikenal dengan Sotfswitch. Softswitch bertugas menampun seluruh data alamat IP dan nomor telepon (extension) yang ada untuk kemudian dihubungkan satu dengan yang lainnya membentuk interkoneksi yang lebih besar. Karena bertugas menampung seluruh titik terminal VoIP, softswitch harus mengetahui alamat terminal dan nomor telepon yang terhubung kepadanya. Saat ini softswitch yang banyak digunakan dalam jaringan VoIP IP PBX adalah Asterisk. Asterisk merupakan software PBX open source yang dapat dijalankan pada berbagai sistem operasi, seperti linux, BSD, Mac OSX, bahkan Windows. Asterisk diciptakan oleh Mark Spencer pada tahun 1999, dengan alasan
PBX komersil terlalu mahal untuk perusahaannya.
Asterisk hanya
membutuhkan perangkat keras minimum dan tidak membutuhkan perangkat tambahan. Dengan menggunakan protokol Session Initiation Protocol (SIP) atau Inter-Asterisk Exchange (IAX), Asterisk dapat membuat dan menerima panggilan melalui internet atau diintegrasikan dengan hardware tertentu seperti kartu CI TI/EI untuk hubungan dengan PSTN. Fitur-fitur yang terdapat dalam Asterisk antara lain: call conference, call monitoring, call forwarding, call
51 parking, call routing, caller ID, caller ID blocking, calling cards, IVR, music on hold, voice mail, dan lainnya.
2.10
Sistem Billing Fitur billing pada VoIP merupakan aplikasi yang menghasilkan catatan mengenai jumlah tagihan pemakaian telepon dari customer. Billing juga mengijinkan pelanggan untuk mengetahui bukan hanya jumlah tagihan yang harus dibayar tiap bulannya tetapi juga tiap variabel penting (siapa, tujuan, dan lamanya) dari setiap layanan panggilan yang dibuat. Sistem Asterisk SIP PBX menghasilkan Call Detail Record (CDR) yang berisi pencatatan data tentang semua proses komunikasi yang terjadi melalui server. Record ini biasanya disimpan dalam bentuk plaintext di server atau di database MySQL. Record-record tersebut kemudian digunakan dan diolah untuk menghitung biaya billing yang digunakan oleh user.
2.11
VoIP Gateway Pada teknologi VoIP diperlukan sebuah gateway yang mengontrol bagaimana jaringan berbasis IP (Internet Protocol) berkomunikasi dengan jaringan telepon secara dua arah. VoIP Gateway terdiri dari tiga komponen yaitu :
52 1. Media Gateway Media Gateway melakukan pemetaan dan translasi fungsi antara jaringan IP dan jaringan telepon. Sebagai contoh, Media Gateway dapat mentranslasikan percakapan G.711 64 kbit/s menjadi G.723.1 6,3 kbit/s atau sebaliknya. Untuk pengiriman paket dari jaringan IP, harus dilakukan penghilangan paket media karena pada sisi telepon, paket tidak dapat beroperasi. Oleh karena itu, paket-paket media ini harus dipetakan kedalam channel saluran telepon. Untuk pengiriman paket dari channel telepon ke jaringan IP dilakukan operasi sebaliknya yaitu penambahan paket media yang didapat dari pemetaan yang ada. Media Gateway juga bertugas untuk mendukung beberapa layanan seperti menjalankan
pengumuman-pengumuman,
dan
tone
generation
jika
diperlukan. 2. Signaling Gateway Signaling Gateway bertugas untuk melakukan operasi signaling pada sistem. 3. Media Gateway Controller Secara keseluruhan, Media Gateway Controller adalah pengontrol dari sistem Media Gateway dan Signaling Gateway. Media Gateway Controller harus bekerja sama dengan H.232 Gatekeeper agar bisa memproses pesan dari H.225 dan H.245. Media Gateway keeper juga bertanggung jawab untuk authentication dan keamaan network, memonitor sumber daya dari keseluruhan sistem, dan mengontrol semua koneksi.
53 2.12
Unified Modeling Lnguage Menurut Booch (1999, p3) Unified Modeling Language (UML) merupakan sebuah bahasa standar yang digunakan dalam menspesifikasi, memvisualisasi, membangun, dan mendokumentasikan objek dari suatu sistem piranti lunak, sebaik perancangan bisnis maupun sistem non-software lainnya. UML menyediakan sekumpulan tata cara terbaik yang telah terbukti sukses dalam perancangan sistem yang luas dan kompleks. UML merupakan bagian penting dari pengembangan software berorientasi objek dan bagi proses pendesainan suatu proyek software. Sebagian besar UML menggunakan notasi grafik untuk menggambarkan desain suatu proyek software dimana sangat mudah dipelajari dan di mengerti. Menggunakan UML akan membantu komunikasi antar tim proyek, menelusuri desain yang berpotensi, dan memvalidasi kerangka desain suatu software. Diagram UML terdiri dari:
2.12.1 Class Diagram Diagram kelas adalah diagram yang biasa digunakan untuk mendeskripsikan tipe objek dalam sebuah sistem dan hubungan antar kelas-kelas yang ada. Diagram kelas terdiri dari tiga hal yaitu nama kelas, atribut, dan operasi.
Gambar 2.9 Contoh Class (pigseye, 2007)
54
Gambar 2.10 Contoh Class Diagram (pigseye, 2007)
2.12.2 Use Case Diagram Merupakan sekumpulan skenario yang menjelaskan interaksi antara user dengan sistem. Use case diagram memperlihatkan hubungan antara aktor dan use case. Dua buah komponen utama dari use case diagram yaitu use case dengan aktor (actor).
Gambar 2.11 Actor and Use Case (pigseye, 2007) Aktor menggambarkan user atau sistem lain yang akan berinteraksi dengan sistem yang dibuat. Use case merupakan cara pandang dari dalam suatu sistem yang
55 memperlihatkan beberapa aksi dari user yang mungkin dilakukan untuk menyelesaikan persoalan.
Gambar 2.12 Contoh Diagram Use Case Sederhana (pigseye, 2007)
56
Gambar 2.13 Use Case Diagram Example (sparxy, 2007)
2.12.3 Entity Relationship Diagram (ERD) ERD (Whitten, Bentley, dan Dittman, 2001, p260) merupakan suatu model yang menggambarkan data yang ada dalam bentuk entity, serta hubungan yang ada antar entity tersebut. Komponen utama yang terdapat pada ERD (Pressman, 2001, p307) : objek data (entity), atribut, hubungan (relationship), dan berbagai tipe indikator lainnya. Hubungan antar data pada ERD, digambarkan dengan berbagai symbol yang menunjukkan cardinality (Whitten, Bentley, dan Dittman, 2001, pp264265; Pressman, 2001, pp305-307). Cardinality merupakan jumlah minimum dan maksimum objek data yang berelasi dengan suatu objek data yang lain. Hubungan yang mungkin ada yaitu :
57 1. One-to-one (1:1) – suatu objek A berhubungan dengan satu dan hanya satu objek B, dan objek B berhubungan dengan satu objek A. 2. One-to-many (1:m) – satu objek A dapat berhubungan dengan satu atau banyak objek B, tetapi objek B hanya berhubungan dengan satu objek A. Contoh : seorang ibu dapat mempunyai banyak anak, tetapi satu anak hanya mempunyai satu ibu. 3. Many-to-many (m:m) – suatu objek A dapat berhubungan dengan satu atau lebih objek B, sedangkan objek B dapat berhubungan dengan satu atau lebih objek A. Contoh : seorang paman dapat mempunyai beberapa keponakan, dan seorang keponakan dapat mempunyai banyak paman. Adapun notasi cardinality yang umum adalah sebagai berikut : Tabel 2.4 Notasi Cardinality ERD Arti Cardinality
Minimum instances
Maksimum instances
Notasi
Satu dan hanya satu
1
1
---------------+
Nol atau satu
0
1
-----------------o+
Satu atau lebih
1
Many (>1)
----------------1<
Nol atau lebih
0
Many (>1)
----------------o<
Lebih dari satu
>1
>1
-------------<
2.12.4 Activity Diagram Activity diagram menggambarkan aliran dari aktivitas ke aktivitas dalam sebuah sistem. Activity Diagram mirip dengan state diagram, karena keduanya sama-sama menggambarkan proses aktivitas. Activity diagram berguna untuk
58 menganalisis use case dengan cara mengambarkan aksi yang diperlukan dan kapan aksi tersebut dimunculkan, menggambarkan algoritma sekuensial yang rumit, dan perancangan aplikasi dengan proses pararel. Simbol-simbol yang umum digunakan yaitu :
¾
Initial State Aktifitas awal dari suatu sistem
¾
Action State
ActionState
Aktifitas-aktifitas yang terjadi setelah initial
state
yang
menunjukkan
jalannya kontrol flow.
¾
Decision Suatu
percabangan
dimana
menunjukan
suatu persyaratan atau pilihan pada suatu
¾
Control Flow atau Triggerless Transition Arah panah yang menunjukan kemana aktifitas atau kontrol berikutnya berjalan.
¾
Transition Fork
Percabangan yang terjadi dimana ada 2 atau lebih aktifitas yang bekerja pada
59
¾
Transition Join Penggabungan
aktifitas
kembali
dari percabangan yang terjadi oleh fork.
¾
Finish State Hasil akhir dari aktivitas dari suatu sistem
Gambar 2.14 Contoh Activity Diagram (pigseye, 2007)
60 2.12.5 Sequence Diagram Menurut Booch ( 1999, p459 ), Sequence diagram adalah sebuah diagram interaksi yang menekankan waktu pengiriman untuk sebuah pesan. Sequence diagram merupakan salah satu bentuk diagram interaksi. Diagram ini menggambarkan interaksi yang terjadi antara aktor dan objek pada suatu sistem (Britton and Doake, 2001, p103 ). Menurut Whitten (2003, p702), Sequence diagram adalah sebuah diagram UML yang mencontohkan logika dari sebuah use case dengan cara menggambarkan interaksi pesan antara obyek-obyek yang ada dalam urutan waktu. Dengan kata lain sequence diagram digunakan untuk menggambarkan hubungan langsung antara pemakai, sistem dan objek pada sistem. Sequence diagram merupakan suatu alat bantu yang sangat baik digunakan pada awal pembuatan suatu sistem karena menggambarkan langkah-langkah yang terjadi pada sistem Simbol-simbol yang umum digunakan yaitu :
¾
Object Lifeline
Untuk menunjukkan objek yang terlibat secara langsung dalam suatu proses.
61
¾
Activation Untuk menunjukkan waktu atau lamanya suatu objek dalam melakukan suatu proses tersebut.
¾
Message Call Untuk menunjukkan hubungan komunikasi antar objek
dimana
membawa
pesan
yang
akan
dilakukan objek tersebut.
¾
Message Return Untuk menunjukkan hubungan komunikasi antar objek dimana membawa pesan bahwa perintah telah selesai dijalankan.
:CourseSection
:Student :Registration
requestToRegister <
>
addToSchedule addToRegistrationList
Gambar 2.15 Contoh Sequence Diagram (Anonymous, 2006)
62
:SpecificFlight
:Booking
:PassengerRo
cancelBooking cancel deleteFromPassengerList
deleteFromItinerary
Gambar 2.16 Contoh Sequence Diagram (Anonymous, 2006)
2.12.6 State Transition Diagram (STD) State Transition Diagram (STD) digunakan untuk menggambarkan sifat dinamis dari suatu objek. STD mengilustrasikan berbagai keadaan (state) yang dimiliki suatu objek, event yang menyebabkan perubahan state, serta aturan yang ada untuk transisi antar state pada suatu objek. Dengan kata lain, STD menjelaskan state apa dari objek yang dapat melakukan transisi ke state lain (Whitten, Bentlev, Dittman, 2001, p655, dan p668). Simbol-simbol STD antara lain : 1. State
merepresentasikan keadaan pada suatu waktu. 2. Perubahan State (State Transition)
63 Merepresentasikan hubungan antara keadaan (state) yang berbeda. Pada panah tersebut ditulis dengan event yang menyebabkan perubahan tersebut dan akibat yang dihasilkan.
2.13
Flowchart Flowchart (Wikipedia, 2007h) adalah sebuah skema yang merepresentasikan sebuah algoritma atau proses.
Gambar 2.17 Contoh Flowchart (Wikipedia, 2007c) Gambar diatas merupakan contoh flowchart untuk perhitungan operasi matematik faktorial (n!). Simbol-simbol pada terdapat flowchart diatas adalah: 1. Start atau End simbol, direpresentasikan dengan bentuk kotak yang oval.
64 2. Panah, menunjukkan arah proses berjalan. 3. Tahap proses, ditunjukkan dengan bentuk persegi panjang. 4. Input/output, digambarkan dengan bentuk jajaran genjang. 5. Kondisional, direpresentasikan dengan bentuk permata.
2.14
Teori Interaksi Manusia dan Komputer (IMK) Sistem yang baik harus bersifat user-friendly. Kriteria-kriteria yang harus yang harus dimiliki oleh sebuah sistem yang user-friendly, yaitu : 1. Waktu belajar yang tidak lama 2. Kecepatan penyajian informasi yang akurat. 3. Tingkat kesalahan yang rendah pada pemakai. 4. Penghafalan setelah melampaui jangka waktu.
Menurut Shneuderman (1998, p74) , ada delapan jenis aturan penting dalam IMK yang dikenal dengan The Eight Golden Rules, yaitu: a. Berusaha keras untuk konsisten Sebuah sistem yang baik harus memiliki konsistensi, baik dalam pengaturan tampilan, penggunaan kata, maupun penggunaan warna. Kata atau text harus sesuai dengan standar yang mudah dipahami oleh user. b. Memungkinkan user untuk menggunakan shortcut Shortcut dapat memberikan kemudahan bagi user dalam menggunakan suatu sistem.
65 c. Memberikan umpan balik yang informatif agar tidak membingungkan user Sistem yang baik harus dapat memberikan informasi kepada user atas setiap aksi yang dijalankan. d. Merancang layar yang menghasilkan penutupan Setiap layar yang ditampilkan menghasilkan keadaan akhir terhadap proses yang telah dilakukan. e. Memberikan penanganan kesalahan yang sederhana Sistem yang baik harus dapat mengantisipasi jika user melakukan kesalahan. Sistem harus dapat memberikan informasi kesalahan yang berupa instruksi atau solusi sederhana agar user dapat memperbaiki kesalahan tersebut. f. Mengijinkan pembalikan aksi (undo) dengan mudah Sistem yang baik harus didukung dengan kemampuan pembalikan aksi terhadap setiap aksi yang dijalankan oleh user. g. Pengontrolan terletak pada user Sistem yang baik harus memberikan user kontrol penuh atas sistem. User berperan sebagai inisiator, bukan sebagai responden. h. Mengurangi beban ingatan jangka pendek bagi user Setiap user memiliki keterbatasan untuk mengingat informasi dalam ingatan jangka pendek. Tampilan layar sebaiknya dibuat sederhana agar informasi dapat lebih jelas dan mudah diingat.
66 2.15
Teori Perancangan Call Center Menurut Hiatt (2000, p2), dalam perancangan call center kelas dunia, diperlukan beberapa prinsip yang membantu dalam pembuatan keputusan dan memberikan fondasi untuk perencanaan, yaitu: 1. Memberikan customer pilihan Customer berharap akan menentukan cara bagaimana mereka berinteraksi, dan service yang diberikan harus sesuai dengan yang diharapkan dan disesesuaikan dengan media pilihan mereka. 2. Menyediakan akses kapanpun dan dimanapun Call center dapat diakses setiap saat dan dimanapun customer berada. 3. Memungkinkan customer untuk menolong dirinya sendiri Customer akan memiliki akses terhadap informasi dan dapat memilih selfservice ataupun agent-assisted. Dengan memilih self-service, maka customer mencari informasi yang diinginkan secara mandiri. Beberapa customer lebih cenderung mencari informasi atau melakukan transaksi secara mandiri. Sedangkan agent-assitent, customer akan dipandu oleh seorang operator. 4. Personalisasi setiap interaksi customer Setiap service yang diberikan harus memperlakukan customer sebagai satusatunya customer. 5. Mengenali customer anda sistem akan mengenali customer dan memberikan informasi yang sesuai. 6. Operator harus memberikan service yang memuaskan operator adalah harus dilengkapi dengan alat bantu sehingga proses informasi yang diinginkan dapat diberikan secara cepat dan akurat. Alat bantu bisa
67 dalam bentuk komputer yang didukung dengan aplikasi yang memberikan informasi yang terkait. 7. Menjadi yang terbaik dan menghitung performa Dengan menghitung performa yang telah diberikan maka dapat ditentukan apakah service yang diberikan sudah sesuai dengan yang diharapkan. Harapan ini tentunya adalah menjadi yang terbaik, baik dalam pelayanan operator maupun kepuasan customer terhadap IVR.